parse_base10: add digit count
This commit is contained in:
parent
8fbaa207c5
commit
98746b4fb4
@ -3,7 +3,10 @@
|
|||||||
.global _parse_base10
|
.global _parse_base10
|
||||||
_parse_base10:
|
_parse_base10:
|
||||||
/* r8 = pointer to text ; r1 = number */
|
/* r8 = pointer to text ; r1 = number */
|
||||||
|
/* return r0 = number of digits */
|
||||||
mov #0,r1 /* r1: accumulated number */
|
mov #0,r1 /* r1: accumulated number */
|
||||||
|
mov r8,r0 /* r0: number of digits */
|
||||||
|
add #1,r0
|
||||||
parse_base10_loop:
|
parse_base10_loop:
|
||||||
mov.b @r8+,r2
|
mov.b @r8+,r2
|
||||||
add #-48,r2 /* ascii '0' */
|
add #-48,r2 /* ascii '0' */
|
||||||
@ -18,5 +21,6 @@ parse_base10_loop:
|
|||||||
bra parse_base10_loop
|
bra parse_base10_loop
|
||||||
add r2,r1
|
add r2,r1
|
||||||
parse_base10_rts:
|
parse_base10_rts:
|
||||||
|
sub r8,r0
|
||||||
rts
|
rts
|
||||||
nop
|
neg r0,r0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user