00000-003FF Interrupt Vector Table (256 double words): 00000 INT 00H Divide by Zero Interrupt Handler 00004 INT 01H Single Step Interrupt Handler 00008 INT 02H Non-Maskable Interrupt (Memory Parity or I/O Error) 0000C INT 03H Breakpoint 00010 INT 04H Arithmetic Overflow Handler 00014 INT 05H Print Screen 00018 INT 06H Reserved - Invalid instruction code 0001C INT 07H Reserved - Coprocessor not present 00020 INT 08H Timer Interrupt Routine (18.21590 /sec) IRQ00 \ 00024 INT 09H Keyboard Service Routine IRQ01 | 00028 INT 0AH VGA Retrace Interrupt (and AT Slave Interrupts) IRQ02 Master 0002C INT 0BH Serial Device 2 Service Routine IRQ03 Int. 00030 INT 0CH Serial Device 1 Service Routine IRQ04 Contr. 00034 INT 0DH XT Hard Disk Interrupt Routine IRQ05 | 00038 INT 0EH Diskette Interrupt Routine IRQ06 | 0003C INT 0FH Parallel Port Service Routine IRQ07 / 00040 INT 10H Video Services 00044 INT 11H Equipment Check 00048 INT 12H Memory Size Check 0004C INT 13H Diskette and Hard Disk I/O 00050 INT 14H RS-232 Service Call 00054 INT 15H System Services Calls (XT Cassette Tape Drive I/O) 00058 INT 16H Keyboard Call 0005C INT 17H Printer I/O Call 00060 INT 18H Basic ROM Entry (startup) 00064 INT 19H Boot Loader: Implement System (IPL) from disk 00068 INT 1AH Time of Day Call 0006C INT 1BH Keyboard Break Address (Ctrl-Break) 00070 INT 1CH User Timer Interrupt 00074 INT 1DH Monitor ROM Ptr: for 6845 Video Inititialization(Video Parm Tbl) 00078 INT 1EH Disk Control Table Pointer (Disk Parameter Table) 0007C INT 1FH Alphanumeric Character Pattern Table Pointer 00080 INT 20H DOS Terminate Program 00084 INT 21H Microsoft DOS Function Calls 00088 INT 22H DOS Terminate Address (not a callable function) 0008C INT 23H DOS Ctrl-break Exit Address (not a callable function) 00090 INT 24H DOS Fatal Error Exit Address (not a callable function) 00094 INT 25H DOS Absolute Disk Read 00098 INT 26H DOS Absolute Disk Write 0009C INT 27H Terminate and Stay Resident (control passes to COMMAND.COM) 000A0 INT 28H Idle Loop, spooler waiting; issued by DOS when waiting 000A4 INT 29H CON Device Raw Output Handler 000A8 INT 2AH 3.x Network Communications 000AC INT 2BH-2DH Reserved for DOS 000B8 INT 2EH Execute DOS Command (undocumented) 000BC INT 2FH Print Spool Control(Multiplex Interrupt)(MS-DOS instalble Srvcs) 000C0 INT 30H-31H Internal Use 000C8 INT 32H Reserved for DOS 000CC INT 33H Microsoft Mouse Driver Calls 000D0 INT 34H-3EH Reserved for DOS 000FC INT 3FH Used by LINK to manage overlay segments 00100 INT 40H Fixed disk/Floppy Disk Handler 00104 INT 41H ROM pointer; Fixed Disk Parameters 00108 INT 42H EGA: Org. Video Vector Screen BIOS Entry 0010C INT 43H EGA: Initialization Parameters 00100 INT 44H EGA: Graphics Character Patterns 00114 INT 45H Reserved 00118 INT 46H AT: Pointer to Second Fixed Disk Parameters 0011C INT 47H Reserved 00120 INT 48H PCjr Cordless Keyboard Xlat Routine 00124 INT 49H PCjr Non-Keyboard Scan Code Xlat Table 00128 INT 4AH AT, PS/2 User Alarm Routine 0012C INT 4BH-4FH Reserved 00140 INT 50H Periodic Alarm Interrupt from Timer 00144 INT 51H-59H Reserved 00168 INT 5AH Cluster Adapter BIOS-entry Address 0016C INT 5BH Cluster Boot 00170 INT 5CH NETBIOS Entry Point 00174 INT 5DH-5FH Reserved 00180 INT 60H-66H Reserved for user program interrupts 0019C INT 67H EMM: Expanded Memory Manager Routines 001A0 INT 68H-6BH Unused 001B0 INT 6CH System Resume Vector 001B4 INT 6DH-6FH Unused 001C0 INT 70H Real Time Clock IRQ08 \ 001C4 INT 71H LAN Adapter (and IRQ2 hardware replacement) IRQ09 AT 001C8 INT 72H Reserved IRQ10 Slave 001CC INT 73H Reserved IRQ11 Int. 001D0 INT 74H Mouse Interrupt IRQ12 Contr. 001D4 INT 75H 80287 NMI Error BIOS Redirected to INT 2 IRQ13 | 001D8 INT 76H Fixed disk controller IRQ14 | 001DC INT 77H Reserved IRQ15 / 001E0 INT 78H-7FH Unused 00200 INT 80H-85H Reserved for BASIC 00218 INT 86H AT: NetBIOS relocated INT 18H 0021C INT 87H-F0H Reserved for BASIC Interpreter 003C4 INT F1H-FFH Reserved for User Program Interrupts 003FF-00300 Used for power-on and initial boot stack 00400-004FF BIOS Data Area: (2 byte words) 00400 4 words COM1: to COM4: port addresses 00408 3 words LPT1: to LPT3: port addresses 0040E 1 word LPT4: address except PS/2 Reserved 00410 1 word Equipment flag bits: 15-14 number of LPTs attached 13 internal modem (CVT) or reserved 12 joystick 11- 9 number of COMs 8 unused (jr: DMS chip present) 7- 6 number of disk drives 5 1=80x25 0=40x25 screen 4 1=color 0=monochrome 3- 2 00=64K chips; 11=256K chips (PC,XT,AT) reserved, pointing device (PS/2) 1 math coprocessor installed 0 IPL disk installed 00412 1 byte Init Flag; Reserved (CVT self-test status) 00413 1 word Memory size in K bytes 00415 1 byte Reserved 00416 1 byte Reserved 00417 2 bytes Keyboard monitor flag bytes 0 and 1: bit 7 ins lock 7 ins pressed 6 caps lock 6 caps pressed 5 num lock 5 num lock pressed 4 scroll lock 4 scroll pressed 3 alt pressed 3 pause locked 2 crtl pressed 2 sysreq pressed 1 shift pressed 0 >alt pressed 00419 1 byte Alternate keypad entry 0041A 1 word Keyboard buffer head pointer 0041C 1 word Keyboard buffer tail pointer 0041E 32 byte Keyboard buffer 0043E 1 byte Drive recalibration status bit 7 Interrupt flag 6-4 reserved 3 Recalibrate drive 3 2 Recalibrate drive 2 1 Recalibrate drive 1 0 Recalibrate drive 0 0043F 1 byte Motor Status bit 7 Currently reading or writing 6 reserved 5-4 00 drive 0 selected 01 drive 1 selected 10 drive 2 selected 11 drive 3 selected 3-0 Drive 3-0 Motor On status 00440 1 byte Motor Control time-out counter 00441 1 byte Diskette Status Return Code 00H - No error 01H - Invalid diskette drive parameter 02H - Address Mark not found 03H - Write-protect error 04H - Requested Sector not found 05H - reserved 06H - Diskette Change Line active 07H - reserved 08H - DMA overrun on operation 09H - Attempt to DMA Across a 64K boundary 0AH - reserved 0BH - reserved 0CH - Media Type not found 0DH - reserved 0EH - reserved 0FH - reserved 10H - CRC error on diskette read 20H - General Controller failure 40H - Seek operation failed 80H - Diskette drive not ready 00442 7 bytes Diskette Drive Controller Status Bytes (NEC) 00449 1 byte CRT_MODE bit 7 text 80x25 mono on mono card 6 graphics 640x200 mono on color card 5 graphics 320x200 mono on color card 4 graphics 320x200 on color card 3 text 80x25 color 2 text 80x25 mono on color 1 text 40x25 color 0 text 40x25 mono on color card 0044A 1 word CRT_COLS Number of columns (80) 0044C 1 word CRT_LEN Length of Regen Buffer in bytes 0044E 1 word CRT_START Starting Address in Regen Buffer 00450 8 words Cursor Position on each of eight pages 00460 1 word CURSOR_MODE top-bottom line of cursor (Cursor Type) 00462 1 byte ACTIVE_PAGE index 00463 1 word ADDR_6845 Base Address for 6845 Display Chip 3B4H for monochrome; 3D4H for color 00465 1 byte CRT_MODE_SETting for 3x8 Register (3B8H MDA; 3D8H CGA) 00466 1 byte CRT_PALLETTE Setting Register (3D9H) on Color Card 00467 1 dword Temporary storage for SS:SP during shutdown (PS/2: Pointer to reset code with memory preserved.) 0046B 1 byte Flag to indicate interrupt 0046C 2 words Timer counter (Timer Low, Timer High words) 00470 1 byte Timer overflow (24 hour roll over flag byte) 00471 1 byte Break key state (bit 7=1 if break key pressed) 00472 1 word Reset flag word: 1234 bypass mem. test 4321 preserve memory 5678 sys suspend 9ABC manufact. test ABCD sys POST loop (CVT) 00474 1 byte Hard Disk status or Reserved for ESDI Adapter/A 00H - No error 01H - Invalid Function Request 02H - Address Mark not found 03H - Write Protect error 04H - Requested Sector not found 05H - Reset Failed 06H - Reserved 07H - Drive Parameter Activity Failed 08H - DMA overrun on operation 09H - Data boundary error 0AH - Bad Sector Flag detected 0BH - Bad Track detected 0CH - Reserved 0DH - Invalid number of sectors on format 0EH - Control Data Address Mark detected 0FH - DMA Arbitration Level out of range 10H - Uncorrectable ECC or CRC error 20H - General Controller failure 40H - Seek operation failed 80H - Time out AAH - Drive not ready BBH - Undefined error occurred CCH - Write fault on selected drive E0H - Status error/Error Register 0 FFH - Sense operation failed 00475 1 byte Number of hard disk drives 00476 1 byte Fixed Disk Drive Control byte (PC XT) 00477 1 byte Fixed Disk Drive Controller Port (PC XT) 00478 4 bytes LPT1: to LPT4: time-out byte values (PS/2 has no LPT4:) 0047C 4 bytes COM1: to COM4: timeout byte values 00480 1 word Keyboard buffer start pointer (word) 00482 1 word Keyboard buffer end pointer (word) 00484 1 byte ROWS Video Character Rows - 1 00485 1 word POINTS Height of character matrix-bytes per character 00487 1 byte INFO byte: bit 7 Video mode number (of INT 10H funct.0) 6- 5 Size of video RAM 00 - 64K 10 -192K 01 -128K 11 -256K 4 reserved 3 1 - video subsystem is inactive 2 reserved 1 1 - video subsystem on monochrome 0 1 - alphanumeric cursor emulation enabled 00488 1 byte INFO_3 byte: bit 7 Input FEAT1 (bit 6 of ISR0 (Input Status Reg.) after output on FCR1 (featue control reg.) 6 Input FEAT1 (bit 5 of ISR0) after output on FCR1 5 Input FEAT0 (bit 6 of ISR0) after output on FCR0 4 Input FEAT0 (bit 5 of ISR0) after output on FCR0 3 EGA Config. switch 4 (1=off) 2 EGA Config. switch 3 1 EGA Config. switch 2 0 EGA Config. switch 1 00489 1 byte Flags bit 7 bit 4 Alphanumeric scan lines: 0 0 350 line mode 0 1 400 1 0 200 1 1 reserved 6 1 - display switching enabled 5 reserved 3 1 - default palett loading is disabled 2 1 - using monochrome monitor 1 1 - gray scale is enabled 0 1 - VGA is active 0048A 1 byte DCC Display Combination Code table index (VGA) 0048B 1 byte Media Control bit 7-6 Last diskettee drive data rate selected 00 - 500Kb per second 01 - 300Kb per second 10 - 250Kb per second 11 - reserved 5-4 Last diskette drive step rate selected 3-0 reserved 0048C 1 byte Hard Disk Status Register 0048D 1 byte Hard Disk Error Register 0048E 1 byte Hard Disk Interrupt Control Flag 0048F 1 byte Combination Hard Disk/Floppy Card (bit 0=1) 00490 1 byte Drive 0 media state byte 00491 1 byte Drive 1 media state byte 00492 1 byte Drive 2 media state byte 00493 1 byte Drive 3 media state byte bit 7-6 Diskettee drive date rate 00 - 500Kb per second 01 - 300Kb per second 10 - 250Kb per second 11 - reserved 5 Double stepping required 4 Media established 3 Reserved 2-0 Drive/Media State 000 - 360Kb diskette/360Kb drive not established 001 - 360Kb diskette/1.2Mb drive not established 010 - 1.2Mb diskette/1.2Mb drive not established 011 - 360Kb diskette/360Kb drive established 100 - 360Kb diskette/1.2Mb drive established 101 - 1.2Mb diskette/1.2Mb drive established 110 - Reserved 111 - None of the above 00494 1 byte Drive 0 track (cylinder) currently seeked 00495 1 byte Drive 1 track (cylinder) currently seeked 00496 1 byte Keyboard mode state and type flags bit 7 Read ID in progress 6 Last character was first ID character 5 Force Num Lock if read ID and KBX 4 101/102 keyboard installed 3 Right Alt key pressed 2 Right Ctrl key pressed 1 Last code was E0 Hidden code 0 Last code was E1 Hidden code 00497 1 byte Keyboard LED flags bit 7 Keyboard transmit error flag 6 Mode indicator update 5 Resend receive flag 4 Acknowledgment received 3 = 0 reserved 2-0 Keyboard LED state bits 00498 1 word Offset address to user wait complete flag 0049A 1 word Segment to user wait complete flag 0049C 1 word User wait count, microseconds low word 0049E 1 word User wait count, microseconds high word 004A0 1 byte Wait active flag bit 7 wait-time elapse and post flag 6-1 reserved 0 INT 15, AH=86 wait has occurred 004A1 1 byte LANA DMA channel flags 004A2 1 byte LANA 0 status 004A3 1 byte LANA 1 status 004A4 1 dword Saved hardfile interrupt vector 004A8 1 dword BIOS Video Save Table and overrides Save Pointer Table: dword 1 Address of Video Parameter table Video Parameter table 1 byte Value for CRT_COLS 1 byte Value for ROWS 1 byte Value for POINTS 1 word Value for CRT_LEN 4 bytes Values for Sequencer regisers 1-4 1 byte Value for Miscellaneous Output Register 25 bytes Values for CRTC registers 0-18H 20 bytes Values for Attribute Controller Regs. 0-13H 9 bytes Values for Graphics Controller Regs. 0-8 dword 2 Address of Dynamic Parameter Save Area (EGA, VGA) Parameter Save Area 16 bytes Current contents of Graphics Controller Pallette Regs. 1 byte Current contents of Graphics Controller Overscan Reg. 239 bytes reserved dword 3 Address of Alphanumeric Character Set Override Alphanumeric Character Set Override 1 byte Length in bytes of each char. definition 1 byte Character generator RAM bank 1 word Number of characters defined 1 word First character code in table 1 dword Address of character definition (font) table 1 byte Number of displayed character rows n byte array Applicable video mode values 1 byte 0FFH end of list of modes dword 4 Address of Graphics Character Set Override Graphics Character Set Override 1 byte Number of displayed character rows 1 word Length in bytes of each character definition 1 dword Address of character definition (font) table n byte array Applicable video mode values 1 byte 0FFH end of list of video modes dword 5 Address of Secondary Save Pointer Table (VGA) dword 6 = 0:0 reserved dword 7 = 0:0 reserved Secondary Save Pointer Table word 1 Length of Secondary Save Pointer table in bytes dword 2 Address of Display Combination Code table Display Combination Code Table 1 byte Numberof entries in table 1 byte DCC table version number 1 byte Maximum display type code 1 byte reserved word array Valid display combinations 0,0 entry 0 No displays 0,1 entry 1 MDPA 0,2 entry 2 CGA 2,1 entry 3 MDPA + CGA 0,4 entry 4 EGA 4,1 entry 5 EGA + MDPA 0,5 entry 6 MEGA 2,5 entry 7 MEGA + CGA 0,6 entry 8 PGC 1,6 entry 9 PGC + MDPA 5,6 entry 10 PGC + MEGA 0,8 entry 11 CVGA 1,8 entry 12 CVGA + MDPA 0,7 entry 13 MVGA 2,7 entry 14 MVGA + CGA 2,6 entry 15 MVGA + PGC dword 3 Address of second Alphanumeric Character Set Override Second Alpha Mode Auxillary Character Generator Table 1 byte Bytes/Character 1 byte Block to load 1 byte Reserved 1 dword Pointer to a font table n byte Mode values for this font 1 byte 0FFH end of mode values dword 4 Address of User Palette Profile table Palette Profile Table (VGA only) 1 byte Underlining 1 - enable in all alphanumeric modes 0 - enable in monochrome alpha modes -1 - disable in all alpha modes 1 byte reserved 1 word reserved 1 word Number of Attribute Controller registers in table (Internal palette count 0-17, 17 normal) 1 word First Attribute Controller reg. number (Internal palette index 0-16, 0 normal) 1 dword Address of Attribute Controller reg. table (Pointer to internal palette) 1 word Number of video DAC Color registers in table (External palette count 0-256, 256 normal) 1 word First video DAC Color register number (External Palette index 0-255, 0 normal) 1 dword Address of video DAC Color register table (Pointer to external palette) n byte array Applicable video mode values for this font 1 byte 0FFH end of list of video modes dword 5 reserved dword 6 reserved dword 7 reserved 004AC 8 bytes Reserved 004B4 1 byte Keyboard NMI control flags (CVT) 004B5 1 dword Keyboard break pending flags (CVT) 004B9 1 byte Port 60 single byte queue (CVT) 004BA 1 byte Scan code of last key (CVT) 004BB 1 byte Pointer to NMI buffer head (CVT) 004BC 1 byte Pointer to NMI buffer tail (CVT) 004BD 16 bytes NMI scan code buffer (CVT) 004CE 1 word Day counter (CVT and after) 004D0 32 bytes Reserved 004F0 16 bytes Application program communication area 00500-005FF DOS Data Area: 00500 1 byte Print screen status flag 1 = printer active, 0FFH = printer fault 00501 3 bytes Reserved for BASIC and POST work area 00504 1 byte Single-drive mode status byte: 0=drive A, 1=drive B 00505 10 bytes Reserved POST work area 00510 18 bytes Reserved for BASIC 0050F 1 bytes BASIC Shell Flag =2 if current shell 00510 1 word BASIC segment address storage set with DEF SEG 00512 1 dword BASIC int 1Ch clock interrupt vector 00516 1 dword BASIC int 23h ctrl-break interrupt vector 0051A 1 dword BASIC int 24h disk error interrupt vector 0051B 5 bytes BASIC dynamic storage 00520 2 bytes DOS dynamic storage 00522 14 bytes Used by DOS for diskette initialization (see INT 1EH) 00530 4 bytes Used by MODE command 00534 204 bytes Reserved for DOS data 00600 256 bytes Reserved for DOS 00700 - I/O drivers from xIO.SYS (Disk data, Console handler, Serial Ports drivers, Parallel Port drivers, Null driver) 00847 xIO.SYS IRET for interrupts 1, 3, and 0FH during POST MS-DOS kernel from xDOS.SYS: Interrupt handlers and routines MS-DOS disk buffer cache, FCBs and installable device drivers MCB (Memory control block, 16 bytes, paragraph aligned) 1 byte 4Dh Signature byte of intermediate MCB 1 word Segment of owner program (0 if transient program) 1 word Paragraphs in block 11 bytes reserved Resident portion of COMMAND (Int 22, 23, 24 handlers) (Transient portion, batch processor loaded into high memory) MCB of original environment Original Environment (COMSPEC=xxxx, PATH=yyyy, etc.) MCB for first resident program PSP (Program Segment Prefix) 256 bytes: Hex offsets: 0 CDh,20h (Int 20h terminate program handler) 1 Segment for end of allocation block 4 Reserved 5 Long call to DOS function dispatcher 0A Previous Int 22h vector 0E Previous Int 23h vector 12 Previous Int 24h vector 14 Reserved 2C Segment of local environment block 2E Reserved 5C First File Control Block 6C Second File Control Block 80 Command tail and default Disk Transfer Area First resident program MCB for Environment copy #1 Environment copy #1 MCB for second resident program PSP for second resident program Second resident program MCB for Environment copy #2 Environment copy #2 MCB for current transient program, Last MCB: 16 bytes: 5AH, seg. of prog., paragraph size to xxxxxx. 4Dh and 5Ah are ASCII 'MZ', the initials of Mark Zbikowski, who, along with Aaron Reynolds, were the developers of DOS. 'MZ' is also used as the first two bytes in an EXE file. PSP for transient program Start of Transient Program xxxxx-yyyyy User's transient program, memory allocated to zzzzz zzzzz-end Possible user resident program loaded into high memory (end is A0000 for MS-DOS 2.x, 9FC00 for 3.x) Extended BIOS Data Area: POST in PS/2 allocates memory for data in high memory below 640K (A0000H) in (n) Kbytes. The word value at 00413H (memory size) is decremented by (n) by this allocation. The first byte in the Extended BIOS Data Area is initialized to (n). To access this segment, issue Int 15h, AH=C1h (return Extended BIOS Data Area Segment Address). To determine if an Extended BIOS Data Area is allocated, use Int 15h, AH=C0h (Return System Configuration Parameters). A0000-AFFFF Start of EGA and VGA graphics display RAM Modes 0Dh and above B0000-B3FFF Start of MDPA and Hercules graphics display RAM B4000-B7FFF Reserved for Graphics display RAM B8000-BBFFF Start of CGA Color graphics display RAM BC000-BFFFF Reserved for Graphics display RAM C0000-C3FFF EGA BIOS ROM C4000-C5FFF Video adapter ROM space C6000-C63FF 256 bytes of PGA communication area C6400-C7FFF Last 7Kb of video adapter ROM space C8000-CBFFF 16K of hard disk BIOS adapter ROM space \ CC000-CFFFF | D0000-D7FFF 32K cluster adapter BIOS ROM |Expansion Cards D8000-DBFFF | DC000-DFFFF Last 16Kb of adapter ROM space / E0000-EFFFF 64K expansion ROM space (AT, PS/2) F0000-F3FFF System Monitor ROM F4000-F7FFF System Expansion ROMs F8000-FBFFF " FC000-FEFFF BIOS ROM; BASIC and simple BIOS FF000-FFFEF System ROM FFFF0-FFFF3 Hardware boot far jump vector At reset or power up, program execution begins at this address (this is a feature of the 80x86, not DOS or the BIOS). The standard ROM reads the boot sector from disk in A: or hard disk if A: not read. The boot record resides on track 0, sector 1, side 0 of every formated diskette, or on the first sector of the DOS partition on hard disks. The boot code is loaded at 0:7C00H. (This is 1K less than 32K, half of the original IBM PC 64K.) Control is transferred to the boot code. A hard disk boot code checks for a disk partition table. If an active disk partition is found, the DOS boot code is loaded. The MS-DOS boot loader searches for xxxBIO.SYS as the first file in the root directory. xxxDOS.SYS must be the second file in the root. If they are found, then xxxBIO.SYS is loaded, which in turn, loads xxxDOS.SYS. xxxBIO.SYS is the interface module to the ROM BIOS, which performs the low-level interface to devices. When initialization is completed, DOS code is relocated downward and entered at its first byte. xxxDOS.SYS initializes its interrupt handlers and then uses the EXEC function to run COMMAND.COM. Early in the POST (power on self test) the absolute addresses 0C0000H through 0C7FFFH are scanned in 2Kb blocks in search of valid video adapter ROM. If found, POST executes a far call to byte 3 of the ROM to allow power-on video initialization. Similarly, addresses 0C8000H through 0DFFFFH are scanned in 2Kb blocks for valid adapter ROM modules. Valid adapter ROM have 55H,AAH as the first two bytes. The third byte gives the length of 512b blocks (up to 7FH) in the ROM. The ROM is checked by summing each byte modulo 100H. The sum must be 0 for a valid ROM. FFFF5-FFFFC ROM date in ASCII form. E.g.: '09/02/86' FFFFD Reserved FFFFE-FFFFF IBM Model Bytes: PC PC PC PC PC PC PC PS/2 PS/2 PS/2 PS/2 XT jr AT AT3x9 XT/2 CVT 30 50 60 80 ------------------------------------------------------ Model bytes FF FE FD FC FC FB F9 FA FC FC F8 Submodels 0 0-1 0-1 0 0 0 4 5 0-1 Revisions 1-2 0-1 1-2 0 0 0 0 0 COMPACT PC XT DP HP110 ------------------ ----- Model bytes 2D 9A FE B6 100000-15FFFF 384K RAM on AT, PS/2 system board 15FFFF-FDFFFF Extended RAM for the 80286. Additional memory in 8086 machines use bank switching of a segment of memory within the 1 Meg address range of the 8086. This is called expanded memory. The standard interface to expanded memory is through the EMM (Expanded Memory Manager) at Int 67h. The 80286 can directly address 16 Megabytes of memory. FE0000-FEFFFF Reserved FF0000-FFFFFF 64K ROM BIOS on AT, PS/2 01000000-FFFFFFFF Extended RAM for the 80386. The 80386 can address up to 4 Gigabytes of physical memory.