This commit is contained in:
Kartik K. Agaram 2021-06-29 21:54:22 -07:00
parent 5616691621
commit 069a8df45c
1 changed files with 23 additions and 1 deletions

View File

@ -292,7 +292,13 @@ idt_start:
8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate
0/imm16 # target[16:32] -- timer-interrupt-handler must be within address 0x10000
00 00 00 00 00 00 00 00
# entry 9: keyboard
null-interrupt-handler/imm16 # target[0:16]
8/imm16 # segment selector (gdt_code)
00 # unused
8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate
0/imm16 # target[16:32] -- null-interrupt-handler must be within address 0x10000
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
@ -320,6 +326,22 @@ idt_start:
== code
null-interrupt-handler:
# prologue
fa/disable-interrupts
60/push-all-registers
9c/push-flags
# acknowledge interrupt
b0/copy-to-al 0x20/imm8
e6/write-al-into-port 0x20/imm8
31/xor %eax 0/r32/eax
$null-interrupt-handler:epilogue:
# epilogue
9d/pop-flags
61/pop-all-registers
fb/enable-interrupts
cf/return-from-interrupt
timer-interrupt-handler:
# prologue
fa/disable-interrupts