From c9a74be5ea40ae4880634440f8f530deb4c8ff0e Mon Sep 17 00:00:00 2001 From: Kyle Cardoza Date: Sat, 30 Mar 2024 07:16:04 -0400 Subject: [PATCH] work on interrupts --- src/interrupts.s | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/interrupts.s b/src/interrupts.s index 587b697..40f2dc6 100644 --- a/src/interrupts.s +++ b/src/interrupts.s @@ -21,10 +21,12 @@ irq_enter .macro .endm irq_exit .macro + sta long:tmp_register_a tsc sta long:internal_stack_pointer lda long:external_stack_pointer tcs + lda long:tmp_register_a pld plb rti @@ -81,6 +83,8 @@ cop_handler_native: ; Now, we do an indirect, indexed jump through the jump table. jsr (cop_jump_table,x) + + ; And we're done. irq_exit cop_jump_table: @@ -89,8 +93,10 @@ cop_jump_table: ; ----------------------------------------------------------------------------- + .extern __program_start + cop_reset: - rts + jmp long:__program_start ; -----------------------------------------------------------------------------