Factor out dumpFloat in calculator.asm

This commit is contained in:
Juhani Krekelä 2022-09-28 02:08:40 +03:00
parent 8356dbbd93
commit 66dd813d7b
1 changed files with 31 additions and 25 deletions

View File

@ -2,34 +2,10 @@ org 0
cleq r0, r0, normalize
xor r0, r0
load r1, #12
cleq r0, r0, pushWord
load r0, fResultPtr+0
load r1, fResultPtr+1
cleq r0, r0, pushWord
dumpFResult:
cleq r0, r0, stSwap
cleq r0, r0, peekWord
or r0, r1
xor r2, r2
breq r0, r2, dumpFResultEnd
cleq r0, r0, stDec
cleq r0, r0, stSwap
cleq r0, r0, stDup
cleq r0, r0, stLoadByte
cleq r0, r0, popWord
xor r0, r0
or r0, r1
cleq r0, r0, writehexByte
load r0, #20
store ffff, r0
cleq r0, r0, stInc
breq r0, r0, dumpFResult
dumpFResultEnd:
cleq r0, r0, newline
cleq r0, r0, dumpFloat
load r0, fResultPtr+0
load r1, fResultPtr+1
@ -78,6 +54,36 @@ printend:
cleq r0, r0, newline
halt
dumpFloat:
xor r0, r0
load r1, #12
cleq r0, r0, pushWord
dumpFloatLoop:
cleq r0, r0, peekWord
or r0, r1
xor r2, r2
breq r0, r2, dumpFloatEnd
cleq r0, r0, stDec
cleq r0, r0, stSwap
cleq r0, r0, stDup
cleq r0, r0, stLoadByte
cleq r0, r0, popWord
xor r0, r0
or r0, r1
cleq r0, r0, writehexByte
load r0, #20
store ffff, r0
cleq r0, r0, stInc
cleq r0, r0, stSwap
breq r0, r0, dumpFloatLoop
dumpFloatEnd:
cleq r0, r0, popWord
cleq r0, r0, popWord
breq r0, r0, newline
debug:
store debugr0, r0
store debugr1, r1