Close

Sym-1 plus EPROM

rob-wardRob Ward wrote 09/23/2021 at 02:15 • 3 min read • Like

One of the popular chip formats in the 70's and 80's were the ubiquitous EPROMs (Electrically Programmable Read Only Memories). They had very good memory density at the time and were accessible technology for hackers and OEMs alike. They had the advantage of easy to program for a given EPROM and good value for money in density, plus they allowed the power of the CPU to boot in to managing its own hardware right from the get-go! This unleashed a myriad of designs that could utilise all sorts of hardware for input and output. While architecturally so much simpler than a CPU, they made a huge contribution to the development of the computer systems of today.

The challenge with EPROMs came after a while when different companies decided on different pin-outs, programming voltages and programming algorithms. If only one EPROM version was chosen, it was pretty easy to get up and going. However as bigger EPROMs became more available it was harder to keep moving up the food chain. The programmer designed here was originally built to read the ROMs that came with the Sym-1 I bought. I wanted to be able to archive them. I then wanted to use the ROM reader to become an EPROM programmer. EEPROMs were not all that easy to get hold over 4-5yrs ago when I began this project, though I can see the future is in their hands as well. For the moment though to go "full-retro" amd EPROM programmer was an easy nostalgic choice and I had another lovely Arduino Mega 2560 to help me out.

So the system outlined below simply lines up the Mega output ports into 8 bit blocks of the Address and Data line of the ROM chip. The set up below is for the 8kB 2716 EPROM, but could be easily modified by either changing the software on how the Address and Chip Select pins are used to cater for other devices. The Mega has plenty of power to get this moving along easily. At worst if you only want to try to program one it could easily be setup with a prototyping board and hook up wires. (the wires could be moved around to cater for different ROMs, but many of connections eg D0-D7 and A0-A7, would be OK).

Now for the huge hack! I was keen to use the 2716 EPROM, but it had some weird voltage requirements like lifting the Vcc from 5V to 5.6V during programming. Applying 12.5V for Vpp was reasonable, but the other requirements were just proving too hard. So I rigged up the programmer and simply hardwired a switch for the 12V. Ran the program and it worked.  More info to follow!!!!

  EPROM Programmer + SD card read/write

  Arduino Mega 2560 plus USB-Tiny programmer

  Now with iterative programming pulses

 ** SD card attached to SPI bus as follows:
 ** MOSI - pin 50
 ** MISO - pin 51
 ** CLK  - pin 52
 ** CS   - pin 53

   Connections to program the 8kB EPROMs, hence using 2764's ( 12.5V Vpp )

PortMega
Pin#
2764
Socket
ZIF
Socket
ZIF
2764Mega
Pin#
Port
Vpp
128Vcc
K12A12227!PGM15K
A29A7326Vcc
A28A6425A88K
A26A5524A99K
A27A4623A1111K
A25A3722!OE13K
A24A2821A1010K
A23A1920!CE14K
A22A01019D737C
C30D01118D636C
C31D11217D535C
C32D21316D434C
0V0V1415D333C
Like

Discussions