Prev: 36626 Up: Map Next: 36675
36647: Splice numeric data A as a string into a string at HL
Used by the routines at 34268, 35837 and 35887.
Input
A Numeric data (e.g. percentage completion / character's strength) to be loaded into text at HL
HL Points to a "numeric" text (e.g. percentage completion / character's strength)
36647 PUSH HL Store HL (pointer to "numeric text")
36648 LD HL,23497 Point HL at destination location for ASCII string
36651 LD B,0 Load numeric value into BC...
36653 LD C,A ...
36654 CALL 37746 Convert numeric value in BC to ASCII string at location 23497
36657 LD HL,23499 Convert up to two (C=2) leading zeroes to spaces in last three digits (starting at 23499) of the ASCII string number...
36660 LD C,2 ...
36662 CALL 36692 ...
36665 POP DE Restore pointer to "numeric text" (originally in HL at start of this routine) into DE
36666 LD HL,23499 Point HL at string number just created
36669 LD BC,3 Splice ASCII string number just generated into "numeric data" text (e.g. put the number XX into the "TIME LEFT XX HOURS" text)...
36672 LDIR ...
36674 RET Return
Prev: 36626 Up: Map Next: 36675