Help to program 16 bit EPROMs on a 8 bit programmer
Moderator: Moderators
Help to program 16 bit EPROMs on a 8 bit programmer
Hi.
I've been trying to program 16-bit EPROMs, but my programmer only supports the 8-bit ones.
It's a Genius G540.
I tried to find some kind of updated software that could support at least a 27c4100 with no luck.
I tried to use an SNES DIY game PCB to do the work: So far so good, I was able to successfully read a Sonic 2 ROM: Unfortunately, I can't program using this adapter.
Changing the pull-up resistor networks to pull down resulted in the EPROM being all 00's, which probably means that the programming sequence is doing well.
Maybe the multiplexers I'm using, 74HC257 aren't bi-directional, are they?
The datasheet says nothing about that...
Does such multiplex exist?
Another idea I had was to use a couple of 74HC245 bus transceivers.
If I do this, should one get the regular A0 signal and the other an inverted one?
What about the DIR pin?
Should I add a 78L05 to the VPP pin to select the direction or there's some better way to do it?
Thanks in advance.
I've been trying to program 16-bit EPROMs, but my programmer only supports the 8-bit ones.
It's a Genius G540.
I tried to find some kind of updated software that could support at least a 27c4100 with no luck.
I tried to use an SNES DIY game PCB to do the work: So far so good, I was able to successfully read a Sonic 2 ROM: Unfortunately, I can't program using this adapter.
Changing the pull-up resistor networks to pull down resulted in the EPROM being all 00's, which probably means that the programming sequence is doing well.
Maybe the multiplexers I'm using, 74HC257 aren't bi-directional, are they?
The datasheet says nothing about that...
Does such multiplex exist?
Another idea I had was to use a couple of 74HC245 bus transceivers.
If I do this, should one get the regular A0 signal and the other an inverted one?
What about the DIR pin?
Should I add a 78L05 to the VPP pin to select the direction or there's some better way to do it?
Thanks in advance.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Correct.
Yes, an analog multiplexer such as the 74'3257, 4053, or 4551.Does such multiplex exist?
Normal voltage regulators won't work with only 1.5V of headroom during programming, let alone when it's in verification mode and the programmer only provides 5V in the first place. Better to find a part (4000 series?) that can operate at 6.5V.Should I add a 78L05 to the VPP pin to select the direction or there's some better way to do it?
- TmEE
- Posts: 960
- Joined: Wed Feb 13, 2008 9:10 am
- Location: Norway (50 and 60Hz compatible :P)
- Contact:
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Usually there's a byte mode on 16bit EPROMs, that will allow you to read/write everything with only 8 bit databus.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
That's an interesting information.
Unfourtunatelly, if I've read the datasheet correctly, it seems that the /BYTE pin is also the VPP pin.
Unless there's a trick that I didn't figure out yet I'm busted.
The EPROM is a ST 27c800.
Unfourtunatelly, if I've read the datasheet correctly, it seems that the /BYTE pin is also the VPP pin.
Unless there's a trick that I didn't figure out yet I'm busted.
The EPROM is a ST 27c800.
- TmEE
- Posts: 960
- Joined: Wed Feb 13, 2008 9:10 am
- Location: Norway (50 and 60Hz compatible :P)
- Contact:
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Ok, that prevents this idea...
But you can still program the chip one half at a time. Erase turns zeros into ones, and programming operation turn a one back to zero... so you can tie one byte high, while you program the other and do things in two passes.
But you can still program the chip one half at a time. Erase turns zeros into ones, and programming operation turn a one back to zero... so you can tie one byte high, while you program the other and do things in two passes.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
That's a nice Idea.
I think I have floating around an old MegaDrive GameGenie PCB.
Maybe just putting connectors where the old 8-bit ROMs are may do the trick.
I just need to remember where did I left it if it still exists in some way.
I think I have floating around an old MegaDrive GameGenie PCB.
Maybe just putting connectors where the old 8-bit ROMs are may do the trick.
I just need to remember where did I left it if it still exists in some way.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Finally, I was able to program a 27C800 with the adapter I built.
Hopefully, it won't be that hard to program a 27C160, not sure about the 27C322.
The top part: The bottom part: Diagonal view: The game running: I think that the 27C160 would be a matter of using a jumper to select the lower or upper part of the chip, so I already added that.
The 27C322 seems to have a couple of pins repurposed and the Vpp is applied on the /CE (or /OE?) pin.
Any suggestions on how I should do that?
Thanks in advance.
Hopefully, it won't be that hard to program a 27C160, not sure about the 27C322.
The top part: The bottom part: Diagonal view: The game running: I think that the 27C160 would be a matter of using a jumper to select the lower or upper part of the chip, so I already added that.
The 27C322 seems to have a couple of pins repurposed and the Vpp is applied on the /CE (or /OE?) pin.
Any suggestions on how I should do that?
Thanks in advance.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
https://www.semiee.com/file/backup/STMI ... 27C322.pdf
here is the pdf of 27C322, P13 is the VPP
I am not sure whether you can access this site
There is no pin BYTE to switch 8/16, so it can only program by 16 bit mode
Other, you can use chip mx29gl128 256 or m29 sst39 ... you only need to use ams1117-3.3 LDO , let 5V down to 3.3v then connect the 3.3v to vcc of flash chip.
don't worry about voltage 5v on address pins or data pins, there have a lot of self make cart use this method and works well
here is the pdf of 27C322, P13 is the VPP
I am not sure whether you can access this site
There is no pin BYTE to switch 8/16, so it can only program by 16 bit mode
Other, you can use chip mx29gl128 256 or m29 sst39 ... you only need to use ams1117-3.3 LDO , let 5V down to 3.3v then connect the 3.3v to vcc of flash chip.
don't worry about voltage 5v on address pins or data pins, there have a lot of self make cart use this method and works well
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Thanks.
I can now program the 27c160, I added a jumper to select the first or last bank.
The process is a little more complex than that, as it is necessary to separate the even bytes from the odd ones and record them separately.
I think I will need to add at least 2 more jumpers to program the 27c322 chips, but first I need to buy some of them to test.
I still need to draw the schematics of this adapter, so I can share it and in the future, if I have some problems with it troubleshooting will be easier.
Maybe I can try to design a proper PCB for it, who knows...
As for 3.3v chips, I prefer not to use them, or use them with appropriate level translation circuits.
I say this because I have evidence that prolonged use of this type of memory damages the console's chipset.
I have a partially damaged SNES S-CPU, a "dead" SNES that I received as a gift from a friend, and a Megadrive with a dead VDP that a friend has and that became like this after prolonged use of this type of chip without the proper use of level translation circuits.
As soon as I get something new, I'll post it back here.
For now, I'm having some problems with multiplexing larger games using these chips.
I'll try to troubleshoot it, if I fail, I think I'm going to open another thread to try to solve these problems.
Anyway, thanks guys, you're great!!
I can now program the 27c160, I added a jumper to select the first or last bank.
The process is a little more complex than that, as it is necessary to separate the even bytes from the odd ones and record them separately.
I think I will need to add at least 2 more jumpers to program the 27c322 chips, but first I need to buy some of them to test.
I still need to draw the schematics of this adapter, so I can share it and in the future, if I have some problems with it troubleshooting will be easier.
Maybe I can try to design a proper PCB for it, who knows...
As for 3.3v chips, I prefer not to use them, or use them with appropriate level translation circuits.
I say this because I have evidence that prolonged use of this type of memory damages the console's chipset.
I have a partially damaged SNES S-CPU, a "dead" SNES that I received as a gift from a friend, and a Megadrive with a dead VDP that a friend has and that became like this after prolonged use of this type of chip without the proper use of level translation circuits.
As soon as I get something new, I'll post it back here.
For now, I'm having some problems with multiplexing larger games using these chips.
I'll try to troubleshoot it, if I fail, I think I'm going to open another thread to try to solve these problems.
Anyway, thanks guys, you're great!!
- TmEE
- Posts: 960
- Joined: Wed Feb 13, 2008 9:10 am
- Location: Norway (50 and 60Hz compatible :P)
- Contact:
Re: Help to program 16 bit EPROMs on a 8 bit programmer
It should be possible to program the 322 in two halves way too, but by leaving one side pulled high. When erased, the chip turns into all "ones" and when programming only the "zeros" are written. You can program any "one" into a "zero" but not the other way, so unless the chip does funny things, it should be possible to program it still one half at a time, making sure that the unused half data pins stay high so that the "ones" stay "ones" and thus can be reprogrammed in the next step.
And yeah, using 3.3V memories in 5V stuff without translation is going to cause damage to the host device sooner or later. There are very few chips that work with 3.3V and do not have hard ESD protection that shunts the excess voltage into power rail, and only those kinds can be used without translation and none of the chips I am aware of that you can buy work that way.
And yeah, using 3.3V memories in 5V stuff without translation is going to cause damage to the host device sooner or later. There are very few chips that work with 3.3V and do not have hard ESD protection that shunts the excess voltage into power rail, and only those kinds can be used without translation and none of the chips I am aware of that you can buy work that way.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
That's exactly what I'm doing.
Seems to be working great!
It's not easy to spot on the pictures, since I'm using 10k resistor networks.
I really need to properly draw this schematics!
Unfortunately, I couldn't find any symbol library for the 16-bit EPROMs.
Does someone know of any or I'll need to try to make one myself?
I'm trying to use Kicad or Eagle, but different schematic drawing software is welcome, as long as it works fine on Linux.
Seems to be working great!
It's not easy to spot on the pictures, since I'm using 10k resistor networks.
I really need to properly draw this schematics!
Unfortunately, I couldn't find any symbol library for the 16-bit EPROMs.
Does someone know of any or I'll need to try to make one myself?
I'm trying to use Kicad or Eagle, but different schematic drawing software is welcome, as long as it works fine on Linux.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Finally, I was able to draw the schematics.
Not that it is very complex, but It was difficult to find a library that had the 16-bit EPROMs.
So here you are: The source code of the bin2hilo program: I don't know who wrote it, but I would like to. So I can give proper credit.
If someone knows, please let me know.
Now some little doubts, mostly about terminologies:
- Should I call the jumpers Hi / Lo, just as the program or Even / Odd is more correct?
- The Lo bytes should be 1 to 7 and Hi bytes 8 to 15?
- Which would be the Lo bytes, the Even ones?
- To make it compatible with 27C322 I think I should add 2 more jumpers: one should connect the Byte / Vpp to A19, skipping the actual bank select, and the other should select A20 to level 0 or 1, acting as the new "bank jumper". The EPROM should be programmed as a 27C801. Are these assumptions correct?
Thanks in advance.
Not that it is very complex, but It was difficult to find a library that had the 16-bit EPROMs.
So here you are: The source code of the bin2hilo program: I don't know who wrote it, but I would like to. So I can give proper credit.
If someone knows, please let me know.
Now some little doubts, mostly about terminologies:
- Should I call the jumpers Hi / Lo, just as the program or Even / Odd is more correct?
- The Lo bytes should be 1 to 7 and Hi bytes 8 to 15?
- Which would be the Lo bytes, the Even ones?
- To make it compatible with 27C322 I think I should add 2 more jumpers: one should connect the Byte / Vpp to A19, skipping the actual bank select, and the other should select A20 to level 0 or 1, acting as the new "bank jumper". The EPROM should be programmed as a 27C801. Are these assumptions correct?
Thanks in advance.
Re: Help to program 16 bit EPROMs on a 8 bit programmer
Which are which depends on whether it's a big-endian system (Megadrive) or not. (Big-endian puts the "high" byte in D0-D7. Little-endian puts the "low" byte there.)
I'd probably hedge and just label the two options D0-D7 vs D8-D15.
uh, 27C160 pin 32 is Vpp/Byte, and 27C322 pin 32 is A20 and pin 13 is Vpp/OE. And the 27C801 has a Vpp/OE pin... so that sounds plausible.- To make it compatible with 27C322 I think I should add 2 more jumpers: one should connect the Byte / Vpp to A19, skipping the actual bank select, and the other should select A20 to level 0 or 1, acting as the new "bank jumper". The EPROM should be programmed as a 27C801. Are these assumptions correct?