Jump to content
keoni29

Atari2600 cartridge reader. Play your real cartridges on an emulator.

Recommended Posts

I have made an arduino shield that lets me read the content of atari2600 game cartridges. With a bit of software on my pc I can dump the rom image to a file and then it automatically runs the emulator. Would anyone be interested in a similar device?

  • Like 4

Share this post


Link to post
Share on other sites

That sounds like a very exciting project, I am interested.

Share this post


Link to post
Share on other sites

It would be awesome if a drive expansion bay enclosure could be made.....then we could have Atari 2600 cart slots on our computers! :)

Share this post


Link to post
Share on other sites

Our very own Matthias_H has made a similar product. Last time I mentioned it I got banned from the topic so I'll say no more. He could definitely have advice about the PC side of things, though.

Share this post


Link to post
Share on other sites

Our very own Matthias_H has made a similar product. Last time I mentioned it I got banned from the topic so I'll say no more. He could definitely have advice about the PC side of things, though.

 

That's not why you got named from the topic.

 

..Al

Share this post


Link to post
Share on other sites

That's not why you got named from the topic.

 

..Al

 

Since you haven't replied I still don't fully understand the ban. I DID apologize.

 

So, I can discuss the R____e with this gentleman to further his project?

Share this post


Link to post
Share on other sites

I also built a backup cartridge that goes with it. You can write roms to it and play it on the real hardware. The device communicates over serial with the PC. At the moment only 4Kb and lower cartridges are supported, but I can add support for bankswitching carts using a bit of software. A slot loading drive expansion bay version would be very cool! I could build a prototype inside an empty cd drive enclosure.

Share this post


Link to post
Share on other sites

I still find it strange that you cannot edit posts after a certain timer runs out . Oh well.

Here is a picture of what my second prototype will look like. I saved an atari2600 from the garbage and took out this piece of plastic. The switch is also original, but I don't know what to do with it yet. It looks cool though. The case comes from an old CD drive. Now I have to solder up the guts.

 

Edit: On the right picture you see it's it's a bit skew and it leaves a gap on the top. That is because it is not secured in place by screws.

post-32478-0-39589300-1368553892_thumb.jpg

post-32478-0-20878400-1368557234_thumb.jpg

Edited by keoni29
  • Like 8

Share this post


Link to post
Share on other sites

Very cool! So this would fit in a drive bay? I don't care if it rips a ROM, but I'm sure it has to, and it runs a batch file or something to automatically start up the emulator? I think this would be really cool to have in the front of a PC case. :thumbsup: Looks awesome!

Share this post


Link to post
Share on other sites

Very cool! So this would fit in a drive bay? I don't care if it rips a ROM, but I'm sure it has to, and it runs a batch file or something to automatically start up the emulator? I think this would be really cool to have in the front of a PC case. :thumbsup: Looks awesome!

 

this.

 

The ONLY thing that would make it cooler is if you supported SaveKey memory on-board for hi-scores!

  • Like 1

Share this post


Link to post
Share on other sites

While we're at it: why not make a PCI version of the atari2600 :P (because it's friggin hard?)

 

This device can do everything an atari2600 can do if it's programmed. You'd need to be able to install new firmware to the microcontroller so it supports different types of bankswitching. You'd need to modify the emulator so it can also save data to the ram. Special cartridges with expansion chips for sound or memory will of course be emulated instead of actually used from the cartridge. I could change the program so it makes a temporary rom dump instead of a permanent one. Are there still copyrights on atari2600 games?

Share this post


Link to post
Share on other sites

When dumping, the auto-detection of a cart's bankswitching is a little tricky, and getting a correct dump with known bankswitching can also be tricky. It was explored here:

 

http://atariage.com/forums/topic/164988-harmony-as-a-copycart/

 

If you need source code, let me know - Even though Harmony uses an ARM and an Arduino uses something else, the code is mostly C so you might be able to port some of it.

Share this post


Link to post
Share on other sites

Cool, that would save me a lot of work. Please send me the source via PM.

 

I came up with the idea of putting two joystick ports on the device instead of the switch. Then you can use your paddles and joysticks with the emulator! Stella has support for the stelladaptor built in? If so I could just make my device behave like a stelladaptor and it will work.

Share this post


Link to post
Share on other sites

Cool! I never heard of that thing! If this project is completed I might make cartreaders for other systems as well.

Edited by keoni29

Share this post


Link to post
Share on other sites

While we're at it: why not make a PCI version of the atari2600 :P (because it's friggin hard?)

 

Philips made an isa MSX-2 card in the past:

philips_msx2inpc.jpg

 

When it was made, I thought, that's stupid, emulation is much cooler. Now I think: "wow, that's cool, original msx hardware inside your computer" :D

 

By the way, the msx also had a cartridge reader: http://www.msx.org/articles/msx-game-reader

 

msxgr004_jpg_50509.jpg

Share this post


Link to post
Share on other sites

That is cool. Is there a commercially available atari2600 cartridge reader yet?

 

I mentioned a member who may have some experience in post #4. Batari has made a reader out of a game brain, I think? It's been a long time.

Share this post


Link to post
Share on other sites

He uses a game brain in combination with the harmony cart. It's not a stand alone cartridge reader, but it's cool and hackish though.

Share this post


Link to post
Share on other sites

While we're at it: why not make a PCI version of the atari2600 :P (because it's friggin hard?)

 

Good luck getting signed drivers for it for modern windows. Stupid Microsoft! :razz:

Share this post


Link to post
Share on other sites

Would you need signed drivers for a usb device? I could just use the drivers for a normal (usb) cardreader and make my device behave just like one.

Share this post


Link to post
Share on other sites

Original post: http://8times8.host56.com/?p=334

I started porting the cartreader software to the eZ8 microcontroller. It is already possible to read cartridges.

Because the eZ8 has 29I/O pins I don't have to use latches to expand the address bus. This means I only need two IC's for the entire build: A max232 for serial communication and the microcontroller! This greatly reduces the cost of the entire thing. It also makes it much easier to build than its arduino counterpart.
IMG-20131108-WA0000-300x225.jpgIMG-20131110-WA0009-300x225.jpg
IMG-20131110-WA0007-300x225.jpgIMG-20131110-WA0005-300x225.jpg

The cartreader V2 has a renewed communication protocol. Instead of dividing the cartridge address range in pages you can have random access to the cartridge via the pc and do block transfers. Every block has a header like this:

mode = [0x00..0x01] (0x00=read, 0x01=write)
size = [0x00..0xFF] (0x00=1byte, 0xFF=256bytes)
addrH = [0x00..0x0F](12 bit start address)
addrL = [0x00..0xFF]

If write mode was selected bytes will follow. These are buffered and then written to the cartridge starting at the 12 bit start address.

In the next couple of days I will modify the romclient.exe pc software so it works with the eZ8 version. I will rename it to romclient2.exe to avoid confusion.
  • Like 1

Share this post


Link to post
Share on other sites

I almost finished building my second multi-cartridge. This one has F8 bankswitching hardware built in. It can hold up to 16 8k games or 16 4k games (gets copied twice to the cart so when a bankswitch occurs it does not affect the game)
After cleaning up the code of the pc connectivity tool that goes with the cartreader I could easily make changes to the bankswitching code. The cartreader still only supports F8, but F6 is pretty easy to implement too. I do not own any F6 games to test it with, so I am going to have to get some F6 games first.

It seems like I don't have to make any hardware modifications to the cartreader, so I will solder up a prototype and put it in an enclosure soon!

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