diff options
Diffstat (limited to 'src/mame/includes/mw8080bw.h')
-rw-r--r-- | src/mame/includes/mw8080bw.h | 173 |
1 files changed, 92 insertions, 81 deletions
diff --git a/src/mame/includes/mw8080bw.h b/src/mame/includes/mw8080bw.h index 75026d596c5..8b0e1c37750 100644 --- a/src/mame/includes/mw8080bw.h +++ b/src/mame/includes/mw8080bw.h @@ -59,6 +59,76 @@ public: m_screen(*this, "screen") { } + void blueshrk(machine_config &config); + void blueshrk_audio(machine_config &config); + void boothill(machine_config &config); + void boothill_audio(machine_config &config); + void bowler(machine_config &config); + void bowler_audio(machine_config &config); + void checkmat(machine_config &config); + void checkmat_audio(machine_config &config); + void clowns(machine_config &config); + void clowns_audio(machine_config &config); + void desertgu(machine_config &config); + void desertgu_audio(machine_config &config); + void dogpatch(machine_config &config); + void dogpatch_audio(machine_config &config); + void dplay(machine_config &config); + void dplay_audio(machine_config &config); + void gmissile(machine_config &config); + void gmissile_audio(machine_config &config); + void gunfight(machine_config &config); + void gunfight_audio(machine_config &config); + void invad2ct(machine_config &config); + void invad2ct_audio(machine_config &config); + void invaders(machine_config &config); + void invaders_audio(machine_config &config); + void invaders_samples_audio(machine_config &config); + void m4(machine_config &config); + void m4_audio(machine_config &config); + void maze(machine_config &config); + void maze_audio(machine_config &config); + void mw8080bw_root(machine_config &config); + void phantom2(machine_config &config); + void phantom2_audio(machine_config &config); + void seawolf(machine_config &config); + void seawolf_audio(machine_config &config); + void shuffle(machine_config &config); + void shuffle_audio(machine_config &config); + void spacwalk(machine_config &config); + void spacwalk_audio(machine_config &config); + void spcenctr(machine_config &config); + void spcenctr_audio(machine_config &config); + void tornbase(machine_config &config); + void tornbase_audio(machine_config &config); + void zzzap(machine_config &config); + void zzzap_audio(machine_config &config); + + + DECLARE_CUSTOM_INPUT_MEMBER(seawolf_erase_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(tornbase_hit_left_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(tornbase_hit_right_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(tornbase_pitch_left_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(tornbase_pitch_right_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(tornbase_score_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(desertgu_gun_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(desertgu_dip_sw_0_1_r); + DECLARE_CUSTOM_INPUT_MEMBER(dplay_pitch_left_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(dplay_pitch_right_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(clowns_controller_r); + DECLARE_CUSTOM_INPUT_MEMBER(invaders_coin_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(invaders_sw6_sw7_r); + DECLARE_CUSTOM_INPUT_MEMBER(invaders_sw5_r); + DECLARE_CUSTOM_INPUT_MEMBER(blueshrk_coin_input_r); + DECLARE_CUSTOM_INPUT_MEMBER(invaders_in0_control_r); + DECLARE_CUSTOM_INPUT_MEMBER(invaders_in1_control_r); + DECLARE_CUSTOM_INPUT_MEMBER(invaders_in2_control_r); + + DECLARE_MACHINE_START(mw8080bw); + DECLARE_MACHINE_RESET(mw8080bw); + +protected: + /* device/memory pointers */ required_device<cpu_device> m_maincpu; optional_device<mb14241_device> m_mb14241; @@ -68,6 +138,15 @@ public: optional_shared_ptr<uint8_t> m_colorram2; optional_device<discrete_device> m_discrete; + /* other devices */ + optional_device<samples_device> m_samples; + optional_device<samples_device> m_samples1; + optional_device<samples_device> m_samples2; + optional_device<sn76477_device> m_sn1; + optional_device<sn76477_device> m_sn2; + optional_device<sn76477_device> m_sn; + required_device<screen_device> m_screen; + /* sound-related */ uint8_t m_port_1_last; uint8_t m_port_2_last; @@ -76,8 +155,20 @@ public: uint8_t m_port_3_last_extra; /* misc game specific */ - uint16_t m_phantom2_cloud_counter; uint8_t m_flip_screen; + + DECLARE_WRITE8_MEMBER(invaders_audio_1_w); + DECLARE_WRITE8_MEMBER(invaders_audio_2_w); + + std::unique_ptr<uint8_t[]> m_scattered_colorram; + std::unique_ptr<uint8_t[]> m_scattered_colorram2; + + uint32_t screen_update_invaders(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); + uint32_t screen_update_mw8080bw(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); + +private: + /* misc game specific */ + uint16_t m_phantom2_cloud_counter; uint8_t m_rev_shift_res; uint8_t m_maze_tone_timing_state; /* output of IC C1, pin 5 */ uint8_t m_desertgun_controller_select; @@ -90,22 +181,10 @@ public: uint8_t m_spcenctr_bright_control; uint8_t m_spcenctr_brightness; - std::unique_ptr<uint8_t[]> m_scattered_colorram; - std::unique_ptr<uint8_t[]> m_scattered_colorram2; - /* timers */ emu_timer *m_interrupt_timer; emu_timer *m_maze_tone_timer; - /* other devices */ - optional_device<samples_device> m_samples; - optional_device<samples_device> m_samples1; - optional_device<samples_device> m_samples2; - optional_device<sn76477_device> m_sn1; - optional_device<sn76477_device> m_sn2; - optional_device<sn76477_device> m_sn; - required_device<screen_device> m_screen; - DECLARE_READ8_MEMBER(mw8080bw_shift_result_rev_r); DECLARE_READ8_MEMBER(mw8080bw_reversable_shift_result_r); DECLARE_WRITE8_MEMBER(mw8080bw_reversable_shift_count_w); @@ -120,24 +199,6 @@ public: DECLARE_READ8_MEMBER(bowler_shift_result_r); DECLARE_WRITE8_MEMBER(bowler_lights_1_w); DECLARE_WRITE8_MEMBER(bowler_lights_2_w); - DECLARE_CUSTOM_INPUT_MEMBER(seawolf_erase_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(tornbase_hit_left_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(tornbase_hit_right_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(tornbase_pitch_left_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(tornbase_pitch_right_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(tornbase_score_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(desertgu_gun_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(desertgu_dip_sw_0_1_r); - DECLARE_CUSTOM_INPUT_MEMBER(dplay_pitch_left_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(dplay_pitch_right_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(clowns_controller_r); - DECLARE_CUSTOM_INPUT_MEMBER(invaders_coin_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(invaders_sw6_sw7_r); - DECLARE_CUSTOM_INPUT_MEMBER(invaders_sw5_r); - DECLARE_CUSTOM_INPUT_MEMBER(blueshrk_coin_input_r); - DECLARE_CUSTOM_INPUT_MEMBER(invaders_in0_control_r); - DECLARE_CUSTOM_INPUT_MEMBER(invaders_in1_control_r); - DECLARE_CUSTOM_INPUT_MEMBER(invaders_in2_control_r); DECLARE_WRITE8_MEMBER(seawolf_audio_w); DECLARE_WRITE8_MEMBER(gunfight_audio_w); DECLARE_WRITE8_MEMBER(zzzap_audio_1_w); @@ -155,8 +216,6 @@ public: DECLARE_WRITE8_MEMBER(bowler_audio_4_w); DECLARE_WRITE8_MEMBER(bowler_audio_5_w); DECLARE_WRITE8_MEMBER(bowler_audio_6_w); - DECLARE_MACHINE_START(mw8080bw); - DECLARE_MACHINE_RESET(mw8080bw); DECLARE_MACHINE_START(maze); DECLARE_MACHINE_START(boothill); DECLARE_MACHINE_START(desertgu); @@ -167,10 +226,8 @@ public: DECLARE_MACHINE_START(phantom2); DECLARE_MACHINE_START(invaders); DECLARE_SOUND_START(samples); - uint32_t screen_update_mw8080bw(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); uint32_t screen_update_spcenctr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); uint32_t screen_update_phantom2(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); - uint32_t screen_update_invaders(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); DECLARE_WRITE_LINE_MEMBER(screen_vblank_phantom2); TIMER_CALLBACK_MEMBER(maze_tone_timing_timer_callback); TIMER_CALLBACK_MEMBER(mw8080bw_interrupt_callback); @@ -193,8 +250,6 @@ public: DECLARE_WRITE8_MEMBER(spcenctr_audio_2_w); DECLARE_WRITE8_MEMBER(spcenctr_audio_3_w); DECLARE_WRITE8_MEMBER(bowler_audio_1_w); - DECLARE_WRITE8_MEMBER(invaders_audio_1_w); - DECLARE_WRITE8_MEMBER(invaders_audio_2_w); DECLARE_WRITE8_MEMBER(blueshrk_audio_w); DECLARE_WRITE8_MEMBER(invad2ct_audio_1_w); DECLARE_WRITE8_MEMBER(invad2ct_audio_2_w); @@ -208,50 +263,6 @@ public: void mw8080bw_start_interrupt_timer( ); uint8_t tornbase_get_cabinet_type(); int invaders_is_cabinet_cocktail(); - void blueshrk(machine_config &config); - void blueshrk_audio(machine_config &config); - void boothill(machine_config &config); - void boothill_audio(machine_config &config); - void bowler(machine_config &config); - void bowler_audio(machine_config &config); - void checkmat(machine_config &config); - void checkmat_audio(machine_config &config); - void clowns(machine_config &config); - void clowns_audio(machine_config &config); - void desertgu(machine_config &config); - void desertgu_audio(machine_config &config); - void dogpatch(machine_config &config); - void dogpatch_audio(machine_config &config); - void dplay(machine_config &config); - void dplay_audio(machine_config &config); - void gmissile(machine_config &config); - void gmissile_audio(machine_config &config); - void gunfight(machine_config &config); - void gunfight_audio(machine_config &config); - void invad2ct(machine_config &config); - void invad2ct_audio(machine_config &config); - void invaders(machine_config &config); - void invaders_audio(machine_config &config); - void invaders_samples_audio(machine_config &config); - void m4(machine_config &config); - void m4_audio(machine_config &config); - void maze(machine_config &config); - void maze_audio(machine_config &config); - void mw8080bw_root(machine_config &config); - void phantom2(machine_config &config); - void phantom2_audio(machine_config &config); - void seawolf(machine_config &config); - void seawolf_audio(machine_config &config); - void shuffle(machine_config &config); - void shuffle_audio(machine_config &config); - void spacwalk(machine_config &config); - void spacwalk_audio(machine_config &config); - void spcenctr(machine_config &config); - void spcenctr_audio(machine_config &config); - void tornbase(machine_config &config); - void tornbase_audio(machine_config &config); - void zzzap(machine_config &config); - void zzzap_audio(machine_config &config); void blueshrk_io_map(address_map &map); void boothill_io_map(address_map &map); void bowler_io_map(address_map &map); |