From c02928c5d9b178689c5df48acab281ef119cec62 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Mon, 4 Dec 2017 13:45:57 +0000 Subject: [PATCH] v65: put signal vectors in low if the binary is loaded above the normal base --- Kernel/platform-v65/v65.s | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Kernel/platform-v65/v65.s b/Kernel/platform-v65/v65.s index eb44c4f6..d4a3b31b 100644 --- a/Kernel/platform-v65/v65.s +++ b/Kernel/platform-v65/v65.s @@ -555,6 +555,20 @@ platform_doexec: stx ptr1+1 sta ptr1 + clc + adc #$20 + bcc noincx + inx +noincx: + stx ptr2+1 ; Point ptr2 at base + 0x20 + sta ptr2 + ldy #0 + lda (ptr2),y ; Get the signal vector pointer + sta PROGLOAD+$20 ; if we loaded high put the vecotr in + iny + lda (ptr2),y + sta PROGLOAD+$21 ; the low space where it is expected + ; ; Set up the C stack. FIXME: assumes for now our sp in ZP matches it ; -- 2.34.1