]> cloudbase.mooo.com Git - z180-stamp.git/blob - stm32/z80-if.h
Swap pins for IOSEL1 and /BUSACK. IOSEL --> TIM3_CH4 (DMA-REQ)
[z180-stamp.git] / stm32 / z80-if.h
1
2 typedef enum {LOW, HIGH} level_t;
3
4 //static void z80_setup_adrbus_tristate(void);
5 //static void z80_setup_adrbus_active(void);
6 //static void z80_setup_dbus_in(void);
7 //static void z80_setup_dbus_out(void);
8 //static void z80_setaddress(uint32_t addr);
9 void z80_setup_bus(void);
10 void z80_write(uint32_t addr, uint8_t data);
11 uint8_t z80_read(uint32_t addr);
12 void z80_request_bus(void);
13 void z80_release_bus(void);
14 void z80_memset(uint32_t addr, uint8_t data, int length);
15 void z80_reset(level_t level);
16 void z80_reset_pulse(void);
17 void z80_busreq(level_t level);
18 void z80_write_block(uint8_t *src, uint32_t dest, uint32_t length);
19 int z80_stat_halt(void);
20
21 #define rx_fifo 0x7c0f7
22 #define tx_fifo 0x7c11a
23
24 typedef enum {fifo_in, fifo_out} fifo_t;
25
26 void z80_memfifo_init(void);
27 int z80_memfifo_is_empty(fifo_t f);
28 int z80_memfifo_is_full(fifo_t f);
29 uint8_t z80_memfifo_getc(fifo_t f);
30 void z80_memfifo_putc(fifo_t f, uint8_t val);
31
32 void z80_setup_io_infifo(void);
33 int z80_io_infifo_getc(void);