Venerable folks of 6502.org,
first, let me introduce myself: My name is Oliver Ullrich, I'm a (very!) long time lurker, first time poster. I'm German, but live in Miami, Florida now. I have a bit of experience with MCS-51 and Z80 circuits, but never built anything 6502. That might change soon, though.
I have a couple of questions regarding essential tools like (E)EPROM programmers and emulators, as well as CPLDs and their programming. Here we go:
a. Are commercial EPROM emulators still around? I found only two USB options, but they are outrageously expensive.
b. Which (E)EPROM programmer would you recommend? I kind of like the USB Universal Programmer TL866CS, but it only ships from China which would take ages.
c. What 5V CPLDs would you recommend? I fear there's only some Atmel products left for 5V, right? Which programmer cable do you recommend for these? Atmel's programming software is unfortunately not that well maintained.
I know there's a great little Arduino based EEPROM programmer by Mario Keller, et al. (http://www.ichbinzustaendig.de/dev/meeprommer-en). I secretly entertain the thought to add a 62C256 and a couple of bus separators and thus expand it to an EEPROM emulator. Unfortunately the DIP-28 ribbon adapters seem to be gone, also. Combined with a JTAG interface to program CPLDs this would make a nice little multi-tool, especially for newbies.
Do you have any advice?
Yeah, but the tools ... (E)EPROM programmer, emulator, CPLDs
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
Hi Oliver,
good luck for your 6502 project. I think an ROM emulator is not really necessary. You have various other options. The simplest option would be to use a ZIF socket for your ROM in your 6502 system and have a EEPROM programmer. I use a Genius G540 however as it is from China that is not a better option for you. I think you have to be patient and get your favorite programmer. Other options are to use a microcontroller that makes use of the BE signal and loads the ROM image into a RAM that is later on write-protected.
As for the CPLD, I think yes ATMEL CPLDs are the only ones available for 5V. I recently started using them, see also here viewtopic.php?f=10&t=3276. The ATMEL tools are certainly not state of the art, but for a hobbyist they are ok.
cheers
Peter
good luck for your 6502 project. I think an ROM emulator is not really necessary. You have various other options. The simplest option would be to use a ZIF socket for your ROM in your 6502 system and have a EEPROM programmer. I use a Genius G540 however as it is from China that is not a better option for you. I think you have to be patient and get your favorite programmer. Other options are to use a microcontroller that makes use of the BE signal and loads the ROM image into a RAM that is later on write-protected.
As for the CPLD, I think yes ATMEL CPLDs are the only ones available for 5V. I recently started using them, see also here viewtopic.php?f=10&t=3276. The ATMEL tools are certainly not state of the art, but for a hobbyist they are ok.
cheers
Peter
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
Hi Oliver,
I know nothing about ROM emulators. My projects all use the 28C256 EEPROM, and because I'm a bit cheap I built my own programmer. It uses an AVR microcontroller and a couple of external 74 series parts. Other folks around here have gone down a similar route, but of course it is more work.
My programer is described here: http://aslak3.blogspot.co.uk/2013/03/ee ... rcuit.html
On the subject of 5V CPLDs: whilst they are no longer current parts, I have had good results from the Xilinx XC95xx series. Specifically the the XC9536, '72 and '108, all available in reasonably friendly PLCC. Do not use the parts ending XL, since they are 3.3V. I have used these successfully in my 6809-based micro to implement glue logic, address decoding, bank switching latch, interrupt router, a simple tone generator, etc. I used the Xilinx ISE software, on Windows, with the "Platform" USB programmer. All parts were bought from ebay.
See: http://www.xilinx.com/support/documenta ... /DS063.pdf
There are also the MAX7000 series from Altera. I suspect these are EoL'd as well. They are also available in PLCC, and appear to offer similar complexity to the XC95xx parts. I've not used these myself.
See: https://www.altera.com/en_US/pdfs/liter ... /m7000.pdf
Let us know what you decide to do.
Lawrence
I know nothing about ROM emulators. My projects all use the 28C256 EEPROM, and because I'm a bit cheap I built my own programmer. It uses an AVR microcontroller and a couple of external 74 series parts. Other folks around here have gone down a similar route, but of course it is more work.
My programer is described here: http://aslak3.blogspot.co.uk/2013/03/ee ... rcuit.html
On the subject of 5V CPLDs: whilst they are no longer current parts, I have had good results from the Xilinx XC95xx series. Specifically the the XC9536, '72 and '108, all available in reasonably friendly PLCC. Do not use the parts ending XL, since they are 3.3V. I have used these successfully in my 6809-based micro to implement glue logic, address decoding, bank switching latch, interrupt router, a simple tone generator, etc. I used the Xilinx ISE software, on Windows, with the "Platform" USB programmer. All parts were bought from ebay.
See: http://www.xilinx.com/support/documenta ... /DS063.pdf
There are also the MAX7000 series from Altera. I suspect these are EoL'd as well. They are also available in PLCC, and appear to offer similar complexity to the XC95xx parts. I've not used these myself.
See: https://www.altera.com/en_US/pdfs/liter ... /m7000.pdf
Let us know what you decide to do.
Lawrence
8 bit fun and games: https://www.aslak.net/
-
ArnoldLayne
- Posts: 109
- Joined: 28 Dec 2014
- Location: Munich, Germany
- Contact:
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
oullr wrote:
b. Which (E)EPROM programmer would you recommend? I kind of like the USB Universal Programmer TL866CS, but it only ships from China which would take
The only downside I can think of is the software, which is windows only, but there might be hope: https://github.com/vdudouyt/minipro
Gruß aus München,
ArnoldLayne
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
Thank you all for the information and comments.
I ordered a TL866CS programmer from an US supplier, and will start to experiment with EEPROMs and GAL programming.
Also, I found some long lost Xilinx XC9572 CPLD's, have ordered a programmer cable, and am now trying to find adequate programming software. I hope XC9500 devices will be available for some time.
I ordered a TL866CS programmer from an US supplier, and will start to experiment with EEPROMs and GAL programming.
Also, I found some long lost Xilinx XC9572 CPLD's, have ordered a programmer cable, and am now trying to find adequate programming software. I hope XC9500 devices will be available for some time.
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
oullr wrote:
I ordered a TL866CS programmer from an US supplier, and will start to experiment with EEPROMs and GAL programming.
Quote:
Also, I found some long lost Xilinx XC9572 CPLD's, have ordered a programmer cable, and am now trying to find adequate programming software. I hope XC9500 devices will be available for some time.
In terms of programming software, it the iMPACT component within ISE. I use 10.1, though there may be a slightly newer version that still supports the XC9500.
8 bit fun and games: https://www.aslak.net/
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
If you want to build a rom emulator, you can use this DIP Plug like I did: http://au.element14.com/webapp/wcs/stor ... reId=10184
I will post schematics of my emulator later today
:edit:
Schematic Here
The pinheaders are there to connect to my Raspberry Pi for programming.
The OR gate driving the Buffers OE signal is there to prevent the buffers driving the bus whenever the ROM is not selected by the memory decoder and during programming. (it took me an embarrassing amount of time to figure out this was needed...)
The reason I'm using this is that it is horrendously slow to program an EEPROM using the Raspberry Pi, as it can't write fast enough to do page writes.
I will post schematics of my emulator later today
:edit:
Schematic Here
The pinheaders are there to connect to my Raspberry Pi for programming.
The OR gate driving the Buffers OE signal is there to prevent the buffers driving the bus whenever the ROM is not selected by the memory decoder and during programming. (it took me an embarrassing amount of time to figure out this was needed...)
The reason I'm using this is that it is horrendously slow to program an EEPROM using the Raspberry Pi, as it can't write fast enough to do page writes.
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
I just received one of those TL866CS programmers from ebay. I have not fiddled with it yet.
In the meantime I have also acquired a Stag PP39 39M101A EPROM & EEPROM progammer, seems to be the same as this one: http://matthieu.benoit.free.fr/Stag_PP39_programmer.htm
I got it from work - lots of stuff being dumped today. This one may be the same unit I used decades ago to program a replacement PROM for my nearly-but-not-quite IBM-compatible PC. If this one is the very same one, then I remember it as easy to use.. so hopefully I'll figure it out. It has an RS232C interface but I don't have any software. It was probably for MS-DOS originally. That page I linked to has a link to some software (re-engineered I think) that may be usable. However, when looking at the unit I believe what I did back then the last time I used it was to read the original PROM on the programmer, then use the keypad to patch the code, and then burn a new EPROM. So I probably just used the module in stand-alone mode.
In any case, if anyone has any experience with the 39M101A then I would appreciate any and all info you may have.
Update: Found the manual for the PP39 w/39M101A. And serial control doesn't actually need any software as it turns out, there's a monitor which accepts commands to e.g. receive files (formats accepted listed in the manual), and more. For once it looks like I got more than just pieces of a whole.
-Tor
In the meantime I have also acquired a Stag PP39 39M101A EPROM & EEPROM progammer, seems to be the same as this one: http://matthieu.benoit.free.fr/Stag_PP39_programmer.htm
I got it from work - lots of stuff being dumped today. This one may be the same unit I used decades ago to program a replacement PROM for my nearly-but-not-quite IBM-compatible PC. If this one is the very same one, then I remember it as easy to use.. so hopefully I'll figure it out. It has an RS232C interface but I don't have any software. It was probably for MS-DOS originally. That page I linked to has a link to some software (re-engineered I think) that may be usable. However, when looking at the unit I believe what I did back then the last time I used it was to read the original PROM on the programmer, then use the keypad to patch the code, and then burn a new EPROM. So I probably just used the module in stand-alone mode.
In any case, if anyone has any experience with the 39M101A then I would appreciate any and all info you may have.
Update: Found the manual for the PP39 w/39M101A. And serial control doesn't actually need any software as it turns out, there's a monitor which accepts commands to e.g. receive files (formats accepted listed in the manual), and more. For once it looks like I got more than just pieces of a whole.
-Tor
Re: Yeah, but the tools ... (E)EPROM programmer, emulator, C
Thank you all for the good advice.
I constructed a prototype VGA output based on a Xilinx XC9572 CPLD, a 32kb SRAM, and three TTL buffers for bus isolation. It works rather well, the picture is stable, but I will only know whether it really displays the RAM's contents after I connected a MPU to it.
I am programming the CPLD in VHDL, which is surprisingly simple - at least for such a small task. I will report in more detail once the VGA circuit is completely tested.
I constructed a prototype VGA output based on a Xilinx XC9572 CPLD, a 32kb SRAM, and three TTL buffers for bus isolation. It works rather well, the picture is stable, but I will only know whether it really displays the RAM's contents after I connected a MPU to it.
I am programming the CPLD in VHDL, which is surprisingly simple - at least for such a small task. I will report in more detail once the VGA circuit is completely tested.