From e64eba003f92992057c5a1c8b5eff902e4ddaaa5 Mon Sep 17 00:00:00 2001 From: Leo C Date: Wed, 2 Apr 2014 13:56:33 +0200 Subject: Initial check in --- stm32/z80-if.h | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 stm32/z80-if.h (limited to 'stm32/z80-if.h') diff --git a/stm32/z80-if.h b/stm32/z80-if.h new file mode 100644 index 0000000..914ead5 --- /dev/null +++ b/stm32/z80-if.h @@ -0,0 +1,32 @@ + +typedef enum {LOW, HIGH} level_t; + +//static void z80_setup_adrbus_tristate(void); +//static void z80_setup_adrbus_active(void); +//static void z80_setup_dbus_in(void); +//static void z80_setup_dbus_out(void); +//static void z80_setaddress(uint32_t addr); +void z80_setup_bus(void); +void z80_write(uint32_t addr, uint8_t data); +uint8_t z80_read(uint32_t addr); +void z80_get_bus(void); +void z80_release_bus(void); +void z80_memset(uint32_t addr, uint8_t data, int length); +void z80_reset(level_t level); +void z80_reset_pulse(void); +void z80_busreq(level_t level); +void z80_write_block(uint8_t *src, uint32_t dest, uint32_t length); +int z80_stat_halt(void); + +#define rx_fifo 0x7c0f7 +#define tx_fifo 0x7c11a + +typedef enum {fifo_in, fifo_out} fifo_t; + +void z80_fifo_init(void); +int z80_fifo_is_not_empty(fifo_t f); +int z80_fifo_is_not_full(fifo_t f); +uint8_t z80_fifo_getc(fifo_t f); +void z80_fifo_putc(fifo_t f, uint8_t val); + +int z80_inbuf_getc(void); -- cgit v1.2.3