diff options
| author | 2026-08-18 12:15:05 +0200 | |
|---|---|---|
| committer | 2026-08-18 12:15:05 +0200 | |
| commit | 132d3236bb884433bf94e961f6d32264e0334aec (patch) | |
| tree | 06638976b06f019ea4037175ff228f8271057c44 /kernel/generate_vectors.py | |
Diffstat (limited to '')
| -rw-r--r-- | kernel/generate_vectors.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/kernel/generate_vectors.py b/kernel/generate_vectors.py new file mode 100644 index 0000000..8471ef8 --- /dev/null +++ b/kernel/generate_vectors.py @@ -0,0 +1,19 @@ +if __name__ == "__main__": + with open("interrupts/vectors.s", "w") as f: + for i in range(256): + f.write("global vector" + '{}'.format(i) + "\n") + f.write("extern s_trap_start\n") + f.write("extern s_trap_end\n") + f.write("\n") + f.write("section .text\n") + f.write("align 4\n") + f.write("\n") + for i in range(256): + upper = '{0:02X}'.format((i >> 16) & 0xFF) + lower = '{0:02X}'.format(i & 0xFF) + f.write("vector" + '{}'.format(i) + ":\n") + f.write(" push 0x" + upper + "\n") + f.write(" push 0x" + lower + "\n") + f.write(" jmp s_trap_start\n") + f.write("\n") + f.write("\n") |
