Go Down

Topic: ROM-Reader for Super Nintendo / Super Famicom Game Cartridges (Read 400597 times) previous topic - next topic


I'm trying to update the card reader using the directions in the wiki and when I try to "Verify/Compile" the sketch I get an error "exit status 1 'DDRG' was not declared in this scope" (this looks like it is in the SNES portion under Setup).Is this normal (and I should go ahead and try to transfer to the reader)?


In the Arduino IDE under Tools change "Board:Arduino/Genuino Uno" to "Board:Arduino/Genuino Mega or Mega 2560"


Thanks, that was the issue.

One additional question: I am trying to figure out if your MBC3 custom cart flashing code will work with the BennVenn custom MBC3 cart that I got. I know from the wiki that yours works with jrodrigo's carts, do those carts use the audioin pin for Write Enable?


The Jrodrigo carts use the write pin (/WR GameBoy PIN 3) for write enable.

You could easily rewire your BennVenn cart to use /WR too but the flash chip on the BennVenn cart is not supported by my flashing function as the BennVenn DIY MBC3 RTC Flash Cart seems to be using a Spansion S29AL016D 3V flashchip.
Furthermore, according to here you probably do not want to use a 3V Spansion S29AL016D in a 5V system like the Gameboy.


Thanks Sanni. At this point the interest is mostly academic, I'll probably ultimately end up getting the Jrodrigo one eventually. Re: the BennVenn cart my understanding is that while the chip is technically 3v (mine is 29w640) it can operate at 5v and so having 5v go into it won't actually lead to extra current that would hurt the Gameboy (at least based on discussions with a physics phd friend). Still, I may experiment if I can modify your sketch to switch the pin number in software (which seems easier then re-wiring the cart) for WE to audioin from WR (unless there is a reason that would not work).

Also curious as to your thoughts on this: https://lab.whitequark.org/notes/2018-09-17/game-boy-advance-cartridge-smc805-2/ The poster makes it seem like a big accomplishment, but I thought writing to bootleg flash carts was a pretty well understood thing.


According to the datasheet of the 29W640 the flash commands are pretty much the same as with the 29F033, so if you re-solder the WE wire or change the WE pin in the code and change the flash ID in the code from "04D4" to "22ED" or "22FD", depending on if you have a 29W640FT or 29W640FB, it might just program without any major changes.

In regards to the link: Intel is really really bad at labeling their flashroms, so figuring out how to write an Intel flashrom is actually quite the challenge. This is a nice hardware-based approach using the flash pinout to find a matching datasheet. For the 2 or so Intel chips I support in my current code I have just thrown flash commands at the chip until something worked. Once you know how to address the flashrom the rest is pretty straightforward.


Hi Sanni, i got 15 snes repros that uses the 29LV320, so there's a way that i can reflash these carts?
Without taking the memories out of the PCB

I've tried to Solder the WE on pin 18 and the OE on pin 57, but the shield doesn't detect

By the way, great job, congratulations :)


Can you make a picture of the pcb? Right now the only 29LV320 repro that is supported looks like this:

The solder bridge pulling /WE high needs to be removed and then a wire to connect /WE to SNES /WR needs to be soldered for flashing.


Hi Sanni

I figured out what is happening, reading the datasheet and chatting to a friend, i saw that i forget to jump the CE (Black wire on the pictures)

Those memories are pretty common too in repros too

Here some pics, and let me share what i did

I wire the WR (Pin 1, Green wire) to connector 18
CE (Pin 12, Black Wire) to Connector 23
OE (Pin 14, White Wire) to Connector 57

Thanks for the help


I have a funny PAL SSB64 repro with a chip that i can't identify:

Any way I can identify it?


I have a funny PAL SSB64 repro with a chip that i can't identify:

Any way I can identify it?
Looks like a 16MB Macronix MX29GL128E or Fujitsu MSP55LV128, commonly used in GBA repros.
You can find out more by sticking it into the Cart Reader to see what the ID of the flash is.


Oct 22, 2018, 04:29 pm Last Edit: Oct 22, 2018, 06:09 pm by tamanegi_taro
Hi sanni and skaman,

Please try my new code to read and write Japanese Super Famicom(SNES) Satellaview 8M Memory Pack.


Just overwrite V2.1 ino flies with attached files.
Only cart supported to write Satellaview 8M Memory pack so far is BS-X -Sorewa Namaewo Nusumareta Machino Monogatari- so you need to insert Satellaview 8M memory pack into BS-X cart to write 8M flash in memory pack. I might add compatibility with some other carts in future.

You can find Satellaview menu under Cartridge Reader - Super Nintendo.

Good Luck,


Thanks alot, I added the new code to the github  8)

Go Up