diff options
author | sceptillion <33798691+sceptillion@users.noreply.github.com> | 2017-12-18 13:14:49 -0800 |
---|---|---|
committer | sceptillion <33798691+sceptillion@users.noreply.github.com> | 2017-12-18 13:14:49 -0800 |
commit | f70d7efa6638c428885756405800aa022fb339da (patch) | |
tree | c314815a5a99184a866fff4cc671ae367f4311b0 | |
parent | d1437d30f7e6071f62d1a7842400d6732c7313b7 (diff) |
partially decompile text_printer
39 files changed, 523 insertions, 888 deletions
diff --git a/asm/battle_2.s b/asm/battle_2.s index 681c34b21..23f7b3834 100644 --- a/asm/battle_2.s +++ b/asm/battle_2.s @@ -2359,7 +2359,7 @@ sub_8011100: @ 8011100 sub sp, 0x4 bl AnimateSprites bl BuildOamBuffer - bl sub_8002DE8 + bl RunTextPrinters bl UpdatePaletteFade bl RunTasks ldr r0, _08011160 @ =gMain diff --git a/asm/braille_text.s b/asm/braille_text.s index 1f1d5f897..64e3f532c 100644 --- a/asm/braille_text.s +++ b/asm/braille_text.s @@ -126,7 +126,7 @@ _0814F974: ldrb r0, [r6, 0x6] strb r0, [r6, 0x8] ldrb r1, [r6, 0x5] - ldr r0, _0814F998 @ =gUnknown_3003D90 + ldr r0, _0814F998 @ =gFonts ldr r2, [r0] lsls r0, r1, 1 adds r0, r1 @@ -142,7 +142,7 @@ _0814F992: movs r0, 0x2 b _0814FC96 .align 2, 0 -_0814F998: .4byte gUnknown_3003D90 +_0814F998: .4byte gFonts _0814F99C: ldr r0, [r6] adds r0, 0x1 @@ -271,7 +271,7 @@ _0814FA9E: lsls r2, 24 lsrs r2, 28 _0814FAA6: - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable b _0814F992 _0814FAAC: ldr r0, [r6] @@ -384,8 +384,8 @@ _0814FB62: adds r0, r3, 0 bl DecompressGlyphFont6 adds r0, r6, 0 - bl sub_8003014 - ldr r0, _0814FB84 @ =gUnknown_3003DA0 + bl CopyGlyphToWindow + ldr r0, _0814FB84 @ =gGlyphBuffer1 adds r0, 0x80 ldrb r1, [r6, 0xA] ldrb r0, [r0] @@ -396,7 +396,7 @@ _0814FB62: movs r0, 0 b _0814FC96 .align 2, 0 -_0814FB84: .4byte gUnknown_3003DA0 +_0814FB84: .4byte gGlyphBuffer1 _0814FB88: adds r0, r6, 0 bl TextPrinterWait @@ -435,7 +435,7 @@ _0814FBC4: adds r0, r6, 0 bl sub_80055D4 ldrb r1, [r6, 0x5] - ldr r0, _0814FBF8 @ =gUnknown_3003D90 + ldr r0, _0814FBF8 @ =gFonts ldr r2, [r0] lsls r0, r1, 1 adds r0, r1 @@ -451,7 +451,7 @@ _0814FBC4: strb r0, [r6, 0x1C] b _0814FB42 .align 2, 0 -_0814FBF8: .4byte gUnknown_3003D90 +_0814FBF8: .4byte gFonts _0814FBFC: ldrb r2, [r6, 0x1F] cmp r2, 0 @@ -551,27 +551,27 @@ DecompressGlyphFont6: @ 814FC9C ldr r0, _0814FCF8 @ =gUnknown_846FB0C adds r1, r0 adds r5, r2, r1 - ldr r4, _0814FCFC @ =gUnknown_3003DA0 + ldr r4, _0814FCFC @ =gGlyphBuffer1 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r5, 0 adds r0, 0x10 adds r1, r4, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r5, r1 adds r1, r4, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x88 lsls r1, 1 adds r0, r5, r1 adds r1, r4, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x80 movs r1, 0x10 @@ -583,7 +583,7 @@ DecompressGlyphFont6: @ 814FC9C bx r0 .align 2, 0 _0814FCF8: .4byte gUnknown_846FB0C -_0814FCFC: .4byte gUnknown_3003DA0 +_0814FCFC: .4byte gGlyphBuffer1 thumb_func_end DecompressGlyphFont6 thumb_func_start GetGlyphWidthFont6 diff --git a/asm/egg_hatch.s b/asm/egg_hatch.s index f39bc39de..b733fa4c3 100644 --- a/asm/egg_hatch.s +++ b/asm/egg_hatch.s @@ -754,7 +754,7 @@ _0804726C: strb r0, [r1, 0x2] _0804727A: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade @@ -1225,7 +1225,7 @@ _08047654: bl sub_812B484 _08047684: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s index a0a122cc6..e2a66525d 100644 --- a/asm/evolution_scene.s +++ b/asm/evolution_scene.s @@ -1095,7 +1095,7 @@ sub_80CE710: @ 80CE710 push {lr} bl AnimateSprites bl BuildOamBuffer - bl sub_8002DE8 + bl RunTextPrinters bl UpdatePaletteFade bl RunTasks pop {r0} @@ -1107,7 +1107,7 @@ sub_80CE72C: @ 80CE72C push {lr} bl AnimateSprites bl BuildOamBuffer - bl sub_8002DE8 + bl RunTextPrinters bl UpdatePaletteFade bl RunTasks pop {r0} diff --git a/asm/fame_checker.s b/asm/fame_checker.s index 68e2e1c49..ef3157dd2 100644 --- a/asm/fame_checker.s +++ b/asm/fame_checker.s @@ -368,7 +368,7 @@ sub_812C694: @ 812C694 beq _0812C6C0 b _0812C8EA _0812C6C0: - bl sub_8002DE8 + bl RunTextPrinters ldr r0, _0812C71C @ =gMain ldrh r1, [r0, 0x2E] movs r0, 0x4 @@ -879,7 +879,7 @@ sub_812CAD8: @ 812CAD8 adds r5, r1, r0 adds r0, 0x8 adds r6, r1, r0 - bl sub_8002DE8 + bl RunTextPrinters ldr r0, _0812CBA0 @ =gMain ldrh r1, [r0, 0x2E] movs r0, 0x1 diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s index 1b27d2840..657732fa3 100644 --- a/asm/field_player_avatar.s +++ b/asm/field_player_avatar.s @@ -4711,7 +4711,7 @@ sub_805D6C8: @ 805D6C8 adds r0, r1 bl sub_805D9C4 _0805D6EA: - bl sub_8002DE8 + bl RunTextPrinters movs r1, 0xA ldrsh r0, [r5, r1] cmp r0, 0 @@ -5030,7 +5030,7 @@ _0805D97C: .4byte gUnknown_2036E38 thumb_func_start sub_805D980 sub_805D980: @ 805D980 push {lr} - bl sub_8002DE8 + bl RunTextPrinters movs r0, 0 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/field_screen_effect.s b/asm/field_screen_effect.s index 13808bf72..ace3190ac 100644 --- a/asm/field_screen_effect.s +++ b/asm/field_screen_effect.s @@ -800,7 +800,7 @@ _0807F424: .4byte gUnknown_2021D18 _0807F428: .4byte gUnknown_83C68EC _0807F42C: .4byte gUnknown_3003E50 _0807F430: - bl sub_8002DE8 + bl RunTextPrinters adds r0, r7, 0 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s index 0a9fbf98a..cdf2bd638 100644 --- a/asm/hall_of_fame.s +++ b/asm/hall_of_fame.s @@ -19,7 +19,7 @@ sub_80F1DAC: @ 80F1DAC sub_80F1DC0: @ 80F1DC0 push {lr} bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/asm/help_system.s b/asm/help_system.s index 06d57678d..2ac8159aa 100644 --- a/asm/help_system.s +++ b/asm/help_system.s @@ -1210,7 +1210,7 @@ _0813C1DC: .4byte 0x00000834 _0813C1E0: .4byte gUnknown_841CB3C _0813C1E4: ldr r7, [sp, 0x34] - ldr r1, _0813C1FC @ =gUnknown_3003DA0 + ldr r1, _0813C1FC @ =gGlyphBuffer1 adds r1, 0x81 mov r0, r10 adds r0, 0x1 @@ -1221,7 +1221,7 @@ _0813C1E4: mov r10, r0 b _0813C0AC .align 2, 0 -_0813C1FC: .4byte gUnknown_3003DA0 +_0813C1FC: .4byte gGlyphBuffer1 _0813C200: mov r2, r9 ldrb r1, [r2] @@ -1401,7 +1401,7 @@ _0813C36A: add r2, sp, 0x14 bl sub_813C3AC ldr r1, [sp, 0x24] - ldr r0, _0813C398 @ =gUnknown_3003DA0 + ldr r0, _0813C398 @ =gGlyphBuffer1 adds r0, 0x80 ldrb r0, [r0] _0813C38E: @@ -1411,7 +1411,7 @@ _0813C390: lsrs r7, r0, 24 b _0813C0AC .align 2, 0 -_0813C398: .4byte gUnknown_3003DA0 +_0813C398: .4byte gGlyphBuffer1 _0813C39C: add sp, 0x38 pop {r3-r5} @@ -1468,7 +1468,7 @@ _0813C3FA: movs r1, 0 bl sub_80065B8 _0813C402: - ldr r1, _0813C450 @ =gUnknown_3003DA0 + ldr r1, _0813C450 @ =gGlyphBuffer1 str r1, [r7] movs r2, 0 movs r0, 0x10 @@ -1506,7 +1506,7 @@ _0813C402: pop {r0} bx r0 .align 2, 0 -_0813C450: .4byte gUnknown_3003DA0 +_0813C450: .4byte gGlyphBuffer1 thumb_func_end sub_813C3AC thumb_func_start sub_813C454 @@ -1517,7 +1517,7 @@ sub_813C454: @ 813C454 movs r0, 0x1 movs r1, 0xF movs r2, 0x2 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable ldr r1, _0813C484 @ =gUnknown_201FD00 movs r2, 0x2 str r2, [sp] @@ -1550,7 +1550,7 @@ sub_813C488: @ 813C488 movs r0, 0x1 movs r1, 0xF movs r2, 0x2 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable ldr r1, _0813C4C8 @ =gUnknown_201F400 lsls r4, 24 lsrs r4, 24 @@ -1585,7 +1585,7 @@ sub_813C4CC: @ 813C4CC movs r0, 0x1 movs r1, 0xF movs r2, 0x2 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable ldr r1, _0813C508 @ =gUnknown_201C000 str r4, [sp] movs r0, 0x1A @@ -1625,7 +1625,7 @@ sub_813C50C: @ 813C50C movs r0, 0x1 movs r1, 0xE movs r2, 0x2 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable movs r6, 0 str r6, [sp] movs r5, 0x1A @@ -1679,7 +1679,7 @@ sub_813C584: @ 813C584 movs r0, 0x2 movs r1, 0x1 movs r2, 0x3 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable movs r0, 0x6 str r0, [sp] movs r0, 0x1A diff --git a/asm/learn_move.s b/asm/learn_move.s index d726b3bf0..3791a2a22 100644 --- a/asm/learn_move.s +++ b/asm/learn_move.s @@ -276,7 +276,7 @@ _080E4882: strb r1, [r0] _080E489E: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/asm/link_rfu_3.s b/asm/link_rfu_3.s index 05e84a1cb..565a92117 100644 --- a/asm/link_rfu_3.s +++ b/asm/link_rfu_3.s @@ -3255,7 +3255,7 @@ _08117384: bl sub_808B700 _081173A2: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer pop {r4} @@ -3473,7 +3473,7 @@ _08117564: bl SetMainCallback2 _08117576: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer pop {r4} @@ -13185,7 +13185,7 @@ _0811C500: bl SetMainCallback2 _0811C516: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/asm/mail.s b/asm/mail.s index e00947a9b..0944f93d2 100644 --- a/asm/mail.s +++ b/asm/mail.s @@ -485,7 +485,7 @@ _080BF000: cmp r0, 0 beq _080BF0F4 bl sub_80BF224 - bl sub_8002DE8 + bl RunTextPrinters b _080BF0F4 .align 2, 0 _080BF018: .4byte gUnknown_20399C4 diff --git a/asm/main_menu.s b/asm/main_menu.s index cd3a008f9..b772ffe88 100644 --- a/asm/main_menu.s +++ b/asm/main_menu.s @@ -436,7 +436,7 @@ sub_800C688: @ 800C688 ands r0, r1 cmp r0, 0 bne _0800C6F8 - bl sub_8002DE8 + bl RunTextPrinters movs r0, 0x4 bl IsTextPrinterActive lsls r0, 16 @@ -1092,7 +1092,7 @@ _0800CC0C: .align 2, 0 _0800CC18: .4byte gUnknown_2037AB8 _0800CC1C: - bl sub_8002DE8 + bl RunTextPrinters movs r0, 0x4 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/menu_helpers.s b/asm/menu_helpers.s index 648b255bc..4fc93136e 100644 --- a/asm/menu_helpers.s +++ b/asm/menu_helpers.s @@ -90,7 +90,7 @@ sub_80BF518: @ 80BF518 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - bl sub_8002DE8 + bl RunTextPrinters adds r0, r4, 0 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/mystery_gift_menu.s b/asm/mystery_gift_menu.s index 34b6ed87d..2844c7e59 100644 --- a/asm/mystery_gift_menu.s +++ b/asm/mystery_gift_menu.s @@ -19,7 +19,7 @@ sub_8142078: @ 8142078 sub_814208C: @ 814208C push {lr} bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer pop {r0} diff --git a/asm/naming_screen.s b/asm/naming_screen.s index 60c81ba86..0132c1c03 100644 --- a/asm/naming_screen.s +++ b/asm/naming_screen.s @@ -1004,7 +1004,7 @@ _0809E1D0: .4byte gUnknown_3003E50 thumb_func_start sub_809E1D4 sub_809E1D4: @ 809E1D4 push {lr} - bl sub_8002DE8 + bl RunTextPrinters movs r0, 0 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/new_menu_helpers.s b/asm/new_menu_helpers.s index 5b67c3544..c2ac56bd2 100644 --- a/asm/new_menu_helpers.s +++ b/asm/new_menu_helpers.s @@ -716,7 +716,7 @@ sub_80F6C98: @ 80F6C98 thumb_func_start sub_80F6CBC sub_80F6CBC: @ 80F6CBC push {lr} - bl sub_8002DE8 + bl RunTextPrinters movs r0, 0 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/oak_speech.s b/asm/oak_speech.s index ef204e879..a3d63741c 100644 --- a/asm/oak_speech.s +++ b/asm/oak_speech.s @@ -259,7 +259,7 @@ sub_812EAFC: @ 812EAFC sub_812EB10: @ 812EB10 push {lr} bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/asm/pokedex_screen.s b/asm/pokedex_screen.s index 77376e270..0e9da693a 100644 --- a/asm/pokedex_screen.s +++ b/asm/pokedex_screen.s @@ -30,7 +30,7 @@ sub_81024D4: @ 81024D4 beq _08102504 _081024EC: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer b _08102508 diff --git a/asm/pokemon_special_anim.s b/asm/pokemon_special_anim.s index ad42d068b..e62122ee8 100644 --- a/asm/pokemon_special_anim.s +++ b/asm/pokemon_special_anim.s @@ -225,7 +225,7 @@ sub_811C6E8: @ 811C6E8 thumb_func_start sub_811C6FC sub_811C6FC: @ 811C6FC push {lr} - bl sub_8002DE8 + bl RunTextPrinters bl RunTasks bl AnimateSprites bl BuildOamBuffer diff --git a/asm/save_failed_screen.s b/asm/save_failed_screen.s index e44191cbb..98706e4a8 100644 --- a/asm/save_failed_screen.s +++ b/asm/save_failed_screen.s @@ -399,7 +399,7 @@ sub_80F5404: @ 80F5404 movs r0, 0x2 movs r1, 0x1 movs r2, 0x3 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable add r1, sp, 0xC ldr r2, _080F544C @ =0x00001111 adds r0, r2, 0 diff --git a/asm/text.s b/asm/text.s index 3928fbff2..46277701a 100644 --- a/asm/text.s +++ b/asm/text.s @@ -689,7 +689,7 @@ _08005880: ldrb r0, [r6, 0x6] strb r0, [r6, 0x8] ldrb r1, [r6, 0x5] - ldr r0, _080058A4 @ =gUnknown_3003D90 + ldr r0, _080058A4 @ =gFonts ldr r2, [r0] lsls r0, r1, 1 adds r0, r1 @@ -705,7 +705,7 @@ _0800589E: movs r0, 0x2 b _08005D6A .align 2, 0 -_080058A4: .4byte gUnknown_3003D90 +_080058A4: .4byte gFonts _080058A8: ldr r0, [r6] b _08005B0A @@ -841,7 +841,7 @@ _080059CA: lsls r2, 24 lsrs r2, 28 _080059D2: - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable b _0800589E _080059D8: ldr r0, [r6] @@ -971,7 +971,7 @@ _08005AB0: _08005ABE: adds r0, r6, 0 adds r1, r4, 0 - bl nullsub_5 + bl ClearTextSpan ldrb r0, [r6, 0x8] adds r0, r4 b _08005C4E @@ -1001,7 +1001,7 @@ _08005ADC: _08005AF2: adds r0, r6, 0 adds r1, r4, 0 - bl nullsub_5 + bl ClearTextSpan ldrb r0, [r6, 0x8] adds r0, r4 b _08005C4E @@ -1059,14 +1059,14 @@ _08005B46: ldrb r2, [r6, 0x8] ldrb r3, [r6, 0x9] bl DrawKeypadIcon - ldr r1, _08005B68 @ =gUnknown_3003DA0 + ldr r1, _08005B68 @ =gGlyphBuffer1 adds r1, 0x80 strb r0, [r1] ldrb r3, [r6, 0xA] adds r0, r3 b _08005C4A .align 2, 0 -_08005B68: .4byte gUnknown_3003DA0 +_08005B68: .4byte gGlyphBuffer1 _08005B6C: ldr r0, [r4] lsls r0, 28 @@ -1131,13 +1131,13 @@ _08005BE2: bl sub_8006958 _08005BEE: adds r0, r6, 0 - bl sub_8003014 + bl CopyGlyphToWindow adds r2, r6, 0 adds r2, 0x20 ldrb r0, [r2] cmp r0, 0 beq _08005C28 - ldr r1, _08005C24 @ =gUnknown_3003DA0 + ldr r1, _08005C24 @ =gGlyphBuffer1 adds r1, 0x80 ldrb r0, [r1] ldrb r3, [r6, 0x8] @@ -1150,19 +1150,19 @@ _08005BEE: ble _08005C50 adds r0, r6, 0 adds r1, r4, 0 - bl nullsub_5 + bl ClearTextSpan ldrb r0, [r6, 0x8] adds r0, r4 b _08005C4E .align 2, 0 -_08005C24: .4byte gUnknown_3003DA0 +_08005C24: .4byte gGlyphBuffer1 _08005C28: adds r0, r6, 0 adds r0, 0x21 ldrb r0, [r0] cmp r0, 0 beq _08005C44 - ldr r0, _08005C40 @ =gUnknown_3003DA0 + ldr r0, _08005C40 @ =gGlyphBuffer1 adds r0, 0x80 ldrb r1, [r6, 0xA] ldrb r0, [r0] @@ -1170,9 +1170,9 @@ _08005C28: ldrb r0, [r6, 0x8] b _08005C4C .align 2, 0 -_08005C40: .4byte gUnknown_3003DA0 +_08005C40: .4byte gGlyphBuffer1 _08005C44: - ldr r0, _08005C54 @ =gUnknown_3003DA0 + ldr r0, _08005C54 @ =gGlyphBuffer1 adds r0, 0x80 ldrb r0, [r0] _08005C4A: @@ -1185,7 +1185,7 @@ _08005C50: movs r0, 0 b _08005D6A .align 2, 0 -_08005C54: .4byte gUnknown_3003DA0 +_08005C54: .4byte gGlyphBuffer1 _08005C58: adds r0, r6, 0 bl TextPrinterWait @@ -1230,7 +1230,7 @@ _08005CA6: adds r0, r6, 0 bl sub_80055D4 ldrb r1, [r6, 0x5] - ldr r0, _08005CCC @ =gUnknown_3003D90 + ldr r0, _08005CCC @ =gFonts ldr r2, [r0] lsls r0, r1, 1 adds r0, r1 @@ -1246,7 +1246,7 @@ _08005CA6: strb r0, [r6, 0x1C] b _08005B30 .align 2, 0 -_08005CCC: .4byte gUnknown_3003D90 +_08005CCC: .4byte gFonts _08005CD0: ldrb r2, [r6, 0x1F] cmp r2, 0 @@ -1834,7 +1834,7 @@ sub_8006124: @ 8006124 mov r10, r0 movs r0, 0x1 movs r2, 0x3 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable mov r8, r4 movs r7, 0 _0800615E: @@ -1939,7 +1939,7 @@ _08006246: _0800624A: ldr r1, [sp, 0x8] mov r2, r10 - bl sub_8002EA8 + bl GenerateFontHalfRowLookupTable b _08006280 _08006254: adds r7, 0x1 @@ -1949,7 +1949,7 @@ _08006256: _0800625A: adds r0, r6, 0 bl DecompressGlyphFont9 - ldr r4, _080062A8 @ =gUnknown_3003DA0 + ldr r4, _080062A8 @ =gGlyphBuffer1 ldr r5, _080062AC @ =0x04000008 adds r0, r4, 0 mov r1, r9 @@ -1984,7 +1984,7 @@ _08006286: pop {r1} bx r1 .align 2, 0 -_080062A8: .4byte gUnknown_3003DA0 +_080062A8: .4byte gGlyphBuffer1 _080062AC: .4byte 0x04000008 thumb_func_end sub_8006124 @@ -2228,16 +2228,16 @@ sub_8006448: @ 8006448 ldr r1, _08006488 @ =gUnknown_81EF100 adds r0, r1 adds r5, r2, r0 - ldr r4, _0800648C @ =gUnknown_3003DA0 + ldr r4, _0800648C @ =gGlyphBuffer1 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r5, r1 adds r1, r4, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile adds r1, r4, 0 adds r1, 0x80 movs r0, 0x8 @@ -2247,20 +2247,20 @@ sub_8006448: @ 8006448 b _080064BC .align 2, 0 _08006488: .4byte gUnknown_81EF100 -_0800648C: .4byte gUnknown_3003DA0 +_0800648C: .4byte gGlyphBuffer1 _08006490: lsls r1, r6, 5 ldr r0, _080064C4 @ =gUnknown_81EAF00 adds r5, r1, r0 - ldr r4, _080064C8 @ =gUnknown_3003DA0 + ldr r4, _080064C8 @ =gGlyphBuffer1 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r5, 0 adds r0, 0x10 adds r1, r4, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _080064CC @ =gUnknown_81EEF00 adds r0, r6, r0 ldrb r1, [r0] @@ -2276,7 +2276,7 @@ _080064BC: bx r0 .align 2, 0 _080064C4: .4byte gUnknown_81EAF00 -_080064C8: .4byte gUnknown_3003DA0 +_080064C8: .4byte gGlyphBuffer1 _080064CC: .4byte gUnknown_81EEF00 thumb_func_end sub_8006448 @@ -2315,16 +2315,16 @@ sub_80064F0: @ 80064F0 ldr r1, _08006534 @ =gUnknown_81FB300 adds r0, r1 adds r5, r2, r0 - ldr r4, _08006538 @ =gUnknown_3003DA0 + ldr r4, _08006538 @ =gGlyphBuffer1 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r5, r1 adds r1, r4, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile adds r1, r4, 0 adds r1, 0x80 movs r0, 0x8 @@ -2335,30 +2335,30 @@ sub_80064F0: @ 80064F0 b _08006584 .align 2, 0 _08006534: .4byte gUnknown_81FB300 -_08006538: .4byte gUnknown_3003DA0 +_08006538: .4byte gGlyphBuffer1 _0800653C: lsls r1, r6, 6 ldr r0, _0800658C @ =gUnknown_81F3100 adds r5, r1, r0 - ldr r4, _08006590 @ =gUnknown_3003DA0 + ldr r4, _08006590 @ =gGlyphBuffer1 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r5, 0 adds r0, 0x10 adds r1, r4, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r5, 0 adds r0, 0x20 adds r1, r4, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r5, 0 adds r0, 0x30 adds r1, r4, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _08006594 @ =gUnknown_81FB100 adds r0, r6, r0 ldrb r1, [r0] @@ -2375,7 +2375,7 @@ _08006584: bx r0 .align 2, 0 _0800658C: .4byte gUnknown_81F3100 -_08006590: .4byte gUnknown_3003DA0 +_08006590: .4byte gGlyphBuffer1 _08006594: .4byte gUnknown_81FB100 thumb_func_end sub_80064F0 @@ -2409,11 +2409,11 @@ sub_80065B8: @ 80065B8 cmp r6, 0 bne _080065F8 movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _080065F4 @ =gUnknown_3003DA0 + ldr r3, _080065F4 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 adds r7, r3, 0 @@ -2432,7 +2432,7 @@ _080065E4: ble _080065E4 b _080066E4 .align 2, 0 -_080065F4: .4byte gUnknown_3003DA0 +_080065F4: .4byte gGlyphBuffer1 _080065F8: lsrs r2, r0, 19 lsls r2, 9 @@ -2442,27 +2442,27 @@ _080065F8: ldr r1, _08006650 @ =gUnknown_8207500 adds r0, r1 adds r4, r2, r0 - ldr r5, _08006654 @ =gUnknown_3003DA0 + ldr r5, _08006654 @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x10 adds r1, r5, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r4, r1 adds r1, r5, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x88 lsls r1, 1 adds r0, r4, r1 adds r1, r5, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _08006658 @ =gUnknown_820F500 adds r0, r6, r0 ldrb r1, [r0] @@ -2475,17 +2475,17 @@ _080065F8: b _080066E2 .align 2, 0 _08006650: .4byte gUnknown_8207500 -_08006654: .4byte gUnknown_3003DA0 +_08006654: .4byte gGlyphBuffer1 _08006658: .4byte gUnknown_820F500 _0800665C: cmp r6, 0 bne _0800669C movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _08006694 @ =gUnknown_3003DA0 + ldr r3, _08006694 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 ldr r0, _08006698 @ =gUnknown_8207300 @@ -2507,31 +2507,31 @@ _08006682: ble _08006682 b _080066E4 .align 2, 0 -_08006694: .4byte gUnknown_3003DA0 +_08006694: .4byte gGlyphBuffer1 _08006698: .4byte gUnknown_8207300 _0800669C: lsls r1, r6, 6 ldr r0, _080066EC @ =gUnknown_81FF300 adds r4, r1, r0 - ldr r5, _080066F0 @ =gUnknown_3003DA0 + ldr r5, _080066F0 @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x10 adds r1, r5, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x20 adds r1, r5, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x30 adds r1, r5, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _080066F4 @ =gUnknown_8207300 adds r0, r6, r0 ldrb r1, [r0] @@ -2549,7 +2549,7 @@ _080066E4: bx r0 .align 2, 0 _080066EC: .4byte gUnknown_81FF300 -_080066F0: .4byte gUnknown_3003DA0 +_080066F0: .4byte gGlyphBuffer1 _080066F4: .4byte gUnknown_8207300 thumb_func_end sub_80065B8 @@ -2591,11 +2591,11 @@ sub_8006724: @ 8006724 cmp r3, 0 bne _08006764 movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _08006760 @ =gUnknown_3003DA0 + ldr r3, _08006760 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 adds r7, r3, 0 @@ -2614,7 +2614,7 @@ _08006750: ble _08006750 b _080067C6 .align 2, 0 -_08006760: .4byte gUnknown_3003DA0 +_08006760: .4byte gGlyphBuffer1 _08006764: lsrs r2, r0, 19 lsls r2, 9 @@ -2624,27 +2624,27 @@ _08006764: ldr r1, _080067B8 @ =gUnknown_8207500 adds r0, r1 adds r5, r2, r0 - ldr r4, _080067BC @ =gUnknown_3003DA0 + ldr r4, _080067BC @ =gGlyphBuffer1 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r5, 0 adds r0, 0x10 adds r1, r4, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r5, r1 adds r1, r4, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x88 lsls r1, 1 adds r0, r5, r1 adds r1, r4, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile adds r1, r4, 0 adds r1, 0x80 movs r0, 0xA @@ -2655,7 +2655,7 @@ _08006764: b _080067C6 .align 2, 0 _080067B8: .4byte gUnknown_8207500 -_080067BC: .4byte gUnknown_3003DA0 +_080067BC: .4byte gGlyphBuffer1 _080067C0: adds r0, r3, 0 bl sub_80065B8 @@ -2695,11 +2695,11 @@ sub_80067EC: @ 80067EC cmp r6, 0 bne _0800682C movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _08006828 @ =gUnknown_3003DA0 + ldr r3, _08006828 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 adds r7, r3, 0 @@ -2718,7 +2718,7 @@ _08006818: ble _08006818 b _08006918 .align 2, 0 -_08006828: .4byte gUnknown_3003DA0 +_08006828: .4byte gGlyphBuffer1 _0800682C: lsrs r2, r0, 19 lsls r2, 9 @@ -2728,27 +2728,27 @@ _0800682C: ldr r1, _08006884 @ =gUnknown_8217818 adds r0, r1 adds r4, r2, r0 - ldr r5, _08006888 @ =gUnknown_3003DA0 + ldr r5, _08006888 @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x10 adds r1, r5, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r4, r1 adds r1, r5, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x88 lsls r1, 1 adds r0, r4, r1 adds r1, r5, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _0800688C @ =gUnknown_821F818 adds r0, r6, r0 ldrb r1, [r0] @@ -2761,17 +2761,17 @@ _0800682C: b _08006916 .align 2, 0 _08006884: .4byte gUnknown_8217818 -_08006888: .4byte gUnknown_3003DA0 +_08006888: .4byte gGlyphBuffer1 _0800688C: .4byte gUnknown_821F818 _08006890: cmp r6, 0 bne _080068D0 movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _080068C8 @ =gUnknown_3003DA0 + ldr r3, _080068C8 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 ldr r0, _080068CC @ =gUnknown_8217618 @@ -2793,31 +2793,31 @@ _080068B6: ble _080068B6 b _08006918 .align 2, 0 -_080068C8: .4byte gUnknown_3003DA0 +_080068C8: .4byte gGlyphBuffer1 _080068CC: .4byte gUnknown_8217618 _080068D0: lsls r1, r6, 6 ldr r0, _08006920 @ =gUnknown_820F618 adds r4, r1, r0 - ldr r5, _08006924 @ =gUnknown_3003DA0 + ldr r5, _08006924 @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x10 adds r1, r5, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x20 adds r1, r5, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x30 adds r1, r5, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _08006928 @ =gUnknown_8217618 adds r0, r6, r0 ldrb r1, [r0] @@ -2835,7 +2835,7 @@ _08006918: bx r0 .align 2, 0 _08006920: .4byte gUnknown_820F618 -_08006924: .4byte gUnknown_3003DA0 +_08006924: .4byte gGlyphBuffer1 _08006928: .4byte gUnknown_8217618 thumb_func_end sub_80067EC @@ -2877,11 +2877,11 @@ sub_8006958: @ 8006958 cmp r6, 0 bne _08006998 movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _08006994 @ =gUnknown_3003DA0 + ldr r3, _08006994 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 adds r7, r3, 0 @@ -2900,7 +2900,7 @@ _08006984: ble _08006984 b _08006A84 .align 2, 0 -_08006994: .4byte gUnknown_3003DA0 +_08006994: .4byte gGlyphBuffer1 _08006998: lsrs r2, r0, 19 lsls r2, 9 @@ -2910,27 +2910,27 @@ _08006998: ldr r1, _080069F0 @ =gUnknown_8227B30 adds r0, r1 adds r4, r2, r0 - ldr r5, _080069F4 @ =gUnknown_3003DA0 + ldr r5, _080069F4 @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x10 adds r1, r5, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x80 lsls r1, 1 adds r0, r4, r1 adds r1, r5, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile movs r1, 0x88 lsls r1, 1 adds r0, r4, r1 adds r1, r5, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _080069F8 @ =gUnknown_822FB30 adds r0, r6, r0 ldrb r1, [r0] @@ -2943,17 +2943,17 @@ _08006998: b _08006A82 .align 2, 0 _080069F0: .4byte gUnknown_8227B30 -_080069F4: .4byte gUnknown_3003DA0 +_080069F4: .4byte gGlyphBuffer1 _080069F8: .4byte gUnknown_822FB30 _080069FC: cmp r6, 0 bne _08006A3C movs r0, 0x2 - bl sub_8002FCC + bl GetLastTextColor lsls r0, 24 lsrs r0, 24 movs r1, 0 - ldr r3, _08006A34 @ =gUnknown_3003DA0 + ldr r3, _08006A34 @ =gGlyphBuffer1 lsls r2, r0, 4 orrs r2, r0 ldr r0, _08006A38 @ =gUnknown_8227930 @@ -2975,31 +2975,31 @@ _08006A22: ble _08006A22 b _08006A84 .align 2, 0 -_08006A34: .4byte gUnknown_3003DA0 +_08006A34: .4byte gGlyphBuffer1 _08006A38: .4byte gUnknown_8227930 _08006A3C: lsls r1, r6, 6 ldr r0, _08006A8C @ =gUnknown_821F930 adds r4, r1, r0 - ldr r5, _08006A90 @ =gUnknown_3003DA0 + ldr r5, _08006A90 @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x10 adds r1, r5, 0 adds r1, 0x20 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x20 adds r1, r5, 0 adds r1, 0x40 - bl sub_8002F8C + bl DecompressGlyphTile adds r0, r4, 0 adds r0, 0x30 adds r1, r5, 0 adds r1, 0x60 - bl sub_8002F8C + bl DecompressGlyphTile ldr r0, _08006A94 @ =gUnknown_8227930 adds r0, r6, r0 ldrb r1, [r0] @@ -3017,7 +3017,7 @@ _08006A84: bx r0 .align 2, 0 _08006A8C: .4byte gUnknown_821F930 -_08006A90: .4byte gUnknown_3003DA0 +_08006A90: .4byte gGlyphBuffer1 _08006A94: .4byte gUnknown_8227930 thumb_func_end sub_8006958 @@ -3062,17 +3062,17 @@ DecompressGlyphFont9: @ 8006AC4 ldr r0, _08006B08 @ =gUnknown_822FC48 adds r1, r0 adds r4, r1 - ldr r5, _08006B0C @ =gUnknown_3003DA0 + ldr r5, _08006B0C @ =gGlyphBuffer1 adds r0, r4, 0 adds r1, r5, 0 - bl sub_8002F8C + bl DecompressGlyphTile movs r0, 0x80 lsls r0, 1 adds r4, r0 adds r1, r5, 0 adds r1, 0x40 adds r0, r4, 0 - bl sub_8002F8C + bl DecompressGlyphTile adds r1, r5, 0 adds r1, 0x80 movs r0, 0x8 @@ -3085,7 +3085,7 @@ DecompressGlyphFont9: @ 8006AC4 bx r0 .align 2, 0 _08006B08: .4byte gUnknown_822FC48 -_08006B0C: .4byte gUnknown_3003DA0 +_08006B0C: .4byte gGlyphBuffer1 thumb_func_end DecompressGlyphFont9 .align 2, 0 @ Don't pad with nop. diff --git a/asm/text_printer.s b/asm/text_printer.s index 5dc0ac6da..504cc57b4 100644 --- a/asm/text_printer.s +++ b/asm/text_printer.s @@ -5,561 +5,8 @@ .text - thumb_func_start SetFontsPointer -SetFontsPointer: @ 8002C1C - ldr r1, _08002C24 @ =gUnknown_3003D90 - str r0, [r1] - bx lr - .align 2, 0 -_08002C24: .4byte gUnknown_3003D90 - thumb_func_end SetFontsPointer - - thumb_func_start DeactivateAllTextPrinters -DeactivateAllTextPrinters: @ 8002C28 - push {lr} - ldr r1, _08002C40 @ =gUnknown_2020034 - movs r2, 0 - ldr r3, _08002C44 @ =0x0000045c - adds r0, r1, r3 -_08002C32: - strb r2, [r0, 0x1B] - subs r0, 0x24 - cmp r0, r1 - bge _08002C32 - pop {r0} - bx r0 - .align 2, 0 -_08002C40: .4byte gUnknown_2020034 -_08002C44: .4byte 0x0000045c - thumb_func_end DeactivateAllTextPrinters - - thumb_func_start PrintTextOnWindow -PrintTextOnWindow: @ 8002C48 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - ldr r4, [sp, 0x28] - ldr r5, [sp, 0x2C] - ldr r7, [sp, 0x30] - lsls r1, 24 - lsrs r1, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - mov r8, r5 - str r2, [sp] - mov r2, sp - strb r0, [r2, 0x4] - mov r0, sp - strb r1, [r0, 0x5] - strb r3, [r0, 0x6] - strb r4, [r0, 0x7] - strb r3, [r0, 0x8] - strb r4, [r0, 0x9] - ldr r0, _08002CF0 @ =gUnknown_3003D90 - ldr r0, [r0] - lsls r3, r1, 1 - adds r3, r1 - lsls r3, 2 - adds r3, r0 - ldrb r0, [r3, 0x6] - strb r0, [r2, 0xA] - mov r1, sp - ldrb r0, [r3, 0x7] - strb r0, [r1, 0xB] - mov r5, sp - ldrb r1, [r3, 0x8] - lsls r1, 28 - movs r6, 0xF - lsrs r1, 28 - ldrb r4, [r5, 0xC] - movs r2, 0x10 - negs r2, r2 - adds r0, r2, 0 - ands r0, r4 - orrs r0, r1 - strb r0, [r5, 0xC] - mov r4, sp - ldrb r1, [r3, 0x8] - lsrs r1, 4 - lsls r1, 4 - ands r0, r6 - orrs r0, r1 - strb r0, [r4, 0xC] - ldrb r0, [r3, 0x9] - lsls r0, 28 - lsrs r0, 28 - adds r1, r6, 0 - ands r1, r0 - ldrb r0, [r4, 0xD] - ands r2, r0 - orrs r2, r1 - strb r2, [r4, 0xD] - mov r1, sp - ldrb r0, [r3, 0x9] - lsrs r0, 4 - lsls r0, 4 - ands r2, r6 - orrs r2, r0 - strb r2, [r1, 0xD] - mov r0, sp - mov r1, r8 - adds r2, r7, 0 - bl AddTextPrinter - lsls r0, 16 - lsrs r0, 16 - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08002CF0: .4byte gUnknown_3003D90 - thumb_func_end PrintTextOnWindow - - thumb_func_start AddTextPrinter -AddTextPrinter: @ 8002CF4 - push {r4-r7,lr} - adds r6, r0, 0 - mov r12, r2 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _08002D0C @ =gUnknown_3003D90 - ldr r0, [r0] - cmp r0, 0 - bne _08002D10 - movs r0, 0 - b _08002DD8 - .align 2, 0 -_08002D0C: .4byte gUnknown_3003D90 -_08002D10: - ldr r0, _08002D88 @ =gUnknown_2020010 - movs r2, 0 - movs r1, 0x1 - strb r1, [r0, 0x1B] - strb r2, [r0, 0x1C] - strb r5, [r0, 0x1D] - strb r2, [r0, 0x1E] - strb r2, [r0, 0x1F] - adds r4, r0, 0 - movs r1, 0x6 - adds r0, 0x1A -_08002D26: - strb r2, [r0] - subs r0, 0x1 - subs r1, 0x1 - cmp r1, 0 - bge _08002D26 - adds r1, r4, 0 - adds r0, r6, 0 - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r0, [r0] - str r0, [r1] - mov r0, r12 - str r0, [r4, 0x10] - adds r0, r4, 0 - adds r0, 0x20 - movs r1, 0 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - ldrb r0, [r6, 0xC] - lsrs r0, 4 - ldrb r2, [r6, 0xD] - lsls r1, r2, 28 - lsrs r1, 28 - lsrs r2, 4 - bl sub_8002EA8 - cmp r5, 0xFF - beq _08002D90 - cmp r5, 0 - beq _08002D90 - ldrb r0, [r4, 0x1D] - subs r0, 0x1 - strb r0, [r4, 0x1D] - ldr r2, _08002D8C @ =gUnknown_2020034 - ldrb r0, [r6, 0x4] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldm r0!, {r2,r4,r7} - stm r1!, {r2,r4,r7} - b _08002DD6 - .align 2, 0 -_08002D88: .4byte gUnknown_2020010 -_08002D8C: .4byte gUnknown_2020034 -_08002D90: - ldr r1, _08002D9C @ =gUnknown_2020010 - movs r0, 0 - strb r0, [r1, 0x1D] - movs r4, 0 - ldr r7, _08002DA0 @ =0x000003ff - b _08002DAA - .align 2, 0 -_08002D9C: .4byte gUnknown_2020010 -_08002DA0: .4byte 0x000003ff -_08002DA4: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 -_08002DAA: - cmp r4, r7 - bhi _08002DB8 - ldr r0, _08002DE0 @ =gUnknown_2020010 - bl RenderFont - cmp r0, 0x1 - bne _08002DA4 -_08002DB8: - cmp r5, 0xFF - beq _08002DC6 - ldr r0, _08002DE0 @ =gUnknown_2020010 - ldrb r0, [r0, 0x4] - movs r1, 0x2 - bl CopyWindowToVram -_08002DC6: - ldr r2, _08002DE4 @ =gUnknown_2020034 - ldrb r1, [r6, 0x4] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strb r1, [r0, 0x1B] -_08002DD6: - movs r0, 0x1 -_08002DD8: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08002DE0: .4byte gUnknown_2020010 -_08002DE4: .4byte gUnknown_2020034 - thumb_func_end AddTextPrinter - - thumb_func_start sub_8002DE8 -sub_8002DE8: @ 8002DE8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _08002E18 @ =gUnknown_2020034 - movs r6, 0 - adds r5, r0, 0x4 - mov r8, r0 - movs r7, 0x1F -_08002DF8: - ldrb r0, [r5, 0x17] - cmp r0, 0 - beq _08002E4C - mov r0, r8 - bl RenderFont - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - beq _08002E48 - cmp r4, 0x1 - bgt _08002E1C - cmp r4, 0 - beq _08002E22 - b _08002E4C - .align 2, 0 -_08002E18: .4byte gUnknown_2020034 -_08002E1C: - cmp r4, 0x3 - beq _08002E2A - b _08002E4C -_08002E22: - ldrb r0, [r5] - movs r1, 0x2 - bl CopyWindowToVram -_08002E2A: - ldr r1, _08002E44 @ =gUnknown_2020034 - adds r0, r1, 0 - adds r0, 0x10 - adds r0, r6, r0 - ldr r2, [r0] - cmp r2, 0 - beq _08002E4C - adds r0, r6, r1 - adds r1, r4, 0 - bl _call_via_r2 - b _08002E4C - .align 2, 0 -_08002E44: .4byte gUnknown_2020034 -_08002E48: - movs r0, 0 - strb r0, [r5, 0x17] -_08002E4C: - adds r6, 0x24 - adds r5, 0x24 - movs r0, 0x24 - add r8, r0 - subs r7, 0x1 - cmp r7, 0 - bge _08002DF8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8002DE8 - - thumb_func_start IsTextPrinterActive -IsTextPrinterActive: @ 8002E64 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08002E78 @ =gUnknown_2020034 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x1B] - bx lr - .align 2, 0 -_08002E78: .4byte gUnknown_2020034 - thumb_func_end IsTextPrinterActive - - thumb_func_start RenderFont -RenderFont: @ 8002E7C - push {r4,lr} - adds r4, r0, 0 -_08002E80: - ldrb r1, [r4, 0x5] - ldr r0, _08002EA4 @ =gUnknown_3003D90 - ldr r2, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, [r0] - adds r0, r4, 0 - bl _call_via_r1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - beq _08002E80 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08002EA4: .4byte gUnknown_3003D90 - thumb_func_end RenderFont - - thumb_func_start sub_8002EA8 -sub_8002EA8: @ 8002EA8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - str r1, [sp] - str r0, [sp, 0x4] - str r2, [sp, 0x8] - ldr r3, _08002F4C @ =gUnknown_3000AE2 - strh r1, [r3] - ldr r1, _08002F50 @ =gUnknown_3000AE4 - strh r0, [r1] - ldr r0, _08002F54 @ =gUnknown_3000AE6 - strh r2, [r0] - movs r0, 0 - mov r12, r0 - movs r1, 0 -_08002ED8: - movs r2, 0 - lsls r0, r1, 2 - adds r1, 0x1 - mov r10, r1 - add r0, sp - mov r8, r0 -_08002EE4: - movs r1, 0 - lsls r0, r2, 2 - adds r2, 0x1 - mov r9, r2 - add r0, sp - str r0, [sp, 0xC] -_08002EF0: - lsls r0, r1, 2 - adds r6, r1, 0x1 - mov r1, sp - adds r4, r1, r0 - mov r5, sp - mov r7, r12 - lsls r0, r7, 1 - ldr r1, _08002F58 @ =gUnknown_3000A40 - adds r2, r0, r1 - movs r3, 0x2 -_08002F04: - ldm r5!, {r1} - lsls r1, 12 - ldr r0, [r4] - lsls r0, 8 - orrs r1, r0 - ldr r7, [sp, 0xC] - ldr r0, [r7] - lsls r0, 4 - orrs r1, r0 - mov r7, r8 - ldr r0, [r7] - orrs r0, r1 - strh r0, [r2] - adds r2, 0x2 - movs r0, 0x1 - add r12, r0 - subs r3, 0x1 - cmp r3, 0 - bge _08002F04 - adds r1, r6, 0 - cmp r1, 0x2 - ble _08002EF0 - mov r2, r9 - cmp r2, 0x2 - ble _08002EE4 - mov r1, r10 - cmp r1, 0x2 - ble _08002ED8 - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08002F4C: .4byte gUnknown_3000AE2 -_08002F50: .4byte gUnknown_3000AE4 -_08002F54: .4byte gUnknown_3000AE6 -_08002F58: .4byte gUnknown_3000A40 - thumb_func_end sub_8002EA8 - - thumb_func_start SaveTextColors -SaveTextColors: @ 8002F5C - ldr r3, _08002F70 @ =gUnknown_3000AE2 - ldrh r3, [r3] - strb r3, [r1] - ldr r1, _08002F74 @ =gUnknown_3000AE4 - ldrh r1, [r1] - strb r1, [r0] - ldr r0, _08002F78 @ =gUnknown_3000AE6 - ldrh r0, [r0] - strb r0, [r2] - bx lr - .align 2, 0 -_08002F70: .4byte gUnknown_3000AE2 -_08002F74: .4byte gUnknown_3000AE4 -_08002F78: .4byte gUnknown_3000AE6 - thumb_func_end SaveTextColors - - thumb_func_start RestoreTextColors -RestoreTextColors: @ 8002F7C - push {lr} - ldrb r0, [r0] - ldrb r1, [r1] - ldrb r2, [r2] - bl sub_8002EA8 - pop {r0} - bx r0 - thumb_func_end RestoreTextColors - - thumb_func_start sub_8002F8C -sub_8002F8C: @ 8002F8C - push {r4,r5,lr} - adds r2, r0, 0 - movs r3, 0 - ldr r5, _08002FA4 @ =gUnknown_3000A40 - ldr r4, _08002FA8 @ =gUnknown_81EA044 -_08002F96: - lsls r0, r3, 31 - cmp r0, 0 - beq _08002FAC - ldrb r0, [r2] - adds r2, 0x2 - b _08002FB0 - .align 2, 0 -_08002FA4: .4byte gUnknown_3000A40 -_08002FA8: .4byte gUnknown_81EA044 -_08002FAC: - ldrh r0, [r2] - lsrs r0, 8 -_08002FB0: - adds r0, r4 - ldrb r0, [r0] - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - adds r3, 0x1 - cmp r3, 0xF - ble _08002F96 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8002F8C - - thumb_func_start sub_8002FCC -sub_8002FCC: @ 8002FCC - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x1 - beq _08003000 - cmp r0, 0x1 - bgt _08002FE2 - cmp r0, 0 - beq _08002FE8 - b _0800300C -_08002FE2: - cmp r1, 0x2 - beq _08002FF4 - b _0800300C -_08002FE8: - ldr r0, _08002FF0 @ =gUnknown_3000AE4 - ldrb r0, [r0] - b _0800300E - .align 2, 0 -_08002FF0: .4byte gUnknown_3000AE4 -_08002FF4: - ldr r0, _08002FFC @ =gUnknown_3000AE2 - ldrb r0, [r0] - b _0800300E - .align 2, 0 -_08002FFC: .4byte gUnknown_3000AE2 -_08003000: - ldr r0, _08003008 @ =gUnknown_3000AE6 - ldrb r0, [r0] - b _0800300E - .align 2, 0 -_08003008: .4byte gUnknown_3000AE6 -_0800300C: - movs r0, 0 -_0800300E: - pop {r1} - bx r1 - thumb_func_end sub_8002FCC - - thumb_func_start sub_8003014 -sub_8003014: @ 8003014 + thumb_func_start CopyGlyphToWindow +CopyGlyphToWindow: @ 8003014 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -567,7 +14,7 @@ sub_8003014: @ 8003014 push {r5-r7} sub sp, 0x6C adds r6, r0, 0 - ldr r0, _08003084 @ =gUnknown_20204B4 + ldr r0, _08003084 @ =gWindows mov r9, r0 ldrb r1, [r6, 0x4] lsls r0, r1, 1 @@ -579,7 +26,7 @@ sub_8003014: @ 8003014 lsls r0, 3 ldrb r1, [r6, 0x8] subs r1, r0, r1 - ldr r3, _08003088 @ =gUnknown_3003DA0 + ldr r3, _08003088 @ =gGlyphBuffer1 mov r8, r3 mov r0, r8 adds r0, 0x80 @@ -620,8 +67,8 @@ _08003074: beq _0800309A b _080035FC .align 2, 0 -_08003084: .4byte gUnknown_20204B4 -_08003088: .4byte gUnknown_3003DA0 +_08003084: .4byte gWindows +_08003088: .4byte gGlyphBuffer1 _0800308C: cmp r1, 0x2 bne _08003092 @@ -651,7 +98,7 @@ _080030A6: str r1, [sp, 0x24] cmp r5, r7 bge _08003124 - ldr r2, _08003130 @ =gUnknown_20204B4 + ldr r2, _08003130 @ =gWindows mov r12, r2 asrs r3, r0, 3 mov r9, r3 @@ -713,7 +160,7 @@ _08003124: blt _080030A6 b _080035FC .align 2, 0 -_08003130: .4byte gUnknown_20204B4 +_08003130: .4byte gWindows _08003134: movs r2, 0 adds r1, r5, 0 @@ -739,7 +186,7 @@ _08003158: lsls r3, r0, 1 adds r3, r0 lsls r3, 2 - ldr r1, _08003260 @ =gUnknown_20204B4 + ldr r1, _08003260 @ =gWindows adds r1, 0x8 adds r1, r3, r1 asrs r2, r4, 1 @@ -750,7 +197,7 @@ _08003158: asrs r0, r4, 3 lsls r0, 5 adds r1, r0 - ldr r0, _08003260 @ =gUnknown_20204B4 + ldr r0, _08003260 @ =gWindows adds r3, r0 ldrb r0, [r3, 0x3] mov r2, r12 @@ -788,7 +235,7 @@ _080031AC: cmp r2, r10 blt _0800313C _080031BE: - ldr r3, _08003264 @ =gUnknown_3003DC0 + ldr r3, _08003264 @ =gGlyphBuffer2 movs r2, 0 ldrb r1, [r6, 0x9] cmp r2, r10 @@ -813,7 +260,7 @@ _080031D0: ldr r3, [sp, 0x4] cmp r5, r3 bge _08003254 - ldr r7, _08003260 @ =gUnknown_20204B4 + ldr r7, _08003260 @ =gWindows asrs r0, r1, 3 mov r9, r0 lsls r0, r1, 29 @@ -875,8 +322,8 @@ _08003254: blt _080031D0 b _080035FC .align 2, 0 -_08003260: .4byte gUnknown_20204B4 -_08003264: .4byte gUnknown_3003DC0 +_08003260: .4byte gWindows +_08003264: .4byte gGlyphBuffer2 _08003268: adds r1, r3, 0 movs r2, 0 @@ -896,7 +343,7 @@ _08003274: str r1, [sp, 0x5C] cmp r5, r7 bge _080032F2 - ldr r2, _08003398 @ =gUnknown_20204B4 + ldr r2, _08003398 @ =gWindows mov r12, r2 asrs r3, r0, 3 mov r9, r3 @@ -956,7 +403,7 @@ _080032F2: ldr r0, [sp, 0x5C] cmp r2, 0x7 ble _08003274 - ldr r2, _0800339C @ =gUnknown_3003DE0 + ldr r2, _0800339C @ =gGlyphBuffer3 movs r1, 0 ldrb r0, [r6, 0x9] adds r0, 0x8 @@ -976,7 +423,7 @@ _0800330C: str r1, [sp, 0x18] cmp r5, r7 bge _0800338A - ldr r2, _08003398 @ =gUnknown_20204B4 + ldr r2, _08003398 @ =gWindows mov r12, r2 asrs r3, r0, 3 mov r9, r3 @@ -1039,8 +486,8 @@ _0800338A: blt _0800330C b _080035FC .align 2, 0 -_08003398: .4byte gUnknown_20204B4 -_0800339C: .4byte gUnknown_3003DE0 +_08003398: .4byte gWindows +_0800339C: .4byte gGlyphBuffer3 _080033A0: mov r2, r8 movs r3, 0 @@ -1069,7 +516,7 @@ _080033CA: lsls r3, r0, 1 adds r3, r0 lsls r3, 2 - ldr r1, _080034D0 @ =gUnknown_20204B4 + ldr r1, _080034D0 @ =gWindows adds r1, 0x8 adds r1, r3, r1 asrs r2, r4, 1 @@ -1080,7 +527,7 @@ _080033CA: asrs r0, r4, 3 lsls r0, 5 adds r1, r0 - ldr r0, _080034D0 @ =gUnknown_20204B4 + ldr r0, _080034D0 @ =gWindows adds r3, r0 ldrb r0, [r3, 0x3] mov r2, r8 @@ -1116,7 +563,7 @@ _0800341C: mov r1, r12 cmp r3, 0x7 ble _080033B0 - ldr r3, _080034D4 @ =gUnknown_3003DC0 + ldr r3, _080034D4 @ =gGlyphBuffer2 movs r2, 0 ldrb r1, [r6, 0x9] ldr r0, [sp, 0x64] @@ -1135,7 +582,7 @@ _08003438: str r2, [sp, 0x40] cmp r5, r12 bge _080034B8 - ldr r7, _080034D0 @ =gUnknown_20204B4 + ldr r7, _080034D0 @ =gWindows asrs r3, r1, 3 mov r9, r3 lsls r0, r1, 29 @@ -1194,16 +641,16 @@ _080034B8: ldr r1, [sp, 0x40] cmp r2, 0x7 ble _08003438 - ldr r3, _080034D8 @ =gUnknown_3003DE0 + ldr r3, _080034D8 @ =gGlyphBuffer3 movs r2, 0 ldrb r0, [r6, 0x9] adds r1, r0, 0 adds r1, 0x8 b _08003556 .align 2, 0 -_080034D0: .4byte gUnknown_20204B4 -_080034D4: .4byte gUnknown_3003DC0 -_080034D8: .4byte gUnknown_3003DE0 +_080034D0: .4byte gWindows +_080034D4: .4byte gGlyphBuffer2 +_080034D8: .4byte gGlyphBuffer3 _080034DC: ldm r3!, {r0} mov r9, r0 @@ -1223,7 +670,7 @@ _080034F6: lsls r3, r0, 1 adds r3, r0 lsls r3, 2 - ldr r1, _0800360C @ =gUnknown_20204B4 + ldr r1, _0800360C @ =gWindows adds r1, 0x8 adds r1, r3, r1 asrs r2, r4, 1 @@ -1234,7 +681,7 @@ _080034F6: asrs r0, r4, 3 lsls r0, 5 adds r1, r0 - ldr r0, _0800360C @ =gUnknown_20204B4 + ldr r0, _0800360C @ =gWindows adds r3, r0 ldrb r0, [r3, 0x3] mov r2, r8 @@ -1272,7 +719,7 @@ _08003556: ldr r0, [sp, 0x68] cmp r2, r0 blt _080034DC - ldr r3, _08003610 @ =gUnknown_3003E00 + ldr r3, _08003610 @ =gGlyphBuffer4 movs r2, 0 ldrb r0, [r6, 0x9] adds r1, r0, 0 @@ -1296,7 +743,7 @@ _08003570: str r2, [sp, 0xC] cmp r5, r10 bge _080035F0 - ldr r7, _0800360C @ =gUnknown_20204B4 + ldr r7, _0800360C @ =gWindows asrs r3, r1, 3 mov r9, r3 lsls r0, r1, 29 @@ -1366,9 +813,9 @@ _080035FC: pop {r0} bx r0 .align 2, 0 -_0800360C: .4byte gUnknown_20204B4 -_08003610: .4byte gUnknown_3003E00 - thumb_func_end sub_8003014 +_0800360C: .4byte gWindows +_08003610: .4byte gGlyphBuffer4 + thumb_func_end CopyGlyphToWindow thumb_func_start sub_8003614 sub_8003614: @ 8003614 @@ -1391,7 +838,7 @@ sub_8003614: @ 8003614 lsls r0, 16 lsrs r4, r0, 16 subs r1, r3, r1 - ldr r5, _08003688 @ =gUnknown_3003DA0 + ldr r5, _08003688 @ =gGlyphBuffer1 adds r0, r5, 0 adds r0, 0x80 ldrb r7, [r0] @@ -1434,7 +881,7 @@ _08003678: beq _0800369A b _08003B00 .align 2, 0 -_08003688: .4byte gUnknown_3003DA0 +_08003688: .4byte gGlyphBuffer1 _0800368C: cmp r1, 0x2 bne _08003692 @@ -1577,7 +1024,7 @@ _0800377A: cmp r4, r1 blt _08003724 _0800378E: - ldr r1, _08003818 @ =gUnknown_3003DC0 + ldr r1, _08003818 @ =gGlyphBuffer2 movs r0, 0 ldr r2, [sp, 0x8] ldr r3, [sp, 0xC] @@ -1651,7 +1098,7 @@ _08003808: blt _080037A2 b _08003B00 .align 2, 0 -_08003818: .4byte gUnknown_3003DC0 +_08003818: .4byte gGlyphBuffer2 _0800381C: adds r0, r2, 0 movs r1, 0 @@ -1720,7 +1167,7 @@ _08003890: mov r2, r10 cmp r1, 0x7 ble _0800382E - ldr r2, _08003918 @ =gUnknown_3003DE0 + ldr r2, _08003918 @ =gGlyphBuffer3 movs r0, 0 ldr r1, [sp, 0x1C] ldr r3, [sp, 0x20] @@ -1788,7 +1235,7 @@ _0800390A: blt _080038A8 b _08003B00 .align 2, 0 -_08003918: .4byte gUnknown_3003DE0 +_08003918: .4byte gGlyphBuffer3 _0800391C: movs r2, 0 ldr r4, [sp, 0x8] @@ -1857,7 +1304,7 @@ _0800398A: mov r4, r9 cmp r2, 0x7 ble _08003936 - ldr r1, _08003B10 @ =gUnknown_3003DC0 + ldr r1, _08003B10 @ =gGlyphBuffer2 movs r0, 0 ldr r2, [sp, 0x8] ldr r3, [sp, 0x18] @@ -1919,7 +1366,7 @@ _08003A06: mov r2, r10 cmp r0, 0x7 ble _080039A6 - ldr r6, _08003B14 @ =gUnknown_3003DE0 + ldr r6, _08003B14 @ =gGlyphBuffer3 movs r4, 0 ldr r2, [sp, 0x1C] ldr r3, [sp, 0x20] @@ -1981,7 +1428,7 @@ _08003A70: cmp r4, r1 blt _08003A1C _08003A84: - ldr r2, _08003B18 @ =gUnknown_3003E00 + ldr r2, _08003B18 @ =gGlyphBuffer4 movs r0, 0 ldr r1, [sp, 0x1C] ldr r3, [sp, 0x20] @@ -2057,14 +1504,14 @@ _08003B00: pop {r0} bx r0 .align 2, 0 -_08003B10: .4byte gUnknown_3003DC0 -_08003B14: .4byte gUnknown_3003DE0 -_08003B18: .4byte gUnknown_3003E00 +_08003B10: .4byte gGlyphBuffer2 +_08003B14: .4byte gGlyphBuffer3 +_08003B18: .4byte gGlyphBuffer4 thumb_func_end sub_8003614 - thumb_func_start nullsub_5 -nullsub_5: @ 8003B1C + thumb_func_start ClearTextSpan +ClearTextSpan: @ 8003B1C bx lr - thumb_func_end nullsub_5 + thumb_func_end ClearTextSpan .align 2, 0 @ Don't pad with nop. diff --git a/asm/tm_case.s b/asm/tm_case.s index bf9163797..68c44384e 100644 --- a/asm/tm_case.s +++ b/asm/tm_case.s @@ -2969,7 +2969,7 @@ _081330D4: .4byte gUnknown_841C587 _081330D8: .4byte gUnknown_3005090 _081330DC: .4byte sub_8132F60 _081330E0: - bl sub_8002DE8 + bl RunTextPrinters movs r0, 0x6 bl IsTextPrinterActive lsls r0, 16 diff --git a/asm/trade.s b/asm/trade.s index 406bbc88f..dbdac5eac 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -1030,7 +1030,7 @@ _0804CED0: ldr r0, _0804CF10 @ =sub_804D638 bl SetMainCallback2 _0804CEE6: - bl sub_8002DE8 + bl RunTextPrinters bl RunTasks bl AnimateSprites bl BuildOamBuffer @@ -7758,7 +7758,7 @@ _0805046C: bl SetMainCallback2 _08050472: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade @@ -8086,7 +8086,7 @@ _08050778: bl SetMainCallback2 _0805077E: bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade @@ -8309,7 +8309,7 @@ sub_8050948: @ 8050948 push {lr} bl sub_8050F14 bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade @@ -14174,7 +14174,7 @@ _08053DE6: bl sub_80508F4 bl sub_805383C bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/asm/unk_814B6F0.s b/asm/unk_814B6F0.s index 9d40e5aa2..2e3d2e112 100644 --- a/asm/unk_814B6F0.s +++ b/asm/unk_814B6F0.s @@ -466,7 +466,7 @@ sub_814BA6C: @ 814BA6C sub_814BA80: @ 814BA80 push {lr} bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer pop {r0} diff --git a/asm/window.s b/asm/window.s index 670b96cc0..8a457d4f5 100644 --- a/asm/window.s +++ b/asm/window.s @@ -41,7 +41,7 @@ _08003B48: ldr r0, _08003BC0 @ =gUnknown_81EA144 ldr r2, [r0] ldr r3, [r0, 0x4] - ldr r1, _08003BC4 @ =gUnknown_20204B4 + ldr r1, _08003BC4 @ =gWindows movs r0, 0 movs r4, 0x1F mov r8, r4 @@ -94,7 +94,7 @@ _08003BB4: _08003BB8: .4byte gUnknown_3003E40 _08003BBC: .4byte nullsub_6 _08003BC0: .4byte gUnknown_81EA144 -_08003BC4: .4byte gUnknown_20204B4 +_08003BC4: .4byte gWindows _08003BC8: .4byte gUnneededFireRedVariable _08003BCC: ldr r0, _08003C04 @ =gUnknown_3003E40 @@ -173,7 +173,7 @@ _08003C2E: _08003C68: .4byte gUnknown_3003E40 _08003C6C: .4byte nullsub_6 _08003C70: - ldr r1, _08003CD8 @ =gUnknown_20204B4 + ldr r1, _08003CD8 @ =gWindows adds r0, r1, 0 adds r0, 0x8 ldr r2, [sp, 0x4] @@ -228,7 +228,7 @@ _08003CC8: pop {r1} bx r1 .align 2, 0 -_08003CD8: .4byte gUnknown_20204B4 +_08003CD8: .4byte gWindows _08003CDC: .4byte gUnneededFireRedVariable _08003CE0: .4byte gUnknown_3003E30 thumb_func_end InitWindows @@ -243,7 +243,7 @@ AddWindow: @ 8003CE4 sub sp, 0x4 mov r8, r0 movs r6, 0 - ldr r1, _08003DD4 @ =gUnknown_20204B4 + ldr r1, _08003DD4 @ =gWindows ldrb r0, [r1] cmp r0, 0xFF beq _08003D14 @@ -355,13 +355,13 @@ _08003DCE: movs r0, 0xFF b _08003E24 .align 2, 0 -_08003DD4: .4byte gUnknown_20204B4 +_08003DD4: .4byte gWindows _08003DD8: .4byte gUnneededFireRedVariable _08003DDC: .4byte gUnknown_3003E40 _08003DE0: .4byte 0x0000ffff _08003DE4: .4byte nullsub_6 _08003DE8: - ldr r2, _08003E34 @ =gUnknown_20204B4 + ldr r2, _08003E34 @ =gWindows lsls r1, r6, 1 adds r1, r6 lsls r1, 2 @@ -401,7 +401,7 @@ _08003E24: pop {r1} bx r1 .align 2, 0 -_08003E34: .4byte gUnknown_20204B4 +_08003E34: .4byte gWindows _08003E38: .4byte gUnneededFireRedVariable thumb_func_end AddWindow @@ -410,7 +410,7 @@ RemoveWindow: @ 8003E3C push {r4-r7,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r1, _08003EB8 @ =gUnknown_20204B4 + ldr r1, _08003EB8 @ =gWindows lsls r0, r6, 1 adds r0, r6 lsls r0, 2 @@ -451,7 +451,7 @@ _08003E68: bl Free str r5, [r4] _08003E96: - ldr r1, _08003EB8 @ =gUnknown_20204B4 + ldr r1, _08003EB8 @ =gWindows lsls r0, r6, 1 adds r0, r6 lsls r0, 2 @@ -468,7 +468,7 @@ _08003EB0: pop {r0} bx r0 .align 2, 0 -_08003EB8: .4byte gUnknown_20204B4 +_08003EB8: .4byte gWindows _08003EBC: .4byte gUnneededFireRedVariable _08003EC0: .4byte gUnknown_81EA144 _08003EC4: .4byte gUnknown_3003E40 @@ -496,7 +496,7 @@ _08003EE8: subs r5, 0x1 cmp r5, 0 bge _08003ED2 - ldr r0, _08003F1C @ =gUnknown_20204B4 + ldr r0, _08003F1C @ =gWindows adds r4, r0, 0 adds r4, 0x8 movs r6, 0 @@ -518,7 +518,7 @@ _08003F06: .align 2, 0 _08003F14: .4byte gUnknown_3003E40 _08003F18: .4byte nullsub_6 -_08003F1C: .4byte gUnknown_20204B4 +_08003F1C: .4byte gWindows thumb_func_end FreeAllWindowBuffers thumb_func_start CopyWindowToVram @@ -530,7 +530,7 @@ CopyWindowToVram: @ 8003F20 lsls r1, 24 lsrs r3, r1, 24 adds r5, r3, 0 - ldr r2, _08003F58 @ =gUnknown_20204B4 + ldr r2, _08003F58 @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -552,7 +552,7 @@ CopyWindowToVram: @ 8003F20 beq _08003F62 b _08003F96 .align 2, 0 -_08003F58: .4byte gUnknown_20204B4 +_08003F58: .4byte gWindows _08003F5C: cmp r5, 0x3 beq _08003F7E @@ -595,7 +595,7 @@ PutWindowTilemap: @ 8003FA0 sub sp, 0x1C lsls r0, 24 lsrs r0, 24 - ldr r2, _08003FFC @ =gUnknown_20204B4 + ldr r2, _08003FFC @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -636,7 +636,7 @@ PutWindowTilemap: @ 8003FA0 pop {r0} bx r0 .align 2, 0 -_08003FFC: .4byte gUnknown_20204B4 +_08003FFC: .4byte gWindows thumb_func_end PutWindowTilemap thumb_func_start PutWindowRectTilemapOverridePalette @@ -666,7 +666,7 @@ PutWindowRectTilemapOverridePalette: @ 8004000 lsls r5, 24 lsrs r5, 24 str r5, [sp, 0x20] - ldr r2, _080040B4 @ =gUnknown_20204B4 + ldr r2, _080040B4 @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -731,7 +731,7 @@ _080040A2: pop {r0} bx r0 .align 2, 0 -_080040B4: .4byte gUnknown_20204B4 +_080040B4: .4byte gWindows thumb_func_end PutWindowRectTilemapOverridePalette thumb_func_start ClearWindowTilemap @@ -740,7 +740,7 @@ ClearWindowTilemap: @ 80040B8 sub sp, 0x18 lsls r0, 24 lsrs r0, 24 - ldr r2, _08004100 @ =gUnknown_20204B4 + ldr r2, _08004100 @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -771,7 +771,7 @@ ClearWindowTilemap: @ 80040B8 pop {r0} bx r0 .align 2, 0 -_08004100: .4byte gUnknown_20204B4 +_08004100: .4byte gWindows _08004104: .4byte gUnknown_3003E30 thumb_func_end ClearWindowTilemap @@ -798,7 +798,7 @@ PutWindowRectTilemap: @ 8004108 lsls r4, 24 lsrs r4, 24 mov r8, r4 - ldr r2, _080041B4 @ =gUnknown_20204B4 + ldr r2, _080041B4 @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -863,7 +863,7 @@ _080041A2: pop {r0} bx r0 .align 2, 0 -_080041B4: .4byte gUnknown_20204B4 +_080041B4: .4byte gWindows thumb_func_end PutWindowRectTilemap thumb_func_start BlitBitmapToWindow @@ -945,7 +945,7 @@ BlitBitmapRectToWindow: @ 80041F0 lsrs r4, 16 orrs r4, r5 str r4, [sp, 0x18] - ldr r1, _080042AC @ =gUnknown_20204B4 + ldr r1, _080042AC @ =gWindows lsls r5, r0, 1 adds r5, r0 lsls r5, 2 @@ -990,7 +990,7 @@ BlitBitmapRectToWindow: @ 80041F0 .align 2, 0 _080042A4: .4byte 0xffff0000 _080042A8: .4byte 0x0000ffff -_080042AC: .4byte gUnknown_20204B4 +_080042AC: .4byte gWindows thumb_func_end BlitBitmapRectToWindow thumb_func_start BlitBitmapRectToWindowWithColorKey @@ -1044,7 +1044,7 @@ BlitBitmapRectToWindowWithColorKey: @ 80042B0 lsrs r4, 16 orrs r4, r5 str r4, [sp, 0x18] - ldr r1, _08004370 @ =gUnknown_20204B4 + ldr r1, _08004370 @ =gWindows lsls r5, r0, 1 adds r5, r0 lsls r5, 2 @@ -1089,7 +1089,7 @@ BlitBitmapRectToWindowWithColorKey: @ 80042B0 bx r0 .align 2, 0 _0800436C: .4byte 0x0000ffff -_08004370: .4byte gUnknown_20204B4 +_08004370: .4byte gWindows _08004374: .4byte 0xffff0000 thumb_func_end BlitBitmapRectToWindowWithColorKey @@ -1120,7 +1120,7 @@ FillWindowPixelRect: @ 8004378 lsls r4, 16 lsrs r4, 16 mov r8, r4 - ldr r5, _080043F8 @ =gUnknown_20204B4 + ldr r5, _080043F8 @ =gWindows lsls r4, r0, 1 adds r4, r0 lsls r4, 2 @@ -1158,7 +1158,7 @@ FillWindowPixelRect: @ 8004378 pop {r0} bx r0 .align 2, 0 -_080043F8: .4byte gUnknown_20204B4 +_080043F8: .4byte gWindows _080043FC: .4byte 0xffff0000 _08004400: .4byte 0x0000ffff thumb_func_end FillWindowPixelRect @@ -1174,7 +1174,7 @@ CopyToWindowPixelBuffer: @ 8004404 lsrs r2, r3, 16 cmp r5, 0 beq _08004438 - ldr r1, _08004434 @ =gUnknown_20204B4 + ldr r1, _08004434 @ =gWindows lsls r0, r4, 1 adds r0, r4 lsls r0, 2 @@ -1188,9 +1188,9 @@ CopyToWindowPixelBuffer: @ 8004404 bl CpuSet b _08004450 .align 2, 0 -_08004434: .4byte gUnknown_20204B4 +_08004434: .4byte gWindows _08004438: - ldr r1, _08004458 @ =gUnknown_20204B4 + ldr r1, _08004458 @ =gWindows lsls r0, r4, 1 adds r0, r4 lsls r0, 2 @@ -1206,7 +1206,7 @@ _08004450: pop {r0} bx r0 .align 2, 0 -_08004458: .4byte gUnknown_20204B4 +_08004458: .4byte gWindows thumb_func_end CopyToWindowPixelBuffer thumb_func_start FillWindowPixelBuffer @@ -1217,7 +1217,7 @@ FillWindowPixelBuffer: @ 800445C lsrs r0, 24 lsls r1, 24 lsrs r1, 24 - ldr r5, _080044A4 @ =gUnknown_20204B4 + ldr r5, _080044A4 @ =gWindows lsls r4, r0, 1 adds r4, r0 lsls r4, 2 @@ -1246,7 +1246,7 @@ FillWindowPixelBuffer: @ 800445C pop {r0} bx r0 .align 2, 0 -_080044A4: .4byte gUnknown_20204B4 +_080044A4: .4byte gWindows thumb_func_end FillWindowPixelBuffer thumb_func_start ScrollWindow @@ -1267,7 +1267,7 @@ ScrollWindow: @ 80044A8 str r2, [sp] lsls r3, 24 lsrs r3, 24 - ldr r2, _08004544 @ =gUnknown_20204B4 + ldr r2, _08004544 @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -1334,7 +1334,7 @@ _0800451C: str r0, [r1] b _0800454C .align 2, 0 -_08004544: .4byte gUnknown_20204B4 +_08004544: .4byte gWindows _08004548: mov r2, r10 str r7, [r2] @@ -1784,7 +1784,7 @@ CallWindowFunction: @ 800486C mov r8, r1 lsls r0, 24 lsrs r0, 24 - ldr r2, _080048B8 @ =gUnknown_20204B4 + ldr r2, _080048B8 @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -1814,7 +1814,7 @@ CallWindowFunction: @ 800486C pop {r0} bx r0 .align 2, 0 -_080048B8: .4byte gUnknown_20204B4 +_080048B8: .4byte gWindows thumb_func_end CallWindowFunction thumb_func_start sub_80048BC @@ -1844,7 +1844,7 @@ _080048D8: .4byte _08004934 .4byte _08004948 _080048F8: - ldr r1, _08004908 @ =gUnknown_20204B4 + ldr r1, _08004908 @ =gWindows lsls r0, r3, 1 adds r0, r3 lsls r0, 2 @@ -1853,9 +1853,9 @@ _080048F8: movs r0, 0 b _0800494A .align 2, 0 -_08004908: .4byte gUnknown_20204B4 +_08004908: .4byte gWindows _0800490C: - ldr r1, _0800491C @ =gUnknown_20204B4 + ldr r1, _0800491C @ =gWindows lsls r0, r3, 1 adds r0, r3 lsls r0, 2 @@ -1864,9 +1864,9 @@ _0800490C: movs r0, 0 b _0800494A .align 2, 0 -_0800491C: .4byte gUnknown_20204B4 +_0800491C: .4byte gWindows _08004920: - ldr r1, _08004930 @ =gUnknown_20204B4 + ldr r1, _08004930 @ =gWindows lsls r0, r3, 1 adds r0, r3 lsls r0, 2 @@ -1875,9 +1875,9 @@ _08004920: movs r0, 0 b _0800494A .align 2, 0 -_08004930: .4byte gUnknown_20204B4 +_08004930: .4byte gWindows _08004934: - ldr r1, _08004944 @ =gUnknown_20204B4 + ldr r1, _08004944 @ =gWindows lsls r0, r3, 1 adds r0, r3 lsls r0, 2 @@ -1886,7 +1886,7 @@ _08004934: movs r0, 0 b _0800494A .align 2, 0 -_08004944: .4byte gUnknown_20204B4 +_08004944: .4byte gWindows _08004948: movs r0, 0x1 _0800494A: @@ -1921,7 +1921,7 @@ _0800496C: .4byte _08004A04 .4byte _08004A18 _0800498C: - ldr r0, _0800499C @ =gUnknown_20204B4 + ldr r0, _0800499C @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1929,9 +1929,9 @@ _0800498C: ldrb r0, [r1] b _08004A2E .align 2, 0 -_0800499C: .4byte gUnknown_20204B4 +_0800499C: .4byte gWindows _080049A0: - ldr r0, _080049B0 @ =gUnknown_20204B4 + ldr r0, _080049B0 @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1939,9 +1939,9 @@ _080049A0: ldrb r0, [r1, 0x1] b _08004A2E .align 2, 0 -_080049B0: .4byte gUnknown_20204B4 +_080049B0: .4byte gWindows _080049B4: - ldr r0, _080049C4 @ =gUnknown_20204B4 + ldr r0, _080049C4 @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1949,9 +1949,9 @@ _080049B4: ldrb r0, [r1, 0x2] b _08004A2E .align 2, 0 -_080049C4: .4byte gUnknown_20204B4 +_080049C4: .4byte gWindows _080049C8: - ldr r0, _080049D8 @ =gUnknown_20204B4 + ldr r0, _080049D8 @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1959,9 +1959,9 @@ _080049C8: ldrb r0, [r1, 0x3] b _08004A2E .align 2, 0 -_080049D8: .4byte gUnknown_20204B4 +_080049D8: .4byte gWindows _080049DC: - ldr r0, _080049EC @ =gUnknown_20204B4 + ldr r0, _080049EC @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1969,9 +1969,9 @@ _080049DC: ldrb r0, [r1, 0x4] b _08004A2E .align 2, 0 -_080049EC: .4byte gUnknown_20204B4 +_080049EC: .4byte gWindows _080049F0: - ldr r0, _08004A00 @ =gUnknown_20204B4 + ldr r0, _08004A00 @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1979,9 +1979,9 @@ _080049F0: ldrb r0, [r1, 0x5] b _08004A2E .align 2, 0 -_08004A00: .4byte gUnknown_20204B4 +_08004A00: .4byte gWindows _08004A04: - ldr r0, _08004A14 @ =gUnknown_20204B4 + ldr r0, _08004A14 @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -1989,9 +1989,9 @@ _08004A04: ldrh r0, [r1, 0x6] b _08004A2E .align 2, 0 -_08004A14: .4byte gUnknown_20204B4 +_08004A14: .4byte gWindows _08004A18: - ldr r0, _08004A28 @ =gUnknown_20204B4 + ldr r0, _08004A28 @ =gWindows lsls r1, r2, 1 adds r1, r2 lsls r1, 2 @@ -2000,7 +2000,7 @@ _08004A18: ldr r0, [r1] b _08004A2E .align 2, 0 -_08004A28: .4byte gUnknown_20204B4 +_08004A28: .4byte gWindows _08004A2C: movs r0, 0 _08004A2E: @@ -2014,7 +2014,7 @@ GetNumActiveWindowsOnBg: @ 8004A34 lsls r0, 24 lsrs r4, r0, 24 movs r3, 0 - ldr r2, _08004A5C @ =gUnknown_20204B4 + ldr r2, _08004A5C @ =gWindows movs r1, 0x1F _08004A40: ldrb r0, [r2] @@ -2033,7 +2033,7 @@ _08004A4C: pop {r1} bx r1 .align 2, 0 -_08004A5C: .4byte gUnknown_20204B4 +_08004A5C: .4byte gWindows thumb_func_end GetNumActiveWindowsOnBg .align 2, 0 @ Don't pad with nop. diff --git a/asm/window_8bpp.s b/asm/window_8bpp.s index c0a5ea68f..9c2ed93ae 100644 --- a/asm/window_8bpp.s +++ b/asm/window_8bpp.s @@ -19,7 +19,7 @@ AddWindow8Bit: @ 8005038 push {r5-r7} mov r9, r0 movs r6, 0 - ldr r1, _08005100 @ =gUnknown_20204B4 + ldr r1, _08005100 @ =gWindows ldrb r0, [r1] cmp r0, 0xFF beq _08005066 @@ -112,12 +112,12 @@ _080050FA: movs r0, 0xFF b _0800512E .align 2, 0 -_08005100: .4byte gUnknown_20204B4 +_08005100: .4byte gWindows _08005104: .4byte gUnknown_3003E40 _08005108: .4byte 0x0000ffff _0800510C: .4byte nullsub_7 _08005110: - ldr r1, _0800513C @ =gUnknown_20204B4 + ldr r1, _0800513C @ =gWindows lsls r2, r6, 1 adds r2, r6 lsls r2, 2 @@ -141,7 +141,7 @@ _0800512E: pop {r1} bx r1 .align 2, 0 -_0800513C: .4byte gUnknown_20204B4 +_0800513C: .4byte gWindows thumb_func_end AddWindow8Bit thumb_func_start FillWindowPixelBuffer8Bit @@ -151,7 +151,7 @@ FillWindowPixelBuffer8Bit: @ 8005140 lsrs r0, 24 lsls r1, 24 lsrs r5, r1, 24 - ldr r6, _0800517C @ =gUnknown_20204B4 + ldr r6, _0800517C @ =gWindows lsls r1, r0, 1 adds r1, r0 lsls r4, r1, 2 @@ -179,7 +179,7 @@ _08005176: pop {r0} bx r0 .align 2, 0 -_0800517C: .4byte gUnknown_20204B4 +_0800517C: .4byte gWindows thumb_func_end FillWindowPixelBuffer8Bit thumb_func_start FillWindowPixelRect8Bit @@ -209,7 +209,7 @@ FillWindowPixelRect8Bit: @ 8005180 lsls r4, 16 lsrs r4, 16 mov r8, r4 - ldr r5, _08005200 @ =gUnknown_20204B4 + ldr r5, _08005200 @ =gWindows lsls r4, r0, 1 adds r4, r0 lsls r4, 2 @@ -247,7 +247,7 @@ FillWindowPixelRect8Bit: @ 8005180 pop {r0} bx r0 .align 2, 0 -_08005200: .4byte gUnknown_20204B4 +_08005200: .4byte gWindows _08005204: .4byte 0xffff0000 _08005208: .4byte 0x0000ffff thumb_func_end FillWindowPixelRect8Bit @@ -303,7 +303,7 @@ BlitBitmapRectToWindow4BitTo8Bit: @ 800520C lsrs r4, 16 orrs r4, r5 str r4, [sp, 0x1C] - ldr r1, _080052D0 @ =gUnknown_20204B4 + ldr r1, _080052D0 @ =gWindows lsls r5, r0, 1 adds r5, r0 lsls r5, 2 @@ -350,7 +350,7 @@ BlitBitmapRectToWindow4BitTo8Bit: @ 800520C bx r0 .align 2, 0 _080052CC: .4byte 0x0000ffff -_080052D0: .4byte gUnknown_20204B4 +_080052D0: .4byte gWindows _080052D4: .4byte 0xffff0000 thumb_func_end BlitBitmapRectToWindow4BitTo8Bit @@ -366,7 +366,7 @@ CopyWindowToVram8Bit: @ 80052D8 lsls r1, r0, 1 adds r1, r0 lsls r1, 2 - ldr r0, _08005310 @ =gUnknown_20204B4 + ldr r0, _08005310 @ =gWindows adds r3, r1, r0 str r3, [r6] ldr r4, _08005314 @ =gUnknown_2020638 @@ -384,7 +384,7 @@ CopyWindowToVram8Bit: @ 80052D8 b _08005348 .align 2, 0 _0800530C: .4byte gUnknown_2020634 -_08005310: .4byte gUnknown_20204B4 +_08005310: .4byte gWindows _08005314: .4byte gUnknown_2020638 _08005318: cmp r5, 0x3 @@ -422,7 +422,7 @@ GetNumActiveWindowsOnBg8Bit: @ 8005350 lsls r0, 24 lsrs r4, r0, 24 movs r3, 0 - ldr r2, _08005378 @ =gUnknown_20204B4 + ldr r2, _08005378 @ =gWindows movs r1, 0x1F _0800535C: ldrb r0, [r2] @@ -441,7 +441,7 @@ _08005368: pop {r1} bx r1 .align 2, 0 -_08005378: .4byte gUnknown_20204B4 +_08005378: .4byte gWindows thumb_func_end GetNumActiveWindowsOnBg8Bit .align 2, 0 @ Don't pad with nop. diff --git a/asm/wireless_communication_status_screen.s b/asm/wireless_communication_status_screen.s index abac81dc1..299555201 100644 --- a/asm/wireless_communication_status_screen.s +++ b/asm/wireless_communication_status_screen.s @@ -13,7 +13,7 @@ sub_814F19C: @ 814F19C cmp r0, 0 bne _0814F1BC bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade @@ -147,7 +147,7 @@ sub_814F1E4: @ 814F1E4 ldr r0, _0814F328 @ =sub_814F19C bl SetMainCallback2 bl RunTasks - bl sub_8002DE8 + bl RunTextPrinters bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade diff --git a/common_syms/text_printer.txt b/common_syms/text_printer.txt new file mode 100644 index 000000000..36fdd6853 --- /dev/null +++ b/common_syms/text_printer.txt @@ -0,0 +1,5 @@ +gFonts +gGlyphBuffer1 +gGlyphBuffer2 +gGlyphBuffer3 +gGlyphBuffer4 diff --git a/data/data.s b/data/data.s index 600fb2392..12eedb8d0 100644 --- a/data/data.s +++ b/data/data.s @@ -1,8 +1,5 @@ .section .rodata -gUnknown_81EA044:: @ 81EA044 - .incbin "baserom.gba", 0x1EA044, 0x100 - gUnknown_81EA144:: @ 81EA144 .incbin "baserom.gba", 0x1EA144, 0x8 diff --git a/include/string_util.h b/include/string_util.h index f26646082..2354c9ded 100644 --- a/include/string_util.h +++ b/include/string_util.h @@ -34,7 +34,6 @@ u8 *WriteColorChangeControlCode(u8 *dest, u32 colorType, u8 color); bool32 IsStringJapanese(u8 *str); bool32 sub_800924C(u8 *str, s32 n); u8 GetExtCtrlCodeLength(u8 code); -static const u8 *SkipExtCtrlCode(const u8 *s); s32 StringCompareWithoutExtCtrlCodes(const u8 *str1, const u8 *str2); void ConvertInternationalString(u8 *s, u8 language); void StripExtCtrlCodes(u8 *str); diff --git a/include/text.h b/include/text.h index 289c7d2b5..bf3071d69 100644 --- a/include/text.h +++ b/include/text.h @@ -190,7 +190,6 @@ extern u8 gStringVar2[]; extern u8 gStringVar3[]; extern u8 gStringVar4[]; -u8 gUnknown_03002F84; u8 gUnknown_03002F90[0x20]; u8 gUnknown_03002FB0[0x20]; u8 gUnknown_03002FD0[0x20]; diff --git a/ld_script.txt b/ld_script.txt index 66f696f70..1877cf472 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -87,6 +87,7 @@ SECTIONS { src/dma3_manager.o(.text); src/bg.o(.text); src/malloc.o(.text); + src/text_printer.o(.text); asm/text_printer.o(.text); asm/window.o(.text); asm/blit.o(.text); @@ -394,6 +395,7 @@ SECTIONS { src/main.o(.rodata); src/bg.o(.rodata); src/malloc.o(.rodata); + src/text_printer.o(.rodata); data/data.o(.rodata); src/m4a_tables.o(.rodata); data/sound_data.o(.rodata); @@ -53,7 +53,7 @@ void ResetBgs(void) SetTextModeAndHideBgs(); } -static void SetBgModeInternal(u8 bgMode) +void SetBgModeInternal(u8 bgMode) { sGpuBgConfigs.bgVisibilityAndMode &= 0xFFF8; sGpuBgConfigs.bgVisibilityAndMode |= bgMode; diff --git a/src/text_printer.c b/src/text_printer.c new file mode 100644 index 000000000..95de6fbbd --- /dev/null +++ b/src/text_printer.c @@ -0,0 +1,216 @@ +#include "global.h" +#include "main.h" +#include "palette.h" +#include "string_util.h" +#include "window.h" +#include "text.h" + +static EWRAM_DATA struct TextPrinter sTempTextPrinter = {0}; +static EWRAM_DATA struct TextPrinter sTextPrinters[NUM_TEXT_PRINTERS] = {0}; + +static u16 sFontHalfRowLookupTable[0x51]; +static u16 sLastTextBgColor; +static u16 sLastTextFgColor; +static u16 sLastTextShadowColor; + +const struct FontInfo *gFonts; +u32 gGlyphBuffer1[8]; +u32 gGlyphBuffer2[8]; +u32 gGlyphBuffer3[8]; +u32 gGlyphBuffer4[8]; + +static const u8 sFontHalfRowOffsets[] = +{ + 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x03, 0x06, 0x07, 0x08, 0x06, 0x00, 0x01, 0x02, 0x00, + 0x09, 0x0A, 0x0B, 0x09, 0x0C, 0x0D, 0x0E, 0x0C, 0x0F, 0x10, 0x11, 0x0F, 0x09, 0x0A, 0x0B, 0x09, + 0x12, 0x13, 0x14, 0x12, 0x15, 0x16, 0x17, 0x15, 0x18, 0x19, 0x1A, 0x18, 0x12, 0x13, 0x14, 0x12, + 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x03, 0x06, 0x07, 0x08, 0x06, 0x00, 0x01, 0x02, 0x00, + 0x1B, 0x1C, 0x1D, 0x1B, 0x1E, 0x1F, 0x20, 0x1E, 0x21, 0x22, 0x23, 0x21, 0x1B, 0x1C, 0x1D, 0x1B, + 0x24, 0x25, 0x26, 0x24, 0x27, 0x28, 0x29, 0x27, 0x2A, 0x2B, 0x2C, 0x2A, 0x24, 0x25, 0x26, 0x24, + 0x2D, 0x2E, 0x2F, 0x2D, 0x30, 0x31, 0x32, 0x30, 0x33, 0x34, 0x35, 0x33, 0x2D, 0x2E, 0x2F, 0x2D, + 0x1B, 0x1C, 0x1D, 0x1B, 0x1E, 0x1F, 0x20, 0x1E, 0x21, 0x22, 0x23, 0x21, 0x1B, 0x1C, 0x1D, 0x1B, + 0x36, 0x37, 0x38, 0x36, 0x39, 0x3A, 0x3B, 0x39, 0x3C, 0x3D, 0x3E, 0x3C, 0x36, 0x37, 0x38, 0x36, + 0x3F, 0x40, 0x41, 0x3F, 0x42, 0x43, 0x44, 0x42, 0x45, 0x46, 0x47, 0x45, 0x3F, 0x40, 0x41, 0x3F, + 0x48, 0x49, 0x4A, 0x48, 0x4B, 0x4C, 0x4D, 0x4B, 0x4E, 0x4F, 0x50, 0x4E, 0x48, 0x49, 0x4A, 0x48, + 0x36, 0x37, 0x38, 0x36, 0x39, 0x3A, 0x3B, 0x39, 0x3C, 0x3D, 0x3E, 0x3C, 0x36, 0x37, 0x38, 0x36, + 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x03, 0x06, 0x07, 0x08, 0x06, 0x00, 0x01, 0x02, 0x00, + 0x09, 0x0A, 0x0B, 0x09, 0x0C, 0x0D, 0x0E, 0x0C, 0x0F, 0x10, 0x11, 0x0F, 0x09, 0x0A, 0x0B, 0x09, + 0x12, 0x13, 0x14, 0x12, 0x15, 0x16, 0x17, 0x15, 0x18, 0x19, 0x1A, 0x18, 0x12, 0x13, 0x14, 0x12, + 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x03, 0x06, 0x07, 0x08, 0x06, 0x00, 0x01, 0x02, 0x00 +}; + +void SetFontsPointer(const struct FontInfo *fonts) +{ + gFonts = fonts; +} + +void DeactivateAllTextPrinters (void) +{ + int printer; + for (printer = 0; printer < NUM_TEXT_PRINTERS; ++printer) + sTextPrinters[printer].sub_union.sub.active = 0; +} + +u16 PrintTextOnWindow(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextSubPrinter *, u16)) +{ + struct TextSubPrinter subPrinter; + + subPrinter.current_text_offset = str; + subPrinter.windowId = windowId; + subPrinter.fontId = fontId; + subPrinter.x = x; + subPrinter.y = y; + subPrinter.currentX = x; + subPrinter.currentY = y; + subPrinter.letterSpacing = gFonts[fontId].letterSpacing; + subPrinter.lineSpacing = gFonts[fontId].lineSpacing; + subPrinter.fontColor_l = gFonts[fontId].fontColor_l; + subPrinter.fontColor_h = gFonts[fontId].fontColor_h; + subPrinter.bgColor = gFonts[fontId].bgColor; + subPrinter.shadowColor = gFonts[fontId].shadowColor; + return AddTextPrinter(&subPrinter, speed, callback); +} + +bool16 AddTextPrinter(struct TextSubPrinter *textSubPrinter, u8 speed, void (*callback)(struct TextSubPrinter *, u16)) +{ + int i; + u16 j; + + if (!gFonts) + return FALSE; + + sTempTextPrinter.sub_union.sub.active = 1; + sTempTextPrinter.state = 0; + sTempTextPrinter.text_speed = speed; + sTempTextPrinter.delayCounter = 0; + sTempTextPrinter.scrollDistance = 0; + + for (i = 0; i < 7; ++i) + { + sTempTextPrinter.sub_union.sub_fields[i] = 0; + } + + sTempTextPrinter.subPrinter = *textSubPrinter; + sTempTextPrinter.callback = callback; + sTempTextPrinter.minLetterSpacing = 0; + sTempTextPrinter.japanese = 0; + + GenerateFontHalfRowLookupTable(textSubPrinter->fontColor_h, textSubPrinter->bgColor, textSubPrinter->shadowColor); + if (speed != TEXT_SPEED_FF && speed != 0x0) + { + --sTempTextPrinter.text_speed; + sTextPrinters[textSubPrinter->windowId] = sTempTextPrinter; + } + else + { + sTempTextPrinter.text_speed = 0; + for (j = 0; j < 0x400; ++j) + { + if ((u32)RenderFont(&sTempTextPrinter) == 1) + break; + } + + if (speed != TEXT_SPEED_FF) + CopyWindowToVram(sTempTextPrinter.subPrinter.windowId, 2); + sTextPrinters[textSubPrinter->windowId].sub_union.sub.active = 0; + } + return TRUE; +} + +void RunTextPrinters(void) +{ + int i; + u16 temp; + + for (i = 0; i < 0x20; ++i) + { + if (sTextPrinters[i].sub_union.sub.active != 0) + { + temp = RenderFont(&sTextPrinters[i]); + switch (temp) { + case 0: + CopyWindowToVram(sTextPrinters[i].subPrinter.windowId, 2); + case 3: + if (sTextPrinters[i].callback != 0) + sTextPrinters[i].callback(&sTextPrinters[i].subPrinter, temp); + break; + case 1: + sTextPrinters[i].sub_union.sub.active = 0; + break; + } + } + } +} + +bool16 IsTextPrinterActive(u8 id) +{ + return sTextPrinters[id].sub_union.sub.active; +} + +u32 RenderFont(struct TextPrinter *textPrinter) +{ + u32 ret; + while (TRUE) + { + ret = gFonts[textPrinter->subPrinter.fontId].fontFunction(textPrinter); + if (ret != 2) + return ret; + } +} + +void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor) +{ + int lutIndex; + int i, j, k, l; + const u32 colors[] = {bgColor, fgColor, shadowColor}; + + sLastTextBgColor = bgColor; + sLastTextFgColor = fgColor; + sLastTextShadowColor = shadowColor; + + lutIndex = 0; + + for (i = 0; i < 3; i++) + for (j = 0; j < 3; j++) + for (k = 0; k < 3; k++) + for (l = 0; l < 3; l++) + sFontHalfRowLookupTable[lutIndex++] = (colors[l] << 12) | (colors[k] << 8) | (colors[j] << 4) | colors[i]; +} + +void SaveTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor) +{ + *bgColor = sLastTextBgColor; + *fgColor = sLastTextFgColor; + *shadowColor = sLastTextShadowColor; +} + +void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor) +{ + GenerateFontHalfRowLookupTable(*fgColor, *bgColor, *shadowColor); +} + +void DecompressGlyphTile(const u16 *src, u16 *dest) +{ + int i; + + for (i = 0; i < 16; i++) + { + int offsetIndex = (i << 31) ? (u8)*src++ : (*src >> 8); + dest[i] = sFontHalfRowLookupTable[sFontHalfRowOffsets[offsetIndex]]; + } +} + +u8 GetLastTextColor(u8 colorType) +{ + switch (colorType) + { + case 0: + return sLastTextFgColor; + case 2: + return sLastTextBgColor; + case 1: + return sLastTextShadowColor; + default: + return 0; + } +} diff --git a/sym_bss.txt b/sym_bss.txt index 25c9155da..12da192c1 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -8,20 +8,9 @@ .include "src/bg.o" .include "src/malloc.o" + .include "src/text_printer.o" - .align 2 -gUnknown_3000A40: @ 3000A40 - .space 0xA2 - -gUnknown_3000AE2: @ 3000AE2 - .space 0x2 - -gUnknown_3000AE4: @ 3000AE4 - .space 0x2 - -gUnknown_3000AE6: @ 3000AE6 - .space 0x2 - + .align 2 gUnknown_3000AE8: @ 3000AE8 .space 0x80 diff --git a/sym_common.txt b/sym_common.txt index 4253c5d77..86c90b518 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -1,20 +1,6 @@ .include "main.o" .include "bg.o" - -gUnknown_3003D90: @ 3003D90 - .space 0x10 - -gUnknown_3003DA0: @ 3003DA0 - .space 0x20 - -gUnknown_3003DC0: @ 3003DC0 - .space 0x20 - -gUnknown_3003DE0: @ 3003DE0 - .space 0x20 - -gUnknown_3003E00: @ 3003E00 - .space 0x20 + .include "text_printer.o" gUnknown_3003E20: @ 3003E20 .space 0x10 diff --git a/sym_ewram.txt b/sym_ewram.txt index 8ca6b2afd..e6812246a 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -29,14 +29,9 @@ gTrainerId: @ 2020000 .space 0x4 .include "src/malloc.o" + .include "src/text_printer.o" -gUnknown_2020010: @ 2020010 - .space 0x24 - -gUnknown_2020034: @ 2020034 - .space 0x480 - -gUnknown_20204B4: @ 20204B4 +gWindows: @ 20204B4 .space 0x180 gUnknown_2020634: @ 2020634 |