Compatibility: XMS 2.0+
Expects: AH    0bH
DS:SI address of a filled-in XmsMoveInfoRec (see below)
                                                                  
Returns: AX    status: 0000H = successful
0001H = error and BL=XMS error code (if BL >= 80H)
                                                                  
Info: This fn copies a block of data from one location to another.  Use
it to transfer data into and out of extended memory.  It can also
copy data from place to place in conventional memory or between
extended memory blocks.

DS:SI points to a structure that describes the data to be moved.  It is
formatted as:

XmsMoveInfoRec
Offset Size Contents
                                                               
+0      4  lRgnLength   DWORD size, in bytes to move
(must be an even number)
+4      2  wSrcHandle   src XMB handle or 0=conventional mem
+6      4  lSrcOffset   DWORD offset in src XMB block
or segment:offset in conventional mem
+0aH     2  wDestHandle  dest XMB handle or 0=conventional mem
+0cH     4  lDestOffset  DWORD offset in dest XMB block
or segment:offset in conventional mem
16              size of an XmsMoveInfoRec

When wSrcHandle or wDestHandle is 0000H, the source or
destination is in conventional memory.  In that case, the
lSrcOffset (or lDestOffset) must be a 32-bit segment:offset in
conventional memory.

Notes:   If source and destination overlap, the source must be less than
the destination.

  The lRgnLength must be even.

  The move is faster when both source and destination begin on
WORD boundaries and faster still when aligned on DWORD
boundaries (on 386+ CPUs).

See Also: XMS Functions
- -

XMS 0bH: Move Extended Memory Block