92
94
DECLARE_READ8_MEMBER( read );
93
95
DECLARE_WRITE8_MEMBER( write );
95
DECLARE_WRITE_LINE_MEMBER( intack_w );
99
DECLARE_WRITE_LINE_MEMBER( pa0_w );
100
DECLARE_WRITE_LINE_MEMBER( pa1_w );
101
DECLARE_WRITE_LINE_MEMBER( pa2_w );
102
DECLARE_WRITE_LINE_MEMBER( pa3_w );
103
DECLARE_WRITE_LINE_MEMBER( pa4_w );
104
DECLARE_WRITE_LINE_MEMBER( pa5_w );
105
DECLARE_WRITE_LINE_MEMBER( pa6_w );
106
DECLARE_WRITE_LINE_MEMBER( pa7_w );
97
108
DECLARE_WRITE_LINE_MEMBER( pb0_w );
98
109
DECLARE_WRITE_LINE_MEMBER( pb1_w );
102
113
DECLARE_WRITE_LINE_MEMBER( pb5_w );
103
114
DECLARE_WRITE_LINE_MEMBER( pb6_w );
104
115
DECLARE_WRITE_LINE_MEMBER( pb7_w );
105
117
DECLARE_WRITE_LINE_MEMBER( pc0_w );
106
118
DECLARE_WRITE_LINE_MEMBER( pc1_w );
107
119
DECLARE_WRITE_LINE_MEMBER( pc2_w );
114
126
virtual void device_reset();
115
127
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
129
// device_z80daisy_interface overrides
130
virtual int z80daisy_irq_state();
131
virtual int z80daisy_irq_ack();
132
virtual void z80daisy_irq_reti();
118
135
static const device_timer_id TIMER_1 = 0;
119
136
static const device_timer_id TIMER_2 = 1;
120
137
static const device_timer_id TIMER_3 = 2;
139
static const int PORT_A = 0;
140
static const int PORT_B = 1;
141
static const int PORT_C = 2;
143
inline void get_interrupt_vector();
144
inline void check_interrupt();
122
146
inline UINT8 read_register(offs_t offset);
123
147
inline UINT8 read_register(offs_t offset, UINT8 mask);
124
148
inline void write_register(offs_t offset, UINT8 data);
125
149
inline void write_register(offs_t offset, UINT8 data, UINT8 mask);
151
inline bool counter_enabled(device_timer_id id);
152
inline bool counter_external_output(device_timer_id id);
153
inline bool counter_external_count(device_timer_id id);
154
inline bool counter_external_trigger(device_timer_id id);
155
inline bool counter_external_gate(device_timer_id id);
156
inline bool counter_gated(device_timer_id id);
127
157
inline void count(device_timer_id id);
128
158
inline void trigger(device_timer_id id);
129
inline void gate(device_timer_id id);
159
inline void gate(device_timer_id id, int state);
160
inline void match_pattern(int port);
161
inline void external_port_w(int port, int bit, int state);
131
163
devcb_resolved_write_line m_out_int_func;