]> cloudbase.mooo.com Git - z180-stamp.git/blob - stm32/z80-if.h
Adaptions for fatfs R0.12b
[z180-stamp.git] / stm32 / z80-if.h
1 /*
2 * (C) Copyright 2014 Leo C. <erbl259-lmu@yahoo.de>
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7 typedef enum {LOW, HIGH} level_t;
8
9 //static void z80_setup_adrbus_tristate(void);
10 //static void z80_setup_adrbus_active(void);
11 //static void z80_setup_dbus_in(void);
12 //static void z80_setup_dbus_out(void);
13 //static void z80_setaddress(uint32_t addr);
14 void z80_setup_bus(void);
15 void z80_write(uint32_t addr, uint8_t data);
16 uint8_t z80_read(uint32_t addr);
17 void z80_request_bus(void);
18 void z80_release_bus(void);
19 void z80_memset(uint32_t addr, uint8_t data, int length);
20 void z80_reset(level_t level);
21 void z80_reset_pulse(void);
22 void z80_busreq(level_t level);
23 void z80_write_block(uint8_t *src, uint32_t dest, uint32_t length);
24 int z80_stat_halt(void);
25
26
27 typedef enum fifo_t {fifo_in, fifo_out, NUM_FIFOS} fifo_t;
28
29 void z80_memfifo_init(const fifo_t f, uint32_t adr);
30 int z80_memfifo_is_empty(const fifo_t f);
31 int z80_memfifo_is_full(const fifo_t f);
32 uint8_t z80_memfifo_getc(const fifo_t f);
33 void z80_memfifo_putc(fifo_t f, uint8_t val);
34
35 void z80_setup_msg_fifo(void);
36 void z80_init_msg_fifo(uint32_t addr);
37 int z80_msg_fifo_getc(void);