diff options
Diffstat (limited to 'private/mvdm/xms.486/xmsmisc.c')
-rw-r--r-- | private/mvdm/xms.486/xmsmisc.c | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/private/mvdm/xms.486/xmsmisc.c b/private/mvdm/xms.486/xmsmisc.c new file mode 100644 index 000000000..9f15120ec --- /dev/null +++ b/private/mvdm/xms.486/xmsmisc.c @@ -0,0 +1,84 @@ +/* xmsmisc.c - Misc. Support Functions for himem. + * + * xmsSysPageSize + * xmsQueryExtMem + * + * Modification History: + * + * Sudeepb 15-May-1991 Created + */ + +#include "xms.h" + +#include <xmssvc.h> +#include <softpc.h> + +extern void UpdateKbdInt15(WORD Seg,WORD Off); + +/* xmsSysPageSize - Get the System Page size. + * + * + * Entry - None + * + * Exit + * SUCCESS + * Client (AX) = Page Size in bytes + * + * FAILURE + * Not Valid + */ + +VOID xmsSysPageSize (VOID) +{ +SYSTEM_INFO SysInfo; + + GetSystemInfo(&SysInfo); + + setAX((USHORT)SysInfo.dwPageSize); + + return; +} + + + +/* xmsQueryExtMem - Get the extended memory for the vdm + * + * + * Entry - None + * + * Exit + * SUCCESS + * Client (AX) = Extended Memory in K + * + * FAILURE + * Not Valid + */ + +VOID xmsQueryExtMem (VOID) +{ + setAX((USHORT)(xmsMemorySize)); + return; +} + + +/* xmsNotifyHookI15 - Informs softpc that someone is hooking I15 + * - also returns the extended memory for the vdm + * + * + * Entry - Client (CS:AX) seg:off of new I15 vector + * + * Exit + * SUCCESS + * Client (CX) = Extended Memory in K + * + * FAILURE + * Not Valid + */ + +VOID xmsNotifyHookI15 (VOID) +{ + UpdateKbdInt15(getCS(), getAX()); + + setCX((USHORT)(xmsMemorySize)); + return; +} |