Task: Burn an Atari Binary File on an EPROM Chip
Needed: EPROM burner, EPROM
Time: 30-60 mins
Read Only Memory (ROM) integrated circuits (IC) or chips were routinely used in the Atari 8-bit computers and video game consoles. For example, the Atari 800XL included Atari BASIC on a ROM chip so that it was always available. Of course, all Atari cartridges had the binary version of the software on a ROM chip soldered to a circuit board which plugged into the computer for reading into memory and running. It is sometimes of interest today to replace malfunctioning ROMs or upgrade them with newer versions of the software. For example, some Atari 800XLs came with revision B of Atari BASIC. The revision B ROM could be replaced with a ROM containing the newer revision C or even a modern language such as Altirra BASIC.
The easiest way to create a new ROM is through the use of erasable programmable ROMs or EPROMS. EPROM chips are widely available with Atari compatibility and be written to using a device called a programmer or EPROM burner. The programmers are also widely available and relatively inexpensive as are the EPROM chips. As a side note, here is an Antic magazine article from December of 1985 with instructions on how to make your own EPROM programmer.
The goal of this post is to provide step by step instructions on how to burn your own Atari-compatible EPROM. I plan to do several projects with EPROMs including making my own Atari cartridges.
The first step is to purchase an EPROM programmer. I purchased the TL866II Plus from Amazon for about $60. This one is very popular and has good reviews. Note that some for sale are cheap clones. Below is a photo of it with an EPROM loaded. The software (Xgpro) for interacting with the device comes on CD-ROM. The version that came with mine is from October of 2019 (version 9.00). Newer versions are available on the manufacturer’s website. Here are the instructions.
Next you will need to purchase an EPROM compatible with the Atari 8-bits project you want to complete. My first goal is to make an Atari 400/800 cartridge. I am using this set of instructions which calls for the 2764A EPROM. I ordered several of these from Jameco Electronics for about $4.50 each. Note that this chip has to be erased using UV light. UV units designed for erasing EPROMs can be found on Amazon and other outlets. However, I have not yet tried one and the inexpensive ones have spotty reviews. Here is a Hackaday article on making your own with a UV LED. That is what the hole at the top is for. Some suggest covering this hole with tape so the chip isn’t accidentally erased by light exposure. This is unlikely unless exposed for a long period of time. There are other EPROMs which can be erased directly from the programmer.
Once you have the programmer software installed, the next step is to plug in the device using a USB cable and seat the EPROM. Note that the software will recognize the device and print a message at the bottom indicating which devise is plugged in. The programmer has a lever which locks the chip in the socket. This should be in the up position. Seat the chip as shown above. One side of the chip has a semicircle notch which is oriented toward the side with the lever. My programmer has a small picture showing this orientation in the lower right of the device. The EPROM I am using has 28 pins (14 on each side). Once the chip is seated, gently move the lever to the down and locked position.
The final step is to write a binary file to the chip using the Xgpro software. The first thing you need to do is tell the software which chip you are using. Under the Select IC menu item, choose Search and Select IC. This will bring up a window where you can browse manufacturers and chips. There are over 15,000 chips which are compatible with this programmer. Mine was easy to find under manufacturer “ST” and device M2764A @DIP28. Once that is done you can interact with the EPROM with options under the Device menu. Here you can Read (R), Verify (V), Program (P), and Erase (E) among other options. Note that Erase is grayed out for my chip as it needs to be erased by UV.
I first tried reading the empty chip and confirmed there was nothing on it. I then Opened the Altirra BASIC binary file from the file menu to load it into the Xgpro software. I then selected Program to write it to the EPROM. This just took a few seconds. You can then Verify that what is on the chip is the same as what was loaded into Xgpro. As a final test, I Read the binary back off the chip and Saved it to a new binary file which I then loaded into Altirra and ran to make sure everything was OK. This all checked out.
The newly burned EPROM with Altirra BASIC should be ready to be used in a new cartridge. I will cover this in a future post.
Making EPROMs was much easier than I thought. The hardest part is just making sure you are getting the right chip for your particular purpose. There are a lot of chip variants and it is hard to know if they are all compatible. Be sure check them carefully before you order them. This has certainly opened the door to some fun hardware projects. One example project would be to upgrade the 1200XL operating system with a new ROM containing the 800XL OS. This would give you the beautiful form factor of the 1200XL without the limitation of its original buggy OS which was not compatible with all software. I did end up making my own cartridge which was tons of fun with just the right amount of challenge.