User`s manual

DIGITAL-LOGIC AG MSLB-P5 Manual V0.3
PRELIMINARY 185
16.6.12 Interrupt 15h–Big Memory Services
The INT 15 software interrupt optionally handles the calls reporting extended memory over 64 MB.
The first function, 8Ah, only supports certain versions of UNIX.
The second function, E8h, incorporates these sub functions:
Big memory for Windows NT 3.01 and OS/2 2.11 and 2.20–E801h (16 bit) and
E881h (32 bit).
System Memory Map–E820h
Interrupt 15h Big Memory Services
AH = 8Ah Big Memory size, Phoenix definition
Entry:
(For certain versions of UNIX)
AX Low 16-bit value
DX High 16-bit value
= memory above 1024 kB in 1 kB blocks
AH = E8h Big Memory size (over 64 kB)
AL = 01h Big Memory Size, 16 Bit
(Windows NT 3.1 and OS/2 2.11 and 2.20)
Exit:
Carry 0 = E801 Supported
AX Memory 1 MB to 16 MB, in 1 kB blocks
BX Memory above 16 MB, in 64 kB blocks
CX Configured memory 1 MB to 16 MB, in 1 kB
blocks
DX Configured memory above 16 MB, in 64
kB blocks
AL = 20h System Memory Map
Entry:
EBX Continuation value
ES:DI Address of Address Range Descriptor
ECX Length of Address Range Descriptor
(=> 20 bytes)
EDX "SMAP" signature
Exit:
Carry 0 = E820 Supported
EAX "SMAP" signature
ES:DI Same value as entry
ECX Length of actual reported information in bytes
EBX Continuation value
Structure of Address Range Descriptor:
Bytes 0-3 Low 32 bits of Base Address
Bytes 4-7 High 32 bits of Base Address
Bytes 8-11 Low 32 bits of Length in bytes
Bytes 12-15 High 32 bits of Length in bytes
Bytes 16-20 Type of Address Range:
1 = AddressRangeMemory, available to OS
2 = AddressRangeReserved, not available
3 = AddressRangeACPI, available to OS
4 = AddressRangeNVS, not available to OS
Other = Not defined, not available
NOTE: Each call of this service defines a descriptor buffer
and requests the memory status of the address range
specified by the continuation value, where zero = first address
range. The function fills the buffer and returns the continuation
value for the next address range range, where zero = last
address range.
AL = 81h Big Memory Size, 32-Bit Protected Mode
(Windows NT 3.1 and OS/2 2.11 and 2.20)
Exit:
Carry 0 = E881 supported
EAX Memory 1 MB to 16 MB, 1 kB blocks
EBX Memory above 16 MB, 64 kB blocks
ECX Configured memory 1 MB to 16 MB, 1 kB
blocks
EDX Configured memory above 16 MB, 64 kB
blocks