aboutsummaryrefslogtreecommitdiff
path: root/estorm/crt0.s
diff options
context:
space:
mode:
Diffstat (limited to 'estorm/crt0.s')
-rw-r--r--estorm/crt0.s17
1 files changed, 17 insertions, 0 deletions
diff --git a/estorm/crt0.s b/estorm/crt0.s
new file mode 100644
index 0000000..915af18
--- /dev/null
+++ b/estorm/crt0.s
@@ -0,0 +1,17 @@
+.text
+
+ ;; The following is the interrupt vector block of estorm when
+ ;; boots.
+
+reset: b estorm_crt0 ; Reset
+illegal_hdl: b illegal_hdl ; Illegal instruction
+swi_hdl: b swi_hdl ; No SWI handling
+prefetch_hdl: b prefetch_hdl ; Prefetch abort
+data_hdl: b data_hdl ; Data abord
+reserved_hdl: b reserved_hdl ; Reserved vector
+irq_hdl: b irq_hdl ; IRQ
+fiq_hdl: b fiq_hdl ; FIQ
+
+estorm_crt0: mov sp, =0x002FFFFF ; Place stack at very top of ram
+ bl estorm_boot ; Start the monitor.
+estorm_end: b estorm_end ; Crash if monitor ever returns