Document updates for the R3 release
[clinton/Virtual-Jaguar-Rx.git] / src / jerry.h
CommitLineData
cf76e892
JPM
1//
2// JERRY.H: Header file
3//
4
5#ifndef __JERRY_H__
6#define __JERRY_H__
7
8//#include "types.h"
9#include "memory.h"
10
11void JERRYInit(void);
12void JERRYReset(void);
13void JERRYDone(void);
14void JERRYDumpIORegistersToLog(void);
15
16uint8_t JERRYReadByte(uint32_t offset, uint32_t who = UNKNOWN);
17uint16_t JERRYReadWord(uint32_t offset, uint32_t who = UNKNOWN);
18void JERRYWriteByte(uint32_t offset, uint8_t data, uint32_t who = UNKNOWN);
19void JERRYWriteWord(uint32_t offset, uint16_t data, uint32_t who = UNKNOWN);
20
21void JERRYExecPIT(uint32_t cycles);
22void JERRYI2SExec(uint32_t cycles);
23
24int JERRYGetPIT1Frequency(void);
25int JERRYGetPIT2Frequency(void);
26
27// 68000 Interrupt bit positions (enabled at $F10020)
28
29//enum { IRQ2_EXTERNAL = 0, IRQ2_DSP, IRQ2_TIMER1, IRQ2_TIMER2, IRQ2_ASI, IRQ2_SSI };
30enum { IRQ2_EXTERNAL=0x01, IRQ2_DSP=0x02, IRQ2_TIMER1=0x04, IRQ2_TIMER2=0x08, IRQ2_ASI=0x10, IRQ2_SSI=0x20 };
31
32bool JERRYIRQEnabled(int irq);
33void JERRYSetPendingIRQ(int irq);
34
35// This should stay inside this file, but it's here for now...
36// Need to set up an interface function so that this can go back
37void JERRYI2SCallback(void);
38
39// External variables
40
41//extern uint32_t JERRYI2SInterruptDivide;
42extern int32_t JERRYI2SInterruptTimer;
43
44#endif