From 30b37da3870217da1eaecca82bb77ca4343ada49 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 22 Dec 2015 22:19:33 -0500 Subject: [PATCH] More stats screen shenanigans --- constants/cgb_constants.asm | 4 +- engine/color.asm | 60 ++++---- engine/menu.asm | 3 +- engine/party_menu.asm | 5 +- engine/stats_screen.asm | 263 ++++++++++++++++++------------------ event/buena.asm | 2 +- home/menu.asm | 6 +- home/tilemap.asm | 4 +- main.asm | 2 +- misc/gfx_41.asm | 53 +++----- misc/mobile_22.asm | 2 +- misc/mobile_46.asm | 8 +- misc/printer_77.asm | 4 +- predef/cgb.asm | 6 +- predef/sgb.asm | 14 +- wram.asm | 6 +- 16 files changed, 219 insertions(+), 223 deletions(-) diff --git a/constants/cgb_constants.asm b/constants/cgb_constants.asm index fdf3882b0..bb19ac0aa 100755 --- a/constants/cgb_constants.asm +++ b/constants/cgb_constants.asm @@ -2,7 +2,7 @@ const SCGB_00 const SCGB_01 const SCGB_02 - const SCGB_03 + const SCGB_STATS_SCREEN_HP_PALS const SCGB_04 const SCGB_05 const SCGB_06 @@ -31,5 +31,5 @@ const SCGB_1D const SCGB_1E -SCGB_FC EQU -4 +SCGB_PARTY_MENU_HP_PALS EQU -4 SCGB_RAM EQU -1 diff --git a/engine/color.asm b/engine/color.asm index 0bb8d2dda..7f7cdd7ad 100644 --- a/engine/color.asm +++ b/engine/color.asm @@ -117,8 +117,8 @@ Function8ad1: ; 8ad1 ret ; 8ade -Function8ade: ; 8ade SGB layout $fc - ld hl, wcd9b +SGB_ApplyPartyMenuHPPals: ; 8ade SGB layout $fc + ld hl, wHPPals ld a, [wSGBPals] ld e, a ld d, $0 @@ -399,10 +399,10 @@ endr ret ; 8c8a -Function8c8a: ; 8c8a +LoadStatsScreenPals: ; 8c8a call CheckCGB ret z - ld hl, Unknown_8f6a + ld hl, StatsScreenPals ld b, 0 dec c rept 2 @@ -734,8 +734,8 @@ ApplyAttrMap: ; 96b3 ret ; 96f3 -Function96f3: ; 96f3 CGB layout $fc - ld hl, wcd9b +CGB_ApplyPartyMenuHPPals: ; 96f3 CGB layout $fc + ld hl, wHPPals ld a, [wSGBPals] ld e, a ld d, $0 @@ -746,16 +746,15 @@ Function96f3: ; 96f3 CGB layout $fc inc a ld e, a hlcoord 11, 2, AttrMap - ld bc, $28 + ld bc, 2 * SCREEN_WIDTH ld a, [wSGBPals] -.asm_970b +.loop and a - jr z, .asm_9712 + jr z, .done add hl, bc dec a - jr .asm_970b - -.asm_9712 + jr .loop +.done lb bc, 2, 8 ld a, e call FillBoxCGB @@ -966,7 +965,6 @@ Function981a: ; 981a ld a, $10 jr nz, .okay ld a, $20 - .okay ld [rJOYP], a ld a, $30 @@ -980,7 +978,7 @@ Function981a: ; 981a ld [rJOYP], a ld a, $30 ld [rJOYP], a - call Function9a7a + call SGBDelayCycles pop bc dec b jr nz, .loop @@ -1004,10 +1002,10 @@ Function9853: ; 9853 ld [hSGB], a call Function98eb call Function99b4 - call Function9a7a + call SGBDelayCycles call Function993f call Function992c - call Function9a7a + call SGBDelayCycles call Function993f ld hl, PalPacket_9d66 call Function981a @@ -1113,7 +1111,7 @@ Function9911: ; 9911 ld hl, PalPacket_9d56 call Function981a call Function992c - call Function9a7a + call SGBDelayCycles call Function993f ld hl, PalPacket_9d66 call Function981a @@ -1147,7 +1145,7 @@ Function993f: ; 993f Function994a: ; 994a ld hl, PalPacket_9d26 call Function981a - call Function9a7a + call SGBDelayCycles ld a, [rJOYP] and $3 cp $3 @@ -1157,26 +1155,26 @@ Function994a: ; 994a rept 2 ld a, [rJOYP] endr - call Function9a7a - call Function9a7a + call SGBDelayCycles + call SGBDelayCycles ld a, $30 ld [rJOYP], a - call Function9a7a - call Function9a7a + call SGBDelayCycles + call SGBDelayCycles ld a, $10 ld [rJOYP], a rept 6 ld a, [rJOYP] endr - call Function9a7a - call Function9a7a + call SGBDelayCycles + call SGBDelayCycles ld a, $30 ld [rJOYP], a rept 3 ld a, [rJOYP] endr - call Function9a7a - call Function9a7a + call SGBDelayCycles + call SGBDelayCycles ld a, [rJOYP] and $3 cp $3 @@ -1194,7 +1192,7 @@ endr Function99ab: ; 99ab ld hl, PalPacket_9d16 call Function981a - jp Function9a7a + jp SGBDelayCycles ; 99b4 Function99b4: ; 99b4 @@ -1319,16 +1317,16 @@ DrawDefaultTiles: ; 0x9a64 ret ; 0x9a7a -Function9a7a: ; 9a7a - ld de, $1b58 -.asm_9a7d +SGBDelayCycles: ; 9a7a + ld de, 7000 +.wait nop nop nop dec de ld a, d or e - jr nz, .asm_9a7d + jr nz, .wait ret ; 9a86 diff --git a/engine/menu.asm b/engine/menu.asm index 285207daf..074b2a28c 100755 --- a/engine/menu.asm +++ b/engine/menu.asm @@ -583,8 +583,7 @@ Place2DMenuCursor: ; 24329 ret ; 24374 -_BackUpTiles:: ; 24374 -; Push the window +_PushWindow:: ; 24374 ld a, [rSVBK] push af ld a, $7 diff --git a/engine/party_menu.asm b/engine/party_menu.asm index 3e1111c57..7fc179b67 100644 --- a/engine/party_menu.asm +++ b/engine/party_menu.asm @@ -143,15 +143,14 @@ PlacePartyHPBar: ; 500cf ld d, $6 ld b, $0 call DrawBattleHPBar - ld hl, wcd9b + ld hl, wHPPals ld a, [wSGBPals] ld c, a ld b, $0 add hl, bc call SetHPPal - ld b, SCGB_FC + ld b, SCGB_PARTY_MENU_HP_PALS call GetSGBLayout - .skip ld hl, wSGBPals inc [hl] diff --git a/engine/stats_screen.asm b/engine/stats_screen.asm index 377401533..363667045 100755 --- a/engine/stats_screen.asm +++ b/engine/stats_screen.asm @@ -66,7 +66,7 @@ StatsScreenMain: ; 0x4dcd2 and $7f ld hl, StatsScreenPointerTable rst JumpTable - call Function4dd3a ; check for keys? + call StatsScreen_WaitAnim ; check for keys? ld a, [wJumptableIndex] bit 7, a jr z, .loop @@ -88,7 +88,7 @@ StatsScreenBattle: ; 4dcf7 and $7f ld hl, StatsScreenPointerTable rst JumpTable - call Function4dd3a + call StatsScreen_WaitAnim callba Function100dfd jr c, .exit ld a, [wJumptableIndex] @@ -100,44 +100,46 @@ StatsScreenBattle: ; 4dcf7 ; 4dd2a StatsScreenPointerTable: ; 4dd2a - dw MonStatsInit ; regular pokémon - dw EggStatsInit ; egg - dw StatsScreenWaitCry - dw Function4ddac - dw Function4ddc6 - dw StatsScreenWaitCry - dw Function4ddd6 - dw Function4dd6c + jumptable_start + jumptable MonStatsInit ; regular pokémon + jumptable EggStatsInit ; egg + jumptable StatsScreenWaitCry + jumptable EggStatsJoypad + jumptable StatsScreen_LoadPage + jumptable StatsScreenWaitCry + jumptable MonStatsJoypad + jumptable StatsScreen_Exit ; 4dd3a -Function4dd3a: ; 4dd3a (13:5d3a) +StatsScreen_WaitAnim: ; 4dd3a (13:5d3a) ld hl, wcf64 bit 6, [hl] - jr nz, .asm_4dd49 + jr nz, .try_anim bit 5, [hl] - jr nz, .asm_4dd56 + jr nz, .finish call DelayFrame ret -.asm_4dd49 + +.try_anim callba SetUpPokeAnim - jr nc, .asm_4dd56 + jr nc, .finish ld hl, wcf64 res 6, [hl] -.asm_4dd56 +.finish ld hl, wcf64 res 5, [hl] callba Function10402d ret -Function4dd62: ; 4dd62 (13:5d62) +StatsScreen_SetJumptableIndex: ; 4dd62 (13:5d62) ld a, [wJumptableIndex] and $80 or h ld [wJumptableIndex], a ret -Function4dd6c: ; 4dd6c (13:5d6c) +StatsScreen_Exit: ; 4dd6c (13:5d6c) ld hl, wJumptableIndex set 7, [hl] ret @@ -151,16 +153,17 @@ MonStatsInit: ; 4dd72 (13:5d72) call Function4ddf2 ld a, [CurPartySpecies] cp EGG - jr z, .asm_4dd9b - call Function4deea + jr z, .egg + call StatsScreen_InitUpperHalf ld hl, wcf64 set 4, [hl] - ld h, $4 - call Function4dd62 + ld h, StatsScreen_LoadPageTableIndex + call StatsScreen_SetJumptableIndex ret -.asm_4dd9b - ld h, $1 - call Function4dd62 + +.egg + ld h, EggStatsInitTableIndex + call StatsScreen_SetJumptableIndex ret EggStatsInit: ; 4dda1 @@ -172,24 +175,26 @@ EggStatsInit: ; 4dda1 ; 0x4ddac -Function4ddac: ; 4ddac (13:5dac) - call Function4de2c - jr nc, .asm_4ddb7 - ld h, $0 - call Function4dd62 - ret -.asm_4ddb7 - bit 0, a - jr nz, .asm_4ddc0 - and $c3 - jp Function4de54 -.asm_4ddc0 - ld h, $7 - call Function4dd62 +EggStatsJoypad: ; 4ddac (13:5dac) + call StatsScreen_GetJoypad + jr nc, .check + ld h, MonStatsInitTableIndex + call StatsScreen_SetJumptableIndex ret -Function4ddc6: ; 4ddc6 (13:5dc6) - call Function4dfb6 +.check + bit A_BUTTON_F, a + jr nz, .quit + and D_DOWN | D_UP | A_BUTTON | B_BUTTON + jp StatsScreen_JoypadAction + +.quit + ld h, StatsScreen_ExitTableIndex + call StatsScreen_SetJumptableIndex + ret + +StatsScreen_LoadPage: ; 4ddc6 (13:5dc6) + call StatsScreen_LoadGFX ld hl, wcf64 res 4, [hl] ld a, [wJumptableIndex] @@ -197,16 +202,16 @@ Function4ddc6: ; 4ddc6 (13:5dc6) ld [wJumptableIndex], a ret -Function4ddd6: ; 4ddd6 (13:5dd6) - call Function4de2c - jr nc, .asm_4dde1 - ld h, $0 - call Function4dd62 +MonStatsJoypad: ; 4ddd6 (13:5dd6) + call StatsScreen_GetJoypad + jr nc, .next + ld h, MonStatsInitTableIndex + call StatsScreen_SetJumptableIndex ret -.asm_4dde1 - and $f3 - jp Function4de54 +.next + and D_DOWN | D_UP | D_LEFT | D_RIGHT | A_BUTTON | B_BUTTON + jp StatsScreen_JoypadAction StatsScreenWaitCry: ; 4dde6 (13:5de6) call IsSFXPlaying @@ -241,7 +246,7 @@ Function4ddf2: ; 4ddf2 (13:5df2) and a ret -Function4de2c: ; 4de2c (13:5e2c) +StatsScreen_GetJoypad: ; 4de2c (13:5e2c) call GetJoypad ld a, [MonType] cp BREEDMON @@ -254,7 +259,7 @@ Function4de2c: ; 4de2c (13:5e2c) pop de pop hl ld a, [wMenuJoypad] - and $c0 + and D_DOWN | D_UP jr nz, .set_carry ld a, [wMenuJoypad] jr .clear_flags @@ -269,100 +274,102 @@ Function4de2c: ; 4de2c (13:5e2c) scf ret -Function4de54: ; 4de54 (13:5e54) +StatsScreen_JoypadAction: ; 4de54 (13:5e54) push af ld a, [wcf64] and $3 ld c, a pop af - bit 1, a - jp nz, Function4dee4 - bit 5, a - jr nz, .asm_4dec7 - bit 4, a - jr nz, .asm_4debd - bit 0, a - jr nz, .asm_4deb8 - bit 6, a - jr nz, .asm_4dea0 - bit 7, a - jr nz, .asm_4de77 - jr .asm_4dece -.asm_4de77 + bit B_BUTTON_F, a + jp nz, .b_button + bit D_LEFT_F, a + jr nz, .d_left + bit D_RIGHT_F, a + jr nz, .d_right + bit A_BUTTON_F, a + jr nz, .a_button + bit D_UP_F, a + jr nz, .d_up + bit D_DOWN_F, a + jr nz, .d_down + jr .done +.d_down ld a, [MonType] cp BOXMON - jr nc, .asm_4dece + jr nc, .done and a ld a, [PartyCount] - jr z, .asm_4de87 + jr z, .next_mon ld a, [OTPartyCount] -.asm_4de87 +.next_mon ld b, a ld a, [CurPartyMon] inc a cp b - jr z, .asm_4dece + jr z, .done ld [CurPartyMon], a ld b, a ld a, [MonType] and a - jr nz, .asm_4dede + jr nz, .load_mon ld a, b inc a ld [wd0d8], a - jr .asm_4dede -.asm_4dea0 + jr .load_mon +.d_up ld a, [CurPartyMon] and a - jr z, .asm_4dece + jr z, .done dec a ld [CurPartyMon], a ld b, a ld a, [MonType] and a - jr nz, .asm_4dede + jr nz, .load_mon ld a, b inc a ld [wd0d8], a - jr .asm_4dede -.asm_4deb8 + jr .load_mon +.a_button ld a, c cp $3 - jr z, Function4dee4 -.asm_4debd + jr z, .b_button +.d_right inc c ld a, $3 cp c - jr nc, .asm_4decf + jr nc, .set_page ld c, $1 - jr .asm_4decf -.asm_4dec7 + jr .set_page +.d_left dec c - jr nz, .asm_4decf + jr nz, .set_page ld c, $3 - jr .asm_4decf -.asm_4dece + jr .set_page +.done ret -.asm_4decf + +.set_page ld a, [wcf64] - and $fc + and %11111100 or c ld [wcf64], a - ld h, $4 - call Function4dd62 - ret -.asm_4dede - ld h, $0 - call Function4dd62 + ld h, StatsScreen_LoadPageTableIndex + call StatsScreen_SetJumptableIndex ret -Function4dee4: ; 4dee4 (13:5ee4) - ld h, $7 - call Function4dd62 +.load_mon + ld h, MonStatsInitTableIndex + call StatsScreen_SetJumptableIndex ret -Function4deea: ; 4deea (13:5eea) - call Function4df45 +.b_button: ; 4dee4 (13:5ee4) + ld h, StatsScreen_ExitTableIndex + call StatsScreen_SetJumptableIndex + ret + +StatsScreen_InitUpperHalf: ; 4deea (13:5eea) + call .PlaceHPBar xor a ld [hBGMapMode], a ld a, [CurBaseData] ; wd236 (aliases: BaseDexNo) @@ -379,13 +386,13 @@ Function4deea: ; 4deea (13:5eea) call PrintNum hlcoord 14, 0 call PrintLevel - ld hl, Unknown_4df77 - call Function4e528 - call Function4e505 + ld hl, .NicknamePointers + call GetNicknamePointer + call CopyNickname hlcoord 8, 2 call PlaceString hlcoord 18, 0 - call Function4df66 + call .PlaceGenderChar hlcoord 9, 4 ld a, "/" ld [hli], a @@ -393,12 +400,12 @@ Function4deea: ; 4deea (13:5eea) ld [wd265], a call GetPokemonName call PlaceString - call Function4df8f - call Function4df9b - call Function4dfa6 + call StatsScreen_PlaceHorizontalDivider + call StatsScreen_PlacePageSwitchArrows + call StatsScreen_PlaceShinyIcon ret -Function4df45: ; 4df45 (13:5f45) +.PlaceHPBar: ; 4df45 (13:5f45) ld hl, TempMonHP ld a, [hli] ld b, a @@ -410,12 +417,12 @@ Function4df45: ; 4df45 (13:5f45) callba ComputeHPBarPixels ld hl, wcda1 call SetHPPal - ld b, SCGB_03 + ld b, SCGB_STATS_SCREEN_HP_PALS call GetSGBLayout call DelayFrame ret -Function4df66: ; 4df66 (13:5f66) +.PlaceGenderChar: ; 4df66 (13:5f66) push hl callba GetGender pop hl @@ -428,11 +435,11 @@ Function4df66: ; 4df66 (13:5f66) ret ; 4df77 (13:5f77) -Unknown_4df77: ; 4df77 +.NicknamePointers: ; 4df77 dw PartyMonNicknames dw OTPartyMonNicknames dw sBoxMonNicknames - dw wd002 + dw wBufferMonNick ; 4df7f Function4df7f: ; 4df7f @@ -448,7 +455,7 @@ Function4df7f: ; 4df7f ret ; 4df8f -Function4df8f: ; 4df8f (13:5f8f) +StatsScreen_PlaceHorizontalDivider: ; 4df8f (13:5f8f) hlcoord 0, 7 ld b, SCREEN_WIDTH ld a, "_" @@ -458,14 +465,14 @@ Function4df8f: ; 4df8f (13:5f8f) jr nz, .loop ret -Function4df9b: ; 4df9b (13:5f9b) +StatsScreen_PlacePageSwitchArrows: ; 4df9b (13:5f9b) hlcoord 12, 6 ld [hl], "◀" hlcoord 19, 6 ld [hl], "▶" ret -Function4dfa6: ; 4dfa6 (13:5fa6) +StatsScreen_PlaceShinyIcon: ; 4dfa6 (13:5fa6) ld bc, TempMonDVs callba CheckShininess ret nc @@ -473,15 +480,15 @@ Function4dfa6: ; 4dfa6 (13:5fa6) ld [hl], "" ret -Function4dfb6: ; 4dfb6 (13:5fb6) +StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6) ld a, [BaseDexNo] ; wd236 (aliases: BaseDexNo) ld [wd265], a ld [CurSpecies], a xor a ld [hBGMapMode], a - call Function4dfda - call DrawStatsScreenPage - call Function4dfed + call .ClearBox + call .PageTilemap + call .LoadPals ld hl, wcf64 bit 4, [hl] jr nz, .place_frontpic @@ -492,7 +499,7 @@ Function4dfb6: ; 4dfb6 (13:5fb6) call StatsScreen_PlaceFrontpic ret -Function4dfda: ; 4dfda (13:5fda) +.ClearBox: ; 4dfda (13:5fda) ld a, [wcf64] and $3 ld c, a @@ -502,17 +509,17 @@ Function4dfda: ; 4dfda (13:5fda) call ClearBox ret -Function4dfed: ; 4dfed (13:5fed) +.LoadPals: ; 4dfed (13:5fed) ld a, [wcf64] and $3 ld c, a - callba Function8c8a + callba LoadStatsScreenPals call DelayFrame ld hl, wcf64 set 5, [hl] ret -DrawStatsScreenPage: ; 4e002 (13:6002) +.PageTilemap: ; 4e002 (13:6002) ld a, [wcf64] and $3 dec a @@ -755,8 +762,8 @@ endr ld de, TempMonID call PrintNum ld hl, .OTNamePointers - call Function4e528 - call Function4e505 + call GetNicknamePointer + call CopyNickname callba CheckNickErrors hlcoord 2, 13 call PlaceString @@ -964,9 +971,9 @@ EggStatsScreen: ; 4e33a ld [hBGMapMode], a ld hl, wcda1 call SetHPPal - ld b, SCGB_03 + ld b, SCGB_STATS_SCREEN_HP_PALS call GetSGBLayout - call Function4df8f + call StatsScreen_PlaceHorizontalDivider ld de, EggString hlcoord 8, 1 call PlaceString @@ -1101,7 +1108,7 @@ Function4e4cd: ; 4e4cd (13:64cd) pop bc ret -Function4e505: ; 4e505 (13:6505) +CopyNickname: ; 4e505 (13:6505) ld de, StringBuffer1 ld bc, PKMN_NAME_LENGTH jr .okay ; uuterly pointless @@ -1123,7 +1130,7 @@ Function4e505: ; 4e505 (13:6505) pop de ret -Function4e528: ; 4e528 (13:6528) +GetNicknamePointer: ; 4e528 (13:6528) ld a, [MonType] add a ld c, a @@ -1133,7 +1140,7 @@ Function4e528: ; 4e528 (13:6528) ld h, [hl] ld l, a ld a, [MonType] - cp $3 + cp BREEDMON ret z ld a, [CurPartyMon] jp SkipNames diff --git a/event/buena.asm b/event/buena.asm index 082347ddf..235f10686 100644 --- a/event/buena.asm +++ b/event/buena.asm @@ -10,7 +10,7 @@ SpecialBuenasPassword: ; 8af6b add c add $2 ld [wMenuBorderRightCoord], a - call BackUpTiles + call PushWindow call DoNthMenu ; menu callba Buena_ExitMenu ld b, $0 diff --git a/home/menu.asm b/home/menu.asm index a79986d18..10878c282 100644 --- a/home/menu.asm +++ b/home/menu.asm @@ -3,7 +3,7 @@ LoadMenuDataHeader:: call CopyMenuDataHeader - call BackUpTiles + call PushWindow ret CopyMenuDataHeader:: @@ -160,7 +160,7 @@ _YesNoBox:: ; 1dd9 ld [wMenuBorderTopCoord], a add 4 ld [wMenuBorderBottomCoord], a - call BackUpTiles + call PushWindow InterpretTwoOptionMenu:: ; 1dfe call VerticalMenu @@ -200,7 +200,7 @@ YesNoMenuDataHeader:: ; 1e1d OffsetMenuDataHeader:: ; 1e2e call _OffsetMenuDataHeader - call BackUpTiles + call PushWindow ret ; 1e35 diff --git a/home/tilemap.asm b/home/tilemap.asm index a27c74cde..60e16bc95 100644 --- a/home/tilemap.asm +++ b/home/tilemap.asm @@ -1,5 +1,5 @@ -BackUpTiles:: ; 1c00 - callab _BackUpTiles +PushWindow:: ; 1c00 + callab _PushWindow ret ; 1c07 diff --git a/main.asm b/main.asm index 6b1fabd63..8432ae16d 100644 --- a/main.asm +++ b/main.asm @@ -9836,7 +9836,7 @@ AskRememberPassword: ; 4ae12 ld [wMenuBorderTopCoord], a add $4 ld [wMenuBorderBottomCoord], a - call BackUpTiles + call PushWindow call VerticalMenu push af ld c, 15 diff --git a/misc/gfx_41.asm b/misc/gfx_41.asm index a07e3c429..7efdf41b8 100755 --- a/misc/gfx_41.asm +++ b/misc/gfx_41.asm @@ -1,9 +1,8 @@ Function104000:: ; 104000 - ld hl, Function104006 + ld hl, .Function jp CallInSafeGFXMode -; 104006 -Function104006: ; 104006 +.Function decoord 0, 0, AttrMap ld hl, wBackupAttrMap call CutAndPasteAttrMap @@ -22,11 +21,10 @@ Function104006: ; 104006 ; 10402d Function10402d:: ; 10402d - ld hl, Function104033 + ld hl, .Function jp CallInSafeGFXMode -; 104033 -Function104033: ; 104033 +.Function decoord 0, 0 ld hl, wDecompressScratch call CutAndPasteTilemap @@ -38,11 +36,10 @@ Function104033: ; 104033 ; 104047 Function104047: ; 104047 - ld hl, Function10404d + ld hl, .Function jp CallInSafeGFXMode -; 10404d -Function10404d: ; 10404d +.Function decoord 0, 0, AttrMap ld hl, wBackupAttrMap call CutAndPasteAttrMap @@ -54,11 +51,10 @@ Function10404d: ; 10404d ; 104061 ReloadMapPart:: ; 104061 - ld hl, Function104067 + ld hl, .Function jp CallInSafeGFXMode -; 104067 -Function104067: ; 104067 +.Function decoord 0, 0, AttrMap ld hl, wBackupAttrMap call CutAndPasteAttrMap @@ -84,11 +80,10 @@ Function104067: ; 104067 Function104099: ; 104099 ld hl, ReloadMapPart ; useless - ld hl, Function1040a2 + ld hl, .Function jp CallInSafeGFXMode -; 1040a2 -Function1040a2: ; 1040a2 +.Function decoord 0, 0, AttrMap ld hl, wBackupAttrMap call CutAndPasteAttrMap @@ -114,11 +109,10 @@ Function1040a2: ; 1040a2 ; 1040d4 Function1040d4: ; 1040d4 - ld hl, Function1040da + ld hl, .Function jp CallInSafeGFXMode -; 1040da -Function1040da: ; 1040da +.Function ld a, $1 ld [rVBK], a ld a, $3 @@ -134,16 +128,15 @@ Function1040da: ; 1040da ld [rHDMA4], a ld a, $23 ld [hDMATransfer], a - call Function1041a4 + call WaitDMATransfer ret ; 1040fb Function1040fb: ; 1040fb - ld hl, Function104101 + ld hl, .Function jp CallInSafeGFXMode -; 104101 -Function104101: ; 104101 +.Function ld a, $1 ld [rVBK], a ld a, $3 @@ -155,11 +148,10 @@ Function104101: ; 104101 Function104110:: ; 104110 ; OpenText - ld hl, Function104116 + ld hl, .Function jp CallInSafeGFXMode -; 104116 -Function104116: ; 104116 +.Function decoord 0, 0, AttrMap ld hl, wBackupAttrMap call CutAndPasteAttrMap @@ -186,11 +178,10 @@ Function104116: ; 104116 ; 104148 Function104148: ; 104148 (41:4148) - ld hl, Function10414e + ld hl, .Function jp CallInSafeGFXMode -; 10414e (41:414e) -Function10414e: ; 10414e +.Function decoord 0, 0, AttrMap ld hl, wBackupAttrMap call CutAndPasteAttrMap @@ -247,12 +238,12 @@ Function10419d: ; 10419d (41:419d) ld a, $23 ld [hDMATransfer], a -Function1041a4: ; 104a14 -.asm_1041a4 +WaitDMATransfer: ; 104a14 +.loop call DelayFrame ld a, [hDMATransfer] and a - jr nz, .asm_1041a4 + jr nz, .loop ret Function1041ad: ; 1041ad (41:41ad) diff --git a/misc/mobile_22.asm b/misc/mobile_22.asm index 5bc9389f3..70b4e04e4 100644 --- a/misc/mobile_22.asm +++ b/misc/mobile_22.asm @@ -248,7 +248,7 @@ Function89261: ; 89261 ld [hl], a pop af ld [wMenuCursorBuffer], a - call BackUpTiles + call PushWindow call Function8923c call Function89209 call VerticalMenu diff --git a/misc/mobile_46.asm b/misc/mobile_46.asm index c1e7d9004..43810dc89 100755 --- a/misc/mobile_46.asm +++ b/misc/mobile_46.asm @@ -4563,7 +4563,7 @@ Function11a00e: ; 11a00e ld [wMenuBorderRightCoord], a ld a, $5 ld [wMenuBorderBottomCoord], a - call BackUpTiles + call PushWindow callba Function11765d callba Function117ab4 callba MobileFunc_106462 @@ -4586,7 +4586,7 @@ Function11a0ca: ; 11a0ca ld [wMenuBorderRightCoord], a ld a, $11 ld [wMenuBorderBottomCoord], a - call BackUpTiles + call PushWindow callba Function11765d callba Function17d3f6 callba MobileFunc_106462 @@ -5270,7 +5270,7 @@ Function11a5b9: ; 11a5b9 ld [wMenuBorderRightCoord], a ld a, $5 ld [wMenuBorderBottomCoord], a - call BackUpTiles + call PushWindow hlcoord 0, 0, AttrMap ld b, $6 ld c, $14 @@ -5296,7 +5296,7 @@ Function11a5f5: ; 11a5f5 ld [wMenuBorderTopCoord], a ld a, $a ld [wMenuBorderBottomCoord], a - call BackUpTiles + call PushWindow hlcoord 14, 6, AttrMap ld b, $5 ld c, $6 diff --git a/misc/printer_77.asm b/misc/printer_77.asm index b176e9be9..32f5c734f 100755 --- a/misc/printer_77.asm +++ b/misc/printer_77.asm @@ -226,7 +226,7 @@ Function1dc381: ; 1dc381 hlcoord 0, 0 call _PrepMonFrontpic call WaitBGMap - ld b, SCGB_03 + ld b, SCGB_STATS_SCREEN_HP_PALS call GetSGBLayout call SetPalettes ret @@ -278,7 +278,7 @@ Function1dc47b: ; 1dc47b ld de, TempMonSpeed call .PrintTempMonStats call WaitBGMap - ld b, SCGB_03 + ld b, SCGB_STATS_SCREEN_HP_PALS call GetSGBLayout call SetPalettes ret diff --git a/predef/cgb.asm b/predef/cgb.asm index c235816c0..ab96ba8d3 100644 --- a/predef/cgb.asm +++ b/predef/cgb.asm @@ -12,8 +12,8 @@ Predef_LoadSGBLayoutCGB: ; 8d59 jr nz, .not_ram ld a, [SGBPredef] .not_ram - cp SCGB_FC - jp z, Function96f3 + cp SCGB_PARTY_MENU_HP_PALS + jp z, CGB_ApplyPartyMenuHPPals call Function9673 ld l, a ld h, 0 @@ -277,7 +277,7 @@ Palette8f52: ; 8f52 RGB 00, 00, 00 ; 8f6a -Unknown_8f6a: ; 8f6a +StatsScreenPals: ; 8f6a RGB 31, 19, 31 RGB 21, 31, 14 diff --git a/predef/sgb.asm b/predef/sgb.asm index aad463052..2de9c9359 100644 --- a/predef/sgb.asm +++ b/predef/sgb.asm @@ -8,8 +8,8 @@ Predef_LoadSGBLayout: ; 864c jr nz, .not_ram ld a, [SGBPredef] .not_ram - cp SCGB_FC - jp z, Function8ade + cp SCGB_PARTY_MENU_HP_PALS + jp z, SGB_ApplyPartyMenuHPPals ld l, a ld h, 0 add hl, hl @@ -390,7 +390,7 @@ endr pop bc ld a, c and a - jr z, .asm_88ef + jr z, .partymon ld hl, wSGBPals + 3 ld [hl], $e7 inc hl @@ -399,11 +399,11 @@ endr ld [hl], $62 inc hl ld [hl], $c - jr .asm_8913 + jr .done -.asm_88ef +.partymon ld hl, PartyMon1DVs - ld bc, $30 + ld bc, PARTYMON_STRUCT_LENGTH ld a, [CurPartyMon] call AddNTimes ld c, l @@ -419,7 +419,7 @@ endr ld a, [hl] ld [wSGBPals + 6], a -.asm_8913 +.done ld hl, wSGBPals ld de, BlkPacket_9a86 ret diff --git a/wram.asm b/wram.asm index 290f0a09b..9c18364bd 100644 --- a/wram.asm +++ b/wram.asm @@ -1487,7 +1487,7 @@ PlayerHPPal:: ; cd99 EnemyHPPal:: ; cd9a ds 1 -wcd9b:: ds 6 +wHPPals:: ds PARTY_LENGTH wcda1:: ds 8 wSGBPals:: ds 48 ; cda9 @@ -1660,7 +1660,9 @@ GameTimerPause:: ; cfbc ds 1 -wcfbe:: ds 2 +wcfbe:: +; SGB flags? + ds 2 InBattleTowerBattle:: ; cfc0 ; 0 not in BattleTower-Battle