Sunday, February 19, 2012

Burning ROM

After spending half of my Saturday soldering and wiring up the prototype, I turned my attention to code.  The helpful guys on the AtariAge forum provided a small 6502 snippet of code which tickled the ANTIC (graphic chip) on the Atari XEGS to produce a colored background.  The idea would be to put this code in ROM with the 6502C in the socket, verify it worked, then code up the equivalent in 6809 assembly language and use it to bring up the Liber809.

I have a ROM burner, but one thing I absolutely hate doing is burning ROMs, then waiting the 10 or so minutes to erase them.  Invariably, you find a bug in your code and need to reburn.  The turn around time is atrocious...

So I began looking online for ROM emulators.  Those are nice little RAM-based boxes that essentially plug into the ROM socket of a computer, and let you offload code quickly for testing.  No burning ROMs, no erasing.

After doing some searching, I found something that looked to be promising... the Ostrich II from www.moates.net.  This little device looked cool, but was actually marketed to gear heads who want to change the programming in their vehicles' on-board computers.  It looked like it would work for this project though, so I ordered it.

To my surprise, it came in the NEXT DAY.  Turns out the company is in Baton Rouge, just 60 miles away from me.  Very very cool.  After work that day, I hooked it up and to my dismay, found that it would not work.  Long story short: the cable was made incorrectly.  Moates fixed me right up with a new cable, and a few days later I was off to the races.  With a simple Windows-based program I was able to load up the emulator with the original 32K Atari XEGS ROM and prove out that the device worked.  Wham-o!  Programming a 32K image into the thing takes less than a second!

2 comments:

  1. Thoroughly enjoying this blog, and stunned to discover that a thing I always wished existed actually does!

    ReplyDelete
  2. Thanks for your comment, Mark!

    ReplyDelete