NES 2.0 submappers

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

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

Re: NES 2.0 submappers

Post by rainwarrior » Mon Aug 10, 2015 2:03 pm

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: 9777
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: NES 2.0 submappers

Post by lidnariq » Tue Aug 11, 2015 11:52 am

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: 7878
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior » Tue Aug 11, 2015 12:36 pm

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: 243
Joined: Mon Jan 23, 2012 11:27 pm

Re: NES 2.0 submappers

Post by FrankWDoom » Wed Aug 12, 2015 4:58 pm

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: 7878
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior » Wed Aug 12, 2015 5:16 pm

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: 22088
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: NES 2.0 submappers

Post by tepples » Wed Aug 12, 2015 6:27 pm

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: 9777
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: NES 2.0 submappers

Post by lidnariq » Sat Aug 15, 2015 1:21 am

Since there seems to be a desire for validation tests, here's one for SEROM/SHROM/SH1ROM:
Attachments
serom.zip
(8.62 KiB) Downloaded 1725 times

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

Re: NES 2.0 submappers

Post by rainwarrior » Sat Aug 15, 2015 12:08 pm

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 1355 times
Last edited by rainwarrior on Thu Mar 21, 2019 4:47 pm, edited 1 time in total.

User avatar
feos
Posts: 107
Joined: Tue Apr 19, 2011 11:26 am
Location: RU
Contact:

Re: NES 2.0 submappers

Post by feos » Sat Aug 29, 2015 2:50 am

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: 7878
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior » Sat Aug 29, 2015 8:21 am

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: 107
Joined: Tue Apr 19, 2011 11:26 am
Location: RU
Contact:

Re: NES 2.0 submappers

Post by feos » Sat Aug 29, 2015 8:42 am

It runs Impossible Mission 2.

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

Re: NES 2.0 submappers

Post by rainwarrior » Thu Sep 03, 2015 1:07 pm

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 1373 times
Last edited by rainwarrior on Thu Mar 21, 2019 4:22 pm, edited 3 times in total.

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

Re: NES 2.0 submappers

Post by lidnariq » Thu Sep 03, 2015 1:18 pm

Did you mean to reverse submappers 1 and 2?

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

Re: NES 2.0 submappers

Post by rainwarrior » Thu Sep 03, 2015 1:24 pm

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: 7878
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES 2.0 submappers

Post by rainwarrior » Mon Oct 26, 2015 12:08 pm

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 1346 times
2_test_src.zip
mapper 2 submapper test source
(12.7 KiB) Downloaded 1370 times

Post Reply