TapeDump v1.0 - a tool to dump carts without extra hardware

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems. See the NESdev wiki for more information.

Moderator: Moderators

SkinnyV
Posts: 427
Joined: Wed May 04, 2011 2:41 pm
Location: Montréal, Canada
Contact:

Post by SkinnyV »

The main link work but all the link related to multicart are down and has been for a long time. You can find detail on this page: http://kevtris.org/mappers/bmc_fam/index.html

I also have multiple pirate cart that I would love to dump but you have to understand that reverse engineering pirate mapper is a lot of work and you can't really expect someone to come forward and do it for you unless there is something major on the cart you are trying to dump.
User avatar
MottZilla
Posts: 2837
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla »

For anyone interested this is more on the Rockman 6-in-1 mapper.

Code: Select all

REGISTERS:

$5010 - Chip Config
xxSC-xxPP
	S = Select CHR ROM/RAM
	0 CHRROM. 1 CHRRAM.

	C = CHR-ROM Size
	0 256K. 1 128K.

	PP = PRG-ROM Size
	00 512K. 01 256K. 10 128K.

$5011 - PRG Chunk 256K Base Select
xBBB-xxxx
	BBB = Selects 256K Base of PRG-ROM for MMC3 to Use

$5012 - CHR Chunk Base Select
xxBB-xxxx
	BB = Selects 128K Base of CHR-ROM for MMC3
	Only values 00 and 10 are used but bit 0 may be
	valid too.
On Powerup PP of $5010 is zeroed, BBB of $5011 also zeroed. This causes the first 512K of PRG-ROM to be seen by the MMC3 which puts the Menu program in control.

$5011 really controls upper address lines on the PRG-ROM. $5010 controls address lines too, by deciding which ones the MMC3 can control and which ones it holds in a constant state to effectively set bounds for the ROM data seen by the MMC3.

That should cover most of the mapper and how it works.

---

Stuff about hardware. I'm not sure this is all exact as I'm no hardware expert.

PRG-ROM Connections
A16 and Below Connect Normally to MMC3

A17 - HELD HIGH in 128K Size Mode, otherwise connects normally
A18 - Connects to MBR if Size isn't 512K. If it is then it connects to MMC3
A19 - Connects to MBR
A20 - Connects to MBR

MBR being Master Bank Register. It controls the upper PRG lines. The upper most 2 are always connected to the MBR. A18 is used in 256K and 128K PRG modes by the MBR. In 512K mode the MMC3 needs this as the ROM is 512K and needs that to switch between the first and last 256K of data. A17 connects normally to MMC3 unless the mode is 128K in which case its I think held high (+5v) so the lower 128K of the selected 256K block is all that is visible. This is used for Rockman 1.

I think all this is correct. CHR-ROM has a similar setup. I imagine you could built your own cartridge with a TxROM cart and additional hardware for the MBR.
zzo38
Posts: 1096
Joined: Mon Feb 07, 2011 12:46 pm

Post by zzo38 »

ccovell wrote:We're telling you: Download Audacity.
There is another program which can record sound files, known as SoX (Sound Exchange), if you prefer the command-line program.
User avatar
jpx72
Posts: 178
Joined: Tue Sep 28, 2010 3:27 am
Location: Slovakia
Contact:

Post by jpx72 »

Can somebody help me with "ironing" the wav file recorded by Tapedump? I'm getting great results when the recording time is less than 1 hour, but at larger files, I'm getting decoding errors when using KCS to decode the wav file.
I have done everything humanly possible to perfect my recording setup (using Famicom, recording from pin #46 of cartridge connector, disconnected II. player controller, using shielded cables and disabling any sound-altering plugins of my soundcard, using SoundForge soft).
I have recorded both at 300 600 and 1200 bps, with same results. Running out of options here...
I don't know which normalising settings to use, or what different methods of "cleaning" the audio recording can be applied.
I'm using the same settings with KCS: kcs.exe -Bn -G2 -F10 file.wav file.nes ("n" being bps speed). Maybe I can use different settings or other decoding software...
Any help highly appreciated!
ccovell
Posts: 1045
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Post by ccovell »

Here's a question: are you using an NTSC Famicom, or a clone, or a PAL clone? I've tested PAL in emulators, but since I don't have the hardware, I don't know of any problems that come up with any recording above 5 minutes.

60 minutes even at 1200 bps???!? How big is the cartridge you're dumping??

One piece of advice is: if the cart you dump has PRG and CHR ROMs, split up the recording between dumps of PRG and CHR (the 5-second leader is played again before CHR.) Then use KCS to decode each PRG and CHR recording.
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

3600 seconds * 1200 bits per second / 11 bits per byte = very close to 384 KiB, the size of Super Mario Bros. 3 or Big Bird's Hide and Speak.

A few games have 512 KiB of PRG alone: Kirby's Adventure, Mega Man 6, Dragon Warrior 3 (U), Dragon Quest/Warrior 4.
ccovell
Posts: 1045
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Post by ccovell »

true, true.
User avatar
jpx72
Posts: 178
Joined: Tue Sep 28, 2010 3:27 am
Location: Slovakia
Contact:

Post by jpx72 »

As you may have noticed a couple of posts earlier, MottZilla is helping me dump my Rockman 1-6 multicart. By tweaking the TapeDump itself, I was trying to dump each game by itself (128,256,384,512,512 and 512 kB) and by one tweak, I was dumping a data chunk of 768kB (containing the whole Rockman 3 data) to get the idea how the whole menu system works (this one took 8 hours at 300bps with 7 decoding errors, I got only one dump at 1200bps/2hours with no errors).
I succesfully dumped Rockman 1 and 2 (MMC3 hacks), but I'm unable to correctly dump Rockman 3 to 6 (yet).

I am using original Japanese Famicom (NTSC/HVC-CPU-GPM-02C) with NTSC version of TapeDump, connected to a quadcore/4GB_RAM/Win7 PC.

Any other help? Something about editing the finished recording?


ccovell wrote:if the cart you dump has PRG and CHR ROMs, split up the recording between dumps of PRG and CHR (the 5-second leader is played again before CHR.)
There's always only one decoding error in the Rockman3 dump, couldn't it be because of this sound between PRG and CHR?
User avatar
Guyver2011
Posts: 11
Joined: Sat Nov 19, 2011 9:30 pm
Location: CCCP
Contact:

Post by Guyver2011 »

NESASM don't work in Win7 and NESASM3 don't work in Win7. - Rom Tape Dump don't compile.

asm6 work in Win7. ccovell, please, give me sourse code for asm6. This will it is difficult to do?
My Email: veroh@yandexDOTru
3gengames
Formerly 65024U
Posts: 2284
Joined: Sat Mar 27, 2010 12:57 pm

Post by 3gengames »

NESASM3 workz in Win7, unless I've not been compiling stuf over the last year with it. :roll:
User avatar
Guyver2011
Posts: 11
Joined: Sat Nov 19, 2011 9:30 pm
Location: CCCP
Contact:

Post by Guyver2011 »

He works, but there is some problems. asm6 work in Win7 100%.
My Email: veroh@yandexDOTru
3gengames
Formerly 65024U
Posts: 2284
Joined: Sat Mar 27, 2010 12:57 pm

Post by 3gengames »

What kind of problems? There's zero problems for me, it's 100% functional on both X64 and X86-64 computers with what I work on.
User avatar
Memblers
Site Admin
Posts: 4044
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Post by Memblers »

Wow, 8 hours to dump a ROM?

The tape dump idea is definitely cool, but you guys do know it's only $2 in parts to interface the NES/FC to an RS232 port, right? Sounds like it would save a lot of time if you want to copy large amounts of data.
User avatar
MottZilla
Posts: 2837
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla »

Should be a bit more reliable too right? But then again this has its advantages, and has the software to do it actually developed. If someone developed a serial link and programs to go with it, maybe that would be used instead.
User avatar
jpx72
Posts: 178
Joined: Tue Sep 28, 2010 3:27 am
Location: Slovakia
Contact:

Post by jpx72 »

Memblers wrote:Wow, 8 hours to dump a ROM?
..at least you can see how dedicated I am :) (and that's 8 hours just for the menu system to understand, add to that dumping of the next 5 games and you have a nice full-weekend job)
Memblers wrote: The tape dump idea is definitely cool, but you guys do know it's only $2 in parts to interface the NES/FC to an RS232 port, right? Sounds like it would save a lot of time if you want to copy large amounts of data.
There's no problem building it but can you provide the software for it? Something understandable (English) and relatively easy to controll? Last time I asked about this I was pointed towards some Japanese web, couldn't even get the right schematics...
But if it's that simple, why then the need of CopyNES? Profit?
Post Reply