From b7a72bbe4444849e228dc3c871415b768fd65947 Mon Sep 17 00:00:00 2001 From: 0kmg <9137159+0kmg@users.noreply.github.com> Date: Sun, 27 Jun 2021 19:10:28 -0800 Subject: bus/nes: start updating mapper # comments (#8230) --- src/devices/bus/nes/2a03pur.cpp | 4 ++- src/devices/bus/nes/act53.cpp | 6 ++-- src/devices/bus/nes/bootleg.cpp | 64 +++++++++++++++++++------------------ src/devices/bus/nes/cony.cpp | 7 ++-- src/devices/bus/nes/event.cpp | 2 +- src/devices/bus/nes/kaiser.cpp | 39 +++++++++++----------- src/devices/bus/nes/mmc3_clones.cpp | 4 ++- src/devices/bus/nes/nes_carts.cpp | 2 +- src/devices/bus/nes/nes_ines.hxx | 24 +++++++------- src/devices/bus/nes/nes_pcb.hxx | 2 +- src/devices/bus/nes/nes_unif.hxx | 8 ++--- src/devices/bus/nes/pirate.cpp | 7 ++-- 12 files changed, 90 insertions(+), 79 deletions(-) diff --git a/src/devices/bus/nes/2a03pur.cpp b/src/devices/bus/nes/2a03pur.cpp index 62dbc5ee753..ed285bab98a 100644 --- a/src/devices/bus/nes/2a03pur.cpp +++ b/src/devices/bus/nes/2a03pur.cpp @@ -65,7 +65,9 @@ void nes_2a03pur_device::pcb_reset() Board 2A03 Puritans Album - In MESS: supported. + iNES: mapper 31 + + In MAME: Supported. This mapper supports up to 1MB of PRG-ROM, in 4k banks located at $8000, $9000, $A000, $B000, $C000, diff --git a/src/devices/bus/nes/act53.cpp b/src/devices/bus/nes/act53.cpp index 0576f36a06c..51e2d75a7e1 100644 --- a/src/devices/bus/nes/act53.cpp +++ b/src/devices/bus/nes/act53.cpp @@ -7,7 +7,7 @@ Here we emulate the Multi-Discrete PCB designed by Tepples for - this homebew multicart [mapper 28] + this homebrew multicart [mapper 28] ***********************************************************************************************************/ @@ -71,7 +71,9 @@ void nes_action53_device::pcb_reset() Board ACTION 53 - In MESS: *VERY* preliminary support. + iNES: mapper 28 + + In MAME: Preliminary supported. This board uses 4 registers (reg is selected by writes to 0x5xxx) Info from nesdev wiki diff --git a/src/devices/bus/nes/bootleg.cpp b/src/devices/bus/nes/bootleg.cpp index d585a8df9de..9b2ebe88960 100644 --- a/src/devices/bus/nes/bootleg.cpp +++ b/src/devices/bus/nes/bootleg.cpp @@ -560,7 +560,9 @@ void nes_rt01_device::pcb_reset() Games: Super Mario Bros. Pocker Mali (Crayon Shin-chan pirate hack) - In MESS: Supported + NES 2.0: mapper 530 + + In MAME: Supported. -------------------------------------------------*/ @@ -633,7 +635,7 @@ void nes_ax5705_device::write_h(offs_t offset, uint8_t data) iNES: mapper 35 - In MESS: Supported + In MAME: Supported. -------------------------------------------------*/ @@ -702,7 +704,7 @@ void nes_sc127_device::write_h(offs_t offset, uint8_t data) iNES: mapper 42 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -760,7 +762,7 @@ uint8_t nes_mbaby_device::read_m(offs_t offset) iNES: mapper 42 with no IRQ and no NT, but CHR switch - In MESS: Partially Supported. + In MAME: Partially supported. -------------------------------------------------*/ @@ -790,7 +792,7 @@ uint8_t nes_asn_device::read_m(offs_t offset) iNES: mapper 106 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -865,7 +867,7 @@ void nes_smb3p_device::write_h(offs_t offset, uint8_t data) iNES: mapper 222 - In MESS: Unsupported. + In MAME: Unsupported. -------------------------------------------------*/ @@ -953,7 +955,7 @@ uint8_t nes_whirl2706_device::read_m(offs_t offset) iNES: mapper 43 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -1035,7 +1037,7 @@ uint8_t nes_smb2j_device::read_m(offs_t offset) iNES: mapper 40 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -1092,7 +1094,7 @@ uint8_t nes_smb2ja_device::read_m(offs_t offset) iNES: mapper 50 - In MESS: Partially Supported. + In MAME: Partially supported. -------------------------------------------------*/ @@ -1162,9 +1164,9 @@ void nes_smb2jb_device::write_ex(offs_t offset, uint8_t data) chips and CHRROM. Originally dumps were marked as UNL-SMB2J pcb - iNES: + NES 2.0: mapper 304 - In MESS: Partially Supported. Need to emulate IRQ + In MAME: Partially supported. Need to emulate IRQ (needed by smb2 conversion?) -------------------------------------------------*/ @@ -1194,7 +1196,7 @@ uint8_t nes_09034a_device::read_m(offs_t offset) iNES: mapper 120 - In MESS: Partially Supported. + In MAME: Partially supported. -------------------------------------------------*/ @@ -1223,9 +1225,9 @@ uint8_t nes_tobidase_device::read_m(offs_t offset) This PCB maps WRAM in 0xc000-0xdfff and PRG in 0x6000-0x7fff - iNES: + iNES: mapper 125 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -1273,9 +1275,9 @@ void nes_lh32_device::write_h(offs_t offset, uint8_t data) This PCB maps WRAM in 0xc000-0xdfff and PRG in 0x6000-0x7fff This is very similar to KS7037 (see kaiser.cpp) - iNES: + NES 2.0: mapper 522 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -1332,9 +1334,9 @@ void nes_lh10_device::write_h(offs_t offset, uint8_t data) This PCB maps WRAM (w/battery) in 0xb800-0xd7ff and PRG in 0x6000-0x7fff - iNES: + NES 2.0: mapper 535 - In MESS: Preliminar Support only. + In MAME: Preliminary support only. -------------------------------------------------*/ @@ -1400,15 +1402,15 @@ void nes_lh53_device::write_h(offs_t offset, uint8_t data) Games: Doki Doki Panic (FDS conversion) - iNES: mapper 103? - This board has a very unique setup, with 8KB of WRAM in 0x6000-0x7fff and other 8KB of WRAM in 0xb800-0xd7ff which can be switched in 2KB chunks (we attempt to emulate this by intercepting reads in that area before they get to the PRG banks...) - In MESS: Supported. + iNES: mapper 103 + + In MAME: Supported. -------------------------------------------------*/ @@ -1465,13 +1467,13 @@ void nes_2708_device::write_h(offs_t offset, uint8_t data) Games: Green Beret (FDS conversions) - iNES: - This board has two PRG chips. The first (128K) is connected to 0x6000-0x7fff and switches among the 16x8K banks; the second (32K) is fixed in 0x8000-0xffff - In MESS: Supported. + iNES: ??? + + In MAME: Supported. -------------------------------------------------*/ @@ -1538,14 +1540,14 @@ void nes_unl_bb_device::write_h(offs_t offset, uint8_t data) Games: Super Mario Bros Malee 2 - iNES: - This PCB has two PRG chips (32K+2K) + one CHR chip (8K) + 2KB of WRAM The second PRG chip (2K) is connected at 0x6000-0x6800 while WRAM is at 0x7000-0x7800 - In MESS: Supported. + iNES: mapper 55 + + In MAME: Supported. -------------------------------------------------*/ @@ -1575,9 +1577,9 @@ void nes_mmalee_device::write_m(offs_t offset, uint8_t data) Games: Shui Guan Pipe (Gimmick Pirate) - iNES: + iNES: mapper 183 - In MESS: Supported, but there are glitches (PPU or IRQ?) + In MAME: Supported, but there are glitches (PPU or IRQ?) -------------------------------------------------*/ @@ -1664,9 +1666,9 @@ uint8_t nes_shuiguan_device::read_m(offs_t offset) "weak bits", which is tested at some points (info from Cah4e3). - iNES: + NES 2.0: mapper 328 - In MESS: + In MAME: Partially supported? -------------------------------------------------*/ diff --git a/src/devices/bus/nes/cony.cpp b/src/devices/bus/nes/cony.cpp index 922942ffa56..dbe62aa52a3 100644 --- a/src/devices/bus/nes/cony.cpp +++ b/src/devices/bus/nes/cony.cpp @@ -152,7 +152,7 @@ void nes_yoko_device::pcb_reset() iNES: mapper 83 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -305,10 +305,11 @@ void nes_cony_device::write_h(offs_t offset, uint8_t data) Games: Mortal Kombat II, Master Figther VI' - Very similar to Cony board - In MESS: Supported. + NES 2.0: mapper 264 + + In MAME: Supported. -------------------------------------------------*/ diff --git a/src/devices/bus/nes/event.cpp b/src/devices/bus/nes/event.cpp index 41ebc976308..a2205e3d0d4 100644 --- a/src/devices/bus/nes/event.cpp +++ b/src/devices/bus/nes/event.cpp @@ -97,7 +97,7 @@ void nes_event_device::pcb_reset() iNES: mapper 105 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ diff --git a/src/devices/bus/nes/kaiser.cpp b/src/devices/bus/nes/kaiser.cpp index 52690376e4b..eb0dcd9c150 100644 --- a/src/devices/bus/nes/kaiser.cpp +++ b/src/devices/bus/nes/kaiser.cpp @@ -11,12 +11,13 @@ * Kaiser KS202 * Kaiser KS7012 * Kaiser KS7013B + * Kaiser KS7016 * Kaiser KS7017 * Kaiser KS7022 + * Kaiser KS7031 * Kaiser KS7032 - * Kaiser KS7058 - * Kaiser KS7016 * Kaiser KS7037 + * Kaiser KS7058 The Kaiser KS7057 bootleg board is emulated in nes_mmc3_clones.cpp @@ -291,7 +292,7 @@ void nes_ks7037_device::pcb_reset() iNES: mapper 171 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -318,7 +319,7 @@ void nes_ks7058_device::write_h(offs_t offset, uint8_t data) iNES: mapper 175 - In MESS: Supported? + In MAME: Supported? -------------------------------------------------*/ @@ -354,12 +355,12 @@ uint8_t nes_ks7022_device::read_h(offs_t offset) Games: A few FDS conversions like Bubble Bobble or SMB2 - iNES: - TODO: available dumps do not seem to use WRAM... yet m_reg[4] should switch WRAM bank... investigate! - In MESS: Supported? + iNES: mapper 142 + + In MAME: Supported? -------------------------------------------------*/ @@ -431,9 +432,9 @@ uint8_t nes_ks7032_device::read_m(offs_t offset) Games: Super Mario Bros. 3 (Pirate, Alt) - iNES: + iNES: mapper 56 - In MESS: Supported? + In MAME: Supported? -------------------------------------------------*/ @@ -475,9 +476,9 @@ uint8_t nes_ks202_device::read_m(offs_t offset) Games: Almana no Kiseki FDS conversion - iNES: + NES 2.0: mapper 303 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -551,9 +552,9 @@ uint8_t nes_ks7017_device::read_ex(offs_t offset) Games: Zanac FDS Conversion - iNES: + NES 2.0: mapper 346 - In MESS: Not working + In MAME: Supported. -------------------------------------------------*/ @@ -574,9 +575,9 @@ void nes_ks7012_device::write_h(offs_t offset, uint8_t data) Games: Highway Star FDS Conversion - iNES: + NES 2.0: mapper 312 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -607,9 +608,9 @@ void nes_ks7013b_device::write_h(offs_t offset, uint8_t data) TODO: understand how SRAM is handled... - iNES: + NES 2.0: mapper 302 - In MESS: Supported. + In MAME: Supported. -------------------------------------------------*/ @@ -640,9 +641,9 @@ void nes_ks7031_device::write_h(offs_t offset, uint8_t data) Games: Exciting Basket FDS Conversion - iNES: + NES 2.0: mapper 306 - In MESS: Unsupported. + In MAME: Unsupported. -------------------------------------------------*/ diff --git a/src/devices/bus/nes/mmc3_clones.cpp b/src/devices/bus/nes/mmc3_clones.cpp index 4db056dc6f4..7a1aad34e41 100644 --- a/src/devices/bus/nes/mmc3_clones.cpp +++ b/src/devices/bus/nes/mmc3_clones.cpp @@ -652,7 +652,9 @@ void nes_nitra_device::write_h(offs_t offset, uint8_t data) MMC3 clone (identical, but for switched address lines) - In MESS: Supported + NES 2.0: mapper 302 + + In MAME: Supported. -------------------------------------------------*/ diff --git a/src/devices/bus/nes/nes_carts.cpp b/src/devices/bus/nes/nes_carts.cpp index e34ed926145..df62482ef5f 100644 --- a/src/devices/bus/nes/nes_carts.cpp +++ b/src/devices/bus/nes/nes_carts.cpp @@ -297,7 +297,7 @@ void nes_cart(device_slot_interface &device) device.option_add_internal("smb2jb", NES_SMB2JB); device.option_add_internal("09034a", NES_09034A); device.option_add_internal("tobidase", NES_TOBIDASE); // mapper 120 - device.option_add_internal("mmalee2", NES_MMALEE); // mapper 55? + device.option_add_internal("mmalee2", NES_MMALEE); // mapper 55 device.option_add_internal("unl_2708", NES_2708); // mapper 103 device.option_add_internal("unl_lh32", NES_LH32); // used by Monty no Doki Doki Daidassou FDS conversion device.option_add_internal("unl_lh10", NES_LH10); // used in Fuuun Shaolin Kyo (FDS Conversion); diff --git a/src/devices/bus/nes/nes_ines.hxx b/src/devices/bus/nes/nes_ines.hxx index c8690d3c3c2..62275734087 100644 --- a/src/devices/bus/nes/nes_ines.hxx +++ b/src/devices/bus/nes/nes_ines.hxx @@ -86,11 +86,11 @@ static const nes_mmc mmc_list[] = { 52, BMC_GOLD_7IN1 }, { 53, SVISION16_BOARD }, { 54, BMC_NOVEL1 }, - // 55 Genius SMB - No info (nor images) available + { 55, UNL_MMALEE }, // Genius SMB { 56, KAISER_KS202 }, { 57, BMC_GKA }, { 58, BMC_GKB }, - // 59 Unused + // 59 BMC-T3H53 and BMC-D1038 // 60 4-in-1, 35-in-1 Reset based { 61, RCM_TF9IN1 }, { 62, BMC_SUPER_700IN1 }, @@ -112,7 +112,7 @@ static const nes_mmc mmc_list[] = { 78, IREM_HOLYDIVR }, { 79, AVE_NINA06 }, { 80, TAITO_X1_005 }, - // 81 Unused + // 81 NTDEC's Super Gun. Dump available? { 82, TAITO_X1_017 }, { 83, CONY_BOARD }, // 84 Pasofami hacked images? @@ -155,11 +155,11 @@ static const nes_mmc mmc_list[] = { 121, KAY_BOARD }, // 122 Unused { 123, UNL_H2288 }, - // 124 Unused - // 125 Unused + // 124 Super Game Mega Type III pirate arcade board? + { 125, UNL_LH32 }, // Monty no Doki Doki Daidassou - FDS Conversion { 126, BMC_PJOY84 }, - // 127 Unused - // 128 Unused + // 127 Double Dragon II Japan pirate. Dump available? + // 128 1994 Super HiK 4-in-1 pirate. Dump available? // 129 Unused // 130 Unused // 131 Unused @@ -205,7 +205,7 @@ static const nes_mmc mmc_list[] = { 171, KAISER_KS7058 }, { 172, TXC_DUMARACING }, { 173, TXC_MJBLOCK }, - // 174 Unused + // 174 Bisqwit's TV GAME multicart (Legend of Kage, Goonies, etc). Dump available? { 175, KAISER_KS7022}, { 176, UNL_XIAOZY }, { 177, HENGG_SRICH }, @@ -251,7 +251,7 @@ static const nes_mmc mmc_list[] = { 217, BMC_GOLDENCARD_6IN1 }, { 218, NOCASH_NOCHR }, // 219 UNL-A9746 (according to Cah4e3's code, no dump available (yet) - // 220 Unused + // 220 Unused - reserved for emulator debugging { 221, UNL_N625092 }, { 222, BTL_DRAGONNINJA }, { 223, WAIXING_TYPE_I }, // (according to NEStopia source, it's MMC3 with more WRAM) @@ -267,8 +267,8 @@ static const nes_mmc mmc_list[] = { 233, BMC_SUPER22 }, { 234, AVE_MAXI15 }, { 235, BMC_GOLD150 }, // 235 Golden Game x-in-1 - Unsupported - // 236 Game 800-in-1 - Unsupported - // 237 Unused + // 236 Game 800-in-1 - Unsupported, Realtec boards 8031 and 8155 + // 237 Teletubbies 420-in-1 multicart. Dump available? { 238, UNL_603_5052 }, // 239 Unused { 240, CNE_SHLZ }, @@ -498,7 +498,7 @@ void nes_cart_slot_device::call_load_ines() else if (submapper) { submapper = 0; - logerror("Undocumented iNES2.0 submapper, please report it to the MESS boards!\n"); + logerror("Undocumented iNES2.0 submapper, please report it to the MAME boards!\n"); } } diff --git a/src/devices/bus/nes/nes_pcb.hxx b/src/devices/bus/nes/nes_pcb.hxx index 6c893ce105f..81d60a9eb64 100644 --- a/src/devices/bus/nes/nes_pcb.hxx +++ b/src/devices/bus/nes/nes_pcb.hxx @@ -607,7 +607,7 @@ void nes_cart_slot_device::call_load_pcb() { logerror("-- PCB: %s", get_feature("pcb")); if (m_pcb_id == UNSUPPORTED_BOARD) - logerror(" (currently not supported by MESS)"); + logerror(" (currently not supported by MAME)"); logerror("\n"); } logerror("-- PRG 0x%x (%d x 16k chunks)\n", prg_size, prg_size / 0x4000); diff --git a/src/devices/bus/nes/nes_unif.hxx b/src/devices/bus/nes/nes_unif.hxx index 34ccb4fa145..0230c3bb533 100644 --- a/src/devices/bus/nes/nes_unif.hxx +++ b/src/devices/bus/nes/nes_unif.hxx @@ -385,7 +385,7 @@ void nes_cart_slot_device::call_load_unif() else { small_prg = true; - logerror("This chunk is smaller than 16K: the emulation might have issues. Please report this file to the MESS forums.\n"); + logerror("This chunk is smaller than 16K: the emulation might have issues. Please report this file to the MAME forums.\n"); } /* Read in the program chunks */ @@ -411,7 +411,7 @@ void nes_cart_slot_device::call_load_unif() } else { - logerror("Unsupported UNIF chunk or corrupted header. Please report the problem at MESS Board.\n"); + logerror("Unsupported UNIF chunk or corrupted header. Please report the problem at MAME Board.\n"); read_length = size; } } @@ -424,7 +424,7 @@ void nes_cart_slot_device::call_load_unif() if (!prg_start) { - fatalerror("No PRG found. Please report the problem at MESS Board.\n"); + fatalerror("No PRG found. Please report the problem at MAME Board.\n"); } // SETUP step 2: getting PCB and other settings @@ -489,7 +489,7 @@ void nes_cart_slot_device::call_load_unif() } if (small_prg) // This is not supported yet, so warn users about this - osd_printf_error("Loaded UNIF file with non-16k PRG chunk. This is not supported in MESS yet."); + osd_printf_error("Loaded UNIF file with non-16k PRG chunk. This is not supported in MAME yet."); if (vrom_size) { diff --git a/src/devices/bus/nes/pirate.cpp b/src/devices/bus/nes/pirate.cpp index 13a5d61c0be..667e5329ef6 100644 --- a/src/devices/bus/nes/pirate.cpp +++ b/src/devices/bus/nes/pirate.cpp @@ -441,7 +441,9 @@ void nes_agci_device::write_h(offs_t offset, uint8_t data) Games: Korean Igo - In MESS: Supported + NES 2.0: mapper 521 + + In MAME: Supported. -------------------------------------------------*/ @@ -462,8 +464,7 @@ void nes_dreamtech_device::write_l(offs_t offset, uint8_t data) iNES: mapper 186 - In MESS: Unsupported. - + In MAME: Unsupported. -------------------------------------------------*/ -- cgit v1.2.3