Go Down

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


Yes but I made a few errors and need to redesign the pcb.

Ho sanni,
I found some schematics to build a sega master system to sega mega drive adapter.
Could it be used with your cart reader to dump sms cartridge?
Thank in advance
The Sega Master System has an 8bit wide data bus while the Mega Drive has 16bit. So you will have to write some extra code for the Master System. It will not just work by plugging in an adapter.


Colleagues, thanks to Infinest, I forked his GB Memory solution and adopted it for SF Memory.
So now You can easily create ROM and map file for Your SF Memory cart.

Obviously the code is a bit messy, so I will clean it up ASAP. Also bugs are expected, so I will try to fix them also.

https://github.com/moldov/SF-Memory-Binary-Maker/ if You need binary it's on "Release" tab.

Don't forget to put "Menu.sfc" 512Kb Menu file from NP cart in the same directory with program.

Thanks to:

sanni - for his masterpiece which gathered all the community solutions for scattered ROMS and platforms

skaman - SNES rom and mapping details

infinest - help with GB Memory Binary Maker source code which I forked and manage to adopt for SNES platform

alex_n00b - bitmap letters for Menu

and all community's creative work which allows to find those hidden gems and undocumented abilities in retro platforms



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.

Go Up