ref: 705e6824687ed247a28cfbaedd47bf33bd1da32a
parent: 82c3bb464f192c8d2ab29a8ef5bd8440f4567065
author: yenatch <[email protected]>
date: Sat Sep 7 20:22:33 EDT 2013
split InitString asm into common/string.asm
--- /dev/null
+++ b/common/string.asm
@@ -1,0 +1,39 @@
+InitString: ; 2ef6
+; Init a string of length c.
+ push hl
+ jr _InitString
+; 2ef9
+
+InitName: ; 2ef9
+; Intended for names, so this function is limited to ten characters.
+ push hl
+ ld c, 10
+; 2efc
+
+_InitString: ; 2efc
+; 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
+; 2f17
+
--- a/main.asm
+++ b/main.asm
@@ -765,44 +765,8 @@
; 2ef6
-InitString: ; 2ef6
-; Init a string of length c.
- push hl
- jr _InitString
-; 2ef9
+INCLUDE "common/string.asm"
-InitName: ; 2ef9
-; Intended for names, so this function is limited to ten characters.
- push hl
- ld c, 10
-; 2efc
-
-_InitString: ; 2efc
-; 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
-; 2f17
Function2f17: ; 2f17
ld a, [MapGroup]