dev_z8530.cc Source File
Back to the index.
Go to the documentation of this file.
57 #define ZS_TICK_SHIFT 14
59 #define ZS_N_CHANNELS 2
60 #define DEV_Z8530_LENGTH 4
106 check_incoming(
cpu, d);
129 uint64_t idata = 0, odata = 0;
144 if (relative_addr == 0) {
148 debug(
"[ z8530: read from port %i reg %2i: "
150 port_nr], (
int)odata);
158 switch (idata & 0xf8) {
166 default:
debug(
"[ z8530: write to port %i reg "
167 "%2i: 0x%02x ]\n", port_nr, d->
178 odata = x < 0? 0 : x;
196 dev_z8530_tick(
cpu, extra);
214 snprintf(tmp,
sizeof(tmp),
"%s [ch-b]",
devinit->
name);
217 snprintf(tmp,
sizeof(tmp),
"%s [ch-a]",
devinit->
name);
221 snprintf(tmp,
sizeof(tmp),
"%s [%s]",
devinit->
name,
void console_putchar(int handle, int ch)
#define INTERRUPT_CONNECT(name, istruct)
#define INTERRUPT_ASSERT(istruct)
uint8_t rr[ZS_N_CHANNELS][ZS_N_REGS]
uint8_t wr[ZS_N_CHANNELS][ZS_N_REGS]
int console_handle[ZS_N_CHANNELS]
void memory_device_register(struct memory *mem, const char *, uint64_t baseaddr, uint64_t len, int(*f)(struct cpu *, struct memory *, uint64_t, unsigned char *, size_t, int, void *), void *extra, int flags, unsigned char *dyntrans_data)
int console_charavail(int handle)
int reg_select[ZS_N_CHANNELS]
void machine_add_tickfunction(struct machine *machine, void(*func)(struct cpu *, void *), void *extra, int clockshift)
uint64_t memory_readmax64(struct cpu *cpu, unsigned char *buf, int len)
int console_readchar(int handle)
int console_start_slave(struct machine *machine, const char *consolename, int use_for_input)
#define INTERRUPT_DEASSERT(istruct)
void memory_writemax64(struct cpu *cpu, unsigned char *buf, int len, uint64_t data)
#define CHECK_ALLOCATION(ptr)
Generated on Tue Mar 24 2020 14:04:48 for GXemul by
1.8.17