mirror of
https://github.com/reactos/reactos.git
synced 2025-02-25 01:39:30 +00:00
[NTVDM]
DOS: Implement INT 21h, AH 62h as a call to INT 21h, AH 51h. svn path=/branches/ntvdm/; revision=60899
This commit is contained in:
parent
592a3383e5
commit
fa940c2075
1 changed files with 25 additions and 2 deletions
|
@ -1598,7 +1598,7 @@ VOID DosInt21h(LPWORD Stack)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Disk Reset */
|
/* Disk Reset */
|
||||||
case 0x0D:
|
case 0x0D:
|
||||||
{
|
{
|
||||||
PDOS_PSP PspBlock = SEGMENT_TO_PSP(CurrentPsp);
|
PDOS_PSP PspBlock = SEGMENT_TO_PSP(CurrentPsp);
|
||||||
|
@ -2328,9 +2328,14 @@ VOID DosInt21h(LPWORD Stack)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Get Current Process ID (Get PSP Address) */
|
/* Internal - Get Current Process ID (Get PSP Address) */
|
||||||
case 0x51:
|
case 0x51:
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
|
* Identical to the documented AH=62h.
|
||||||
|
* See Ralf Brown: http://www.ctyme.com/intr/rb-2982.htm
|
||||||
|
* for more information.
|
||||||
|
*/
|
||||||
setBX(CurrentPsp);
|
setBX(CurrentPsp);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -2391,6 +2396,24 @@ VOID DosInt21h(LPWORD Stack)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Get Current PSP Address */
|
||||||
|
case 0x62:
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Identical to the undocumented AH=51h.
|
||||||
|
* See Ralf Brown: http://www.ctyme.com/intr/rb-3140.htm
|
||||||
|
* for more information.
|
||||||
|
*/
|
||||||
|
setAH(0x51); // Call the internal function.
|
||||||
|
/*
|
||||||
|
* Instead of calling ourselves really recursively as in:
|
||||||
|
* DosInt21h(Stack);
|
||||||
|
* prefer resetting the CF flag to let the BOP repeat.
|
||||||
|
*/
|
||||||
|
setCF(1);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
/* Unsupported */
|
/* Unsupported */
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue