Fix up wrong interrupt handler numbers in boot.s

dev
Nigel Barink 2021-05-28 22:18:50 +01:00
parent 595a7d5163
commit 5f50f8c013
1 changed files with 56 additions and 32 deletions

View File

@ -273,116 +273,140 @@ irs31:
irq0:
cli
push $0
push $32
jmp irs_common
push $0
jmp irq_common
.globl irq1
irq1:
cli
push $0
push $33
jmp irs_common
push $1
jmp irq_common
.globl irq2
irq2:
cli
push $0
push $34
jmp irs_common
push $2
jmp irq_common
.globl irq3
irq3:
cli
push $0
push $35
jmp irs_common
push $3
jmp irq_common
.globl irq4
irq4:
cli
push $0
push $36
jmp irs_common
push $4
jmp irq_common
.globl irq5
irq5:
cli
push $0
push $37
jmp irs_common
push $5
jmp irq_common
.globl irq6
irq6:
cli
push $0
push $38
jmp irs_common
push $6
jmp irq_common
.globl irq7
irq7:
cli
push $0
push $39
jmp irs_common
push $7
jmp irq_common
.globl irq8
irq8:
cli
push $0
push $40
jmp irs_common
push $8
jmp irq_common
.globl irq9
irq9:
cli
push $0
push $41
jmp irs_common
push $9
jmp irq_common
.globl irq10
irq10:
cli
push $0
push $42
jmp irs_common
push $10
jmp irq_common
.globl irq11
irq11:
cli
push $0
push $43
jmp irs_common
push $11
jmp irq_common
.globl irq12
irq12:
cli
push $0
push $44
jmp irs_common
push $12
jmp irq_common
.globl irq13
irq13:
cli
push $0
push $45
jmp irs_common
push $13
jmp irq_common
.globl irq14
irq14:
cli
push $0
push $46
jmp irs_common
push $14
jmp irq_common
.globl irq15
irq15:
cli
push $0
push $47
jmp irs_common
push $15
jmp irq_common
irq_common:
pusha
mov %ds, %ax
push %eax
mov $0x10, %ax
mov %ax, %ds
mov %ax, %es
mov %ax, %fs
mov %ax, %gs
call irq_handler
pop %eax
mov %ax, %ds
mov %ax, %es
mov %ax, %fs
mov %ax, %gs
popa
add $8, %esp # cleans push error and irs code
sti
iret # pops 5 things at once: CS, EIP, EFLAGS, SS, and ESP
irs_common: