Command: fdxms.sys / fdxxms.sys

  FDXMS.SYS is an extended memory driver for FreeDOS.
  FDXMS.SYS is for 386+ computers. Fdxms286 is for 286 computers.
  FDXMS.SYS has to be loaded in CONFIG.SYS / FDCONFIG.SYS.
  FDXMS.SYS supports up to 64 MiB of XMS memory. FDXXMS.SYS supports up
  to 4 GiB of XMS memory.
  FDXMST.SYS and FDXXMST.SYS is FDXMS.SYS and FDXXMS.SYS with TRACE_CODE
  enabled, which can be useful for debugging (mainly FDXMS).
  FDXMS.SYS is out of date. You should use HIMEMX or JEMMEX instead.

Syntax:

  DEVICE=[drive][path]\fdxms.sys [options]
         drive  The drive letter, e.g. C:
         path   The directory, e.g. \example\

Options:

  NUMHANDLES=<number>
            Sets the number of XMS handles. Default is 32. Minimum
            is two (not much use of XMS without any handles!) and
            maximum is currently 1024. Each handle takes 5 bytes
            (FDXMS.SYS) or 9 bytes (FDXXMS.SYS).
  BIOS      Makes FDXMS always call the BIOS through INT15
            instead of using its own protected mode switching.
  PS        Changes to the particular A20 handling necessary on
            PS/2 machines.
  GEODE     Removes delays while changing the A20 line. Reported
            to help FDXMS to work on National Semiconductor's
            Geode GX1 processor.
  DELAY=<number>
            Number of calls to the delay routine after changing
            the A20 line. If you receive the error message "Unable
            to switch A20 address line", try setting it to a big
            value (say 4000) and see if it helps. Then fine tune
            it as you want as low a value as possible for speed.
            Default is 1. Maximum is 65535 and 0 maps to 65536.
  INT15=<number>
            Amount of extended memory in KiB to leave to be
            allocated through INT15 AH=88 hooking. Remember to
            include 64 KiB reserved for HMA. Minimum is
            64 (64 KiB). Maximum is the smaller value of 0xfbbf
            KiB (˜66 MiB) and the size of the extended memory block
            that starts a 0x110000 minus 1.

  Supported arguments only in FDXMST.SYS and FDXXMST.SYS:

  TRACE=<number>
            Sets the trace bitmask. A set bit indicates a trace
            printout should be shown for that function. Default is
            0.

            The bit for each function is:
            get_version (0x0)                = 0x000001
            request_hma (0x1)                = 0x000002
            release_hma (0x2)                = 0x000004
            global_enable_a20 (0x3)          = 0x000008
            global_disable_a20 (0x4)         = 0x000010
            local_enable_a20 (0x5)           = 0x000020
            local_disable_a20 (0x6)          = 0x000040
            query_a20 (0x7)                  = 0x000080
            query_free_xms (0x8)             = 0x000100
            alloc_xms (0x9)                  = 0x000200
            free_xms (0xa)                   = 0x000400
            move_xms (0xb)                   = 0x000800
            lock_xms (0xc)                   = 0x001000
            unlock_xms (0xd)                 = 0x002000
            get_handle_info (0xe)            = 0x004000
            realloc_xms (0xf)                = 0x008000
            request_umb (0x10)               = 0x010000
            release_umb (0x11)               = 0x020000
            realloc_umb (0x12)               = 0x040000
            query_any_free_xms (0x88)        = 0x080000
            alloc_any_xms (0x89)             = 0x100000
            get_extended_handle_info (0x8e)  = 0x200000
            realloc_any_xms (0x8f)           = 0x400000

  TRACE
            Equivalent to TRACE=0xffffffff.

  <number> is positive decimal number or, if it starts with '0x', a
  hexadecimal number.

Comments:

  FDXMS.SYS has to be loaded in CONFIG.SYS / FDCONFIG.SYS.

Examples:

  IN CONFIG.SYS / FDCONFIG.SYS:
    device=C:\FREEDOS\BIN\fdxms.sys

See also:

  config.sys/fdconfig.sys
  devload
 (fdxms286)
  himemx
  jemm386
  jemmex
  xmgr

  Copyright © 2003 Martin Stromberg, updated 2011 and 2022 by W. Spiegl.

  This file is derived from the FreeDOS Spec Command HOWTO.
  See the file H2Cpying for copying conditions.