NES 2.0 submappers

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

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

Re: NES 2.0 submappers

Post by rainwarrior »

Here is my alternative proposal for VRC2/VRC4 submapper assignment: Wiki: VRC2 / VRC4 alternative submapper assignment

It reserves exactly 4 assignments per board. 2 for the addressing scheme x 2 for VRC2/VRC4. This covers everything that exists and provides a space for any future undiscovered VRC2 on those boards.

I don't see the point of allocating any other addressing schemes, since those wouldn't be related to the underlying iNES mapper anyway. A new addressing scheme should get a new mapper allocation, not a submapper on an existing one.
Last edited by rainwarrior on Sat Aug 15, 2015 12:22 pm, edited 1 time in total.
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: NES 2.0 submappers

Post by lidnariq »

Somehow I'd gotten the impression that VRC4 was kevtris's doing, not tepples's. Nonetheless, kevtris did give his thumbs up for it. I am definitely happier not having allocated all fifteen submappers, but we'll need to notify and/or push a patch to the people who have already implemented the loquacious version.

Anyway, I should go ahead and finish that VRC2/4 validation test ROM set, because I've wanted one for a while.
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

lidnariq wrote:we'll need to notify and/or push a patch to the people who have already implemented the loquacious version.
This appears to be MESS and Nestopia UE.

From what I can gather from open source searches:
- MESS implements "everything", more or less
- Nestopia UE implements three submappers (MMC6 004:1, and both VRC2 submappers)
- Bizhawk reads but doesn't use the submapper field
- Nintendulator reads but doesn't use the submapper field
- FCEUX reads but doesn't use the submapper field
FrankWDoom
Posts: 260
Joined: Mon Jan 23, 2012 11:27 pm

Re: NES 2.0 submappers

Post by FrankWDoom »

I'd like to suggest BNROM get its own submapper value. NINA has its own, and submapper 0 can the compatibility implementation. This is similar to how VRC2c gets its own submapper without a strict test program, by virtue of the hardware existing.
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

Yeah, there's a proposal already for mapper 34, since it was already in kevtris' spec anyway. I added a BNROM solo to the proposal. It just needs test ROMs, really.
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: NES 2.0 submappers

Post by tepples »

Holy Diver Batman
[ download | discuss ]

Run it on a BNROM-compatible board with PRG RAM. It'll mess up if the emulator implements overlapping BNROM and NINA. (You may need to hex edit its header to match the submapper proposal.)
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: NES 2.0 submappers

Post by lidnariq »

Since there seems to be a desire for validation tests, here's one for SEROM/SHROM/SH1ROM:
Attachments
serom.zip
(8.62 KiB) Downloaded 2228 times
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

Here's two test ROMs for mapper 34.
34_test_1.nes
expected results

CHR RAM: NO
PRG RAM: YES
PRG BANKS: $2
CHR BANKS $10
SUBMAPPER: $1
(NINA-001 exclusive)


34_test_2.nes
expected results

CHR RAM: YES
PRG RAM: YES
PRG BANKS: $8
CHR BANKS $1
SUBMAPPER: $2
(BNROM exclusive)
Attachments
34_test_src.zip
mapper 34 submapper test source
(16.45 KiB) Downloaded 1708 times
Last edited by rainwarrior on Thu Mar 21, 2019 4:47 pm, edited 1 time in total.
User avatar
feos
Posts: 108
Joined: Tue Apr 19, 2011 11:26 am
Location: RU

Re: NES 2.0 submappers

Post by feos »

Famicom AV + InviteNES flashcart.
lidnariq wrote:Since there seems to be a desire for validation tests, here's one for SEROM/SHROM/SH1ROM:
Image
Image Image
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

Your InviteNES appears to be crashing during the BNROM bus conflicts test (see test_bbus in the source code). My guess is that it produces the bus conflicts, but doesn't properly mask the ROM address to match the size of the ROM available, so STA to a location containing $FF switches to some out-of-ROM bank and it crashes? It didn't even detect any bankswitching in the previous test, though, so... ? Does it even run any BNROM games, or the NINA-001 game?
User avatar
feos
Posts: 108
Joined: Tue Apr 19, 2011 11:26 am
Location: RU

Re: NES 2.0 submappers

Post by feos »

It runs Impossible Mission 2.
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

Here's test ROMs for the proposed mapper 3 submappers. (i.e. CNROM-like, with or without bus conflicts)
3_test_0.nes
expected results

PRG RAM: NO
CHR BANKS: $04
03 VS 00: (unknown)
00 VS FF: (unknown)
03 VS 01: (unknown)
03 VS 02: (unknown)
BUS CONFLICS: (unknown)
SUBMAPPER DETECTED: (unknown)


3_test_1.nes
expected results

PRG RAM: NO
CHR BANKS: $04
03 VS 00: $03
00 VS FF: $00
03 VS 01: $03
03 VS 02: $03
BUS CONFLICS: NONE
SUBMAPPER DETECTED: $01


3_test_2.nes
expected results

PRG RAM: NO
CHR BANKS: $04
03 VS 00: $00
00 VS FF: $00
03 VS 01: $01
03 VS 02: $02
BUS CONFLICS: AND
SUBMAPPER DETECTED: $02
edit: fixed ordering of submappers 1/2
Attachments
3_test_src.zip
mapper 3 submapper test source
(10.29 KiB) Downloaded 1661 times
Last edited by rainwarrior on Thu Mar 21, 2019 4:22 pm, edited 3 times in total.
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: NES 2.0 submappers

Post by lidnariq »

Did you mean to reverse submappers 1 and 2?
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

Sorry, I don't know why I didn't double check that. :S I will correct this shortly. (Edit: fixed now, I hope)
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior »

Finally got around to test roms for the other two bus conflict submappers:
2_test_0.nes
expected results

PRG BANKS: $10
0F VS 00: (unknown)
00 VS FF: (unknown)
0F VS 01: (unknown)
0F VS 02: (unknown)
BUS CONFLICS: (unknown)
SUBMAPPER DETECTED: (unknown)


2_test_1.nes
expected results

PRG BANKS: $10
0F VS 00: $0F
00 VS FF: $00
0F VS 01: $0F
0F VS 02: $0F
BUS CONFLICS: NONE
SUBMAPPER DETECTED: $01


2_test_2.nes
expected results

PRG BANKS: $10
0F VS 00: $00
00 VS FF: $00
0F VS 01: $01
0F VS 02: $02
BUS CONFLICS: AND
SUBMAPPER DETECTED: $02


7_test_0.nes
expected results

PRG BANKS: $08
07 VS 00: (unknown)
00 VS FF: (unknown)
07 VS 01: (unknown)
07 VS 02: (unknown)
BUS CONFLICS: (unknown)
SUBMAPPER DETECTED: (unknown)


7_test_1.nes
expected results

PRG BANKS: $08
07 VS 00: $07
00 VS FF: $00
07 VS 01: $07
07 VS 02: $07
BUS CONFLICS: NONE
SUBMAPPER DETECTED: $01


7_test_2.nes
expected results

PRG BANKS: $08
07 VS 00: $00
00 VS FF: $00
07 VS 01: $01
07 VS 02: $02
BUS CONFLICS: AND
SUBMAPPER DETECTED: $02
Attachments
7_test_src.zip
mapper 7 submapper test source
(28.91 KiB) Downloaded 1642 times
2_test_src.zip
mapper 2 submapper test source
(12.7 KiB) Downloaded 1676 times
Post Reply