X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fjerry.h;h=cff1c25f56c3bbc6189cec81ee8e06dfdfb9f15e;hb=725caa0f8bb826a73edef366906ccb41a3197819;hp=c1f1f7ad6d0ad71dc0b24ac60c0c3b588172a55e;hpb=d239de704f276a75d927900e3d413a44cc87116c;p=virtualjaguar diff --git a/src/jerry.h b/src/jerry.h index c1f1f7a..cff1c25 100644 --- a/src/jerry.h +++ b/src/jerry.h @@ -5,25 +5,39 @@ #ifndef __JERRY_H__ #define __JERRY_H__ -#include "types.h" +//#include "types.h" +#include "memory.h" void JERRYInit(void); void JERRYReset(void); void JERRYDone(void); -uint8 JERRYReadByte(uint32 offset, uint32 who = UNKNOWN); -uint16 JERRYReadWord(uint32 offset, uint32 who = UNKNOWN); -void JERRYWriteByte(uint32 offset, uint8 data, uint32 who = UNKNOWN); -void JERRYWriteWord(uint32 offset, uint16 data, uint32 who = UNKNOWN); +uint8_t JERRYReadByte(uint32_t offset, uint32_t who = UNKNOWN); +uint16_t JERRYReadWord(uint32_t offset, uint32_t who = UNKNOWN); +void JERRYWriteByte(uint32_t offset, uint8_t data, uint32_t who = UNKNOWN); +void JERRYWriteWord(uint32_t offset, uint16_t data, uint32_t who = UNKNOWN); -void JERRYExecPIT(uint32 cycles); -void JERRYI2SExec(uint32 cycles); +void JERRYExecPIT(uint32_t cycles); +void JERRYI2SExec(uint32_t cycles); + +int JERRYGetPIT1Frequency(void); +int JERRYGetPIT2Frequency(void); // 68000 Interrupt bit positions (enabled at $F10020) -enum { IRQ2_EXTERNAL = 0, IRQ2_DSP, IRQ2_TIMER1, IRQ2_TIMER2, IRQ2_ASI, IRQ2_SSI }; +//enum { IRQ2_EXTERNAL = 0, IRQ2_DSP, IRQ2_TIMER1, IRQ2_TIMER2, IRQ2_ASI, IRQ2_SSI }; +enum { IRQ2_EXTERNAL=0x01, IRQ2_DSP=0x02, IRQ2_TIMER1=0x04, IRQ2_TIMER2=0x08, IRQ2_ASI=0x10, IRQ2_SSI=0x20 }; bool JERRYIRQEnabled(int irq); void JERRYSetPendingIRQ(int irq); +// This should stay inside this file, but it's here for now... +// Need to set up an interface function so that this can go back +void JERRYI2SCallback(void); + +// External variables + +//extern uint32_t JERRYI2SInterruptDivide; +extern int32_t JERRYI2SInterruptTimer; + #endif