From 149dd41add0e9c53d8f3e18d3888bc678b3b7d27 Mon Sep 17 00:00:00 2001 From: etabeta78 Date: Wed, 4 May 2016 21:50:25 +0200 Subject: [PATCH] another batch from my backlog (most new additions don't work, but I hope to add support for some of the new mappers soon). nw. --- hash/nes.xml | 954 +++++++++++++++++++++++----- src/devices/bus/nes/mmc3_clones.cpp | 38 ++ src/devices/bus/nes/mmc3_clones.h | 22 + src/devices/bus/nes/nes_carts.cpp | 10 + src/devices/bus/nes/nes_pcb.hxx | 9 + src/devices/bus/nes/nes_unif.hxx | 12 +- 6 files changed, 876 insertions(+), 169 deletions(-) diff --git a/hash/nes.xml b/hash/nes.xml index 3c8a68ddf3c..28b5647ee54 100644 --- a/hash/nes.xml +++ b/hash/nes.xml @@ -25,6 +25,7 @@ - HENGGEDIANZI-XJZB carts use mapper 176 - a lot of BMC-FK23C/BMC-FK23CA use mapper 176 - a few WAIXING-A carts use mapper 4 + - mapper 178 seems to be used for both waixing_sgzlz and edu2k Also, a few images are not proper dumps: - the Decrypted SmyNES ones have been ripped from SmyNES encrypted files and decrypted (by CaH4e3?) - the Decrypted WXN ones have been found as encrypted exes for a famiclone and decrypted (by Byemu?) @@ -45930,6 +45931,21 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx + + Gimmick! (Jpn, Prototype) + 1992 + Sunsoft + + + + + + + + + + + Goal!! (Jpn) 1992 @@ -51078,6 +51094,21 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx + + Poker (Pirate) + 1995 + <unknown> + + + + + + + + + + + Poker II (Tw) 19?? @@ -52619,6 +52650,23 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx + Tank (Asia) + 1992 + Caltron + + + + + + + + + + + + + + Tank (Spa) 1992 Gluk Video @@ -52636,6 +52684,23 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx + + Dream Fighter (Asia) + 1991 + Caltron + + + + + + + + + + + + + - - Dream Fighter (Asia) + + Dream Fighter (Asia, ASDER) 19?? Asder @@ -61391,6 +61518,25 @@ preliminary proto for the PAL version, still running on NTSC systems) or the gfx + + Gameinis - PingPong (Asia) + 19?? + <unknown> + + + + + + + + + + + + + + + Golden KTV (Asia) 19?? @@ -64769,7 +64915,7 @@ All musics were removed in this game. - + Sonic 3d Blast 5 (Asia) 19?? <unknown> @@ -64913,7 +65059,7 @@ All musics were removed in this game. - + Super Sonic 5 (Asia, Fixed?) 19?? <unknown> @@ -64929,10 +65075,11 @@ All musics were removed in this game. - - Super Sonic 5 (Asia) + + Sonic & Knuckles 5 (Asia) 19?? <unknown> + @@ -65273,6 +65420,25 @@ Also notice that VRAM & WRAM are probably incorrect for some of these sets, at t + + Almana no Kiseki (Asia, FDS conversion, Alt 2) + 19?? + Whirlwind Manu + + + + + + + + + + + + + + + Mario Baby ~ Bio Miracle Bokutte Upa (Asia, FDS conversion) 19?? @@ -65376,6 +65542,21 @@ Also notice that VRAM & WRAM are probably incorrect for some of these sets, at t + + Exciting Basket (Asia, FDS conversion) + 19?? + <pirate> + + + + + + + + + + + Falsion (Asia, FDS conversion) 19?? @@ -65496,6 +65677,21 @@ Also notice that VRAM & WRAM are probably incorrect for some of these sets, at t + + Metroid - Jin Ji Zhi Ling (Asia, FDS conversion) + 19?? + Kaiser + + + + + + + + + + + Monty no Doki Doki Daidassou (Asia, FDS conversion) 19?? @@ -65737,6 +65933,23 @@ Also notice that VRAM & WRAM are probably incorrect for some of these sets, at t + + + 1990 Super Bros. 4 (Super Mario Bros. 2 FDS conversion pirate) + 19?? + <pirate> + + + + + + + + + + + + Tobidase Daisakusen (Asia, FDS conversion) 19?? @@ -68631,6 +68844,39 @@ Also notice that VRAM & WRAM are probably incorrect for some of these sets, at t + + Education Computer 2000 48 in 1 (Asia?, Fixed) + 19?? + <unknown> + + + + + + + + + + + + + Bravesoft Windows 2000 (Rus) + 19?? + <unknown> + + + + + + + + + + + + + + Educational Computer 2000 (Rus) 19?? @@ -69329,6 +69575,26 @@ Subor v15.0 (this shows Windows 2002 on the title screen) + Subor v8.0 (Rus) + 19?? + Subor + + + + + + + + + + + + + + + + + Subor v4.0 (Chi) 19?? Subor @@ -69604,6 +69870,22 @@ Subor v15.0 (this shows Windows 2002 on the title screen) + + Battle Tank (Rus) + 19?? + <unknown> + + + + + + + + + + + + Captain SkyHawk (Rus) 199? @@ -69638,6 +69920,21 @@ Subor v15.0 (this shows Windows 2002 on the title screen) + + Digger Tom v Poiskah Drevnego Goroda (Rus) + 19?? + <unknown> + + + + + + + + + + + DuckTales III (Rus) 199? @@ -69673,6 +69970,22 @@ Subor v15.0 (this shows Windows 2002 on the title screen) + + Goblins (Rus) + 19?? + <unknown> + + + + + + + + + + + + Highway Star (Rus) @@ -69725,6 +70038,22 @@ Subor v15.0 (this shows Windows 2002 on the title screen) + + Malen'kaya Rusalochka (Rus) + 1994 + <unknown> + + + + + + + + + + + + Monster Truck (Rus) 19?? @@ -69792,6 +70121,55 @@ Subor v15.0 (this shows Windows 2002 on the title screen) + + Prince of Persia (Rus, RX-02) + 1992 + Snake? + + + + + + + + + + + + + + + Rusalochka (Rus, RX-05) + 1994 + Snake? + + + + + + + + + + + + + + Rusalochka (Rus) + 199? + <unknown> + + + + + + + + + + + + Rally (Rus) 199? @@ -69851,7 +70229,23 @@ Subor v15.0 (this shows Windows 2002 on the title screen) - + + + + + + + + + + Top Gun (Rus) + 19?? + <unknown> + + + + + @@ -70388,6 +70782,22 @@ Other + + Test (Rus, ver. 1.01, RT-01) + 1994 + Snake? + + + + + + + + + + + + Videopoker Bonza (Rus, Rev. A) 19?? @@ -72194,6 +72604,21 @@ resulting in tons of glitches? --> + + Super Bros. 9 (Takahashi Meijin no Boukenjima II pirate) + 19?? + <pirate> + + + + + + + + + + + Super Bros. 11 (Takahashi Meijin no Boukenjima III pirate, Hacked?) 19?? @@ -73414,6 +73839,39 @@ We include them here as reference if they should coincide with later revisions o + + Donkey Kong - Original Edition (Euro, Ripped from Wii) + 2010 + Nintendo + + + + + + + + + + + + + + 25th Anniversary Super Mario Bros. (Jpn, Ripped from Wii) + 2010 + Nintendo + + + + + + + + + + + + + Castlevania (Ripped from PC Konami Classics) 200? @@ -73516,6 +73974,29 @@ We include them here as reference if they should coincide with later revisions o + + ROM City Rampage (Ripped from Retro City Rampage DX) + 200? + VBlank Entertainment + + + + + + + + + + + + + + + + + + + + + 101 in 1 Games + 19?? + <unknown> + + + + + + + + + + + 106 in 1 19?? @@ -75588,6 +76084,21 @@ be better to redump them properly. --> + + 125 in 1 + 19?? + <unknown> + + + + + + + + + + + 126 in 1 19?? @@ -75766,6 +76277,21 @@ be better to redump them properly. --> + + 150 in 1 Unchained Melody (Fight 150 Ver. Love) + 19?? + <pirate> + + + + + + + + + + + He Jin Zhuang Bei 150-in-1 Real Game 19?? @@ -76048,6 +76574,36 @@ be better to redump them properly. --> + + 200 in 1 (Unchained Melody) + 19?? + <pirate> + + + + + + + + + + + + + 2000 in 1 (No Splash, No Rev, Alt Mapper) + 19?? + <pirate> + + + + + + + + + + + 21 in 1 (2006-CA) 19?? @@ -78119,6 +78675,21 @@ be better to redump them properly. --> + + 9999 in 1 (Anim. Splash, Rev 13) + 19?? + <pirate> + + + + + + + + + + + 9999999 in 1 19?? @@ -78166,6 +78737,21 @@ be better to redump them properly. --> + + Prima Soft 9999999-in-1 (02 8807870-3) + 19?? + < pirate> + + + + + + + + + + + Brain Series 13 in 1 19?? @@ -78587,6 +79173,22 @@ to check why this is different --> + + + Super 200 in 1 MD-8802 (Incomplete?) + 19?? + <pirate> + + + + + + + + + + + Super 22 in 1 19?? @@ -78955,7 +79557,7 @@ to check why this is different --> - Super 8-in-1 99 King Fighter (Bad CHR?) + Super 8 in 1 99 King Fighter (Bad CHR?) 19?? <pirate> @@ -79002,6 +79604,20 @@ to check why this is different --> + + Super 8 in 1 (Including Rockin' Kats) + 19?? + <pirate> + + + + + + + + + + Super Big 7 in 1 19?? @@ -79558,6 +80174,168 @@ that the real dumps might surface --> + + + + Handheld 210 in 1 + 201? + <unknown> + + + + + + + + + + CoolBoy 198 in 1 + 201? + CoolBoy + + + + + + + + + + + + + CoolBoy 400 in 1 + 19?? + CoolBoy + + + + + + + + + + + + + CoolBoy 400 in 1 (Alt, 403 games) + 19?? + CoolBoy + + + + + + + + + + + + + Coolboy RS-18 (280 in 1) + 19?? + CoolBoy + + + + + + + + + + + + Coolboy RS-17 (203 in 1) + 19?? + CoolBoy + + + + + + + + + + + + Game 450 in 1 + 201? + <unknown> + + + + + + + + + + + + + Game 500 in 1 + 201? + <unknown> + + + + + + + + + + + + + Super Game 218 in 1 (JF2181) + 201? + <unknown> + + + + + + + + + + + + + Super Game 360 in 1 + 19?? + <unknown> + + + + + + + + + + + + + Super Game 402 in 1 + 201? + <unknown> + + + + + + + + + + + @@ -79688,18 +80466,6 @@ that the real dumps might surface --> - - Handheld 210 in 1 - 201? - <unknown> - - - - - - - - PowerJoy Navigator 50 in 1 19?? @@ -79882,79 +80648,6 @@ that the real dumps might surface --> - - CoolBoy 198 in 1 - 201? - CoolBoy - - - - - - - - - - - - - CoolBoy 400 in 1 - 19?? - CoolBoy - - - - - - - - - - - - - CoolBoy 400 in 1 (Alt, 403 games) - 19?? - CoolBoy - - - - - - - - - - - - - Coolboy RS-18 (280 in 1) - 19?? - CoolBoy - - - - - - - - - - - - Coolboy RS-17 (203 in 1) - 19?? - CoolBoy - - - - - - - - - - Samuri (60 in 1) 2006 @@ -79968,81 +80661,6 @@ that the real dumps might surface --> - - - Game 450 in 1 - 201? - <unknown> - - - - - - - - - - - - - Game 500 in 1 - 201? - <unknown> - - - - - - - - - - - - - Super Game 218 in 1 (JF2181) - 201? - <unknown> - - - - - - - - - - - - - Super Game 360 in 1 - 19?? - <unknown> - - - - - - - - - - - - - Super Game 402 in 1 - 201? - <unknown> - - - - - - - - - - diff --git a/src/devices/bus/nes/mmc3_clones.cpp b/src/devices/bus/nes/mmc3_clones.cpp index 7c320c56060..d8dfa349c6f 100644 --- a/src/devices/bus/nes/mmc3_clones.cpp +++ b/src/devices/bus/nes/mmc3_clones.cpp @@ -63,6 +63,7 @@ const device_type NES_BMC_GC6IN1 = &device_creator; const device_type NES_BMC_411120C = &device_creator; const device_type NES_BMC_830118C = &device_creator; const device_type NES_PJOY84 = &device_creator; +const device_type NES_COOLBOY = &device_creator; nes_nitra_device::nes_nitra_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) @@ -240,6 +241,11 @@ nes_pjoy84_device::nes_pjoy84_device(const machine_config &mconfig, const char * { } +nes_coolboy_device::nes_coolboy_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : nes_txrom_device(mconfig, NES_COOLBOY, "NES Cart CoolBoy PCB", tag, owner, clock, "nes_coolboy", __FILE__) +{ +} + void nes_family4646_device::pcb_reset() @@ -2495,6 +2501,38 @@ WRITE8_MEMBER(nes_pjoy84_device::write_m) } } +/*------------------------------------------------- + + COOLBOY + + Games: several multigame carts + + In MESS: Not Supported. + + -------------------------------------------------*/ + +void nes_coolboy_device::prg_cb(int start, int bank) +{ + bank = (bank & 3) | ((bank & 8) >> 1) | ((bank & 4) << 1); + prg8_x(start, bank); +} + +void nes_coolboy_device::chr_cb(int start, int bank, int source) +{ + bank = (bank & 0xdd) | ((bank & 0x20) >> 4) | ((bank & 2) << 4); + chr1_x(start, bank, source); +} + +WRITE8_MEMBER(nes_coolboy_device::write_m) +{ + LOG_MMC(("coolboy write_m, offset: %04x, data: %02x\n", offset, data)); + + m_reg[offset & 0x03] = data; + //set_base_mask(); + set_chr(m_chr_source, m_chr_base, m_chr_mask); + set_prg(m_prg_base, m_prg_mask); +} + #ifdef UNUSED_FUNCTION /*------------------------------------------------- diff --git a/src/devices/bus/nes/mmc3_clones.h b/src/devices/bus/nes/mmc3_clones.h index f803ff87323..4143e88bca7 100644 --- a/src/devices/bus/nes/mmc3_clones.h +++ b/src/devices/bus/nes/mmc3_clones.h @@ -654,6 +654,27 @@ private: UINT8 m_reg[4]; }; +// ======================> nes_coolboy_device + +class nes_coolboy_device : public nes_txrom_device +{ +public: + // construction/destruction + nes_coolboy_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // device-level overrides +// virtual void device_start() override; + virtual DECLARE_WRITE8_MEMBER(write_m) override; + virtual void prg_cb(int start, int bank) override; + virtual void chr_cb(int start, int bank, int source) override; + +// virtual void pcb_reset() override; + +private: +// inline void set_base_mask(); + UINT8 m_reg[4]; +}; + @@ -693,5 +714,6 @@ extern const device_type NES_BMC_GC6IN1; extern const device_type NES_BMC_411120C; extern const device_type NES_BMC_830118C; extern const device_type NES_PJOY84; +extern const device_type NES_COOLBOY; #endif diff --git a/src/devices/bus/nes/nes_carts.cpp b/src/devices/bus/nes/nes_carts.cpp index 6acac2fc6e7..af37e8919ba 100644 --- a/src/devices/bus/nes/nes_carts.cpp +++ b/src/devices/bus/nes/nes_carts.cpp @@ -343,6 +343,16 @@ SLOT_INTERFACE_START(nes_cart) SLOT_INTERFACE_INTERNAL("onebus", NES_NROM) // UNSUPPORTED SLOT_INTERFACE_INTERNAL("dance2k", NES_NROM) // UNSUPPORTED SLOT_INTERFACE_INTERNAL("pec586", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("coolboy", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("bmc_f15", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("bmc_hp898f", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("bmc_8in1", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("unl_eh8813a", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("unl_158b", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("unl_drgnfgt", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("ks7016", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("ks7037", NES_NROM) // UNSUPPORTED + SLOT_INTERFACE_INTERNAL("rt01", NES_NROM) // UNSUPPORTED // are there dumps of games with these boards? SLOT_INTERFACE_INTERNAL("bmc_hik_kof", NES_NROM) // mapper 251 - UNSUPPORTED SLOT_INTERFACE_INTERNAL("bmc_13in1jy110", NES_NROM) // [mentioned in FCEUMM source - we need more info] - UNSUPPORTED diff --git a/src/devices/bus/nes/nes_pcb.hxx b/src/devices/bus/nes/nes_pcb.hxx index b7af5aeefd4..d0569166e28 100644 --- a/src/devices/bus/nes/nes_pcb.hxx +++ b/src/devices/bus/nes/nes_pcb.hxx @@ -319,6 +319,15 @@ static const nes_pcb pcb_list[] = { "a9746", UNSUPPORTED_BOARD }, { "dance2k", UNSUPPORTED_BOARD }, { "pec586", UNSUPPORTED_BOARD }, + { "bmc_f15", UNSUPPORTED_BOARD }, // 150-in-1 Unchained Melody + { "bmc_hp898f", UNSUPPORTED_BOARD }, // Primasoft 9999999-in-1 + { "bmc_8in1", UNSUPPORTED_BOARD }, // Super 8-in-1 (Incl. Rockin' Kats) + { "unl_eh8813a", UNSUPPORTED_BOARD }, // Dr. Mario II + { "unl_158b", UNSUPPORTED_BOARD }, // Blood of Jurassic + { "unl_drgnfgt", UNSUPPORTED_BOARD }, // Dragon Fighter by Flying Star + { "ks7016", UNSUPPORTED_BOARD }, // Exciting Basketball FDS + { "ks7037", UNSUPPORTED_BOARD }, // Metroid FDS Chinese + { "rt01", UNSUPPORTED_BOARD }, // Russian Test Cart { "test", TEST_BOARD }, { "unknown", UNKNOWN_BOARD } // a few pirate dumps uses the wrong mapper... }; diff --git a/src/devices/bus/nes/nes_unif.hxx b/src/devices/bus/nes/nes_unif.hxx index 890685bfe76..9f180e93d02 100644 --- a/src/devices/bus/nes/nes_unif.hxx +++ b/src/devices/bus/nes/nes_unif.hxx @@ -137,10 +137,20 @@ static const unif unif_list[] = { "BMC-70IN1", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // mapper 236? { "BMC-70IN1B", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // mapper 236? { "BMC-42IN1RESETSWITCH", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // mapper 60? - { "PEC-586", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, + { "BMC-F-15", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // 150-in-1 Unchained Melody + { "BMC-HP898F", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Primasoft 9999999-in-1 + { "BMC-8-IN-1", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Super 8-in-1 (Incl. Rockin' Kats) + { "UNL-EH8813A", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Dr. Mario II + { "UNL-158B", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Blood of Jurassic + { "UNL-DRAGONFIGHTER", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Dragon Fighter by Flying Star + { "UNL-KS7016", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Exciting Basketball FDS + { "UNL-KS7037", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Metroid FDS Chinese + { "UNL-RT-01", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // Russian Test Cart + { "PEC-586", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, { "UNL-DANCE", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, { "UNL-DRIPGAME", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, // [by Quietust - we need more info] { "UNL-CITYFIGHT", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, + { "COOLBOY", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, { "UNL-OneBus", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD}, { "UNL-DANCE2000", 0, 0, CHRRAM_0, UNSUPPORTED_BOARD} };