summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/segaybd.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/segaybd.h')
-rw-r--r--src/mame/includes/segaybd.h146
1 files changed, 0 insertions, 146 deletions
diff --git a/src/mame/includes/segaybd.h b/src/mame/includes/segaybd.h
deleted file mode 100644
index 8e37ee9fa8d..00000000000
--- a/src/mame/includes/segaybd.h
+++ /dev/null
@@ -1,146 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Aaron Giles
-/***************************************************************************
-
- Sega Y-Board hardware
-
-***************************************************************************/
-#ifndef MAME_INCLUDES_SEGAYBD_H
-#define MAME_INCLUDES_SEGAYBD_H
-
-#pragma once
-
-#include "cpu/m68000/m68000.h"
-#include "cpu/z80/z80.h"
-#include "machine/mb3773.h"
-#include "video/segaic16.h"
-#include "video/sega16sp.h"
-#include "screen.h"
-
-
-// ======================> segaybd_state
-
-class segaybd_state : public sega_16bit_common_base
-{
-public:
- // construction/destruction
- segaybd_state(const machine_config &mconfig, device_type type, const char *tag)
- : sega_16bit_common_base(mconfig, type, tag)
- , m_maincpu(*this, "maincpu")
- , m_subx(*this, "subx")
- , m_suby(*this, "suby")
- , m_soundcpu(*this, "soundcpu")
- , m_linkcpu(*this, "linkcpu")
- , m_watchdog(*this, "watchdog")
- , m_screen(*this, "screen")
- , m_bsprites(*this, "bsprites")
- , m_ysprites(*this, "ysprites")
- , m_segaic16vid(*this, "segaic16vid")
- , m_adc_ports(*this, "ADC.%u", 0)
- , m_pdrift_bank(0)
- , m_scanline_timer(nullptr)
- , m_irq2_scanline(0)
- , m_timer_irq_state(0)
- , m_vblank_irq_state(0)
- , m_misc_io_data(0)
- {
- }
-
- void yboard_deluxe(machine_config &config);
- void yboard_link(machine_config &config);
- void yboard(machine_config &config);
-
- // game-specific driver init
- void init_generic();
- void init_pdrift();
- void init_r360();
- void init_gforce2();
- void init_rchase();
- void init_gloc();
-
-private:
- // main CPU read/write handlers
- void output1_w(uint8_t data);
- void misc_output_w(uint8_t data);
- void output2_w(uint8_t data);
-
- // linked cabinet specific handlers
- DECLARE_WRITE_LINE_MEMBER(mb8421_intl);
- DECLARE_WRITE_LINE_MEMBER(mb8421_intr);
- uint16_t link_r();
- uint16_t link2_r();
- void link2_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
-// uint8_t link_portc0_r();
-
- // input helpers
- ioport_value analog_mux();
-
- // game-specific output handlers
- void gforce2_output_cb1(uint16_t data);
- void gforce2_output_cb2(uint16_t data);
- void gloc_output_cb1(uint16_t data);
- void gloc_output_cb2(uint16_t data);
- void r360_output_cb2(uint16_t data);
- void pdrift_output_cb1(uint16_t data);
- void pdrift_output_cb2(uint16_t data);
- void rchase_output_cb2(uint16_t data);
-
- // video updates
- uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
-
- void link_map(address_map &map);
- void link_portmap(address_map &map);
- void main_map(address_map &map);
- void main_map_link(address_map &map);
- void motor_map(address_map &map);
- void sound_map(address_map &map);
- void sound_portmap(address_map &map);
- void subx_map(address_map &map);
- void suby_map(address_map &map);
-
- // internal types
- typedef delegate<void (uint16_t)> output_delegate;
-
- // timer IDs
- enum
- {
- TID_IRQ2_GEN
- };
-
- // device overrides
- virtual void machine_reset() override;
- virtual void video_start() override;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
-
- // internal helpers
- void update_irqs();
-
- // devices
- required_device<m68000_device> m_maincpu;
- required_device<m68000_device> m_subx;
- required_device<m68000_device> m_suby;
- required_device<z80_device> m_soundcpu;
- optional_device<z80_device> m_linkcpu;
- required_device<mb3773_device> m_watchdog;
- required_device<screen_device> m_screen;
- required_device<sega_sys16b_sprite_device> m_bsprites;
- required_device<sega_yboard_sprite_device> m_ysprites;
- required_device<segaic16_video_device> m_segaic16vid;
-
- // input ports
- optional_ioport_array<6> m_adc_ports;
-
- // configuration
- output_delegate m_output_cb1;
- output_delegate m_output_cb2;
-
- // internal state
- uint16_t m_pdrift_bank;
- emu_timer * m_scanline_timer;
- int m_irq2_scanline;
- uint8_t m_timer_irq_state;
- uint8_t m_vblank_irq_state;
- uint8_t m_misc_io_data;
-};
-
-#endif // MAME_INCLUDES_SEGAYBD_H