Detecting Memory (x86): Difference between revisions
[unchecked revision] | [unchecked revision] |
Content deleted Content added
BIOS bug |
Put back the old code after reading RBIL on the matter. |
||
Line 31:
Usage:
<source lang="asm">
; Nullify the A-register.
xor ax, ax
; Switch to the BIOS (= request low memory size).
int 0x12
; The carry flag is set, it failed.
; AX = amount of continuous memory in KB starting from 0.
jc .Error
</source>▼
; Test the A-register with itself.
test ax, ax
; The zero flag is set, it failed.
jz .Error
; AX = amount of continuous memory in kB starting from 0.
▲</source>
Alternately, you can just use INT 0x15, EAX = 0xE820 (see below).
|