Jump to content
IGNORED

Ultimate Cart (SD multicart) - Technical thread


electrotrains

Recommended Posts

1 hour ago, madness77 said:

use edge connector and crocodile clips ?

cart.gif

that's what I was thinking, but I'll use an arduino one to get the 5vol and the gnd to connect it to the cartridge pins using clothespins.?

 

2 hours ago, CharlieChaplin said:

 

Nope, to upgrade the Ultimate cart you only need:

 

- an IT diploma (equal to rocket science)

- downloading several Gigabytes to update a few Bytes

- a PC with min. 64Bit OS, 64 Cores, 64GB RAM, 64Ghz, etc. so the end result can be used on an Atari 8bit computer with e.g. 64KB RAM and roughly 1.8Mhz single core

 

Tried to update my Ultimate carts. once (for XEX loading) and failed, so I had to ask a friend (who has an IT diploma) to do it for me. He used dozens of curses when doing it and like me, he said: Never again! That's one of the reasons why I like the AVG cart. very much, it is so easy to update. And since the day I own the AVG carts, I have not used the Ultimate carts anymore.

 

Anyone for a "benchmark" of how long it takes to update the Ultimate cart. on the PC (including software download and installation) vs. how long it takes to update the AVG cart. on the A8 (including software download and installation) ?  But DMA must be set to on!

 

Yes, I totally agree with you, it is very complicated but not impossible. ?

What I like is that the firmware source code is published so that anyone can help, I don't know if the same thing happens in AVG.

Link to comment
Share on other sites

41 minutes ago, ascrnet said:

What I like is that the firmware source code is published so that anyone can help

Can you include the improvements made in this thread by other guys and publish an updated version (source & compiled) ?

 

https://atariage.com/forums/topic/241888-ultimate-cart-sd-multicart-technical-thread/?do=findComment&comment=4298153

 

 

Edited by tane
Link to comment
Share on other sites

1 hour ago, tane said:

Can you include the improvements made in this thread by other guys and publish an updated version (source & compiled) ?

 

https://atariage.com/forums/topic/241888-ultimate-cart-sd-multicart-technical-thread/?do=findComment&comment=4298153

 First things first, I have to get the complete firmware recording to work. Since it is made up of 3 parts, an assembler menu, VHDL for FPGA and a part in C++.?

 

If I manage to do something interesting I will upload it to github accordingly.

  • Like 1
Link to comment
Share on other sites

7 hours ago, Mr Robot said:

Maybe the biggest update the Ultimate cart needs is the ability to update itself like AVGCart does.

It is perfectly possible. The hardware supports a firmware update mechanism without using an USB blaster. I considered implementing this and a couple of other features, i.e., I miss the possibility of mounting a second cart image "on top" of SDX as you can on real hardware. But it is not a trivial update and besides currently not having much time, don't have much motivation either. May be, eventually. May be the original developer will.

 

AVG is a more powerful implementation of the same concept, but it is not open source :(

  • Like 2
Link to comment
Share on other sites

My first test failed, I suspect that some of the firmware components were not updated or not really recorded.?

 

For the second test I will mark some texts with an asterisk to see if that part was modified.?

 

I liked your idea @glurk, can I use it in my tests?

On 5/26/2021 at 7:47 PM, glurk said:

The Atari/Inverse key now cycles the background color.

Link to comment
Share on other sites

6 hours ago, ascrnet said:

For the second test I will mark some texts with an asterisk to see if that part was modified.?

the test photo, find the asterisks.?

fpga.thumb.PNG.4091ba1820d1b525359a2200ed46271d.PNG


One I put it from assembler and the other from the C++ program, I put them in the messages to see it easily on screen.

 

The development environment (Quartus+Nios II+Mads) and the firmware recording are fully working.?

Link to comment
Share on other sites

10 hours ago, ascrnet said:

I liked your idea @glurk, can I use it in my tests?

Sure, of course.  The color-changing and keypress changes can be donr right in the _BOOT.ROM part, of course.  Don't use my code I posted above, though, it has some issues.   I haven't got it quite how I want it yet.

Link to comment
Share on other sites

Also (sorry for the double post) I have an old 800, mostly stock, and BUNCHES of XEX files that work fine in Altirra, but don't work on my real 800 when loaded from the Ultimate Cart.

 

I have (finally) figured out what will make them work.  And I have to add code to do it, but if I set CASINI=STARTADDRESS, WARMST=#$FF, BOOT=#$02, and jump to WARMSV, they will then work.  So, I have to warm-start into them, otherwise I just get a blank screen.

 

This is a huge PITA to do for a bunch of programs, but it does seem to work A-OK.

Edited by glurk
Link to comment
Share on other sites

OK, I can't edit my previous post to do this, but I really want to give examples.  For anyone with the Ultimate cart and a 48K 800, please try these.  As examples, here is Shamus+ (broken) that I downloaded, which gives me a blank screen and does not run.  And also one with my warm-start fix included, which DOES work and run.

 

Please, someone try these.  If you have an original 800 like mine, I bet you will have the same result.  Perhaps this could be fixed in the BOOT.ROM code, but I'm not sure how to go about doing that.

 

Shamus+ EXAMPLES.zip

Link to comment
Share on other sites

5 hours ago, glurk said:

mostly stock

What does this actually entail?

The fact the broken version works under Altirra is a little suspicious that @phaeron has missed something, but could indicate something different in the state the Ultimate Cart leaves the system at the point it's sex bootstrap transfers control.

Edited by Wrathchild
Link to comment
Share on other sites

Fierodoug5 - Thank you SO MUCH for the confirmation.  I bet for anyone with an XE/XL both examples will work. 

 

Wrathchild - "Mostly stock" means I changed resistor R189 for the video mod, and did the PHI2 mod while trying to fix this issue.  Otherwise, it's bone stock.

 

This issue has been driving me nuts.  And re-coding part of every XEX is a huge pain in my posterior.  This "Ultimate Cart" is SUPPOSED to just work, and for plain old 800 users, it does not.  As a programmer, I can often find and fix these things.  Regular 800 users are just screwed, I guess.  I don't think it was tested very well for the 800, quite frankly.

 

So, I do think a fix should be made.  And I'm not sure how to do that myself, it's beyond me.   

Link to comment
Share on other sites

4 minutes ago, glurk said:

Fierodoug5 - Thank you SO MUCH for the confirmation.  I bet for anyone with an XE/XL both examples will work. 

 

Wrathchild - "Mostly stock" means I changed resistor R189 for the video mod, and did the PHI2 mod while trying to fix this issue.  Otherwise, it's bone stock.

 

This issue has been driving me nuts.  And re-coding part of every XEX is a huge pain in my posterior.  This "Ultimate Cart" is SUPPOSED to just work, and for plain old 800 users, it does not.  As a programmer, I can often find and fix these things.  Regular 800 users are just screwed, I guess.  I don't think it was tested very well for the 800, quite frankly.

 

So, I do think a fix should be made.  And I'm not sure how to do that myself, it's beyond me.   

 

When everyone says how much better the AVG Cart is, someone will usually point out how the Ultimate Cart is open source and the AVG Cart isn't. That being said, I haven't seen anything new or any updates from the creator in at least a couple of years, so we're left to do it ourselves or do without. Like you, I don't have the knowledge to make changes myself. I still love my Ultimate Cart and I think the menu is head and shoulders above what the AVG Cart has, but I'd be a liar if I said that I haven't been looking longingly at the AVG Cart and the almost constant updates and feature additions it gets.

 

Link to comment
Share on other sites

10 minutes ago, glurk said:

This issue has been driving me nuts.  And re-coding part of every XEX is a huge pain in my posterior. 

Be very careful, and tests across all titles, including those that work without re-vectoring to WarmStart through CASINI, and conditioning the O/S environment specifically for it. 

 

As far as I have seen, PHI2 trace-cuts are not needed for Ultimate/SD to work on the 800. I suppose you did it because SIDE? 

 

The good news is AVG works like a charm, without any changes whatsoever, including IDE interface (I have them all three, as could not get SIDE2 working in my 040-0077 800 with AXLON 512KB expansion)

Link to comment
Share on other sites

Well, I bought this thing in good faith, paying $100 + for it.  And I don't just have money to burn.  So, yes, I certainly expected it to be thoroughly tested, and work correctly.  And I have confirmation now that it does not, at least on the 800.  And I LIKE my 800, it's the first computer I ever owned, and I bought it new in about 1981 or so.  

 

So, I think finding this problem, and hopefully having it addressed (by someone) will help ALL 800 users, including myself.  And that's why I am posting about it.  It was a lot of work figuring this out, but I can be very determined.

Link to comment
Share on other sites

As an experiment, try running exomizer to make an sfx on the file. Might save you having to hack it and future ones?

 

I'll echo the AVG vs Ultimate, the former didn't drive up alongside and barge the other off the road, it instead is an evolution and stands on the shoulders of what came before, as the others did with AtariMax and back it goes.

 

Edited by Wrathchild
each -> echo
Link to comment
Share on other sites

1 hour ago, bfollowell said:

When everyone says how much better the AVG Cart is, someone will usually point out how the Ultimate Cart is open source and the AVG Cart isn't. That being said, I haven't seen anything new or any updates from the creator in at least a couple of years, so we're left to do it ourselves or do without.

This is a great point. Open-source doesn't mean much unless there is active development, either by the original author or by members of the community who have picked up the project. Being open-source is not a virtue in itself if no-one is doing anything with the source code.

 

Regarding 800 compatibility in general: was Ultimate ever actually billed as 800 compatible? The machine is very different from the XL/XE in several respects, so unless 800 compatibility was ever promised, it would be better not to make any assumptions. Ultimate certainly would not be the first multi-cart which required stability or Phi2 mods on the 800 cart slot.

Link to comment
Share on other sites

5 minutes ago, flashjazzcat said:

was Ultimate ever actually billed as 800 compatible?

From user's manual:

 

Website

The Ultimate Cart is a multi-cart for Atari 400/800/XL/XE computers. It is open-source hardware and software. The project website is: https://github.com/robinhedwards/UltimateCart

 

Even the shell (just like The!Cart) was specifically designed to fit the 800. I wonder if it also fits on the 1200XL (only one not mentioned explicitly, but assumed as part of XL line...)

Link to comment
Share on other sites

I bought it according to this, from "The Brewing Academy":

 

What is the Ultimate Cart?

This is a SD-based flash cart that will load a variety of ROM, CAR, and XEX files from a menu.  It has a very wide range of uses and will work on ANY Atari 8-bit machine (400/800/600XL/800XL/1200XL/XEGS/65XE/800XE/130XE/1088XEL/1088XLD and, if you have them, a 1400XL or 1450XLD!)

 

And, I'm pretty sure this could be fixed in the BOOT.ROM, since that's where the XEX loader lives.  If only someone knew how to do it.

Link to comment
Share on other sites

2 minutes ago, glurk said:

And, I'm pretty sure this could be fixed in the BOOT.ROM, since that's where the XEX loader lives.  If only someone knew how to do it.

Can you synopsise the issue? I am not really digesting it from the foregoing posts (probably because I am more or less word blind at this point). :)

 

Link to comment
Share on other sites

19 minutes ago, glurk said:

since that's where the XEX loader lives.

There are additional (and larger) problems with Ultimate cart (reason for which I was forced to build my own control-extensions in ASM and embed then on the BOOT.rom):

 

  1. The EXE loader, while being pretty fast and effective, pre-loads on cart. boot in >$0700 region, which means an instant kill of SDX, if you are entering the menu from CAR command. So without the necessary changes, 100% incompatible with SDX and that is a big no-no.
  2. When booting from cold / off start, it blissfully ignores the user environment (eg. first booting a disk-package, if present or provided in user's environment). Which also disrupts the normal boot workflow if you intent to use the cart for actual applications (not mere games).

If the cart is being used for kiddie stuff (like launching SuperBreakout, Star Raiders, etc.) then the above is pretty much irrelevant. But if you wish to remain at the helms of your session, through-and-through, the cart's original Boot.rom will not help, unfortunately.

 

This can ALL be corrected, of course (just as I had to do) and with added benefits.... but... it was a lot of work, for simple, common-sense stuff...   

 

 

Link to comment
Share on other sites

Well, I'm not asking for more advanced features.  I'm asking for the bloody thing to work as it was advertised.  I gave two example XEX files, one which does not work on 800, but does on XE/XL.  And my fixed one, in which I explained the fix, that DOES work.

 

I'm not sure why, exactly that this fixes it (so far) with most XEX files.  And I don't know enough about the XEX loader to fix it myself.  Speculating, but some XEX do load and work, only after a RESET.  And usually the title screen does not show up.  I think they expect the screen handler to be initialized, as it would be from a DOS load, but the Ultimate Cart does not do that.  So I get a totally blank blue screen without even the cursor.

 

I don't know if that is the only problem, I'm only guessing.

 

Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...