Author: aandrejevic
Date: Wed Apr 22 19:56:50 2015
New Revision: 67352
URL:
http://svn.reactos.org/svn/reactos?rev=67352&view=rev
Log:
[NTVDM]
Implement the XMS functions AH = 03h and AH = 04h (global enable/disable A20).
Make the GetHandleRecord function in the EMS driver inline.
CORE-8277 #comment Please retest.
Modified:
trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/emsdrv.c
trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/himem.c
Modified: trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/emsdrv.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/mvdm/ntvdm/dos/…
==============================================================================
--- trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/emsdrv.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/emsdrv.c [iso-8859-1] Wed Apr 22
19:56:50 2015
@@ -35,7 +35,7 @@
/* PRIVATE FUNCTIONS **********************************************************/
-static PEMS_HANDLE GetHandleRecord(USHORT Handle)
+static inline PEMS_HANDLE GetHandleRecord(USHORT Handle)
{
if (Handle >= EMS_MAX_HANDLES) return NULL;
return &HandleTable[Handle];
Modified: trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/himem.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/mvdm/ntvdm/dos/…
==============================================================================
--- trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/himem.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/himem.c [iso-8859-1] Wed Apr 22
19:56:50 2015
@@ -164,6 +164,20 @@
break;
}
+ /* Global Enable A20 */
+ case 0x03:
+ {
+ EmulatorSetA20(TRUE);
+ break;
+ }
+
+ /* Global Disable A20 */
+ case 0x04:
+ {
+ EmulatorSetA20(FALSE);
+ break;
+ }
+
/* Query Free Extended Memory */
case 0x08:
{