1 // license:BSD-3-Clause
2 // copyright-holders:Barry Rodewald
3 /*
4  * amdrum.h
5  *
6  *  Created on: 23/08/2014
7  *
8  *  Cheetah Marketing Amdrum
9  *
10  *  I/O FFxx - 8-bit unsigned DAC, write only  (Ferranti ZN428E-8)
11  *  Lower 8 address bits are not decoded.
12  *
13  */
14 
15 #ifndef MAME_BUS_CPC_AMDRUM_H
16 #define MAME_BUS_CPC_AMDRUM_H
17 
18 #pragma once
19 
20 #include "cpcexp.h"
21 #include "sound/dac.h"
22 
23 class cpc_amdrum_device  : public device_t,
24 							public device_cpc_expansion_card_interface
25 {
26 public:
27 	// construction/destruction
28 	cpc_amdrum_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
29 
30 	void dac_w(uint8_t data);
31 
32 protected:
33 	// device-level overrides
34 	virtual void device_start() override;
35 	virtual void device_reset() override;
36 
37 	// optional information overrides
38 	virtual void device_add_mconfig(machine_config &config) override;
39 
40 private:
41 	cpc_expansion_slot_device *m_slot;
42 
43 	required_device<dac_byte_interface> m_dac;
44 };
45 
46 // device type definition
47 DECLARE_DEVICE_TYPE(CPC_AMDRUM, cpc_amdrum_device)
48 
49 
50 #endif // MAME_BUS_CPC_AMDRUM_H
51