diff options
Diffstat (limited to 'src/mame/includes/tumbleb.h')
-rw-r--r-- | src/mame/includes/tumbleb.h | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/src/mame/includes/tumbleb.h b/src/mame/includes/tumbleb.h index 54263124dae..cc4f15aee52 100644 --- a/src/mame/includes/tumbleb.h +++ b/src/mame/includes/tumbleb.h @@ -47,7 +47,6 @@ public: void chokchok(machine_config &config); void cookbib_mcu(machine_config &config); void jumpkids(machine_config &config); - void funkyjetb(machine_config &config); void init_dquizgo(); void init_jumpkids(); @@ -64,7 +63,7 @@ public: void init_magipur(); void init_carket(); -private: +protected: /* memory pointers */ optional_shared_ptr<uint16_t> m_mainram; required_shared_ptr<uint16_t> m_spriteram; @@ -177,7 +176,33 @@ private: void suprtrio_sound_map(address_map &map); void tumblepopb_main_map(address_map &map); void tumblepopba_main_map(address_map &map); +}; + +class tumbleb_pic_state : public tumbleb_state +{ +public: + tumbleb_pic_state(const machine_config &mconfig, device_type type, const char *tag) : + tumbleb_state(mconfig, type, tag), + m_okibank(*this, "okibank") + { } + + void funkyjetb(machine_config &config); + +protected: + virtual void driver_start() override; + +private: + void oki_bank_w(uint8_t data); + uint8_t pic_data_r(); + void pic_data_w(uint8_t data); + void pic_ctrl_w(uint8_t data); + void funkyjetb_map(address_map &map); + void funkyjetb_oki_map(address_map &map); + + required_memory_bank m_okibank; + + uint8_t m_pic_data; }; #endif // MAME_INCLUDES_TUMBLEB_H |