📄 mdsched.c
字号:
if (pth->pThrdDbg && pth->pThrdDbg->psavedctx) { ACCESSKEY ulOldKey; SWITCHKEY(ulOldKey,0xffffffff); if (lpContext->ContextFlags & CONTEXT_FLOATING_POINT) {#ifdef MIPS_HAS_FPU FPUFlushContext(); lpContext->Fsr = pth->ctx.Fsr; lpContext->FltF0 = pth->ctx.FltF0; lpContext->FltF1 = pth->ctx.FltF1; lpContext->FltF2 = pth->ctx.FltF2; lpContext->FltF3 = pth->ctx.FltF3; lpContext->FltF4 = pth->ctx.FltF4; lpContext->FltF5 = pth->ctx.FltF5; lpContext->FltF6 = pth->ctx.FltF6; lpContext->FltF7 = pth->ctx.FltF7; lpContext->FltF8 = pth->ctx.FltF8; lpContext->FltF9 = pth->ctx.FltF9; lpContext->FltF10 = pth->ctx.FltF10; lpContext->FltF11 = pth->ctx.FltF11; lpContext->FltF12 = pth->ctx.FltF12; lpContext->FltF13 = pth->ctx.FltF13; lpContext->FltF14 = pth->ctx.FltF14; lpContext->FltF15 = pth->ctx.FltF15; lpContext->FltF16 = pth->ctx.FltF16; lpContext->FltF17 = pth->ctx.FltF17; lpContext->FltF18 = pth->ctx.FltF18; lpContext->FltF19 = pth->ctx.FltF19; lpContext->FltF20 = pth->ctx.FltF20; lpContext->FltF21 = pth->ctx.FltF21; lpContext->FltF22 = pth->ctx.FltF22; lpContext->FltF23 = pth->ctx.FltF23; lpContext->FltF24 = pth->ctx.FltF24; lpContext->FltF25 = pth->ctx.FltF25; lpContext->FltF26 = pth->ctx.FltF26; lpContext->FltF27 = pth->ctx.FltF27; lpContext->FltF28 = pth->ctx.FltF28; lpContext->FltF29 = pth->ctx.FltF29; lpContext->FltF30 = pth->ctx.FltF30; lpContext->FltF31 = pth->ctx.FltF31;#endif } if (lpContext->ContextFlags & CONTEXT_CONTROL) { lpContext->IntGp = pth->pThrdDbg->psavedctx->IntGp; lpContext->IntSp = pth->pThrdDbg->psavedctx->IntSp; lpContext->IntRa = pth->pThrdDbg->psavedctx->IntRa; lpContext->Fir = pth->pThrdDbg->psavedctx->Fir; lpContext->Psr = pth->pThrdDbg->psavedctx->Psr; } if (lpContext->ContextFlags & CONTEXT_INTEGER) { lpContext->IntZero = 0; lpContext->IntAt = pth->pThrdDbg->psavedctx->IntAt; lpContext->IntV0 = pth->pThrdDbg->psavedctx->IntV0; lpContext->IntV1 = pth->pThrdDbg->psavedctx->IntV1; lpContext->IntA0 = pth->pThrdDbg->psavedctx->IntA0; lpContext->IntA1 = pth->pThrdDbg->psavedctx->IntA1; lpContext->IntA2 = pth->pThrdDbg->psavedctx->IntA2; lpContext->IntA3 = pth->pThrdDbg->psavedctx->IntA3; lpContext->IntT0 = pth->pThrdDbg->psavedctx->IntT0; lpContext->IntT1 = pth->pThrdDbg->psavedctx->IntT1; lpContext->IntT2 = pth->pThrdDbg->psavedctx->IntT2; lpContext->IntT3 = pth->pThrdDbg->psavedctx->IntT3; lpContext->IntT4 = pth->pThrdDbg->psavedctx->IntT4; lpContext->IntT5 = pth->pThrdDbg->psavedctx->IntT5; lpContext->IntT6 = pth->pThrdDbg->psavedctx->IntT6; lpContext->IntT7 = pth->pThrdDbg->psavedctx->IntT7; lpContext->IntS0 = pth->pThrdDbg->psavedctx->IntS0; lpContext->IntS1 = pth->pThrdDbg->psavedctx->IntS1; lpContext->IntS2 = pth->pThrdDbg->psavedctx->IntS2; lpContext->IntS3 = pth->pThrdDbg->psavedctx->IntS3; lpContext->IntS4 = pth->pThrdDbg->psavedctx->IntS4; lpContext->IntS5 = pth->pThrdDbg->psavedctx->IntS5; lpContext->IntS6 = pth->pThrdDbg->psavedctx->IntS6; lpContext->IntS7 = pth->pThrdDbg->psavedctx->IntS7; lpContext->IntT8 = pth->pThrdDbg->psavedctx->IntT8; lpContext->IntT9 = pth->pThrdDbg->psavedctx->IntT9; lpContext->IntS8 = pth->pThrdDbg->psavedctx->IntS8; lpContext->IntLo = pth->pThrdDbg->psavedctx->IntLo; lpContext->IntHi = pth->pThrdDbg->psavedctx->IntHi; } SETCURKEY(ulOldKey); } else { if (lpContext->ContextFlags & CONTEXT_FLOATING_POINT) {#ifdef MIPS_HAS_FPU FPUFlushContext(); lpContext->Fsr = pth->ctx.Fsr; lpContext->FltF0 = pth->ctx.FltF0; lpContext->FltF1 = pth->ctx.FltF1; lpContext->FltF2 = pth->ctx.FltF2; lpContext->FltF3 = pth->ctx.FltF3; lpContext->FltF4 = pth->ctx.FltF4; lpContext->FltF5 = pth->ctx.FltF5; lpContext->FltF6 = pth->ctx.FltF6; lpContext->FltF7 = pth->ctx.FltF7; lpContext->FltF8 = pth->ctx.FltF8; lpContext->FltF9 = pth->ctx.FltF9; lpContext->FltF10 = pth->ctx.FltF10; lpContext->FltF11 = pth->ctx.FltF11; lpContext->FltF12 = pth->ctx.FltF12; lpContext->FltF13 = pth->ctx.FltF13; lpContext->FltF14 = pth->ctx.FltF14; lpContext->FltF15 = pth->ctx.FltF15; lpContext->FltF16 = pth->ctx.FltF16; lpContext->FltF17 = pth->ctx.FltF17; lpContext->FltF18 = pth->ctx.FltF18; lpContext->FltF19 = pth->ctx.FltF19; lpContext->FltF20 = pth->ctx.FltF20; lpContext->FltF21 = pth->ctx.FltF21; lpContext->FltF22 = pth->ctx.FltF22; lpContext->FltF23 = pth->ctx.FltF23; lpContext->FltF24 = pth->ctx.FltF24; lpContext->FltF25 = pth->ctx.FltF25; lpContext->FltF26 = pth->ctx.FltF26; lpContext->FltF27 = pth->ctx.FltF27; lpContext->FltF28 = pth->ctx.FltF28; lpContext->FltF29 = pth->ctx.FltF29; lpContext->FltF30 = pth->ctx.FltF30; lpContext->FltF31 = pth->ctx.FltF31;#endif } if (lpContext->ContextFlags & CONTEXT_CONTROL) { lpContext->IntGp = pth->ctx.IntGp; lpContext->IntSp = pth->ctx.IntSp; lpContext->IntRa = pth->ctx.IntRa; lpContext->Fir = pth->ctx.Fir; lpContext->Psr = pth->ctx.Psr; } if (lpContext->ContextFlags & CONTEXT_INTEGER) { lpContext->IntZero = 0; lpContext->IntAt = pth->ctx.IntAt; lpContext->IntV0 = pth->ctx.IntV0; lpContext->IntV1 = pth->ctx.IntV1; lpContext->IntA0 = pth->ctx.IntA0; lpContext->IntA1 = pth->ctx.IntA1; lpContext->IntA2 = pth->ctx.IntA2; lpContext->IntA3 = pth->ctx.IntA3; lpContext->IntT0 = pth->ctx.IntT0; lpContext->IntT1 = pth->ctx.IntT1; lpContext->IntT2 = pth->ctx.IntT2; lpContext->IntT3 = pth->ctx.IntT3; lpContext->IntT4 = pth->ctx.IntT4; lpContext->IntT5 = pth->ctx.IntT5; lpContext->IntT6 = pth->ctx.IntT6; lpContext->IntT7 = pth->ctx.IntT7; lpContext->IntS0 = pth->ctx.IntS0; lpContext->IntS1 = pth->ctx.IntS1; lpContext->IntS2 = pth->ctx.IntS2; lpContext->IntS3 = pth->ctx.IntS3; lpContext->IntS4 = pth->ctx.IntS4; lpContext->IntS5 = pth->ctx.IntS5; lpContext->IntS6 = pth->ctx.IntS6; lpContext->IntS7 = pth->ctx.IntS7; lpContext->IntT8 = pth->ctx.IntT8; lpContext->IntT9 = pth->ctx.IntT9; lpContext->IntS8 = pth->ctx.IntS8; lpContext->IntLo = pth->ctx.IntLo; lpContext->IntHi = pth->ctx.IntHi; } } return TRUE;}BOOL DoThreadSetContext(HANDLE hTh, const CONTEXT *lpContext) { PTHREAD pth; if (!(pth = HandleToThread(hTh))) { SetLastError(ERROR_INVALID_HANDLE); return FALSE; } if (lpContext->ContextFlags & ~CONTEXT_FULL) { SetLastError(ERROR_INVALID_PARAMETER); return FALSE; } if (pth->pThrdDbg && pth->pThrdDbg->psavedctx) { ACCESSKEY ulOldKey; SWITCHKEY(ulOldKey,0xffffffff); if (lpContext->ContextFlags & CONTEXT_FLOATING_POINT) {#ifdef MIPS_HAS_FPU FPUFlushContext(); pth->ctx.Fsr = lpContext->Fsr; pth->ctx.FltF0 = lpContext->FltF0; pth->ctx.FltF1 = lpContext->FltF1; pth->ctx.FltF2 = lpContext->FltF2; pth->ctx.FltF3 = lpContext->FltF3; pth->ctx.FltF4 = lpContext->FltF4; pth->ctx.FltF5 = lpContext->FltF5; pth->ctx.FltF6 = lpContext->FltF6; pth->ctx.FltF7 = lpContext->FltF7; pth->ctx.FltF8 = lpContext->FltF8; pth->ctx.FltF9 = lpContext->FltF9; pth->ctx.FltF10 = lpContext->FltF10; pth->ctx.FltF11 = lpContext->FltF11; pth->ctx.FltF12 = lpContext->FltF12; pth->ctx.FltF13 = lpContext->FltF13; pth->ctx.FltF14 = lpContext->FltF14; pth->ctx.FltF15 = lpContext->FltF15; pth->ctx.FltF16 = lpContext->FltF16; pth->ctx.FltF17 = lpContext->FltF17; pth->ctx.FltF18 = lpContext->FltF18; pth->ctx.FltF19 = lpContext->FltF19; pth->ctx.FltF20 = lpContext->FltF20; pth->ctx.FltF21 = lpContext->FltF21; pth->ctx.FltF22 = lpContext->FltF22; pth->ctx.FltF23 = lpContext->FltF23; pth->ctx.FltF24 = lpContext->FltF24; pth->ctx.FltF25 = lpContext->FltF25; pth->ctx.FltF26 = lpContext->FltF26; pth->ctx.FltF27 = lpContext->FltF27; pth->ctx.FltF28 = lpContext->FltF28; pth->ctx.FltF29 = lpContext->FltF29; pth->ctx.FltF30 = lpContext->FltF30; pth->ctx.FltF31 = lpContext->FltF31;#endif } if (lpContext->ContextFlags & CONTEXT_CONTROL) { pth->pThrdDbg->psavedctx->IntGp = lpContext->IntGp; pth->pThrdDbg->psavedctx->IntSp = lpContext->IntSp; pth->pThrdDbg->psavedctx->IntRa = lpContext->IntRa; pth->pThrdDbg->psavedctx->Fir = lpContext->Fir; } if (lpContext->ContextFlags & CONTEXT_INTEGER) { pth->pThrdDbg->psavedctx->IntAt = lpContext->IntAt; pth->pThrdDbg->psavedctx->IntV0 = lpContext->IntV0; pth->pThrdDbg->psavedctx->IntV1 = lpContext->IntV1; pth->pThrdDbg->psavedctx->IntA0 = lpContext->IntA0; pth->pThrdDbg->psavedctx->IntA1 = lpContext->IntA1; pth->pThrdDbg->psavedctx->IntA2 = lpContext->IntA2; pth->pThrdDbg->psavedctx->IntA3 = lpContext->IntA3; pth->pThrdDbg->psavedctx->IntT0 = lpContext->IntT0; pth->pThrdDbg->psavedctx->IntT1 = lpContext->IntT1; pth->pThrdDbg->psavedctx->IntT2 = lpContext->IntT2; pth->pThrdDbg->psavedctx->IntT3 = lpContext->IntT3; pth->pThrdDbg->psavedctx->IntT4 = lpContext->IntT4; pth->pThrdDbg->psavedctx->IntT5 = lpContext->IntT5; pth->pThrdDbg->psavedctx->IntT6 = lpContext->IntT6; pth->pThrdDbg->psavedctx->IntT7 = lpContext->IntT7; pth->pThrdDbg->psavedctx->IntS0 = lpContext->IntS0; pth->pThrdDbg->psavedctx->IntS1 = lpContext->IntS1; pth->pThrdDbg->psavedctx->IntS2 = lpContext->IntS2; pth->pThrdDbg->psavedctx->IntS3 = lpContext->IntS3; pth->pThrdDbg->psavedctx->IntS4 = lpContext->IntS4; pth->pThrdDbg->psavedctx->IntS5 = lpContext->IntS5; pth->pThrdDbg->psavedctx->IntS6 = lpContext->IntS6; pth->pThrdDbg->psavedctx->IntS7 = lpContext->IntS7; pth->pThrdDbg->psavedctx->IntT8 = lpContext->IntT8; pth->pThrdDbg->psavedctx->IntT9 = lpContext->IntT9; pth->pThrdDbg->psavedctx->IntS8 = lpContext->IntS8; pth->pThrdDbg->psavedctx->IntLo = lpContext->IntLo; pth->pThrdDbg->psavedctx->IntHi = lpContext->IntHi; } SETCURKEY(ulOldKey); } else { if (lpContext->ContextFlags & CONTEXT_FLOATING_POINT) {#ifdef MIPS_HAS_FPU FPUFlushContext(); pth->ctx.Fsr = lpContext->Fsr; pth->ctx.FltF0 = lpContext->FltF0; pth->ctx.FltF1 = lpContext->FltF1; pth->ctx.FltF2 = lpContext->FltF2; pth->ctx.FltF3 = lpContext->FltF3; pth->ctx.FltF4 = lpContext->FltF4; pth->ctx.FltF5 = lpContext->FltF5; pth->ctx.FltF6 = lpContext->FltF6; pth->ctx.FltF7 = lpContext->FltF7; pth->ctx.FltF8 = lpContext->FltF8; pth->ctx.FltF9 = lpContext->FltF9; pth->ctx.FltF10 = lpContext->FltF10; pth->ctx.FltF11 = lpContext->FltF11; pth->ctx.FltF12 = lpContext->FltF12; pth->ctx.FltF13 = lpContext->FltF13; pth->ctx.FltF14 = lpContext->FltF14; pth->ctx.FltF15 = lpContext->FltF15; pth->ctx.FltF16 = lpContext->FltF16; pth->ctx.FltF17 = lpContext->FltF17; pth->ctx.FltF18 = lpContext->FltF18; pth->ctx.FltF19 = lpContext->FltF19; pth->ctx.FltF20 = lpContext->FltF20; pth->ctx.FltF21 = lpContext->FltF21; pth->ctx.FltF22 = lpContext->FltF22; pth->ctx.FltF23 = lpContext->FltF23; pth->ctx.FltF24 = lpContext->FltF24; pth->ctx.FltF25 = lpContext->FltF25; pth->ctx.FltF26 = lpContext->FltF26; pth->ctx.FltF27 = lpContext->FltF27; pth->ctx.FltF28 = lpContext->FltF28; pth->ctx.FltF29 = lpContext->FltF29; pth->ctx.FltF30 = lpContext->FltF30; pth->ctx.FltF31 = lpContext->FltF31;#endif } if (lpContext->ContextFlags & CONTEXT_CONTROL) { pth->ctx.IntGp = lpContext->IntGp; pth->ctx.IntSp = lpContext->IntSp; pth->ctx.IntRa = lpContext->IntRa; pth->ctx.Fir = lpContext->Fir; } if (lpContext->ContextFlags & CONTEXT_INTEGER) { pth->ctx.IntAt = lpContext->IntAt; pth->ctx.IntV0 = lpContext->IntV0; pth->ctx.IntV1 = lpContext->IntV1; pth->ctx.IntA0 = lpContext->IntA0; pth->ctx.IntA1 = lpContext->IntA1; pth->ctx.IntA2 = lpContext->IntA2; pth->ctx.IntA3 = lpContext->IntA3; pth->ctx.IntT0 = lpContext->IntT0; pth->ctx.IntT1 = lpContext->IntT1; pth->ctx.IntT2 = lpContext->IntT2; pth->ctx.IntT3 = lpContext->IntT3; pth->ctx.IntT4 = lpContext->IntT4; pth->ctx.IntT5 = lpContext->IntT5; pth->ctx.IntT6 = lpContext->IntT6; pth->ctx.IntT7 = lpContext->IntT7; pth->ctx.IntS0 = lpContext->IntS0; pth->ctx.IntS1 = lpContext->IntS1; pth->ctx.IntS2 = lpContext->IntS2; pth->ctx.IntS3 = lpContext->IntS3; pth->ctx.IntS4 = lpContext->IntS4; pth->ctx.IntS5 = lpContext->IntS5; pth->ctx.IntS6 = lpContext->IntS6; pth->ctx.IntS7 = lpContext->IntS7; pth->ctx.IntT8 = lpContext->IntT8; pth->ctx.IntT9 = lpContext->IntT9; pth->ctx.IntS8 = lpContext->IntS8; pth->ctx.IntLo = lpContext->IntLo; pth->ctx.IntHi = lpContext->IntHi; } } return TRUE;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -