From 8351c97612f9b4a1fe6d1716ba0803fa90a8c3e5 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Sat, 17 Feb 2018 15:59:57 +0100 Subject: Decapped and dumped pic16f84 for Shizhan Ding Huang Maque (Version 4.1) [Team Caps0ff, EdHunter] --- src/mame/drivers/rbmk.cpp | 45 ++++++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/src/mame/drivers/rbmk.cpp b/src/mame/drivers/rbmk.cpp index d3bc3b2deb6..3915478828a 100644 --- a/src/mame/drivers/rbmk.cpp +++ b/src/mame/drivers/rbmk.cpp @@ -78,25 +78,9 @@ public: m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette") { } - DECLARE_READ16_MEMBER(unk_r); - DECLARE_READ16_MEMBER(dip_mux_r); - DECLARE_WRITE16_MEMBER(dip_mux_w); - DECLARE_WRITE16_MEMBER(unk_w); - DECLARE_WRITE16_MEMBER(tilebank_w); - DECLARE_READ8_MEMBER(mcu_io_r); - DECLARE_WRITE8_MEMBER(mcu_io_w); - DECLARE_WRITE8_MEMBER(mcu_io_mux_w); - DECLARE_WRITE16_MEMBER(eeprom_w); - - uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(mcu_irq); - void rbmk(machine_config &config); void rbspm(machine_config &config); - void mcu_io(address_map &map); - void mcu_mem(address_map &map); - void rbmk_mem(address_map &map); - void rbspm_mem(address_map &map); + protected: virtual void video_start() override; @@ -113,6 +97,24 @@ private: uint16_t m_tilebank; uint8_t m_mux_data; uint16_t m_dip_mux; + + void mcu_io(address_map &map); + void mcu_mem(address_map &map); + void rbmk_mem(address_map &map); + void rbspm_mem(address_map &map); + + DECLARE_READ16_MEMBER(unk_r); + DECLARE_READ16_MEMBER(dip_mux_r); + DECLARE_WRITE16_MEMBER(dip_mux_w); + DECLARE_WRITE16_MEMBER(unk_w); + DECLARE_WRITE16_MEMBER(tilebank_w); + DECLARE_READ8_MEMBER(mcu_io_r); + DECLARE_WRITE8_MEMBER(mcu_io_w); + DECLARE_WRITE8_MEMBER(mcu_io_mux_w); + DECLARE_WRITE16_MEMBER(eeprom_w); + + uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + INTERRUPT_GEN_MEMBER(mcu_irq); }; @@ -607,7 +609,7 @@ MACHINE_CONFIG_START(rbmk_state::rbspm) MCFG_CPU_MODIFY("mcu") MCFG_DEVICE_DISABLE() // until decapped - // PIC16F84 if decapped + // PIC16F84 but no CPU core available MACHINE_CONFIG_END // 实战麻将王 (Shízhàn Májiàng Wáng) @@ -646,10 +648,11 @@ ROM_START( rbspm ) ROM_LOAD( "MJ-DFMJ-P1.bin", 0x00000, 0x80000, CRC(8f81f154) SHA1(50a9a373dec96b0265907f053d068d636bdabd61) ) ROM_REGION( 0x1000, "mcu", 0 ) /* protected MCU */ - ROM_LOAD( "89c51.bin", 0x0, 0x1000, NO_DUMP ) // reads as all 0xff + ROM_LOAD( "89c51.bin", 0x0000, 0x1000, NO_DUMP ) // reads as all 0xff - ROM_REGION( 0x1000, "pic", 0 ) /* pic was populated on this board */ - ROM_LOAD( "pic16f84.bin", 0x0, 0x1000, NO_DUMP ) + ROM_REGION( 0x880, "pic", 0 ) /* pic was populated on this board */ + ROM_LOAD( "c016_pic16f84_code.bin", 0x000, 0x800, CRC(1eb5cd2b) SHA1(9e747235e39eaea337f9325fa55fbfec1c03168d) ) + ROM_LOAD( "c016_pic16f84_data.bin", 0x800, 0x080, CRC(ee882e11) SHA1(aa5852a95a89b17270bb6f315dfa036f9f8155cf) ) ROM_REGION( 0x20000, "user1", 0 ) /* ??? mcu data / code */ ROM_LOAD( "MJ-DFMJ-2.2-XX.bin", 0x00000, 0x20000, CRC(58a9eea2) SHA1(1a251e9b049bc8dafbc0728b3d876fdd5a1c8dd9) ) -- cgit v1.2.3