thru sub_8011B94

This commit is contained in:
jiangzhengwenjz
2019-10-16 13:38:21 +08:00
parent a6c0088073
commit f03807931f
17 changed files with 1236 additions and 3707 deletions
+8 -8
View File
@@ -217,8 +217,8 @@ sub_800F34C: @ 800F34C
_0800F37C: .4byte 0x0000b040 _0800F37C: .4byte 0x0000b040
thumb_func_end sub_800F34C thumb_func_end sub_800F34C
thumb_func_start sub_800F380 thumb_func_start LoadBattleMenuWindowGfx
sub_800F380: @ 800F380 LoadBattleMenuWindowGfx: @ 800F380
push {r4,r5,lr} push {r4,r5,lr}
movs r0, 0x2 movs r0, 0x2
movs r1, 0x12 movs r1, 0x12
@@ -278,7 +278,7 @@ _0800F3FC: .4byte 0x0000675a
_0800F400: .4byte gPlttBufferFaded + 0xB8 _0800F400: .4byte gPlttBufferFaded + 0xB8
_0800F404: .4byte gBattleTypeFlags _0800F404: .4byte gBattleTypeFlags
_0800F408: .4byte 0x00010010 _0800F408: .4byte 0x00010010
thumb_func_end sub_800F380 thumb_func_end LoadBattleMenuWindowGfx
thumb_func_start sub_800F40C thumb_func_start sub_800F40C
sub_800F40C: @ 800F40C sub_800F40C: @ 800F40C
@@ -309,7 +309,7 @@ LoadBattleTextboxAndBackground: @ 800F420
movs r1, 0 movs r1, 0
movs r2, 0x40 movs r2, 0x40
bl LoadCompressedPalette bl LoadCompressedPalette
bl sub_800F380 bl LoadBattleMenuWindowGfx
bl sub_800F40C bl sub_800F40C
pop {r0} pop {r0}
bx r0 bx r0
@@ -1143,8 +1143,8 @@ _0800FAD8: .4byte 0x000003ff
_0800FADC: .4byte 0xfffffc00 _0800FADC: .4byte 0xfffffc00
thumb_func_end sub_800F6FC thumb_func_end sub_800F6FC
thumb_func_start sub_800FAE0 thumb_func_start DrawBattleEntryBackground
sub_800FAE0: @ 800FAE0 DrawBattleEntryBackground: @ 800FAE0
push {r4,lr} push {r4,lr}
ldr r0, _0800FB64 @ =gBattleTypeFlags ldr r0, _0800FB64 @ =gBattleTypeFlags
ldr r1, [r0] ldr r1, [r0]
@@ -1287,7 +1287,7 @@ _0800FC26:
pop {r4} pop {r4}
pop {r0} pop {r0}
bx r0 bx r0
thumb_func_end sub_800FAE0 thumb_func_end DrawBattleEntryBackground
thumb_func_start sub_800FC2C thumb_func_start sub_800FC2C
sub_800FC2C: @ 800FC2C sub_800FC2C: @ 800FC2C
@@ -1459,7 +1459,7 @@ _0800FD68:
.align 2, 0 .align 2, 0
_0800FD88: .4byte gUnknown_824EE34 _0800FD88: .4byte gUnknown_824EE34
_0800FD8C: _0800FD8C:
bl sub_800F380 bl LoadBattleMenuWindowGfx
b _0800FD94 b _0800FD94
_0800FD92: _0800FD92:
movs r4, 0x1 movs r4, 0x1
-3671
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -743,8 +743,8 @@ _0807FC54: .4byte gSpecialVar_Result
_0807FC58: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic _0807FC58: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
thumb_func_end sub_807FBF0 thumb_func_end sub_807FBF0
thumb_func_start sub_807FC5C thumb_func_start BattleSetup_GetTerrainId
sub_807FC5C: @ 807FC5C BattleSetup_GetTerrainId: @ 807FC5C
push {r4,r5,lr} push {r4,r5,lr}
sub sp, 0x4 sub sp, 0x4
mov r4, sp mov r4, sp
@@ -891,7 +891,7 @@ _0807FD88:
pop {r4,r5} pop {r4,r5}
pop {r1} pop {r1}
bx r1 bx r1
thumb_func_end sub_807FC5C thumb_func_end BattleSetup_GetTerrainId
thumb_func_start GetBattleTransitionTypeByMap thumb_func_start GetBattleTransitionTypeByMap
GetBattleTransitionTypeByMap: @ 807FD90 GetBattleTransitionTypeByMap: @ 807FD90
+3 -3
View File
@@ -4012,8 +4012,8 @@ GetRfuPlayerCount: @ 80FA4EC
_080FA4F4: .4byte gUnknown_3005450 _080FA4F4: .4byte gUnknown_3005450
thumb_func_end GetRfuPlayerCount thumb_func_end GetRfuPlayerCount
thumb_func_start IsRfuTaskFinished thumb_func_start IsLinkRfuTaskFinished
IsRfuTaskFinished: @ 80FA4F8 IsLinkRfuTaskFinished: @ 80FA4F8
push {lr} push {lr}
movs r1, 0 movs r1, 0
ldr r0, _080FA50C @ =gUnknown_3005450 ldr r0, _080FA50C @ =gUnknown_3005450
@@ -4027,7 +4027,7 @@ _080FA506:
bx r1 bx r1
.align 2, 0 .align 2, 0
_080FA50C: .4byte gUnknown_3005450 _080FA50C: .4byte gUnknown_3005450
thumb_func_end IsRfuTaskFinished thumb_func_end IsLinkRfuTaskFinished
thumb_func_start sub_80FA510 thumb_func_start sub_80FA510
sub_80FA510: @ 80FA510 sub_80FA510: @ 80FA510
+3 -3
View File
@@ -422,7 +422,7 @@ _0804C9B0:
ldrb r0, [r0] ldrb r0, [r0]
cmp r0, 0 cmp r0, 0
beq _0804C9E8 beq _0804C9E8
bl IsRfuTaskFinished bl IsLinkRfuTaskFinished
lsls r0, 24 lsls r0, 24
cmp r0, 0 cmp r0, 0
bne _0804C9C4 bne _0804C9C4
@@ -1832,7 +1832,7 @@ sub_804D5A4: @ 804D5A4
ldrb r0, [r0] ldrb r0, [r0]
cmp r0, 0 cmp r0, 0
beq _0804D5FC beq _0804D5FC
bl IsRfuTaskFinished bl IsLinkRfuTaskFinished
lsls r0, 24 lsls r0, 24
cmp r0, 0 cmp r0, 0
beq _0804D620 beq _0804D620
@@ -14745,7 +14745,7 @@ _0805434C:
ldr r0, _08054378 @ =sub_804C718 ldr r0, _08054378 @ =sub_804C718
cmp r1, r0 cmp r1, r0
bne _08054384 bne _08054384
bl IsRfuTaskFinished bl IsLinkRfuTaskFinished
lsls r0, 24 lsls r0, 24
cmp r0, 0 cmp r0, 0
beq _08054396 beq _08054396
+11 -8
View File
@@ -528,14 +528,10 @@ struct BattleStruct
u16 hpOnSwitchout[2]; u16 hpOnSwitchout[2];
u8 abilityPreventingSwitchout; u8 abilityPreventingSwitchout;
u8 hpScale; u8 hpScale;
u8 field_AE; u16 savedBattleTypeFlags; // ???
u8 field_AF; void (*savedCallback)(void);
u8 field_B0;
u8 field_B1;
u8 field_B2;
u8 field_B3;
u8 synchronizeMoveEffect; u8 synchronizeMoveEffect;
u8 field_B5; u8 multiplayerId;
u8 field_B6; u8 field_B6;
u8 atkCancellerTracker; u8 atkCancellerTracker;
u16 usedHeldItems[MAX_BATTLERS_COUNT]; u16 usedHeldItems[MAX_BATTLERS_COUNT];
@@ -556,7 +552,12 @@ struct BattleStruct
u8 wishPerishSongBattlerId; u8 wishPerishSongBattlerId;
u8 field_182; u8 field_182;
u8 field_183; u8 field_183;
u8 field_184[124]; // currently unknown u8 field_184;
u8 field_185;
u8 field_186;
u8 field_187;
struct BattleEnigmaBerry battleEnigmaBerry;
u8 field_1A4[0x5C]; // currently unknown
}; // size == 0x200 bytes }; // size == 0x200 bytes
extern struct BattleStruct *gBattleStruct; extern struct BattleStruct *gBattleStruct;
@@ -929,5 +930,7 @@ extern u16 gLastPrintedMoves[MAX_BATTLERS_COUNT];
extern u8 gActionsByTurnOrder[MAX_BATTLERS_COUNT]; extern u8 gActionsByTurnOrder[MAX_BATTLERS_COUNT];
extern u8 gChosenActionByBattler[MAX_BATTLERS_COUNT]; extern u8 gChosenActionByBattler[MAX_BATTLERS_COUNT];
extern u8 gBattleTerrain; extern u8 gBattleTerrain;
extern struct UnknownPokemonStruct4 gUnknown_2022B58[3];
extern u16 *gUnknown_2022BC0;
#endif // GUARD_BATTLE_H #endif // GUARD_BATTLE_H
+3
View File
@@ -2,5 +2,8 @@
#define GUARD_BATTLE_BG_H #define GUARD_BATTLE_BG_H
void sub_800F34C(void); void sub_800F34C(void);
void DrawBattleEntryBackground(void);
void sub_800F6FC(u8 taskId);
void LoadBattleMenuWindowGfx(void);
#endif // GUARD_BATTLE_BG_H #endif // GUARD_BATTLE_BG_H
+1 -1
View File
@@ -63,7 +63,7 @@ void FieldObjectInteractionRemoveBerryTree(void);
u8 PlayerHasBerries(void); u8 PlayerHasBerries(void);
void ResetBerryTreeSparkleFlags(void); void ResetBerryTreeSparkleFlags(void);
void sub_809C794(void); void sub_809C794(void);
const struct Berry * sub_809C8A0(u8 berryIdx); const struct Berry * GetBerryInfo(u8 berryIdx);
extern const struct Berry gBerries[]; extern const struct Berry gBerries[];
+2
View File
@@ -1,6 +1,8 @@
#ifndef GUARD_TRAINERS_H #ifndef GUARD_TRAINERS_H
#define GUARD_TRAINERS_H #define GUARD_TRAINERS_H
#define TRAINER_SECRET_BASE 1024
#define F_TRAINER_FEMALE (1 << 7) #define F_TRAINER_FEMALE (1 << 7)
// All trainer parties specify the IV, level, and species for each Pokémon in the // All trainer parties specify the IV, level, and species for each Pokémon in the
+1 -1
View File
@@ -11,7 +11,7 @@ bool32 MG_PrintTextOnWindow1AndWaitButton(u8 * cmdPtr, const u8 * src);
void sub_80FA190(void); void sub_80FA190(void);
void MG_DrawCheckerboardPattern(void); void MG_DrawCheckerboardPattern(void);
void task_add_05_task_del_08FA224_when_no_RfuFunc(void); void task_add_05_task_del_08FA224_when_no_RfuFunc(void);
bool8 IsRfuTaskFinished(void); bool8 IsLinkRfuTaskFinished(void);
void DestroyWirelessStatusIndicatorSprite(void); void DestroyWirelessStatusIndicatorSprite(void);
void MEvent_CreateTask_CardOrNewsWithFriend(u8); void MEvent_CreateTask_CardOrNewsWithFriend(u8);
void MEvent_CreateTask_CardOrNewsOverWireless(u8); void MEvent_CreateTask_CardOrNewsOverWireless(u8);
+1
View File
@@ -84,5 +84,6 @@ bool8 IsMultiBattle(void);
void sub_8126EDC(void); void sub_8126EDC(void);
void PartyMenuInit_FromPlayerPc(void); void PartyMenuInit_FromPlayerPc(void);
void CB2_PartyMenuFromStartMenu(void); void CB2_PartyMenuFromStartMenu(void);
void sub_8128198(void);
#endif // GUARD_PARTY_MENU_H #endif // GUARD_PARTY_MENU_H
+1191
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -134,7 +134,7 @@ bool32 IsEnigmaBerryValid(void)
return TRUE; return TRUE;
} }
const struct Berry * sub_809C8A0(u8 berryIdx) const struct Berry * GetBerryInfo(u8 berryIdx)
{ {
if (berryIdx == ITEM_TO_BERRY(ITEM_ENIGMA_BERRY) && IsEnigmaBerryValid()) if (berryIdx == ITEM_TO_BERRY(ITEM_ENIGMA_BERRY) && IsEnigmaBerryValid())
return (struct Berry *)&gSaveBlock1Ptr->enigmaBerry.berry; return (struct Berry *)&gSaveBlock1Ptr->enigmaBerry.berry;
@@ -163,7 +163,7 @@ u16 BerryTypeToItemId(u16 berryType)
void GetBerryNameByBerryType(u8 berryType, u8 * dest) void GetBerryNameByBerryType(u8 berryType, u8 * dest)
{ {
const struct Berry * berry = sub_809C8A0(berryType); const struct Berry * berry = GetBerryInfo(berryType);
memcpy(dest, berry->name, 6); memcpy(dest, berry->name, 6);
dest[6] = EOS; dest[6] = EOS;
} }
+1 -1
View File
@@ -73,7 +73,7 @@ void CopyItemName(u16 itemId, u8 * dest)
{ {
if (itemId == ITEM_ENIGMA_BERRY) if (itemId == ITEM_ENIGMA_BERRY)
{ {
StringCopy(dest, sub_809C8A0(43)->name); StringCopy(dest, GetBerryInfo(43)->name);
StringAppend(dest, gUnknown_84162BD); StringAppend(dest, gUnknown_84162BD);
} }
else else
+1 -1
View File
@@ -1025,7 +1025,7 @@ bool8 IsLinkTaskFinished(void)
{ {
if (gWirelessCommType == 1) if (gWirelessCommType == 1)
{ {
return IsRfuTaskFinished(); return IsLinkRfuTaskFinished();
} }
return gLinkCallback == NULL; return gLinkCallback == NULL;
} }
+2 -2
View File
@@ -1374,7 +1374,7 @@ void task00_mystery_gift(u8 taskId)
} }
break; break;
case 13: case 13:
if (IsRfuTaskFinished()) if (IsLinkRfuTaskFinished())
{ {
DestroyWirelessStatusIndicatorSprite(); DestroyWirelessStatusIndicatorSprite();
data->state = 14; data->state = 14;
@@ -1650,7 +1650,7 @@ void task00_mystery_gift(u8 taskId)
data->state = 34; data->state = 34;
break; break;
case 34: case 34:
if (IsRfuTaskFinished()) if (IsLinkRfuTaskFinished())
{ {
DestroyWirelessStatusIndicatorSprite(); DestroyWirelessStatusIndicatorSprite();
data->state = 35; data->state = 35;
+3 -3
View File
@@ -141,7 +141,7 @@ void sub_812C224(void)
} }
for (r3 = 0; r3 < 7; r3++) for (r3 = 0; r3 < 7; r3++)
{ {
r5->v1[0][r3] = gLinkPlayers[gBattleStruct->field_B5 ^ 1].name[r3]; r5->v1[0][r3] = gLinkPlayers[gBattleStruct->multiplayerId ^ 1].name[r3];
} }
} }
sub_8113550(r8, (const u16 *)r5); sub_8113550(r8, (const u16 *)r5);
@@ -153,12 +153,12 @@ void sub_812C334(s32 * a0, s32 * a1)
{ {
s32 r5; s32 r5;
s32 _optimized_out = 0; s32 _optimized_out = 0;
u8 r2 = gLinkPlayers[gBattleStruct->field_B5].id ^ 2; u8 r2 = gLinkPlayers[gBattleStruct->multiplayerId].id ^ 2;
for (r5 = 0; r5 < 4; r5++) for (r5 = 0; r5 < 4; r5++)
{ {
if (r2 == gLinkPlayers[r5].id) if (r2 == gLinkPlayers[r5].id)
a0[0] = r5; a0[0] = r5;
else if (r5 != gBattleStruct->field_B5) else if (r5 != gBattleStruct->multiplayerId)
a1[_optimized_out++] = r5; a1[_optimized_out++] = r5;
} }
} }