Jump to content
IGNORED

THE!CART... New 128MB FLASH Cartridge


mega-hz

Recommended Posts

Hey, that's a tough one. I think I found the root cause, but have no fix yet: Your AtariMax workbook uses the feature to have the Atari OSes automatically included as part of the module. In your case bank 1 & 2 are used by the OSes. As a consequence, the index are shifted by 2. So to start entry 1 (3-d Tick Tack Toe) your have to select entry 3 (Atlantis) of the cartridge. I'll check how the menu compensates this normally.

 

post-17404-0-91886500-1402321008_thumb.png

 

 

Link to comment
Share on other sites

Ok. Yes that seems right, Some of the Atari 800 games on this workbook need the OS-B option to run on a XEGS or other XE systems, so then index get shifted by 2. So maybe when creating a Atarimax Workbook with no OS-B Option then it proably will work normally, But then with No Atari 800 Games with OS-B Option. Ofcoarse it would be nice to Have Atari 800 Games (OS-B) also to work with Multiple entries.

Edited by GentleBaron
Link to comment
Share on other sites

  • 3 weeks later...

Above mentioned error is fixed and in test, together with a buch of improvments, esp. in the area of ATR loading (speed, compatibility, screen blanking). And tonight I felt like doing something visual, too. So I added the configuration for the colors Wolfram had asked for in the very beginning (and got a special hack from me with a properties file). And instead of documenting the hack, I gave the real implementation a try. This is how it'l look in next version.

 

post-17404-0-35666800-1403731215_thumb.png

 

 

  • Like 6
Link to comment
Share on other sites

Just added some guidance to the help:

 

Adding Entries .... Content Type ATR

 

This is the standard Atari disk image format used in emulators. Many disk based programs that are available in this format can also be started from flash cartridges. But there are some natural limitations arising from the fact that loading the ATR images requires a simulation of the SIO routines that are located in ROM of the original Atari OS. For example the code for the simulation must be located in the RAM and may be overwritten when the loading from the ATR image starts. In addition the banks of the flash cartridge have to be activated during the SIO operation to load the data of the ATR image. As a consequence a program that uses a display list, graphics or interrupts in the module memory area will run into problems. Also programs that try to write data to the disk will fail when run from an ATR simulation. For the simulation itself two approaches are used, Modified ATR Images and Modified Atari OS in RAM . It depends on the individual ATR file and its program which of them will work best.

 

Modified ATR Images

This is the approach used by the The!Cart Extended Menu. When you add an ATR file directly to a workbook, the file is analyzed and all potential code locations that call the Atari OS SIO routines are identified. The result of this analysis is stored in the "Parameters" column in the form "base=$400, $123=SIOV, $456=DSKINV". When the workbook is exported for to the Atari, the call at the found offsets are modified to point to the SIO simulation which as located at the address specified with the "base=$...." parameter. The advantage of this approach is that it work also for software that uses the RAM under the OS and by specifying the corresponding parameters even for software that uses non standard SIO routines instead of the Atari OS SIO routines. The disadvantage of this approach is that it will not work with program where the code in the ATR is encrypted. The following parameters are supported. Numbers are given in hexadecimal notation an are just example values.

  • base=$400
    This specified the base address for the SIO simulation code which is less than 256 bytes in size. The default base address is $400. If the ATR crashes while loading, it might be the case that the program overwrites this memory area. For example MyPicoDOS uses the memory location $400-$40f during loading. To solve this problem you can change the base address to $410 for example. Other good choices for base addresses are $480,$500,$600 and $100.
  • $123=SIOV
    The two bytes starting at offset $123 are changed to the start address of emulation code for the SIOV vector ($e459).
  • $123=<SIOV
    The byte at offset $123 is changed to the low byte of start address of emulation code for the SIOV vector ($e459).
  • $123=>SIOV
    The byte at offset $123 is changed to high low byte of start address of emulation code for the SIOV vector ($e459).
  • $123=DSKINV
    The two bytes starting at offset $123 are changed to the start address of emulation code for the DSKINV vector ($e453).
  • $123=<DSKINV
    The byte at offset $123 is changed to the low byte of start address of emulation code for the DSKINV vector ($e453).
  • $123=>DSKINV
    The byte at offset $123 is changed to high low byte of start address of emulation code for the DSKINV vector ($e453).

If you messed up the parameters somehow, you can simply add the ATR file again to the workbook and choose to overwrite the existing file in the workbook. In this case, the analysis is performed again and a default for the parameters is generated.

 

 

Modified Atari OS in RAM

This is the approach used by the Atarimax Maxflash Menu or MegaCart Menu. The operating system is copied to the RAM under the OS ROM and is then modified to load the "disk sectors" from the flash cartridge instead of the real disk. The advantage of this approach is that it work equally for all software that uses the standard Atari OS SIO vectors. The disadvantage is that the approach will not work with program that use the RAM under the OS themselves like for example "Turbo Basic XL 1.5" or "The Brundles". You can use the Maxflash Cartridge Studio to create 128 KB or 1 MB collections with ATR disk images. This program comes with proven emulation and provides several options to specify how the disk image shall be handled. You can then export the collection as BIN or CAR cartridge image and add it to the workbook.

Edited by JAC!
  • Like 8
Link to comment
Share on other sites

I want to add that the feature where the ATR is modified to run from cart, is the best invention since sliced bread.

 

It makes it possible to run disk based games like Johny's Trouble, Eckn+, Mule Multijoy and Cropky from Cart.

 

Now we need some patches to games like The Brundles which are multi-disk so they will fit on one disk, so they could run from The!Cart too.

 

Jac! This feature is brilliant.

Link to comment
Share on other sites

>Now we need some patches to games like The Brundles which are multi-disk so they will fit on one disk, so they could run from The!Cart too.

If you're bit more patient, that will be possible without patching, too. With the changes I did for DD, I'll have the possibility to add a "swap disk" option later.

  • Like 3
Link to comment
Share on other sites

The!Cart Studio Update 2014-07-02 released

http://www.wudsn.com/productions/atari800/thecartstudio/help/TheCartStudio.html

  • Java 1.6 is now sufficient to run and use The!CartStudio. This is particularly valuable for Mac OS X users, because there Java 1.6 is the default and Java 1.7 is still hard to install. The only limitation when using Java 1.6 is, that multi-selection in the file dialog will not be possible. But you can normally bypass that restriction using drag & drop.
  • The SIO simulation for ATR entries based on the "Modified ATR Image" approach is now complete in the sense that both Single and Double Density disks as well as ATRs with non standard sector counts are supported. Due to a bug in the analysis code of the previous "The!Cart Studio" versions you may have to re-add the ATRs again to trigger a new analysis.
  • Screen is now temporarily disabled when loading from a simulated ATR. This speeds up the loading by a factor of about 25. Before the routine was waiting for a blank screen area, which slowed it down dramatically and also could not work properly in many cases. So I decided to rather make the loading so fast, that you don't even realize that there would be a loading screen.
  • A restriction has been added to prevent interchange issues with workbooks created on different platforms (Windows, Linux, Mac, Unicode vs. Non-Unicode). The problem appeared for example for "Q¤Bert" which causes a very cool special character on some file systems. The file names for files that are added to the workbook are now restricted to the following interoperable subset of the ASCII range:
    ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!#$%&'()+,-.;=@[]^_ 
  • Names of the genres are now automatically sorted in the workbook options. Empty genre names are now filtered out implicitly. The length of the genre name and the total allowed number of genres (128) is checked now. Changes to the genres list are detected correctly now.
  • Direct start for inner menu entries now starts the correct entry number also in case some banks on the AtariMax cartridge are occupied by an Atari OS, for example OS-B.
  • Some initialization errors in direct start inner menu entries are fixed now. Especially the handling of cold start and warm start settings for AtariMax menus is working better now. This is important for games that are reset proof and use a warm start for the initial startup like Frogger.
  • The colors of the banks in the summary panel and in the banks tab can now be configured individually in the options. In addition there is a "Reset" button to reset the colors to the default values. Pressing "Cancel" in the options dialog now actually discards all the changes performed in the options dialog.
  • New Atari software version 2014-02-24 included. The CAR loader of the MyPicDOS now also handles OSS carts correctly.
Edited by JAC!
  • Like 6
Link to comment
Share on other sites

I use this Atari TurboBasic program at work everyday. I'm a machinist in Dayton, Ohio. I have it on a MyIDE 2 cart, with the MyIDE operating system on eprom plugged into an 800XL compuer. It works great. Loads in about 10 seconds. I've tried to put it on "THE!CART" but can't get it to load. Is there a certain setting for THE!CART to load it.

 

Any help would be appreciated. It is a TurboBasic program.

 

Work.atr

 

Thanks,

Doug

  • Like 1
Link to comment
Share on other sites

Just tried it in emulation (not real Atari here) and it loads fine (with automatically found parameters: "base=$0400, $b3=siov, $0127=dskinv, $01dc=dskinv, $013d50=dskinv").

Will have to check on real HW when I'm near to it next week!

Link to comment
Share on other sites

I use this Atari TurboBasic program at work everyday. I'm a machinist in Dayton, Ohio. I have it on a MyIDE 2 cart, with the MyIDE operating system on eprom plugged into an 800XL compuer. It works great. Loads in about 10 seconds. I've tried to put it on "THE!CART" but can't get it to load. Is there a certain setting for THE!CART to load it.

 

Any help would be appreciated. It is a TurboBasic program.

 

attachicon.gifWork.atr

 

Thanks,

Doug

Awesome - what machining are you doing?

Link to comment
Share on other sites

Stephen,

Thanks for the comment. I've worked at Dayton Progress since 1978, right out of high school.

We mainly make the punch and die components that fit in punch presses.

I mainly work on a surface grinder, grinding different shapes in the punches and also grinding head & body flats.

Most of our work we hold tolerances of .0002"

About 600 employees at the Dayton plant and about 1000 Worldwide.

 

After working there about 10 years and using my calculator daily, I thought my Atari could do this and I could impress my co-workers with a game computer. I had only played games to that point (Miner 2049er & Bounty Bob Strikes back being my favorites). So I started playing around with Basic and decided to write the program. I learned so much writing this program and had fun at the same time. It's not the best written but it does the job for me. Plug the Atari keypad in joystick port 2 and it works great. Technology has changed so much at my plant since I started (mostly with CNC), but we still grind a lot of shapes manually on a surface grinder where I still use my Atari daily.

  • Like 3
Link to comment
Share on other sites

@FULS:

Really cool to see somebody uses the Atari at work.

I have now also tested your ATR on my real cart and Atari65XE and it works fine.

Please PM the workbook for further tests.

Link to comment
Share on other sites

JAC!,

Thanks for testing it on real Atari hardware. I had no luck on my stock 800XL and my stock 130XE.

Since you had it working on your Atari 65Xe, It made me thank about using a different Operating System.

I changed it to my OmnimonXL OS and it loaded up perfectly.

It loaded 3x faster than MyIDE. That was a great feeling having a TurboBasic ATR load off THE!CART.

All my Rom images on THE!CART work flawlessly on stock 800XL's and 130XE's.

Could you test that ATR file on a stock OS 800XL or 130XE?

Is your Atari PAL? Mine is not.

I LOVE "THE!CART"!

 

Thanks for all your updates and features for this amazing cartridge,

Doug

Edited by FULS
Link to comment
Share on other sites

Hi Doug,

tested last night on a plain 800 XE without any extension or modification and it works fine.

Reading your last comment I tried on Altirra I can reproduce the issue under NTSC.

So it's a timeing bug that I'll track down.

Link to comment
Share on other sites

The!Cart Studio Update 2014-07-12 released

http://www.wudsn.com/productions/atari800/thecartstudio/help/TheCartStudio.html

  • ATR simulation now also works on NTSC machines and some images that ended in a lock-up on PAL will also work now.
  • ATR loading speed has been increased again by 50% for the cases where the destination address is not overlapping with the ROM area.
  • Sorting tables by multiple columns is now supported. Clicking on column header with SHIFT or CONTROL held down extends the sort order by appending this column. This way you can now sort by genre first and then by title for example. Clicking a column header without pressing SHIFT or CONTROL resets the sort order to that single column

post-17404-0-84912200-1405117431_thumb.png

  • Like 6
Link to comment
Share on other sites

I use export as ".car" from the The!Cart Studio and Altirra 2.60-test29 currently.

 

I'm also exporting as CAR. I think you mean Altirra 2.50-test29. I've tried several different versions of Altirra -- newer and older than test29 with no success.

 

post-6369-0-12481600-1405201568_thumb.png

 

Would you mind posting one of your CAR images? It should be quite small if you have one with few ROMs in it, and ZIP the file.

Edited by MrFish
Link to comment
Share on other sites

MrFish,

Altirra-2.50-test38 works great for me. Thanks for asking the question to JAC!. I didn't know Altirra emulated THE!CART.

 

Thanks, that was it for me too. I was using as high as test37 with no luck.

 

I'm curious, are you using the 64-bit version? This is what I've been using/testing. Reason I ask is because Jac said he was using test29 with no problems. So I'm wondering if he's possibly using the 32-bit version and there was some problem between versions in regard to that. I was going to try the 32-bit version earlier, but I got tired of messing with it at the time.

Edited by MrFish
Link to comment
Share on other sites

Yes, I use 2.50-test29 and both 32 and 64 bit version work fine here on my Win 7 64-bit. Haven't tried newer/other version though.
Here's a .car with my unit tests on it. I use it to verify all The!Cart modes are emulated correctly.

 

 

 

Link to comment
Share on other sites

Thanks Jac. Hard to say, maybe I was just unlucky with the versions I happened to pick (I don't think I tried test29 specifically). Test38 is working fine though.

 

I checked out the unit test cart. Everything seemed fine except the MegaMax 2 MB, which caused my version of Altirra to lock up.

Edited by MrFish
Link to comment
Share on other sites

Can see any issue also with test38 and the 2MB MegaCart here. Maybe you can play around with the other settings like firmware/RAM size etc. so we can narrow it down. Esp. what's the state of Altirra when it "locks up" and you presse F8. For example: $c0df JMP $c0df would indicate another timing issue, like with NTSC.

post-17404-0-09848900-1405444197_thumb.png

post-17404-0-54176900-1405444198_thumb.png

Edited by JAC!
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...