diff options
author | Kartik Agaram <vc@akkartik.com> | 2020-12-23 12:24:36 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2020-12-23 12:24:36 -0800 |
commit | 22bef2d148f9cfc289c531307c408da542f5e8dd (patch) | |
tree | 28d60b164a91bf72559eebe0e31761b0d428b318 | |
parent | 63362f814bed6d48f1c83abc97cac8d46bd3de6f (diff) | |
download | mu-22bef2d148f9cfc289c531307c408da542f5e8dd.tar.gz |
7391
Turns out we just need a null handler at offset 8 rather than offset 9. If the keyboard handler is indeed at offset 9 as https://alex.dzyoba.com/blog/os-interrupts says (I don't understand why), then the clock handler's at offset 8, which makes sense.
-rw-r--r-- | apps/boot.hex | 71 |
1 files changed, 9 insertions, 62 deletions
diff --git a/apps/boot.hex b/apps/boot.hex index 4ec143bd..009b6c48 100644 --- a/apps/boot.hex +++ b/apps/boot.hex @@ -235,61 +235,14 @@ e9 fb ff ff ff # loop forever # 32 entries * 8 bytes each = 256 bytes (0x100) # idt_start: -# offset 0 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 1 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 2 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 3 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 4 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 5 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 6 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - -# offset 7 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 # offset 8 20 7d # offset[0:16] @@ -298,13 +251,7 @@ e9 fb ff ff ff # loop forever 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate 00 00 # offset[16:32] -# offset 9 - 20 7d # offset[0:16] - 08 00 # segment selector (gdt_code) - 00 # unused - 8e # 1/p 00/dpl 0 1110/type/32-bit-interrupt-gate - 00 00 # offset[16:32] - +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |