diff options
author | yenatch <yenatch@gmail.com> | 2014-08-14 23:50:39 -0700 |
---|---|---|
committer | yenatch <yenatch@gmail.com> | 2014-08-14 23:50:53 -0700 |
commit | 5337d0159ecabe97b57809331a1bd506a5892fa2 (patch) | |
tree | bbe2d04b25cbbbd796b3cbaaf62cdf76e275260c | |
parent | ffdc3e4c12d32ccee1fdb1e72083238caea78a87 (diff) |
Recomment the text engine.
-rw-r--r-- | home/text.asm | 691 | ||||
-rw-r--r-- | main.asm | 66 |
2 files changed, 332 insertions, 425 deletions
diff --git a/home/text.asm b/home/text.asm index e319a1bdf..ee4b7174d 100644 --- a/home/text.asm +++ b/home/text.asm @@ -1,20 +1,35 @@ +BORDER_WIDTH EQU 2 +TEXTBOX_WIDTH EQU SCREEN_WIDTH +TEXTBOX_INNERW EQU TEXTBOX_WIDTH - BORDER_WIDTH +TEXTBOX_HEIGHT EQU 6 +TEXTBOX_INNERH EQU TEXTBOX_HEIGHT - BORDER_WIDTH +TEXTBOX_X EQU 0 +TEXTBOX_INNERX EQU TEXTBOX_X + 1 +TEXTBOX_Y EQU SCREEN_HEIGHT - TEXTBOX_HEIGHT +TEXTBOX_INNERY EQU TEXTBOX_Y + 2 + +TEXTBOX_PAL EQU 7 + + ClearBox:: ; fb6 ; Fill a c*b box at hl with blank tiles. ld a, " " + Functionfb8:: +.col push bc push hl -.x +.row ld [hli], a dec c - jr nz, .x + jr nz, .row pop hl - ld bc, 20 ; screen width + ld bc, SCREEN_WIDTH add hl, bc pop bc dec b - jr nz, Functionfb8 + jr nz, .col ret ; fc8 @@ -24,10 +39,10 @@ ClearTileMap:: ; fc8 ld hl, TileMap ld a, " " - ld bc, 360 ; screen dimensions 20*18 + ld bc, TileMapEnd - TileMap call ByteFill -; We aren't done if the LCD is on. + ; Update the BG Map. ld a, [rLCDC] bit 7, a ret z @@ -35,10 +50,10 @@ ClearTileMap:: ; fc8 ; fdb -Functionfdb:: ; fdb - ld a, $7 +ClearScreen:: ; fdb + ld a, TEXTBOX_PAL ld hl, AttrMap - ld bc, $0168 + ld bc, SCREEN_WIDTH * SCREEN_HEIGHT call ByteFill jr ClearTileMap ; fe8 @@ -46,7 +61,7 @@ Functionfdb:: ; fdb TextBox:: ; fe8 -; Draw a text box width c height b at hl +; Draw a text box width c height b at hl. ; Dimensions do not include the border. push bc push hl @@ -59,48 +74,48 @@ TextBox:: ; fe8 TextBoxBorder:: ; ff1 -; Top + ; Top push hl ld a, "┌" ld [hli], a inc a ; "─" - call NPlaceChar + call .PlaceChars inc a ; "┐" ld [hl], a - -; Middle pop hl - ld de, 20 ; screen width + + ; Middle + ld de, SCREEN_WIDTH add hl, de -.PlaceRow +.row push hl ld a, "│" ld [hli], a ld a, " " - call NPlaceChar + call .PlaceChars ld [hl], "│" pop hl - ld de, 20 ; screen width + + ld de, SCREEN_WIDTH add hl, de dec b - jr nz, .PlaceRow + jr nz, .row -; Bottom + ; Bottom ld a, "└" ld [hli], a ld a, "─" - call NPlaceChar + call .PlaceChars ld [hl], "┘" ret ; 101e - -NPlaceChar:: ; 101e -; Place char a c times - ld d,c +.PlaceChars: ; 101e +; Place char a c times. + ld d, c .loop - ld [hli],a + ld [hli], a dec d jr nz, .loop ret @@ -115,41 +130,41 @@ TextBoxPalette:: ; 1024 inc b inc c inc c - ld a, 7 ; pal -.gotoy + ld a, TEXTBOX_PAL +.col push bc push hl -.gotox +.row ld [hli], a dec c - jr nz, .gotox + jr nz, .row pop hl - ld de, 20 ; screen width + ld de, SCREEN_WIDTH add hl, de pop bc dec b - jr nz, .gotoy + jr nz, .col ret ; 103e SpeechTextBox:: ; 103e ; Standard textbox. - hlcoord 0, 12 - ld b, 4 ; height - ld c, 18 ; screen width - 2 (border) + hlcoord TEXTBOX_X, TEXTBOX_Y + ld b, TEXTBOX_INNERH + ld c, TEXTBOX_INNERW jp TextBox ; 1048 -UnknownText_0x1048:: ; 1048 - db $0, "ゲームフりーク!", $57 +TestText:: ; 1048 + text "ゲームフりーク!" + done ; 1052 Function1052:: ; 1052 - ld hl, .text_1056 + ld hl, .stop ret -.text_1056 - db "@" +.stop db "@" ; 1057 @@ -157,18 +172,17 @@ PrintText:: ; 1057 call Function106c Function105a:: ; 105a push hl - hlcoord 1, 14 - ld bc, 18 + 3<<8 + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY + lb bc, TEXTBOX_INNERH - 1, TEXTBOX_INNERW call ClearBox pop hl PrintTextBoxText:: ; 1065 - bccoord 1, 14 + bccoord TEXTBOX_INNERX, TEXTBOX_INNERY call Function13e5 ret ; 106c - Function106c:: ; 106c push hl call SpeechTextBox @@ -179,7 +193,6 @@ Function106c:: ; 106c ; 1078 - PlaceString:: ; 1078 push hl @@ -198,265 +211,174 @@ NextChar:: ; 1083 jp PlaceNextChar CheckDict:: ; 1087 - cp $15 - jp z, Function117b - cp $4f - jp z, Char4F - cp $4e - jp z, Function12a7 - cp $16 - jp z, Function12b9 +dict: macro +if \1 == 0 and a - jp z, Function1383 - cp $4c - jp z, Function1337 - cp $4b - jp z, Char4B - cp $51 ; Player name - jp z, Function12f2 - cp $49 - jp z, Function1186 - cp $52 ; Mother name - jp z, Function118d - cp $53 - jp z, Function1194 - cp $35 - jp z, Function11e8 - cp $36 - jp z, Function11ef - cp $37 - jp z, Function11f6 - cp $38 - jp z, Function119b - cp $39 - jp z, Function11a2 - cp $54 - jp z, Function11c5 - cp $5b - jp z, Function11b7 - cp $5e - jp z, Function11be - cp $5c - jp z, Function11b0 - cp $5d - jp z, Function11a9 - cp $23 - jp z, Function11cc - cp $22 - jp z, Function12b0 - cp $55 - jp z, Char55 - cp $56 - jp z, Function11d3 - cp $57 - jp z, Function137c - cp $58 - jp z, Function135a - cp $4a - jp z, Function11da - cp $24 - jp z, Function11e1 - cp $25 - jp z, NextChar +else + cp \1 +endc + jp z, \2 +endm + dict $15, Char15 + dict $4f, Line + dict $4e, NextLine + dict $16, Char16 + dict $00, NullChar + dict $4c, Function1337 + dict $4b, Char4B + dict $51, Paragraph + dict $49, PrintMomsName + dict $52, PrintPlayerName + dict $53, PrintRivalName + dict $35, Char35 + dict $36, Char36 + dict $37, Char37 + dict $38, PrintRedsName + dict $39, PrintGreensName + dict $54, Char54 + dict $5b, Char5B + dict $5e, Char5E + dict $5c, Char5C + dict $5d, Char5D + dict $23, Char23 + dict $22, Char22 + dict $55, ContText + dict $56, Char56 + dict $57, DoneText + dict $58, PromptText + dict $4a, Char4A + dict $24, Char24 + dict $25, NextChar cp $1f - jr nz, .asm_1122 + jr nz, .ok ld a, $7f -.asm_1122 - cp $5f - jp z, Char5F - cp $59 - jp z, Function11fd - cp $5a - jp z, Char5D - cp $3f - jp z, Function121b - cp $14 - jp z, Function1252 - cp $e4 - jr z, .asm_1174 ; 0x113d $35 - cp $e5 - jr z, .asm_1174 ; 0x1141 $31 - jr .asm_114c ; 0x1143 $7 +.ok + dict $5f, Char5F + dict $59, Char59 + dict $5a, Char5A + dict $3f, Char3F + dict $14, Char14 + cp $e4 ; handakuten + jr z, .place + cp $e5 ; dakuten + jr z, .place + + jr .nope ld b, a - call Function13c6 + call Diacritic jp NextChar -.asm_114c +.nope + cp $60 - jr nc, .asm_1174 ; 0x114e $24 + jr nc, .place + cp $40 - jr nc, .asm_1165 ; 0x1152 $11 + jr nc, .handakuten + +.dakuten + cp $20 - jr nc, .asm_115c ; 0x1156 $4 + jr nc, .daku1 add $80 - jr .asm_115e ; 0x115a $2 -.asm_115c + jr .daku2 +.daku1 add $90 -.asm_115e - ld b, $e5 - call Function13c6 - jr .asm_1174 ; 0x1163 $f -.asm_1165 - cp $44 - jr nc, .asm_116d ; 0x1167 $4 - add $59 - jr .asm_116f ; 0x116b $2 -.asm_116d - add $86 -.asm_116f - ld b, $e4 - call Function13c6 -.asm_1174 +.daku2 + ld b, $e5 ; dakuten + call Diacritic + jr .place + +.handakuten + cp "ぱ" + jr nc, .han1 + add "ハ" - "パ" + jr .han2 +.han1 + add "は" - "ぱ" +.han2 + ld b, $e4 ; handakuten + call Diacritic + +.place ld [hli], a call PrintLetterDelay jp NextChar ; 0x117b -Function117b:: ; 117b +Char15:: ; 117b ld c, l ld b, h callba Function17f036 jp PlaceNextChar ; 1186 -Function1186:: ; 1186 - push de - ld de, MomsName - jp Function126a -; 118d - -Function118d:: ; 118d - push de - ld de, PlayerName - jp Function126a -; 1194 - -Function1194:: ; 1194 - push de - ld de, RivalName - jp Function126a -; 119b - -Function119b:: ; 119b - push de - ld de, RedsName - jp Function126a -; 11a2 - -Function11a2:: ; 11a2 - push de - ld de, GreensName - jp Function126a -; 11a9 - -Function11a9:: ; 11a9 - push de - ld de, Char5DText - jp Function126a -; 11b0 - -Function11b0:: ; 11b0 - push de - ld de, Char5CText - jp Function126a -; 11b7 - -Function11b7:: ; 11b7 - push de - ld de, Char5BText - jp Function126a -; 11be - -Function11be:: ; 11be - push de - ld de, Char5EText - jp Function126a -; 11c5 - -Function11c5:: ; 11c5 - push de - ld de, Char54Text - jp Function126a -; 11cc - -Function11cc:: ; 11cc - push de - ld de, Char23Text - jp Function126a -; 11d3 - -Function11d3:: ; 11d3 - push de - ld de, Char56Text - jp Function126a -; 11da -Function11da:: ; 11da +print_name: macro push de - ld de, Char4AText + ld de, \1 jp Function126a -; 11e1 - -Function11e1:: ; 11e1 - push de - ld de, Char24Text - jp Function126a -; 11e8 - -Function11e8:: ; 11e8 - push de - ld de, Char37Text - jp Function126a -; 11ef - -Function11ef:: ; 11ef - push de - ld de, Char37Text - jp Function126a -; 11f6 - -Function11f6:: ; 11f6 - push de - ld de, Char37Text - jp Function126a -; 11fd - - -Function11fd:: ; 11fd +endm + +PrintMomsName: print_name MomsName ; 1186 +PrintPlayerName: print_name PlayerName ; 118d +PrintRivalName: print_name RivalName ; 1194 +PrintRedsName: print_name RedsName ; 119b +PrintGreensName: print_name GreensName ; 11a2 + +Char5D: print_name Char5DText ; 11a9 +Char5C: print_name Char5CText ; 11b0 +Char5B: print_name Char5BText ; 11b7 +Char5E: print_name Char5EText ; 11be +Char54: print_name Char54Text ; 11c5 +Char23: print_name Char23Text ; 11cc +Char56: print_name Char56Text ; 11d3 +Char4A: print_name Char4AText ; 11da +Char24: print_name Char24Text ; 11e1 +Char35: print_name Char35Text ; 11e8 +Char36: print_name Char36Text ; 11ef +Char37: print_name Char37Text ; 11f6 + + +Char59:: ; 11fd ld a, [hBattleTurn] - xor $1 - jr Function1205 -; 1203 + xor 1 + jr Char59_5A -Char5D:: ; 1203 +Char5A:: ; 1203 ld a, [hBattleTurn] -; 1205 -Function1205:: ; 1205 +Char59_5A: ; 1205 push de and a - jr nz, .asm_120e ; 0x1207 $5 + jr nz, .enemy + ld de, BattleMonNick - jr Function126a ; 0x120c $5c -.asm_120e + jr Function126a + +.enemy ld de, Char5AText ; Enemy call PlaceString ld h, b ld l, c ld de, EnemyMonNick - jr Function126a ; 0x1219 $4f + jr Function126a + -Function121b:: ; 121b +Char3F:: ; 121b push de + ld a, [InLinkBattle] and a jr nz, .linkbattle + ld a, [TrainerClass] cp RIVAL1 - jr z, .asm_1248 ; 0x1227 $1f + jr z, .rival cp RIVAL2 - jr z, .asm_1248 ; 0x122b $1b - ld de, $c656 + jr z, .rival + + ld de, OTName call PlaceString ld h, b ld l, c @@ -466,15 +388,18 @@ Function121b:: ; 121b callab Function39939 pop hl ld de, StringBuffer1 - jr Function126a ; 0x1246 $22 -.asm_1248 + jr Function126a + +.rival ld de, RivalName - jr Function126a ; 0x124b $1d + jr Function126a + .linkbattle - ld de, $c656 - jr Function126a ; 0x1250 $18 + ld de, OTName + jr Function126a + -Function1252:: ; 1252 +Char14:: ; 1252 push de ld de, PlayerName call PlaceString @@ -483,9 +408,10 @@ Function1252:: ; 1252 ld a, [PlayerGender] bit 0, a ld de, String12a5 - jr z, Function126a ; 0x1263 $5 + jr z, Function126a ld de, String12a6 - jr Function126a ; 0x1268 $0 + jr Function126a + Function126a:: ; 126a call PlaceString @@ -495,67 +421,53 @@ Function126a:: ; 126a jp NextChar ; 0x1273 -Char5CText:: ; 1273 - db "TM@" -Char5DText:: ; 1276 - db "TRAINER@" -Char5BText:: ; 127e - db "PC@" -Char5EText:: ; 1281 - db "ROCKET@" -Char54Text:: ; 1288 - db "POKé@" -Char23Text:: ; 128d - db "こうげき@" -Char56Text::; 1292 - db "……@" -Char5AText:: ; 1295 - db "Enemy @" -Char4AText:: ; 129c - db $e1, $e2, "@" ; PK MN -Char24Text:: ; 129f - db $70, $71, "@" ; PO KE -String12a2:: ; 12a2 - db " @" +Char5CText:: db "TM@" ; 1273 +Char5DText:: db "TRAINER@" ; 1276 +Char5BText:: db "PC@" ; 127e +Char5EText:: db "ROCKET@" ; 1281 +Char54Text:: db "POKé@" ; 1288 +Char23Text:: db "こうげき@" ; 128d +Char56Text:: db "……@" ; 1292 +Char5AText:: db "Enemy @" ; 1295 +Char4AText:: db $e1, $e2, "@" ; PK MN ; 129c +Char24Text:: db $70, $71, "@" ; PO KE ; 129f +String12a2:: db " @" ; 12a2 Char35Text:: Char36Text:: -Char37Text:: ; 12a4 - db "@" -String12a5:: ; 12a5 - db "@" -String12a6:: ; 12a6 - db "@" +Char37Text:: db "@" ; 12a4 +String12a5:: db "@" ; 12a5 +String12a6:: db "@" ; 12a6 ; 12a7 -Function12a7:: ; 12a7 +NextLine:: ; 12a7 pop hl - ld bc, $0028 + ld bc, SCREEN_WIDTH * 2 add hl, bc push hl jp NextChar ; 12b0 -Function12b0:: ; 12b0 +Char22:: ; 12b0 pop hl - ld bc, $0014 + ld bc, SCREEN_WIDTH add hl, bc push hl jp NextChar ; 12b9 -Function12b9:: ; 12b9 +Char16:: ; 12b9 pop hl push de - ld bc, $3b60 + ld bc, -TileMap + $10000 add hl, bc - ld de, $ffec - ld c, $1 + ld de, -SCREEN_WIDTH + ld c, 1 .asm_12c4 ld a, h and a jr nz, .asm_12cd ld a, l - cp $14 + cp SCREEN_WIDTH jr c, .asm_12d1 .asm_12cd @@ -565,7 +477,7 @@ Function12b9:: ; 12b9 .asm_12d1 ld hl, TileMap - ld de, $0014 + ld de, SCREEN_WIDTH ld a, c .asm_12d8 and a @@ -579,39 +491,40 @@ Function12b9:: ; 12b9 inc de ld a, [de] ld c, a - ld b, $0 + ld b, 0 add hl, bc push hl jp NextChar ; 12ea -Char4F:: ; 12ea +Line:: ; 12ea pop hl - hlcoord 1, 16 + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2 push hl jp NextChar ; 0x12f2 -Function12f2:: ; 12f2 +Paragraph:: ; 12f2 push de + ld a, [InLinkBattle] cp $3 jr z, .asm_1301 cp $4 jr z, .asm_1301 call Function13c7 - .asm_1301 + call Function13b6 call Functionaaf - hlcoord 1, 14 - ld bc, $0312 + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY + lb bc, TEXTBOX_INNERH - 1, TEXTBOX_INNERW call ClearBox call Function13cd - ld c, $14 + ld c, 20 call DelayFrames - hlcoord 1, 14 + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY pop de jp NextChar ; 131f @@ -622,8 +535,8 @@ Char4B:: ; 131f or a jr nz, .asm_1328 call Function13c7 - .asm_1328 + call Function13b6 push de @@ -638,15 +551,15 @@ Function1337:: ; 1337 push de call Function138c call Function138c - hlcoord 1, 16 + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2 pop de jp NextChar ; 1345 -Char55:: ; 1345 +ContText:: ; 1345 push de - ld de, Text_1354 + ld de, .cont ld b, h ld c, l call PlaceString @@ -654,80 +567,77 @@ Char55:: ; 1345 ld l, c pop de jp NextChar -; 1354 -Text_1354:: ; 1354 - db $4b, "@" +.cont db $4b, "@" ; 1356 Char5F:: ; 1356 -; ends a Pokédex entry +; Legacy: ends a Pokédex entry (Red). +; Dex entries are now regular strings. ld [hl], "." pop hl ret ; 135a -Function135a:: ; 135a +PromptText:: ; 135a ld a, [InLinkBattle] cp $3 - jr z, .asm_1368 + jr z, .ok cp $4 - jr z, .asm_1368 + jr z, .ok call Function13c7 +.ok -.asm_1368 call Function13b6 call Functionaaf ld a, [InLinkBattle] cp $3 - jr z, Function137c + jr z, DoneText cp $4 - jr z, Function137c + jr z, DoneText call Function13cd -Function137c:: ; 137c +DoneText:: ; 137c pop hl - ld de, .string_1382 + ld de, .stop dec de ret - -.string_1382 - db "@" +.stop db "@" ; 1383 -Function1383:: ; 1383 - ld a, $e6 +NullChar:: ; 1383 + ld a, "?" ld [hli], a call PrintLetterDelay jp NextChar ; 138c Function138c:: ; 138c - hlcoord 1, 14 - decoord 1, 13 - ld a, $3 -.asm_1394 + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY + decoord TEXTBOX_INNERX, TEXTBOX_INNERY - 1 + ld a, TEXTBOX_INNERH - 1 +.col push af - ld c, $12 -.asm_1397 + ld c, TEXTBOX_INNERW +.row ld a, [hli] ld [de], a inc de dec c - jr nz, .asm_1397 + jr nz, .row inc de inc de inc hl inc hl pop af dec a - jr nz, .asm_1394 - hlcoord 1, 16 - ld a, $7f - ld bc, $0012 + jr nz, .col + hlcoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2 + ld a, " " + ld bc, TEXTBOX_INNERW call ByteFill - ld c, $5 + ld c, 5 call DelayFrames ret ; 13b6 @@ -736,7 +646,7 @@ Function13b6:: ; 13b6 push bc ld a, [hOAMUpdate] push af - ld a, $1 + ld a, 1 ld [hOAMUpdate], a call WaitBGMap pop af @@ -745,12 +655,12 @@ Function13b6:: ; 13b6 ret ; 13c6 -Function13c6:: ; 13c6 +Diacritic:: ; 13c6 ret ; 13c7 Function13c7:: ; 13c7 - ld a, $ee + ld a, "▼" ld [$c606], a ret ; 13cd @@ -761,26 +671,25 @@ Function13cd:: ; 13cd ret ; 13d4 -Function13d4:: ; 13d4 +FarString:: ; 13d4 ld b, a ld a, [hROMBank] push af + ld a, b rst Bankswitch - call PlaceString + pop af rst Bankswitch - ret ; 13e0 Function13e0:: ; 13e0 - ld hl, String_13e4 + ld hl, .stop ret -String_13e4: ; 13e4 - db "@" +.stop db "@" ; 13e5 @@ -789,22 +698,22 @@ Function13e5:: ; 13e5 push af set 1, a ld [$cfcf], a + call Function13f6 + pop af ld [$cfcf], a ret ; 13f6 Function13f6:: ; 13f6 -.asm_13f6 ld a, [hli] cp "@" ret z - call Function13ff - jr .asm_13f6 -; 13ff + call .TextCommand + jr Function13f6 -Function13ff:: ; 13ff +.TextCommand: push hl push bc ld c, a @@ -817,8 +726,8 @@ Function13ff:: ; 13ff ld d, [hl] pop bc pop hl - -; jp de + + ; jp de push de ret ; 1410 @@ -914,9 +823,8 @@ Text_16:: ; 1455 ; 1470 Text_02:: ; 1470 -; TX_NUM -; write bcdnumber from address, typically ram -; little endian +; TX_BCD +; write bcd from address, typically ram ; [$02][addr][flags] ; flags: see PrintBCDNumber @@ -939,14 +847,13 @@ Text_02:: ; 1470 Text_03:: ; 1480 ; TX_MOVE ; move to a new tile -; little endian -; [$03][tileaddr] +; [$03][addr] ld a, [hli] ld [$d0e6], a ld c, a ld a, [hli] - ld [$d0e7], a + ld [$d0e6 + 1], a ld b, a ret ; 148b @@ -955,7 +862,7 @@ Text_04:: ; 148b ; TX_BOX ; draw a box ; little endian -; [$04][tileaddr][height][width] +; [$04][addr][height][width] ld a, [hli] ld e, a @@ -978,7 +885,7 @@ Text_05:: ; 149b ; write text at (1,16) ; [$05] - bccoord 1, 16 + bccoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2 ret ; 149f @@ -993,6 +900,7 @@ Text_06:: ; 149f jp z, Text_0D cp $4 jp z, Text_0D + push hl call Function13c7 push bc @@ -1009,25 +917,26 @@ Text_07:: ; 14ba call Function138c call Function138c pop hl - bccoord 1, 16 + bccoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2 ret ; 14c9 Text_08:: ; 14c9 ; TX_ASM -; rom only? bit 7, h - jr nz, .asm_14ce + jr nz, .not_rom jp [hl] -.asm_14ce +.not_rom ld a, "@" ld [hl], a ret ; 14d2 Text_09:: ; 14d2 +; TX_NUM +; [$09][addr][hi:bytes lo:digits] ld a, [hli] ld e, a ld a, [hli] @@ -1057,11 +966,10 @@ Text_0A:: ; 14ed call GetJoypad ld a, [hJoyDown] and A_BUTTON | B_BUTTON - jr nz, .asm_14fd + jr nz, .done ld c, 30 call DelayFrames - -.asm_14fd +.done pop bc pop hl ret @@ -1078,17 +986,17 @@ Text_PlaySound:: ; 1500 ld b, a push hl ld hl, TextSFX -.asm_1508 +.loop ld a, [hli] - cp $ff - jr z, .asm_151f + cp -1 + jr z, .done cp b - jr z, .asm_1514 + jr z, .play inc hl inc hl - jr .asm_1508 + jr .loop -.asm_1514 +.play push de ld e, [hl] inc hl @@ -1097,7 +1005,7 @@ Text_PlaySound:: ; 1500 call WaitSFX pop de -.asm_151f +.done pop hl pop bc ret @@ -1123,29 +1031,30 @@ TextSFX:: ; 152d dbw $10, SFX_CAUGHT_MON dbw $11, SFX_DEX_FANFARE_80_109 dbw $13, SFX_SLOT_MACHINE_START - db $ff ; end + db -1 ; 1543 Text_0C:: ; 1543 +; [$0C][num] ld a, [hli] ld d, a push hl ld h, b ld l, c -.asm_1548 +.loop push de ld a, "…" ld [hli], a call GetJoypad ld a, [hJoyDown] and A_BUTTON | B_BUTTON - jr nz, .asm_155a + jr nz, .next ld c, 10 call DelayFrames -.asm_155a +.next pop de dec d - jr nz, .asm_1548 + jr nz, .loop ld b, h ld c, l pop hl @@ -1216,7 +1125,6 @@ Text_15:: ; 1582 call PlaceString pop hl ret -; 15a2 .Days ; 15a2 dw .Sun @@ -1236,4 +1144,3 @@ Text_15:: ; 1582 .Satur db "SATUR@" .Day db "DAY@" ; 15d8 - @@ -4763,7 +4763,7 @@ Function6219: ; 6219 ld [rSVBK], a ld hl, rLCDC res 2, [hl] - call Functionfdb + call ClearScreen call Function3200 xor a ld [hLCDStatCustom], a @@ -8635,7 +8635,7 @@ _PrintNum:: ; c4c7 .two dec e jr nz, .asm_c583 - ld a, $f6 + ld a, "0" ld [$ffb3], a .asm_c583 @@ -8701,10 +8701,10 @@ _PrintNum:: ; c4c7 .PrintDigit: ; c5cb (3:45cb) dec e jr nz, .ok - ld a, $f6 + ld a, "0" ld [$ffb3], a .ok - ld c, $0 + ld c, 0 .asm_c5d4 ld a, [$ffb7] ld b, a @@ -8721,7 +8721,7 @@ _PrintNum:: ; c4c7 cp b jr nc, .asm_c5f6 ld a, [$ffb4] - or $0 + or 0 jr z, .asm_c620 dec a ld [$ffb4], a @@ -8772,7 +8772,7 @@ _PrintNum:: ; c4c7 ld [hli], a res 5, d .asm_c637 - ld a, $f6 + ld a, "0" add c ld [hl], a ld [$ffb3], a @@ -18719,7 +18719,7 @@ UnknownText_0x124f5: ; 0x124f5 Function124fa: ; 124fa call ClearPalettes - call Functionfdb + call ClearScreen call Function3200 call HideSprites call Function4f0 @@ -36020,7 +36020,7 @@ Function28000: ; 28000 call WhiteBGMap ld c, $50 call DelayFrames - call Functionfdb + call ClearScreen call ClearSprites call Function1ad2 xor a @@ -36028,7 +36028,7 @@ Function28000: ; 28000 ld [hSCY], a ld c, $50 call DelayFrames - call Functionfdb + call ClearScreen call Function1ad2 call Functione51 call Functione58 @@ -36437,7 +36437,7 @@ Function28177: ; 28177 jr nz, .asm_283a9 ld a, CAL ld [OtherTrainerClass], a - call Functionfdb + call ClearScreen callba Function4d354 ld hl, Options ld a, [hl] @@ -36512,7 +36512,7 @@ Function283b2: ; 283b2 bccoord 1, 14 call Function13e5 call Function4b6 - call Functionfdb + call ClearScreen ld b, $8 call GetSGBLayout call Function3200 @@ -37209,7 +37209,7 @@ Function287d8: ; 287d8 ; 287e3 Function287e3: ; 287e3 - call Functionfdb + call ClearScreen call Function28ef8 callba Function16d673 xor a @@ -37599,7 +37599,7 @@ Function28ade: ; 28ade Function28b22: ; 28b22 call Function4b6 - call Functionfdb + call ClearScreen ld b, $8 call GetSGBLayout call Function3200 @@ -37936,7 +37936,7 @@ Function28b87: ; 28b87 dec a ld [CurPartyMon], a callab Function421d8 - call Functionfdb + call ClearScreen call Function28ef8 call Function28eff callba Function4d354 @@ -47361,7 +47361,7 @@ Function4424d: ; 4424d ld a, b push af hlcoord 9, 5 - call Function13d4 + call FarString ld h, b ld l, c push de @@ -47449,7 +47449,7 @@ Function4424d: ; 4424d pop af hlcoord 2, 11 push af - call Function13d4 + call FarString pop bc ld a, [$cf65] or a @@ -47475,7 +47475,7 @@ Function4424d: ; 4424d inc de pop af hlcoord 2, 11 - call Function13d4 + call FarString ret ; 44331 @@ -50111,7 +50111,7 @@ INCBIN "gfx/misc/pack_f.w40.2bpp" Function4925b: ; 4925b call FadeToMenu call WhiteBGMap - call Functionfdb + call ClearScreen call DelayFrame ld b, $14 call GetSGBLayout @@ -54537,7 +54537,7 @@ Function4d319: ; 4d319 ld a, [CurPartyMon] inc a ld [$cfa9], a - call Functionfdb + call ClearScreen call WhiteBGMap call MaxVolume callba Function28ef8 @@ -64590,7 +64590,7 @@ Function84785: ; 84785 ld d, [hl] hlcoord 1, 7 ld a, $77 - call Function13d4 + call FarString hlcoord 2, 15 ld de, String_847f5 call PlaceString @@ -64622,7 +64622,7 @@ Function847bd: ; 847bd ld d, [hl] hlcoord 4, 7 ld a, BANK(GBPrinterStrings) - call Function13d4 + call FarString hlcoord 4, 15 ld de, String_847f5 call PlaceString @@ -107777,7 +107777,7 @@ Function1176ee: ; 1176ee (45:76ee) .asm_117709 callba Function8cf53 call WhiteBGMap - call Functionfdb + call ClearScreen call ClearSprites ret @@ -111076,7 +111076,7 @@ Function11c1ca: ; 11c1ca call Function11c254 call WhiteBGMap call ClearSprites - call Functionfdb + call ClearScreen call Function11d323 call Function32f9 call DisableLCD @@ -113861,7 +113861,7 @@ Function1704e1: ; 1704e1 Function1704f1: ; 1704f1 call WhiteBGMap call ClearSprites - call Functionfdb + call ClearScreen .asm_1704fa call Functiona57 ld a, [$cf63] @@ -115476,7 +115476,7 @@ Function17d370: ; 17d370 ld [$cd6c], a call WhiteBGMap call ClearSprites - call Functionfdb + call ClearScreen callba Function104061 call DisableLCD ld hl, $8ee0 @@ -116346,16 +116346,16 @@ Function17f41d: ; 17f41d push af ld l, c ld h, b - ld bc, $3b60 + ld bc, -TileMap + $10000 add hl, bc - ld de, $ffec + ld de, -SCREEN_WIDTH ld c, $1 .asm_17f42c ld a, h and a jr nz, .asm_17f435 ld a, l - cp $14 + cp SCREEN_WIDTH jr c, .asm_17f439 .asm_17f435 @@ -116365,7 +116365,7 @@ Function17f41d: ; 17f41d .asm_17f439 ld hl, TileMap - ld de, $0014 + ld de, SCREEN_WIDTH ld a, c .asm_17f440 and a @@ -116377,7 +116377,7 @@ Function17f41d: ; 17f41d .asm_17f447 pop af ld e, a - ld d, $0 + ld d, 0 add hl, de pop de and a @@ -116398,7 +116398,7 @@ Function17f44f: ; 17f44f ld l, c ld h, b ld c, a - ld b, $0 + ld b, 0 add hl, bc ld a, [de] cp $50 @@ -116947,7 +116947,7 @@ Function1dc1b0: ; 1dc1b0 pop af ld a, b ld hl, $cb6d - call nz, Function13d4 + call nz, FarString ld hl, $caa3 ld [hl], $35 ld de, $0014 @@ -116997,7 +116997,7 @@ Function1dc213: ; 1dc213 pop af ld hl, $caa5 ld a, b - call nz, Function13d4 + call nz, FarString ret ; 1dc26a |