Interrupt Table as Implemented by System BIOS/DOS

% INT # Locus Function

0 CPU divide by zero

1 CPU single step

2 CPU non-maskable

3 CPU breakpoint

4 CPU overflow trap

5 BIOS print screen

6 CPU Invalid opcode (186,286,386)

7 CPU coprocessor not available (286,386)

8 IRQ0 ~timer~ (55ms intervals, 18.21590 per second)

9 IRQ1 keyboard service required (see ~INT 9~)

A IRQ2 slave ~8259~ or EGA/VGA vertical retrace

B IRQ3 COM2 service required (PS/2 MCA COM3-COM8)

C IRQ4 COM1 service required

D IRQ5 fixed disk or data request from LPT2

E IRQ6 floppy disk service required

F IRQ7 data request from LPT1 (unreliable on IBM mono)

10 BIOS video (see ~INT 10~)

11 BIOS Equipment determination (see ~INT 11~)

12 BIOS memory size (see ~INT 12~)

13 BIOS disk I/O service (see ~INT 13~)

14 BIOS serial communications (see ~INT 14~)

15 BIOS system services, cassette (see ~INT 15~)

16 BIOS keyboard services (see ~INT 16~)

17 BIOS parallel printer (see ~INT 17~)

18 BIOS ROM BASIC loader

19 BIOS bootstrap loader (unreliable, see ~INT 19~)

1A BIOS time of day (see ~INT 1A~)

1B BIOS user defined ctrl-break handler (see ~INT 1B~)

1C BIOS user defined clock tick handler (see ~INT 1C~)

1D BIOS ~6845~ video parameter pointer

1E BIOS diskette parameter pointer (base table)

1F BIOS graphics character table

20 DOS general program termination

21 DOS function request services (see ~INT 21~)

22 DOS terminate address (see ~INT 22~)

23 DOS control break termination address (see ~INT 23~)

24 DOS critical error handler (see ~INT 24~)

25 DOS absolute disk read (see ~INT 25~)

26 DOS absolute disk write (see ~INT 26~)

27 DOS terminate and stay resident (see ~INT 27~)

28 DOS idle loop, issued by DOS when idle (see ~INT 28~)

29 DOS fast TTY console I/O (see ~INT 29~)

2A DOS critical section and NETBIOS (see ~INT 2A~)

2B DOS internal, simple ~IRET~ in DOS 2.0-5.0

2C DOS internal, simple IRET in DOS 2.0-5.0

2D DOS internal, simple IRET in DOS 2.0-5.0

2E DOS exec command from base level command

interpreter (see ~INT 2E~)

2F DOS multiplexer (see ~INT 2F~)

30-31 CPM far jump vector for CPM (not an interrupt)

31 DPMI DOS Protected Mode Interface (for DOS extenders)

32 reserved

33 mouse support (see ~INT 33~)

34-3E Microsoft/Borland floating point emulation

3F overlay manager

40 BIOS hard disk

41 BIOS fixed disk 0 parameters pointer (see ~INT 13,9~)

42 BIOS relocated video handler (EGA/VGA/PS)

43 BIOS user font table (EGA/VGA/PS)

44 BIOS first 128 graphics characters (also Netware)

45 BIOS reserved for BIOS

46 BIOS fixed disk 1 parameters ptr (see ~INT 13,9~/INT 41)

47 BIOS reserved for BIOS

48 BIOS PCjr cordless keyboard translation

49 BIOS PCjr non-keyboard scancode translation table

4A BIOS user alarm (AT,CONV,PS/2) (see ~INT 4A~)

4B-4F BIOS reserved

50 BIOS periodic alarm from timer (PS/2)

51-58 BIOS reserved

59 BIOS GSS Computer Graphics Interface

5A BIOS cluster adapter BIOS entry point

5B BIOS cluster adapter boot

5C NETBIOS NETBIOS interface, TOPS interface

5D-5F BIOS reserved for BIOS

60-67 reserved for user software interrupts

67 EMS LIM/EMS specification (see ~INT 67~)

68 APPC

69-6B reserved by IBM

6C DOS DOS 3.2 real time clock update

BIOS system resume vector

6D-6F reserved

70 IRQ8 real time clock (AT,XT286,PS50+, see ~INT 15~)

71 IRQ9 software redirected to IRQ2 (AT,XT286,PS50+)

72 IRQ10 reserved (AT,XT286,PS50+)

73 IRQ11 reserved (AT,XT286,PS50+)

74 IRQ12 mouse interrupt (PS50+)

75 IRQ13 numeric coprocessor NMI error (AT,XT286,PS50+)

76 IRQ14 fixed disk controller (AT,XT286,PS50+)

77 IRQ15 reserved (AT,XT286,PS50+)

78-79 unused

80-85 ROM BASIC

86-F0 DOS reserved for BASIC interpreter use

86 NETBIOS NETBIOS relocated INT 18

E0 CPM CP/M 86 function calls

F1-FF reserved by IBM

FE-FF may be destroyed by return from protected

mode using VDISK on 286 machines (Apr 86, DDJ)

- Intel defined 0 through 20h for use for internal CPU; IBM

redefined interrupts 0 through 1Fh for its own use, hence

the duplicate definitions in the tables

- all interrupts except the internal CPU exceptions push the

flags and the CS:IP of the next instruction onto the stack.

CPU exception interrupts are similar but push the CS:IP of the

causal instruction. 8086/88 divide exceptions are different,

they return to the instruction following the division

- interrupts are disabled upon entry into any interrupt routine and

should be enabled by the user or by an ~IRET~

- in DOS 3.2+ hardware IRQ interrupts are re-vectored through DOS

to provide standard stack frames


Zurück zum Interrupt Info. Roger Morgan / 1998 L.Änderung 29.03.99