diff options
author | Angelo Salese <angelosa@users.noreply.github.com> | 2022-05-23 15:53:17 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-23 15:53:17 +0200 |
commit | 641c55693bbbe35b8044d960ad5b65d65e322c23 (patch) | |
tree | 067352d2e775e223e9e32f4987fcac1b08994c65 /src/mame/includes | |
parent | 0c98b7e1d2fa884cf0d75e6283ae03d5e63dcc3f (diff) |
megadriv.xml: compatibility field cleanups, apply minor fixes (#9732) [Angelo Salese, 0kmg]
- megadriv.xml: fix booger ROM loading;
- megadriv.xml: fix wboy5 and turmamon EEPROM saving;
- megadriv.xml: add SRAM to shijie, fixes roster names;
- megadriv.xml: allow nba2k and nba2k5 to boot;
- megacd.cpp: remove gross hack, allow megacdj & megacd2j to boot again;
- jcart.cpp: fix P3 and P4 labels;
- megadriv.xml: add SRAM to fengshen;
- megadriv_acbl.cpp: make sonic3mb to boot, add basic protection sim;
Diffstat (limited to 'src/mame/includes')
-rw-r--r-- | src/mame/includes/megadriv_acbl.h | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/src/mame/includes/megadriv_acbl.h b/src/mame/includes/megadriv_acbl.h index 2f64b1ed890..49a296976e2 100644 --- a/src/mame/includes/megadriv_acbl.h +++ b/src/mame/includes/megadriv_acbl.h @@ -8,7 +8,7 @@ class md_boot_state : public md_base_state { public: md_boot_state(const machine_config &mconfig, device_type type, const char *tag) - : md_base_state(mconfig, type, tag) { m_protcount = 0;} + : md_base_state(mconfig, type, tag) { m_protcount = 0; } void megadrvb(machine_config &config); void md_bootleg(machine_config &config); @@ -28,7 +28,6 @@ public: void init_barekch(); void init_bk3ssrmb(); void init_sonic2mb(); - void init_sonic3mb(); void init_twinktmb(); void init_jparkmb(); void init_sbubsm(); @@ -40,7 +39,6 @@ private: uint16_t aladmdb_r(); uint16_t barek2mb_r(); uint16_t jparkmb_r(); - uint16_t sonic3mb_r(); uint16_t twinktmb_r(); uint16_t dsw_r(offs_t offset); uint16_t topshoot_200051_r(); @@ -60,6 +58,27 @@ private: int m_protcount; }; +class md_sonic3bl_state : public md_boot_state +{ +public: + md_sonic3bl_state(const machine_config &mconfig, device_type type, const char *tag) + : md_boot_state(mconfig, type, tag) + , m_in_coin(*this, "COIN") + , m_in_mcu(*this, "MCU") + { } + + void init_sonic3mb(); + +private: + required_ioport m_in_coin; + required_ioport m_in_mcu; + + void prot_w(u8 data); + uint16_t prot_r(); + + u8 m_prot_cmd = 0; +}; + class md_boot_6button_state : public md_boot_state { public: |