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:
Hermès Bélusca-Maïto 2013-11-09 16:11:52 +00:00
parent 592a3383e5
commit fa940c2075

View file

@ -1598,7 +1598,7 @@ VOID DosInt21h(LPWORD Stack)
break;
}
/* Disk Reset */
/* Disk Reset */
case 0x0D:
{
PDOS_PSP PspBlock = SEGMENT_TO_PSP(CurrentPsp);
@ -2328,9 +2328,14 @@ VOID DosInt21h(LPWORD Stack)
break;
}
/* Get Current Process ID (Get PSP Address) */
/* Internal - Get Current Process ID (Get PSP Address) */
case 0x51:
{
/*
* Identical to the documented AH=62h.
* See Ralf Brown: http://www.ctyme.com/intr/rb-2982.htm
* for more information.
*/
setBX(CurrentPsp);
break;
}
@ -2391,6 +2396,24 @@ VOID DosInt21h(LPWORD Stack)
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 */
default:
{