/* (C) 2003 XDA Developers itsme@xs4all.nl * * $Header$ */ /* kdp has ptrs to these functions: */ (void (*)())OEMClearDebugCommError; (void (*)(unsigned char ch))OEMWriteDebugByte; (int (*)(void))OEMReadDebugByte; (PVOID (*)(PVOID pvAddr, int flags))DbgVerify; (PFNVOID (*)(PTHREAD pth, DWORD dwJumpAddress))DBG_CallCheck; (void (*)(unsigned char * ch))OEMWriteOtherDebugString; struct KDataStruct *pKData; (void (*)())FlushDCache; (void (*)())FlushICache; (BOOLEAN (*)())KDCleanup; BOOLEAN NDPrintString(IN LPCWSTR); void NDUpdateSymbols(DWORD, BOOL); ULONG NDTrap(PEXCEPTION_RECORD, CONTEXT *, BOOLEAN); BOOLEAN NDSetLoadSymbolsFlag(); BOOLEAN NDResetLoadSymbolsFlag(); BOOL DbgInit( const kerndata_t *kdp, const ROMHDR *pTOC, const PROCESS *pProcArray, (BOOLEAN (*)(IN LPCWSTR))*pKDPrintString, (void (*)(DWORD, BOOL))*pKDUpdateSymbols, (ULONG (*)(PEXCEPTION_RECORD, CONTEXT *, BOOLEAN))*pKDTrap, const (BOOLEAN (*)())pKDCleanup, (BOOLEAN (*)())*pKDSetLoadSymbolsFlag, (BOOLEAN (*)())*pKDResetLoadSymbolsFlag) { OEMClearDebugCommError= kdp->OEMClearDebugCommError; OEMWriteDebugByte= kdp->OEMWriteDebugByte; OEMReadDebugByte= kdp->OEMReadDebugByte; DbgVerify= kdp->DbgVerify; DBG_CallCheck= kdp->DBG_CallCheck; OEMWriteOtherDebugString= kdp->OEMWriteOtherDebugString; pKData= kdp->pKData; FlushDCache= kdp->FlushDCache; FlushICache= kdp->FlushICache; KDCleanup= pKDCleanup; *pKDPrintString= NDPrintString; *pKDUpdateSymbols= NDUpdateSymbols; *pKDTrap= NDTrap; *pKDSetLoadSymbolsFlag= NDSetLoadSymbolsFlag; *pKDResetLoadSymbolsFlag= NDResetLoadSymbolsFlag; return true; } BOOLEAN NDPrintString(const WCHAR *str) { } void NDUpdateSymbols(DWORD dwAddr, BOOL bUnload) { } ULONG NDTrap(const PEXCEPTION_RECORD ExceptionRecord, const CONTEXT *ContextRecord, BOOLEAN SecondChance) { } BOOLEAN NDSetLoadSymbolsFlag() { } BOOLEAN NDResetLoadSymbolsFlag() { }