Compatibility: EMS 4.0+
Expects: AH    59H
AL    subfn: 00H=Get hardware Info
ES:DI = buffer to receive data
01H=Get unallocated raw page count
                                                                  
Returns: AH    EMM status (0=successful)
ES:DI (fn 5900H) buffer contains data (see below)
BX    (fn 5901H) unallocated raw pages
DX    (fn 5901H) total raw pages
                                                                  
Info: This is designed for use by operating systems only and may be
disabled at any time.

It obtains hardware-related info and info on "raw pages" (that
is, pages that are not 16K -- used on a rarely-seen EMS board).

ES:DI (fn 5900H) on entry, this points to a 10-byte buffer.  On return,
it is filled with data, formatted as:

EmsHardwareInfoRec
Offset Size Contents
                                                                
+0      2  wRawPgParas size of a raw page, in 16-byte units
+2      2  wAltRegSets number of extra mapping reg sets
+4      2  wSaveSize   size of buffer needed for saving mapping
context; also returned by INT 67H 4e03H
+6      2  wDMAChnls   number reg sets to handle DMA
+8      2  wDMAOddball 0=normal; 1=non-standard DMA handling
10              size of this structure

BX,DX (fn 5901H) On nearly all hardware implementation of LIM-EMS,
pages are exactly 16K.  One oddball allows for "raw" pages of
smaller pages (submultiples of 16K).

In most cases, these return the same as from INT 67H 4200H.

- -

INT 67H 59xxH: Get Hardware Configuration