It is currently Sun Mar 26, 2017 4:11 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 26 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Tue Dec 27, 2016 11:58 pm 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
Hello everyone,

I'm new to forum, so I hope you'll pardon my ignorance. I got a copy of Fire Emblem Gaiden for the Famicom, as well as a INL Retro Kazoo device in order to dump it so I can apply a translation patch. I've downloaded the software/firmware package from here http://www.infiniteneslives.com/kazzo.php , so all of the programs/scripts I reference I found in that package. I loaded the original Kazzo firmware onto the device and I am using the cmd line anago application to dump it, and the dumping seems to be working fine - I'm getting a file at the end of it, at least - but I can't get the resulting .nes file to run in nestoptia. According to this page http://bootgod.dyndns.org:7777/profile.php?id=1266 , it used MMC4 , so I've been trying to use the mmc4.ad script that came with the anago cmd line application. However, whenever I run

Code:
anago.exe d mmc4.ad fe2.nes


the result is

Code:
program memory  0x040000/0x040000 |##########|##########|
charcter memory 0x020000/0x020000 |##########|##########|
mapper 10
program ROM: size 0x040000, crc32 0x75c519c5
charcter ROM: size 0x020000, crc32 0x963fd7c5


And according to http://bootgod.dyndns.org:7777/profile.php?id=1266 , that program rom crc32 value is incorrect (although the character rom crc32 value seems to be spot on). I've also tried it using the d2 and d4 arguments, and while they yield different program rom crc32 values (0xb159295d and 0xc4b026f1, respectively) they still don't match the correct value - and none of the versions I've tried have successfully booted in nestopia.

So, does anyone have any ideas as to why I'm getting a corrupted file? Any tips for getting a correct rom? I was really looking forward to playing this, so any suggestions you could offer would be greatly appreciated! Thank you very much!


Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 1:34 am 
Offline

Joined: Mon Dec 12, 2011 8:15 pm
Posts: 253
calohtar wrote:
Hello everyone,

I'm new to forum, so I hope you'll pardon my ignorance. I got a copy of Fire Emblem Gaiden for the Famicom, as well as a INL Retro Kazoo device in order to dump it so I can apply a translation patch. I've downloaded the software/firmware package from here http://www.infiniteneslives.com/kazzo.php , so all of the programs/scripts I reference I found in that package. I loaded the original Kazzo firmware onto the device and I am using the cmd line anago application to dump it, and the dumping seems to be working fine - I'm getting a file at the end of it, at least - but I can't get the resulting .nes file to run in nestoptia. According to this page http://bootgod.dyndns.org:7777/profile.php?id=1266 , it used MMC4 , so I've been trying to use the mmc4.ad script that came with the anago cmd line application. However, whenever I run

Code:
anago.exe d mmc4.ad fe2.nes


the result is

Code:
program memory  0x040000/0x040000 |##########|##########|
charcter memory 0x020000/0x020000 |##########|##########|
mapper 10
program ROM: size 0x040000, crc32 0x75c519c5
charcter ROM: size 0x020000, crc32 0x963fd7c5


And according to http://bootgod.dyndns.org:7777/profile.php?id=1266 , that program rom crc32 value is incorrect (although the character rom crc32 value seems to be spot on). I've also tried it using the d2 and d4 arguments, and while they yield different program rom crc32 values (0xb159295d and 0xc4b026f1, respectively) they still don't match the correct value - and none of the versions I've tried have successfully booted in nestopia.

So, does anyone have any ideas as to why I'm getting a corrupted file? Any tips for getting a correct rom? I was really looking forward to playing this, so any suggestions you could offer would be greatly appreciated! Thank you very much!


Nestopia cannot working ? Can you send me the ROM?


Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 8:59 am 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
zxbdragon wrote:

Nestopia cannot working ? Can you send me the ROM?


Sorry, I won't be able to send the ROM, but here's a screen video of me trying to open it. I'm away from the kazzo now, so I can't try a new dump this morning, but here's what happens when I try to open my dump from last night. This dump was created with the command

Code:
anago.exe d2 mmc4.ad fe2.nes


Attachments:

[ Play Quicktime file ] fe2_dump_attempt.mp4 [ 992.89 KiB | Viewed 590 times ]
Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 6:30 pm 
Offline

Joined: Mon Dec 12, 2011 8:15 pm
Posts: 253
Your CHR Data is correct, but PRG Data may have a problem, there is no data, I can't go to help you!

The official licensed FEG cart?


Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 6:42 pm 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
So, you don't think it's a problem with the anago arguments I'm using?

Yes, as far as I am aware, it's an authentic retail copy


Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 7:14 pm 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 2962
Location: Brazil
@calohtar
Try this script. Filename should be mmc4_fkrom.ae
Code:
/*
HVC-2I Fire Emblem Gaiden
command line option
./anago d22 mmc4_fkrom.ae hvc_2i.nes b
*/
board <- {
   mappernum = 10, vram_mirrorfind = false, ppu_ramfind = false,
   cpu_rom = {
      size_base = 1 * mega, size_max = 2 * mega,
      banksize = 0x4000,
   },
   cpu_ram = {
      size_base = 0x2000, size_max = 0x2000,
      banksize = 0x2000,
   },
   ppu_rom = {
      size_base = 0x10000, size_max = 1 * mega,
      banksize = 0x1000
   }
};

/*
[cpu memmorymap - read]
$6000-$7fff SRAM (battery backuped, optional)
$8000-$bfff program ROM bank #0
$c000-$ffff program ROM bank #1 (fixed)

[cpu memmorymap - write]
$a000-$afff program ROM bank register #0
$b000-$bfff charcter ROM bank register #0
$c000-$cfff charcter ROM bank register #1
$d000-$dfff charcter ROM bank register #2
$d000-$dfff charcter ROM bank register #3

[ppu memorymap - read]
0x0000-0x0fff charcter ROM bank #A (#0 or #1)
0x0fd0-0x0fdf charcter ROM bank register switch to #0
0x0fe0-0x0fef charcter ROM bank register switch to #1
0x1000-0x1fff charcter ROM bank #B (#2 or #3)
0x1fd0-0x1fdf charcter ROM bank register switch to #2
0x1fe0-0x1fef charcter ROM bank register switch to #3
*/
function cpu_dump(d, pagesize, banksize)
{
   for(local i = 0; i < pagesize - 1; i += 1){
      cpu_write(d, 0xa000, i);
      cpu_read(d, 0x8000, banksize);
   }
   cpu_read(d, 0xc000, banksize);
}

/*
PPU の read 途中にバンクレジスタが切り替わるらしいので下記の処理で
同じデータを得るようにする。
PPU address      register
0x0000-0x0fdf -> #0
0x0fe0-0x0fff -> #1
0x1000-0x1fdf -> #2
0x1fe0-0x1fff -> #3

ppu_read 前に #0 + #1 , #2 + #3 の内容は同じにしておく。
*/
function ppu_dump(d, pagesize, banksize)
{
   for(local i = 0; i < pagesize; i += 2){
      ppu_read(d, 0x0fd0, 0);
      cpu_write(d, 0xb000, i);
      ppu_read(d, 0x0fe0, 0);
      cpu_write(d, 0xc000, i);

      ppu_read(d, 0x1fd0, 0);
      cpu_write(d, 0xd000, i + 1);
      ppu_read(d, 0x1fe0, 0);
      cpu_write(d, 0xe000, i + 1);

      ppu_read(d, 0, banksize * 2);
   }
}

function cpu_ram_access(d, pagesize, banksize)
{
   cpu_ramrw(d, 0x6000, banksize);
}


Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 7:27 pm 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
@Zepper

Thanks so much for the reply! Unfortunately, that script gave an error:

Code:
C:\Users\jeffr\Documents\kazzo\kazzo original\unagi_client_windows_060_commandline\anago>anago d22 mmc4_fkrom.ae hvc_2i.nes b

AN ERROR HAS OCCURED [the index 'cpu_romsize' does not exist]

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

LOCALS
[vram] 0
[increase_ppu] 2
[increase_cpu] 2
[mappernum] 0
[d] USERPOINTER
[this] TABLE


Did I do something wrong?


Top
 Profile  
 
PostPosted: Wed Dec 28, 2016 7:35 pm 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
Wait, I tried copy/pasting it again to be sure I didn't miss a character or something, and it gave me a different error....

Code:
C:\Users\jeffr\Documents\kazzo\kazzo original\unagi_client_windows_060_commandline\anago>anago d22 mmc4_fkrom.ae hvc_2i.nes b
mmc4_fkrom.ae line = (53) column = (18) : error Invalid character
mmc4_fkrom.ae open error


Now I'm really confused :P

edit: code marking correction


Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 4:10 am 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 2962
Location: Brazil
Here's the file. Try again, please.
Don't you own/like the anago_wx version (with GUI)???


Attachments:
nintendo_mmc4_fkrom.zip [985 Bytes]
Downloaded 13 times
Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 10:47 am 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
@Zepper

Thanks again for your time and efforts. I was using the cmd line version simply because the mmc4.ad script wasn't working in the gui. I copied the provided file into both my GUI anago directory and the cmd line directory, and tried it with both. Attached is a screen vid of my attempts, and here is the output.

cmd line anago results:

Code:
C:\Users\jeffr\Documents\kazzo\kazzo\kazzo original\unagi_client_windows_060_commandline\anago>anago d22 nintendo_mmc4_fkrom.ae hvc_2i.nes b

AN ERROR HAS OCCURED [the index 'cpu_romsize' does not exist]

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

LOCALS
[vram] 0
[increase_ppu] 2
[increase_cpu] 2
[mappernum] 0
[d] USERPOINTER
[this] TABLE


GUI anago_wx results:

Code:
length range must be 0x000001 to 0x002000
AN ERROR HAS OCCURED [script logical error]

CALLSTACK
*FUNCTION [ppu_dump()] nintendo_mmc4_fkrom.ae line [66]
*FUNCTION [dump()] dumpcore.nut line [45]

LOCALS
[i] 0
[banksize] 4096
[pagesize] 32
[d] USERPOINTER
[this] TABLE
[ppu_dumpsize] 131072
[cpu_dumpsize] 262144
[ppuarea_memory] 0
[vram] 0
[increase_ppu] 2
[increase_cpu] 2
[mappernum] 10
[script] "nintendo_mmc4_fkrom.ae"
[d] USERPOINTER
[this] TABLE


Both of these attempts were with Program Rom and Character Rom x2 and with the Battery option selected, since you specified the d22 and b arguments in the original version of the code you provided. I also tried it without these options, however, and still no luck. From comparing the file you sent to the code you posted earlier, am I correct in understanding that the only difference is that the Japanese characters weren't being encoded properly? That would explain why I was getting the invalid character error before.

Also, the callstack mentioned dumpcore.nut, so I wondering if I had somehow messed up that file. I restored all files from the original kazoo.zip file, and it didn't make a difference. Is there an updated version of that dumpcore.nut file I need to find somewhere?

Thanks again!


Attachments:

[ Play Quicktime file ] mmc4_fkrom_attempt.mp4 [ 523.29 KiB | Viewed 452 times ]
Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 3:29 pm 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 2962
Location: Brazil
You must play a bit with the script... until it works.
Let's go. Try to change this line for(local i = 0; i < pagesize - 1; i += 1) into this for(local i = 0; i < pagesize; i += 1).

If it still doesn't work, modify the 1* mega or 2 * mega values, like 1 * mega and 1 * mega.
Somehow, the dumper checks the board and compares with the cartridge board - any bad info results in errors.

Try again and let me know. A few attempts may be required.
This script should dump that game without mods! I'm surprised.


Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 6:24 pm 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
Alas, no luck. The cpu_dump function now looks like this:

Code:
function cpu_dump(d, pagesize, banksize)
{
   for(local i = 0; i < pagesize; i += 1){
      cpu_write(d, 0xa000, i);
      cpu_read(d, 0x8000, banksize);
   }
   cpu_read(d, 0xc000, banksize);
}


But the [the index 'cpu_romsize' does not exist] error still appears

When you talked about changed the 1 * mega and 2 * mega arguments, what should I try changing them to? I tried changing them both to 1 * mega, changing them both to 2 * mega, and changing them to 1 * mega and 2 * mega. Did you mean something else?

Thanks!


Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 6:32 pm 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 2962
Location: Brazil
Strange. Other scripts with cpu_rom context don't bring the cpu_romsize, cpu_banksize or ppu_romsize values.
Try this change... see if it works.

Code:
   mappernum = 10, vram_mirrorfind = false, ppu_ramfind = false, cpu_romsize=0x40000, ppu_romsize=0x20000,


Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 8:57 pm 
Offline

Joined: Tue Dec 27, 2016 11:35 pm
Posts: 12
Alright, I tried that and it gave me a different error:

Code:
AN ERROR HAS OCCURED [the index 'cpu_banksize' does not exist]

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


So, I tried to follow your example and add a cpu_banksize argurment. It then gave me the same error, but for ppu_banksize, so I added one of those too. Now the line looks like

Code:
mappernum = 10, vram_mirrorfind = false, ppu_ramfind = false, cpu_romsize=0x40000, ppu_romsize=0x20000, cpu_banksize = 0x4000, ppu_banksize = 0x1000,


Not sure if those values are correct, but it got rid of the errors. Now the error I'm getting is:

Code:
C:\Users\jeffr\Documents\kazzo\kazzo\kazzo original\unagi_client_windows_060_commandline\anago>anago.exe d mmc4_fkrom.ae fe2.nes
length range must be 0x000001 to 0x002000
AN ERROR HAS OCCURED [script logical error]

CALLSTACK
*FUNCTION [ppu_dump()] mmc4_fkrom.ae line [66]
*FUNCTION [dump()] dumpcore.nut line [17]

LOCALS
[i] 0
[banksize] 4096
[pagesize] 32
[d] USERPOINTER
[this] TABLE
[vram] 0
[increase_ppu] 1
[increase_cpu] 1
[mappernum] 10
[d] USERPOINTER
[this] TABLE


Any ideas for that one? Thanks!


Top
 Profile  
 
PostPosted: Thu Dec 29, 2016 10:51 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 5413
Location: Seattle
calohtar wrote:
ppu_romsize=0x20000
[...]
length range must be 0x000001 to 0x002000
See above typo...
This was entirely wrong, nevermind


Last edited by lidnariq on Thu Dec 29, 2016 11:35 pm, edited 1 time in total.

Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 26 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group