typedef enum {
RESET = 0x00,
RESET_AQRD = ZST_ACQUIRED,
- RUN = ZST_RUNNING,
- RUN_AQRD = ZST_RUNNING | ZST_ACQUIRED,
+ RUNNING = ZST_RUNNING,
+ RUNNING_AQRD = ZST_RUNNING | ZST_ACQUIRED,
} zstate_t;
+typedef enum {
+ Reset,
+ Request,
+ Release,
+ Run,
+ Restart,
+ M_Cycle
+} bus_cmd_t;
+
typedef enum {LOW, HIGH} level_t;
-zstate_t z80_runstate(void);
+zstate_t z80_bus_state(void);
+zstate_t z80_bus_cmd(bus_cmd_t cmd);
void z80_setup_bus(void);
-void z80_request_bus(void);
-void z80_release_bus(void);
-zstate_t z80_request_bus_save(void);
-void z80_release_bus_save(zstate_t prev);
-void z80_reset(void);
-void z80_reset_pulse(void);
-void z80_run(void);
int z80_stat_reset(void);
//void z80_busreq(level_t level);
-void z80_busreq_hpulse(void);
int z80_stat_halt(void);
void z80_write(uint32_t addr, uint8_t data);