1 // license:BSD-3-Clause 2 // copyright-holders:David Haywood 3 4 #ifndef MAME_INCLUDES_MEGADRIV_RAD_H 5 #define MAME_INCLUDES_MEGADRIV_RAD_H 6 7 class megadriv_radica_state : public md_base_state 8 { 9 public: megadriv_radica_state(const machine_config & mconfig,device_type type,const char * tag)10 megadriv_radica_state(const machine_config &mconfig, device_type type, const char *tag) 11 : md_base_state(mconfig, type, tag), 12 m_bank(0), 13 m_rom(*this, "maincpu") 14 {} 15 16 void init_megadriv_radica_6button_pal(); 17 void init_megadriv_radica_6button_ntsc(); 18 19 DECLARE_MACHINE_START(megadriv_radica_6button); 20 DECLARE_MACHINE_START(megadriv_radica_3button); 21 DECLARE_MACHINE_RESET(megadriv_radica); 22 23 uint16_t read(offs_t offset); 24 uint16_t read_a13(offs_t offset); 25 26 void megadriv_radica_6button_ntsc(machine_config &config); 27 void megadriv_radica_6button_pal(machine_config &config); 28 void megadriv_radica_3button_ntsc(machine_config &config); 29 void megadriv_radica_3button_pal(machine_config &config); 30 31 void megadriv_radica_map(address_map &map); 32 private: 33 int m_bank; 34 required_region_ptr<uint16_t> m_rom; 35 }; 36 37 #endif // MAME_INCLUDES_MEGADRIV_RAD_H 38