decreased available ram size due to stack usage, working interrupt vectors
[my-code/arm.git] / betty / startup.s
index 7cf1e10..d6b0184 100644 (file)
 
        # exception handling must go to the very beginning
 
-       b handler_reset
-       b interrupt_handler_undef_instruction
-       b interrupt_handler_soft_ir
-       b interrupt_handler_prefetch_abort
-       b interrupt_handler_data_abort
+       ldr pc, handler_reset
+       ldr pc, handler_undef_instruction
+       ldr pc, handler_soft_ir
+       ldr pc, handler_prefetch_abort
+       ldr pc, handler_data_abort
        nop
-       b interrupt_handler_irq
-       b interrupt_handler_fiq
+       ldr pc, handler_irq
+       ldr pc, handler_fiq
+
+handler_reset: .word handle_reset
+handler_undef_instruction: .word interrupt_handler_undef_instruction
+handler_soft_ir: .word interrupt_handler_soft_ir
+handler_prefetch_abort: .word interrupt_handler_prefetch_abort
+handler_data_abort: .word interrupt_handler_data_abort
+handler_irq: .word interrupt_handler_irq
+handler_fiq: .word interrupt_handler_fiq
 
        # reset handling goes here
 
-handler_reset:
+handle_reset:
 
        # init stack pointer for each mode + set stack limit