Mapper 015 register address range

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
User avatar
zeroone
Posts: 939
Joined: Mon Dec 29, 2014 1:46 pm
Location: New York, NY
Contact:

Mapper 015 register address range

Post by zeroone »

The wiki suggests that any write to an address >= $8000 will update the PRG ROM banks. However, the game

Wai Xing Zhan Shi 2.7z <Wai Xing Zhan Shi 2 (Ch) (Trad).nes>

will freeze after selecting New Game (the default option) from the menu after the title screen unless only addresses $8000, $8001, $8002 and $8003 are used. That is the only discernible difference I can find between emulators that can run it and those which do not.
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Mapper 015 register address range

Post by lidnariq »

What other addresses does that game write to?
User avatar
zeroone
Posts: 939
Joined: Mon Dec 29, 2014 1:46 pm
Location: New York, NY
Contact:

Re: Mapper 015 register address range

Post by zeroone »

lidnariq wrote:What other addresses does that game write to?
Just before it jams, it writes:

[$80FB] = $01

I wonder if that's some additional copy protection register.
User avatar
zeroone
Posts: 939
Joined: Mon Dec 29, 2014 1:46 pm
Location: New York, NY
Contact:

Re: Mapper 015 register address range

Post by zeroone »

Subor V1.0.7z <Subor V1.0 (R).nes> writes to $800X, $A00X, $C00X, $E00X, where X = 0, 1, 2 or 3. Consequentially, it doesn't run properly in emulators only using the addresses discussed above. The address can be masked with $8FFF; however, only a few modules of the subor application work with that change. It might expect banking logic beyond the standard mapper 015. It fails shortly after writing to $E001.

The .7z file contains an alternate version that uses mapper 166 and it appears to work. The .nes above fails to run if the header is adjusted to mapper 166.

GoodNES3.14 contains other versions of this subor application that do run better. And, interestingly, they include 2 flavors of BASIC. If anyone has the manuals for them, please post a link. I'd love to see what language features they support and run any available sample programs.
User avatar
Dwedit
Posts: 4924
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: Mapper 015 register address range

Post by Dwedit »

If it's mapper 15 and not 100-in-1, it's probably a hack intended for Nesticle or something, and will fail on accurate emulators.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
User avatar
zeroone
Posts: 939
Joined: Mon Dec 29, 2014 1:46 pm
Location: New York, NY
Contact:

Re: Mapper 015 register address range

Post by zeroone »

Dwedit wrote:If it's mapper 15 and not 100-in-1, it's probably a hack intended for Nesticle or something, and will fail on accurate emulators.
The headers of the following GoodNES3.14 ROMs specify mapper 015 and they do appear to run in most emulators, except for the ones mentions earlier in this thread:

Bao Xiao Tien Guo (Explosion Sangokushi).7z <Bao Xiao Tien Guo (Explosion Sangokushi) (Ch) [a1].nes>
Bao Xiao Tien Guo (Explosion Sangokushi).7z <Bao Xiao Tien Guo (Explosion Sangokushi) (Ch) [a1][b1].nes>
Bao Xiao Tien Guo (Explosion Sangokushi).7z <Bao Xiao Tien Guo (Explosion Sangokushi) (Ch) [b1].nes>
Bao Xiao Tien Guo (Explosion Sangokushi).7z <Bao Xiao Tien Guo (Explosion Sangokushi) (Ch).nes>
Bio Hazard.7z <Bio Hazard (Unl) [!].nes>
Bio Hazard.7z <Bio Hazard (Unl) [b1].nes>
Crazy Climber.7z <Crazy Climber (J) [hM15].nes>
Crazy Climber.7z <Crazy Climber (J) [hM15][b1].nes>
Crazy Climber.7z <Crazy Climber (J) [hM15][b2].nes>
Crazy Climber.7z <Crazy Climber (J) [hM15][b3].nes>
Da Hua Xi You.7z <Da Hua Xi You (Ch) [b1].nes>
Da Hua Xi You.7z <Da Hua Xi You (Ch) [b2].nes>
Da Hua Xi You.7z <Da Hua Xi You (Ch).nes>
Doraemon.7z <Doraemon (J) (PRG0) [hM15].nes>
Doraemon.7z <Doraemon (J) (PRG0) [hM15][T+Eng1.1_Neokid].nes>
Dragon Power.7z <Dragon Ball - Dragon Mystery (Hack).nes>
Dragon Power.7z <Dragon Ball - Dragon Tricks (Hack).nes>
Dragon Power.7z <Dragon Ball - Shen Long no Nazo (J) [hM15].nes>
Dragon Power.7z <Dragon Ball - Shen Long no Nazo (J) [hM15][b1].nes>
Dragon Power.7z <Dragon Ball - Shen Long no Nazo (J) [hM15][b2].nes>
Dragon Power.7z <Dragon Ball - Shen Long no Nazo (J) [hM15][T-Eng].nes>
Mobile Suit Z Gundam - Hot Scramble.7z <Mobile Suit Z Gundam - Hot Scramble (J) [hM15].nes>
Mobile Suit Z Gundam - Hot Scramble.7z <Mobile Suit Z Gundam - Hot Scramble (J) [hM15][b1].nes>
Mobile Suit Z Gundam - Hot Scramble.7z <Mobile Suit Z Gundam - Hot Scramble (J) [hM15][b2].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][!].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b1].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b1][o1].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b2].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b3].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b4].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b5].nes>
Multi-Game Pirate Carts.7z <100-in-1 Contra Function 16 [p1][b7].nes>
Multi-Game Pirate Carts.7z <168-in-1 [p1][!].nes>
Pokemon Gold (Pirate).7z <Pokemon Gold (Unl) [!].nes>
Pokemon Gold (Pirate).7z <Pokemon Gold (Unl) [a1].nes>
Pokemon Gold (Pirate).7z <Pokemon Gold (Unl) [a1][b1].nes>
Pokemon Gold (Pirate).7z <Pokemon Gold (Unl) [b1].nes>
Shanghai Tycoon.7z <Shanghai Tycoon (Unl) [b1].nes>
Shanghai Tycoon.7z <Shanghai Tycoon (Unl).nes>
Subor V1.0.7z <Subor V1.0 (R).nes>
Subor V3.0.7z <Subor V3.0 (R) [b1].nes>
Subor V3.0.7z <Subor V3.0 (R).nes>
Wai Xing Zhan Shi 2.7z <Wai Xing Zhan Shi 2 (Ch) (Simp).nes>
Wai Xing Zhan Shi 2.7z <Wai Xing Zhan Shi 2 (Ch) (Trad) [b1].nes>
Wai Xing Zhan Shi 2.7z <Wai Xing Zhan Shi 2 (Ch) (Trad).nes>
Xiao Au Jiang Wu.7z <Xiao Au Jiang Wu (Ch) [!].nes>
Xiao Au Jiang Wu.7z <Xiao Au Jiang Wu (Ch) [b1].nes>
Yuefei.7z <Yuefei (Unl) [h1].nes>
Post Reply