ROM-Reader for Super Nintendo / Super Famicom Game Cartridges

If you press compile again. It fails.

Be sure to use Arduino 1.6.7 as 1.6.8 is broken.

Where exactly do you want "Exit"? The V9 test version has a "Reset" option to reset the cart reader so it will go back to the very first menu again.

You will have to backup both the flash("Read All" in V8, "Read flash" in V9) and the mapping(Read Mapping).

sanni:
Be sure to use Arduino 1.6.7 as 1.6.8 is broken.

Where exactly do you want "Exit"? The V9 test version has a "Reset" option to reset the cart reader so it will go back to the very first menu again.

You will have to backup both the flash("Read All" in V8, "Read flash" in V9) and the mapping(Read Mapping).

Have EXIT at the bottom of each of the main menus. Like when you go into "NP Cart" in the menu that comes up under "write mapping" have EXIT there. Is that were RESET is on V9?

I downloaded the latest version of Arduino. So thats what the compile issues is. Now i know why.

D.

Some Feedback...

Starting to dump NP Flash carts. Getting a few "switch to hirom : failed".

It would be really helpfull to have another button for OK/ENTER. Is there enough I/O lines to add one?

Thanks,

D.

Are you using the V9_test_2? You shouldn't use V8_fast with NP carts. Either V8_slow or V9_test_2. All three versions have different timing for switching the NP cart to hirom, V9_test_2 should be best.

The single button interface should work pretty good. If not then it's most likely the button you're using that is either broken or of bad quality or not long enough, I'm now using 6x6x6mm ones.
To press enter you just hold the button down as long as you like, you don't have to let go, just hold it down until something happens. But you can also tweak the behaviour of the button in the code if you want to adjust the timings.

But there is plenty I/O left to add another button if you wanted to. At one point I had a SNES controller and TV-Output added just for fun:

I was using V8_SLOW. I have now upgraded to V9_2 TEST.

The button on my board is brand new.

D.

V9 update:
I split the code into different files for better readability

Furthermore there is now a variable npDelay that can change the timing of the switch to hirom sequence. In V8 this variable was 1, in V9 Test it was 2 and now I have increased it to 4, slowing down the command even further in hope of a better successrate.

I also added reading/writing the controller pak through a N64 controller. The controller is connected to the S_DAT pin on the N64 adapter pcb.

It also includes a small controller test.

My Animal Crossing cart came, so far I can read and delete the MN63 flashram chip but can't write to it yet.

Hello to all :slight_smile:

Success, I have used the savedata file of the ZeldaMM, obtained with the snes cart reader shield in the emulator of the N64 (PJ64) and it works perfectly.

Before opening it with the PJ64, I have done swap to the file, with the saveswap program of saturnus and then I've renamed it. Now it works perfectly.

Thank you skaman and sanni for detailed information. Now I will concentrate on my snes carts.

Thanks to all :slight_smile:

Just seen this, looks amazing :slight_smile:

http://64drive.retroactive.be/ultrasave.php

A little case like that for our Arduino cartreader would be cool.

Hi,

Looks very interesting and very nice UltraSave for the 64Drive :slight_smile:

Today I have tried to read the savedata of a cart with the MN63 chip, in the v9 test4 version. In the autodetect mode.

I don't know if the program detects automatically the chip MN63 because, simply appears in the oled display "Reading Flashram", but in the oled screen does not appear what chip is it.

But I think: it detects perfectly because then I have tried the readings obtained from the cart, the Rom and the Savedata and both work properly in the ED64.

By the way sanni, The V9 update version is the V9 final version?

Updated to V9C

  • fixed writing to MN63 flashram.
  • fixed timing error with N64 eeprom writes resulting in the first 8 bytes not being written correctly sometimes

A couple of things i have noticed.

"Daikaijuu Monogatari 2" isn't detected correctly. It doesn't say it has the RTC chip. It also has the rom size as 64MBit which is wrong.

"Starfox" is dected with 0 sram. It has 256k.

Are all "special chips" detected? (Except for SA1?)

D.

My Nintendo Cart Reader V9C sketch can't do any special chips.

In other news, today the N64 controller extensions came, thanks to skaman for the idea :slight_smile:

Right now I'm really happy with how my V9C code performs, most of the stuff works quite reliably.

Hi :slight_smile:

Several days ago, I've been making various reading tests of my carts with the sketch of sanni: V9C version, to check its operation. I've dumped both saves and roms of these carts:

-Supermario 64 - 4k eeprom
-Yoshi story - 16k eeprom
-Zelda OOT - sram
-Pokemon Snap - flashRam 29l1100
-Zelda MM - flashRam Mn63F81
-Paper Mario - flashram 29L1100
-Fifa 98 - controller pak save
-Fifa 99 - controller pak save
-NBA Pro 98 - controller pak save
-Xena Warrior P.- controller pak save
-World Driver C.- controller pak save
-Turok2 Seeds of- controller pak save

I don't have any cart with the 29l1101 chip, so I have not been able to test this chip, but I've bought a Jet Force Gemini Pal cart and I am waiting the arrival by mail.

The files obtained, I have tried in my ED64, all files works perfectly, both the Roms and the Saves works well on the ED64.

But I have found these problems:

-Paper Mario Rom file does not work on PJ64 emulator, but it works well on ED64. But the save works in the ED64 and in the PJ64. I have observed what the retrieved file Rom from "Cart Reader" weighs 40MB and a Rom of the same cart, downloaded from internet, weighs 65 MB, this has made me hesitate, however the rom file that I've got of the "Cart Reader" works well on ED64.

-Save file of the Pokémon Snap cart, does not work on my PJ64 emulator, but it works perfectly in my ED64.

-Rom file of the Fifa 99 works bad on the emulator PJ64 (pixelization and strange characters) this may be due to a bad dump made by me.

-The Rom file of the cart: World Driver Championship, does not work on the emulator PJ64, Another bad dump made by me?

I have come to this conclusion: Snes Cart Reader V9C version works perfectly, with the exception of the Paper Mario Rom which size is not the same, all files work perfectly on ED64, both the save files and the Roms files. I have appreciated very much the reset option and the autodetect of the saves chips. This is great :slight_smile:

I believe what the problems of reading of files that I have had with PJ64 emulator, are the product of a bad configuration of the emulator or some incompatibility with my operating system. Because absolutely all the obtained files work well on ED64. Including Paper Mario with 40MB size.

But, I have found a problem. Of all my cartridges with the save on the controller pak, the "Cart Reader" only recognizes the size of the rom of one of them: the Turok 2 cartridge, all other cartridges should be put the size of the rom manually with the push button. but, however the program recognizes all the names of all the carts introduced in it.

My conclusion: I really like how the program works, I think that is almost 100 percent, if we skipped the size of roms that need to enter them manually, everything else is perfect. At least in terms of N64 carts :slight_smile:

Regards :slight_smile:

I'm running 9_2 beta. All i need is SNES carts stuff aswell as NP Flash Carts. What and where is the latest version?

I have some issues with checksums in the SNES menu.

GAME info screen dump rom
checksum checksum
Lady Stalker D58 D508 JAPAN
Simcity JR E73 0E73 JAPAN
SIM CITY 26C 260C PAL

Thanks,

D.

Thanks alot joseuro :slight_smile:

Update to V9E

  • Improved N64 game database, this should fix the size recognition of Paper Mario and the other games. Be sure to both upload the new sketch and copy the new n64.txt to the SD card overwriting the old.
  • Fixed display of SNES checksum
  • Fixed display of Flashrom ID
  • added more led colors

World Rally Championship and Fifa99 might be bad dumps, it could be that I need to add more delays into the code, maybe some games have slower maskroms.

@dtp30
My newest code is the V9D in this post but concerning Snes retail games it can only dump standard hi- and lorom games, so no exrom and no special chips. That's because I don't have any special chips so I can't test them.

You can find a describtion of skamans enhanced code in this post but it has a different pinout than the pcb I made because it's based on the old hardware version of the cart reader.
I have made the necessary changes to this code to run on my pcb and uploaded it here, be sure to adjust the output option to either serial or oled.
But you can also ask skaman if he has an updated version for you.

None of the games are Special chip. Just normal HI rom / Low rom games. If you want you can download the games rom. I will check it with the new code and see what happnes.

D.

PS I check SimCity on my PC. Its a low rom, 4mbit,256k sram check sum from SNES DAT file is 260C. So there is somthing wrong somewhere.

Hello,

It's really good what you do !
It would be possible to add the BS-X support for Super Famicom ?

@kogami, that would be an interesting addition. The BS-X memory packs generally use a Sharp flash chip with similar instructions to the SF Memory carts. I have a couple of the BS-X carts that I could test. Maybe I could look into it if I ever find some free time. The other cart type that still needs support is the Sufami Turbo carts. I have a bunch of the Sufami Turbo carts but I never got around to examining them.

@sanni, Thanks alot joseuro :slight_smile:

Don't worry about it sanni, you're welcome :slight_smile:

I will continue doing tests this week with the new version of the Sketch, to the extent that my job allows me to do it.

As soon as I have results, I will post it.

Thank you, regards to all :wink:

I dumped the BS-X BIOS using the normal dumping routines. Now to figure out the interface to the flash chip in the BS memory pack.

I also managed to dump the Sufami Turbo BIOS and carts. In order to dump the BIOS and carts, the ROM size needs to be forced otherwise it will be an empty file. The Sufami Turbo adapter is a bit finicky sometimes booting up. The dumped file will always report a bad checksum because the Sufami Turbo BIOS has checksum "0000" in the header.