Download EPROM Pin Swapper v1.0
Virus Total : 0 / 43
Currently support for :
27C010
27C020
27C040
27C080
Source code is also included, it is in VB6.
There are a lot of bugs in it, use it at your own risk.
Given the screenshot, what exactly is it "swapping"? All I see is a pinout of an EPROM which lets you adjust what each pin is assigned to. You can't change the functions of an EPROM pin, so why are the pins changeable?
I think I may be misunderstanding because I envision the program to be something that converts the pinouts between two types of chips. For example, mask ROM <-> 27C080, or mask ROM <-> 2mbit EEPROM. You get the idea. And for that to work, you'd really need to show two chips and a chart (either wiring diagram, or "pin 1 of mask ROM --> pin 7 of EEPROM", you get the idea.
What am I missing here?
I think it can swap address lines and data lines by reorganizing the ROM data.
Very nice! I always just thought about doing this physically with the programmer pins assuming you weren't using flash. But just rearranging the ROM makes a lot more sense.
With a few Nintendo pinouts address lines actually are swapped compared to standard eproms so doing this saves you rerouting a few pins. On SNES with 27c801s you can use that swapbin to only have to rewire something like 2 or 3 pins.
Definitely a cool idea. Seems to work perfectly under Wine as well.
How hard would be to implement also exchanging Data with Adress lines? It's a chunk of data being reorganised, so there must be an algorythm to allow this change... Hmm?
jpx72 wrote:
How hard would be to implement also exchanging Data with Adress lines? It's a chunk of data being reorganised, so there must be an algorythm to allow this change... Hmm?
Swapping data pins with addresses is impossible simply because data pins are outputs and address pins are inputs.
How does this work anyway? Awesome piece of software, didn't knew that was possible
Punch wrote:
How does this work anyway? Awesome piece of software, didn't knew that was possible
It just reorganizes the rom image file so you can swap out how the pins on the eprom (for purposes such as simplify board layout) are connected to the host system, while keeping the final result (data being read) same as if the eprom was connected in the normal way.
As it was mentioned on the thread, the only reason to do this is save time/effort on board layout.
Imagine you take an EEPROM in circuit and swap the D0 and D1 connections. The NES will get the wrong bits. Now, in the file on the PC, swap these bits, then rewrite the EEPROM. Now the NES gets the right data.
Imagine the same for the address lines. Swap A0 and A1. This causes the NES to read bytes in this order: 0, 2, 1, 3, 4, 6, 5, 7... So just reorder them like this in the file on the PC and rewrite the EEPROM, now the NES gets things correctly.
Similar for rearranging the data pins among each other, and the address pins among each other, just a reordering of bytes/bits within bytes.
Download EPROM Pin Swapper Version 1.2Changes :
Added 29F040
Bug fix for 27C080
Still it is very buggy so use it at your own risk.
Just to confirm. This would like me change the what the pins do, instead of having to re-wire correct?
wyndcrosser wrote:
Just to confirm. This would like me change the what the pins do, instead of having to re-wire correct?
It scrambles the file so whatever you program on the eprom matches the pinout you programmed on the program UI after programming the chip.
This would allow one to program a flash memory with scrambled pinout. You can't rearrange the pinout of a flash chip before programming as the programmer has to issue commands to the chip for the flashing to happen. Re-wiring would disrupt the flashing due to that.
It can't swap control lines, nor can it swap address with data. But l_oliveira is right about what it does: it scrambles the data within the file to make routing easier once the memory is soldered down. (Here, "routing" can refer to traces on a new PCB, or it can refer to rewire jobs when using flash memory in a slot for a mask ROM on a donor PCB.)