From ffed6582517607a8b957725937111ef1f04349e7 Mon Sep 17 00:00:00 2001 From: etabeta78 Date: Sun, 19 Jun 2016 18:47:59 +0200 Subject: megadriv: improved description of many taiwanese unlicensed titles + added dump of Ju Ji Ma Jiang II by Sun Green. [Fabio Priuli] --- src/devices/bus/megadrive/md_carts.cpp | 1 + src/devices/bus/megadrive/md_slot.cpp | 1 + src/devices/bus/megadrive/md_slot.h | 1 + src/devices/bus/megadrive/rom.cpp | 23 +++++++++++++++++++++++ src/devices/bus/megadrive/rom.h | 13 +++++++++++++ 5 files changed, 39 insertions(+) (limited to 'src/devices') diff --git a/src/devices/bus/megadrive/md_carts.cpp b/src/devices/bus/megadrive/md_carts.cpp index 4c9f1b9b2e0..5a8e1902d09 100644 --- a/src/devices/bus/megadrive/md_carts.cpp +++ b/src/devices/bus/megadrive/md_carts.cpp @@ -55,6 +55,7 @@ SLOT_INTERFACE_START(md_cart) SLOT_INTERFACE_INTERNAL("rom_lion3", MD_ROM_LION3) SLOT_INTERFACE_INTERNAL("rom_mcpir", MD_ROM_MCPIR) SLOT_INTERFACE_INTERNAL("rom_mjlov", MD_ROM_MJLOV) + SLOT_INTERFACE_INTERNAL("rom_cjmjclub", MD_ROM_CJMJCLUB) SLOT_INTERFACE_INTERNAL("rom_pokea", MD_ROM_POKEA) SLOT_INTERFACE_INTERNAL("rom_pokestad", MD_ROM_POKESTAD) SLOT_INTERFACE_INTERNAL("rom_realtec", MD_ROM_REALTEC) diff --git a/src/devices/bus/megadrive/md_slot.cpp b/src/devices/bus/megadrive/md_slot.cpp index 61e847eb6e9..55d80f8b64d 100644 --- a/src/devices/bus/megadrive/md_slot.cpp +++ b/src/devices/bus/megadrive/md_slot.cpp @@ -270,6 +270,7 @@ static const md_slot slot_list[] = { LIONK3, "rom_lion3" }, { MC_PIRATE, "rom_mcpir" }, { MJLOVER, "rom_mjlov" }, + { CJMJCLUB, "rom_cjmjclub" }, { POKEMONA, "rom_pokea" }, { REALTEC, "rom_realtec" }, { REDCL_EN, "rom_redcl" }, diff --git a/src/devices/bus/megadrive/md_slot.h b/src/devices/bus/megadrive/md_slot.h index a033daec607..b6cb59147d5 100644 --- a/src/devices/bus/megadrive/md_slot.h +++ b/src/devices/bus/megadrive/md_slot.h @@ -61,6 +61,7 @@ enum LIONK3, /* Lion King 3, Super Donkey Kong 99, Super King Kong 99 */ MC_PIRATE, /* Super 19 in 1, Super 15 in 1, 12 in 1 and a few more multicarts */ MJLOVER, /* Mahjong Lover */ + CJMJCLUB, /* Super Mahjong Club */ POKEMONA, /* Pocket Monster Alt Protection */ REALTEC, /* Whac a Critter/Mallet legend, Defend the Earth, Funnyworld/Ballonboy */ REDCLIFF, /* Romance of the Three Kingdoms - Battle of Red Cliffs, already decoded from .mdx format */ diff --git a/src/devices/bus/megadrive/rom.cpp b/src/devices/bus/megadrive/rom.cpp index 16b12561c8a..ed17cfff044 100644 --- a/src/devices/bus/megadrive/rom.cpp +++ b/src/devices/bus/megadrive/rom.cpp @@ -41,6 +41,7 @@ const device_type MD_ROM_SMB2 = &device_creator; const device_type MD_ROM_SBUBL = &device_creator; const device_type MD_ROM_RX3 = &device_creator; const device_type MD_ROM_MJLOV = &device_creator; +const device_type MD_ROM_CJMJCLUB = &device_creator; const device_type MD_ROM_KOF98 = &device_creator; const device_type MD_ROM_KOF99 = &device_creator; const device_type MD_ROM_SOULB = &device_creator; @@ -141,6 +142,11 @@ md_rom_mjlov_device::md_rom_mjlov_device(const machine_config &mconfig, const ch { } +md_rom_cjmjclub_device::md_rom_cjmjclub_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : md_std_rom_device(mconfig, MD_ROM_CJMJCLUB, "MD Chaoji Majiang Club / Super Mahjong Club", tag, owner, clock, "md_rom_cjmjclub", __FILE__) +{ +} + md_rom_kof98_device::md_rom_kof98_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : md_std_rom_device(mconfig, MD_ROM_KOF98, "MD KOF 98", tag, owner, clock, "md_rom_kof98", __FILE__) { @@ -916,6 +922,23 @@ READ16_MEMBER(md_rom_mjlov_device::read) } +/*------------------------------------------------- + CHAOJI MAJIANG CLUB + -------------------------------------------------*/ + +READ16_MEMBER(md_rom_cjmjclub_device::read) +{ + if (offset == 0x400000/2) return 0x9000; + if (offset == 0x400002/2) return 0xd300; + + // non-protection accesses + if (offset < 0x400000/2) + return m_rom[MD_ADDR(offset)]; + else + return 0xffff; +} + + /*------------------------------------------------- SUPER BUBBLE BOBBLE MD -------------------------------------------------*/ diff --git a/src/devices/bus/megadrive/rom.h b/src/devices/bus/megadrive/rom.h index dcb1536f974..3bafead4346 100644 --- a/src/devices/bus/megadrive/rom.h +++ b/src/devices/bus/megadrive/rom.h @@ -263,6 +263,18 @@ public: virtual DECLARE_READ16_MEMBER(read) override; }; +// ======================> md_rom_cjmjclub_device + +class md_rom_cjmjclub_device : public md_std_rom_device +{ +public: + // construction/destruction + md_rom_cjmjclub_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // reading and writing + virtual DECLARE_READ16_MEMBER(read) override; +}; + // ======================> md_rom_pokea_device class md_rom_pokea_device : public md_std_rom_device @@ -585,6 +597,7 @@ extern const device_type MD_ROM_LION2; extern const device_type MD_ROM_LION3; extern const device_type MD_ROM_MCPIR; extern const device_type MD_ROM_MJLOV; +extern const device_type MD_ROM_CJMJCLUB; extern const device_type MD_ROM_POKEA; extern const device_type MD_ROM_POKESTAD; extern const device_type MD_ROM_REALTEC; -- cgit v1.2.3