User:Johnburger/Demo/BIOS/MemMap

From OSDev Wiki
Jump to navigation Jump to search

The system needs to know where some things in memory are, and sometimes what values they have - or it needs to put them there.

To that end, I need symbols for various areas of the BIOS Memory Map.

Demo/BIOS/MemMap.inc

;
; BIOS/MemMap.inc
;

; This is the Memory Map of when the BIOS first boots.

; You'll notice that the Stack is on top of the Interrupt Vector Table!
BIOS.Stack.Base EQU             0000h      ; BIOS Boot stack
BIOS.Stack.Size EQU             0400h

BIOS.BDA.Base   EQU             0400h      ; BIOS Data Area
BIOS.BDA.Size   EQU             0100h

BIOS.MBR.Base   EQU             0600h      ; BIOS Master Boot Record load area
BIOS.MBR.Size   EQU             0200h

BIOS.Entry      EQU             7C00h      ; BIOS Boot Entry point

BIOS.Sig.Value  EQU             0AA55h     ; BIOS Signature flag
BIOS.Sig.Pos    EQU             BIOS.Disk.Sector.Size - 2