diff options
Diffstat (limited to 'src/devices/bus/neogeo/boot_misc.h')
-rw-r--r-- | src/devices/bus/neogeo/boot_misc.h | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/src/devices/bus/neogeo/boot_misc.h b/src/devices/bus/neogeo/boot_misc.h index 4943f64583b..6abf1dd5c6d 100644 --- a/src/devices/bus/neogeo/boot_misc.h +++ b/src/devices/bus/neogeo/boot_misc.h @@ -25,10 +25,10 @@ protected: neogeo_bootleg_cart_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint16_t clock); // device-level overrides - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; required_device<neoboot_prot_device> m_prot; }; @@ -153,7 +153,7 @@ public: virtual int get_fixed_bank_type() override { return 0; } protected: - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; private: required_device<cmc_prot_device> m_cmc_prot; @@ -161,6 +161,7 @@ private: DECLARE_DEVICE_TYPE(NEOGEO_MSLUG3B6_CART, neogeo_mslug3b6_cart_device) + /************************************************* ms5plus **************************************************/ @@ -172,11 +173,11 @@ public: virtual void decrypt_all(DECRYPT_ALL_PARAMS) override; virtual int get_fixed_bank_type() override { return 1; } - virtual DECLARE_READ16_MEMBER(protection_r) override { return m_prot->mslug5p_prot_r(space, offset, mem_mask); } + virtual uint16_t protection_r(address_space &space, offs_t offset) override { return m_prot->mslug5p_prot_r(); } virtual uint32_t get_bank_base(uint16_t sel) override { return m_prot->mslug5p_bank_base(sel); } protected: - virtual void device_add_mconfig(machine_config &config) override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; private: required_device<cmc_prot_device> m_cmc_prot; @@ -187,6 +188,21 @@ DECLARE_DEVICE_TYPE(NEOGEO_MS5PLUS_CART, neogeo_ms5plus_cart_device) /************************************************* + mslug5b + **************************************************/ + +class neogeo_mslug5b_cart_device : public neogeo_bootleg_cart_device +{ +public: + neogeo_mslug5b_cart_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + virtual void decrypt_all(DECRYPT_ALL_PARAMS) override; + virtual int get_fixed_bank_type() override { return 0; } +}; + +DECLARE_DEVICE_TYPE(NEOGEO_MSLUG5B_CART, neogeo_mslug5b_cart_device) + + +/************************************************* kog **************************************************/ @@ -195,9 +211,9 @@ class neogeo_kog_cart_device : public neogeo_bootleg_cart_device public: neogeo_kog_cart_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - virtual ioport_constructor device_input_ports() const override; + virtual ioport_constructor device_input_ports() const override ATTR_COLD; - virtual DECLARE_READ16_MEMBER(protection_r) override; + virtual uint16_t protection_r(address_space &space, offs_t offset) override; virtual void decrypt_all(DECRYPT_ALL_PARAMS) override; virtual int get_fixed_bank_type() override { return 0; } |