Improve error message on stack underflow in calculator.asm
This commit is contained in:
parent
007bb35917
commit
bafaef9c44
|
@ -524,7 +524,7 @@ popByte:
|
||||||
load r2, SPStart+0
|
load r2, SPStart+0
|
||||||
load r3, SPStart+1
|
load r3, SPStart+1
|
||||||
brneq r0, r2, popByteNoUnderflow
|
brneq r0, r2, popByteNoUnderflow
|
||||||
breq r1, r3, error
|
breq r1, r3, underflow
|
||||||
|
|
||||||
popByteNoUnderflow:
|
popByteNoUnderflow:
|
||||||
cleq r0, r0, decWord
|
cleq r0, r0, decWord
|
||||||
|
@ -994,14 +994,37 @@ newline:
|
||||||
store ffff, r3
|
store ffff, r3
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
; noreturn
|
||||||
|
underflow:
|
||||||
|
load r0, #55 ; U
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #6e ; n
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #64 ; d
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #65 ; e
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #72 ; r
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #66 ; f
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #6c ; l
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #6f ; o
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #77 ; w
|
||||||
|
store ffff, r0
|
||||||
|
load r0, #20
|
||||||
|
store ffff, r0
|
||||||
|
|
||||||
; noreturn
|
; noreturn
|
||||||
error:
|
error:
|
||||||
load r0, #65
|
load r0, #65 ; e
|
||||||
store ffff, r0
|
store ffff, r0
|
||||||
load r0, #72
|
load r0, #72 ; r
|
||||||
store ffff, r0
|
store ffff, r0
|
||||||
store ffff, r0
|
store ffff, r0
|
||||||
load r1, #6f
|
load r1, #6f ; o
|
||||||
store ffff, r1
|
store ffff, r1
|
||||||
store ffff, r0
|
store ffff, r0
|
||||||
cleq r0, r0, newline
|
cleq r0, r0, newline
|
||||||
|
|
Loading…
Reference in New Issue