reversing mapper268: coolboy/mindkids
Moderator: Moderators
reversing mapper268: coolboy/mindkids
i've almost done this reverse engineering from some modern multi-carts.
now pocketgames 150-in-1 works well.
except one game of super game 143-in-1 from mindkids, which is number 129: TETRIS1. i can't enter this game from the menu, it shows a black screen.
does anyone have time to help test this program for me?
(PS: mindkids or pocketgames the two trademarks are exectly from the same producer in Shenzhen China)
now pocketgames 150-in-1 works well.
except one game of super game 143-in-1 from mindkids, which is number 129: TETRIS1. i can't enter this game from the menu, it shows a black screen.
does anyone have time to help test this program for me?
(PS: mindkids or pocketgames the two trademarks are exectly from the same producer in Shenzhen China)
Re: reversing mapper268: coolboy/mindkids
Its not clear what exactly has been reversed. I thought that fceux already has an exact implementation of coolboy mapper.
Re: reversing mapper268: coolboy/mindkids
I cloned the total hardware and its mapper formation with my own physical hardware, so here is the running pic
Re: reversing mapper268: coolboy/mindkids
i have no idea whether mapper 268 could support MMC1, because the official "Tetris (U) [!].nes" is MMC1, its beyond the wiki description
-
- Posts: 1510
- Joined: Thu May 19, 2005 11:30 am
Re: reversing mapper268: coolboy/mindkids
Game #129, titled "TETRIS1", is Tengen's Tetris (mapper 3/148), not Nintendo's Tetris. At least in the ROM image that I have, PRG-ROM CRC32 4026EED1.
Re: reversing mapper268: coolboy/mindkids
i fixed the battery saving circuit, now all games do not share the very same domain of SRAM any more. each game with battery saving mode has an individal saving space
Last edited by aquasnake on Tue Jan 07, 2020 4:44 am, edited 1 time in total.
Re: reversing mapper268: coolboy/mindkids
thanks for providing this information,and how could mapper268 change into mapper3 mode? maybe it is still mapper4, through hacking mapper3 to mapper4NewRisingSun wrote: ↑Tue Jan 07, 2020 1:37 am Game #129, titled "TETRIS1", is Tengen's Tetris (mapper 3/148), not Nintendo's Tetris. At least in the ROM image that I have, PRG-ROM CRC32 4026EED1.
-
- Posts: 1510
- Joined: Thu May 19, 2005 11:30 am
Re: reversing mapper268: coolboy/mindkids
You mean, how was the game changed to work as MMC3? Not at all, it uses the mapper's "GNROM mode". The game's original CHR-ROM switch at $A7EB has been changed from "STA FFF6,X" (CNROM-latch) to "STA 5002" ("CHR offset for GNROM mode"). However, the game also has a number of garbage writes in the $6xxx range at $A7D2-$A7E4, and which must be ignored.
When emulating mapper 268, always emulate the mapper either the $5xxx or the $6000-$7FFF range, never in both. MINDKIDS needs only the $5xxx range. If you are now asking, "Well, then why do all those other games that write to $6000-$7FFF work with my hardware implementation, such as Zelda?", then the answer is: because they set the "lock" bit. But "lock" does not work in GNROM mode.
When emulating mapper 268, always emulate the mapper either the $5xxx or the $6000-$7FFF range, never in both. MINDKIDS needs only the $5xxx range. If you are now asking, "Well, then why do all those other games that write to $6000-$7FFF work with my hardware implementation, such as Zelda?", then the answer is: because they set the "lock" bit. But "lock" does not work in GNROM mode.
Re: reversing mapper268: coolboy/mindkids
thanks, i typed the wrong word, should be "mapper3".NewRisingSun wrote: ↑Tue Jan 07, 2020 2:04 am You mean, how was the game changed to work as MMC3? Not at all, it uses the mapper's "GNROM mode". The game's original CHR-ROM switch at $A7EB has been changed from "STA FFF6,X" (CNROM-latch) to "STA 5002" ("CHR offset for GNROM mode"). However, the game also has a number of garbage writes in the $6xxx range at $A7D2-$A7E4, and which must be ignored.
When emulating mapper 268, always emulate the mapper either the $5xxx or the $6000-$7FFF range, never in both. MINDKIDS needs only the $5xxx range. If you are now wasking, "Well, then why do all those other games that write to $6000-$7FFF work with my hardware implementation, such as Zelda?", then the answer is: because they set the "lock" bit. But "lock" does not work in GNROM mode.
i can enter other games of MMC3, only this one: Tetris
-
- Posts: 1510
- Joined: Thu May 19, 2005 11:30 am
Re: reversing mapper268: coolboy/mindkids
I don't understand your reply. Does your mapper hardware implementation respond to writes in both the $5xxx and $6000-$7FFF range, or only to writes in the $5xxx range?
Re: reversing mapper268: coolboy/mindkids
i mean i can play other games except #129, i dont konow which this mapper is.NewRisingSun wrote: ↑Tue Jan 07, 2020 2:12 am I don't understand your reply. Does your mapper hardware implementation respond to writes in both the $5xxx and $6000-$7FFF range, or only to writes in the $5xxx range?
yes!!! you probably pointed out the reason, my code unifies both coolboy and mindkids:
Code: Select all
if (cpu_addr_in[14:12] == 3'b101 || cpu_addr_in[14:12] == 3'b110) // $5000-6FFF
-
- Posts: 1510
- Joined: Thu May 19, 2005 11:30 am
Re: reversing mapper268: coolboy/mindkids
That is the reason the game cannot work --- you should not unify the mappers. Emulate either Coolboy or Mindkids, never both at the same time.
Re: reversing mapper268: coolboy/mindkids
Thank you @NewRisingSun again, Tetris(Tengen Version) works now.