diff --git a/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c b/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c index 37422410d9a..1793c39e039 100644 --- a/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c +++ b/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c @@ -1510,6 +1510,7 @@ VOID WINAPI DosInt21h(LPWORD Stack) case 0x55: { DosCreatePsp(getDX(), getSI()); + DosSetProcessContext(getDX()); break; } diff --git a/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/process.h b/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/process.h index 3e8c3e771dd..3d5525b6cb8 100644 --- a/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/process.h +++ b/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/process.h @@ -74,8 +74,7 @@ typedef struct _DOS_EXEC_PARAM_BLOCK typedef struct _DOS_REGISTER_STATE { - WORD DI, SI, BP, BX, DX, CX, AX; - WORD ES, DS; + WORD AX, BX, CX, DX, SI, DI, BP, DS, ES; } DOS_REGISTER_STATE, *PDOS_REGISTER_STATE; #pragma pack(pop)