Decompile start_menu

This commit is contained in:
PikalaxALT
2019-10-13 22:04:51 -04:00
parent 6bffe8613e
commit 8fd0bc4245
65 changed files with 1367 additions and 2510 deletions
+2 -2
View File
@@ -2856,7 +2856,7 @@ _0814D106:
movs r0, 0
movs r1, 0
bl DrawDialogueFrame
ldr r2, _0814D148 @ =gUnknown_8419F54
ldr r2, _0814D148 @ =gText_SavingDontTurnOffThePower2
movs r0, 0
str r0, [sp]
movs r0, 0x2
@@ -2877,7 +2877,7 @@ _0814D106:
bl CreateTask
b _0814D178
.align 2, 0
_0814D148: .4byte gUnknown_8419F54
_0814D148: .4byte gText_SavingDontTurnOffThePower2
_0814D14C: .4byte sub_80DA634
_0814D150:
ldr r0, _0814D160 @ =sub_80DA634
+4 -4
View File
@@ -1496,7 +1496,7 @@ _08081308: .4byte gReceivedRemoteLinkPlayers
thumb_func_start sub_808130C
sub_808130C: @ 808130C
push {lr}
bl sub_806F67C
bl Field_AskSaveTheGame
pop {r0}
bx r0
thumb_func_end sub_808130C
@@ -2001,7 +2001,7 @@ _08081724:
ldr r0, _0808173C @ =c2_8056854
_08081728:
str r0, [r1, 0x8]
ldr r0, _08081740 @ =sub_806FB7C
ldr r0, _08081740 @ =CB2_SetUpSaveAfterLinkBattle
bl SetMainCallback2
pop {r4,r5}
pop {r0}
@@ -2009,7 +2009,7 @@ _08081728:
.align 2, 0
_08081738: .4byte gMain
_0808173C: .4byte c2_8056854
_08081740: .4byte sub_806FB7C
_08081740: .4byte CB2_SetUpSaveAfterLinkBattle
thumb_func_end sub_8081668
thumb_func_start sub_8081744
@@ -2388,7 +2388,7 @@ sp02A_crash_sound: @ 8081A1C
ldr r0, _08081A2C @ =gSpecialVar_0x8006
ldrb r0, [r0]
ldr r1, _08081A30 @ =CB2_ReturnToFieldContinueScriptPlayMapMusic
bl sub_808B700
bl InitLinkPartnerTrainerCard
pop {r0}
bx r0
.align 2, 0
+2 -2
View File
@@ -10658,7 +10658,7 @@ _08155AA6:
movs r0, 0
movs r1, 0
bl DrawDialogueFrame
ldr r2, _08155ACC @ =gUnknown_8419F54
ldr r2, _08155ACC @ =gText_SavingDontTurnOffThePower2
str r4, [sp]
movs r0, 0x2
str r0, [sp, 0x4]
@@ -10672,7 +10672,7 @@ _08155AA6:
bl AddTextPrinterParameterized2
b _08155B08
.align 2, 0
_08155ACC: .4byte gUnknown_8419F54
_08155ACC: .4byte gText_SavingDontTurnOffThePower2
_08155AD0:
movs r0, 0
movs r1, 0x3
+1 -1
View File
@@ -75,7 +75,7 @@ _080693C4:
lsls r0, 24
cmp r0, 0
bne _080693D4
bl sub_80F6E9C
bl LoadStdWindowFrameGfx
b _080693E2
_080693D4:
bl sub_80F79A4
+2 -2
View File
@@ -509,7 +509,7 @@ _080F21B2:
movs r0, 0
movs r1, 0
bl DrawDialogueFrame
ldr r2, _080F2214 @ =gUnknown_8419F54
ldr r2, _080F2214 @ =gText_SavingDontTurnOffThePower2
movs r0, 0
str r0, [sp]
movs r0, 0x2
@@ -543,7 +543,7 @@ _080F21B2:
_080F2208: .4byte 0x000001ff
_080F220C: .4byte gDecompressionBuffer
_080F2210: .4byte gUnknown_203AB38
_080F2214: .4byte gUnknown_8419F54
_080F2214: .4byte gText_SavingDontTurnOffThePower2
_080F2218: .4byte gTasks
_080F221C: .4byte sub_80F2220
thumb_func_end Task_Hof_InitTeamSaveData
+5 -5
View File
@@ -138,18 +138,18 @@ _08107EB0: .4byte gUnknown_203AD10
_08107EB4: .4byte gUnknown_203ACFC
thumb_func_end sub_8107DB4
thumb_func_start ReturnToBagFromKeyItem
ReturnToBagFromKeyItem: @ 8107EB8
thumb_func_start CB2_BagMenuFromStartMenu
CB2_BagMenuFromStartMenu: @ 8107EB8
push {lr}
ldr r2, _08107EC8 @ =sub_80568A8
ldr r2, _08107EC8 @ =CB2_ReturnToStartMenu
movs r0, 0
movs r1, 0x3
bl sub_8107DB4
pop {r0}
bx r0
.align 2, 0
_08107EC8: .4byte sub_80568A8
thumb_func_end ReturnToBagFromKeyItem
_08107EC8: .4byte CB2_ReturnToStartMenu
thumb_func_end CB2_BagMenuFromStartMenu
thumb_func_start sub_8107ECC
sub_8107ECC: @ 8107ECC
+7 -7
View File
@@ -3252,7 +3252,7 @@ _08117384:
lsls r0, 24
lsrs r0, 24
ldr r1, _081173BC @ =CB2_ReturnToField
bl sub_808B700
bl InitLinkPartnerTrainerCard
_081173A2:
bl RunTasks
bl RunTextPrinters
@@ -5840,7 +5840,7 @@ _08118AD4:
bl sub_811BEDC
bl _081198DC
_08118ADE:
ldr r0, _08118B00 @ =sub_806F1F0
ldr r0, _08118B00 @ =Task_StartMenuHandleInput
bl FuncIsActiveTask
lsls r0, 24
cmp r0, 0
@@ -5854,7 +5854,7 @@ _08118AEE:
movs r0, 0x4
bl _081198DA
.align 2, 0
_08118B00: .4byte sub_806F1F0
_08118B00: .4byte Task_StartMenuHandleInput
_08118B04:
bl sub_811A0E0
movs r3, 0x2
@@ -6975,7 +6975,7 @@ _081194DC:
movs r0, 0x2F
bl sub_8118664
_081194E4:
bl sub_80F7998
bl DestroyHelpMessageWindow_
b _081198DC
.align 2, 0
_081194EC: .4byte gUnknown_8458B44
@@ -7171,7 +7171,7 @@ _08119670:
_0811967A:
movs r0, 0x1
bl sub_811B258
bl sub_80F7998
bl DestroyHelpMessageWindow_
movs r0, 0x4
b _081198DA
.align 2, 0
@@ -8482,7 +8482,7 @@ _0811A0B0: .4byte gTasks+0x8
sub_811A0B4: @ 811A0B4
push {r4,lr}
adds r4, r0, 0
bl sub_80F6E9C
bl LoadStdWindowFrameGfx
movs r0, 0
movs r1, 0x1
bl DrawDialogueFrame
@@ -8528,7 +8528,7 @@ sub_811A0F8: @ 811A0F8
beq _0811A130
b _0811A142
_0811A10A:
bl sub_80F6E9C
bl LoadStdWindowFrameGfx
movs r0, 0
movs r1, 0x1
bl DrawDialogueFrame
+12 -12
View File
@@ -491,7 +491,7 @@ sub_809DD60: @ 809DD60
bl CreateTask
ldr r0, _0809DD84 @ =sub_809FB70
bl SetMainCallback2
bl sub_812B234
bl HelpSystem_BackupSomeVariable
movs r0, 0x3
bl HelpSystem_SetSomeVariable2
pop {r0}
@@ -868,7 +868,7 @@ _0809E06C:
ldr r0, [r4]
bl Free
str r5, [r4]
bl sub_812B248
bl HelpSystem_RestoreSomeVariable
_0809E096:
movs r0, 0
pop {r4,r5}
@@ -4490,7 +4490,7 @@ sub_809FC90: @ 809FC90
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
ldr r0, _0809FCB4 @ =sub_80568A8
ldr r0, _0809FCB4 @ =CB2_ReturnToStartMenu
str r0, [sp, 0x4]
movs r0, 0
movs r3, 0
@@ -4500,7 +4500,7 @@ sub_809FC90: @ 809FC90
bx r0
.align 2, 0
_0809FCB0: .4byte gSaveBlock2Ptr
_0809FCB4: .4byte sub_80568A8
_0809FCB4: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_809FC90
thumb_func_start sub_809FCB8
@@ -4512,7 +4512,7 @@ sub_809FCB8: @ 809FCB8
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
ldr r0, _0809FCDC @ =sub_80568A8
ldr r0, _0809FCDC @ =CB2_ReturnToStartMenu
str r0, [sp, 0x4]
movs r0, 0x1
movs r3, 0
@@ -4522,7 +4522,7 @@ sub_809FCB8: @ 809FCB8
bx r0
.align 2, 0
_0809FCD8: .4byte gSaveBlock2Ptr
_0809FCDC: .4byte sub_80568A8
_0809FCDC: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_809FCB8
thumb_func_start sub_809FCE0
@@ -4534,7 +4534,7 @@ sub_809FCE0: @ 809FCE0
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
ldr r0, _0809FD04 @ =sub_80568A8
ldr r0, _0809FD04 @ =CB2_ReturnToStartMenu
str r0, [sp, 0x4]
movs r0, 0x2
movs r3, 0
@@ -4544,7 +4544,7 @@ sub_809FCE0: @ 809FCE0
bx r0
.align 2, 0
_0809FD00: .4byte gSaveBlock2Ptr
_0809FD04: .4byte sub_80568A8
_0809FD04: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_809FCE0
thumb_func_start sub_809FD08
@@ -4556,7 +4556,7 @@ sub_809FD08: @ 809FD08
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
ldr r0, _0809FD2C @ =sub_80568A8
ldr r0, _0809FD2C @ =CB2_ReturnToStartMenu
str r0, [sp, 0x4]
movs r0, 0x3
movs r3, 0
@@ -4566,7 +4566,7 @@ sub_809FD08: @ 809FD08
bx r0
.align 2, 0
_0809FD28: .4byte gSaveBlock2Ptr
_0809FD2C: .4byte sub_80568A8
_0809FD2C: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_809FD08
thumb_func_start sub_809FD30
@@ -4578,7 +4578,7 @@ sub_809FD30: @ 809FD30
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
ldr r0, _0809FD54 @ =sub_80568A8
ldr r0, _0809FD54 @ =CB2_ReturnToStartMenu
str r0, [sp, 0x4]
movs r0, 0x4
movs r3, 0
@@ -4588,7 +4588,7 @@ sub_809FD30: @ 809FD30
bx r0
.align 2, 0
_0809FD50: .4byte gSaveBlock2Ptr
_0809FD54: .4byte sub_80568A8
_0809FD54: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_809FD30
.align 2, 0 @ Don't pad with nop.
+5 -5
View File
@@ -26,14 +26,14 @@ sub_8088374: @ 8088374
bx r0
thumb_func_end sub_8088374
thumb_func_start sub_8088388
sub_8088388: @ 8088388
thumb_func_start CB2_OptionsMenuFromStartMenu
CB2_OptionsMenuFromStartMenu: @ 8088388
push {r4-r6,lr}
ldr r1, _08088418 @ =gMain
ldr r0, [r1, 0x8]
cmp r0, 0
bne _08088396
ldr r0, _0808841C @ =sub_80568A8
ldr r0, _0808841C @ =CB2_ReturnToStartMenu
str r0, [r1, 0x8]
_08088396:
ldr r4, _08088420 @ =gUnknown_2039620
@@ -101,12 +101,12 @@ _080883FA:
bx r0
.align 2, 0
_08088418: .4byte gMain
_0808841C: .4byte sub_80568A8
_0808841C: .4byte CB2_ReturnToStartMenu
_08088420: .4byte gUnknown_2039620
_08088424: .4byte gSaveBlock2Ptr
_08088428: .4byte gUnknown_83CC304
_0808842C: .4byte sub_8088454
thumb_func_end sub_8088388
thumb_func_end CB2_OptionsMenuFromStartMenu
thumb_func_start sub_8088430
sub_8088430: @ 8088430
+5 -5
View File
@@ -3754,20 +3754,20 @@ _080568A0: .4byte gFieldCallback
_080568A4: .4byte sub_807DDD0
thumb_func_end c2_8056854
thumb_func_start sub_80568A8
sub_80568A8: @ 80568A8
thumb_func_start CB2_ReturnToStartMenu
CB2_ReturnToStartMenu: @ 80568A8
push {lr}
bl sub_80569BC
ldr r1, _080568BC @ =gFieldCallback2
ldr r0, _080568C0 @ =sub_807E3BC
ldr r0, _080568C0 @ =FieldCB2_ReturnToStartMenuInit
str r0, [r1]
bl CB2_ReturnToField
pop {r0}
bx r0
.align 2, 0
_080568BC: .4byte gFieldCallback2
_080568C0: .4byte sub_807E3BC
thumb_func_end sub_80568A8
_080568C0: .4byte FieldCB2_ReturnToStartMenuInit
thumb_func_end CB2_ReturnToStartMenu
thumb_func_start sub_80568C4
sub_80568C4: @ 80568C4
+6 -6
View File
@@ -3616,10 +3616,10 @@ sub_8120658: @ 8120658
beq _08120678
cmp r0, 0x5
beq _0812067E
ldr r1, _08120674 @ =gUnknown_8416285
ldr r1, _08120674 @ =gStartMenuText_Bag
b _08120686
.align 2, 0
_08120674: .4byte gUnknown_8416285
_08120674: .4byte gStartMenuText_Bag
_08120678:
movs r0, 0xB6
lsls r0, 1
@@ -12231,7 +12231,7 @@ sub_8124AB0: @ 8124AB0
str r0, [sp]
ldr r0, _08124AD4 @ =sub_811FB28
str r0, [sp, 0x4]
ldr r0, _08124AD8 @ =sub_80568A8
ldr r0, _08124AD8 @ =CB2_ReturnToStartMenu
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0
@@ -12243,7 +12243,7 @@ sub_8124AB0: @ 8124AB0
bx r0
.align 2, 0
_08124AD4: .4byte sub_811FB28
_08124AD8: .4byte sub_80568A8
_08124AD8: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_8124AB0
thumb_func_start hm2_waterfall
@@ -16634,7 +16634,7 @@ CB2_PartyMenuFromStartMenu: @ 8126EB0
str r0, [sp]
ldr r0, _08126ED4 @ =sub_811FB28
str r0, [sp, 0x4]
ldr r0, _08126ED8 @ =sub_80568A8
ldr r0, _08126ED8 @ =CB2_ReturnToStartMenu
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0
@@ -16646,7 +16646,7 @@ CB2_PartyMenuFromStartMenu: @ 8126EB0
bx r0
.align 2, 0
_08126ED4: .4byte sub_811FB28
_08126ED8: .4byte sub_80568A8
_08126ED8: .4byte CB2_ReturnToStartMenu
thumb_func_end CB2_PartyMenuFromStartMenu
thumb_func_start sub_8126EDC
+5 -5
View File
@@ -289,8 +289,8 @@ _081026D0:
_08102758: .4byte gUnknown_84404C8
thumb_func_end sub_810250C
thumb_func_start sub_810275C
sub_810275C: @ 810275C
thumb_func_start CB2_OpenPokedexFromStartMenu
CB2_OpenPokedexFromStartMenu: @ 810275C
push {lr}
bl sub_810250C
movs r1, 0xC0
@@ -314,7 +314,7 @@ sub_810275C: @ 810275C
bx r0
.align 2, 0
_08102794: .4byte sub_81024D4
thumb_func_end sub_810275C
thumb_func_end CB2_OpenPokedexFromStartMenu
thumb_func_start sub_8102798
sub_8102798: @ 8102798
@@ -428,13 +428,13 @@ sub_8102858: @ 8102858
lsls r1, 7
movs r0, 0
bl SetGpuRegBits
ldr r0, _08102878 @ =sub_80568A8
ldr r0, _08102878 @ =CB2_ReturnToStartMenu
bl SetMainCallback2
_08102874:
pop {r0}
bx r0
.align 2, 0
_08102878: .4byte sub_80568A8
_08102878: .4byte CB2_ReturnToStartMenu
thumb_func_end sub_8102858
thumb_func_start sub_810287C
+1 -1
View File
@@ -1417,7 +1417,7 @@ _0808C3E0:
adds r1, r5, 0
adds r1, 0x26
bl sub_808C72C
bl sub_80F6E9C
bl LoadStdWindowFrameGfx
movs r0, 0
movs r1, 0
bl DrawDialogueFrame
+4 -4
View File
@@ -158,16 +158,16 @@ _080F5240:
adds r1, r0, 0
cmp r1, 0x1
bne _080F5260
ldr r0, _080F5258 @ =gUnknown_3005420
ldr r0, _080F5258 @ =gSaveSucceeded
strh r1, [r0]
ldr r0, _080F525C @ =gUnknown_8418E09
bl sub_80F5404
b _080F526C
.align 2, 0
_080F5258: .4byte gUnknown_3005420
_080F5258: .4byte gSaveSucceeded
_080F525C: .4byte gUnknown_8418E09
_080F5260:
ldr r0, _080F5274 @ =gUnknown_3005420
ldr r0, _080F5274 @ =gSaveSucceeded
movs r1, 0xFF
strh r1, [r0]
ldr r0, _080F5278 @ =gUnknown_8418CD9
@@ -178,7 +178,7 @@ _080F526C:
strb r0, [r1]
b _080F52D6
.align 2, 0
_080F5274: .4byte gUnknown_3005420
_080F5274: .4byte gSaveSucceeded
_080F5278: .4byte gUnknown_8418CD9
_080F527C: .4byte gUnknown_203AB50
_080F5280:
+3 -3
View File
@@ -5,8 +5,8 @@
.text
thumb_func_start sub_80F7FCC
sub_80F7FCC: @ 80F7FCC
thumb_func_start SaveStatToString
SaveStatToString: @ 80F7FCC
push {r4-r7,lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -144,6 +144,6 @@ _080F80D8:
bx r0
.align 2, 0
_080F80E0: .4byte 0x00000827
thumb_func_end sub_80F7FCC
thumb_func_end SaveStatToString
.align 2, 0 @ Don't pad with nop.
+1 -1
View File
@@ -1127,7 +1127,7 @@ _0809D1FA:
adds r1, r4, 0
adds r2, r7, 0
movs r3, 0x12
bl sub_812E6DC
bl Menu_PrintFormatIntlPlayerName
movs r0, 0x10
str r0, [sp]
mov r0, r9
-2219
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -14443,7 +14443,7 @@ _080540DC:
movs r0, 0x32
strb r0, [r1]
ldr r4, _080540FC @ =gStringVar4
ldr r1, _08054100 @ =gUnknown_8419F54
ldr r1, _08054100 @ =gText_SavingDontTurnOffThePower2
_080540EA:
adds r0, r4, 0
bl StringExpandPlaceholders
@@ -14454,7 +14454,7 @@ _080540EA:
b _08054396
.align 2, 0
_080540FC: .4byte gStringVar4
_08054100: .4byte gUnknown_8419F54
_08054100: .4byte gText_SavingDontTurnOffThePower2
_08054104:
bl InUnionRoom
cmp r0, 0
+10 -10
View File
@@ -785,7 +785,7 @@ _0808967C:
.align 2, 0
_0808968C: .4byte gMain
_08089690:
bl sub_80F6E9C
bl LoadStdWindowFrameGfx
ldr r1, _080896A0 @ =gMain
movs r0, 0x87
lsls r0, 3
@@ -4723,8 +4723,8 @@ sub_808B66C: @ 808B66C
_0808B694: .4byte sub_808B21C
thumb_func_end sub_808B66C
thumb_func_start sub_808B698
sub_808B698: @ 808B698
thumb_func_start InitTrainerCard
InitTrainerCard: @ 808B698
push {r4,r5,lr}
adds r4, r0, 0
ldr r5, _0808B6C0 @ =gUnknown_20397A4
@@ -4770,10 +4770,10 @@ _0808B6F0: .4byte gUnknown_20397A4
_0808B6F4: .4byte 0x00007bcf
_0808B6F8: .4byte 0x0000045c
_0808B6FC: .4byte sub_80895B8
thumb_func_end sub_808B698
thumb_func_end InitTrainerCard
thumb_func_start sub_808B700
sub_808B700: @ 808B700
thumb_func_start InitLinkPartnerTrainerCard
InitLinkPartnerTrainerCard: @ 808B700
push {r4-r6,lr}
adds r4, r0, 0
adds r6, r1, 0
@@ -4822,7 +4822,7 @@ _0808B764: .4byte gTrainerCards
_0808B768: .4byte gLinkPlayers
_0808B76C: .4byte 0x00007bcf
_0808B770: .4byte sub_80895B8
thumb_func_end sub_808B700
thumb_func_end InitLinkPartnerTrainerCard
thumb_func_start sub_808B774
sub_808B774: @ 808B774
@@ -5057,7 +5057,7 @@ _0808B948: .4byte 0x00000457
thumb_func_start sub_808B94C
sub_808B94C: @ 808B94C
push {lr}
bl sub_808B698
bl InitTrainerCard
ldr r0, _0808B95C @ =sub_80895B8
bl SetMainCallback2
pop {r0}
@@ -5076,7 +5076,7 @@ sub_808B960: @ 808B960
bl memcpy
movs r0, 0
adds r1, r4, 0
bl sub_808B700
bl InitLinkPartnerTrainerCard
ldr r0, _0808B98C @ =sub_80895B8
bl SetMainCallback2
pop {r4}
@@ -5098,7 +5098,7 @@ sub_808B990: @ 808B990
bl memcpy
movs r0, 0
adds r1, r4, 0
bl sub_808B700
bl InitLinkPartnerTrainerCard
ldr r0, _0808B9BC @ =sub_80895B8
bl SetMainCallback2
pop {r4}
+1 -1
View File
@@ -1,2 +1,2 @@
gUnknown_3005E9C
gUnknown_3005EA0
gSomeVariableBackup
+1 -1
View File
@@ -9,4 +9,4 @@ gSaveUnusedVar
gSaveFileStatus
gGameContinueCallback
gRamSaveSectionLocations
gUnknown_3005420
gSaveSucceeded
+23 -11
View File
@@ -774,7 +774,7 @@ EventScript_1A4EAE:: @ 81A4EAE
return
EventScript_1A4EAF:: @ 81A4EAF
special sub_806F67C
special Field_AskSaveTheGame
waitstate
return
@@ -4447,21 +4447,33 @@ SevenIsland_TrainerTower_1F_EventScript_1C54EA:: @ 81C54EA
gUnknown_81C555B:: @ 81C555B
.incbin "baserom.gba", 0x1C555B, 0x6E
gUnknown_81C55C9:: @ 81C55C9
.incbin "baserom.gba", 0x1C55C9, 0x21
gText_WouldYouLikeToSaveTheGame:: @ 81C55C9
.string "Would you like to save the game?$"
gUnknown_81C55EA:: @ 81C55EA
.incbin "baserom.gba", 0x1C55EA, 0x3B
gText_AlreadySaveFile_WouldLikeToOverwrite:: @ 81C55EA
.string "There is already a saved file.\n"
.string "Is it okay to overwrite it?$"
gUnknown_81C5625:: @ 81C5625
.incbin "baserom.gba", 0x1C5625, 0x22
gText_SavingDontTurnOffThePower:: @ 81C5625
.string "SAVING…\n"
.string "DON'T TURN OFF THE POWER.$"
gUnknown_81C5647:: @ 81C5647
.incbin "baserom.gba", 0x1C5647, 0x23
gText_PlayerSavedTheGame:: @ 81C5647
.string "{PLAYER} saved the game.$"
gUnknown_81C565A::
.string "セーブに しっぱい しました‥$"
@ 0xE5
gUnknown_81C566A:: @ 81C566A
.incbin "baserom.gba", 0x1C566A, 0xE5
gText_DifferentGameFile:: @ 81C566A
.string "WARNING!\p"
.string "There is a different game file that\n"
.string "is already saved.\p"
.string "If you save now, the other file's\n"
.string "adventure, including items and\l"
.string "POKéMON, will be entirely lost.\p"
.string "Are you sure you want to save now\n"
.string "and overwrite the other save file?$"
gOtherText_NewName:: @ 81C574F
.string "NEW NAME$"
@@ -36,7 +36,7 @@ PalletTown_PlayersHouse_2F_EventScript_168CE4:: @ 8168CE4
goto_if_eq EventScript_1A7AE0
lockall
setvar VAR_0x8004, 32
special sub_812B220
special Special_SetSomeVariable
setvar VAR_0x8004, 1
special sub_80CA86C
playse SE_PC_ON
+4 -4
View File
@@ -102,7 +102,7 @@ gSpecials:: @ 815FD60
def_special nullsub_75
def_special nullsub_75
def_special sub_8081128
def_special sub_806F67C
def_special Field_AskSaveTheGame
def_special nullsub_56
def_special sub_80FEE44
def_special sub_80BDA7C
@@ -390,9 +390,9 @@ gSpecials:: @ 815FD60
def_special TakePokemonFromRoute5Daycare
def_special ScrSpecial_SeaGallopFerry
def_special sub_80CC48C
def_special sub_812B220
def_special sub_812B234
def_special sub_812B248
def_special Special_SetSomeVariable
def_special HelpSystem_BackupSomeVariable
def_special HelpSystem_RestoreSomeVariable
def_special ValidateReceivedWonderCard
def_special sub_810B810
def_special sub_811999C
-28
View File
@@ -1,28 +0,0 @@
.section .rodata
.align 2
gUnknown_83A7344:: @ 83A7344
.incbin "baserom.gba", 0x3A7344, 0x48
gUnknown_83A738C:: @ 83A738C
.incbin "baserom.gba", 0x3A738C, 0x8
gUnknown_83A7394:: @ 83A7394
.incbin "baserom.gba", 0x3A7394, 0x24
gUnknown_83A73B8:: @ 83A73B8
.incbin "baserom.gba", 0x3A73B8, 0x4
gUnknown_83A73BC:: @ 83A73BC
.incbin "baserom.gba", 0x3A73BC, 0x10
gUnknown_83A73CC:: @ 83A73CC
.incbin "baserom.gba", 0x3A73CC, 0x8
gUnknown_83A73D4:: @ 83A73D4
.incbin "baserom.gba", 0x3A73D4, 0x4
gUnknown_83A73D8:: @ 83A73D8
.incbin "baserom.gba", 0x3A73D8, 0x4
gUnknown_83A73DC:: @ 83A73DC
.incbin "baserom.gba", 0x3A73DC, 0x284
+22 -22
View File
@@ -45,7 +45,7 @@ gExpandedPlaceholder_Green:: @ 8415A5C
gText_EggNickname:: @ 8415A62
.string "EGG$"
gText_Pokemon:: @ 8415A66
gStartMenuText_Pokemon:: @ 8415A66
.string "POKéMON$"
gText_NewGame:: @ 8415A6E
@@ -351,19 +351,19 @@ gUnknown_8416133:: @ 0x8416133
gUnknown_8416146:: @ 0x8416146
.string "$"
gUnknown_841614B:: @ 841614B
gText_SaveError_PleaseExchangeBackupMemory:: @ 841614B
.string "Save error.\pPlease exchange the\nbackup memory.$"
gUnknown_841617A:: @ 841617A
gSaveStatName_Player:: @ 841617A
.string "PLAYER$"
gUnknown_8416181:: @ 8416181
gSaveStatName_Badges:: @ 8416181
.string "BADGES$"
gUnknown_8416188:: @ 8416188
gSaveStatName_Pokedex:: @ 8416188
.string "POKéDEX$"
gUnknown_8416190:: @ 8416190
gSaveStatName_Time:: @ 8416190
.string "TIME$"
gUnknown_8416195::
@@ -482,28 +482,28 @@ gText_GoBackToThePreviousMenu::
gText_WhatWouldYouLikeToDo:: @ 8416262
.string "What would you like to do?$"
gUnknown_841627D::
gStartMenuText_Pokedex::
.string "POKéDEX$"
gUnknown_8416285:: @ 8416285
gStartMenuText_Bag:: @ 8416285
.string "BAG$"
gUnknown_8416289::
.string "$"
gUnknown_841628E::
gStartMenuText_Player::
.string "{PLAYER}$"
gUnknown_8416291::
gStartMenuText_Save::
.string "SAVE$"
gUnknown_8416296::
gStartMenuText_Option::
.string "OPTION$"
gUnknown_841629D::
gStartMenuText_Exit::
.string "EXIT$"
gUnknown_84162A2::
gStartMenuText_Retire::
.string "RETIRE$"
gUnknown_84162A9:: @ 84162A9
@@ -2820,38 +2820,38 @@ gUnknown_8419F10:: @ 0x8419F10
gUnknown_8419F2D:: @ 0x8419F2D
.string "- \n !$"
gUnknown_8419F54:: @ 8419F54
gText_SavingDontTurnOffThePower2:: @ 8419F54
.string "SAVING\n"
.string "DON'T TURN OFF THE POWER.$"
// Start menu option descriptions
gUnknown_8419F76:: @ 8419F76 // Pokedex
gStartMenuDesc_Pokedex:: @ 8419F76 // Pokedex
.string "A device that records POKéMON secrets\n"
.string "upon meeting or catching them.$"
gUnknown_8419FBB:: @ 8419FBB // Pokemon
gStartMenuDesc_Pokemon:: @ 8419FBB // Pokemon
.string "Check and organize POKéMON that are\n"
.string "traveling with you in your party.$"
gUnknown_841A001:: @ 841A001 // Bag
gStartMenuDesc_Bag:: @ 841A001 // Bag
.string "Equipped with pockets for storing items\n"
.string "you bought, received, or found.$"
gUnknown_841A049:: @ 841A049 // {PLAYER}
gStartMenuDesc_Player:: @ 841A049 // {PLAYER}
.string "Check your money and other game data.$"
gUnknown_841A06F:: @ 841A06F // Save
gStartMenuDesc_Save:: @ 841A06F // Save
.string "Save your game with a complete record\n"
.string "of your progress to take a break.$"
gUnknown_841A0B7:: @ 841A0B7 // Options
gStartMenuDesc_Option:: @ 841A0B7 // Options
.string "Adjust various game settings such as text\n"
.string "speed, game rules, etc.$"
gUnknown_841A0F9:: @ 841A0F9 // Quit
gStartMenuDesc_Exit:: @ 841A0F9 // Quit
.string "Close this MENU window.$"
gUnknown_841A111:: @ 841A111 // Retire
gStartMenuDesc_Retire:: @ 841A111 // Retire
.string "Retire from the SAFARI GAME and return to\n"
.string "the registration counter.$"
+3
View File
@@ -1,5 +1,8 @@
.section .rodata
.align 2
gUnknown_83A73E0:: @ 83A73E0
.incbin "baserom.gba", 0x3A73E0, 0x280
gUnknown_83A7660:: @ 83A7660
.incbin "baserom.gba", 0x3A7660, 0x2FF4
+7
View File
@@ -1161,4 +1161,11 @@ extern const u8 EventScript_ResetAllMapFlags[];
// player_pc
extern const u8 EventScript_PalletTown_PlayersHouse_2F_ShutDownPC[];
// start_menu
extern const u8 gText_WouldYouLikeToSaveTheGame[];
extern const u8 gText_AlreadySaveFile_WouldLikeToOverwrite[];
extern const u8 gText_SavingDontTurnOffThePower[];
extern const u8 gText_PlayerSavedTheGame[];
extern const u8 gText_DifferentGameFile[];
#endif //GUARD_EVENT_SCRIPTS_H
+1
View File
@@ -15,6 +15,7 @@ void sub_807DF64(void);
void sub_807DC18(void);
void FieldCallback_ReturnToEventScript2(void);
void sub_807DC00(void);
void FadeTransition_FadeInOnReturnToStartMenu(void);
bool32 sub_807E418(void);
+2
View File
@@ -26,4 +26,6 @@ u32 GetBehaviorByMetatileIdAndMapData(struct MapData *mapData, u16 metatile, u8
const struct MapHeader * mapconnection_get_mapheader(struct MapConnection * connection);
struct MapConnection * GetMapConnectionAtPos(s16 x, s16 y);
void save_serialize_map(void);
#endif //GUARD_FIELDMAP_H
+31
View File
@@ -121,10 +121,31 @@
} \
}
#define DmaFillLarge(dmaNum, value, dest, size, block, bit) \
{ \
void *_dest = (void *)dest; \
u32 _size = size; \
while (1) \
{ \
DmaFill##bit(dmaNum, value, _dest, (block)); \
_dest += (block); \
_size -= (block); \
if (_size <= (block)) \
{ \
DmaFill##bit(dmaNum, value, _dest, _size); \
break; \
} \
} \
}
#define DmaCopyLarge16(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 16)
#define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32)
#define DmaFillLarge16(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 16)
#define DmaFillLarge32(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 32)
#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16)
#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32)
@@ -139,4 +160,14 @@
#define DmaCopy16Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 16)
#define DmaCopy32Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 32)
#define DmaFillDefvars(dmaNum, value, dest, size, bit) \
{ \
void *_dest = (void *)dest; \
u32 _size = size; \
DmaFill##bit(dmaNum, value, _dest, _size); \
}
#define DmaFill16Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 16)
#define DmaFill32Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 32)
#endif // GUARD_GBA_MACRO_H
+3 -3
View File
@@ -29,7 +29,7 @@ extern bool8 gHelpSystemEnabled;
extern u8 gUnknown_203F175;
// help_system_812B1E0
void sub_812B1E0(u8);
void HelpSystem_SetSomeVariable(u8);
void HelpSystem_SetSomeVariable2(u8);
bool8 sub_812B40C(void);
bool8 sub_812B45C(void);
@@ -89,7 +89,7 @@ void HelpSystem_FillPanel3(void);
void PrintListMenuItems(void);
void PlaceListMenuCursor(void);
bool8 MoveCursor(u8 by, u8 dirn);
void sub_812B234(void);
void sub_812B248(void);
void HelpSystem_BackupSomeVariable(void);
void HelpSystem_RestoreSomeVariable(void);
#endif //GUARD_HELP_SYSTEM_H
+1 -1
View File
@@ -28,7 +28,7 @@ void sub_81AAC70(void);
void sub_8108CF0(void);
void sub_81089BC(void);
void sub_810B108(u8);
void ReturnToBagFromKeyItem(void);
void CB2_BagMenuFromStartMenu(void);
void ItemMenu_MoveItemSlotToNewPositionInArray(struct ItemSlot * slots, int pos1, int pos2);
void ItemMenu_StartFadeToExitCallback(u8 taskId);
void sub_8108CB4(void);
+1
View File
@@ -39,5 +39,6 @@ bool32 sub_80FAEF0(void);
bool32 IsRfuRecvQueueEmpty(void);
u32 GetRfuRecvQueueLength(void);
void sub_80F8DC0(void);
void var_800D_set_xB(void);
#endif //GUARD_LINK_RFU_H
+2
View File
@@ -26,5 +26,7 @@ void ApplyNewEncryptionKeyToAllEncryptedData(u32 encryptionKey);
void ApplyNewEncryptionKeyToBagItems(u32 encryptionKey);
void ApplyNewEncryptionKeyToWord(u32 * word, u32 encryptionKey);
void ApplyNewEncryptionKeyToHword(u16 * hword, u32 encryptionKey);
void sav2_gender2_inplace_and_xFE(void);
void sub_804C1C0(void);
#endif // GUARD_LOAD_SAVE_H
+1 -1
View File
@@ -21,7 +21,7 @@ struct MenuAction
void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 x, u8 y, const u8 * color, s8 speed, const u8 * str);
void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const u8 *color, s8 speed, const u8 *str);
void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 letterSpacing, u8 lineSpacing);
void sub_812E6DC(u8 windowId, const u8 * src, u16 x, u16 y);
void Menu_PrintFormatIntlPlayerName(u8 windowId, const u8 * src, u16 x, u16 y);
void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority);
bool8 IsBlendTaskActive(void);
u8 sub_812EA78(u16 species, u32 personality, u8 a2);
+2
View File
@@ -3,6 +3,8 @@
#include "global.h"
extern bool8 gDifferentSaveFile;
void SetTrainerId(u32 trainerId, u8 *dst);
void CopyTrainerId(u8 *dst, u8 *src);
void NewGameInitData(void);
+4 -4
View File
@@ -26,7 +26,7 @@ u16 AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 speed
void AddTextPrinterDiffStyle(bool8 allowSkippingDelayWithButtonPress);
void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress);
void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed);
void sub_80F6E9C(void);
void LoadStdWindowFrameGfx(void);
void DrawDialogueFrame(u8 windowId, bool8 transfer);
void DrawStdWindowFrame(u8 windowId, bool8 copyNow);
void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram);
@@ -41,12 +41,12 @@ void DisplayItemMessageOnField(u8 taskId, u8 bgId, const u8 *src, TaskFunc callb
void DisplayYesNoMenuDefaultYes(void);
void DisplayYesNoMenuDefaultNo(void);
u8 GetTextSpeedSetting(void);
u8 sub_80F78E0(u8 height);
u8 CreateStartMenuWindow(u8 height);
u8 GetStartMenuWindowId(void);
void RemoveStartMenuWindow(void);
u16 GetStdWindowBaseTileNum(void);
void sub_80F7974(const u8 * text);
void sub_80F7998(void);
void DrawHelpMessageWindowWithText(const u8 * text);
void DestroyHelpMessageWindow_(void);
void sub_80F79A4(void);
void SetDefaultFontsPointer(void);
+6
View File
@@ -0,0 +1,6 @@
#ifndef GUARD_OPTION_MENU_H
#define GUARD_OPTION_MENU_H
void CB2_OptionsMenuFromStartMenu(void);
#endif //GUARD_OPTION_MENU_H
+3
View File
@@ -38,6 +38,7 @@ extern MainCallback gFieldCallback;
extern struct WarpData gUnknown_2031DBC;
extern u8 gUnknown_2031DE0;
extern u8 gUnknown_300502C;
void IncrementGameStat(u8 index);
@@ -138,4 +139,6 @@ bool32 Overworld_DoScrollSceneForCredits(u8 *, const struct CreditsOverworldCmd
bool32 sub_8058318(void);
void CB2_ReturnToStartMenu(void);
#endif //GUARD_OVERWORLD_H
+1
View File
@@ -83,5 +83,6 @@ void sub_8127EC4(u8 battlerId, u8 unk, u8 arrayIndex);
bool8 IsMultiBattle(void);
void sub_8126EDC(void);
void PartyMenuInit_FromPlayerPc(void);
void CB2_PartyMenuFromStartMenu(void);
#endif // GUARD_PARTY_MENU_H
+6
View File
@@ -0,0 +1,6 @@
#ifndef GUARD_POKEDEX_SCREEN_H
#define GUARD_POKEDEX_SCREEN_H
void CB2_OpenPokedexFromStartMenu(void);
#endif //GUARD_POKEDEX_SCREEN_H
+4 -3
View File
@@ -28,14 +28,15 @@ u8 sub_8112CAC(void);
bool8 sub_81119D4(void (*func)(void));
void sub_8111F38(u16, u16);
void sub_8111134(void);
void sub_8112EDC(u8 a0);
u8 sub_8112EB4(void);
void sub_8113018(const u8 * text, u8 mode);
void DestroyHelpMessageWindow(u8 a0);
u8 CreateHelpMessageWindow(void);
void PrintTextOnHelpMessageWindow(const u8 * text, u8 mode);
void MapNamePopupWindowIdSetDummy(void);
void sub_8111CF0(void);
void sub_811089C(void);
void sub_8113044(void);
void TrySetUpQuestLogScenes_ElseContinueFromSave(u8 taskId);
void sub_8112450(void);
extern u8 gUnknown_203ADFA;
+1 -1
View File
@@ -84,7 +84,7 @@ extern u16 gSaveUnusedVar;
extern u16 gSaveFileStatus;
extern void (*gGameContinueCallback)(void);
extern struct SaveBlockChunk gRamSaveSectionLocations[0xE];
extern u16 gUnknown_3005420;
extern u16 gSaveSucceeded;
extern struct SaveSection gSaveDataBuffer;
+15
View File
@@ -0,0 +1,15 @@
#ifndef GUARD_SAVE_MENU_UTIL_H
#define GUARD_SAVE_MENU_UTIL_H
enum SaveStat
{
SAVE_STAT_NAME = 0,
SAVE_STAT_POKEDEX,
SAVE_STAT_TIME,
SAVE_STAT_LOCATION,
SAVE_STAT_BADGES
};
void SaveStatToString(u8 a0, u8 *a1, u8 a2);
#endif //GUARD_SAVE_MENU_UTIL_H
+2 -2
View File
@@ -4,7 +4,7 @@
#include "global.h"
void AppendToList(u8* list, u8* pos, u8 newEntry);
void sub_806F1F0(u8 taskId);
void sub_806F1D4(void);
void Task_StartMenuHandleInput(u8 taskId);
void SetUpReturnToStartMenu(void);
#endif // GUARD_START_MENU_H
+29 -3
View File
@@ -77,8 +77,8 @@ extern const u8 gText_Ferry[];
extern const u8 gText_SecretBase[];
extern const u8 gText_Hideout[];
extern const u8 gText_FlyToWhere[];
extern const u8 gText_PokemonLeague[];
extern const u8 gText_PokemonCenter[];
extern const u8 gStartMenuText_PokemonLeague[];
extern const u8 gStartMenuText_PokemonCenter[];
extern const u8 gText_ApostropheSBase[];
extern const u8 gText_NoRegistry[];
extern const u8 gText_OkayToDeleteFromRegistry[];
@@ -90,7 +90,7 @@ extern const u8 gText_IsThisTheCorrectTime[];
extern const u8 gText_PkmnFainted3[];
extern const u8 gText_Coins[];
extern const u8 gText_EggNickname[];
extern const u8 gText_Pokemon[];
extern const u8 gStartMenuText_Pokemon[];
extern const u8 gText_PkmnFainted3[];
extern const u8 gOtherText_Use[];
@@ -446,4 +446,30 @@ extern const u8 gText_MessageWillBeLost[];
extern const u8 gText_BagIsFull[];
extern const u8 gText_MailReturnedToBagMessageErased[];
// start_menu
extern const u8 gStartMenuText_Pokedex[];
extern const u8 gStartMenuText_Pokemon[];
extern const u8 gStartMenuText_Bag[];
extern const u8 gStartMenuText_Player[];
extern const u8 gStartMenuText_Save[];
extern const u8 gStartMenuText_Option[];
extern const u8 gStartMenuText_Exit[];
extern const u8 gStartMenuText_Retire[];
extern const u8 gUnknown_84162A9[];
extern const u8 gStartMenuDesc_Pokedex[];
extern const u8 gStartMenuDesc_Pokemon[];
extern const u8 gStartMenuDesc_Bag[];
extern const u8 gStartMenuDesc_Player[];
extern const u8 gStartMenuDesc_Save[];
extern const u8 gStartMenuDesc_Option[];
extern const u8 gStartMenuDesc_Exit[];
extern const u8 gStartMenuDesc_Retire[];
extern const u8 gStartMenuDesc_Player[];
extern const u8 gText_SaveError_PleaseExchangeBackupMemory[];
extern const u8 gText_SavingDontTurnOffThePower2[];
extern const u8 gSaveStatName_Player[];
extern const u8 gSaveStatName_Badges[];
extern const u8 gSaveStatName_Pokedex[];
extern const u8 gSaveStatName_Time[];
#endif //GUARD_STRINGS_H
+3
View File
@@ -40,4 +40,7 @@ struct TrainerCard
extern struct TrainerCard gTrainerCards[4];
void InitTrainerCard(MainCallback callback);
void InitLinkPartnerTrainerCard(u8 whoseCard, MainCallback callback);
#endif //GUARD_TRAINER_CARD_H
+2 -2
View File
@@ -106,7 +106,7 @@ SECTIONS {
asm/event_data.o(.text);
src/coord_event_weather.o(.text);
asm/field_tasks.o(.text);
asm/start_menu.o(.text);
src/start_menu.o(.text);
src/tileset_anims.o(.text);
src/palette.o(.text);
src/sound.o(.text);
@@ -408,7 +408,7 @@ SECTIONS {
src/scrcmd.o(.rodata);
src/coord_event_weather.o(.rodata);
data/field_tasks.o(.rodata);
data/start_menu.o(.rodata);
src/start_menu.o(.rodata);
data/tileset_anims.o(.rodata);
src/palette.o(.rodata);
src/sound.o(.rodata);
+2 -2
View File
@@ -552,7 +552,7 @@ static void Task_TopMenuHandleInput(u8 taskId)
if (FindTaskIdByFunc(Task_FCOpenOrCloseInfoBox) == 0xFF)
{
RunTextPrinters();
if ((JOY_NEW(SELECT_BUTTON)) && !sFameCheckerData->inPickMode && sFameCheckerData->savedCallback != ReturnToBagFromKeyItem)
if ((JOY_NEW(SELECT_BUTTON)) && !sFameCheckerData->inPickMode && sFameCheckerData->savedCallback != CB2_BagMenuFromStartMenu)
task->func = Task_StartToCloseFameChecker;
else if (JOY_NEW(START_BUTTON))
{
@@ -802,7 +802,7 @@ static void WipeMsgBoxAndTransfer(void)
static void Setup_DrawMsgAndListBoxes(void)
{
sub_80F6E9C();
LoadStdWindowFrameGfx();
DrawDialogueFrame(FCWINDOWID_MSGBOX, TRUE);
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_MSGBOX);
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_LIST);
+6 -6
View File
@@ -475,25 +475,25 @@ static void sub_807E31C(u8 taskId)
}
}
static void sub_807E378(u8 taskId)
static void Task_WaitFadeAndCreateStartMenuTask(u8 taskId)
{
if (sub_807E418() == TRUE)
{
DestroyTask(taskId);
CreateTask(sub_806F1F0, 80);
CreateTask(Task_StartMenuHandleInput, 80);
}
}
void sub_807E3A0(void)
void FadeTransition_FadeInOnReturnToStartMenu(void)
{
sub_807DC00();
CreateTask(sub_807E378, 80);
CreateTask(Task_WaitFadeAndCreateStartMenuTask, 80);
ScriptContext2_Enable();
}
bool32 sub_807E3BC(void)
bool8 FieldCB2_ReturnToStartMenuInit(void)
{
sub_806F1D4();
SetUpReturnToStartMenu();
return FALSE;
}
+31 -31
View File
@@ -16,13 +16,13 @@
#include "constants/maps.h"
#include "constants/songs.h"
static EWRAM_DATA u16 gUnknown_203B0EC = 0;
static EWRAM_DATA u16 sSomeVariable = 0;
static EWRAM_DATA u8 gUnknown_203B0EE = 0;
u8 gUnknown_3005E9C[4];
u16 gUnknown_3005EA0;
u16 gSomeVariableBackup;
static bool32 sub_812B27C(const u16 * mapIdxs);
static bool32 IsCurrentMapInArray(const u16 * mapIdxs);
static void sub_812B520(struct HelpSystemListMenu * a0, struct ListMenuItem * a1);
static void sub_812B614(struct HelpSystemListMenu * a0, struct ListMenuItem * a1);
static bool8 sub_812B754(void);
@@ -824,7 +824,7 @@ static const u8 gUnknown_845C4B6[][6] = {
{0, 0, 0, 0, 0, 0}
};
static const u16 gUnknown_845C594[] = {
static const u16 sMartMaps[] = {
MAP_VIRIDIAN_CITY_MART,
MAP_PEWTER_CITY_MART,
MAP_CERULEAN_CITY_MART,
@@ -847,7 +847,7 @@ static const u16 gUnknown_845C594[] = {
MAP_UNDEFINED
};
static const u16 gUnknown_845C5BC[] = {
static const u16 sGymMaps[] = {
MAP_PEWTER_CITY_GYM,
MAP_CERULEAN_CITY_GYM,
MAP_VERMILION_CITY_GYM,
@@ -859,7 +859,7 @@ static const u16 gUnknown_845C5BC[] = {
MAP_UNDEFINED
};
static const u8 gUnknown_845C5CE[][3] = {
static const u8 sDungeonMaps[][3] = {
{ MAP_GROUP(VIRIDIAN_FOREST), MAP_NUM(VIRIDIAN_FOREST), 1 },
{ MAP_GROUP(MT_MOON_1F), MAP_NUM(MT_MOON_1F), 3 },
{ MAP_GROUP(ROCK_TUNNEL_1F), MAP_NUM(ROCK_TUNNEL_1F), 2 },
@@ -878,14 +878,14 @@ static const u8 gUnknown_845C5CE[][3] = {
{ MAP_GROUP(SEVEN_ISLAND_TANOBY_RUINS_MONEAN_CHAMBER), MAP_NUM(SEVEN_ISLAND_TANOBY_RUINS_MONEAN_CHAMBER), 7 }
};
void sub_812B1E0(u8 a0)
void HelpSystem_SetSomeVariable(u8 a0)
{
gUnknown_203B0EC = a0;
sSomeVariable = a0;
}
void HelpSystem_SetSomeVariable2(u8 a0)
{
switch (gUnknown_203B0EC)
switch (sSomeVariable)
{
case 23:
case 24:
@@ -895,37 +895,37 @@ void HelpSystem_SetSomeVariable2(u8 a0)
break;
// fallthrough
default:
gUnknown_203B0EC = a0;
sSomeVariable = a0;
break;
}
}
void sub_812B220(void)
void Special_SetSomeVariable(void)
{
gUnknown_203B0EC = gSpecialVar_0x8004;
sSomeVariable = gSpecialVar_0x8004;
}
void sub_812B234(void)
void HelpSystem_BackupSomeVariable(void)
{
gUnknown_3005EA0 = gUnknown_203B0EC;
gSomeVariableBackup = sSomeVariable;
}
void sub_812B248(void)
void HelpSystem_RestoreSomeVariable(void)
{
gUnknown_203B0EC = gUnknown_3005EA0;
sSomeVariable = gSomeVariableBackup;
}
static bool32 sub_812B25C(void)
static bool32 IsInMartMap(void)
{
return sub_812B27C(gUnknown_845C594);
return IsCurrentMapInArray(sMartMaps);
}
static bool32 sub_812B26C(void)
static bool32 IsInGymMap(void)
{
return sub_812B27C(gUnknown_845C5BC);
return IsCurrentMapInArray(sGymMaps);
}
static bool32 sub_812B27C(const u16 * mapIdxs)
static bool32 IsCurrentMapInArray(const u16 * mapIdxs)
{
u16 mapIdx = (gSaveBlock1Ptr->location.mapGroup << 8) + gSaveBlock1Ptr->location.mapNum;
s32 i;
@@ -939,18 +939,18 @@ static bool32 sub_812B27C(const u16 * mapIdxs)
return FALSE;
}
static bool8 sub_812B2C4(void)
static bool8 IsInDungeonMap(void)
{
u8 i, j;
for (i = 0; i < 16; i++)
{
for (j = 0; j < gUnknown_845C5CE[i][2]; j++)
for (j = 0; j < sDungeonMaps[i][2]; j++)
{
if (
gUnknown_845C5CE[i][0] == gSaveBlock1Ptr->location.mapGroup
&& gUnknown_845C5CE[i][1] + j == gSaveBlock1Ptr->location.mapNum
&& (i != 15 || FlagGet(FLAG_0x849) == TRUE)
sDungeonMaps[i][0] == gSaveBlock1Ptr->location.mapGroup
&& sDungeonMaps[i][1] + j == gSaveBlock1Ptr->location.mapNum
&& (i != 15 /* TANOBY */ || FlagGet(FLAG_0x849) == TRUE)
)
return TRUE;
}
@@ -964,7 +964,7 @@ void sub_812B35C(void)
sub_812B4B8();
if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING))
HelpSystem_SetSomeVariable2(0x16);
else if (sub_812B2C4())
else if (IsInDungeonMap())
HelpSystem_SetSomeVariable2(0x15);
else if (is_light_level_8_or_9(gMapHeader.mapType))
{
@@ -974,9 +974,9 @@ void sub_812B35C(void)
HelpSystem_SetSomeVariable2(0x0F);
else if (IsCurMapPokeCenter() == TRUE)
HelpSystem_SetSomeVariable2(0x10);
else if (sub_812B25C() == TRUE)
else if (IsInMartMap() == TRUE)
HelpSystem_SetSomeVariable2(0x11);
else if (sub_812B26C() == TRUE)
else if (IsInGymMap() == TRUE)
HelpSystem_SetSomeVariable2(0x12);
else
HelpSystem_SetSomeVariable2(0x13);
@@ -1055,7 +1055,7 @@ static void sub_812B520(struct HelpSystemListMenu * a0, struct ListMenuItem * a1
u8 r4 = 0;
for (i = 0; i < 6; i++)
{
if (gUnknown_845C4B6[gUnknown_203B0EC][gUnknown_845C4B0[i]] == 1)
if (gUnknown_845C4B6[sSomeVariable][gUnknown_845C4B0[i]] == 1)
{
a1[r4].label = gUnknown_845B080[gUnknown_845C4B0[i]];
a1[r4].index = gUnknown_845C4B0[i];
@@ -1085,7 +1085,7 @@ static void sub_812B5A8(struct HelpSystemListMenu * a0, struct ListMenuItem * a1
static void sub_812B614(struct HelpSystemListMenu * a0, struct ListMenuItem * a1)
{
u8 r6 = 0;
const u8 * r3 = gUnknown_845B9E0[gUnknown_203B0EC * 5 + gUnknown_3005E9C[1]];
const u8 * r3 = gUnknown_845B9E0[sSomeVariable * 5 + gUnknown_3005E9C[1]];
u8 i;
for (i = 0; r3[i] != 0xFF; i++)
{
+6 -6
View File
@@ -191,7 +191,7 @@ void sub_80A1208(void)
struct MailStruct mail;
mail.itemId = gSpecialVar_ItemId;
sub_80BEBEC(&mail, ReturnToBagFromKeyItem, 0);
sub_80BEBEC(&mail, CB2_BagMenuFromStartMenu, 0);
}
void FieldUseFunc_MachBike(u8 taskId)
@@ -404,7 +404,7 @@ void FieldUseFunc_TmCase(u8 taskId)
void InitTMCaseFromBag(void)
{
InitTMCase(0, ReturnToBagFromKeyItem, 0);
InitTMCase(0, CB2_BagMenuFromStartMenu, 0);
}
void Task_InitTMCaseFromField(u8 taskId)
@@ -435,7 +435,7 @@ void FieldUseFunc_BerryPouch(u8 taskId)
void InitBerryPouchFromBag(void)
{
InitBerryPouch(BERRYPOUCH_FROMFIELD, ReturnToBagFromKeyItem, 0);
InitBerryPouch(BERRYPOUCH_FROMFIELD, CB2_BagMenuFromStartMenu, 0);
}
void Task_InitBerryPouchFromField(u8 taskId)
@@ -478,7 +478,7 @@ void FieldUseFunc_TeachyTv(u8 taskId)
void InitTeachyTvFromBag(void)
{
InitTeachyTvController(0, ReturnToBagFromKeyItem);
InitTeachyTvController(0, CB2_BagMenuFromStartMenu);
}
void Task_InitTeachyTvFromField(u8 taskId)
@@ -608,7 +608,7 @@ void FieldUseFunc_TownMap(u8 taskId)
void sub_80A1CAC(void)
{
sub_80BFF50(0, ReturnToBagFromKeyItem);
sub_80BFF50(0, CB2_BagMenuFromStartMenu);
}
void sub_80A1CC0(u8 taskId)
@@ -640,7 +640,7 @@ void FieldUseFunc_FameChecker(u8 taskId)
void sub_80A1D58(void)
{
UseFameChecker(ReturnToBagFromKeyItem);
UseFameChecker(CB2_BagMenuFromStartMenu);
}
void sub_80A1D68(u8 taskId)
+1 -1
View File
@@ -485,7 +485,7 @@ void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 x, u
AddTextPrinter(&printer, speed, callback);
}
void sub_812E6DC(u8 windowId, const u8 * src, u16 x, u16 y)
void Menu_PrintFormatIntlPlayerName(u8 windowId, const u8 * src, u16 x, u16 y)
{
s32 i;
+1 -1
View File
@@ -247,7 +247,7 @@ bool8 MEScrCmd_givepokemon(struct ScriptContext *ctx)
if (species == SPECIES_EGG)
StringCopyN(gStringVar1, gText_EggNickname, POKEMON_NAME_LENGTH + 1);
else
StringCopyN(gStringVar1, gText_Pokemon, POKEMON_NAME_LENGTH + 1);
StringCopyN(gStringVar1, gStartMenuText_Pokemon, POKEMON_NAME_LENGTH + 1);
if (gPlayerPartyCount == PARTY_SIZE)
{
+9 -9
View File
@@ -395,7 +395,7 @@ void ResetBg0(void)
ChangeBgX(0, 0, 0);
ChangeBgY(0, 0, 0);
DeactivateAllTextPrinters();
sub_80F6E9C();
LoadStdWindowFrameGfx();
}
u16 RunTextPrinters_CheckPrinter0Active(void)
@@ -452,7 +452,7 @@ void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonP
AddTextPrinterParameterized2(0, 2, gStringVar4, speed, NULL, 2, 1, 3);
}
void sub_80F6E9C(void)
void LoadStdWindowFrameGfx(void)
{
if (gUnknown_203ADFA == 2)
{
@@ -644,7 +644,7 @@ static u16 GetStdPalColor(u8 colorNum)
void DisplayItemMessageOnField(u8 taskId, u8 bgId, const u8 *string, TaskFunc callback)
{
sub_80F6E9C();
LoadStdWindowFrameGfx();
DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, bgId, GetTextSpeedSetting(), string, callback);
CopyWindowToVram(0, 3);
}
@@ -667,7 +667,7 @@ u8 GetTextSpeedSetting(void)
return gUnknown_841F428[gSaveBlock2Ptr->optionsTextSpeed];
}
u8 sub_80F78E0(u8 height)
u8 CreateStartMenuWindow(u8 height)
{
if (sStartMenuWindowId == 0xFF)
{
@@ -702,15 +702,15 @@ u16 GetStdWindowBaseTileNum(void)
return STD_WINDOW_BASE_TILE_NUM;
}
void sub_80F7974(const u8 * text)
void DrawHelpMessageWindowWithText(const u8 * text)
{
sub_814FE6C(sub_8112EB4(), DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM);
sub_8113018(text, 2);
sub_814FE6C(CreateHelpMessageWindow(), DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM);
PrintTextOnHelpMessageWindow(text, 2);
}
void sub_80F7998(void)
void DestroyHelpMessageWindow_(void)
{
sub_8112EDC(2);
DestroyHelpMessageWindow(2);
}
void sub_80F79A4(void)
+7 -7
View File
@@ -154,7 +154,7 @@ void sub_80EB6AC(void)
u8 taskId;
gPlayerPcMenuManager.unk_9 = 0;
sub_812B234();
HelpSystem_BackupSomeVariable();
sItemOrder = gUnknown_8402200;
sTopMenuItemCount = 3;
taskId = CreateTask(TaskDummy, 0);
@@ -166,7 +166,7 @@ void sub_80EB6FC(void)
u8 taskId;
gPlayerPcMenuManager.unk_9 = 1;
sub_812B234();
HelpSystem_BackupSomeVariable();
sItemOrder = gUnknown_8402203;
sTopMenuItemCount = 3;
taskId = CreateTask(TaskDummy, 0);
@@ -215,7 +215,7 @@ static void Task_TopMenuHandleInput(u8 taskId)
static void Task_ReturnToTopMenu(u8 taskId)
{
sub_812B248();
HelpSystem_RestoreSomeVariable();
DisplayItemMessageOnField(taskId, 2, gText_WhatWouldYouLikeToDo, Task_DrawPlayerPcTopMenu);
}
@@ -343,7 +343,7 @@ static void Task_ReturnToItemStorageSubmenu(u8 taskId)
static void CB2_ReturnFromDepositMenu(void)
{
u8 taskId;
sub_80F6E9C();
LoadStdWindowFrameGfx();
DrawDialogueFrame(0, TRUE);
taskId = CreateTask(Task_ReturnToItemStorageSubmenu, 0);
Task_CreateItemStorageSubmenu(taskId, 1);
@@ -372,7 +372,7 @@ static void Task_PlayerPcWithdrawItem(u8 taskId)
static void CB2_ReturnFromWithdrawMenu(void)
{
u8 taskId;
sub_80F6E9C();
LoadStdWindowFrameGfx();
DrawDialogueFrame(0, TRUE);
taskId = CreateTask(Task_ReturnToItemStorageSubmenu, 0);
Task_CreateItemStorageSubmenu(taskId, 0);
@@ -584,7 +584,7 @@ static void CB2_ReturnToMailbox(void)
HelpSystem_SetSomeVariable2(34);
else
HelpSystem_SetSomeVariable2(30);
sub_80F6E9C();
LoadStdWindowFrameGfx();
taskId = CreateTask(Task_WaitFadeAndReturnToMailboxPcInputHandler, 0);
if (MailboxPC_InitBuffers(gPlayerPcMenuManager.count) == TRUE)
Task_DrawMailboxPcMenu(taskId);
@@ -700,7 +700,7 @@ static void CB2_ReturnToMailboxPc_UpdateScrollVariables(void)
}
}
Task_SetPageItemVars(taskId);
sub_80F6E9C();
LoadStdWindowFrameGfx();
if (MailboxPC_InitBuffers(gPlayerPcMenuManager.count) == TRUE)
Task_DrawMailboxPcMenu(taskId);
else
+19 -19
View File
@@ -109,7 +109,7 @@ EWRAM_DATA u8 gUnknown_203AF9A[64][2] = {{0}};
EWRAM_DATA u16 gUnknown_203B01A = 0;
EWRAM_DATA u16 gUnknown_203B01C = 0;
EWRAM_DATA u16 gUnknown_203B01E = 0;
EWRAM_DATA u8 gUnknown_203B020 = 0;
EWRAM_DATA u8 sHelpMessageWindowId = 0;
EWRAM_DATA struct UnkStruct_203B024 gUnknown_203B024 = {0};
EWRAM_DATA struct UnkStruct_203B044 gUnknown_203B044 = {0};
EWRAM_DATA u8 gUnknown_203B048 = 0;
@@ -2294,37 +2294,37 @@ void sub_8112E3C(u8 a0, struct UnkStruct_300201C * a1, u16 a2)
const u16 gUnknown_84566A8[] = INCBIN_U16("data/graphics/unknown_84566a8.bin");
const struct WindowTemplate gUnknown_8456928 = {
const struct WindowTemplate sHelpMessageWindowTemplate = {
0x00, 0, 15, 30, 5, 15, 0x008F
};
void MapNamePopupWindowIdSetDummy(void)
{
gUnknown_203B020 = 0xFF;
sHelpMessageWindowId = 0xFF;
}
u8 sub_8112EB4(void)
u8 CreateHelpMessageWindow(void)
{
if (gUnknown_203B020 == 0xFF)
if (sHelpMessageWindowId == 0xFF)
{
gUnknown_203B020 = AddWindow(&gUnknown_8456928);
PutWindowTilemap(gUnknown_203B020);
sHelpMessageWindowId = AddWindow(&sHelpMessageWindowTemplate);
PutWindowTilemap(sHelpMessageWindowId);
}
return gUnknown_203B020;
return sHelpMessageWindowId;
}
void sub_8112EDC(u8 a0)
void DestroyHelpMessageWindow(u8 a0)
{
if (gUnknown_203B020 != 0xFF)
if (sHelpMessageWindowId != 0xFF)
{
FillWindowPixelBuffer(gUnknown_203B020, 0x00);
ClearWindowTilemap(gUnknown_203B020);
FillWindowPixelBuffer(sHelpMessageWindowId, PIXEL_FILL(0));
ClearWindowTilemap(sHelpMessageWindowId);
if (a0)
CopyWindowToVram(gUnknown_203B020, a0);
CopyWindowToVram(sHelpMessageWindowId, a0);
RemoveWindow(gUnknown_203B020);
gUnknown_203B020 = 0xFF;
RemoveWindow(sHelpMessageWindowId);
sHelpMessageWindowId = 0xFF;
}
}
@@ -2460,7 +2460,7 @@ void sub_8112F18(u8 a0)
void sub_8112FD0(void)
{
sub_8112F18(gUnknown_203B020);
sub_8112F18(sHelpMessageWindowId);
}
const u8 gUnknown_8456930[3] = {
@@ -2469,15 +2469,15 @@ const u8 gUnknown_8456930[3] = {
void sub_8112FE4(const u8 * a0)
{
AddTextPrinterParameterized4(gUnknown_203B020, 0x02, 2, 5, 1, 1, gUnknown_8456930, -1, a0);
AddTextPrinterParameterized4(sHelpMessageWindowId, 0x02, 2, 5, 1, 1, gUnknown_8456930, -1, a0);
}
void sub_8113018(const u8 * text, u8 mode)
void PrintTextOnHelpMessageWindow(const u8 * text, u8 mode)
{
sub_8112FD0();
sub_8112FE4(text);
if (mode)
CopyWindowToVram(gUnknown_203B020, mode);
CopyWindowToVram(sHelpMessageWindowId, mode);
}
void sub_8113044(void)
+3 -3
View File
@@ -85,7 +85,7 @@ u16 gSaveUnusedVar;
u16 gSaveFileStatus;
void (*gGameContinueCallback)(void);
struct SaveBlockChunk gRamSaveSectionLocations[0xE];
u16 gUnknown_3005420;
u16 gSaveSucceeded;
EWRAM_DATA struct SaveSection gSaveDataBuffer = {0};
EWRAM_DATA u32 gSaveUnusedVar2 = 0;
@@ -702,11 +702,11 @@ u8 TrySavingData(u8 saveType)
else
goto OK; // really?
}
gUnknown_3005420 = 0xFF;
gSaveSucceeded = 0xFF;
return 0xFF;
OK:
gUnknown_3005420 = 1;
gSaveSucceeded = 1;
return 1;
}
+3 -3
View File
@@ -1284,14 +1284,14 @@ bool8 ScrCmd_loadhelp(struct ScriptContext *ctx)
if (msg == NULL)
msg = (const u8 *)ctx->data[0];
sub_80F7974(msg);
DrawHelpMessageWindowWithText(msg);
CopyWindowToVram(GetStartMenuWindowId(), 1);
return FALSE;
}
bool8 ScrCmd_unloadhelp(struct ScriptContext *ctx)
{
sub_80F7998();
DestroyHelpMessageWindow_();
return FALSE;
}
@@ -1566,7 +1566,7 @@ bool8 ScrCmd_braillemessage(struct ScriptContext *ctx)
if (ptr == NULL)
ptr = (u8 *)ctx->data[0];
sub_80F6E9C();
LoadStdWindowFrameGfx();
DrawDialogueFrame(0, 1);
AddTextPrinterParameterized(0, 6, ptr, 0, 1, 0, NULL);
return FALSE;
+1008
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -510,7 +510,7 @@ static void TeachyTvMainCallback(void)
ScheduleBgCopyTilemapToVram(1);
ScheduleBgCopyTilemapToVram(2);
ScheduleBgCopyTilemapToVram(3);
sub_812B1E0(9); // help system something
HelpSystem_SetSomeVariable(9); // help system something
BlendPalettes(0xFFFFFFFF, 0x10, 0);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, 0);
SetVBlankCallback(TeachyTvVblankHandler);
@@ -736,7 +736,7 @@ static void TeachyTvOptionListController(u8 taskId)
{
input = ListMenu_ProcessInput(data[0]);
ListMenuGetScrollAndRow(data[0], &sStaticResources.scrollOffset, &sStaticResources.selectedRow);
if ((JOY_NEW(SELECT_BUTTON) && sStaticResources.callback != ReturnToBagFromKeyItem))
if ((JOY_NEW(SELECT_BUTTON) && sStaticResources.callback != CB2_BagMenuFromStartMenu))
{
PlaySE(SE_SELECT);
TeachyTvQuitBeginFade(taskId);
+1 -1
View File
@@ -1278,7 +1278,7 @@ void sub_815E720(void)
sub_815EC0C();
windowId = AddWindow(gUnknown_847A218);
sub_80F6E9C();
LoadStdWindowFrameGfx();
DrawStdWindowFrame(windowId, FALSE);
AddTextPrinterParameterized(windowId, 2, gUnknown_83FE982, 0x4A, 0, 0xFF, NULL);
+4 -10
View File
@@ -53,19 +53,13 @@ gUnknown_3000E9C: @ 3000E9C
gUnknown_3000EA0: @ 3000EA0
.space 0x8
.align 2
.include "src/script.o"
.align 2
gUnknown_3000FA4: @ 3000FA4
.space 0x4
gUnknown_3000FA8: @ 3000FA8
.space 0x1
gUnknown_3000FA9: @ 3000FA9
.space 0x3
.include "src/start_menu.o"
.align 2
.include "src/tileset_anims.o"
.align 2
.include "src/sound.o"
.align 2
+5 -25
View File
@@ -576,33 +576,13 @@ gUnknown_20370DE: @ 20370DE
gUnknown_20370E0: @ 20370E0
.space 0x10
gUnknown_20370F0: @ 20370F0
.space 0x4
gUnknown_20370F4: @ 20370F4
.space 0x1
gUnknown_20370F5: @ 20370F5
.space 0x1
gUnknown_20370F6: @ 20370F6
.space 0x9
gUnknown_20370FF: @ 20370FF
.space 0x1
gUnknown_2037100: @ 2037100
.space 0x1
gUnknown_2037101: @ 2037101
.space 0x3
gUnknown_2037104: @ 2037104
.space 0x4
.align 2
.include "src/start_menu.o"
.align 2
.include "src/tileset_anims.o"
.align 2
.include "src/palette.o"
.align 2
.include "src/sound.o"
.align 2