Go Down

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

hernan43

Sanni,

On this page:

https://github.com/sanni/cartreader/wiki/Programming-a-29F032-flashrom

Is the flash adapter using a 40 pin universal socket? I don't think I saw it on the parts list, so I _tried_ counting the pins in the pic. Just curious to know which part you used for that. Thanks!

--Ray

sanni

It's this one: https://www.ebay.com/itm/351492841197
The last two pin rows have to be bent away before soldering because the flash adapter pcb only has 36 pins.


grizzlyjere

Hi All, I was going to build one of these but thought I'd see if anyone already has parts to sell a completed one.  Anyone selling kits or pre-built ones?  Thanks!

theodor613

Hi All, I was going to build one of these but thought I'd see if anyone already has parts to sell a completed one.  Anyone selling kits or pre-built ones?  Thanks!
If Sanni doesn't have any extras left, I have one available. It isn't the all in one but it is the most current one available that's on his GitHub page. PM me for details if Sanni doesn't have any extras.

Cyber_Akuma

Being someone who has had little experience with Ardunios before, I am a little unsure how to flash the newer firmware on the AIO units, the instructions don't completely match up with the new AIO design:

https://github.com/sanni/cartreader/wiki/How-to-flash-the-Arduino-Code-to-your-Cart-Reader

In the instructions, the units seem to (or at least those instructions make me assume) have a separate micro-USB and USB-B port, as well as a separate 5v/3v switch and on/off switch.

The AIO units just have a single Micro-USB port, and a 5v/off/3v switch instead of the on/off switch being separate from the 5v/3v switch.

I assumed that the Micro-USB port now fills both roles, but I was not sure what to do with the voltage/off switch. When set to Off, my PC does not recognize that anything has been plugged in at all, and on 5V the unit itself is running when plugged in, and I am not sure if it would be safe to flash it while it is running normally like that.

sanni

Yes the single USB Port can now be used for everything and the voltage switch should be switched to 5V. The Arduino will be on but that is ok.


Einhandr

So I found this thread through a google search looking for a device that would allow me to backup game saves and also re-write SF memory/NP carts for super Famicom. This looks so impressive!  I'll admit, I know nothing about arduino or hobby electronic component kits and the like but I made an account just to say how impressive this kit is. Is there anyone that's making these for others? I'd pay a decent sum for someone to build one out for me as I'm pretty sure I don't process the skills to make one on my own.

Edit:  Looks like I'm getting some assistance in a few weeks, thanks everyone!

hanson933

Hey Sanni,
I was going to take a crack at making a 64 only cart reader for flashing repro carts etc.
I can't see any gerber files or anything for getting just the 64 cart reader PCB printed.
Do you have them anywhere? Or am I just blind?

theodor613


werewolfslayr925

#431
Mar 03, 2018, 07:42 am Last Edit: Mar 03, 2018, 07:49 am by werewolfslayr925
Newbie here. I'm very pleased with the idea for this device. Special thanks to everyone who's developed code and such for dumping special SNES/SFC carts.

So far I (and a friend) have built the ROM dumper. However, I have run into several problems.

1. At first I could not dump SNES games. I tried common stuff like Pop'n'Twinbee and MegaMan X, but neither of them dumped at first. I haven't gotten Twinbee to work, but I did make what the reader identifies as a clean dump of MegaMan X. This was only done after heavy cleaning of the cartridge. No surprise about the cleaning (the Kazzo NES dumper has similar issues), but I wasn't sure what was wrong with it up to that point. Is there a(n easy) way to troubleshoot this to make sure that it isn't just my cartridges being dirty?

2. I can't seem to get it to dump N64 cartridges. I've tried Mischief Makers and Majora's Mask, but neither of them reads properly and it just gives me jumbled/weird characters for the title and ID of the game. These are a bit harder to test as I'm not as familiar with N64 emulators as I am with those of older consoles. Am I missing something or are the carts just that dirty?

3. I consistently have trouble dumping Game Boy carts. I have tried three different cartridges (The Final Fantasy Legend, The Final Fantasy Legend II, and Super Mario Land 2), each cleaned at least five times. I consistently get the same results though. For example, FFL1 's cart info is as follows:

Code: [Select]

NAME: Q
ROM type: ROM+RAM
ROM Size: Not found
Banks: 2
Sram Size: Not found
Checksum:DB5D


And when I try to dump the game it gives me an erroneous checksum of D707. It's done that for the last umpteen times. I've dumped enough carts to know that I'm doing something wrong and that it isn't the cartridge. I have very low-level soldering skills, so I'm thinking that maybe it's the soldering job I did on the cartridge slot (see attached)? However, all the pins are connected and solitary. Is there a way to troubleshoot this as well?

4. How do I get the "Nintendo Power" option as seen in this video to which sanni linked in the wiki? Does anyone have any advice for dumping a cart like this?

Thanks in advance!

tamanegi_taro

#432
Mar 03, 2018, 07:56 am Last Edit: Mar 03, 2018, 08:11 am by tamanegi_taro
I've had no problem with dumping N64, SNES, GB games so far with latest cart dumper on github.

Before you do anything, clean the carts. Did game boot successfully on real consoles? If not, keep cleaning. I had one of those old Nintendo game which I had to use fine sand paper to remove rust on contact to get it recognized.

Than, use your tester to make sure that no adjacent pins are connected. If important pins are connected, you can't dump games.

sanni's cart reader support dumping NP carts too so you should have no problem dumping those carts once you get the problem fixed.(You might need clockgen module and snescic).

sanni

The parts of the code that work 100% consistently every time, where I literally never had an error ever, are:
- writing 29F033 flashroms with the 8bit flash adapter for testing the SNES slot
- writing N64 Chinese repros with 2x S29GL256N flashroms for testing the N64 slot
- writing 29F033 custom diy MBC5 flash carts (Reiner Ziegler type) for testing the Gameboy slot
- reading the N64 controller's buttons and stick values for testing the N64 controller plug

These are also the very first things I test when building a cart reader.

Known problems:
- most N64 slots sold on Aliexpress actually have a 2.54mm spacing instead of 2.5mm. So you need to make sure that you insert the N64 cartridge perfectly centered or it will not make good contact.
- there are two sd modules linked in the parts list, one for standard sized and one for micro sd cards. The micro sd cards read/write a lot slower for some reason. And the full-size sd module is missing a voltage level converter and thus only high quality full-size sd cards seem to work without problems, others will encounter read/write errors. I have designed a full-size sd module with voltage level converter and will upload it once I have tested it.
- sometimes the pcb manufacturer gets a little sloppy and the solder mask is not aligned perfectly and it is possible that the GND plane is exposed and makes contact through solder with a function pin, so you always need to check each and every pin for a short to GND
- the Arduino comes with a 2.7V brown out detection by default, with some Arduinos it is necessary to lower it to 1.8V by changing the fuses for correctly dumping N64 carts

Parts of the code that experience some troubles currently:
- dumping N64 carts sometimes does not work correctly ever since I optimized the code towards writing N64 repros. I'll need to have a look at that again sometime.
- dumping GBA carts can be unreliable as sometimes a byte or two will get dumped incorrectly, I think it was mostly with eeprom save carts if I remember correctly. Flashing repro carts once again works perfectly though.

The whole code was written without having a logic analyzer which explains why the timings can be a little bit wonky.

The Nintendo Power options now can be found under the SNES and Gameboy menus respectively.

Now in your specific case it sounds more like you have made a soldering mistake somewhere since basically nothing works for you. Get a multimeter and check each and every connection against the schematics: https://github.com/sanni/cartreader/blob/master/pcb/cartreader_schematics.png

werewolfslayr925

#434
Mar 03, 2018, 04:49 pm Last Edit: Mar 03, 2018, 05:53 pm by werewolfslayr925 Reason: Two forgotten questions.
I've had no problem with dumping N64, SNES, GB games so far with latest cart dumper on github.
This is what's been done on my end as well.

Quote
Before you do anything, clean the carts. Did game boot successfully on real consoles? If not, keep cleaning. I had one of those old Nintendo game which I had to use fine sand paper to remove rust on contact to get it recognized.
I have managed to boot up the games I want to dump on a GBA SP, yes. They work fine on the GBA SP hardware.

Quote
Than, use your tester to make sure that no adjacent pins are connected. If important pins are connected, you can't dump games.
Now in your specific case it sounds more like you have made a soldering mistake somewhere since basically nothing works for you. Get a multimeter and check each and every connection against the schematics: https://github.com/sanni/cartreader/blob/master/pcb/cartreader_schematics.png

sometimes the pcb manufacturer gets a little sloppy and the solder mask is not aligned perfectly and it is possible that the GND plane is exposed and makes contact through solder with a function pin, so you always need to check each and every pin for a short to GND
This looks more complicated to me than it probably is, but how am I supposed to test the pins on the GB cart adapter? I don't see the GB cart adapter incuded in the the schematic. I'm brand new to electrical engineering, so, if you can, please "explain it to me like I'm five". Where do I put the points of the tester? Do I need to test each and every pin? What am I looking for exactly when I put the points of the tester wherever I'm to put them?

sanni's cart reader support dumping NP carts too so you should have no problem dumping those carts once you get the problem fixed.(You might need clockgen module and snescic).
I have the clock generator plugged in. I don't see the option to do the NP cartridges on the OLED, though. In the video posted by sanni, there's an option for "Nintendo Power" on the OLED. I don't get that on my OLED screen. Am I missing something in the software flashed to the Arduino or does the Nintendo Power option have a different name?

most N64 slots sold on Aliexpress actually have a 2.54mm spacing instead of 2.5mm. So you need to make sure that you insert the N64 cartridge perfectly centered or it will not make good contact.
All of my cartridge slots are taken from old consoles I have had lying around. A friend of mine and I desoldered when we needed to (SNES slot) and he soldered on the SNES and N64 slots. I soldered the GBA SP slot (again, see picture). For the record, his soldering skills (and tools) are much more efficient than mine, so if there's anything that wasn't soldered correctly, it was the GBA SP slot.

there are two sd modules linked in the parts list, one for standard sized and one for micro sd cards. The micro sd cards read/write a lot slower for some reason. And the full-size sd module is missing a voltage level converter and thus only high quality full-size sd cards seem to work without problems, others will encounter read/write errors. I have designed a full-size sd module with voltage level converter and will upload it once I have tested it.
Again, I've managed to get a clean dump of MegaMan X, so I don't think it's the SD card or anything associated directly with it.

dumping N64 carts sometimes does not work correctly ever since I optimized the code towards writing N64 repros. I'll need to have a look at that again sometime.
Is there and older version of the code that is better for dumping N64 carts? I'm really not interested in writing anything to cartridges. I'm just interested in preserving my personal game collection and or putting them on my PSP to play wherever.

dumping GBA carts can be unreliable as sometimes a byte or two will get dumped incorrectly, I think it was mostly with eeprom save carts if I remember correctly. Flashing repro carts once again works perfectly though.
Not a problem. I use a DS lite and an R4 for dumping GBA games :P

Edit: Oh! A couple of other things.

First, just to be sure, the hex code that needs to be put on the PIC12F629 is this code here, correct? (I should hope so, since there doesn't seem to be any other pure hex code on that page).

Second, what are the requirements and/or procedures as of right now for dumping the following?

- MegaMan X2
- Tengai Makyou ZERO (Far East of Eden ZERO) (SPC7110)
- Star Ocean

Go Up