Jump to content
electrotrains

Ultimate Cart firmware - Now with XEX loading

Recommended Posts

Hi All,

One thing I really wanted to add to the Ultimate Cart was an easy way to use XEX files on the cartridge.

Thanks mainly to flashjazzcat, we've now added this as a feature to the firmware.

XEX files present on the SD card can now be browsed and launched just like cartridge/ROM files. Loading is practically instantaneous.

post-41252-0-27691400-1454787892_thumb.jpg

You can program the attached new firmware to your Ultimate Cart using the (free download) Quartus 15.1 programmer. You will also need a USB Blaster (<$10 on ebay). Consider it a beta - there may be the odd bug.

This firmware also replaces my original menu with the improved version by flashjazzcat. Since this is now part of the firmware, you should remove any older version of it from the SD cart (i.e. remove _BOOT.ROM if you have it).

 

This will become the current firmware, and I'll upload the source files to github once this has had a bit of a wider test.

 

I'm sure this will be a very welcome addition to the cartridge firmware, and praise and thanks should be directed to flashjazzcat who wrote the XEX loader and the improved menu - tasks both way beyond my 6502 skills!

 

Robin

10M08SAE144C8G.zip

Edited by electrotrains
  • Like 14

Share this post


Link to post
Share on other sites

JAC has a fabulous way of booting ATR from a cart. His THE!CART tool does analyze an ATR and patches it so common vectors etc. are redirected to some kind of bankswitching loader. This means that not the 'original' ATR is on the cart, but a patched version of the ATR so it can boot/run from cart. Works pretty well (This is interesting, since TheCart! does not start up a soft-version of an OS as some other known solutions do, and which is rather incompatible).

 

I was able to put the disk games ECKN+ and Cropky on The!Cart.

 

Perhaps you guys can work something out like this for this ultimate SD cartridge too?

  • Like 3

Share this post


Link to post
Share on other sites

JAC has a fabulous way of booting ATR from a cart. His THE!CART tool does analyze an ATR and patches it so common vectors etc. are redirected to some kind of bankswitching loader. This means that not the 'original' ATR is on the cart, but a patched version of the ATR so it can boot/run from cart. Works pretty well (This is interesting, since TheCart! does not start up a soft-version of an OS as some other known solutions do, and which is rather incompatible).

 

I was able to put the disk games ECKN+ and Cropky on The!Cart.

 

Perhaps you guys can work something out like this for this ultimate SD cartridge too?

In theory the cpu on the fpga could do this when it's loaded the ATR from the SD card. It would be quite a big job though, since currently the cpu runs code from the ram embedded on the fpga and there isn't much more space left. However, its technically possible to run code from the fpga flash of which there is loads left. Not an avenue I've explored yet, but there is plenty documentation on how to do this.

 

Depends how reliable this auto conversion process is?

 

Edit - if Jac's tool can produce an standard (e.g. Atarimax) rom as output, there's no reason why the file couldn't be used on the ultimate cart with the current firmware.

Edited by electrotrains

Share this post


Link to post
Share on other sites

I am not sure that the output is ready to use for AtariMax carts. I have been asking that myself months ago, and IIRC I tested it, but it did not work.

 

I don't think the logical system in your cart needs a lot (if any) extra code. When the banking scheme is known, the only thing that needs to be adapted is the ATR (which is patched by JAC's software).

 

I am sure about this, since I converted the output of JAC's tool (a few ATR's) for MyIDE 2, where I had to adapt the banking scheme only for MyIDE 2 so I was able to play Johny's Trouble, ECKN+, Cropky and a few more diskgames on MyIDE 2 on Stock Atari's.

Share this post


Link to post
Share on other sites

Santosp reports the keyboard doesn't respond on his 130XE, so we'll need to look into that.

 

Robin

 

Finally maybe something go wrong during the firmware update.... Now all work fine. My apologies... :(

Share this post


Link to post
Share on other sites

I wish when the atr gets modified by the the cart tool that is would put a flag in the header and name it differently.... seeing how everything blend together and creeps about over the years.... it would be a good idea...

Share this post


Link to post
Share on other sites

Modifying ATRs on the fly would be fun. Read the boot sectors, patch any SIO calls there with calls to ROM-disk sector reads, then resume execution at the boot address, patching as we go. Would have to be a simulated boot, though, since we can't just restart the OS.

  • Like 1

Share this post


Link to post
Share on other sites

And before members who bought one U.C. from me, begin to ask with p.m. where to buy a programmer, I announce public cause I bought mine from this seller above.

 

http://www.ebay.com/itm/161057457538?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

 

Also a big BRAVO, to the last Atari programmer of this world! :) :-D

Now that my hardware is coming in the mail. I begin to wonder where I get the software to program my ultimate cart..

  • Like 2

Share this post


Link to post
Share on other sites

https://dl.altera.com/14.0/?edition=web

 

I downloaded the software, now just need to buy the Altera USB Blaster :)

You'll have to register as a user to download...

 

The registration process is a bit of a pain and a lot of intrusive with Altera I found - I do not understand why they need to know my inside-leg measurement and whether I dress to the left or right in order to download a piece of free software! Anyway the data input form is not especially well written and you can spoof it easily enough. I just filled each field with 'you do not need to know' and the thing seemed happy.

  • Like 2

Share this post


Link to post
Share on other sites

 

The registration process is a bit of a pain and a lot of intrusive with Altera I found - I do not understand why they need to know my inside-leg measurement and whether I dress to the left or right in order to download a piece of free software! Anyway the data input form is not especially well written and you can spoof it easily enough. I just filled each field with 'you do not need to know' and the thing seemed happy.

Yep, same here except I used all bogus info :) I first tried with just a fake email as some sites just want an address to send spam to, but they had to have a valid email address to confirm a download...

Share this post


Link to post
Share on other sites

I can add my own report that the new firmware works perfectly! It is not difficult to load the *.POF file in to Quatus, although it is a shame they do not release the 'Programmer' tool separately!

 

I used an old 4.9V 400mA mobile phone charger fitted with a dupont plug to power the cartridge while programming and the clone 'USB Blaster' performed as it should. Excellent!!!

Share this post


Link to post
Share on other sites

I used an old 4.9V 400mA mobile phone charger fitted with a dupont plug to power the cartridge while programming and the clone 'USB Blaster' performed as it should. Excellent!!!

 

Not needed to use external adapter to program your device. You could do it with the cartridge plugged on your Atari computer, with the power switch ON. My advice is to remove also your SD card.

On my pcb constructions, I have remove this 2 pin male DuPont connector. I did it because although I know why Robin place it there, for me is very dangerous to have 5 volt power supply on the air. If by mistake something metallic get in touch with it, will be catastrophic.

I left untouched the pcb prints, in case who someone need to check the voltage with a electronic multimeter.

  • Like 1

Share this post


Link to post
Share on other sites

 

Not needed to use external adapter to program your device. You could do it with the cartridge plugged on your Atari computer, with the power switch ON. My advice is to remove also your SD card.

On my pcb constructions, I have remove this 2 pin male DuPont connector. I did it because although I know why Robin place it there, for me is very dangerous to have 5 volt power supply on the air. If by mistake something metallic get in touch with it, will be catastrophic.

I left untouched the pcb prints, in case who someone need to check the voltage with a electronic multimeter.

 

Another reason I need to find a case that fits as soon as possible I guess!!!

  • Like 1

Share this post


Link to post
Share on other sites

I guess its possible someone could accidentally create a short across these pins - I put them there to power it when re-programming, since my Atari is some distance away from my PC. There's no harm de-soldering the header if you don't want it.

 

However, there's plenty of other places one could accidentally create a short on the PCB/components e.g. the voltage regulator. Just don't plug it bare into your Atari on a desk full of metal objects and you should be ok! :)

 

Robin

  • Like 1

Share this post


Link to post
Share on other sites

Robin, I did not say cause this connector is the only point for a possible short circuit on PCB.

I have read your construction guide on GitHub, and I know cause this is as use for anyone make the construction by himself, to check for a possible short circuit on the main voltage on PCB, before receiving power.

For this reason I use the phrase "I did it because although I know why Robin place it there...." on my previous message.

I from my side, I don't want to leave a male connector with power exposed. That was the reason who not included in. If its existence was crucial, (for example the only way to programming the board), then I will place a female one, as you mention on your last message. ;)

Edited by santosp

Share this post


Link to post
Share on other sites

Agreed, and thanks for making me think about it.

I've just ordered a batch of 2x1 female headers from ebay for any future boards I make.

 

Would a polyfuse on the cart provide additional protection to the atari in the event of a short?

 

Robin

Edited by electrotrains

Share this post


Link to post
Share on other sites

I guess its possible someone could accidentally create a short across these pins - I put them there to power it when re-programming, since my Atari is some distance away from my PC. There's no harm de-soldering the header if you don't want it.

 

However, there's plenty of other places one could accidentally create a short on the PCB/components e.g. the voltage regulator. Just don't plug it bare into your Atari on a desk full of metal objects and you should be ok! :)

 

Robin

 

I found it useful for exactly the same reason Robin! It would be awkward for me to programme with the board plugged in otherwise. The header let me do it set on the desk in front of me. I certainly would rather it was there and I took care when using it than trying to jury rig my Atari up so the USB Blaster would stretch.

 

If I get really paranoid about it I might put some shrink-wrap insulation around it and fold the top over to form a cover.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...