From 5cfae260fd80cc3e88a52b9433fefce6afcad203 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juhani=20Krekel=C3=A4?= Date: Thu, 18 Aug 2022 14:31:04 +0300 Subject: [PATCH] Don't clobber storeByteHigh and storeByteLow in peekWord in calculator.asm --- calculator.asm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/calculator.asm b/calculator.asm index fbf2c56..d3b1a44 100644 --- a/calculator.asm +++ b/calculator.asm @@ -308,12 +308,21 @@ tmp2LoadWord01: ; out: ; r0:r1 = word ; clobbers: -; r2, r2 +; r2, r3 peekWord: cleq r0, r0, popWord store peekWordHigh, r0 store peekWordLow, r1 - cleq r0, r0, pushWord + + ; Return SP back to where it was + load r0, SP+0 + load r1, SP+1 + xor r2, r2 + load r3, lit02 + cleq r0, r0, addWord + store SP+0, r0 + store SP+1, r1 + load r0, peekWordHigh load r1, peekWordLow ret