diff options
Diffstat (limited to 'apps/plugins/rockboy/cpu.h')
| -rw-r--r-- | apps/plugins/rockboy/cpu.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/apps/plugins/rockboy/cpu.h b/apps/plugins/rockboy/cpu.h new file mode 100644 index 0000000..22d58b0 --- /dev/null +++ b/apps/plugins/rockboy/cpu.h @@ -0,0 +1,41 @@ + + +#ifndef __CPU_H__ +#define __CPU_H__ + + + +#include "defs.h" + + +union reg +{ + byte b[2][2]; + word w[2]; + un32 d; /* padding for alignment, carry */ +}; + +struct cpu +{ + union reg pc, sp, bc, de, hl, af; + int ime, ima; + int speed; + int halt; + int div, tim; + int lcdc; + int snd; +}; + +extern struct cpu cpu; + + +void cpu_reset(void); +void div_advance(int cnt); +void timer_advance(int cnt); +void lcdc_advance(int cnt); +void sound_advance(int cnt); +void cpu_timers(int cnt); +int cpu_emulate(int cycles); + + +#endif |