summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/m72.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/m72.h')
-rw-r--r--src/mame/includes/m72.h262
1 files changed, 0 insertions, 262 deletions
diff --git a/src/mame/includes/m72.h b/src/mame/includes/m72.h
deleted file mode 100644
index dd0aa0defbe..00000000000
--- a/src/mame/includes/m72.h
+++ /dev/null
@@ -1,262 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Nicola Salmoria
-/*************************************************************************
-
- Irem M72 hardware
-
-*************************************************************************/
-#ifndef MAME_INCLUDES_M72_H
-#define MAME_INCLUDES_M72_H
-
-#pragma once
-
-#include "audio/m72.h"
-#include "cpu/mcs51/mcs51.h"
-#include "machine/mb8421.h"
-#include "machine/pic8259.h"
-#include "machine/upd4701.h"
-#include "video/bufsprite.h"
-#include "sound/dac.h"
-#include "emupal.h"
-#include "screen.h"
-#include "tilemap.h"
-
-#define M81_B_B_JUMPER_J3_S \
- PORT_START("JumperJ3") \
- PORT_CONFNAME( 0x0001, 0x0000, "M81-B-B Jumper J3" ) \
- PORT_CONFSETTING( 0x0000, "S" ) \
- /* PORT_CONFSETTING( 0x0001, "W" ) */
-
-#define M81_B_B_JUMPER_J3_W \
- PORT_START("JumperJ3") \
- PORT_CONFNAME( 0x0001, 0x0001, "M81-B-B Jumper J3" ) \
- /* PORT_CONFSETTING( 0x0000, "S" ) */ \
- PORT_CONFSETTING( 0x0001, "W" )
-
-class m72_state : public driver_device
-{
-public:
- m72_state(const machine_config &mconfig, device_type type, const char *tag) :
- driver_device(mconfig, type, tag),
- m_maincpu(*this, "maincpu"),
- m_soundcpu(*this, "soundcpu"),
- m_mcu(*this, "mcu"),
- m_dpram(*this, "dpram"),
- m_dac(*this, "dac"),
- m_audio(*this, "m72"),
- m_gfxdecode(*this, "gfxdecode"),
- m_screen(*this, "screen"),
- m_palette(*this, "palette"),
- m_spriteram(*this, "spriteram"),
- m_videoram(*this, "videoram%u", 1U),
- m_m82_rowscrollram(*this, "majtitle_rowscr"),
- m_spriteram2(*this, "spriteram2"),
- m_soundram(*this, "soundram"),
- m_paletteram(*this, "paletteram%u", 1U),
- m_upd71059c(*this, "upd71059c"),
- m_upd4701(*this, {"upd4701l", "upd4701h"}),
- m_samples_region(*this, "samples"),
- m_io_dsw(*this, "DSW"),
- m_fg_source(0),
- m_bg_source(0),
- m_m81_b_b_j3(*this, "JumperJ3"),
- m_m82_rowscroll(0),
- m_m82_tmcontrol(0)
- { }
-
- void m72_base(machine_config &config);
- void m72_audio_chips(machine_config &config);
- void m72_xmultipl(machine_config &config);
- void m72_dbreed(machine_config &config);
- void m72_dbreedw(machine_config &config);
- void cosmccop(machine_config &config);
- void poundfor(machine_config &config);
- void m72(machine_config &config);
- void m81_hharry(machine_config &config);
- void m81_xmultipl(machine_config &config);
- void kengo(machine_config &config);
- void m81_dbreed(machine_config &config);
- void m72_8751(machine_config &config);
- void m72_airduel(machine_config &config);
- void hharryu(machine_config &config);
- void rtype2(machine_config &config);
- void m82(machine_config &config);
- void rtype(machine_config &config);
- void imgfightb(machine_config &config);
- void lohtb(machine_config &config);
- void imgfight(machine_config &config);
- void mrheli(machine_config &config);
- void nspiritj(machine_config &config);
-
- void init_dkgenm72();
- void init_bchopper();
- void init_gallop();
- void init_m72_8751();
- void init_dbreedm72();
- void init_airduelm72();
- void init_nspirit();
-
-private:
- required_device<cpu_device> m_maincpu;
- required_device<cpu_device> m_soundcpu;
- optional_device<cpu_device> m_mcu;
- optional_device<mb8421_mb8431_16_device> m_dpram;
- optional_device<dac_byte_interface> m_dac;
- optional_device<m72_audio_device> m_audio;
- required_device<gfxdecode_device> m_gfxdecode;
- required_device<screen_device> m_screen;
- required_device<palette_device> m_palette;
- required_device<buffered_spriteram16_device> m_spriteram;
-
- required_shared_ptr_array<u16, 2> m_videoram;
- optional_shared_ptr<u16> m_m82_rowscrollram;
- optional_shared_ptr<u16> m_spriteram2;
- optional_shared_ptr<u8> m_soundram;
- required_shared_ptr_array<u16, 2> m_paletteram;
-
- optional_device<pic8259_device> m_upd71059c;
- optional_device_array<upd4701_device, 2> m_upd4701;
-
- optional_region_ptr<u8> m_samples_region;
-
- optional_ioport m_io_dsw;
-
- std::unique_ptr<u16[]> m_protection_ram;
- emu_timer *m_scanline_timer;
- const u8 *m_protection_code;
- const u8 *m_protection_crc;
- u32 m_raster_irq_position;
- tilemap_t *m_fg_tilemap;
- tilemap_t *m_bg_tilemap;
- tilemap_t *m_bg_tilemap_large;
- s32 m_scrollx[2];
- s32 m_scrolly[2];
- s32 m_video_off;
-
- int m_fg_source;
- int m_bg_source;
- optional_ioport m_m81_b_b_j3;
-
- // majtitle specific
- int m_m82_rowscroll;
- u16 m_m82_tmcontrol;
-
- // m72_i8751 specific
- u8 m_mcu_sample_latch;
- u32 m_mcu_sample_addr;
-
- // common
- template<unsigned N> u16 palette_r(offs_t offset);
- template<unsigned N> void palette_w(offs_t offset, u16 data, u16 mem_mask);
- void videoram1_w(offs_t offset, u16 data, u16 mem_mask);
- void videoram2_w(offs_t offset, u16 data, u16 mem_mask);
- void irq_line_w(u16 data);
- template<unsigned N> void scrollx_w(offs_t offset, u16 data, u16 mem_mask);
- template<unsigned N> void scrolly_w(offs_t offset, u16 data, u16 mem_mask);
- void dmaon_w(u8 data);
- void port02_w(u8 data);
- u8 soundram_r(offs_t offset);
- void soundram_w(offs_t offset, u8 data);
-
- // m72_i8751 specific
- void main_mcu_w(offs_t offset, u16 data, u16 mem_mask);
- void mcu_data_w(offs_t offset, u8 data);
- u8 mcu_data_r(offs_t offset);
- u8 mcu_sample_r();
- void mcu_low_w(u8 data);
- void mcu_high_w(u8 data);
-
- u16 protection_r(offs_t offset, u16 mem_mask = ~0);
- void protection_w(offs_t offset, u16 data, u16 mem_mask = ~0);
-
- // game specific
- void bchopper_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void nspirit_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void loht_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void dbreedm72_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void airduelm72_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void dkgenm72_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void gallop_sample_trigger_w(offs_t offset, u16 data, u16 mem_mask = ~0);
- void rtype2_port02_w(u8 data);
- void poundfor_port02_w(u8 data);
- void m82_gfx_ctrl_w(offs_t offset, u16 data, u16 mem_mask);
- void m82_tm_ctrl_w(offs_t offset, u16 data, u16 mem_mask);
-
- TILE_GET_INFO_MEMBER(get_bg_tile_info);
- TILE_GET_INFO_MEMBER(get_fg_tile_info);
-
- template<unsigned N> TILE_GET_INFO_MEMBER(rtype2_get_tile_info);
-
- TILEMAP_MAPPER_MEMBER(m82_scan_rows);
-
- void machine_start() override;
- void machine_reset() override;
- DECLARE_VIDEO_START(m72);
- DECLARE_VIDEO_START(imgfight);
- DECLARE_VIDEO_START(mrheli);
- DECLARE_VIDEO_START(nspiritj);
- DECLARE_VIDEO_START(xmultipl);
- DECLARE_VIDEO_START(hharry);
- DECLARE_VIDEO_START(rtype2);
- DECLARE_VIDEO_START(m82);
- DECLARE_VIDEO_START(hharryu);
- DECLARE_VIDEO_START(poundfor);
- DECLARE_MACHINE_START(kengo);
- DECLARE_MACHINE_RESET(kengo);
-
- INTERRUPT_GEN_MEMBER(fake_nmi);
- TIMER_CALLBACK_MEMBER(synch_callback);
- TIMER_CALLBACK_MEMBER(scanline_interrupt);
- TIMER_CALLBACK_MEMBER(kengo_scanline_interrupt);
- TIMER_CALLBACK_MEMBER(delayed_ram16_w);
- TIMER_CALLBACK_MEMBER(delayed_ram8_w);
-
- u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_m81(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- u32 screen_update_m82(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- inline void m72_m81_get_tile_info(tile_data &tileinfo,int tile_index,const u16 *vram,int gfxnum);
- void register_savestate();
- inline void changecolor(offs_t color, u8 r, u8 g, u8 b);
- void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
- void majtitle_draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
- void copy_le(u16 *dest, const u8 *src, u8 bytes);
- void install_protection_handler(const u8 *code,const u8 *crc);
-
- void dbreed_map(address_map &map);
- void dbreedm72_map(address_map &map);
- void dbreedwm72_map(address_map &map);
- void hharry_map(address_map &map);
- void hharryu_map(address_map &map);
- void kengo_map(address_map &map);
- void lohtb_map(address_map &map);
- void lohtb_portmap(address_map &map);
- void m72_cpu1_common_map(address_map &map);
- void m72_map(address_map &map);
- void m72_protected_map(address_map &map);
- void m72_portmap(address_map &map);
- void m72_protected_portmap(address_map &map);
- void m72_airduel_portmap(address_map &map);
- void m81_cpu1_common_map(address_map &map);
- void m81_portmap(address_map &map);
- void m82_map(address_map &map);
- void m82_portmap(address_map &map);
- void m84_cpu1_common_map(address_map &map);
- void m84_portmap(address_map &map);
- void m84_v33_portmap(address_map &map);
- void i80c31_mem_map(address_map &map);
- void mcu_io_map(address_map &map);
- void poundfor_portmap(address_map &map);
- void poundfor_sound_portmap(address_map &map);
- void rtype2_map(address_map &map);
- void rtype2_sound_portmap(address_map &map);
- void rtype_map(address_map &map);
- void rtype_sound_portmap(address_map &map);
- void sound_portmap(address_map &map);
- void sound_protected_portmap(address_map &map);
- void sound_ram_map(address_map &map);
- void sound_rom_map(address_map &map);
- void xmultipl_map(address_map &map);
- void xmultiplm72_map(address_map &map);
-};
-
-#endif // MAME_INCLUDES_M72_H