diff options
author | 2012-08-21 10:41:19 +0000 | |
---|---|---|
committer | 2012-08-21 10:41:19 +0000 | |
commit | 7285b359d259b2ae0fdf85096571c386ec8c991a (patch) | |
tree | a027aff57f1a255f9ec6cfd3b68cabe4b6683998 /src/mess/machine/interpod.h | |
parent | 67c425e90757876a6716b7867df30c0149912e74 (diff) |
Merge of MESS sources (no whatsnew)
Diffstat (limited to 'src/mess/machine/interpod.h')
-rw-r--r-- | src/mess/machine/interpod.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/src/mess/machine/interpod.h b/src/mess/machine/interpod.h new file mode 100644 index 00000000000..af0fb398aa0 --- /dev/null +++ b/src/mess/machine/interpod.h @@ -0,0 +1,84 @@ +/********************************************************************** + + Oxford Computer Systems Interpod IEC to IEEE interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +*********************************************************************/ + +#pragma once + +#ifndef __INTERPOD__ +#define __INTERPOD__ + + +#include "emu.h" +#include "cpu/m6502/m6502.h" +#include "machine/6522via.h" +#include "machine/6532riot.h" +#include "machine/6850acia.h" +#include "machine/c2031.h" +#include "machine/c2040.h" +#include "machine/c8280.h" +#include "machine/d9060.h" +#include "machine/cbmiec.h" +#include "machine/cbmipt.h" +#include "machine/ieee488.h" + + + +//************************************************************************** +// MACROS / CONSTANTS +//************************************************************************** + +#define INTERPOD_TAG "interpod" + + + +//************************************************************************** +// INTERFACE CONFIGURATION MACROS +//************************************************************************** + +#define MCFG_INTERPOD_ADD() \ + MCFG_DEVICE_ADD(INTERPOD_TAG, INTERPOD, 0) + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> interpod_device + +class interpod_device : public device_t, + public device_cbm_iec_interface +{ +public: + // construction/destruction + interpod_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + virtual machine_config_constructor device_mconfig_additions() const; + +protected: + // device-level overrides + virtual void device_start(); + virtual void device_reset(); + virtual void device_config_complete(); + + required_device<cpu_device> m_maincpu; + required_device<via6522_device> m_via; + required_device<riot6532_device> m_riot; + required_device<acia6850_device> m_acia; + required_device<ieee488_device> m_ieee; +}; + + +// device type definition +extern const device_type INTERPOD; + + + +#endif |