Dave Navarro, Jr. (dave@powerbasic.com) PB GET FREE XMS MEMORY ------------------------------------------------------------------------------ 'FUNCTION to return the total amount of free XMS memory available 'Optimized from original code in Fido Conference by unknown author. 'by Dave Navarro, Jr. ' 'WARNING! Might not work if RUN from within the IDE. DEFINT A-Z 'If not in the IDE IF BIT(pbvHost, 5) = 0 THEN PRINT STR$(TotalFoundXms); "k bytes free XMS" END IF END '---------------------------------------------------------------------------- FUNCTION TotalFoundXms() PUBLIC AS INTEGER DIM Pointer AS SHARED DWORD IF Pointer = 0 THEN ! push DS ! mov AX, &h4310 ! int &h2f ! mov Word Ptr Pointer[0], BX ! mov Word Ptr Pointer[2], ES ! pop DS END IF ! push DS ! mov AH, 8 ! mov BL, 0 ! call Dword Ptr Pointer ! mov FUNCTION, DX ! pop DS END FUNCTION