ROM-Reader for Super Nintendo / Super Famicom Game Cartridges

I am sorry, but the system will not let me upload the photos along with the text, although probably the problem is I don't know how to do it.

It's not reading your cartridges right. The roms you dumped should not work. Try a game you don't like that much and power it with 5V instead of 3.3V and see if you get a valid info screen then. Maybe the 3.3V from the Arduino is not good enough.

See that is how it should look like, it should give you at least the rom name without errors:

Hi, again,

I already thought of that, also I thought what it could be a power supply problem, so I use an external power supply, connected to the 5v from usb using wires and powering the cartridge directly with it. But it didn't work either, look at the picture. But I'll try again.

But I hadn't thought to check the roms written on the sd card, I thought that it was a correct reading, good idea, thanks, in this case I should install an emulator on my PC or I can use the Everdrive to check the roms. I will prove it.

Relative to the powering the cartridge directly with 5v Ummhh, good idea but I had not thought about that, what happens is that I love very much my cartridges and I wouldn't like to see anyone die with 5v, but I think it :slight_smile:

Thank you, until tomorrow, I'm going to bed, I'm very tired.

Hi!

According to https://www.retrode.com/plug-in-adapters/ the N64 cartridges should be 3.3V. I do not own an N64, but is it possible to remove the cover of a cartridge and stick only the PCB in the console? If so, you could measure the "original-voltage" there... Just to avoid the magic blue smoke thing you know... :wink:

I did not have a look at the current sourcecode / the N64 parts, but maybe some output via serial or using e.g. an Atmel ICE (looking at the variables) could also help to debug the steps of cartridge detection?! If you need help there, feel free to PM me.

Truely impressive, what all you guys did here - it is hardly comparable to the tiny project I published three years ago... :slight_smile:

Best regards,
Michael

joseuro:
so I use an external power supply, connected to the 5v from usb using wires and powering the cartridge directly with it.

Ok then it's not a power supply problem either. The N64 carts need a good 3.3V supply, for example I tried with a power supply that only gave me 3.2V and I got errors too. But that external supply you're using looks good enough for the job.

If the info screen isn't correct it can't read the cart at all and it won't dump right, neither rom nor save.

Maybe it really is just that the wires are too long. It is known in the N64 portable scene that long wires on the cartridge port make the N64 malfunctioning. But this will fix itself after you receive my pcb set :slight_smile:

MichlK:
Truely impressive, what all you guys did here - it is hardly comparable to the tiny project I published three years ago

Thanks, open source is a really powerful thing :smiley:

Hello to all :slight_smile:

Hi MichIK, nice to meet you, thank you very much for your offer to help with this assembly. All possible help is welcome.

Today I woke up early and I've been working on my assembly, without positive results.

Thank you Sanni, I also believe what this is a problem of very long wires. I wait for arriving pcb's.

Unfortunately for me, today I can not continue with this project, I have to meet family commitments. If it is possible for me, I retrieve the project this weekend.

Anyway, I've discovered something, which I not had noticed before, and it is: My Paper Mario and my Zelda MM cartridges have not implemented pin 21 S_Dat, something logical because the system of saved is not EEprom, these cartridges use flashRam to savedata, so my question is how would the program reads these cartridges? Please look at the pictures.

Thank you all, I have to go to meet my family commitments, when I can, I retrieve the project.

A greeting to all

Jose

The flashram uses the same pins as the maskrom(=game rom). The Nintendo Cart Reader reads the flashram by sending special commands that the flashram recognizes.

In 2013 I made a little N64 controller tester I did adapt it for the card reader shield some time ago but it seems I never posted it here.

https://github.com/sanni/cartreader/tree/master/extras/controllertest

Hello all,

I have started work on mine. I'm only interested in the SNES side of things. Also this is a test board to make sure i did them right :slight_smile: I found one via in the wrong spot. Once it works fine.. will make another with the propper SNES slot.

I have left off the 3V3 reg and cap. Still waiting on the OLED screens to arrive.

Whats the format on the SD card?? FAT16? FAT32? Size limit? 2GB??

D.

I'm using 4GB and Fat32 but 32GB cards work too.

@joseuro - The N64 reader can dump the MN63F81MPN flashram. I have a Pokemon Stadium 2 with the MN63F81 and it dumps using the current 29L1101 save code. The Autodetect does not work as the current reader code does not have the flash id information for the MN chip.

What we found is that there are two groups of flashram chips used in the N64 carts. They're grouped as OLD_FLASH and NEW_FLASH. The OLD_FLASH group is MX_PROTO_A, MX_A and MX_C (29L1100). The MX_PROTO_A and MX_A are in the code base but whether they actually exist in retail carts is unknown (they are Macronix Device ID 00 and 01). The NEW_FLASH group is MX_B_AND_D (29L1101) and MATSUSHITA (MEI) flash (MN63F81).

The cart flashram list that sanni posted earlier is not a definitive list and it is likely that the mid to late 2000 carts could contain any of the flashram chips - 29L1100 (OLD_FLASH), 29L1101 (NEW_FLASH), or MN63F81 (NEW_FLASH). The best way to check is to open up the cart and read the id printed on the chip. Alternatively, you could use the current Autodetect routine which should sort you out if you have a 29L1100 or 29L1101. If you use the Autodetect and get a "Flashram unknown" with the following bytes - 11, 11, 80, 1, 0, 32, 0, F1 then you have the MN63F81 and you should dump it using the 29L1101 mode.

I believe sanni will be updating the reader code with the MEI (MN63F81) flash id so we'll then be able to Autodetect all of the known flashram chips.

Keep in mind that if you're planning to use the save file in an emulator that you might need to saveswap (use saturnu's Saveswap from KRIKzz's forum).

Good Luck!

Hello :slight_smile:

Thank you very much for the information, skaman. This is really very interesting.

I am still waiting for the connectors that comes from China, I still have not received them.

So I can not do saves readings still. I think what as I have the electronic circuit armed and running, I want to make several dumps of my cartridges and send them to Sanni. So, investigate them.

As I can not do anything until I have the connectors, I'm using my little free time in other projects,

when I can I publish my results. I have attached a file with my installation of the 2013 Sanni controller test.

Again thank you for everything, a greeting to all :slight_smile:

Very nice :slight_smile:

With the "cart info" menu on the OLED. What info is displayed for SNES carts? Is it like Hi rom / low rom, sram size? etc. Does it read that from the cart? or do i need the snes game database file?

I wish my OLEDs screens would arrive!!! I can't wait!

Is there an option for larger text font if you use a 128 x 128 OLED screen??

D.

If you're that curious you should use the serial output, it has pretty much the same functionality.
The reader indeed extracts info from the rom header, so it gives info like hi/lorom, sram size, expansion chips etc.

Here you can buy N64 cart slots for cheap: https://www.reichelt.de/Slotstecker-Steckkartenverbinder/STECKER-50-254/3/index.html?ACTION=3&GROUPID=5218&ARTICLE=19472&OFFSET=1000&
The don't have the Nintendo own 2.5mm spacing but instead the industry standard of 2.54mm but the two outer pins on the N64 cartridge are either additional GND or unconnected so it doesn't matter if the last pin doesn't line up and the slots still work perfectly.

Direct comparison between 2.5mm slots by SuperUfo from Aliexpress and 2.54mm slots by reichelt.de, close enough.

And as a further alternative here are the slots skaman found on ebay, they also work great: http://www.ebay.com/itm/5pc-Industrial-Card-Edge-Slot-Socket-Connector-25x2P-50P-2-54mm-0-1-3A-RoHS-/140888533934

Thank you sanni for the links to buy the connectors, but I've been so many days waiting for them, I'll wait a few days more.
I think that connectors should already be next to arrive by mail that as almost a month ago I bought them on Aliexpress.
Anyway, if I make a new order, I would also have to wait and this would also be an extra expenditure of money.
I'm investing my little free time in other projects, I have to make to my family a few electronic assemblies with pic microcontrollers.
But I also had time to assemble this circuit (look at the attached pictures) surely you know it very well, it works perfectly. It is wonderful.
By the way I would like to that with this circuit could be used an oled screen instead of using the monitor series of arduino, this is possible?

N64 Controller Pak reader (1).jpg

N64 Controller Pak reader (2).jpg

As anyone who has read my posts will know. This is a really exciting project!! I'm hugely into SNES gear. I make my own games / Do english translations. I have only done 1 translation.... BUT i have started a second. I was trying to think of some way how i could say "THANK YOU" for the time and effort spent by the people who have helped this project.

Because of this project, i found about writing to Nintendo Power Flash Carts. I didn't know anyone was working on that. I then found out about "Genjuu Ryodan". Its a NP Flash cart ONLY game. Its turn based stratgey (which i love). So i have started doing a english translation for it. Its only early days. But its almost playable. Thats what i have been working on.

D.

joseuro:
By the way I would like to that with this circuit could be used an oled screen instead of using the monitor series of arduino, this is possible?

Not with the Arudino Uno since it has not enough space for my filebrowser code but with the Arduino Mega it works.

dtp30:
As anyone who has read my posts will know. This is a really exciting project!! I'm hugely into SNES gear. I make my own games / Do english translations. I have only done 1 translation.... BUT i have started a second. I was trying to think of some way how i could say "THANK YOU" for the time and effort spent by the people who have helped this project.

Because of this project, i found about writing to Nintendo Power Flash Carts. I didn't know anyone was working on that. I then found out about "Genjuu Ryodan". Its a NP Flash cart ONLY game. Its turn based stratgey (which i love). So i have started doing a english translation for it. Its only early days. But its almost playable. Thats what i have been working on.

D.

In a way, we've opened Pandora's box when we figured out how to rewrite the NP carts. Giving people the ability to rewrite the carts could result in the loss of some irreplaceable data. I've dumped close to 50 different games and found 3 previously unknown NP-exclusive revisions. These revisions were never released in retail cart form and are the last revision for each game. Extrapolating out over the full 179 NP game list, that would mean that there might be another 8 or 9 previously unknown game revisions out there.

For anyone that is planning on rewriting their NP cart, please consider backing up the original data (ROM + MAP). Even if the game is a known dump (GoodTools/NoIntro/etc), the data on each NP cart is unique. For single game carts (no menu), then the unique data is in the mapping. For multi-game carts with menu, then the unique data is in the menu and mapping. Even blank carts have unique data in the mapping.

I wanted to set up some type of repository to collect the original data but I didn't have the resources to do it. I'm now working with someone that wants to archive the complete original data and plans to make it available on the web. If anyone is willing to share their original NP dumps (Full ROM + MAP), then please PM me a link.

Good Luck with the translation!