1
0
Fork 0
mirror of https://github.com/tailix/kernel.git synced 2024-11-20 11:16:10 -05:00

Prepare to use all interrupts

This commit is contained in:
Alex Kotov 2023-01-05 19:19:30 +04:00
parent 649a1e7bdc
commit ba0776d6d0
Signed by: kotovalexarian
GPG key ID: 553C0EBBEB5D5F08
2 changed files with 239 additions and 37 deletions

View file

@ -60,6 +60,7 @@ ERRCODE 0x0c ; #SS - Stack Fault Exception
ERRCODE 0x0d ; #GP - General Protection Exception
ERRCODE 0x0e ; #PF - Page-Fault Exception
NOERRCODE 0x0f ; Reserved
NOERRCODE 0x10 ; #MF - x87 FPU Floating-Point Error
ERRCODE 0x11 ; #AC - Alignment Check Exception
NOERRCODE 0x12 ; #MC - Machine-Check Exception
@ -77,22 +78,242 @@ NOERRCODE 0x1d ; Reserved
NOERRCODE 0x1e ; Reserved
NOERRCODE 0x1f ; Reserved
; Hardware IRQs
; Other interrupts
NOERRCODE 0x20 ; Programmable Interval Timer
NOERRCODE 0x21 ; Keyboard
NOERRCODE 0x22 ; Slave PIC
NOERRCODE 0x23 ; COM 2/4
NOERRCODE 0x24 ; COM 1/3
NOERRCODE 0x25 ; LPT 2
NOERRCODE 0x26 ; Floppy Drive Controller
NOERRCODE 0x27 ; LPT 1
NOERRCODE 0x20
NOERRCODE 0x21
NOERRCODE 0x22
NOERRCODE 0x23
NOERRCODE 0x24
NOERRCODE 0x25
NOERRCODE 0x26
NOERRCODE 0x27
NOERRCODE 0x28
NOERRCODE 0x29
NOERRCODE 0x2a
NOERRCODE 0x2b
NOERRCODE 0x2c
NOERRCODE 0x2d
NOERRCODE 0x2e
NOERRCODE 0x2f
NOERRCODE 0x28 ; Real Time Clock
NOERRCODE 0x29 ; Master PIC
NOERRCODE 0x2a ; Reserved
NOERRCODE 0x2b ; Reserved
NOERRCODE 0x2c ; Reserved
NOERRCODE 0x2d ; Coprocessor exception
NOERRCODE 0x2e ; Hard Drive Controller
NOERRCODE 0x2f ; Reserved
NOERRCODE 0x30
NOERRCODE 0x31
NOERRCODE 0x32
NOERRCODE 0x33
NOERRCODE 0x34
NOERRCODE 0x35
NOERRCODE 0x36
NOERRCODE 0x37
NOERRCODE 0x38
NOERRCODE 0x39
NOERRCODE 0x3a
NOERRCODE 0x3b
NOERRCODE 0x3c
NOERRCODE 0x3d
NOERRCODE 0x3e
NOERRCODE 0x3f
NOERRCODE 0x40
NOERRCODE 0x41
NOERRCODE 0x42
NOERRCODE 0x43
NOERRCODE 0x44
NOERRCODE 0x45
NOERRCODE 0x46
NOERRCODE 0x47
NOERRCODE 0x48
NOERRCODE 0x49
NOERRCODE 0x4a
NOERRCODE 0x4b
NOERRCODE 0x4c
NOERRCODE 0x4d
NOERRCODE 0x4e
NOERRCODE 0x4f
NOERRCODE 0x50
NOERRCODE 0x51
NOERRCODE 0x52
NOERRCODE 0x53
NOERRCODE 0x54
NOERRCODE 0x55
NOERRCODE 0x56
NOERRCODE 0x57
NOERRCODE 0x58
NOERRCODE 0x59
NOERRCODE 0x5a
NOERRCODE 0x5b
NOERRCODE 0x5c
NOERRCODE 0x5d
NOERRCODE 0x5e
NOERRCODE 0x5f
NOERRCODE 0x60
NOERRCODE 0x61
NOERRCODE 0x62
NOERRCODE 0x63
NOERRCODE 0x64
NOERRCODE 0x65
NOERRCODE 0x66
NOERRCODE 0x67
NOERRCODE 0x68
NOERRCODE 0x69
NOERRCODE 0x6a
NOERRCODE 0x6b
NOERRCODE 0x6c
NOERRCODE 0x6d
NOERRCODE 0x6e
NOERRCODE 0x6f
NOERRCODE 0x70
NOERRCODE 0x71
NOERRCODE 0x72
NOERRCODE 0x73
NOERRCODE 0x74
NOERRCODE 0x75
NOERRCODE 0x76
NOERRCODE 0x77
NOERRCODE 0x78
NOERRCODE 0x79
NOERRCODE 0x7a
NOERRCODE 0x7b
NOERRCODE 0x7c
NOERRCODE 0x7d
NOERRCODE 0x7e
NOERRCODE 0x7f
NOERRCODE 0x80
NOERRCODE 0x81
NOERRCODE 0x82
NOERRCODE 0x83
NOERRCODE 0x84
NOERRCODE 0x85
NOERRCODE 0x86
NOERRCODE 0x87
NOERRCODE 0x88
NOERRCODE 0x89
NOERRCODE 0x8a
NOERRCODE 0x8b
NOERRCODE 0x8c
NOERRCODE 0x8d
NOERRCODE 0x8e
NOERRCODE 0x8f
NOERRCODE 0x90
NOERRCODE 0x91
NOERRCODE 0x92
NOERRCODE 0x93
NOERRCODE 0x94
NOERRCODE 0x95
NOERRCODE 0x96
NOERRCODE 0x97
NOERRCODE 0x98
NOERRCODE 0x99
NOERRCODE 0x9a
NOERRCODE 0x9b
NOERRCODE 0x9c
NOERRCODE 0x9d
NOERRCODE 0x9e
NOERRCODE 0x9f
NOERRCODE 0xa0
NOERRCODE 0xa1
NOERRCODE 0xa2
NOERRCODE 0xa3
NOERRCODE 0xa4
NOERRCODE 0xa5
NOERRCODE 0xa6
NOERRCODE 0xa7
NOERRCODE 0xa8
NOERRCODE 0xa9
NOERRCODE 0xaa
NOERRCODE 0xab
NOERRCODE 0xac
NOERRCODE 0xad
NOERRCODE 0xae
NOERRCODE 0xaf
NOERRCODE 0xb0
NOERRCODE 0xb1
NOERRCODE 0xb2
NOERRCODE 0xb3
NOERRCODE 0xb4
NOERRCODE 0xb5
NOERRCODE 0xb6
NOERRCODE 0xb7
NOERRCODE 0xb8
NOERRCODE 0xb9
NOERRCODE 0xba
NOERRCODE 0xbb
NOERRCODE 0xbc
NOERRCODE 0xbd
NOERRCODE 0xbe
NOERRCODE 0xbf
NOERRCODE 0xc0
NOERRCODE 0xc1
NOERRCODE 0xc2
NOERRCODE 0xc3
NOERRCODE 0xc4
NOERRCODE 0xc5
NOERRCODE 0xc6
NOERRCODE 0xc7
NOERRCODE 0xc8
NOERRCODE 0xc9
NOERRCODE 0xca
NOERRCODE 0xcb
NOERRCODE 0xcc
NOERRCODE 0xcd
NOERRCODE 0xce
NOERRCODE 0xcf
NOERRCODE 0xd0
NOERRCODE 0xd1
NOERRCODE 0xd2
NOERRCODE 0xd3
NOERRCODE 0xd4
NOERRCODE 0xd5
NOERRCODE 0xd6
NOERRCODE 0xd7
NOERRCODE 0xd8
NOERRCODE 0xd9
NOERRCODE 0xda
NOERRCODE 0xdb
NOERRCODE 0xdc
NOERRCODE 0xdd
NOERRCODE 0xde
NOERRCODE 0xdf
NOERRCODE 0xe0
NOERRCODE 0xe1
NOERRCODE 0xe2
NOERRCODE 0xe3
NOERRCODE 0xe4
NOERRCODE 0xe5
NOERRCODE 0xe6
NOERRCODE 0xe7
NOERRCODE 0xe8
NOERRCODE 0xe9
NOERRCODE 0xea
NOERRCODE 0xeb
NOERRCODE 0xec
NOERRCODE 0xed
NOERRCODE 0xee
NOERRCODE 0xef
NOERRCODE 0xf0
NOERRCODE 0xf1
NOERRCODE 0xf2
NOERRCODE 0xf3
NOERRCODE 0xf4
NOERRCODE 0xf5
NOERRCODE 0xf6
NOERRCODE 0xf7
NOERRCODE 0xf8
NOERRCODE 0xf9
NOERRCODE 0xfa
NOERRCODE 0xfb
NOERRCODE 0xfc
NOERRCODE 0xfd
NOERRCODE 0xfe
NOERRCODE 0xff

View file

@ -57,6 +57,7 @@ void interrupts_setup(const uint16_t kernel_cs_selector)
init_intr(0x0e, 0);
init_intr(0x0f, 0);
init_intr(0x10, 0);
init_intr(0x11, 0);
init_intr(0x12, 0);
init_intr(0x13, 0);
@ -72,24 +73,4 @@ void interrupts_setup(const uint16_t kernel_cs_selector)
init_intr(0x1d, 0);
init_intr(0x1e, 0);
init_intr(0x1f, 0);
// Hardware IRQs
init_intr(0x20, 0);
init_intr(0x21, 0);
init_intr(0x22, 0);
init_intr(0x23, 0);
init_intr(0x24, 0);
init_intr(0x25, 0);
init_intr(0x26, 0);
init_intr(0x27, 0);
init_intr(0x28, 0);
init_intr(0x29, 0);
init_intr(0x2a, 0);
init_intr(0x2b, 0);
init_intr(0x2c, 0);
init_intr(0x2d, 0);
init_intr(0x2e, 0);
init_intr(0x2f, 0);
}