EPROMmer softare package V2 --------------------------- After working with the original EPROMmer package for more than a year, I finally decided to rewrite the driver program in C. The result is in this file. Operating the program is quite simple. I have added a few functions such as: 1. Blank EPROM checking. 2. Comparing the RAM buffer with an EPROM in the socket. 3. Editing RAM values. 4. Multiple programming algorythms. Currently the new algorythms are the 50ms pulse algorythm for the original 2716,2732,2732A, intel's intelligent algorythm, EPROMmer's original algorythm, and a one pass write algorythm for use with the new 62256 personality module. 5. Caliberation mode for VPP, and parallel port test. 6. The program now allows writing bytes which are partly written. If the EPROM contained $E0 for example, $C0 can be written. The original BASIC program did not allow this. There is also a new hardware module for writing and reding 62256 static RAMs. I have used this module with a non volatile RAM socket such as Dallas Semiconductor's DS1213C. This socket supplies backup VCC for the RAM chip which is plugged into it. It can be an excellent replacement for EPROMs during development. Notice that because the way EPROMer is built, writing the chip is not as fast as you would expect from a RAM chip. In fact, the write operation is fast, but setting up the chip takes time, because after each write operation a read operation for verify must be made, which requires rewriting the high address byte because I used A15 for the /WR pin. There is also a new VPP test command. This command sets VPP to the value appropriate for the current chip type. Use this function to caliberate the circuit after you finish building it. NEVER USE THIS MODE WITH AN EPROM PLUGGED IN!. This mode also toggles the 3 control lines that are taken from the parallel port. You can use this to test them with a voltmeter. I used this function after I blown up a CIA chip since I needed a way to check if my parallel port is still alive. This function doesn't currently toggle the parallel port data bits because it inteferes with the VPP setup. Command summary: ---------------- *) Use the chip type gadgets to select a chip type. *) Use the programming algorythm gadgets to change the default programming algorythm type. *) Use 'Load file' to load a file into RAM, starting at the address in the 'RAM address' gadget. *) Use 'Save file' to save a file from RAM, starting at the address in the 'RAM address' gadget, and who's length is taken from the 'Number of bytes' gadget. *) Use 'Read EPROM' to read data from the EPROM starting at address 'EPROM address', into the RAM starting at address 'RAM address' for 'Number of bytes'. *) Use 'Program EPROM' to write data to the EPROM starting at address 'EPROM address', from the RAM starting at address 'RAM address', for 'Number of bytes'. *) Use 'Compare EPROM' to compare data from the EPROM starting at address 'EPROM address', with the RAM starting at address 'RAM address' for 'Number of bytes'. *) Use 'Check EPROM' to make sure an EPROM is empty. *) Use 'Read byte' to show the byte store in RAM at address 'RAM address' in the 'RAM value' window. *) Use 'Write byte' to write the byte who's value is in the 'RAM value' window, into RAM at address 'RAM address'. *) Use VPP check to toggle the test mode. NEVER USE THIS WITH AN EPROM PLUGGED IN!. Hardware modifications: ----------------------- I made a few hardware modifications to the circuit in order to make it work better, and to make caliberation easier. *) I replaced the 4.3K resistor conencted to the LM317, with a 5K trimmer. This way I can get accurate 25V for 2716. *) I replaced the 2N3904 with 2N2464. I guess this is not necessary, but for some reasons I couldn't make my on programmer work until I used these transistors, which I saw on a friend's EPROMmer. Compiling the program --------------------- The program compiles under Lattice C V5.10a, and requires Power Windows 2.5 to edit the panel. for those of you who don't have PW, I have included a copy of the panel in the file EPROMmer.h, as well as the original PowerWindows file under the name EPROMmer.pw . The program also requires a precompiled symbol table of all the Amiga includes. If you don't have such a file, you will have to find which include files the program requires, and add them to the source code, before you compile. The program also uses and requires CygnuSoft's req.library . It is included here for those who don't have it. Disclaimer ---------- The program is thereby placed in public-domain. Use it for whatever you like, abuse it, or even use parts of it in commercial programs (if you can find something worthwhile in the code ..) No warranty is given, use the program at your own risk, etc. If you use this program and have EMail access, I would be glad to hear your opinion about the program. Many thanks for Bob Blick for the original project... Enjoy! Udi Finkelstein 10 Glitzenstein st. 64686 Israel. finkel@math.tau.ac.il