Author Topic: How to backup ROMs from N64 cartridges  (Read 60673 times)

Offline forestdruid45

  • bit
  • Posts: 3
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #15 on: March 03, 2015, 12:06:34 AM »
I have gotten success, was able to rom dump Super Mario 64 and Mario Kart 64 (jp) with no hang ups. The pc I ended with is a Dell dimension 2400, pentium 4, 512mb ram, 80gb hdd, Windows 98se, integrated graphics and LPT port. Gameshark version 3.2 works great, about 20 minutes per game the two games I tried. Anyone else looking to rom dump there n64 collection should get an old windows 98 system as Paul has suggested. Until he makes advancement in the other programs it was the best solution for me,  thanks again for the information!  ;D

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3444
  • Developer
    • View Profile
    • PaulsCode.Com
Re: How to backup ROMs from N64 cartridges
« Reply #16 on: April 21, 2015, 06:57:35 AM »
For reference, if Win98 doesn't install easily, you can use Lubuntu.  The Windows utilities mentioned above work with Wine (but only if the computer has a built-in LPT port).
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline Animedude5555

  • bit
  • Posts: 1
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #17 on: July 18, 2015, 05:38:48 PM »
I've got a modern PC that that has absolutely no parallel port at all. Have you figured out yet how to get a USB to LPT converter working yet? Maybe there's some hacked driver you can use for such converters, in place of the manufacturer's drivers, that causes them to much more thoroughly emulate a true parallel port?

I also noticed that you mentioned the problem with newer Game Sharks is that they have missing the serial to parallel converter. If at any point in the cartridge there is a serial signal rather than parallel, then maybe I could cut an RS-232 serial cable in half, solder the wires on the cut end to the board of the Game Shark, and plug the other end into my USB to Serial converter, and then use it on my PC that way (after reverse engineering the protocol, and writing my own custom software to communicate with the Game Shark.

There is one more problem. Game sharks are EXTREMELY prone to failure. I have had 2 Game Shark Pros in my life. They both had a 100% failure, an utterly complete failure. Not even their boot screen would load after failure. The screen was completely black, as if the firmware/bios in it had been completely wiped out. The first one failed after about 2 days. The second one failed after about 1 month. These things were so crappy, that I didn't waste my time buying a third one. I figured that if the company that makes them puts out such horrible quality products, then it's not likely that they will change their manufacturing process to make it any better. They just do stuff the quick cheap way, and I'm not going to buy anything else from them. At least that's what I thought, until I learned just now that they can be used for something far more impressive than cheating. They can be used for dumping games. If you need it for cheating, you need it every time you play the game, but if you use it for ROM dumping, then you only need it working for a short time, so that you can dump your games. If it spontaneously self destructs after this, it doesn't matter, because it was only needed to work for a limited time. However, if anybody has any idea what causes these failures, and knows a fix (like soldering on a different value of resistor somewhere to prevent damage, because the manufacturers commonly used the wrong resistor size somewhere or something), then please let me know.
« Last Edit: July 18, 2015, 05:40:26 PM by Animedude5555 »

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3444
  • Developer
    • View Profile
    • PaulsCode.Com
Re: How to backup ROMs from N64 cartridges
« Reply #18 on: July 23, 2015, 10:37:19 PM »
Have you figured out yet how to get a USB to LPT converter working yet?

A port of gsuploader, called gs_libusb demonstrates that it is possible to communicate with the Game Shark using a USB to LPT adapter (granted, it only works with an adapter that has the MCS7705 chip).  This particular library doesn't provide a method for dumping the ROM, but it does prove that you can communicate with the Game Shark, which is the first step.  Taking the code from this and adapting it to the n64rd project is the route I am looking into.  I haven't worked on this in a while, though.. I need to get back to it.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline BlinksTale

  • bit
  • Posts: 1
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #19 on: March 23, 2016, 03:31:40 AM »
Hi Paul,

Just wanted to say - this is amazing stuff! I found my old v3.2 GameShark from the late 90s, and my 2003 laptop running Windows XP with a builtin DB25 port (female) and all I needed was an $8 male-to-female printer cable to connect the two, and it worked seamlessly. This is by far the cheapest games dumping setup I've paid any money for!

My notes:
* It didn't need the conversion at the end, any .bin file seems to be supported by Mupen64Plus regardless of byte arrangement.
* Windows XP dumped Blast Corps fine with no modifications. Haven't done a checksum yet, (not sure where to look on that) but game runs for the first few levels just fine.
* Only took 6min to rip this one compared to the described 15min to multiple hours. Will be ripping more in the future, hoping for similarly good times.

Great stuff though, thanks!

Offline pRletrIaVo$p

  • bit
  • Posts: 8
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #20 on: January 22, 2017, 01:45:40 AM »
Hello! I found this thread today and I bought everything I need. I want to back up my own cartridges as I did with my Gamecube and Wii games. Thank you for this step-by-step guide.
However, will this work on Windows 10 Pro? :\

Offline fzurita

  • Moderator
  • float
  • *****
  • Posts: 449
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #21 on: January 22, 2017, 10:43:27 AM »
It may not work, I would be surprised if you came find a Windows 10 PC with an LPT port though.

Offline pRletrIaVo$p

  • bit
  • Posts: 8
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #22 on: January 22, 2017, 12:01:38 PM »
It may not work, I would be surprised if you came find a Windows 10 PC with an LPT port though.

I do have a "Print Port Header (25-pin LPT1)". I bought a cable mounted on a plate for the rear panel of my case. The UEFI of my motherboard has a few settings concerning the parallel port. I'll need to test them...

At the moment, my Antivirus hate WinRom64, but I'll try to fix that.

I'll receive all the parts in a few weeks and report back here. ;)

Offline pRletrIaVo$p

  • bit
  • Posts: 8
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #23 on: January 25, 2017, 01:45:09 PM »
So... I received my Parallel female to IDC (25-pin header)...

Windows found it and its corresponding driver... How am I suppose to configure the "Filter Resource Method"? I don't know anything about IRQ or Interrupt... I have three choices as illustrated:

English version:

What should I choose? :P

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3444
  • Developer
    • View Profile
    • PaulsCode.Com
Re: How to backup ROMs from N64 cartridges
« Reply #24 on: January 30, 2017, 10:50:10 PM »
Sorry for the late response.  On my Latitude D600 which I've mainly been using to connect with the GameShark, it has IRQ 7, base address 0378-037a.  There are some other common configurations mentioned in this Wikipedia article as well you could try.

What operating system are you running on this system?  I've not gotten gscc to function on any version of windows past XP (and even that is unstable to the point of not really being usable -- this software works best on Win98).  It also runs well in wine, if you can get your system to dual-boot both windows and linux (I'm using Lubuntu on my Latitude).  If you really don't want to dual boot though, you may be able to get this working in a VirtualBox VM running an XP client (EDIT: actually, a Lubuntu client would probably be more stable than an XP client -- I'll test this out and post an update).  I can help you set that up if you want to go that route.
« Last Edit: January 30, 2017, 11:00:55 PM by Paul »
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline pRletrIaVo$p

  • bit
  • Posts: 8
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #25 on: February 06, 2017, 10:34:35 PM »
Thanks for the answer!

Phew! I received the GameShark last week. I also managed to install Lubuntu over VirtualBox. I also managed to launch a stable gscc.exe in 32-bit Wine...

My problem is that I think Lubuntu can't find the LPT port... My host (Windows 10 Pro) sees it and display the port in the Device Manager window...

Is there a way to verify whether or not the LPT port is available in Lubuntu? I would appreciate a little bit of help here.

(It took me a few hours! Tonight was the first time I touched VirtualBox. Thanks god I knew a little bit about GNU/Linux environment...)

Sorry. French is my native tongue and I don't practice English often... Thanks again, Paul, for all of this!
« Last Edit: February 06, 2017, 10:36:09 PM by pRletrIaVo$p »

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3444
  • Developer
    • View Profile
    • PaulsCode.Com
Re: How to backup ROMs from N64 cartridges
« Reply #26 on: February 07, 2017, 06:12:38 AM »
I posted instructions for enabling the parallel port on Linux HERE.  But before you can do that though, you will need to make the parallel port visible to the Virtual Box guest machine.  The options for doing that are not visible in the Virtual Box settings UI, and have to be done with VBoxManage.

I'm going to set up a similar VM myself here before I post the instructions, so that I am giving you the correct information.  I'll post the instructions here.  If you want to do some searching in the mean time, there are instructions in the Virtual Box manual, or you probably can find it with a Google search. EDIT: For reference, see this thread
« Last Edit: February 07, 2017, 07:34:37 AM by Paul »
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline pRletrIaVo$p

  • bit
  • Posts: 8
    • View Profile
Re: How to backup ROMs from N64 cartridges
« Reply #27 on: February 07, 2017, 10:25:09 AM »
Thanks again, Paul. I think I managed to configure the parallel port using VBoxManage, but I'm having trouble with Lubuntu and Wine. I don't have the ppdev key you wrote about in the registery. I tried the Wine User Guide (https://www.winehq.org/docs/wineusr-guide/misc-things-to-configure [nofollow]), but I would now like to know for sure whether or not Lubuntu and Wine detect my LPT port and the GameShark.

I want to know if I made a mistake (teminal inputs, apt-get mishaps...) or if the problem is "old stuff"-related. :P

Right now GSCC.exe can't auto-detect at all and all I get are "timed out" whenever I try to use "RAM Edit".

Gosh... This is black magic. :P (An idiot-proof guide would be great! :P )
« Last Edit: February 07, 2017, 10:31:38 AM by pRletrIaVo$p »

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3444
  • Developer
    • View Profile
    • PaulsCode.Com
Re: How to backup ROMs from N64 cartridges
« Reply #28 on: February 07, 2017, 12:58:29 PM »
I don't have the ppdev key you wrote about in the registery.
I don't think the registry for "HKCU\Software\Wine\VDM\ppdev" exists out of the box.  You just have to add it, then put in a key "378" with value "/dev/parport0".  I recall there were some permissions issues when I did this before, so I'll set up another one like this from scratch, and let you know what I find.

Gosh... This is black magic. :P (An idiot-proof guide would be great! :P )
Haha, I'll try and put together a better guide if we get this setup going.  I've not tried a setup with Lubuntu as a guest on a Windows host, so will be interesting to see whether this works.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3444
  • Developer
    • View Profile
    • PaulsCode.Com
Re: How to backup ROMs from N64 cartridges
« Reply #29 on: February 09, 2017, 12:57:44 AM »
I had some time to set up a test platform with a Windows host and Lubuntu guest.  I set this up on Dell Latitude D505 that I hacked together from laptop parts in the garage, so probably not the best use case, but good enough.  The host in this case is Windows 7, so results may not be the same for Windows 10 (I'll do a test with Windows 10 next).  The guest is Lubuntu 12.04 (latest version that will run in Virtual Box on this dinosaur, due to VirtualBox not recognizing that the Pentium M supports PAE)

Anyway.. long story short is that the Lubuntu guest machine fails to connect to the Gameshark in this configuration.  I have tested and verified that the parallel port is accessible from the guest machine.  Also, I have installed the exact same version of Lubuntu on this same machine alongside Windows 7, and it can connect to the Gameshark fine when it is not running in VirtualBox.  If you like, I can post my notes so far.  I'll be posting the full instructions after I get this set up under Windows 10, just in case anything goes differently.

I'm thinking another alternative (one which would not require you to dual-boot windows and linux) will be to get gscc  running after booting into an Ubuntu live CD (the "Try Ubuntu" option, versus "Install Ubuntu").  I'll experiment with this idea next, and post the results.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted