Backing Up Cartridge Saves?

Includes but not limited to: SNES, Genesis, Sega CD, PlayStation 1, Nintendo 64, Dreamcast, Game Gear and I guess the Virtual Boy.

Moderator: Moderators

Post Reply
Link83
Posts: 111
Joined: Sun Jan 04, 2009 7:08 pm

Backing Up Cartridge Saves?

Post by Link83 »

**I realise there is currently another thread about N64 saves, but I think my queries are different enough to warrant a new thread, plus I didnt want to hijack the other persons thread**

Hi all,
I have a few questions about N64 save types that I am hoping the knowledgeable people here at benheck could help me with :)
First could I just confirm these are all the possible N64 save types and their correct sizes?:-

Games
EEPROM 512 bytes / 4 kilobit
EEPROM 2 kilobytes / 16 kilobit
SRAM 32 kilobytes / 256 kilobit
FlashRAM 128 kilobytes / 1024 kilobit / 1 megabit

Controller Pak
SRAM 32 kilobytes / 256 kilobit (Edit - Corrected Size)

Are all those sizes correct? I did quite abit of searching on Google but a lot of people seem to mix up their bits and bytes (Kb/KB or Mb/MB) so I hope I have them right :!:

What i'm hoping to do is somehow backup all my cartridge saves to my PC so that they are safe, and so that I could use them with emulators if I wanted.

Now the GameShark 3.3 seems to be able to backup 4 kilobit EEPROM saves to the Controller Pak, but it doesnt seem to work with SRAM? (Havent tested 16 kilobit EEPROM's or FlashRAM yet) So I wondered is the GameShark only capable of backing up 4 kilobit EERPOMs, and if so is there any way to 'fix it' to backup all save types?

I was under the impression that the save types were 'irelevant' as far as the console is concerned, and all that would matter is the save file sizes, which the controller pak should have plenty of space for?

If the GameShark is the problem, is there any re-written firmware available which would allow it to copy all cartridge save types to the controller pak?

If it is possible to get the saves to the controller pak, how can I then get them to my PC? The only two options that I know of is the DexDrive and the extremely expensive N64 Adaptoid, but both apparently require a PC with Windows 98 to transfer save files and I currently only have XP, also the DexDrive needs a serial port which my PC doesnt have :(

Alternatively, would it be possible to somehow fit an SD/Compact Flash card to the cartridge ports read/write pins so that I could start the game, perform a save, and then it would save to both the card and the internal save at the same time, creating a mirror image of the carts original save? If this would work I guess I could also use this method to load the save back to the cartridge aswell by taping over the carts read pin?

Thanks in advance for any help/advice you can give me :)
Last edited by Link83 on Fri Jan 01, 2010 7:21 am, edited 1 time in total.
marshallh
Moderator
Posts: 2987
Joined: Sat Sep 10, 2005 2:17 pm
360 GamerTag: marshallh
Location: here and there
Contact:

Re: Backing Up Cartridge Saves?

Post by marshallh »

Link83 wrote:First could I just confirm these are all the possible N64 save types and their correct sizes?:-

Games
EEPROM 512 bytes / 4 kilobit
EEPROM 2 kilobytes / 16 kilobit
SRAM 32 kilobytes / 256 kilobit
FlashRAM 128 kilobytes / 1024 kilobit / 1 megabit

Controller Pak
SRAM 256 kilobytes / 2048 kilobit / 2 megabit
Correct
Link83 wrote: Now the GameShark 3.3 seems to be able to backup 4 kilobit EEPROM saves to the Controller Pak, but it doesnt seem to work with SRAM? (Havent tested 16 kilobit EEPROM's or FlashRAM yet) So I wondered is the GameShark only capable of backing up 4 kilobit EERPOMs, and if so is there any way to 'fix it' to backup all save types?
Unless you're an old hand with MIPS r4300 assembly and want to disasm/figure out the rom, I'd advise against it.
Link83 wrote: If the GameShark is the problem, is there any re-written firmware available which would allow it to copy all cartridge save types to the controller pak?
No
Link83 wrote: If it is possible to get the saves to the controller pak, how can I then get them to my PC? The only two options that I know of is the DexDrive and the extremely expensive N64 Adaptoid, but both apparently require a PC with Windows 98 to transfer save files and I currently only have XP, also the DexDrive needs a serial port which my PC doesnt have :(
A DexDrive is your best bet. You can run it under XP with a port enabler but you need a physical serial port.
Link83 wrote: Alternatively, would it be possible to somehow fit an SD/Compact Flash card to the cartridge ports read/write pins so that I could start the game, perform a save, and then it would save to both the card and the internal save at the same time, creating a mirror image of the carts original save? If this would work I guess I could also use this method to load the save back to the cartridge aswell by taping over the carts read pin?
Not without a lot of custom hardware.

Your best bet is getting a V64jr and running Evek/Ghemor (I forget which it is) which will let you backup any save over the parallel port.
Image
Link83
Posts: 111
Joined: Sun Jan 04, 2009 7:08 pm

Re: Backing Up Cartridge Saves?

Post by Link83 »

Thanks for the replies marshallh :D
marshallh wrote:
Link83 wrote:First could I just confirm these are all the possible N64 save types and their correct sizes?:-

Games
EEPROM 512 bytes / 4 kilobit
EEPROM 2 kilobytes / 16 kilobit
SRAM 32 kilobytes / 256 kilobit
FlashRAM 128 kilobytes / 1024 kilobit / 1 megabit

Controller Pak
SRAM 256 kilobytes / 2048 kilobit / 2 megabit
Correct
Thanks for the confirmation :) I was particularly unsure about the controler pak size after reading this page:-
http://svn.navi.cx/misc/trunk/wasabi/de ... servations" onclick="window.open(this.href);return false;
They seemed to know their stuff, yet they said the controller pak could only be a maximum of '32k capacity' due to the 15 address lines, yet when I opened my official controller pak the chip was labelled "KM62U256CLG-10L" which appears to be a 256KB SRAM chip ( 32KB x 8 )

Unfortunately having looked up the cost of N64 backup units on eBay I think I will have to rule out that option as they are well out of my price range :( but thanks for the suggestion.

Is there no possible easy-ish way I could add a memory card port to an N64 to act as a 'mirror save' device? I just thought that given the N64 only has one 'write ' pin on the cartridge port that it would be relatively easy?

Alternatively, although it wouldnt allow me to put my saves on the PC could I use another game with the same save type to copy the original cartridge save, by just connecting the 'donor' cartridges power, ground, cold reset and write pins, and disconnecting the original cartridges write pin? So the N64 could read from the original cart but only save to the donor carts save, if that makes sense.
marshallh wrote: A DexDrive is your best bet. You can run it under XP with a port enabler but you need a physical serial port.
Thanks, didnt know you could use XP. So does a port enabler allow you to directly access the N64 controller pak, like how you would a normal media memory card? I would prefer to have the original files you see over one thats been 'altered' by the dexdrive software.
marshallh wrote: Not without a lot of custom hardware.
How much custom hardware are we talking?

One possibility I was thinking off would be to build a small PCB with each save type and use a switch to select between them, perhaps all with some sort of USB interface chip to connect them to a PC. Maybe even just socket the save chips so that they would could be read in a USB programmer? (Guess this wouldnt be possible with SRAM though?)

Or would adding a memory card port to the N64 be the more feasible option? Im hoping that I can avoid needing any software by just loading the game and performing a normal save, but in the process creating a mirror image.

Thanks in advance for anymore advice you can give me :)

------------------------------------------------------------------------------

I hope no-one minds if I add a few more queries.

I noticed that when using an emulator not all games use up the entire save file space and wondered if this is true for actual hardware aswell? I had assumed they would all use the entire save space and just fill the unused areas with F's.

For instance, a Majoras Mask save uses 96KB yet im guessing an original MM cart still uses a 128KB FlashRAM chip, leaving 32KB unused? (Unless there was a 96KB FlashRAM chip save type aswell?) Also noticed that many of the 4 kilobit EEPROM games only use odd amounts of the save size aswell, unless its just a quirk of the emulator? (Project 64)

Also, another oddity I noticed is that Mario Kart 64 uses 121 of the 123 save blocks on a controller pak, so I assumed it would use around 250KB for saving ghosts on an emulator. However, when played on an emulator it only uses 128KB for saving controller pak ghost data :?
marshallh
Moderator
Posts: 2987
Joined: Sat Sep 10, 2005 2:17 pm
360 GamerTag: marshallh
Location: here and there
Contact:

Re: Backing Up Cartridge Saves?

Post by marshallh »

Link83 wrote:Thanks for the confirmation :) I was particularly unsure about the controler pak size after reading this page:-
http://svn.navi.cx/misc/trunk/wasabi/de ... servations" onclick="window.open(this.href);return false;
They seemed to know their stuff, yet they said the controller pak could only be a maximum of '32k capacity' due to the 15 address lines, yet when I opened my official controller pak the chip was labelled "KM62U256CLG-10L" which appears to be a 256KB SRAM chip ( 32KB x 8 )
Actually the datasheet is saying it's 32kilobyte arranged in 8 bit units (some are 16 bits wide). Project64 saves are 256kbytes but that is wrong, there are 15 address lines on the SRAM and there would need to be 18 to address 256kbytes.

Link83 wrote: Is there no possible easy-ish way I could add a memory card port to an N64 to act as a 'mirror save' device? I just thought that given the N64 only has one 'write ' pin on the cartridge port that it would be relatively easy?

Alternatively, although it wouldnt allow me to put my saves on the PC could I use another game with the same save type to copy the original cartridge save, by just connecting the 'donor' cartridges power, ground, cold reset and write pins, and disconnecting the original cartridges write pin? So the N64 could read from the original cart but only save to the donor carts save, if that makes sense.
There are three different save schemes and the wiring is seperate.
First are the 4/16k eeproms. These are i2c eeproms with custom IDs either by Rohm or Macronix - they interface directly to the PIF through SI. They only use SCLK and SDAT.
Now SRAM is different - it is accessed like cart ROM over PI. /RD and /WR are used with it.
Finally, FlashRAM (kind of a misnomer) is accessed the same way but using standard NOR flash ROM block read/write instructions.
Link83 wrote:Thanks, didnt know you could use XP. So does a port enabler allow you to directly access the N64 controller pak, like how you would a normal media memory card? I would prefer to have the original files you see over one thats been 'altered' by the dexdrive software.
I've never had the DexDrive open but it probably uses regular rs232 comms if it works over serial. You just need to find the baud rate and see what data is sent/received. You can do this with a serial port logger program (free)

Either you need to buy a V64jr (easiest) or other backup unit, or make your own hardware to interface with the carts. A PIC with lots of data lines would work (USB support is nice but it's a pain in the ass)
Image
Link83
Posts: 111
Joined: Sun Jan 04, 2009 7:08 pm

Re: Backing Up Cartridge Saves?

Post by Link83 »

marshallh wrote: Actually the datasheet is saying it's 32kilobyte arranged in 8 bit units (some are 16 bits wide). Project64 saves are 256kbytes but that is wrong, there are 15 address lines on the SRAM and there would need to be 18 to address 256kbytes.
Oh, so the size I stated for the Controller Pak was wrong, and should be 32 kilobyte / 256 kilobit? I guess I misundertood the datasheet when I looked it up :(

If it is actually 32 KB then theres also a lot of incorrect info going around, even Wikipedia states that the N64 Controller Paks have 256 KB capacity (Note the capital 'B' for Byte):-
http://en.wikipedia.org/wiki/Nintendo_6 ... roller_Pak" onclick="window.open(this.href);return false;
and:-
http://en.wikipedia.org/wiki/Memory_car ... e_consoles" onclick="window.open(this.href);return false;

Heres a pic inside my Official Controller Pak showing the Samsung "KM62U256CLG-10L" SRAM chip :-
Image
Datasheet (direct link to pdf):-
http://www.datasheetarchive.com/pdf-dat ... 552149.pdf" onclick="window.open(this.href);return false;

So cartridge games that use SRAM for saving are the exact equivelant of having a full Controller Paks capacity built in?

If the Controller Pak definitely is 32 KB SRAM I guess this would also explain why the GameShark could never copy the cartridges 32 KB SRAM save file (Fails part way through trying) As im assuming a small amount of the Controller Paks memory must be used for formatting, in which case even a completely empty Controller Pak would not have enough space to store either SRAM or FlashRAM saves?

I am curious what 1 page of the 123 controler pak 'pages' would equal in bits/bytes? and how much space is actually used for formatting?

I read on Wikipedia that some "Larger off-brand paks range from around 1–4 MB in size, many of which also used corruption-prone data compression schemes" to increase their size, and wondered if one of these memory paks might make it possible to back up SRAM saves? If so what brands/models of card use compression schemes? (I realise they could corrupt, buts its worth a try)
marshallh wrote: There are three different save schemes and the wiring is seperate.
First are the 4/16k eeproms. These are i2c eeproms with custom IDs either by Rohm or Macronix - they interface directly to the PIF through SI. They only use SCLK and SDAT.
Now SRAM is different - it is accessed like cart ROM over PI. /RD and /WR are used with it.
Finally, FlashRAM (kind of a misnomer) is accessed the same way but using standard NOR flash ROM block read/write instructions.
A misnomer :o so what should we really be calling it if not FlashRAM? Just standard Flash?
marshallh wrote: I've never had the DexDrive open but it probably uses regular rs232 comms if it works over serial. You just need to find the baud rate and see what data is sent/received. You can do this with a serial port logger program (free)
I just had a thought, since the DexDrive is able to transfer saves from the Controller Pak couldnt I wire up a DexDrive to an N64 controllers port pin-for-pin, then use the GameShark to transfer an SRAM save to the 'Controller Pak' (My PC), in effect transfering an N64 cart save to to my PC over a serial connection? Just an idea...

Im just trying to think of any similar/cheaper options for what im trying to do. The V64jr is well out of my price range im afraid, the last one I saw on eBay went for £160+ ($260) Or its still available as the E64 (Same as V64Jr) for $299.95!:-
http://www.tototek.com/store/index.php? ... ucts_id=16" onclick="window.open(this.href);return false;
Post Reply