Need help dumping Cheetahmen: The Creation

Are you new to 6502, NES, or even programming in general? Post any of your questions here. Remember - the only dumb question is the question that remains unasked.

Moderator: Moderators

lidnariq
Posts: 9507
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Need help dumping Cheetahmen: The Creation

Post by lidnariq » Sun Jul 14, 2019 5:43 pm

rainwarrior wrote:Finally, one thing I don't think has been mentioned is maybe check the remaining pins of the 74377 and see if they connect to any of the card edge pins of the PCB (the gold fingers on the edge, both sides).
He found that D0-D3 and D5-D7 were connected to the PRG ROM data lines; I'm comfortable saying that all eight lines are connected and in order despite D4's conspicuous absence.
but maybe they're in scrambled arrangment here?
Not obviously. He found Q4 connects to CHR A13, and the few visible traces in the photo of the underside connect from Q5 to CHR A14 and Q6 to CHR A15. I can't say about Q0-Q3 or Q7.

The bad dump he sent me included the reset stub (x: lda #$11 / sta x+1 / jmp $8009). The code at $8009 is a credible init routine, so I have to assume that this bad dump is of PRG bank 1, not PRG bank 0.

I have no idea why the Kazzo isn't working; this is pretty clearly the Color Dreams hardware. But as I linked earlier, a previous person trying to dump a Wisdom Tree game had similar problems.

nocash
Posts: 1211
Joined: Fri Feb 24, 2012 12:09 pm
Contact:

Re: Need help dumping Cheetahmen: The Creation

Post by nocash » Mon Jul 15, 2019 5:09 am

A list with all twenty 74ls377 pins would be helpful, showing their function, and their connection to the cart edge or rom chips. Using colored dots for some random pins here and there instead of making a schematic isn't so professional. With that technique it's easy get lost, for example, 74ls377 pin1, is the connection already known, or was it even considered to be connected anywhere yet?

Btw how are dumping tools handling bus conflicts? Are they searching for matching rom bytes, and then write to that address? Or are they just writing by force, hoping to have more amps than the rom chip?

Ps. Using a multimeter works as so: Hold one probe to the pin that you are looking for, then slide the other probe across the cart edge contacts until it makes beep, that shouldn't take hours when searching for only 20 pins.
Last edited by nocash on Mon Jul 15, 2019 10:28 pm, edited 1 time in total.
homepage - patreon - you can think of a bit as a bottle that is either half full or half empty

User avatar
rainwarrior
Posts: 7824
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Need help dumping Cheetahmen: The Creation

Post by rainwarrior » Mon Jul 15, 2019 11:52 am

Just in case anyone reading this thread needs it, the wiki has pinout reference and other information for:
nocash wrote:Btw how are dumping tools handling bus conflicts? Are they searching for matching rom bytes, and then write to that address? Or are they just writing by force, hoping to have more amps than the rom chip?
lidnariq's script posted above tried to position the writes exactly on a bus conflict table that appeared in the single-bank dump that I presume was shared privately.

When I wrote CopyNES dumping scripts for bus-conflict mappers I would have it search the ROM space for a matching byte. I dunno how easy that is to do with anago/kazzo though.

lidnariq
Posts: 9507
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Need help dumping Cheetahmen: The Creation

Post by lidnariq » Mon Jul 15, 2019 12:24 pm

nocash wrote:Btw how are dumping tools handling bus conflicts?
Kazzo scripts assume that the underlying Atmega16 wins all bus conflicts. Prior evidence has insinuated that it's true.
rainwarrior wrote:I dunno how easy that is to do with anago/kazzo though.
Anago/Unagi don't obviously expose a way for the embedded SquirrelVM to programmatically read a byte and use its contents.

GreyRogue
Posts: 44
Joined: Fri Dec 08, 2017 5:12 pm

Re: Need help dumping Cheetahmen: The Creation

Post by GreyRogue » Mon Jul 15, 2019 4:36 pm

Ok. So from this post (viewtopic.php?f=10&t=19093&start=15#p240720), it looks like CHR-A14 is hooked up to Q5, CHR-A15 (VPP) is connected to Q6, and /ROMSEL connects to CLK.
Also, /WE is hooked up to something. CPU R/W looks like it's in about the right place for that, and that would be expected for Color Dreams.

From this post (viewtopic.php?f=10&t=19093&start=15#p240753), we also have D0=D0 through D7=D7 except for D4. That is almost certainly hooked up as well, as there is a trace headed that way.
We also have CHR-A13=Q4. It also sure looks like there is a trace connecting PRG-A15 with Q0.
If the /WE, D4, and Q0 are confirmed this is exactly Color Dreams with support for 64K PRG/CHR (does grounding the VPP line on the CHR-ROM matter? Would require using "| 0x40" if so). Q1, Q2, Q3, Q7 would be expected not connected in this case.

So what's going wrong? A couple of theories:
-First, I'd check the mirroring flag. I believe the Kazzo only tests/and sets the mirroring flag if the dumping scripts specifies this. It looks like vram_mirrorfind is set, so it should be ok, but it's worth checking). From the pictures posted, it looks like PPU-A10 is connected to CIRAM-A10, so vertical.
-Next, is it possible both banks of the PRG have the menu code in them? Maybe the version lidnariq has is using one bank (maybe dumped with NROM script?), but the version being dumped with his modded script is starting (after the 0 write 0x8000 or maybe after completing the script once) in the other bank. This would mean the ROM values he recommends might not match for the bank that's currently active, causing the bus conflicts to be causing issues.

My suggestion is to first check the mirroring flag. And my second suggestion is to make sure that CRCs match for the existing dumps. When dumping with the Kazzo, it always gives the CRCs of the PRG and CHR. Make sure to watch them. If two dumps have the same values, you don't need to test the new dump again as it will be the same. If they're different, however, they need to be examined closely.

lidnariq
Posts: 9507
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Need help dumping Cheetahmen: The Creation

Post by lidnariq » Mon Jul 15, 2019 5:36 pm

He's not using an NROM script. He's using the Color Dreams scripts ... and also the AOROM script ... and it's the local GUI ("Unagi") that's saying "hey, I've got a file that clearly repeats over and over; there's only 32KB of PRG and 8KB of CHR here". The thing he sent me privately is this thing.

Somehow, the bankswitch writes aren't happening, or if they're happening the latch is immediately reverting to some constant value. The resistors and LEDs would help figure out which, but regardless it doesn't suggest a way forward to get a valid dump. Maybe it's a bug in the Kazzo firmware, but if so, why are Color Dreams PCBs the only mapper that gives us this trouble?

Overpowering the outputs of the latch would be a way forward, tying Q0, Q1, and Q4 to +5V or ground. I wouldn't want to do it long term, but doing this for long enough to run Unagi four times should be ok enough. And the only thing it might damage would be the 74HC377 anyway, which is a commodity part and replaceable without much cost.

nocash
Posts: 1211
Joined: Fri Feb 24, 2012 12:09 pm
Contact:

Re: Need help dumping Cheetahmen: The Creation

Post by nocash » Mon Jul 15, 2019 9:14 pm

Rhetorically, yes. But does the cart owner have a glimpse of an idea about pin numbers or pin names like Q0 or Q1? Currently it might be better to stick with colored dot language, like "wire green dot to purple dot", or whatever.
Or somebody take the time to make a list, I am surprised nobody did that yet, alike...

Code: Select all

74LS377.pin1 (color this) (/WE)      ------- unknown connection ????
74LS377.pin2 (color blah) (pin name) ------- cart.edge pinN (pin name)
etc.
Maybe that would help to clarify that the pins have actual functions, and that it is important to know where they connect to, and perhaps the question marks would motivate the cart owner to find out where the pin connects to. You know, like "oh, man, I had never thought about that pin! Haha. I will check that right now!"

On the software side, it is known how to map the PRG bank for the init/menu stuff. But is it also known how to map other (undumped) banks? If /WE connects somewhere to address bus then it might work only for certain addresses.
homepage - patreon - you can think of a bit as a bottle that is either half full or half empty

ShadowMan44
Posts: 35
Joined: Wed Jul 10, 2019 8:17 pm

Re: Need help dumping Cheetahmen: The Creation

Post by ShadowMan44 » Mon Jul 15, 2019 9:59 pm

Are you guys sure it isn't possible to like romhack the game to make the graphics work?
Maybe what you have to do to get it to "look right" is change some values in the hex editor, unless the file size being inaccurate means that a lot of code was left out from the initial dump?

nocash
Posts: 1211
Joined: Fri Feb 24, 2012 12:09 pm
Contact:

Re: Need help dumping Cheetahmen: The Creation

Post by nocash » Mon Jul 15, 2019 10:22 pm

Dumping depends on wheter you answer open question. For that super simple board, I think that dumping isn't a problem technically, it's mainly a problem about communicating questions about pin connections to somebody who isn't experienced with such questions.
Instead of that... filling missing bits in a hex editor, if you want to rewrite the game from scratch up and then manually key in the code in a hex editor, yes of course that is possible, but is that really what you are up to?

Edit: Thinking about it, I guess 74ls377 pin1 connects to R/W on cart edge?
Edit2: If you were referring to the mirroring flag, yes that would be edited via hex editor.
Last edited by nocash on Mon Jul 15, 2019 10:45 pm, edited 1 time in total.
homepage - patreon - you can think of a bit as a bottle that is either half full or half empty

ShadowMan44
Posts: 35
Joined: Wed Jul 10, 2019 8:17 pm

Re: Need help dumping Cheetahmen: The Creation

Post by ShadowMan44 » Mon Jul 15, 2019 10:44 pm

Rewriting the entire game from scratch? I'd like to keep my sanity, thanks.
Is it possible that a different, more up to date NES dumping device would dump the game better? Kazzo devices have been out of date for about a year now

lidnariq
Posts: 9507
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Need help dumping Cheetahmen: The Creation

Post by lidnariq » Mon Jul 15, 2019 11:24 pm

ShadowMan44 wrote:Are you guys sure it isn't possible to like romhack the game to make the graphics work?
You're talking about recreating 3/4 of the graphics data from scratch. You have 8KB. There's a 32KB ROM. While this process of inventing things is pedantically a ROM hack, it's almost certainly not what you want.

No, you'll have to figure out some other way to get the contents of the ROMs.

FrankWDoom
Posts: 236
Joined: Mon Jan 23, 2012 11:27 pm

Re: Need help dumping Cheetahmen: The Creation

Post by FrankWDoom » Tue Jul 16, 2019 10:23 pm

i have this cart and dumped it with my copynes. i used the mapper 11 script for color dreams/acgi.

here's the famirom info:

Code: Select all

Cheetahmen The Creation.nes
iNES ver.: 1.0
 platform: NES
   mapper: 11
mirroring: Vertical
 prg size: 64KB (512kb)
 chr size: 32KB (256kb)
  prg ram: not specified
  battery: no
  trained: no
TV system: NTSC
boards: (Color Dreams)
CRC32 
      prg: A0BB3588
      chr: ADCC1DE8
     data: 9AC319E5
     file: 0D7C08E8
Attachments
ctc rom info.jpg
ctc tile.jpg

ShadowMan44
Posts: 35
Joined: Wed Jul 10, 2019 8:17 pm

Re: Need help dumping Cheetahmen: The Creation

Post by ShadowMan44 » Tue Jul 16, 2019 10:41 pm

FrankWDoom wrote:i have this cart and dumped it with my copynes. i used the mapper 11 script for color dreams/acgi.

here's the famirom info:

Code: Select all

Cheetahmen The Creation.nes
iNES ver.: 1.0
 platform: NES
   mapper: 11
mirroring: Vertical
 prg size: 64KB (512kb)
 chr size: 32KB (256kb)
  prg ram: not specified
  battery: no
  trained: no
TV system: NTSC
boards: (Color Dreams)
CRC32 
      prg: A0BB3588
      chr: ADCC1DE8
     data: 9AC319E5
     file: 0D7C08E8
Wait, the rom is now dumped!? Oh man, I wasted like 200 dollars on a shitty bootleg cart for nothing!
At least we have a rom of it now.

FrankWDoom
Posts: 236
Joined: Mon Jan 23, 2012 11:27 pm

Re: Need help dumping Cheetahmen: The Creation

Post by FrankWDoom » Wed Jul 17, 2019 12:08 am

if it makes you feel better, i might not have thought to dump it without this thread. i picked mine up secondhand and i think this is the first time i've ever booted it up.

it'd still be good to figure out how to dump yours to verify. maybe the script needs to be fixed or something.

ShadowMan44
Posts: 35
Joined: Wed Jul 10, 2019 8:17 pm

Re: Need help dumping Cheetahmen: The Creation

Post by ShadowMan44 » Wed Jul 17, 2019 12:12 am

Post the exact script that you used to dump yours, and if that doesn't work then we could confirm that it's the Kazzo's fault.

Post Reply