mirror of
https://github.com/pret/pokecrystal.git
synced 2026-03-21 17:45:29 -05:00
Some checks are pending
CI / build (push) Waiting to run
- Use single-quoted character literals or `CHARVAL` when you need
a character's numeric value; using strings as numbers is deprecated
- Use `?` to silence a node in warning/error location backtraces
- Use `===` and `!==` instead of `STRCMP`, and `++` instead of `STRCAT`
- Use `__SCOPE__` instead of checking for `..` and `.` separately
- Use `#string` instead of `"{string}"`
- All programs (rgbasm, rgblink, rgbfix, rgbgfx) support `-W` warnings
- `rgbgfx --colors dmg` is short for `rgbgfx --colors dmg=e4`
36 lines
551 B
NASM
36 lines
551 B
NASM
InitString::
|
|
; Init a string of length c.
|
|
push hl
|
|
jr _InitString
|
|
|
|
InitName::
|
|
; Intended for names, so this function is limited to ten characters.
|
|
push hl
|
|
ld c, NAME_LENGTH - 1
|
|
_InitString::
|
|
; 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
|
|
|
|
.notblank
|
|
pop bc
|
|
pop hl
|
|
ret
|