INT 67H 57xxH: Move/Exchange Memory

                                                     Compatibility: EMS 4.0+ 
 Expects: AH    57H
          AL    subfn: 00H=Move memory
                       01H=Exchange memory
          DS:SI address of an EmsMoveInfoRec (see below)
          ──────────────────────────────────────────────────────────────────
 Returns: AH    EMM status (0=successful; 92H is just a warning)
          ──────────────────────────────────────────────────────────────────
    Info: Use this to transfer blocks of memory into, out of, or within EMS
          memory or conventional memory.  Segment overflow and overlapping
          moves are allowed; blocks as large as 1M are allowed.

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

          EmsMoveInfoRec
           Offset Size Contents
           ▀▀▀▀▀▀ ▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
            +0      4  lRgnLength    DWORD size, in bytes to move/xchg
            +4      1  bSrcType      src type: 00H=conventional; 01H=EMS
            +5      2  wSrcHandle    EMM Handle (or 0 if src in conv mem)
            +7      2  wSrcAddr      src segment or page
            +9      2  wSrcOffset    src offset within page or segment
           +0bH     1  bDestType     dest type: 00H=conventional; 01H=EMS
           +0cH     2  wDestHandle   EMM Handle (or 0 if dest in conv mem)
           +0eH     2  wDestAddr     dest segment or page
           +10H     2  wDestOffset   dest offset in page or segment
                   18                size of this structure

   Notes: a return code of 92H is not an error; just a warning.

See Also: INT 67H: EMM Services
          Extended Memory Specification (XMS)
          Interrupts and BIOS Services
                                    -♦-