summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/megadriv_rad.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/megadriv_rad.h')
-rw-r--r--src/mame/includes/megadriv_rad.h48
1 files changed, 36 insertions, 12 deletions
diff --git a/src/mame/includes/megadriv_rad.h b/src/mame/includes/megadriv_rad.h
index 9dd0e0860f7..f931faea31b 100644
--- a/src/mame/includes/megadriv_rad.h
+++ b/src/mame/includes/megadriv_rad.h
@@ -13,25 +13,49 @@ public:
m_rom(*this, "maincpu")
{}
- void init_megadriv_radica_6button_pal();
- void init_megadriv_radica_6button_ntsc();
-
- DECLARE_MACHINE_START(megadriv_radica_6button);
- DECLARE_MACHINE_START(megadriv_radica_3button);
- DECLARE_MACHINE_RESET(megadriv_radica);
uint16_t read(offs_t offset);
uint16_t read_a13(offs_t offset);
- void megadriv_radica_6button_ntsc(machine_config &config);
- void megadriv_radica_6button_pal(machine_config &config);
- void megadriv_radica_3button_ntsc(machine_config &config);
- void megadriv_radica_3button_pal(machine_config &config);
-
void megadriv_radica_map(address_map &map);
-private:
+
+protected:
int m_bank;
+
+private:
required_region_ptr<uint16_t> m_rom;
};
+class megadriv_radica_3button_state : public megadriv_radica_state
+{
+public:
+ megadriv_radica_3button_state(const machine_config& mconfig, device_type type, const char* tag)
+ : megadriv_radica_state(mconfig, type, tag)
+ {}
+public:
+ void megadriv_radica_3button_ntsc(machine_config &config);
+ void megadriv_radica_3button_pal(machine_config &config);
+
+protected:
+ virtual void machine_start() override;
+ virtual void machine_reset() override;
+};
+
+class megadriv_radica_6button_state : public megadriv_radica_3button_state
+{
+public:
+ void megadriv_radica_6button_ntsc(machine_config &config);
+ void megadriv_radica_6button_pal(machine_config &config);
+
+ void init_megadriv_radica_6button_pal();
+ void init_megadriv_radica_6button_ntsc();
+
+public:
+ megadriv_radica_6button_state(const machine_config& mconfig, device_type type, const char* tag)
+ : megadriv_radica_3button_state(mconfig, type, tag)
+ {}
+ virtual void machine_start() override;
+};
+
+
#endif // MAME_INCLUDES_MEGADRIV_RAD_H