244 lines
4.3 KiB
ArmAsm
244 lines
4.3 KiB
ArmAsm
|
.global isr0
|
||
|
.global isr1
|
||
|
.global isr2
|
||
|
.global isr3
|
||
|
.global isr4
|
||
|
.global isr5
|
||
|
.global isr6
|
||
|
.global isr7
|
||
|
.global isr8
|
||
|
.global isr9
|
||
|
.global isr10
|
||
|
.global isr11
|
||
|
.global isr12
|
||
|
.global isr13
|
||
|
.global isr14
|
||
|
.global isr15
|
||
|
.global isr16
|
||
|
.global isr17
|
||
|
.global isr18
|
||
|
.global isr19
|
||
|
.global isr20
|
||
|
.global isr21
|
||
|
.global isr22
|
||
|
.global isr23
|
||
|
.global isr24
|
||
|
.global isr25
|
||
|
.global isr26
|
||
|
.global isr27
|
||
|
.global isr28
|
||
|
.global isr29
|
||
|
.global isr30
|
||
|
.global isr31
|
||
|
|
||
|
isr0:
|
||
|
cli
|
||
|
push $0
|
||
|
push $0
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr1:
|
||
|
cli
|
||
|
push $0
|
||
|
push $1
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr2:
|
||
|
cli
|
||
|
push $0
|
||
|
push $2
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr3:
|
||
|
cli
|
||
|
push $0
|
||
|
push $3
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr4:
|
||
|
cli
|
||
|
push $0
|
||
|
push $4
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr5:
|
||
|
cli
|
||
|
push $0
|
||
|
push $5
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr6:
|
||
|
cli
|
||
|
push $0
|
||
|
push $6
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr7:
|
||
|
cli
|
||
|
push $0
|
||
|
push $7
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr8:
|
||
|
cli
|
||
|
push $0
|
||
|
push $8
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr9:
|
||
|
cli
|
||
|
push $0
|
||
|
push $9
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr10:
|
||
|
cli
|
||
|
push $10
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr11:
|
||
|
cli
|
||
|
push $11
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr12:
|
||
|
cli
|
||
|
push $12
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr13:
|
||
|
cli
|
||
|
push $13
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr14:
|
||
|
cli
|
||
|
push $14
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr15:
|
||
|
cli
|
||
|
push $0
|
||
|
push $15
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr16:
|
||
|
cli
|
||
|
push $0
|
||
|
push $16
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr17:
|
||
|
cli
|
||
|
push $0
|
||
|
push $17
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr18:
|
||
|
cli
|
||
|
push $0
|
||
|
push $18
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr19:
|
||
|
cli
|
||
|
push $0
|
||
|
push $19
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr20:
|
||
|
cli
|
||
|
push $0
|
||
|
push $20
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr21:
|
||
|
cli
|
||
|
push $0
|
||
|
push $21
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr22:
|
||
|
cli
|
||
|
push $0
|
||
|
push $22
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr23:
|
||
|
cli
|
||
|
push $0
|
||
|
push $23
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr24:
|
||
|
cli
|
||
|
push $0
|
||
|
push $24
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr25:
|
||
|
cli
|
||
|
push $0
|
||
|
push $25
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr26:
|
||
|
cli
|
||
|
push $0
|
||
|
push $26
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr27:
|
||
|
cli
|
||
|
push $0
|
||
|
push $27
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr28:
|
||
|
cli
|
||
|
push $0
|
||
|
push $28
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr29:
|
||
|
cli
|
||
|
push $0
|
||
|
push $29
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr30:
|
||
|
cli
|
||
|
push $0
|
||
|
push $30
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr31:
|
||
|
cli
|
||
|
push $0
|
||
|
push $31
|
||
|
jmp isr_handle
|
||
|
|
||
|
isr_handle:
|
||
|
pushal
|
||
|
push %ds
|
||
|
push %es
|
||
|
push %fs
|
||
|
push %gs
|
||
|
mov $0x10, %ax
|
||
|
mov %ax, %ds
|
||
|
mov %ax, %es
|
||
|
mov %ax, %fs
|
||
|
mov %ax, %gs
|
||
|
movl %esp, %eax
|
||
|
push %eax
|
||
|
movl $fault_handler, %eax
|
||
|
call *%eax
|
||
|
pop %eax
|
||
|
pop %gs
|
||
|
pop %fs
|
||
|
pop %es
|
||
|
pop %ds
|
||
|
popal
|
||
|
addl $8, %esp
|
||
|
iret
|