Bootleg FC carts: Exciting Basket & Mike Tyson's Punch-Out!!

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.
User avatar
krzysiobal
Posts: 1221
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland

Re: Bootleg FC carts: Exciting Basket & Mike Tyson's Punch-Out!!

Post by krzysiobal »

kevtris wrote: Fri Sep 12, 2025 2:36 am I figured at the time I dumped it there was a mode pin, and it seems that is indeed the case.
I tried to find some common denominator of those games in terms of chip usage but I just can't find any.
I'm assuming that this chip is physically identical in all four games (I have no other reason to think it's different, other KS chips are also same among different games)

If you are still in possession of Castlevania 1 (KS-7010), maybe you can check whether
CAB6
..
CAD6
EBE2
EE32
FFFC
are the only addresses this chip reacts to?

Code: Select all

FEDCBA9876543210 REEAD        
-------------------           
1100101010110110 CAB6         
          ....   ..           
1100101011010110 CAD6         
1110101111100010 EBE2         
1110111000110010 EE32         
1111111111111100 FFFC         
.?????????DCBA1.              
          ++++--- PRG A16..A13
          ++++--- CHR A16..A13
                              
$6000 $8000 $a000 $c000 $e000 
 DCBA  1010  1011  0110  0111 
What comes to my mind is that after reset vector (FFFC, FFFD fetch), this chip watches what is the next CPU address and basing of that, it changes its behaviour.
That could explain how the same chip can acts differently among four games.
Image My website: http://krzysiobal.com | Image My NES/FC flashcart: http://krzysiocart.com
User avatar
kevtris
Posts: 508
Joined: Sat Oct 29, 2005 2:09 am
Location: Indianapolis

Re: Bootleg FC carts: Exciting Basket & Mike Tyson's Punch-Out!!

Post by kevtris »

I can remove the chip from the board and exhaustively probe it maybe. specifically determining which bank is present in each slot, then reading each memory address to see what happens. This won't work great if there's "double" reads involved, i.e. if a sequence of 2 or more reads happens.

I can read the first address of each 8K bank and record the state of the bank select pins, then read each address in memory and re-read each bank to see what, if anything changed. this will let me build up a map of what is going on maybe. It will definitely work if the chip only cares about 1 read, and if they only happen in one area of memory (i.e. top of the last bank).

i.e.

reads:

FFFC

4000
5000
6000
7000
8000
...
F000

then again with a new trigger read

FFFD

4000
5000
....
etc
/* this is a comment */