diff options
author | 2013-10-20 19:50:55 +0000 | |
---|---|---|
committer | 2013-10-20 19:50:55 +0000 | |
commit | d756fa8ec44d6572cf192a4883c1d7e00e5c47cc (patch) | |
tree | d3b88aec276826c5340bc13b5ac87113da5b7eb2 /src/emu/bus/vip/vp550.h | |
parent | 25f4c260a8bdb38430151d7488e725c24d20a0e9 (diff) |
(MESS) vip: Moved expansion and byte I/O ports under emu/bus. (nw)
Diffstat (limited to 'src/emu/bus/vip/vp550.h')
-rw-r--r-- | src/emu/bus/vip/vp550.h | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/src/emu/bus/vip/vp550.h b/src/emu/bus/vip/vp550.h new file mode 100644 index 00000000000..c4de33993e8 --- /dev/null +++ b/src/emu/bus/vip/vp550.h @@ -0,0 +1,69 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + RCA VIP Super Sound System VP550 emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __VP550__ +#define __VP550__ + +#include "emu.h" +#include "exp.h" +#include "sound/cdp1863.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> vp550_device + +class vp550_device : public device_t, + public device_vip_expansion_card_interface +{ +public: + // construction/destruction + vp550_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // optional information overrides + virtual machine_config_constructor device_mconfig_additions() const; + + // not really public + DECLARE_WRITE8_MEMBER( octave_w ); + DECLARE_WRITE8_MEMBER( vlmna_w ); + DECLARE_WRITE8_MEMBER( vlmnb_w ); + DECLARE_WRITE8_MEMBER( sync_w ); + +protected: + // device-level overrides + virtual void device_start(); + virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr); + + // device_vip_expansion_card_interface overrides + virtual void vip_program_w(address_space &space, offs_t offset, UINT8 data, int cdef, int *minh); + virtual void vip_sc_w(int data); + virtual void vip_q_w(int state); + virtual void vip_run_w(int state); + +private: + required_device<cdp1863_device> m_pfg_a; + required_device<cdp1863_device> m_pfg_b; + + // timers + emu_timer *m_sync_timer; +}; + + +// device type definition +extern const device_type VP550; + + +#endif |