IBM PC BIOS and MS/PC-DOS Interrupt Services Summary

Number Address Type Description

------- ------- ----.. --------------------------------------------

\00 CPU Divide by Zero

\01 CPU Single Step

\02 CPU Nonmaskable

\03 CPU Breakpoint

\04 CPU Overflow

\05 BIOS Print Screen

\06 hdw Reserved

\07 hdw Reserved

\08 hdw Time of Day

\09 hdw Keyboard

\0A hdw Reserved

\0B hdw Communications (8259)

\0C hdw Communications

\0D hdw Disk

\0E hdw Diskette

\0F hdw Printer

\10 BIOS Video I/O - services to handle video output

Int AH AL BH BL CH CL DH DL DS:SI ES:DI

10 00 vm Set Video Mode

.. .. .. .. .. .. .. .. .. .. .. ..

10 01 ls le Set Cursor Line Start, End

.. .. .. .. .. .. .. .. .. .. .. ..

10 02 Pg Rw Cl Set Cursor Row,Col on Page *1

.. .. .. .. .. .. .. .. .. .. .. ..

10 03 Pg Get Cursor Row,Col,Line Start,End on Page

.. .. .. .. ls le Rw Cl .. .. .. ..

10 04 Get Light Pen Down,Graphics x,y,

dn .. grafx grafy Rw Cl .. .. .. .. Text Row,Column

10 05 Pg Set Page

.. .. .. .. .. .. .. .. .. .. .. ..

10 06 n at r1 c1 r2 c2 Scroll up n lines, in area from r1,c1 to

.. .. .. .. .. .. .. .. .. .. .. .. r2,c2 fill with attribute

10 07 n at r1 c1 r2 c2 Scroll down n lines, in area from r1,c1

.. .. .. .. .. .. .. .. .. .. .. .. to r2,c2 fill with attribute

10 08 Pg Get attribute and character at current

at ch .. .. .. .. .. .. .. .. .. .. cursor position on page

10 09 ch Pg at count Fill attribute and character at current

.. .. .. .. .. .. .. .. .. .. .. .. cursor position on page for count

10 0A ch pg count Fill character

10 0B sw co

\11 BIOS Equipment Check

\12 BIOS Memory

\13 BIOS Diskette/Disk

\14 BIOS Serial Communications

\15 BIOS Cassette, System Services

\16 BIOS Keyboard

\17 BIOS Parallel Printer

\18 BIOS ROM BASIC Loader

\19 BIOS Bootstrap Loader

\1A BIOS Time of Day

\1B BIOS Keyboard Break

\1C BIOS Timer Tick

\1D BIOS Video Initialization

\1E BIOS Diskette Parameters

\1F BIOS Video Graphics Characters, second set

\20 DOS General Program Termination

\21 DOS DOS Services Function Request

Int AH AL BH BL CH CL DH DL DS:SI ES:DI

21 00 Terminate Process

21 01 Console Input

ch

21 02 ch Console Output

21 03 Auxiliary Input

ch

21 04 ch Auxiliary Output

21 05 ch Printer Output

21 06 ch Direct Console IO

ch also uses Zero Flag

21 07 Keyboard Input

ch no Ctrl-C check

21 08 Keyboard Input

ch

21 09 strng zz Console Output String

21 0A Console Input String

strng zz

21 0B Keyboard Status

fl

21 0C fc strng zz Flush then call Function

ch

21 0D Disk Reset

21 0E

\22 DOS Called Program Termination Address

\23 DOS Control Break Termination Address

\24 DOS Critical Error Handler

\25 DOS Absolute Disk Read

\26 DOS Absolute Disk Write

\27 DOS Terminate and Stay Resident

\28 DOS r Reserved for DOS

\29 DOS * Fast Screen Write

\2A DOS Microsoft Networks - Session Layer Interrupt

\2B DOS r Reserved and unknown

\2C DOS r Reserved and unknown

\2D DOS r Reserved and unknown

\2E DOS r Reserved and unknown

\2F DOS Multiplex Interrupt

\30 DOS * Far jump instruction for CP/M-style calls

\31 DOS r Reserved and unknown

\32 DOS r Reserved and unknown

\33 DOS Used by Microsoft Mouse Driver

\34 DOS r Reserved and unknown

\35 DOS r Reserved and unknown

\36 DOS r Reserved and unknown

\37 DOS r Reserved and unknown

\38 DOS r Reserved and unknown

\39 DOS r Reserved and unknown

\3A DOS r Reserved and unknown

\3B DOS r Reserved and unknown

\3C DOS r Reserved and unknown

\3D DOS r Reserved and unknown

\3E DOS r Reserved and unknown

\3F DOS r Reserved and unknown

\40 BIOS r Hard Disk BIOS

\41 BIOS r Hard Disk Parameters (except PC1)

\42 BIOS r Pointer to screen BIOS entry (EGA, VGA, PS/2)

\43 BIOS r Pointer to EGA initialization parameter table

\44 BIOS First 128 Graphics Characters

\45 BIOS r Reserved by IBM (not initialized)

\46 BIOS Pointer to hard disk 2 params (AT, PS/2)

\47 BIOS r Reserved by IBM (not initialized)

\48 BIOS PCjr Cordless Keyboard Translation

\49 BIOS PCjr Non-Keyboard Scancode Translation Table

\4A BIOS r Real-Time Clock Alarm (Convertible, PS/2)

4B BIOS Reserved for BIOS

4C BIOS Reserved for BIOS

4D BIOS Reserved for BIOS

4E BIOS Reserved for BIOS

4F BIOS Reserved for BIOS

50 BIOS Reserved for BIOS

51 BIOS Reserved for BIOS

52 BIOS Reserved for BIOS

53 BIOS Reserved for BIOS

54 BIOS Reserved for BIOS

55 BIOS Reserved for BIOS

56 BIOS Reserved for BIOS

57 BIOS Reserved for BIOS

58 BIOS Reserved for BIOS

59 BIOS Reserved for BIOS

\5A BIOS r Cluster Adapter BIOS entry address

\5B BIOS*r IBM (cluster adapter?)

\5C BIOS NETBIOS interface entry port

\60 10-Net Network

61 User Program Interrupts (availible for general use)

62 User Program Interrupts (availible for general use)

63 User Program Interrupts (availible for general use)

64 User Program Interrupts (availible for general use)

65 User Program Interrupts (availible for general use)

66 User Program Interrupts (availible for general use)

\67 Used by LIM & AQA EMS, EEMS

68 Reserved by IBM

69 Reserved by IBM

6A Reserved by IBM

6B Reserved by IBM

6C Reserved by IBM

6D Reserved by IBM

6E Reserved by IBM

6F Reserved by IBM

70 Reserved by IBM

71 Reserved by IBM

72 Reserved by IBM

73 Reserved by IBM

74 Reserved by IBM

75 Reserved by IBM

76 Reserved by IBM

77 Reserved by IBM

78 Reserved by IBM

79 Reserved by IBM

7A Reserved by IBM

7B Reserved by IBM

7C Reserved by IBM

7D Reserved by IBM

7E Reserved by IBM

7F Reserved by IBM

\6C System Resume Vector (Convertible)

\6F some Novell and 10-Net API functions

\70 IRQ08 Real Time Clock Interrupt (AT, PS/2)

\71 IRQ09 LAN Adapter 1

\72 IRQ10 (AT, XT/286, PS/2) Reserved

\73 IRQ11 (AT, XT/286, PS/2) Reserved

\74 IRQ12 Mouse Interrupt (PS/2)

\75 IRQ13 Coprocessor Error

\76 IRQ14 Hard Disk Controller (AT, PS/2)

\77 IRQ15 (AT, XT/286, PS/2) Reserved

\7C IBM REXX88PC command language

80

-85 ROM BASIC

86

-F0 Used by BASIC Interpreter When BASIC is running

F1

-FF Reserved by IBM Interprocess Communications Area

\F8 ICA *r Set Shell Interrupt (OEM)

\F9 ICA *r OEM SHELL service codes

\FA ICA r USART ready (RS-232C)

\FB ICA r USART RS ready (keyboard)

\FE ICA *r used on '283 & '386

\FF ICA *r used on '283 & '386