Kazzo USB rom dumper / dev cart programmer

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderator: Moderators

RPGMaster57
Posts: 4
Joined: Sat Sep 30, 2017 3:48 pm

Re: Kazzo USB rom dumper / dev cart programmer

Post by RPGMaster57 »

Thank-you for the information. So do I just paste this information into the old file in the place of the previous section in something like Notepad? I have tried this and it does not seem to work. I'm not a programmer by any means, so I'm not really sure what to do. Is there a properly working script that I could use?
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by tepples »

When it "does not seem to work", what error message or other misbehavior appears?
RPGMaster57
Posts: 4
Joined: Sat Sep 30, 2017 3:48 pm

Re: Kazzo USB rom dumper / dev cart programmer

Post by RPGMaster57 »

When I try to dump the cartridge using the VRC6a or VRC6b scripts, I either get a message like the one in my previous post or one like this.

m_database not found

AN ERROR HAS OCCURED [expected 'IDENTIFIER']

CALLSTACK
*FUNCTION [dump()] dumpcore.nut line [15]

LOCALS
[increase_ppu] 1
[increase_cpu] 11
[mappernum] -1
[script] "vrc6a.af"
[d] USERPOINTER
[this] TABLE

I am trying to modify the script with no success. I know that I am probably doing something wrong. This is my attempt to change the file.

/*VRC6 type B/351949A/address bus A0=R1, A1=R0
CPU memory bank
cpu address|rom address |page|task
$8000-$bfff|n * 0x4000 |even|write area + write 0x2aaa
$c000-$dfff|0x04000-0x05fff|2 |write 0x5555
-------------------------------------
$8000-$bfff|n * 0x4000 |odd |write area + write 0x5555
$c000-$dfff|0x02000-0x03fff|1 |write 0x2aaa
$e000-$efff|末尾 |fix |boot area, 未使用

PPU memory bank
ppu address|rom address |page|task
$0000-$03ff|0x02800-0x02bff|0x0a|write (0x2aaa & 0x03ff) + 0
$0400-$07ff|0x05400-0x057ff|0x15|write (0x5555 & 0x03ff) + 0x400
$1000-$1fff|n * 0x1000 |n |write area*/
board <- {
  mappernum = 0,
  cpu_rom = {
    size_base = 0x8000, size_max = 0x8000
    banksize = 0x8000
  },
  ppu_rom= {
    size_base = 0x8000, size_max = 0x2000,
    banksize = 0x2000
  },
  ppu_ramfind = false, vram_mirrorfind = true
};,
}
function cpubank_even_set(d, bank, cpu_banksize)
{
cpu_command(d, 0x2aaa, 0x8000, cpu_banksize);
cpu_command(d, 0x5555, 0xc000, 0x2000);
cpu_write(d, 0x8000, bank)
cpu_write(d, 0xc000, 2)
}
function initalize(d, cpu_banksize, ppu_banksize)
{
cpubank_even_set(d, 0, cpu_banksize);
cpu_command(d, 0, 0x8000, cpu_banksize);

ppu_command(d, 0x2aaa, 0, ppu_banksize);
ppu_command(d, 0x5555, 0x0400, ppu_banksize);
ppu_command(d, 0, 0x0800, ppu_banksize);

cpu_write(d, 0xb003, 0); //work ram disable
cpu_write(d, 0xd000, 0x0a);
cpu_write(d, 0xd001, 0x15);
cpu_write(d, 0xd002, 0x00);
cpu_write(d, 0xd003, 0x00);
}
function cpu_transfer(d, start, end, cpu_banksize)
{
local i;
for(i = start; i < end - 2; i += 2){
cpubank_even_set(d, i, cpu_banksize);
cpu_program(d, 0x8000, cpu_banksize);

cpu_command(d, 0x5555, 0x8000, cpu_banksize);
cpu_command(d, 0x2aaa, 0xc000, 0x2000);
cpu_write(d, 0x8000, i | 1)
cpu_write(d, 0xc000, 1)
cpu_program(d, 0x8000, cpu_banksize);
}
cpubank_even_set(d, i, cpu_banksize);
cpu_program(d, 0x8000, cpu_banksize);

cpu_command(d, 0x5555, 0x8000, cpu_banksize);
cpu_command(d, 0x2aaa, 0xc000, 0x2000);
cpu_write(d, 0x8000, i | 1)
cpu_write(d, 0xc000, 1)
cpu_program(d, 0x8000, cpu_banksize);
}

function ppu_transfer(d, start, end, ppu_banksize)
{
for(local i = start; i < end; i += 4){
cpu_write(d, 0xe000, i | 0);
cpu_write(d, 0xe001, i | 1);
cpu_write(d, 0xe002, i | 2);
cpu_write(d, 0xe003, i | 3);
ppu_program(d, 0x1000, ppu_banksize * 4);
}
}
User avatar
infiniteneslives
Posts: 2104
Joined: Mon Apr 04, 2011 11:49 am
Location: WhereverIparkIt, USA
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by infiniteneslives »

Have you tried the version I sent with the commandline build instead of the gui?
If you're gonna play the Game Boy, you gotta learn to play it right. -Kenny Rogers
RPGMaster57
Posts: 4
Joined: Sat Sep 30, 2017 3:48 pm

Re: Kazzo USB rom dumper / dev cart programmer

Post by RPGMaster57 »

I did try that. I got the following error.

vrc6a.af line = (17) column = (2) : error expected 'IDENTIFIER'
vrc6a.af open error

I have tried dumping another game with the command line version, and it worked, so I don't know what's up.
Zoldark
Posts: 72
Joined: Sat Oct 28, 2017 10:18 am
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by Zoldark »

I got my Kazzo a few days back and it works great I've dumped several Famicom games Successfully already, Such as Goonies 2 UNROM, Youkai Douchuuki Namcot Mapper 19 that was a though one to figure out. But I've tried every script I could find trying to Dump the one Sunsoft Game I have Atlantis no Nazo For Famicom and I think it should dump as CNROM as it exist on Mapper 3 as well as Mapper 184, none the Sunsoft scripts work, the game has only 32kb Prg Rom and is suppose to have 16kb Chr Rom as far as I know, when I dump it using the CNROM script I can not get it to double the Chr Rom from 8kb to 16 kb and any other Script I think may be compatible will dump a working 32kb prg rom but gives it only 8kb of chr and I can't double the chr when dumping I even tried the windows version after I learned how to use it all my dumps still come out with only 8kb of Chr Rom.

So I have about 12 different working dumps that have 8kb of chr rom and the graphics just are grabled but they all seem to play fine but I tried splitting them apart and then joining the PRG with the 16kb CHR from a Actual Dump but my dumps still come out with garbled graphics.

So Hoped maybe someone had a fix for dumping Atlantis no Nazo Correctly.

other than that I love my Kazzo..

A unrelated to Dumping question I had is has anyone ever attempted or considered turning a Kazzo Dumper into a Console or would such a thing be possible not that I'm very skilled I just have some strange thoughts sometimes. lol
Don't buy FamicomNes games WillyNilly Check the Mapper first
https://www.nesdev.org/wiki/Mapper
https://nescartdb.com/
I feel like I said something wrong even if I didn't I don't know for sure and I always feel bad about it.
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: Kazzo USB rom dumper / dev cart programmer

Post by lidnariq »

Zoldark wrote:So Hoped maybe someone had a fix for dumping Atlantis no Nazo Correctly.
Atlantis no Nazo is one of a very short list of mapper 184 games, using the Sunsoft-1 IC.

Just trying something super quick:

Code: Select all

board <- {
	mappernum = 184,
	cpu_rom = {
		size_base = 0x8000, size_max = 0x8000
		banksize = 0x8000
	},
	ppu_rom= {
		size_base = 0x8000, size_max = 0x8000,
		banksize = 0x1000
	},
	ppu_ramfind = false, vram_mirrorfind = true
};
function cpu_dump(d, pagesize, banksize)
{
	cpu_read(d, 0x8000, 0x4000);
	cpu_read(d, 0xc000, 0x4000);
}
function ppu_dump(d, pagesize, banksize)
{
	for(local i = 0; i < pagesize; i++){
		cpu_write(d, 0x6000, i);
		ppu_read(d, 0, banksize);
	}
}
No promises, can't test.
has anyone ever attempted or considered turning a Kazzo Dumper into a Console
Try looking up both the "Retrode" and the "Retron 5".
Zoldark
Posts: 72
Joined: Sat Oct 28, 2017 10:18 am
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by Zoldark »

lidnariq wrote:
Zoldark wrote:So Hoped maybe someone had a fix for dumping Atlantis no Nazo Correctly.
Atlantis no Nazo is one of a very short list of mapper 184 games, using the Sunsoft-1 IC.

Just trying something super quick:

Code: Select all

board <- {
	mappernum = 184,
	cpu_rom = {
		size_base = 0x8000, size_max = 0x8000
		banksize = 0x8000
	},
	ppu_rom= {
		size_base = 0x8000, size_max = 0x8000,
		banksize = 0x1000
	},
	ppu_ramfind = false, vram_mirrorfind = true
};
function cpu_dump(d, pagesize, banksize)
{
	cpu_read(d, 0x8000, 0x4000);
	cpu_read(d, 0xc000, 0x4000);
}
function ppu_dump(d, pagesize, banksize)
{
	for(local i = 0; i < pagesize; i++){
		cpu_write(d, 0x6000, i);
		ppu_read(d, 0, banksize);
	}
}
No promises, can't test.
has anyone ever attempted or considered turning a Kazzo Dumper into a Console
Try looking up both the "Retrode" and the "Retron 5".

awesome that did the trick for Atlantis no Nazo once I figured out what format to put the script in dumped my Game and it came out clean with the 32kb Prg and 16kb Chr and Works like it should. Thank you..

Here is the script as a file I uploaded it on my dropbox for convenience https://dl.dropboxusercontent.com/s/ata ... oft-1IC.ae

I had heard of the Retron5 they claim it can play all Castlevania Games or something but I never cared for those, I own the dreaded Retron3 that doesn't or well won't play Famicom games, lucky I have a Game fillip "Nes On A Chip" "Famicom Clone" it doesn't play Namcot Mapper 19 Games and I own two of those Hydlide 3, and Youkai Douchuuki , I'm really not a fan of Consoles that are like Emulators on a chip "Nes Classic, Snes Classic, Etc" but I liked the Nes on A Chip Concept and Real Hardware Clones.

Anyone have any scripts for Famicom Multicarts I have a few like I have two different CoolBoy Carts 400in1 real game and 198in1 real game and I have another 132in1 or 150in1 on it's way from China I'm not sure yet what exactly it is. I haven't tried dumping them or took them apart for pictures yet. I'm not really concerned about dumping my Multi-carts, as I am for my normal games I have like 69+ different Famicom Games so far I have successfully dumped 10 of them not included Atlantis no Nazo but I'm bound to run into more problems. lol..

Right Now my trouble is with Dumping Operation Wolf for The NES it's a Taito game I tried the Taito scripts to no avail and all MMC1 Scripts and none will dump anything that works. Looking at the database my game is different than this one http://bootgod.dyndns.org:7777/image.php?ImageID=3222 my board says NES-SL1ROM -01 U4MMC1 and the board is even shaped different and mine has the date of 1988 not 1987. My game https://dl.dropboxusercontent.com/s/hbh ... PWOLF1.png

I am sorry for jumping the gun and uploading that script with out asking, I thought others might need it too though.. All the Best..
Don't buy FamicomNes games WillyNilly Check the Mapper first
https://www.nesdev.org/wiki/Mapper
https://nescartdb.com/
I feel like I said something wrong even if I didn't I don't know for sure and I always feel bad about it.
Zoldark
Posts: 72
Joined: Sat Oct 28, 2017 10:18 am
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by Zoldark »

Sorry to double post but I was looking at the SNES Hi/Lo-ROM reproduction flash boards, and wondering can you program a NES Game to work on the SNES didn't Nintendo do that for some games as re-release from the Nes to Super I had thought I saw some games before somewhere but I can't remember where I tried looking but I know they did it for the Gameboy Advance.

Has anyone ever made a Case for the Kazzo Dumper I'm not very skilled at making such enclosures, although I did see some images where people had put peg legs on theirs I might try that. lol

And I found out I have the one Famicom Game "Senjou no Ookami" that Uses Mapper 94 which is similar to UNROM used by the US released Commando, I tried dumping it as such but it doesn't work on Mapper 2, I got it to dump using the _bnrom512.ad script it came out clean but is a huge over dump gave it 1024kb of prg rom instead of the normal 128kb that the game uses. If I knew how to reduce the size in the script or the command line BNROM Mapper 34 probably would work it is a clean dump as far as I can tell but it is just way big..

https://wiki.nesdev.com/w/index.php/INES_Mapper_094
https://wiki.nesdev.com/w/index.php/INES_Mapper_034

I still haven't found any solution for my Operation Wolf Game, however I found NesDev had another Kazzo Script for Mapper 81, https://wiki.nesdev.com/w/index.php/INES_Mapper_081 viewtopic.php?f=3&t=16412
Don't buy FamicomNes games WillyNilly Check the Mapper first
https://www.nesdev.org/wiki/Mapper
https://nescartdb.com/
I feel like I said something wrong even if I didn't I don't know for sure and I always feel bad about it.
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by tepples »

Zoldark wrote:can you program a NES Game to work on the SNES didn't Nintendo do that for some games as re-release from the Nes to Super
Porting a game from NES to Super NES isn't too difficult. See, for example, how much code Nintendo reused from the original games to Super Mario All-Stars. But it's usually not an automatic conversion (with exceptions). And people who buy the Super NES version of a game you developed will expect Super NES graphics, not NES graphics.
Zoldark wrote:I had thought I saw some games before somewhere but I can't remember where I tried looking but I know they did it for the Gameboy Advance.
The GBA's CPU is clocked nearly ten times as fast as that of the NES. The Classic NES Series for Game Boy Advance uses an emulator, presumably the same one used in Animal Crossing Advance Play and the e-Reader.

Also have you heard of question marks?
Zoldark
Posts: 72
Joined: Sat Oct 28, 2017 10:18 am
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by Zoldark »

tepples wrote:
Zoldark wrote:can you program a NES Game to work on the SNES didn't Nintendo do that for some games as re-release from the Nes to Super
Porting a game from NES to Super NES isn't too difficult. See, for example, how much code Nintendo reused from the original games to Super Mario All-Stars. But it's usually not an automatic conversion (with exceptions). And people who buy the Super NES version of a game you developed will expect Super NES graphics, not NES graphics.
Zoldark wrote:I had thought I saw some games before somewhere but I can't remember where I tried looking but I know they did it for the Gameboy Advance.
The GBA's CPU is clocked nearly ten times as fast as that of the NES. The Classic NES Series for Game Boy Advance uses an emulator, presumably the same one used in Animal Crossing Advance Play and the e-Reader.

Also have you heard of question marks?
Yep I forgot to use question marks, I get carried away a lot, overly excited. Dumping my own games is like a life long dream of mine come true.

I hadn't thought of Selling Nes Games on a Super Nes, I just was wondering if it were possible cause I own a Retron3 that will not play Famicom Games with a converter, so thought maybe one could program a SNES Board with some NesCode for your own use, of course I should consider getting a RetroPort https://www.estarland.com/product-descr ... pter/40453 that Plays Nes Games on Snes Hardware and trying it with My Famicom Convertor but IDK if it will work with the Retron3 or not.

Back to Mappers I had this one game yesterday that did not even work in a Emulator yesterday and it like just Magically Start working, Kyuukyoku Harikiri Koushien and on a Different Mapper than it had yesterday I got go try to re-dump right now before it changes it's mind. Sorry. Thanks for the Info. Later.
Don't buy FamicomNes games WillyNilly Check the Mapper first
https://www.nesdev.org/wiki/Mapper
https://nescartdb.com/
I feel like I said something wrong even if I didn't I don't know for sure and I always feel bad about it.
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: Kazzo USB rom dumper / dev cart programmer

Post by lidnariq »

Zoldark wrote:"Senjou no Ookami" that Uses Mapper 94
Try this:

Code: Select all

board <- {
  mappernum = 94, vram_mirrorfind = true, ppu_ramfind = false,
  cpu_rom = {
    size_base = 0x20000, size_max = 0x20000,
    banksize = 0x4000
  }, 
  ppu_rom = {
    size_base = 0, size_max = 0,
    banksize = 0x2000
  }
};

function cpu_dump(d, pagesize, banksize)
{
  for(local i = 0; i < pagesize - 1; i += 1){
    cpu_write(d, 0x8000, i << 2);
    cpu_read(d, 0x8000, banksize);
  }
  cpu_read(d, 0xc000, banksize);
}
Operation Wolf
I guess Werrock's script was never posted in its entirety.
Try this:

Code: Select all

board <- {
  mappernum = 36, vram_mirrorfind = true, ppu_ramfind = false,
  cpu_rom = {
    size_base = 0x8000, size_max = 0x20000,
    banksize = 0x8000
  }, 
  ppu_rom = {
    size_base = 0x2000, size_max = 0x20000,
    banksize = 0x2000
  }
};

function cpu_dump(d, pagesize, banksize)
{
  cpu_write(d, 0x4101, 0);
  cpu_write(d, 0x4103, 0);
  for(local i = 0; i < pagesize; i += 1){
    cpu_write(d, 0x4102, i << 4);
    cpu_write(d, 0x4100, 0);
    cpu_write(d, 0xffff, 0);
    cpu_read(d, 0x8000, banksize);
  }
}

function ppu_dump(d, pagesize, banksize)
{
  for (local i = 0; i < pagesize; i += 1){
    cpu_write(d, 0x4200, i);
    ppu_read(d, 0, banksize);
  }
}
Zoldark
Posts: 72
Joined: Sat Oct 28, 2017 10:18 am
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by Zoldark »

lidnariq wrote:
Zoldark wrote:"Senjou no Ookami" that Uses Mapper 94
Operation Wolf
I guess Werrock's script was never posted in its entirety.
Thank you that first code worked for Senjou no Ookami, but for some reason I can't get the Operation Wolf one to work for my cart I don't know if I'm formatting the script right or what.. I tried AD AE and AG.. It's likely something that I'm not doing correctly I'm about as sleepless as Molasses in January I'm going sleep on it. I do appreciate the help, thank you..

On Another Note I modified a existing script to Dump My Famicom Baseball Game I mentioned earlier Kyuukyoku Harikiri Koushien it's a Tatio Game and uses Mapper 82 though I could swore the other day it was using mapper 84, I modified the Taito X1-005 Script changed it over to mapper 82 and Increased the Chr Rom to have the correct amount the game uses which is 256kb, with a 128kb prg. My Code Dumps the game and it loads the title screen like is a good dump but then after that goes wild and doesn't work, so well I don't know what else should be fixed in the script.

To note this is a game that the first time it loads you'll think it doesn't work, but reload it again in an emulator and it does is very weird even my dump did the same thing it doesn't work at all the first time you load it. Is how I got Confused the other day..

here is the Code I have so far for Kyuukyoku Harikiri Koushien

Code: Select all

/*
Taito X1-005
TFC-FM-5900 不動明王伝のみ Program ROM size は 2M
save RAM が存在するがアクセス方法は不明
*/
board <- {
	mappernum = 82, ppu_ramfind = false, vram_mirrorfind = false,
	cpu_rom = {
		size_base = 1 * mega, size_max = 2 * mega,
		banksize = 0x2000
	},
	ppu_rom = {
		size_base = 2 * mega, size_max = 4 * mega,
		banksize = 0x2000 / 8 //0x0800*2 + 0x0400 * 4
	}
};

function cpu_dump(d, pagesize, banksize)
{
	local i;
	for(i = 0; i < pagesize - 2; i += 2){
		cpu_write(d, 0x7efa, i);
		cpu_write(d, 0x7efc, i | 1);
		cpu_read(d, 0x8000, banksize * 2);
	}
	cpu_write(d, 0x7efe, i);
	cpu_read(d, 0xc000, banksize * 2);
}

function ppu_dump(d, pagesize, banksize)
{
	for(local i = 0; i < pagesize; i += 8){
		local ar = [i, i|2, i|4, i|5, i|6, i|7];
		cpu_write(d, 0x7ef0, ar);
		ppu_read(d, 0x0000, banksize * 8);
	}
}
That will dump the game with the correct sizes and mapper but is not a good working dump that or my cart is dirty or something, IDK it looks clean as heck and was hardly ever used cause it's Baseball, is like brand new really, but I will try bushing it up, later.
Don't buy FamicomNes games WillyNilly Check the Mapper first
https://www.nesdev.org/wiki/Mapper
https://nescartdb.com/
I feel like I said something wrong even if I didn't I don't know for sure and I always feel bad about it.
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: Kazzo USB rom dumper / dev cart programmer

Post by lidnariq »

Re: Strike Wolf—how big is your resulting NES file?
Zoldark wrote:

Code: Select all

		cpu_write(d, 0x7efa, i);
		cpu_write(d, 0x7efc, i | 1);
That's not how mapper 82 (which uses Taito's X1-017 IC) works, that's how mapper 80 (X1-005) works.

https://wiki.nesdev.com/w/index.php/INES_Mapper_082
Zoldark
Posts: 72
Joined: Sat Oct 28, 2017 10:18 am
Contact:

Re: Kazzo USB rom dumper / dev cart programmer

Post by Zoldark »

lidnariq wrote:Re: Strike Wolf—how big is your resulting NES file?
Zoldark wrote:

Code: Select all

		cpu_write(d, 0x7efa, i);
		cpu_write(d, 0x7efc, i | 1);
That's not how mapper 82 (which uses Taito's X1-017 IC) works, that's how mapper 80 (X1-005) works.

https://wiki.nesdev.com/w/index.php/INES_Mapper_082
For Operation Wolf the Code wouldn't dump My Game at all, it gives an error.

Code: Select all

length range must be 0x000000 to 0x004000
AN ERROR HAS OCCURED [script logical error]

CALLSTACK
*FUNCTION [cpu_dump()] wolf.ag line [21]
*FUNCTION [dump()] dumpcore.nut line [43]

LOCALS
[i] 0
[banksize] 32768
[pagesize] 1
[d] USERPOINTER
[this] TABLE
[ppu_dumpsize] 8192
[cpu_dumpsize] 32768
[ppuarea_memory] 0
[vram] 1
[increase_ppu] 1
[increase_cpu] 1
[mappernum] 36
[script] "wolf.ag"
[d] USERPOINTER
[this] TABLE



As For the Mapper 82 Game that is correct "Although I had thought they worked the same" but I just had Manipulated the existing Mapper 80 Script forcing it to try and act as Mapper 82 but the result is it just doesn't work I was really starting to think there was something wrong with my game, as I don't have a script for Mapper 82 and I don't yet understand enough of how you actually write a script and I don't understand registers and all that stuff I barely figured out what was chr rom in the script. lol

I did Try Dumping it as normal Mapper 80 with the same script but the resulting dump wouldn't work at all Dumping it as mapper 82 it came out acting as though it would work but after the title screen it goes bad. This of all Famicom Baseball games had to be the one I bought.
Don't buy FamicomNes games WillyNilly Check the Mapper first
https://www.nesdev.org/wiki/Mapper
https://nescartdb.com/
I feel like I said something wrong even if I didn't I don't know for sure and I always feel bad about it.
Post Reply