Prev: 47596 Up: Map Next: 47649
47627: Zero Small Speed
Sets a speed to zero if it is too small to matter. The speed is a signed number, which is changed if it is below 100 or above 65368.
Input
HL Speed
Output
HL New speed
ZeroSmallSpeed 47627 LD A,H A=H.
47628 AND A Jump to ZeroSmallSpeed_Negative if A is not zero.
47629 JR NZ,ZeroSmallSpeed_Negative
47631 LD A,L A=L.
47632 CP 100 Return if A is 100 or more.
47634 RET NC
47635 LD HL,0 HL=0.
47638 RET Return.
ZeroSmallSpeed_Negative 47639 INC A Advance A.
47640 RET NZ Return if the zero flag is clear.
47641 LD A,L A=L.
47642 CP 88 Return if A is less than 88.
47644 RET C
47645 LD HL,0 HL=0.
47648 RET Return.
Prev: 47596 Up: Map Next: 47649