diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2019-10-24 10:22:39 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2019-10-24 10:22:39 -0400 |
commit | 779d6187c613ce4491533bf0c24e9f60ddf697b4 (patch) | |
tree | e127f75d964baf78032f4adf18e6774d7d14d692 /asm | |
parent | db3be6ef2e9482edae2446cd71d03d7c6ae143f7 (diff) |
field_specials through sub_80CC534
Diffstat (limited to 'asm')
-rw-r--r-- | asm/field_specials.s | 731 | ||||
-rw-r--r-- | asm/pokemon_summary_screen.s | 2 |
2 files changed, 2 insertions, 731 deletions
diff --git a/asm/field_specials.s b/asm/field_specials.s index e76602b01..df5af36d3 100644 --- a/asm/field_specials.s +++ b/asm/field_specials.s @@ -5,735 +5,6 @@ .text - thumb_func_start ChangeBoxPokemonNickname -ChangeBoxPokemonNickname: @ 80CBFE0 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x8 - ldr r0, _080CC050 @ =gSpecialVar_MonBoxId - ldrb r0, [r0] - ldr r1, _080CC054 @ =gSpecialVar_MonBoxPos - ldrb r1, [r1] - bl GetBoxedMonPtr - adds r6, r0, 0 - ldr r2, _080CC058 @ =gStringVar3 - movs r1, 0x2 - bl GetBoxMonData - ldr r0, _080CC05C @ =gStringVar2 - mov r8, r0 - adds r0, r6, 0 - movs r1, 0x2 - mov r2, r8 - bl GetBoxMonData - adds r0, r6, 0 - movs r1, 0xB - movs r2, 0 - bl GetBoxMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r6, 0 - bl GetBoxMonGender - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - movs r1, 0 - movs r2, 0 - bl GetBoxMonData - str r0, [sp] - ldr r0, _080CC060 @ =ChangeBoxPokemonNickname_CB - str r0, [sp, 0x4] - movs r0, 0x3 - mov r1, r8 - adds r2, r5, 0 - adds r3, r4, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080CC050: .4byte gSpecialVar_MonBoxId -_080CC054: .4byte gSpecialVar_MonBoxPos -_080CC058: .4byte gStringVar3 -_080CC05C: .4byte gStringVar2 -_080CC060: .4byte ChangeBoxPokemonNickname_CB - thumb_func_end ChangeBoxPokemonNickname - - thumb_func_start ChangeBoxPokemonNickname_CB -ChangeBoxPokemonNickname_CB: @ 80CC064 - push {lr} - ldr r0, _080CC07C @ =gSpecialVar_MonBoxId - ldrb r0, [r0] - ldr r1, _080CC080 @ =gSpecialVar_MonBoxPos - ldrb r1, [r1] - ldr r2, _080CC084 @ =gStringVar2 - bl SetBoxMonNickFromAnyBox - bl CB2_ReturnToFieldContinueScriptPlayMapMusic - pop {r0} - bx r0 - .align 2, 0 -_080CC07C: .4byte gSpecialVar_MonBoxId -_080CC080: .4byte gSpecialVar_MonBoxPos -_080CC084: .4byte gStringVar2 - thumb_func_end ChangeBoxPokemonNickname_CB - - thumb_func_start ChangePokemonNickname -ChangePokemonNickname: @ 80CC088 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - ldr r0, _080CC130 @ =gSpecialVar_0x8004 - mov r9, r0 - ldrh r0, [r0] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r6, _080CC134 @ =gPlayerParty - adds r0, r6 - ldr r2, _080CC138 @ =gStringVar3 - movs r1, 0x2 - bl GetMonData - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - ldr r1, _080CC13C @ =gStringVar2 - mov r10, r1 - movs r1, 0x2 - mov r2, r10 - bl GetMonData - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - bl GetMonGender - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0 - movs r2, 0 - bl GetMonData - str r0, [sp] - ldr r0, _080CC140 @ =ChangePokemonNickname_CB - str r0, [sp, 0x4] - movs r0, 0x3 - mov r1, r10 - adds r2, r5, 0 - adds r3, r4, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080CC130: .4byte gSpecialVar_0x8004 -_080CC134: .4byte gPlayerParty -_080CC138: .4byte gStringVar3 -_080CC13C: .4byte gStringVar2 -_080CC140: .4byte ChangePokemonNickname_CB - thumb_func_end ChangePokemonNickname - - thumb_func_start ChangePokemonNickname_CB -ChangePokemonNickname_CB: @ 80CC144 - push {lr} - ldr r0, _080CC164 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080CC168 @ =gPlayerParty - adds r0, r1 - ldr r2, _080CC16C @ =gStringVar2 - movs r1, 0x2 - bl SetMonData - bl CB2_ReturnToFieldContinueScriptPlayMapMusic - pop {r0} - bx r0 - .align 2, 0 -_080CC164: .4byte gSpecialVar_0x8004 -_080CC168: .4byte gPlayerParty -_080CC16C: .4byte gStringVar2 - thumb_func_end ChangePokemonNickname_CB - - thumb_func_start TV_CopyNicknameToStringVar1AndEnsureTerminated -TV_CopyNicknameToStringVar1AndEnsureTerminated: @ 80CC170 - push {r4,lr} - ldr r0, _080CC194 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080CC198 @ =gPlayerParty - adds r0, r1 - ldr r4, _080CC19C @ =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080CC194: .4byte gSpecialVar_0x8004 -_080CC198: .4byte gPlayerParty -_080CC19C: .4byte gStringVar1 - thumb_func_end TV_CopyNicknameToStringVar1AndEnsureTerminated - - thumb_func_start TV_CheckMonOTIDEqualsPlayerID -TV_CheckMonOTIDEqualsPlayerID: @ 80CC1A0 - push {r4,lr} - bl sub_80CC1E4 - adds r4, r0, 0 - ldr r0, _080CC1C8 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080CC1CC @ =gPlayerParty - adds r0, r1 - movs r1, 0x1 - movs r2, 0 - bl GetMonData - cmp r4, r0 - bne _080CC1D4 - ldr r1, _080CC1D0 @ =gSpecialVar_Result - movs r0, 0 - b _080CC1D8 - .align 2, 0 -_080CC1C8: .4byte gSpecialVar_0x8004 -_080CC1CC: .4byte gPlayerParty -_080CC1D0: .4byte gSpecialVar_Result -_080CC1D4: - ldr r1, _080CC1E0 @ =gSpecialVar_Result - movs r0, 0x1 -_080CC1D8: - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080CC1E0: .4byte gSpecialVar_Result - thumb_func_end TV_CheckMonOTIDEqualsPlayerID - - thumb_func_start sub_80CC1E4 -sub_80CC1E4: @ 80CC1E4 - ldr r0, _080CC200 @ =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r0, [r2, 0xD] - lsls r0, 24 - ldrb r1, [r2, 0xC] - lsls r1, 16 - orrs r0, r1 - ldrb r1, [r2, 0xB] - lsls r1, 8 - orrs r0, r1 - ldrb r1, [r2, 0xA] - orrs r0, r1 - bx lr - .align 2, 0 -_080CC200: .4byte gSaveBlock2Ptr - thumb_func_end sub_80CC1E4 - - thumb_func_start GetUnlockedSeviiAreas -GetUnlockedSeviiAreas: @ 80CC204 - push {r4,lr} - movs r4, 0 - ldr r0, _080CC2A4 @ =0x0000089b - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC218 - movs r4, 0x1 -_080CC218: - ldr r0, _080CC2A8 @ =0x0000089c - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC22A - movs r0, 0x2 - orrs r4, r0 -_080CC22A: - ldr r0, _080CC2AC @ =0x0000089d - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC240 - movs r0, 0x4 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080CC240: - ldr r0, _080CC2B0 @ =0x0000089e - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC256 - movs r0, 0x8 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080CC256: - ldr r0, _080CC2B4 @ =0x0000089f - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC26C - movs r0, 0x10 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080CC26C: - ldr r0, _080CC2B8 @ =0x000008a1 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC282 - movs r0, 0x20 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080CC282: - movs r0, 0x8A - lsls r0, 4 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080CC29A - movs r0, 0x40 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080CC29A: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080CC2A4: .4byte 0x0000089b -_080CC2A8: .4byte 0x0000089c -_080CC2AC: .4byte 0x0000089d -_080CC2B0: .4byte 0x0000089e -_080CC2B4: .4byte 0x0000089f -_080CC2B8: .4byte 0x000008a1 - thumb_func_end GetUnlockedSeviiAreas - - thumb_func_start sub_80CC2BC -sub_80CC2BC: @ 80CC2BC - push {r4-r7,lr} - sub sp, 0x24 - movs r5, 0 - add r7, sp, 0xC - movs r1, 0 -_080CC2C6: - lsls r0, r5, 1 - add r0, sp - strh r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _080CC2C6 - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - cmp r5, r6 - bcs _080CC318 -_080CC2E4: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, _080CC3BC @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - lsls r1, r5, 1 - add r1, sp - strh r0, [r1] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl GetMonData - lsls r1, r5, 2 - adds r1, r7, r1 - str r0, [r1] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, r6 - bcc _080CC2E4 -_080CC318: - ldr r4, _080CC3C0 @ =0x00004043 - mov r0, sp - ldrh r0, [r0] - ldr r1, [sp, 0xC] - bl SpeciesToMailSpecies - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - adds r4, 0x1 - mov r0, sp - ldrh r0, [r0, 0x2] - ldr r1, [r7, 0x4] - bl SpeciesToMailSpecies - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - adds r4, 0x1 - mov r0, sp - ldrh r0, [r0, 0x4] - ldr r1, [r7, 0x8] - bl SpeciesToMailSpecies - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - adds r4, 0x1 - mov r0, sp - ldrh r0, [r0, 0x6] - ldr r1, [r7, 0xC] - bl SpeciesToMailSpecies - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - adds r4, 0x1 - mov r0, sp - ldrh r0, [r0, 0x8] - ldr r1, [r7, 0x10] - bl SpeciesToMailSpecies - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - adds r4, 0x1 - mov r0, sp - ldrh r0, [r0, 0xA] - ldr r1, [r7, 0x14] - bl SpeciesToMailSpecies - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - ldr r0, _080CC3C4 @ =0x00004042 - ldr r1, _080CC3C8 @ =gSpecialVar_0x8004 - ldrh r1, [r1] - bl VarSet - add sp, 0x24 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080CC3BC: .4byte gPlayerParty -_080CC3C0: .4byte 0x00004043 -_080CC3C4: .4byte 0x00004042 -_080CC3C8: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80CC2BC - - thumb_func_start sub_80CC3CC -sub_80CC3CC: @ 80CC3CC - push {r4-r6,lr} - movs r5, 0 - ldr r4, _080CC3F8 @ =gSpecialVar_0x8004 - movs r0, 0xA - bl GetGameStat - strh r0, [r4] - movs r0, 0xD - bl GetGameStat - adds r6, r0, 0 - ldr r4, _080CC3FC @ =gSpecialVar_0x8006 - movs r0, 0x17 - bl GetGameStat - strh r0, [r4] - ldr r1, _080CC400 @ =0x0000ffff - cmp r6, r1 - bls _080CC408 - ldr r0, _080CC404 @ =gSpecialVar_0x8005 - strh r1, [r0] - b _080CC40C - .align 2, 0 -_080CC3F8: .4byte gSpecialVar_0x8004 -_080CC3FC: .4byte gSpecialVar_0x8006 -_080CC400: .4byte 0x0000ffff -_080CC404: .4byte gSpecialVar_0x8005 -_080CC408: - ldr r0, _080CC440 @ =gSpecialVar_0x8005 - strh r6, [r0] -_080CC40C: - adds r1, r0, 0 - ldr r0, _080CC444 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0 - beq _080CC41A - movs r0, 0x1 - orrs r5, r0 -_080CC41A: - ldrh r0, [r1] - cmp r0, 0 - beq _080CC428 - movs r0, 0x2 - orrs r5, r0 - lsls r0, r5, 16 - lsrs r5, r0, 16 -_080CC428: - ldr r0, _080CC448 @ =gSpecialVar_0x8006 - ldrh r0, [r0] - cmp r0, 0 - beq _080CC438 - movs r0, 0x4 - orrs r5, r0 - lsls r0, r5, 16 - lsrs r5, r0, 16 -_080CC438: - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080CC440: .4byte gSpecialVar_0x8005 -_080CC444: .4byte gSpecialVar_0x8004 -_080CC448: .4byte gSpecialVar_0x8006 - thumb_func_end sub_80CC3CC - - thumb_func_start GetHiddenItemAttr -GetHiddenItemAttr: @ 80CC44C - push {lr} - lsls r1, 24 - lsrs r1, 24 - adds r2, r1, 0 - cmp r1, 0 - bne _080CC45E - lsls r0, 16 - lsrs r0, 16 - b _080CC486 -_080CC45E: - cmp r1, 0x1 - bne _080CC470 - lsrs r0, 16 - movs r1, 0xFF - ands r0, r1 - movs r1, 0xFA - lsls r1, 2 - adds r0, r1 - b _080CC486 -_080CC470: - cmp r1, 0x2 - bne _080CC47C - lsrs r0, 24 - movs r1, 0x7F - ands r0, r1 - b _080CC486 -_080CC47C: - cmp r2, 0x3 - beq _080CC484 - movs r0, 0x1 - b _080CC486 -_080CC484: - lsrs r0, 31 -_080CC486: - pop {r1} - bx r1 - thumb_func_end GetHiddenItemAttr - - thumb_func_start Special_PlayerPartyContainsSpecies -Special_PlayerPartyContainsSpecies: @ 80CC48C - push {r4,r5,lr} - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - cmp r4, r5 - bcs _080CC4CA -_080CC49C: - movs r0, 0x64 - muls r0, r4 - ldr r1, _080CC4B8 @ =gPlayerParty - adds r0, r1 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - ldr r1, _080CC4BC @ =gSpecialVar_0x8004 - ldrh r1, [r1] - cmp r0, r1 - bne _080CC4C0 - movs r0, 0x1 - b _080CC4CC - .align 2, 0 -_080CC4B8: .4byte gPlayerParty -_080CC4BC: .4byte gSpecialVar_0x8004 -_080CC4C0: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r5 - bcc _080CC49C -_080CC4CA: - movs r0, 0 -_080CC4CC: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end Special_PlayerPartyContainsSpecies - - thumb_func_start sub_80CC4D4 -sub_80CC4D4: @ 80CC4D4 - push {r4-r7,lr} - movs r3, 0 - ldr r0, _080CC508 @ =gSaveBlock1Ptr - ldr r4, [r0] - movs r6, 0x4 - ldrsb r6, [r4, r6] - ldr r5, _080CC50C @ =gUnknown_83F5D32 - adds r0, r5, 0x2 - mov r12, r0 - adds r7, r5, 0x1 -_080CC4E8: - lsls r0, r3, 1 - adds r2, r0, r3 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r6, r0 - bne _080CC510 - movs r1, 0x5 - ldrsb r1, [r4, r1] - adds r0, r2, r7 - ldrb r0, [r0] - cmp r1, r0 - bne _080CC510 - mov r1, r12 - adds r0, r2, r1 - ldrb r0, [r0] - b _080CC51C - .align 2, 0 -_080CC508: .4byte gSaveBlock1Ptr -_080CC50C: .4byte gUnknown_83F5D32 -_080CC510: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xB - bls _080CC4E8 - movs r0, 0x1 -_080CC51C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80CC4D4 - - thumb_func_start sub_80CC524 -sub_80CC524: @ 80CC524 - push {lr} - movs r0, 0xB - movs r1, 0 - bl sub_8113550 - pop {r0} - bx r0 - thumb_func_end sub_80CC524 - - thumb_func_start sub_80CC534 -sub_80CC534: @ 80CC534 - push {r4-r6,lr} - movs r4, 0 - ldr r6, _080CC57C @ =gSaveBlock1Ptr - ldr r5, _080CC580 @ =gUnknown_83F5D58 -_080CC53C: - ldr r3, [r6] - movs r1, 0x4 - ldrsb r1, [r3, r1] - lsls r0, r4, 3 - adds r2, r0, r5 - ldrh r0, [r2] - cmp r1, r0 - bne _080CC58C - movs r0, 0x5 - ldrsb r0, [r3, r0] - ldrh r2, [r2, 0x2] - cmp r0, r2 - bne _080CC58C - ldr r5, _080CC584 @ =0x0000404d - adds r0, r5, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x23 - bne _080CC56A - cmp r4, 0x20 - beq _080CC596 -_080CC56A: - adds r0, r5, 0 - adds r1, r4, 0 - bl VarSet - ldr r0, _080CC588 @ =0x00000808 - bl FlagSet - b _080CC596 - .align 2, 0 -_080CC57C: .4byte gSaveBlock1Ptr -_080CC580: .4byte gUnknown_83F5D58 -_080CC584: .4byte 0x0000404d -_080CC588: .4byte 0x00000808 -_080CC58C: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x32 - bls _080CC53C -_080CC596: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80CC534 - thumb_func_start sub_80CC59C sub_80CC59C: @ 80CC59C push {r4-r7,lr} @@ -2192,7 +1463,7 @@ _080CD104: ldrh r1, [r1] cmp r0, r1 bne _080CD140 - bl sub_80CC1E4 + bl GetPlayerTrainerId adds r4, r0, 0 adds r0, r5, 0 movs r1, 0x1 diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index dcf8f6bfe..d9ef35bd4 100644 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -7652,7 +7652,7 @@ _081384C4: .4byte gEnemyParty _081384C8: .4byte gLinkPlayers _081384CC: .4byte 0x0000304c _081384D0: - bl sub_80CC1E4 + bl GetPlayerTrainerId adds r4, r0, 0 ldr r0, _0813851C @ =0x0000ffff ands r4, r0 |