summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/taito_f2.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/taito_f2.h')
-rw-r--r--src/mame/includes/taito_f2.h292
1 files changed, 0 insertions, 292 deletions
diff --git a/src/mame/includes/taito_f2.h b/src/mame/includes/taito_f2.h
deleted file mode 100644
index 750f9d2bec6..00000000000
--- a/src/mame/includes/taito_f2.h
+++ /dev/null
@@ -1,292 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:David Graves, Bryan McPhail, Brad Oliver, Andrew Prime, Brian Troha, Nicola Salmoria
-#ifndef MAME_INCLUDES_TAITO_F2_H
-#define MAME_INCLUDES_TAITO_F2_H
-
-#pragma once
-
-#include "machine/taitocchip.h"
-#include "machine/taitoio.h"
-
-#include "sound/okim6295.h"
-#include "video/tc0100scn.h"
-#include "video/tc0110pcr.h"
-#include "video/tc0280grd.h"
-#include "video/tc0360pri.h"
-#include "video/tc0480scp.h"
-#include "machine/timer.h"
-#include "emupal.h"
-#include "screen.h"
-
-class taitof2_state : public driver_device
-{
-public:
- taitof2_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag)
- , m_sprite_extension(*this, "sprite_ext")
- , m_spriteram(*this, "spriteram")
- , m_maincpu(*this, "maincpu")
- , m_audiocpu(*this, "audiocpu")
- , m_cchip(*this, "cchip")
- , m_cchip_irq_clear(*this, "cchip_irq_clear")
- , m_oki(*this, "oki")
- , m_tc0100scn(*this, "tc0100scn_%u", 1U)
- , m_tc0110pcr(*this, "tc0110pcr")
- , m_tc0360pri(*this, "tc0360pri")
- , m_tc0280grd(*this, "tc0280grd")
- , m_tc0430grw(*this, "tc0430grw")
- , m_tc0480scp(*this, "tc0480scp")
- , m_tc0220ioc(*this, "tc0220ioc")
- , m_tc0510nio(*this, "tc0510nio")
- , m_gfxdecode(*this, "gfxdecode")
- , m_screen(*this, "screen")
- , m_palette(*this, "palette")
- , m_io_paddle(*this, "PADDLE%u", 1U)
- , m_io_in(*this, "IN%u", 0U)
- , m_io_dswa(*this, "DSWA")
- , m_io_dswb(*this, "DSWB")
- , m_audiobank(*this, "audiobank")
- , m_okibank(*this, "okibank")
- { }
-
-
- void taito_f2_tc0220ioc(machine_config &config);
- void taito_f2_tc0510nio(machine_config &config);
- void taito_f2_te7750(machine_config &config);
- void taito_f2_tc0110pcr(machine_config &config);
- void taito_f2(machine_config &config);
- void thundfox(machine_config &config);
- void dinorex(machine_config &config);
- void mjnquest(machine_config &config);
- void cameltrya(machine_config &config);
- void koshien(machine_config &config);
- void qzchikyu(machine_config &config);
- void metalb(machine_config &config);
- void yesnoj(machine_config &config);
- void quizhq(machine_config &config);
- void dondokod(machine_config &config);
- void qcrayon2(machine_config &config);
- void qtorimon(machine_config &config);
- void driftout(machine_config &config);
- void solfigtr(machine_config &config);
- void qzquest(machine_config &config);
- void liquidk(machine_config &config);
- void deadconx(machine_config &config);
- void ssi(machine_config &config);
- void pulirula(machine_config &config);
- void growl(machine_config &config);
- void ninjak(machine_config &config);
- void footchmp(machine_config &config);
- void cameltry(machine_config &config);
- void finalb(machine_config &config);
- void hthero(machine_config &config);
- void driveout(machine_config &config);
- void gunfront(machine_config &config);
- void qcrayon(machine_config &config);
- void megab(machine_config &config);
- void qjinsei(machine_config &config);
- void deadconxj(machine_config &config);
- void footchmpbl(machine_config &config);
- void yuyugogo(machine_config &config);
-
- void init_driveout();
- void init_cameltry();
- void init_mjnquest();
- void init_finalb();
-
-protected:
- virtual void machine_start() override;
- virtual void video_start() override;
-
- enum
- {
- TIMER_INTERRUPT6
- };
-
- struct f2_tempsprite
- {
- u32 code, color;
- bool flipx, flipy;
- int x, y;
- int zoomx, zoomy;
- u32 primask;
- };
- /* memory pointers */
- optional_shared_ptr<u16> m_sprite_extension;
- required_shared_ptr<u16> m_spriteram;
- std::unique_ptr<u16[]> m_spriteram_buffered;
- std::unique_ptr<u16[]> m_spriteram_delayed;
-
- /* video-related */
- std::unique_ptr<struct f2_tempsprite[]> m_spritelist;
- int m_sprite_type;
-
- u16 m_spritebank[8];
-// u16 m_spritebank_eof[8];
- u16 m_spritebank_buffered[8];
-
- bool m_sprites_disabled;
- s32 m_sprites_active_area;
- s32 m_sprites_master_scrollx;
- s32 m_sprites_master_scrolly;
- /* remember flip status over frames because driftout can fail to set it */
- bool m_sprites_flipscreen;
-
- /* On the left hand screen edge (assuming horiz screen, no
- screenflip: in screenflip it is the right hand edge etc.)
- there may be 0-3 unwanted pixels in both tilemaps *and*
- sprites. To erase this we use f2_hide_pixels (0 to +3). */
-
- s32 m_hide_pixels;
- s32 m_flip_hide_pixels; /* Different in some games */
-
- s32 m_pivot_xdisp; /* Needed in games with a pivot layer */
- s32 m_pivot_ydisp;
-
- s32 m_game;
-
- u8 m_tilepri[6]; // todo - move into taitoic.c
- u8 m_spritepri[6]; // todo - move into taitoic.c
- u8 m_spriteblendmode; // todo - move into taitoic.c
-
- int m_prepare_sprites;
- u8 m_gfxbank;
-
- /* misc */
- s32 m_mjnquest_input;
- int m_last[2];
- int m_nibble;
- s32 m_driveout_sound_latch;
- emu_timer *m_int6_timer;
-
- /* devices */
- required_device<cpu_device> m_maincpu;
- required_device<cpu_device> m_audiocpu;
- optional_device<taito_cchip_device> m_cchip;
- optional_device<timer_device> m_cchip_irq_clear;
- optional_device<okim6295_device> m_oki;
- optional_device_array<tc0100scn_device, 2> m_tc0100scn;
- optional_device<tc0110pcr_device> m_tc0110pcr;
- optional_device<tc0360pri_device> m_tc0360pri;
- optional_device<tc0280grd_device> m_tc0280grd;
- optional_device<tc0280grd_device> m_tc0430grw;
- optional_device<tc0480scp_device> m_tc0480scp;
- optional_device<tc0220ioc_device> m_tc0220ioc;
- optional_device<tc0510nio_device> m_tc0510nio;
- required_device<gfxdecode_device> m_gfxdecode;
- required_device<screen_device> m_screen;
- optional_device<palette_device> m_palette;
-
- optional_ioport_array<2> m_io_paddle;
- optional_ioport_array<7> m_io_in;
- optional_ioport m_io_dswa;
- optional_ioport m_io_dswb;
-
- optional_memory_bank m_audiobank;
- optional_memory_bank m_okibank;
-
- void coin_nibble_w(u8 data);
- void growl_coin_word_w(u8 data);
- void _4p_coin_word_w(u8 data);
- u16 cameltry_paddle_r(offs_t offset);
- u16 mjnquest_dsw_r(offs_t offset);
- u16 mjnquest_input_r();
- void mjnquest_inputselect_w(u16 data);
- void sound_bankswitch_w(u8 data);
- u8 driveout_sound_command_r();
- void oki_bank_w(u8 data);
- void driveout_sound_command_w(offs_t offset, u8 data);
- void sprite_extension_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void spritebank_w(offs_t offset, u16 data);
- void koshien_spritebank_w(u16 data);
- void cameltrya_porta_w(u8 data);
- void mjnquest_gfxbank_w(u8 data);
- TC0100SCN_CB_MEMBER(mjnquest_tmap_cb);
-
- DECLARE_VIDEO_START(dondokod);
- DECLARE_VIDEO_START(driftout);
- DECLARE_VIDEO_START(finalb);
- DECLARE_VIDEO_START(megab);
- DECLARE_VIDEO_START(thundfox);
- DECLARE_VIDEO_START(ssi);
- DECLARE_VIDEO_START(gunfront);
- DECLARE_VIDEO_START(growl);
- DECLARE_VIDEO_START(mjnquest);
- DECLARE_VIDEO_START(footchmp);
- DECLARE_VIDEO_START(hthero);
- DECLARE_VIDEO_START(koshien);
- DECLARE_VIDEO_START(yuyugogo);
- DECLARE_VIDEO_START(ninjak);
- DECLARE_VIDEO_START(solfigtr);
- DECLARE_VIDEO_START(pulirula);
- DECLARE_VIDEO_START(metalb);
- DECLARE_VIDEO_START(qzchikyu);
- DECLARE_VIDEO_START(yesnoj);
- DECLARE_VIDEO_START(deadconx);
- DECLARE_VIDEO_START(deadconxj);
- DECLARE_VIDEO_START(dinorex);
- DECLARE_VIDEO_START(quiz);
- u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_pri_roz(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_pri(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_thundfox(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_ssi(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_deadconx(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_yesnoj(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_metalb(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- DECLARE_WRITE_LINE_MEMBER(screen_vblank_no_buffer);
- DECLARE_WRITE_LINE_MEMBER(screen_vblank_partial_buffer_delayed);
- DECLARE_WRITE_LINE_MEMBER(screen_vblank_partial_buffer_delayed_thundfox);
- DECLARE_WRITE_LINE_MEMBER(screen_vblank_full_buffer_delayed);
- DECLARE_WRITE_LINE_MEMBER(screen_vblank_partial_buffer_delayed_qzchikyu);
- INTERRUPT_GEN_MEMBER(interrupt);
- INTERRUPT_GEN_MEMBER(megab_interrupt);
- TIMER_DEVICE_CALLBACK_MEMBER(cchip_irq_clear_cb);
- void core_vh_start(int sprite_type, int hide, int flip_hide);
- void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, u32 *primasks, int uses_tc360_mixer);
- void update_spritebanks();
- void handle_sprite_buffering();
- void update_sprites_active_area();
- void draw_roz_layer(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, u8 priority, u8 priority_mask = 0xff);
- void taito_f2_tc360_spritemixdraw(screen_device &screen, bitmap_ind16 &dest_bmp, const rectangle &clip, gfx_element *gfx,
- u32 code, u32 color, int flipx, int flipy, int sx, int sy, int scalex, int scaley);
-
- void cameltry_map(address_map &map);
- void cameltrya_map(address_map &map);
- void cameltrya_sound_map(address_map &map);
- void deadconx_map(address_map &map);
- void dinorex_map(address_map &map);
- void dondokod_map(address_map &map);
- void driftout_map(address_map &map);
- void driveout_map(address_map &map);
- void driveout_oki_map(address_map &map);
- void driveout_sound_map(address_map &map);
- void finalb_map(address_map &map);
- void footchmp_map(address_map &map);
- void growl_map(address_map &map);
- void gunfront_map(address_map &map);
- void koshien_map(address_map &map);
- void liquidk_map(address_map &map);
- void megab_map(address_map &map);
- void metalb_map(address_map &map);
- void mjnquest_map(address_map &map);
- void ninjak_map(address_map &map);
- void pulirula_map(address_map &map);
- void qcrayon2_map(address_map &map);
- void qcrayon_map(address_map &map);
- void qjinsei_map(address_map &map);
- void qtorimon_map(address_map &map);
- void quizhq_map(address_map &map);
- void qzchikyu_map(address_map &map);
- void qzquest_map(address_map &map);
- void solfigtr_map(address_map &map);
- void sound_map(address_map &map);
- void ssi_map(address_map &map);
- void thundfox_map(address_map &map);
- void yesnoj_map(address_map &map);
- void yuyugogo_map(address_map &map);
-
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
-};
-
-#endif // MAME_INCLUDES_TAITO_F2_H