-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmemorymap
More file actions
32 lines (30 loc) · 1.19 KB
/
memorymap
File metadata and controls
32 lines (30 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
0x0 - 0x3FF: IVT
0x400 - 0x4FF: BDA
0x500 - 0x7BFF: Unused - Free
0x7C00 - 0x7DFF: Boot sector
0x7E00 - 0x7FFFF: Unused - Free
0x80000 - 0x9FBFF: Partially free; check EBDA size before use
0x9FC00 - 0x9FFFF: EBDA
0xA0000 - 0xFFFFF: VRAM, ROM, VBIOS/BIOS, HW Data, etc (unusable)
===================== OS Memory Map =====================
0x500 - 0x6FF: Boot sector copy, used for disk info stuff
0x700 - 0x8FF: System data area (SDA), contains data required for the OS
0x900 - 0x7BFF: Reserved for stack (29440 bytes)
0x7C00- 0x7DFF: Starts with boot sector, later will have Kernel
0x7E00- 0x9FFF: Reserved for Kernel
0xA000- 0xA3FF: FAT Copy
0xA400- 0xA7FF: Root Dir Copy
0xA800- 0xABFF: SubDir Copy
0xAC00- 0xFFFF: System (Command Interpreter)
0x10000-0x????: Loaded Program
===================== SDA Structure =====================
0x700 - 0x70F (16 Bytes): DAP (Disk Access Packet)
0x710 - BYTE: BIOS allows LBA
0x711 - WORD: FAT Offset
0x713 - WORD: FAT Dir Offset
0x715 - WORD: FAT Dir Size
0x717 - WORD: FAT FData Offset
0x719 - BYTE: Selected FAT
0x71A - WORD: Cached FAT Sector (Offset)
0x71C - WORD: Cached FAT Root Dir Sector (Offset)
0x71E - WORD: Cached SubDir Sector (FData Offset)