aboutsummaryrefslogtreecommitdiffstats
path: root/asm/bootstrap.atk16
diff options
context:
space:
mode:
authorJan Tuomi <jans.tuomi@gmail.com>2023-04-13 14:48:34 +0300
committerJan Tuomi <jans.tuomi@gmail.com>2023-04-13 14:49:59 +0300
commit9d4c6fc299294ac36f7082599edce19286fa0f99 (patch)
treee7601bb1cd9950482f125377d25b6d5d40b72e62 /asm/bootstrap.atk16
parentafd5f32e56d3d30bfa98fb35deff51febf50e594 (diff)
Add @let directive, start pondering interrupt control
Diffstat (limited to 'asm/bootstrap.atk16')
-rw-r--r--asm/bootstrap.atk1623
1 files changed, 23 insertions, 0 deletions
diff --git a/asm/bootstrap.atk16 b/asm/bootstrap.atk16
new file mode 100644
index 0000000..c7ab63e
--- /dev/null
+++ b/asm/bootstrap.atk16
@@ -0,0 +1,23 @@
+@let stack_segment 0x8000
+@let vector_table 0x10
+
+@address vector_table
+ hlt_isr ; 0x10 ISR0
+ hlt_isr ; 0x11 ISR1
+ hlt_isr ; 0x12 ISR2
+ hlt_isr ; 0x13 ISR3
+ stack_segment ; 0x14 Stack address
+
+@label hlt_isr
+ ldi 0x55 RA
+ hlt
+@label program_segment
+
+@address 0x0
+; set up stack pointer to point to beginning of stack segment
+ ldi 0x14 RA
+ ldr RA RF
+ jpi main
+
+@address program_segment
+; set up address for program code