mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
214 lines
6.2 KiB
214 lines
6.2 KiB
|
|
|
|
|
|
XOSD EMFunc ( EMF, HPID, HTID, DWORD, LONG );
|
|
|
|
|
|
void FlushPTCache ( void );
|
|
void PurgeCache ( void );
|
|
HPRC HprcFromHpid ( HPID );
|
|
HPRC ValidHprcFromHpid ( HPID );
|
|
HPID HpidFromHprc ( HPRC );
|
|
PID PidFromHprc ( HPRC );
|
|
HPRC HprcFromPid ( PID );
|
|
HTHD HthdFromHtid ( HPRC, HTID );
|
|
HTID HtidFromHthd ( HTHD );
|
|
TID TidFromHthd ( HTHD );
|
|
HTHD HthdFromTid ( HPRC, TID );
|
|
|
|
VOID SyncHprcWithDM( HPID hpid );
|
|
|
|
XOSD DebugPacket ( DBC, HPID, HTID, DWORD, LPBYTE );
|
|
HMDI SwGetMdi( HPID hpid, DWORD Address );
|
|
|
|
XOSD HandleBreakpoints( HPID hpid, DWORD wValue, LONG lValue );
|
|
|
|
XOSD ProcessStatus( HPID, LPPST );
|
|
XOSD ThreadStatus ( HPID hpid, HTID htid, LPTST lptst );
|
|
XOSD GetExceptionState(HPID, HTID, EXCEPTION_CONTROL, LPEXCEPTION_DESCRIPTION);
|
|
XOSD SetExceptionState( HPID, HTID, LPEXCEPTION_DESCRIPTION );
|
|
XOSD Go ( HPID, HTID, LPEXOP );
|
|
XOSD SingleStep ( HPID, HTID, LPEXOP );
|
|
XOSD RangeStep ( HPID, HTID, LPRSS );
|
|
XOSD ReturnStep ( HPID hpid, HTID htid, LPEXOP lpexop );
|
|
|
|
int EMENTRY EXCComp(LPVOID, LPVOID, LONG);
|
|
|
|
#ifdef OSDEBUG4
|
|
|
|
XOSD WriteBufferCache ( HPID, HTID, LPADDR, DWORD, LPBYTE, LPDWORD );
|
|
XOSD WriteBuffer ( HPID, HTID, LPADDR, DWORD, LPBYTE, LPDWORD );
|
|
XOSD CompareAddrs( HPID, HTID, LPCAS );
|
|
XOSD UpdateChild ( HPID, HTID, DMF );
|
|
XOSD FreezeThread( HPID hpid, HTID htid, BOOL fFreeze );
|
|
XOSD GetMemoryInfo( HPID hpid, HTID htid, LPMEMINFO lpmi );
|
|
XOSD GetModuleList( HPID, HTID, LPSTR, LPMODULE_LIST FAR * );
|
|
|
|
|
|
#else // OSDEBUG4
|
|
|
|
XOSD GetCaller ( HPID, HTID, FCT, LPADDR );
|
|
XOSD CallPtrace ( WORD, WORD, LPBYTE, HPRC, HTHD );
|
|
|
|
//XOSD SetBreakPoint ( HPID, HTID, WORD, LPBPARGS );
|
|
//XOSD RemoveBreakPoint ( HPID, HTID, WORD, LPBPARGS );
|
|
//XOSD EnableBP ( HPID, HTID, LPADDR );
|
|
//XOSD DisableBP ( HPID, HTID, LPADDR );
|
|
|
|
XOSD GetFrameRegValue ( HPID, HTID, DWORD, LPVOID );
|
|
XOSD SetFrameRegValue ( HPID, HTID, DWORD, LPVOID );
|
|
XOSD SetFrameContext ( HPID, HTID, DWORD );
|
|
BOOL NEAR PASCAL IsStackSetup( HPID, HTID, LPADDR );
|
|
XOSD SetFrame ( HPID, HTID, PFRAME );
|
|
CMP CmpAddr ( LPADDR lpaddr1, LPADDR lpaddr2 );
|
|
//XOSD Go ( HPID, HTID, BOOL );
|
|
//XOSD SingleStep ( HPID, HTID, BOOL, STO );
|
|
//XOSD RangeStep ( HPID, HTID, LPADDR, BOOL, STO );
|
|
//XOSD ThreadStatus ( HPID, HTID, LPTST );
|
|
//XOSD ProcStatus ( HPID, LPDWORD );
|
|
//XOSD ProcStatusXX ( HPID, LPDWORD );
|
|
XOSD GetPrompt(HPID hpid, HTID htid, LPPROMPTMSG lppm);
|
|
XOSD WriteBufferCache ( HPID, HTID, DWORD, LPBYTE );
|
|
XOSD WriteBuffer ( HPID, HTID, DWORD, LPBYTE );
|
|
XOSD CompareAddrs( LPADDR, LPADDR );
|
|
XOSD UpdateChild ( HPID, HTID, DMF );
|
|
XOSD Freeze ( HPID, HTID );
|
|
XOSD Thaw ( HPID, HTID );
|
|
XOSD IoctlCmd(HPID hpid, HTID htid, DWORD wValue, LPIOL lpiol);
|
|
|
|
#endif // !OSDEBUG
|
|
|
|
|
|
|
|
|
|
|
|
|
|
XOSD ProgramLoad ( HPID, DWORD, LPPRL );
|
|
XOSD ProgramFree ( HPID, HTID );
|
|
XOSD GetAddr ( HPID, HTID, ADR, LPADDR );
|
|
XOSD SetAddr ( HPID, HTID, ADR, LPADDR );
|
|
XOSD SetAddrFromCSIP ( HTHD hthd );
|
|
XOSD GetFrame ( HPID, HTID, LPADDR );
|
|
XOSD SetWatchPoint ( HPID, HTID, DWORD );
|
|
XOSD RemoveWatchPoint ( HPID, HTID, DWORD );
|
|
void InitUsage ( void );
|
|
XOSD ReadBuffer ( HPID, HTID, LPADDR, DWORD, LPBYTE, LPDWORD );
|
|
void UpdateRegisters ( HPRC, HTHD );
|
|
void UpdateSpecialRegisters ( HPRC hprc, HTHD hthd );
|
|
XOSD DoGetContext( HPID hpid, HTID htid, LPVOID lpv );
|
|
XOSD DoSetContext( HPID hpid, HTID htid, LPVOID lpv );
|
|
XOSD LoadFixups ( HPID, MODULELOAD UNALIGNED *);
|
|
BOOL UnLoadFixups ( HPID, HEMI, BOOL );
|
|
void RegisterEmi ( HPID, LPREMI );
|
|
XOSD CreateThreadStruct ( HPID, TID, HTID FAR * );
|
|
XOSD CreateHprc ( HPID );
|
|
VOID DestroyHprc ( HPRC );
|
|
VOID DestroyHthd ( HTHD );
|
|
|
|
void EMENTRY PiDKill ( LPVOID );
|
|
void EMENTRY TiDKill ( LPVOID );
|
|
void EMENTRY MDIKill(LPVOID lpv);
|
|
int EMENTRY PDComp ( LPVOID, LPVOID, LONG );
|
|
int EMENTRY TDComp ( LPVOID, LPVOID, LONG );
|
|
int EMENTRY BPComp ( LPVOID, LPVOID, LONG );
|
|
int EMENTRY TBComp ( LPVOID, LPVOID, LONG );
|
|
int EMENTRY MDIComp ( LPVOID, LPVOID, LONG );
|
|
|
|
XOSD DebugMetric ( HPID, HTID, MTRC, LPLONG );
|
|
XOSD FixupAddr ( HPID, LPADDR );
|
|
XOSD UnFixupAddr ( HPID, LPADDR );
|
|
XOSD SetEmi ( HPID, LPADDR );
|
|
XOSD GetRegValue ( HPID, HTID , DWORD , LPVOID );
|
|
XOSD SetRegValue ( HPID, HTID , DWORD , LPVOID );
|
|
XOSD GetFlagValue ( HPID, HTID , DWORD , LPVOID );
|
|
XOSD SetFlagValue ( HPID, HTID , DWORD , LPVOID );
|
|
XOSD GetObjLength ( HPID, LPGOL );
|
|
XOSD SaveRegs ( HTHD, LPHIND );
|
|
XOSD RestoreRegs ( HTHD, HIND );
|
|
HLLI LlthdFromHprc ( HPRC );
|
|
HLLI LlmdiFromHprc ( HPRC );
|
|
STAT StatFromHprc ( HPRC );
|
|
|
|
XOSD WMSGTranslate( LPWORD, LPWORD, LPSTR, LPWORD );
|
|
|
|
HEMI HemiFromHmdi ( HMDI );
|
|
XOSD GetPrevInst ( HPID, HTID, LPADDR );
|
|
|
|
XOSD GetPrevInst ( HPID, HTID, LPADDR );
|
|
XOSD disasm ( HPID, HTID, LPSDI );
|
|
XOSD IsCall ( HPID, HTID, LPADDR, LPDWORD );
|
|
|
|
XOSD Assemble ( HPID, HTID, LPADDR, LPSTR ); // [00]
|
|
|
|
XOSD SendRequest ( DMF, HPID, HTID );
|
|
XOSD SendRequestX ( DMF dmf, HPID hpid, HTID htid, DWORD wLen, LPVOID lpv );
|
|
BOOL UpdateFPRegisters ( HPRC, HTHD );
|
|
XOSD CleanCacheOfEmi ( void );
|
|
|
|
BOOL UpdateEmulator ( HPID, HTID );
|
|
LPVOID DoGetReg ( LPCONTEXT, DWORD, LPVOID );
|
|
LPVOID DoSetReg ( LPCONTEXT, DWORD, LPVOID );
|
|
LPVOID DoSetFrameReg ( HPID, HTID, LPTHD, PKNONVOLATILE_CONTEXT_POINTERS,
|
|
DWORD, LPVOID );
|
|
|
|
XOSD SetPath ( HPID, HTID, BOOL, LPSTR );
|
|
LPSTR EmError(XOSD xosd);
|
|
XOSD EnableCache( HPID hpid, HTID htid, BOOL state );
|
|
|
|
XOSD GetFunctionInfo( HPID, PADDR, PFUNCTION_INFO );
|
|
XOSD GetSectionObjectsFromDM(HPID hpid, LPMDI lpmdi);
|
|
|
|
|
|
//*************************************************************************
|
|
//
|
|
// stack walking apis
|
|
//
|
|
//*************************************************************************
|
|
XOSD
|
|
StackWalkSetup(
|
|
HPID hpid,
|
|
HTID htid,
|
|
LPSTACKFRAME lpstkstr
|
|
);
|
|
|
|
XOSD
|
|
StackWalkNext(
|
|
HPID hpid,
|
|
HTID htid,
|
|
LPSTACKFRAME lpstkstr
|
|
);
|
|
|
|
XOSD
|
|
StackWalkCleanup(
|
|
HPID hpid,
|
|
HTID htid,
|
|
LPSTACKFRAME lpstkstr
|
|
);
|
|
|
|
BOOL
|
|
SwReadMemory(
|
|
HPID hpid,
|
|
LPCVOID lpBaseAddress,
|
|
LPVOID lpBuffer,
|
|
DWORD nSize,
|
|
LPDWORD lpNumberOfBytesRead
|
|
);
|
|
|
|
LPVOID
|
|
SwFunctionTableAccess(
|
|
HPID hpid,
|
|
DWORD AddrBase
|
|
);
|
|
|
|
DWORD
|
|
SwGetModuleBase(
|
|
HPID hpid,
|
|
DWORD ReturnAddress
|
|
);
|
|
|
|
DWORD
|
|
SwTranslateAddress(
|
|
HPID hpid,
|
|
HTID htid,
|
|
LPADDRESS lpaddr
|
|
);
|