|
|
1.1 ! root 1: /* ! 2: DSP M56001 emulation ! 3: Dummy emulation, Hatari glue ! 4: ! 5: (C) 2001-2008 ARAnyM developer team ! 6: Adaption to Hatari (C) 2008 by Thomas Huth ! 7: ! 8: This program is free software; you can redistribute it and/or modify ! 9: it under the terms of the GNU General Public License as published by ! 10: the Free Software Foundation; either version 2 of the License, or ! 11: (at your option) any later version. ! 12: ! 13: This program is distributed in the hope that it will be useful, ! 14: but WITHOUT ANY WARRANTY; without even the implied warranty of ! 15: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! 16: GNU General Public License for more details. ! 17: ! 18: You should have received a copy of the GNU General Public License ! 19: along with this program; if not, write to the Free Software ! 20: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! 21: */ ! 22: ! 23: #ifndef DSP_H ! 24: #define DSP_H ! 25: ! 26: #define ENABLE_DSP_EMU 1 ! 27: ! 28: #if ENABLE_DSP_EMU ! 29: # include "dsp_core.h" ! 30: #endif ! 31: ! 32: #define DSP_FREQ (CPU_FREQ*4) ! 33: ! 34: extern bool bDspEnabled; ! 35: extern bool bDspHostInterruptPending; ! 36: ! 37: /* Dsp commands */ ! 38: extern bool DSP_ProcessIRQ(void); ! 39: extern void DSP_Init(void); ! 40: extern void DSP_UnInit(void); ! 41: extern void DSP_Reset(void); ! 42: extern void DSP_Start(Uint8 mode); ! 43: extern void DSP_Run(int nHostCycles); ! 44: ! 45: /* Save Dsp state to snapshot */ ! 46: extern void DSP_MemorySnapShot_Capture(bool bSave); ! 47: ! 48: /* Dsp Debugger commands */ ! 49: extern void DSP_SetDebugging(bool enabled); ! 50: extern Uint16 DSP_GetPC(void); ! 51: extern Uint16 DSP_GetNextPC(Uint16 pc); ! 52: extern Uint16 DSP_GetInstrCycles(void); ! 53: extern Uint32 DSP_ReadMemory(Uint16 addr, char space, const char **mem_str); ! 54: extern Uint16 DSP_DisasmMemory(Uint16 dsp_memdump_addr, Uint16 dsp_memdump_upper, char space); ! 55: extern Uint16 DSP_DisasmAddress(FILE *out, Uint16 lowerAdr, Uint16 UpperAdr); ! 56: extern void DSP_Info(Uint32 dummy); ! 57: extern void DSP_DisasmRegisters(void); ! 58: extern int DSP_GetRegisterAddress(const char *arg, Uint32 **addr, Uint32 *mask); ! 59: extern bool DSP_Disasm_SetRegister(const char *arg, Uint32 value); ! 60: ! 61: /* Dsp SSI commands */ ! 62: extern Uint32 DSP_SsiReadTxValue(void); ! 63: extern void DSP_SsiWriteRxValue(Uint32 value); ! 64: extern void DSP_SsiReceive_SC0(void); ! 65: extern void DSP_SsiReceive_SC1(Uint32 value); ! 66: extern void DSP_SsiReceive_SC2(Uint32 value); ! 67: extern void DSP_SsiReceive_SCK(void); ! 68: extern void DSP_SsiTransmit_SC0(void); ! 69: extern void DSP_SsiTransmit_SC1(void); ! 70: extern void DSP_SsiTransmit_SC2(Uint32 frame); ! 71: extern void DSP_SsiTransmit_SCK(void); ! 72: ! 73: /* Dsp SCI functions */ ! 74: extern void DSP_HandleTXD(int set); ! 75: ! 76: /* Dsp Host interface commands */ ! 77: extern void DSP_HandleReadAccess(void); ! 78: extern void DSP_HandleWriteAccess(void); ! 79: extern Uint16 DSP_Get_HREQ(void); ! 80: ! 81: void DSP_ICR_Read(void); ! 82: void DSP_ICR_Write(void); ! 83: void DSP_CVR_Read(void); ! 84: void DSP_CVR_Write(void); ! 85: void DSP_ISR_Read(void); ! 86: void DSP_ISR_Write(void); ! 87: void DSP_IVR_Read(void); ! 88: void DSP_IVR_Write(void); ! 89: ! 90: void DSP_Data0_Read(void); ! 91: void DSP_Data0_Write(void); ! 92: void DSP_Data1_Read(void); ! 93: void DSP_Data1_Write(void); ! 94: void DSP_Data2_Read(void); ! 95: void DSP_Data2_Write(void); ! 96: void DSP_Data3_Read(void); ! 97: void DSP_Data3_Write(void); ! 98: ! 99: Uint8 dsp_intr_at_block_end; ! 100: Uint8 dsp_dma_unpacked; ! 101: void DSP_SetIRQB(void); ! 102: ! 103: #endif /* DSP_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.