First/simdata.h

33 lines
546 B
C

#ifndef SIMDATA_HEADER
#include <stdint.h>
enum CPU_STATE_t{
CPU_RUNNING,
CPU_HALTED
};
struct simdata_t{
long unsigned int current_clock;
uint8_t *RAM;
uint32_t PC;
uint32_t SP;
struct fetch_data_t *fetch_data;
struct decode_data_t *decode_data;
struct exec_data_t *exec_data;
struct registers_t *registers;
enum CPU_STATE_t cpu_state;
};
struct simdata_t *init_simdata();
void free_simdata(struct simdata_t *);
enum GUI_CPU_STATE_t{
GUI_CPU_RUNNING,
GUI_CPU_SINGLE_STEPPING,
GUI_CPU_STOPPED
};
#endif
#define SIMDATA_HEADER