diff options
Diffstat (limited to 'src/mame/includes/goldstar.h')
-rw-r--r-- | src/mame/includes/goldstar.h | 71 |
1 files changed, 44 insertions, 27 deletions
diff --git a/src/mame/includes/goldstar.h b/src/mame/includes/goldstar.h index 815b95c9920..d8851fd70b8 100644 --- a/src/mame/includes/goldstar.h +++ b/src/mame/includes/goldstar.h @@ -1,8 +1,8 @@ class goldstar_state : public driver_device { public: - goldstar_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), + goldstar_state(const machine_config &mconfig, device_type type, const char *tag) : + driver_device(mconfig, type, tag), m_fg_vidram(*this, "fg_vidram"), m_fg_atrram(*this, "fg_atrram"), m_bg_vidram(*this, "bg_vidram"), @@ -37,8 +37,6 @@ public: optional_shared_ptr<UINT8> m_reel3_scroll; - UINT8 m_unkch_vidreg; - tilemap_t *m_reel1_tilemap; tilemap_t *m_reel2_tilemap; tilemap_t *m_reel3_tilemap; @@ -50,19 +48,16 @@ public: UINT8 m_cmaster_girl_pal; UINT8 m_cm_enable_reg; UINT8 m_cm_girl_scroll; - UINT8 m_lucky8_nmi_enable; int m_tile_bank; DECLARE_WRITE8_MEMBER(protection_w); DECLARE_READ8_MEMBER(protection_r); + DECLARE_WRITE8_MEMBER(lucky8_outport_w); DECLARE_WRITE8_MEMBER(ncb3_port81_w); DECLARE_WRITE8_MEMBER(goldstar_lamps_w); DECLARE_WRITE8_MEMBER(cb3_lamps_w); DECLARE_WRITE8_MEMBER(cm_outport1_w); DECLARE_WRITE8_MEMBER(pkrmast_lamps_w); - DECLARE_WRITE8_MEMBER(lucky8_outport_w); - DECLARE_WRITE8_MEMBER(magodds_outb850_w); - DECLARE_WRITE8_MEMBER(magodds_outb860_w); DECLARE_WRITE8_MEMBER(ladylinr_outport_w); DECLARE_READ8_MEMBER(fixedvalb4_r); DECLARE_READ8_MEMBER(fixedvala8_r); @@ -92,16 +87,12 @@ public: DECLARE_WRITE8_MEMBER(goldstar_reel3_ram_w); DECLARE_WRITE8_MEMBER(goldstar_fa00_w); DECLARE_WRITE8_MEMBER(cm_background_col_w); - DECLARE_WRITE8_MEMBER(system_outputa_w); - DECLARE_WRITE8_MEMBER(system_outputb_w); - DECLARE_WRITE8_MEMBER(system_outputc_w); DECLARE_WRITE8_MEMBER(ay8910_outputa_w); DECLARE_WRITE8_MEMBER(ay8910_outputb_w); DECLARE_DRIVER_INIT(goldstar); DECLARE_DRIVER_INIT(cmast91); DECLARE_DRIVER_INIT(nfb96_dk); DECLARE_DRIVER_INIT(cm); - DECLARE_DRIVER_INIT(lucky8a); DECLARE_DRIVER_INIT(nfb96sea); DECLARE_DRIVER_INIT(schery97a); DECLARE_DRIVER_INIT(rp35); @@ -116,7 +107,6 @@ public: DECLARE_DRIVER_INIT(po33); DECLARE_DRIVER_INIT(match133); DECLARE_DRIVER_INIT(rp36c3); - DECLARE_DRIVER_INIT(magoddsc); DECLARE_DRIVER_INIT(nfb96_c1); DECLARE_DRIVER_INIT(fb2010); DECLARE_DRIVER_INIT(super9); @@ -131,15 +121,9 @@ public: DECLARE_VIDEO_START(cherrym); DECLARE_PALETTE_INIT(cmast91); DECLARE_PALETTE_INIT(lucky8); - DECLARE_VIDEO_START(bingowng); - DECLARE_VIDEO_START(magical); - DECLARE_PALETTE_INIT(magodds); UINT32 screen_update_goldstar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); UINT32 screen_update_cmast91(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - UINT32 screen_update_bingowng(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - UINT32 screen_update_magical(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); UINT32 screen_update_amcoe1a(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(lucky8_irq); void do_blockswaps(UINT8* ROM); void dump_to_file( UINT8* ROM); required_device<cpu_device> m_maincpu; @@ -148,11 +132,42 @@ public: }; +class wingco_state : public goldstar_state +{ +public: + wingco_state(const machine_config &mconfig, device_type type, const char *tag) : + goldstar_state(mconfig, type, tag) + { + } + + DECLARE_WRITE8_MEMBER(magodds_outb850_w); + DECLARE_WRITE8_MEMBER(magodds_outb860_w); + DECLARE_WRITE8_MEMBER(system_outputa_w); + DECLARE_WRITE8_MEMBER(system_outputb_w); + DECLARE_WRITE8_MEMBER(system_outputc_w); + + DECLARE_DRIVER_INIT(lucky8a); + DECLARE_DRIVER_INIT(magoddsc); + + DECLARE_VIDEO_START(bingowng); + DECLARE_VIDEO_START(magical); + DECLARE_PALETTE_INIT(magodds); + UINT32 screen_update_bingowng(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + UINT32 screen_update_magical(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + + INTERRUPT_GEN_MEMBER(masked_irq); + +private: + UINT8 m_nmi_enable; + UINT8 m_vidreg; +}; + + class cb3_state : public goldstar_state { public: - cb3_state(const machine_config &mconfig, device_type type, const char *tag) - : goldstar_state(mconfig, type, tag) + cb3_state(const machine_config &mconfig, device_type type, const char *tag) : + goldstar_state(mconfig, type, tag) { } @@ -168,8 +183,8 @@ protected: class chrygld_state : public goldstar_state { public: - chrygld_state(const machine_config &mconfig, device_type type, const char *tag) - : goldstar_state(mconfig, type, tag) + chrygld_state(const machine_config &mconfig, device_type type, const char *tag) : + goldstar_state(mconfig, type, tag) { } @@ -184,8 +199,8 @@ protected: class sangho_state : public goldstar_state { public: - sangho_state(const machine_config &mconfig, device_type type, const char *tag) - : goldstar_state(mconfig, type, tag), + sangho_state(const machine_config &mconfig, device_type type, const char *tag) : + goldstar_state(mconfig, type, tag), m_reel1_attrram(*this, "reel1_attrram"), m_reel2_attrram(*this, "reel2_attrram"), m_reel3_attrram(*this, "reel3_attrram") @@ -225,8 +240,8 @@ private: class unkch_state : public goldstar_state { public: - unkch_state(const machine_config &mconfig, device_type type, const char *tag) - : goldstar_state(mconfig, type, tag), + unkch_state(const machine_config &mconfig, device_type type, const char *tag) : + goldstar_state(mconfig, type, tag), m_reel1_attrram(*this, "reel1_attrram"), m_reel2_attrram(*this, "reel2_attrram"), m_reel3_attrram(*this, "reel3_attrram") @@ -260,4 +275,6 @@ private: required_shared_ptr<UINT8> m_reel1_attrram; required_shared_ptr<UINT8> m_reel2_attrram; required_shared_ptr<UINT8> m_reel3_attrram; + + UINT8 m_vidreg; }; |