--- hatari/src/falcon/dsp.h 2019/04/09 08:47:22 1.1.1.3 +++ hatari/src/falcon/dsp.h 2019/04/09 08:55:49 1.1.1.8 @@ -27,12 +27,18 @@ # include "dsp_core.h" #endif +#define DSP_FREQ (CPU_FREQ*4) + extern bool bDspEnabled; +extern bool bDspHostInterruptPending; /* Dsp commands */ +extern bool DSP_ProcessIRQ(void); extern void DSP_Init(void); extern void DSP_UnInit(void); extern void DSP_Reset(void); +extern void DSP_Enable(void); +extern void DSP_Disable(void); extern void DSP_Run(int nHostCycles); /* Save Dsp state to snapshot */ @@ -40,23 +46,35 @@ extern void DSP_MemorySnapShot_Capture(b /* Dsp Debugger commands */ extern void DSP_SetDebugging(bool enabled); +extern Uint16 DSP_GetPC(void); +extern Uint16 DSP_GetNextPC(Uint16 pc); +extern Uint16 DSP_GetInstrCycles(void); extern Uint32 DSP_ReadMemory(Uint16 addr, char space, const char **mem_str); -extern void DSP_DisasmMemory(Uint16 dsp_memdump_addr, Uint16 dsp_memdump_upper, char space); -extern Uint32 DSP_DisasmAddress(Uint16 lowerAdr, Uint16 UpperAdr); +extern Uint16 DSP_DisasmMemory(Uint16 dsp_memdump_addr, Uint16 dsp_memdump_upper, char space); +extern Uint16 DSP_DisasmAddress(FILE *out, Uint16 lowerAdr, Uint16 UpperAdr); +extern void DSP_Info(FILE *fp, Uint32 dummy); extern void DSP_DisasmRegisters(void); extern int DSP_GetRegisterAddress(const char *arg, Uint32 **addr, Uint32 *mask); -extern void DSP_Disasm_SetRegister(char *arg, Uint32 value); -extern Uint16 DSP_GetPC(void); +extern bool DSP_Disasm_SetRegister(const char *arg, Uint32 value); /* Dsp SSI commands */ extern Uint32 DSP_SsiReadTxValue(void); extern void DSP_SsiWriteRxValue(Uint32 value); -extern void DSP_SsiReceiveSerialClock(void); -extern void DSP_SsiReceive_SC2(Uint32 FrameCounter); +extern void DSP_SsiReceive_SC0(void); +extern void DSP_SsiReceive_SC1(Uint32 value); +extern void DSP_SsiReceive_SC2(Uint32 value); +extern void DSP_SsiReceive_SCK(void); +extern void DSP_SsiTransmit_SC0(void); +extern void DSP_SsiTransmit_SC1(void); +extern void DSP_SsiTransmit_SC2(Uint32 frame); +extern void DSP_SsiTransmit_SCK(void); /* Dsp Host interface commands */ extern void DSP_HandleReadAccess(void); extern void DSP_HandleWriteAccess(void); +extern Uint8 DSP_GetHREQ ( void ); +extern int DSP_ProcessIACK ( void ); + #endif /* DSP_H */