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
-♦-