Jump to content
IGNORED

Cartridge conversion 5200->A8bit


Master Phruby

Recommended Posts

No. It wouldn't work. Memory map is different and the way controllers are read is very different.

 

There's been plenty of conversions both ways though - reassemble the program with modifications to run on the other system.

 

Not that I've done any myself (plan to do some one day), it's somewhat easier getting a 5200 game working on the computer since there's much less Ram restrictions and you don't even have to run it from cartridge.

Link to comment
Share on other sites

You know what would help me? A step by step of what it took to make that conversion. Say someone wanted to port Qix from the 8 bit to 5200 or visa versa, what program was used to take the program apart, what lines of code were changed, how was it reassembled, and so on. Let people see if they can duplicate what happened, and learn from it that way.

 

That way, maybe other conversations they would have an idea of what to look for.

Link to comment
Share on other sites

Going from memory...

 

For 8bit to 5200 for things that would run in 16K ROM/16K RAM:

 

I had a kind of mini 8bit OS that I added to over time as each game needed new features which had most of the OS variables where they were in the 8bit computers (except the NMI/IRQ vectors in hardware which I had to swap around). Some games like Donkey Kong (the first one I did) used virtually none of the OS. Later games I did needed other things like Pokey interrupts that not many early carts used. The VBI routine handled reading the 5200 sticks and updating the shadow location with a digital value. Keyboard scan was similar. CONSOL (start/select/option) could be a shadow locations or a JSR call. Ths OS wasn't fixed and things would usually be tweaked here and there.

 

Used DIS6502 to disassemble the game to find out where things were and to have something to search.

I then did most of my games by just patching the original ROM and adding my mini os and any needed routines into free space. (larger rom space in 5200 carts helps here)

 

Find all references to hardware that is in different places and adjust them. If a game read sticks from hardware locations, read them from the shadows.

Find any references to any shadow RAM locations that have to be different (mostly because the IRQ/NMI vectors being hardcoded in ROM).

Be sure anyplace that sets SKCTL with bit one set to not set it on the 5200.

Adjust any setting of charbase (shadow or hardware) to point the proper location for the 5200.

 

16K disk/cassette based software would be similar but with a routine to copy the game to RAM. Examples I did: Slinky, Forbidden Forrest, Analog classics.

Anything else will take a lot more work and must not need more than 16K RAM and will require lots of rearranging of code. I haven't done any of these except Archon, which whatever version I picked, I was lucky to not have to relocate anything. If someone could get RAM going in a 5200 Cart without a r/w and clock line (and have the read and write work normally), a lot more stuff could be more easily converted.

 

Going the other way 5200->8bit would probably be pretty similar but I haven't personally done any. The IRQ/NMI vectors could be changed and most of the computer OS ignored except the character set.

 

 

Not sure why anyone would want to port the 8bit computer version of Qix to the 5200 since it already has a superior version :-) Although porting it and the ugly early Dig Dig still might be a good thing to experiment on since I don't think they have been done. Bonus points if someone can hack the 5200->8bit conversion of Qix to make it so you press the button for slow draw, and press and release it for fast draw and not let you leave the existing lines unless a button is pressed. Or a 2 button joystick hack would also work.

Edited by kenfused
Link to comment
Share on other sites

And here are some typo corrections to that article:

http://www.atariage.com/forums/topic/130940-article-transporting-atari-computer-programs-to-the-5200/?do=findComment&comment=1580189

 

Back then, to validate my research for the article, I converted the 5200 PacMan cart for the 800. Sorry, I don't remember the procedure step-by-step, but the article makes it pretty obvious what needs to be done.

Link to comment
Share on other sites

You won't take no for an answer, so let's examine the alternative. These days, you probably could build such a cartridge. A high-speed processor could watch the 6502 bus as the ROM program executes and replace the 5200 I/O addresses with 800 addresses. You could plug in digital joysticks and the processor would convert their signals to equivalent analog values. It's a sort of in-circuit emulation. It seems possible, though probably not worth the effort, since most 5200 games have been converted already.

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