BRZ>incrementstackindexreturn
# Negative bit was set, so wrap to start of stack.
TEST
BRZ>incrementstackindexreturn
# Negative bit was set, so wrap to start of stack.
TEST
BRZ>decrementstackindexreturn
# Negative bit was set, so wrap to end of stack.
TEST
BRZ>decrementstackindexreturn
# Negative bit was set, so wrap to end of stack.
TEST
BRZ>printbinaryintegerloopend
# Repeatedly divide by ten and push each digit onto the stack in ASCII.
BRZ>printbinaryintegerloopend
# Repeatedly divide by ten and push each digit onto the stack in ASCII.
# Sign flag (nonzero for negative result, 0 for positive result)
# Push sign onto stack as ASCII character.
# Sign flag (nonzero for negative result, 0 for positive result)
# Push sign onto stack as ASCII character.
BRZ>evalzerostackentrymatch
# No match, return from subroutine
BRZ>evalzerostackentrymatch
# No match, return from subroutine
BRZ>evalnegatestackentrymatch
# No match, return from subroutine
BRZ>evalnegatestackentrymatch
# No match, return from subroutine
BRZ>evalmathadditionmatch
# No match, return from subroutine
BRZ>evalmathadditionmatch
# No match, return from subroutine
BRZ>evalmathsubtractionmatch
# No match, return from subroutine
BRZ>evalmathsubtractionmatch
# No match, return from subroutine
BRZ>evalmathmultiplicationmatch
# No match, return from subroutine
BRZ>evalmathmultiplicationmatch
# No match, return from subroutine
BRZ>evalmathdivisionmatch
# No match, return from subroutine
BRZ>evalmathdivisionmatch
# No match, return from subroutine
BRZ>isasciidigitcontinued
# The result was negative, so clean up stack and return false.
IM_1
BRZ>isasciidigitcontinued
# The result was negative, so clean up stack and return false.
IM_1
BRZ>itoahalt # Branch if operand was negative.
# Convert the integer to its ASCII representation and return to caller.
WORD_48
BRZ>itoahalt # Branch if operand was negative.
# Convert the integer to its ASCII representation and return to caller.
WORD_48