2018-06-24 07:09:41 -07:00
|
|
|
InitString::
|
2013-09-07 21:22:33 -07:00
|
|
|
; Init a string of length c.
|
|
|
|
push hl
|
|
|
|
jr _InitString
|
|
|
|
|
2018-06-24 07:09:41 -07:00
|
|
|
InitName::
|
2013-09-07 21:22:33 -07:00
|
|
|
; Intended for names, so this function is limited to ten characters.
|
|
|
|
push hl
|
2019-06-04 04:31:22 -07:00
|
|
|
ld c, NAME_LENGTH - 1
|
2018-06-24 07:09:41 -07:00
|
|
|
_InitString::
|
2013-09-07 21:22:33 -07:00
|
|
|
; if the string pointed to by hl is empty (defined as "zero or more spaces
|
|
|
|
; followed by a null"), then initialize it to the string pointed to by de.
|
|
|
|
push bc
|
|
|
|
.loop
|
|
|
|
ld a, [hli]
|
|
|
|
cp "@"
|
|
|
|
jr z, .blank
|
|
|
|
cp " "
|
|
|
|
jr nz, .notblank
|
|
|
|
dec c
|
|
|
|
jr nz, .loop
|
|
|
|
.blank
|
|
|
|
pop bc
|
|
|
|
ld l, e
|
|
|
|
ld h, d
|
|
|
|
pop de
|
|
|
|
ld b, 0
|
|
|
|
inc c
|
|
|
|
call CopyBytes
|
|
|
|
ret
|
2016-05-08 11:11:24 -07:00
|
|
|
|
2013-09-07 21:22:33 -07:00
|
|
|
.notblank
|
|
|
|
pop bc
|
|
|
|
pop hl
|
|
|
|
ret
|