Merge pull request #53 from PikalaxALT/mystery_gift_menu

Mystery gift menu
This commit is contained in:
PikalaxALT
2019-04-26 12:50:51 -04:00
committed by GitHub
51 changed files with 2121 additions and 3105 deletions
+1 -1
View File
@@ -423,7 +423,7 @@ sub_810BB74: @ 810BB74
lsrs r0, 24
movs r1, 0x64
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
pop {r0}
bx r0
thumb_func_end sub_810BB74
+1 -1
View File
@@ -1645,7 +1645,7 @@ _08010B2A:
ldrb r0, [r0]
cmp r0, 0
beq _08010B64
bl sub_80FA4F8
bl IsNoOneConnected
lsls r0, 24
cmp r0, 0
beq _08010B82
+3 -3
View File
@@ -765,7 +765,7 @@ _08080D3C:
cmp r2, 0x9
bne _08080D54
_08080D44:
bl sub_80098B8
bl CloseLink
bl HideFieldMessageBox
ldr r0, _08080D50 @ =sub_8080F78
b _08080D72
@@ -860,7 +860,7 @@ _08080DF6:
cmp r0, 0x9
bne _08080E20
_08080DFE:
bl sub_80098B8
bl CloseLink
_08080E02:
bl HideFieldMessageBox
ldr r0, _08080E18 @ =gTasks
@@ -2459,7 +2459,7 @@ sub_8081A90: @ 8081A90
lsls r0, 17
cmp r1, r0
ble _08081AC2
bl sub_80098B8
bl CloseLink
ldr r0, _08081ADC @ =c2_800ACD4
bl SetMainCallback2
adds r0, r4, 0
+1 -1
View File
@@ -3691,7 +3691,7 @@ _080CFDBA:
ldrb r0, [r0]
cmp r0, 0
beq _080CFDC6
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
_080CFDC6:
movs r0, 0x3
bl GetBgTilemapBuffer
+2 -2
View File
@@ -2742,14 +2742,14 @@ _080EDC0C:
bl DisableInterrupts
movs r0, 0
bl SetHBlankCallback
ldr r0, _080EDC3C @ =sub_8078914
ldr r0, _080EDC3C @ =CB2_InitTitleScreen
bl SetMainCallback2
_080EDC34:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_080EDC3C: .4byte sub_8078914
_080EDC3C: .4byte CB2_InitTitleScreen
thumb_func_end sub_80EDBE8
thumb_func_start sub_80EDC40
+1 -1
View File
@@ -1016,7 +1016,7 @@ _080E4EF4:
lsrs r0, 24
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
adds r4, 0x1
cmp r4, 0x7
ble _080E4EF4
+9 -9
View File
@@ -29,7 +29,7 @@ _08009498:
cmp r0, r1
beq _080094C4
bl sub_800B210
bl sub_80098B8
bl CloseLink
bl RestoreSerialTimer3IntrHandlers
movs r0, 0
b _080094CE
@@ -507,8 +507,8 @@ _080098B0: .4byte gUnknown_3003F30
_080098B4: .4byte gUnknown_3003F2C
thumb_func_end sub_8009804
thumb_func_start sub_80098B8
sub_80098B8: @ 80098B8
thumb_func_start CloseLink
CloseLink: @ 80098B8
push {r4,lr}
ldr r0, _080098DC @ =gReceivedRemoteLinkPlayers
movs r4, 0
@@ -529,7 +529,7 @@ _080098CC:
_080098DC: .4byte gReceivedRemoteLinkPlayers
_080098E0: .4byte gWirelessCommType
_080098E4: .4byte gLinkOpen
thumb_func_end sub_80098B8
thumb_func_end CloseLink
thumb_func_start TestBlockTransfer
TestBlockTransfer: @ 80098E8
@@ -1596,7 +1596,7 @@ _0800A100:
bne _0800A112
ldr r0, _0800A11C @ =gUnknown_3003EAC
strb r4, [r0]
bl sub_80098B8
bl CloseLink
_0800A112:
movs r6, 0
ldr r4, _0800A120 @ =gLinkPlayers
@@ -2122,7 +2122,7 @@ sub_800A4BC: @ 800A4BC
ldrb r0, [r0]
cmp r0, 0x1
bne _0800A4D4
bl sub_80FA4F8
bl IsNoOneConnected
lsls r0, 24
lsrs r0, 24
b _0800A4E2
@@ -2833,7 +2833,7 @@ _0800A9E6:
ldr r1, _0800AA1C @ =gUnknown_3003EAC
movs r0, 0x1
strb r0, [r1]
bl sub_80098B8
bl CloseLink
ldr r0, _0800AA20 @ =c2_800ACD4
bl SetMainCallback2
_0800A9F6:
@@ -3045,7 +3045,7 @@ _0800AB5C:
ldr r0, _0800AB90 @ =gLinkVSyncDisabled
movs r4, 0x1
strb r4, [r0]
bl sub_80098B8
bl CloseLink
ldr r1, _0800AB94 @ =gUnknown_3003F80
movs r0, 0
str r0, [r1]
@@ -3198,7 +3198,7 @@ _0800AC8E:
ldr r1, _0800ACB8 @ =gUnknown_3003EAC
movs r0, 0x1
strb r0, [r1]
bl sub_80098B8
bl CloseLink
_0800AC98:
pop {r0}
bx r0
+1 -1
View File
@@ -7855,7 +7855,7 @@ sub_8100E34: @ 8100E34
movs r0, 0x1
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl sub_8100E7C
movs r0, 0x1
+10 -10
View File
@@ -4012,8 +4012,8 @@ sub_80FA4EC: @ 80FA4EC
_080FA4F4: .4byte gUnknown_3005450
thumb_func_end sub_80FA4EC
thumb_func_start sub_80FA4F8
sub_80FA4F8: @ 80FA4F8
thumb_func_start IsNoOneConnected
IsNoOneConnected: @ 80FA4F8
push {lr}
movs r1, 0
ldr r0, _080FA50C @ =gUnknown_3005450
@@ -4027,7 +4027,7 @@ _080FA506:
bx r1
.align 2, 0
_080FA50C: .4byte gUnknown_3005450
thumb_func_end sub_80FA4F8
thumb_func_end IsNoOneConnected
thumb_func_start sub_80FA510
sub_80FA510: @ 80FA510
@@ -5152,7 +5152,7 @@ sub_80FAD98: @ 80FAD98
bne _080FAE30
ldr r6, _080FAE18 @ =gMain
ldr r1, [r6, 0x4]
ldr r0, _080FAE1C @ =sub_814208C
ldr r0, _080FAE1C @ =c2_mystery_gift_e_reader_run
cmp r1, r0
bne _080FADC0
ldr r1, _080FAE20 @ =gWirelessCommType
@@ -5193,13 +5193,13 @@ _080FADF8:
ldrb r0, [r7]
movs r0, 0x2
strb r0, [r7]
bl sub_80098B8
bl CloseLink
b _080FAE62
.align 2, 0
_080FAE10: .4byte gUnknown_3005450
_080FAE14: .4byte gUnknown_3005E10
_080FAE18: .4byte gMain
_080FAE1C: .4byte sub_814208C
_080FAE1C: .4byte c2_mystery_gift_e_reader_run
_080FAE20: .4byte gWirelessCommType
_080FAE24: .4byte c2_800ACD4
_080FAE28: .4byte 0x0000069e
@@ -9466,8 +9466,8 @@ _080FCE3C: .4byte 0x00001234
_080FCE40: .4byte gUnknown_843F274
thumb_func_end sub_80FCD74
thumb_func_start sub_80FCE44
sub_80FCE44: @ 80FCE44
thumb_func_start DestroyWirelessStatusIndicatorSprite
DestroyWirelessStatusIndicatorSprite: @ 80FCE44
push {r4,lr}
ldr r4, _080FCE90 @ =gSprites
ldr r3, _080FCE94 @ =gUnknown_203ACE4
@@ -9512,7 +9512,7 @@ _080FCE98: .4byte 0x00001234
_080FCE9C: .4byte gMain
_080FCEA0: .4byte gDummyOamData
_080FCEA4: .4byte 0x070003e8
thumb_func_end sub_80FCE44
thumb_func_end DestroyWirelessStatusIndicatorSprite
thumb_func_start sub_80FCEA8
sub_80FCEA8: @ 80FCEA8
@@ -9830,7 +9830,7 @@ _080FD072:
lsrs r0, 24
cmp r0, 0x1
bne _080FD106
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
_080FD106:
pop {r3}
mov r8, r3
+40 -40
View File
@@ -1071,7 +1071,7 @@ _0811615C:
.align 2, 0
_08116164: .4byte gUnknown_8457610
_08116168:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
bl sub_80F8DC0
adds r0, r5, 0
bl sub_81161E4
@@ -2347,7 +2347,7 @@ _08116C10:
strb r0, [r6, 0x8]
b _08116D06
_08116C68:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
adds r5, r6, 0
adds r5, 0x9
ldr r4, _08116C90 @ =gUnknown_8457754
@@ -2368,14 +2368,14 @@ _08116C68:
_08116C90: .4byte gUnknown_8457754
_08116C94: .4byte gSpecialVar_Result
_08116C98:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
ldr r0, _08116CA4 @ =gSpecialVar_Result
movs r1, 0x5
b _08116CDC
.align 2, 0
_08116CA4: .4byte gSpecialVar_Result
_08116CA8:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
adds r5, r6, 0
adds r5, 0x9
ldr r4, _08116CC4 @ =gUnknown_8457754
@@ -3911,8 +3911,8 @@ _081179C4: .4byte sub_81175BC
_081179C8: .4byte gTasks
thumb_func_end sub_81179A4
thumb_func_start sub_81179CC
sub_81179CC: @ 81179CC
thumb_func_start MEvent_CreateTask_Leader
MEvent_CreateTask_Leader: @ 81179CC
push {r4,lr}
adds r4, r0, 0
ldr r0, _081179FC @ =sub_8117A0C
@@ -3941,7 +3941,7 @@ _081179FC: .4byte sub_8117A0C
_08117A00: .4byte gUnknown_203B05C
_08117A04: .4byte gTasks+0x8
_08117A08: .4byte gSpecialVar_Result
thumb_func_end sub_81179CC
thumb_func_end MEvent_CreateTask_Leader
thumb_func_start sub_8117A0C
sub_8117A0C: @ 8117A0C
@@ -4056,7 +4056,7 @@ _08117AB8:
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
bl sub_81435D4
bl GetMysteryGiftBaseBlock
lsls r0, 16
ldr r2, _08117B70 @ =0x0000ffff
ldr r1, [sp, 0x4]
@@ -4067,7 +4067,7 @@ _08117AB8:
bl AddWindow
strb r0, [r5, 0xF]
ldrb r0, [r5, 0xF]
bl sub_814240C
bl MG_DrawTextBorder
ldr r0, _08117B74 @ =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, _08117B78 @ =gUnknown_8456D34
@@ -4113,7 +4113,7 @@ _08117BA4: .4byte gUnknown_203B058
_08117BA8: .4byte gStringVar4
_08117BAC:
ldr r0, _08117BB8 @ =gStringVar4
bl sub_8142504
bl AddTextPrinterToWindow1
movs r0, 0x4
strb r0, [r5, 0xC]
b _08117ECA
@@ -4134,7 +4134,7 @@ _08117BBC:
_08117BD4:
movs r0, 0xD
strb r0, [r5, 0xC]
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
b _08117ECA
.align 2, 0
_08117BE0: .4byte gMain
@@ -4142,7 +4142,7 @@ _08117BE4:
adds r0, r5, 0
adds r0, 0xD
ldr r1, _08117C08 @ =gUnknown_84577F8
bl mevent_0814257C
bl MG_PrintTextOnWindow1AndWaitButton
cmp r0, 0
bne _08117BF4
b _08117ECA
@@ -4169,7 +4169,7 @@ _08117C12:
adds r1, 0x14
ldr r3, _08117C38 @ =gStringVar4
movs r2, 0
bl sub_81427A0
bl mevent_message_print_and_prompt_yes_no
lsls r0, 24
asrs r4, r0, 24
cmp r4, 0
@@ -4346,7 +4346,7 @@ _08117D88:
b _08117ECA
_08117D94:
ldr r0, _08117DA0 @ =gStringVar4
bl sub_8142504
bl AddTextPrinterToWindow1
movs r0, 0xA
strb r0, [r5, 0xC]
b _08117ECA
@@ -4393,7 +4393,7 @@ _08117DE8:
strb r0, [r5, 0xC]
b _08117ECA
_08117DEE:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
bl sub_80F8DC0
ldrb r0, [r5, 0x12]
movs r1, 0
@@ -4416,7 +4416,7 @@ _08117E26:
adds r0, r5, 0
adds r0, 0xD
ldr r1, _08117E44 @ =gUnknown_84571B8
bl mevent_0814257C
bl MG_PrintTextOnWindow1AndWaitButton
cmp r0, 0
beq _08117ECA
adds r0, r4, 0
@@ -4490,8 +4490,8 @@ _08117ECA:
bx r0
thumb_func_end sub_8117A0C
thumb_func_start sub_8117ED4
sub_8117ED4: @ 8117ED4
thumb_func_start MEvent_CreateTask_CardOrNewsWithFriend
MEvent_CreateTask_CardOrNewsWithFriend: @ 8117ED4
push {r4,lr}
adds r4, r0, 0
ldr r0, _08117F0C @ =sub_8117F20
@@ -4524,7 +4524,7 @@ _08117F10: .4byte gUnknown_203B05C
_08117F14: .4byte gTasks+0x8
_08117F18: .4byte gUnknown_3002028
_08117F1C: .4byte gSpecialVar_Result
thumb_func_end sub_8117ED4
thumb_func_end MEvent_CreateTask_CardOrNewsWithFriend
thumb_func_start sub_8117F20
sub_8117F20: @ 8117F20
@@ -4585,7 +4585,7 @@ _08117F7C:
b _08118288
_08117FB0:
ldr r0, _08117FBC @ =gUnknown_8458FE4
bl sub_8142504
bl AddTextPrinterToWindow1
movs r0, 0x2
strb r0, [r5, 0x8]
b _08118288
@@ -4609,7 +4609,7 @@ _08117FC0:
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
bl sub_81435D4
bl GetMysteryGiftBaseBlock
lsls r0, 16
ldr r2, _08118060 @ =0x0000ffff
ldr r1, [sp, 0x4]
@@ -4623,7 +4623,7 @@ _08117FC0:
bl AddWindow
strb r0, [r5, 0xD]
ldrb r0, [r5, 0xB]
bl sub_814240C
bl MG_DrawTextBorder
ldr r0, _08118068 @ =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, _0811806C @ =gUnknown_8456DDC
@@ -4638,7 +4638,7 @@ _08117FC0:
bl ListMenuInit
strb r0, [r5, 0xE]
ldrb r0, [r5, 0xD]
bl sub_814240C
bl MG_DrawTextBorder
ldrb r0, [r5, 0xD]
movs r1, 0x11
bl FillWindowPixelBuffer
@@ -4766,7 +4766,7 @@ _08118146:
_0811814C: .4byte gMain
_08118150:
ldr r0, _08118184 @ =gUnknown_8459238
bl sub_8142504
bl AddTextPrinterToWindow1
ldr r4, _08118188 @ =gStringVar1
ldrb r0, [r5, 0xF]
lsls r0, 5
@@ -4831,7 +4831,7 @@ _081181D0:
b _08118288
_081181D6:
ldr r0, _081181E8 @ =gUnknown_84576AC
bl sub_8142504
bl AddTextPrinterToWindow1
movs r0, 0
movs r1, 0
bl sub_80FB9E4
@@ -4868,17 +4868,17 @@ _08118222:
adds r0, r4
ldr r1, [r0]
adds r0, r5, 0
bl mevent_0814257C
bl MG_PrintTextOnWindow1AndWaitButton
cmp r0, 0
beq _08118288
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
b _08118252
.align 2, 0
_08118244: .4byte gUnknown_8457838
_08118248:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
ldr r0, _08118264 @ =gUnknown_84571B8
bl sub_8142504
bl AddTextPrinterToWindow1
_08118252:
adds r0, r6, 0
bl DestroyTask
@@ -4910,8 +4910,8 @@ _08118288:
bx r0
thumb_func_end sub_8117F20
thumb_func_start sub_8118290
sub_8118290: @ 8118290
thumb_func_start MEvent_CreateTask_CardOrNewsOverWireless
MEvent_CreateTask_CardOrNewsOverWireless: @ 8118290
push {r4,lr}
adds r4, r0, 0
ldr r0, _081182C8 @ =sub_81182DC
@@ -4944,7 +4944,7 @@ _081182CC: .4byte gUnknown_203B05C
_081182D0: .4byte gTasks+0x8
_081182D4: .4byte gUnknown_3002028
_081182D8: .4byte gSpecialVar_Result
thumb_func_end sub_8118290
thumb_func_end MEvent_CreateTask_CardOrNewsOverWireless
thumb_func_start sub_81182DC
sub_81182DC: @ 81182DC
@@ -5004,7 +5004,7 @@ _08118340:
b _08118604
_0811836E:
ldr r0, _0811837C @ =gUnknown_84591DC
bl sub_8142504
bl AddTextPrinterToWindow1
movs r0, 0x2
strb r0, [r5, 0x8]
b _08118604
@@ -5030,7 +5030,7 @@ _08118380:
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
bl sub_81435D4
bl GetMysteryGiftBaseBlock
lsls r0, 16
ldr r2, _081183FC @ =0x0000ffff
ldr r1, [sp, 0x4]
@@ -5041,7 +5041,7 @@ _08118380:
bl AddWindow
strb r0, [r5, 0xB]
ldrb r0, [r5, 0xB]
bl sub_814240C
bl MG_DrawTextBorder
ldr r0, _08118400 @ =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, _08118404 @ =gUnknown_8456DDC
@@ -5163,7 +5163,7 @@ _081184BC:
_081184C4: .4byte gMain
_081184C8:
ldr r0, _081184FC @ =gUnknown_845928C
bl sub_8142504
bl AddTextPrinterToWindow1
ldr r4, _08118500 @ =gStringVar1
ldrb r0, [r5, 0xF]
lsls r0, 5
@@ -5228,7 +5228,7 @@ _08118548:
b _08118604
_0811854E:
ldr r0, _08118560 @ =gUnknown_845777C
bl sub_8142504
bl AddTextPrinterToWindow1
movs r0, 0
movs r1, 0
bl sub_80FB9E4
@@ -5281,10 +5281,10 @@ _081185B4:
adds r1, r2
ldr r1, [r1]
_081185C2:
bl mevent_0814257C
bl MG_PrintTextOnWindow1AndWaitButton
cmp r0, 0
beq _08118604
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
adds r0, r4, 0
bl DestroyTask
bl sub_80F8DC0
@@ -12797,7 +12797,7 @@ _0811C168:
movs r0, 0
movs r1, 0x1
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
str r5, [sp]
movs r0, 0
adds r1, r6, 0
-2316
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -60,7 +60,7 @@ _08106F24:
lsls r2, 24
lsrs r2, 24
ldr r1, [sp, 0x4]
bl sub_8150048
bl DrawTextBorderOuter
_08106F34:
ldr r0, _08106F64 @ =gMultiuseListMenuTemplate
adds r2, r0, 0
@@ -1635,8 +1635,8 @@ sub_8107A9C: @ 8107A9C
_08107AE8: .4byte gUnknown_3005E60
thumb_func_end sub_8107A9C
thumb_func_start sub_8107AEC
sub_8107AEC: @ 8107AEC
thumb_func_start ListMenuDefaultCursorMoveFunc
ListMenuDefaultCursorMoveFunc: @ 8107AEC
push {lr}
lsls r1, 24
cmp r1, 0
@@ -1646,7 +1646,7 @@ sub_8107AEC: @ 8107AEC
_08107AFA:
pop {r0}
bx r0
thumb_func_end sub_8107AEC
thumb_func_end ListMenuDefaultCursorMoveFunc
thumb_func_start sub_8107B00
sub_8107B00: @ 8107B00
+4 -4
View File
@@ -1005,7 +1005,7 @@ _0800CB64: .4byte gPlttBufferUnfaded
_0800CB68: .4byte gPlttBufferFaded
_0800CB6C: .4byte gUnknown_2031DE0
_0800CB70:
ldr r0, _0800CB8C @ =sub_81422AC
ldr r0, _0800CB8C @ =c2_mystery_gift
bl SetMainCallback2
bl sub_812B478
bl FreeAllWindowBuffers
@@ -1017,7 +1017,7 @@ _0800CB84:
pop {r0}
bx r0
.align 2, 0
_0800CB8C: .4byte sub_81422AC
_0800CB8C: .4byte c2_mystery_gift
thumb_func_end sub_800CA94
thumb_func_start sub_800CB90
@@ -1141,7 +1141,7 @@ sub_800CC68: @ 800CC68
ands r0, r1
cmp r0, 0
bne _0800CC86
ldr r0, _0800CC90 @ =sub_8078914
ldr r0, _0800CC90 @ =CB2_InitTitleScreen
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
@@ -1151,7 +1151,7 @@ _0800CC86:
bx r0
.align 2, 0
_0800CC8C: .4byte gPaletteFade
_0800CC90: .4byte sub_8078914
_0800CC90: .4byte CB2_InitTitleScreen
thumb_func_end sub_800CC68
thumb_func_start sub_800CC94
+1 -1
View File
@@ -360,7 +360,7 @@ _080983C6:
adds r0, r4, 0
adds r1, r6, 0
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
adds r0, r4, 0
bl PutWindowTilemap
adds r0, r5, 0
-410
View File
@@ -1,410 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_8142078
sub_8142078: @ 8142078
push {lr}
bl ProcessSpriteCopyRequests
bl LoadOam
bl TransferPlttBuffer
pop {r0}
bx r0
thumb_func_end sub_8142078
thumb_func_start sub_814208C
sub_814208C: @ 814208C
push {lr}
bl RunTasks
bl RunTextPrinters
bl AnimateSprites
bl BuildOamBuffer
pop {r0}
bx r0
thumb_func_end sub_814208C
thumb_func_start sub_81420A4
sub_81420A4: @ 81420A4
push {r4-r7,lr}
sub sp, 0xC
adds r7, r0, 0
ldr r0, _081420C4 @ =gMain
movs r1, 0x87
lsls r1, 3
adds r6, r0, r1
ldrb r5, [r6]
cmp r5, 0x1
bne _081420BA
b _081421EC
_081420BA:
cmp r5, 0x1
bgt _081420C8
cmp r5, 0
beq _081420D6
b _081422A0
.align 2, 0
_081420C4: .4byte gMain
_081420C8:
cmp r5, 0x2
bne _081420CE
b _08142254
_081420CE:
cmp r5, 0x3
bne _081420D4
b _08142274
_081420D4:
b _081422A0
_081420D6:
movs r0, 0
bl SetVBlankCallback
bl ResetPaletteFade
bl ResetSpriteData
bl FreeAllSpritePalettes
bl ResetTasks
bl ScanlineEffect_Stop
movs r0, 0x1
bl ResetBgsAndClearDma3BusyFlags
ldr r1, _081421E0 @ =gUnknown_8466D60
movs r0, 0
movs r2, 0x4
bl InitBgsFromTemplates
movs r0, 0
movs r1, 0
movs r2, 0
bl ChangeBgX
movs r0, 0
movs r1, 0
movs r2, 0
bl ChangeBgY
movs r0, 0x1
movs r1, 0
movs r2, 0
bl ChangeBgX
movs r0, 0x1
movs r1, 0
movs r2, 0
bl ChangeBgY
movs r0, 0x2
movs r1, 0
movs r2, 0
bl ChangeBgX
movs r0, 0x2
movs r1, 0
movs r2, 0
bl ChangeBgY
movs r0, 0x3
movs r1, 0
movs r2, 0
bl ChangeBgX
movs r0, 0x3
movs r1, 0
movs r2, 0
bl ChangeBgY
movs r4, 0x80
lsls r4, 4
adds r0, r4, 0
bl Alloc
adds r1, r0, 0
movs r0, 0x3
bl SetBgTilemapBuffer
adds r0, r4, 0
bl Alloc
adds r1, r0, 0
movs r0, 0x2
bl SetBgTilemapBuffer
adds r0, r4, 0
bl Alloc
adds r1, r0, 0
movs r0, 0x1
bl SetBgTilemapBuffer
adds r0, r4, 0
bl Alloc
adds r1, r0, 0
movs r0, 0
bl SetBgTilemapBuffer
movs r0, 0
movs r1, 0xA
movs r2, 0xE0
bl sub_814FE40
movs r0, 0
movs r1, 0x1
movs r2, 0xF0
bl sub_814FDA0
ldr r1, _081421E4 @ =gUnknown_8466D30
movs r2, 0x80
lsls r2, 1
str r5, [sp]
movs r0, 0x3
movs r3, 0
bl sub_80F696C
ldr r0, _081421E8 @ =gUnknown_8466D70
bl InitWindows
bl DeactivateAllTextPrinters
movs r1, 0xC0
lsls r1, 7
movs r0, 0
bl ClearGpuRegBits
movs r0, 0x50
movs r1, 0
bl SetGpuReg
movs r0, 0x52
movs r1, 0
bl SetGpuReg
movs r0, 0x54
movs r1, 0
bl SetGpuReg
b _0814226C
.align 2, 0
_081421E0: .4byte gUnknown_8466D60
_081421E4: .4byte gUnknown_8466D30
_081421E8: .4byte gUnknown_8466D70
_081421EC:
ldr r0, _08142250 @ =gUnknown_8466D10
movs r1, 0
movs r2, 0x20
bl LoadPalette
movs r0, 0x2
bl stdpal_get
movs r1, 0xD0
movs r2, 0x20
bl LoadPalette
movs r4, 0x20
str r4, [sp]
str r4, [sp, 0x4]
movs r5, 0x11
str r5, [sp, 0x8]
movs r0, 0
movs r1, 0
movs r2, 0
movs r3, 0
bl FillBgTilemapBufferRect
str r4, [sp]
str r4, [sp, 0x4]
str r5, [sp, 0x8]
movs r0, 0x1
movs r1, 0
movs r2, 0
movs r3, 0
bl FillBgTilemapBufferRect
str r4, [sp]
str r4, [sp, 0x4]
str r5, [sp, 0x8]
movs r0, 0x2
movs r1, 0
movs r2, 0
movs r3, 0
bl FillBgTilemapBufferRect
bl sub_8142420
lsls r0, r7, 24
lsrs r0, 24
movs r1, 0
bl sub_8142344
b _0814226C
.align 2, 0
_08142250: .4byte gUnknown_8466D10
_08142254:
movs r0, 0x3
bl CopyBgTilemapBufferToVram
movs r0, 0x2
bl CopyBgTilemapBufferToVram
movs r0, 0x1
bl CopyBgTilemapBufferToVram
movs r0, 0
bl CopyBgTilemapBufferToVram
_0814226C:
ldrb r0, [r6]
adds r0, 0x1
strb r0, [r6]
b _081422A0
_08142274:
movs r0, 0
bl ShowBg
movs r0, 0x3
bl ShowBg
ldr r0, _08142298 @ =0x00000149
bl PlayBGM
ldr r0, _0814229C @ =sub_8142078
bl SetVBlankCallback
movs r0, 0xC5
bl EnableInterrupts
movs r0, 0x1
b _081422A2
.align 2, 0
_08142298: .4byte 0x00000149
_0814229C: .4byte sub_8142078
_081422A0:
movs r0, 0
_081422A2:
add sp, 0xC
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end sub_81420A4
thumb_func_start sub_81422AC
sub_81422AC: @ 81422AC
push {lr}
movs r0, 0
bl sub_81420A4
cmp r0, 0
beq _081422C8
ldr r0, _081422CC @ =sub_814208C
bl SetMainCallback2
ldr r1, _081422D0 @ =gUnknown_203F3B8
movs r0, 0
strb r0, [r1]
bl task_add_00_mystery_gift
_081422C8:
pop {r0}
bx r0
.align 2, 0
_081422CC: .4byte sub_814208C
_081422D0: .4byte gUnknown_203F3B8
thumb_func_end sub_81422AC
thumb_func_start sub_81422D4
sub_81422D4: @ 81422D4
push {lr}
movs r0, 0x1
bl sub_81420A4
cmp r0, 0
beq _081422F0
ldr r0, _081422F4 @ =sub_814208C
bl SetMainCallback2
ldr r1, _081422F8 @ =gUnknown_203F3B8
movs r0, 0x1
strb r0, [r1]
bl sub_81438A0
_081422F0:
pop {r0}
bx r0
.align 2, 0
_081422F4: .4byte sub_814208C
_081422F8: .4byte gUnknown_203F3B8
thumb_func_end sub_81422D4
thumb_func_start sub_81422FC
sub_81422FC: @ 81422FC
push {lr}
ldr r1, _0814233C @ =gUnknown_203F3B8
movs r0, 0
strb r0, [r1]
bl FreeAllWindowBuffers
movs r0, 0
bl GetBgTilemapBuffer
bl Free
movs r0, 0x1
bl GetBgTilemapBuffer
bl Free
movs r0, 0x2
bl GetBgTilemapBuffer
bl Free
movs r0, 0x3
bl GetBgTilemapBuffer
bl Free
ldr r0, _08142340 @ =sub_8078914
bl SetMainCallback2
pop {r0}
bx r0
.align 2, 0
_0814233C: .4byte gUnknown_203F3B8
_08142340: .4byte sub_8078914
thumb_func_end sub_81422FC
thumb_func_start sub_8142344
sub_8142344: @ 8142344
push {r4-r6,lr}
sub sp, 0x14
adds r4, r1, 0
lsls r0, 24
lsrs r5, r0, 24
movs r0, 0
movs r1, 0
bl FillWindowPixelBuffer
cmp r5, 0
bne _081423B4
ldr r6, _081423A4 @ =gUnknown_841EDCA
cmp r4, 0x1
bne _08142362
ldr r6, _081423A8 @ =gUnknown_8415F51
_08142362:
str r5, [sp]
str r5, [sp, 0x4]
ldr r4, _081423AC @ =gUnknown_8466EE8
str r4, [sp, 0x8]
str r5, [sp, 0xC]
ldr r0, _081423B0 @ =gUnknown_841EDBD
str r0, [sp, 0x10]
movs r0, 0
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParametrized2
movs r0, 0
adds r1, r6, 0
movs r2, 0
bl GetStringWidth
movs r2, 0xDE
subs r2, r0
lsls r2, 24
lsrs r2, 24
str r5, [sp]
str r5, [sp, 0x4]
str r4, [sp, 0x8]
str r5, [sp, 0xC]
str r6, [sp, 0x10]
movs r0, 0
movs r1, 0
movs r3, 0x2
bl AddTextPrinterParametrized2
b _081423E8
.align 2, 0
_081423A4: .4byte gUnknown_841EDCA
_081423A8: .4byte gUnknown_8415F51
_081423AC: .4byte gUnknown_8466EE8
_081423B0: .4byte gUnknown_841EDBD
_081423B4:
movs r4, 0
str r4, [sp]
str r4, [sp, 0x4]
ldr r5, _08142400 @ =gUnknown_8466EE8
str r5, [sp, 0x8]
str r4, [sp, 0xC]
ldr r0, _08142404 @ =gUnknown_841DE50
str r0, [sp, 0x10]
movs r0, 0
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParametrized2
str r4, [sp]
str r4, [sp, 0x4]
str r5, [sp, 0x8]
str r4, [sp, 0xC]
ldr r0, _08142408 @ =gUnknown_841DE51
str r0, [sp, 0x10]
movs r0, 0
movs r1, 0
movs r2, 0x78
movs r3, 0x2
bl AddTextPrinterParametrized2
_081423E8:
movs r0, 0
movs r1, 0x2
bl CopyWindowToVram
movs r0, 0
bl PutWindowTilemap
add sp, 0x14
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_08142400: .4byte gUnknown_8466EE8
_08142404: .4byte gUnknown_841DE50
_08142408: .4byte gUnknown_841DE51
thumb_func_end sub_8142344
.align 2, 0 @ Don't pad with nop.
+1 -1
View File
@@ -3890,7 +3890,7 @@ sub_80569BC: @ 80569BC
lsrs r0, 24
cmp r0, 0x1
bne _080569CE
bl sub_80098B8
bl CloseLink
_080569CE:
ldr r0, _080569E4 @ =gWirelessCommType
ldrb r0, [r0]
+4 -4
View File
@@ -1545,7 +1545,7 @@ sub_810317C: @ 810317C
movs r0, 0x1
movs r1, 0xFF
bl FillWindowPixelBuffer
ldr r0, _08103234 @ =gUnknown_8415F51
ldr r0, _08103234 @ =gText_PickOKExit
bl sub_8104C2C
movs r0, 0
movs r1, 0x2
@@ -1562,7 +1562,7 @@ _08103224: .4byte gUnknown_845216C
_08103228: .4byte gUnknown_203ACF0
_0810322C: .4byte gUnknown_8452174
_08103230: .4byte gUnknown_8415F3D
_08103234: .4byte gUnknown_8415F51
_08103234: .4byte gText_PickOKExit
thumb_func_end sub_810317C
thumb_func_start sub_8103238
@@ -1874,7 +1874,7 @@ sub_810345C: @ 810345C
movs r0, 0x1
movs r1, 0xFF
bl FillWindowPixelBuffer
ldr r0, _08103514 @ =gUnknown_8415F51
ldr r0, _08103514 @ =gText_PickOKExit
bl sub_8104C2C
movs r0, 0
movs r1, 0x2
@@ -1891,7 +1891,7 @@ _08103504: .4byte gUnknown_845216C
_08103508: .4byte gUnknown_203ACF0
_0810350C: .4byte gUnknown_8452174
_08103510: .4byte gUnknown_8415F4A
_08103514: .4byte gUnknown_8415F51
_08103514: .4byte gText_PickOKExit
thumb_func_end sub_810345C
thumb_func_start sub_8103518
+2 -2
View File
@@ -1688,7 +1688,7 @@ sub_811D2A8: @ 811D2A8
movs r0, 0
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
movs r1, 0x3
bl CopyWindowToVram
@@ -2285,7 +2285,7 @@ sub_811D764: @ 811D764
movs r0, 0x1
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0x2
str r0, [sp]
movs r0, 0x3
+1 -1
View File
@@ -8311,7 +8311,7 @@ _0808FC7C:
movs r0, 0x1
movs r1, 0x2
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0x1
+1 -1
View File
@@ -4215,7 +4215,7 @@ sub_81417E4: @ 81417E4
movs r0, 0
movs r1, 0x1
movs r2, 0xF
bl sub_8150048
bl DrawTextBorderOuter
movs r1, 0x2
str r1, [sp]
movs r0, 0xFF
+1 -1
View File
@@ -1912,7 +1912,7 @@ _0806FC14:
movs r0, 0
movs r1, 0x8
movs r2, 0xF
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl PutWindowTilemap
movs r0, 0
+3 -3
View File
@@ -440,8 +440,8 @@ sub_815001C: @ 815001C
_08150044: .4byte gSaveBlock2Ptr
thumb_func_end sub_815001C
thumb_func_start sub_8150048
sub_8150048: @ 8150048
thumb_func_start DrawTextBorderOuter
DrawTextBorderOuter: @ 8150048
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -625,7 +625,7 @@ sub_8150048: @ 8150048
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end sub_8150048
thumb_func_end DrawTextBorderOuter
thumb_func_start sub_81501D0
sub_81501D0: @ 81501D0
+3 -3
View File
@@ -5,8 +5,8 @@
.text
thumb_func_start sub_8078914
sub_8078914: @ 8078914
thumb_func_start CB2_InitTitleScreen
CB2_InitTitleScreen: @ 8078914
push {r4-r6,lr}
sub sp, 0xC
ldr r0, _08078930 @ =gMain
@@ -230,7 +230,7 @@ _08078B26:
bx r0
.align 2, 0
_08078B30: .4byte gMain
thumb_func_end sub_8078914
thumb_func_end CB2_InitTitleScreen
thumb_func_start sub_8078B34
sub_8078B34: @ 8078B34
+10 -10
View File
@@ -422,7 +422,7 @@ _0804C9B0:
ldrb r0, [r0]
cmp r0, 0
beq _0804C9E8
bl sub_80FA4F8
bl IsNoOneConnected
lsls r0, 24
cmp r0, 0
bne _0804C9C4
@@ -1832,7 +1832,7 @@ sub_804D5A4: @ 804D5A4
ldrb r0, [r0]
cmp r0, 0
beq _0804D5FC
bl sub_80FA4F8
bl IsNoOneConnected
lsls r0, 24
cmp r0, 0
beq _0804D620
@@ -1845,7 +1845,7 @@ sub_804D5A4: @ 804D5A4
bl Free
movs r0, 0
str r0, [r5]
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
ldr r0, _0804D5F8 @ =sub_8050138
bl SetMainCallback2
b _0804D620
@@ -3369,7 +3369,7 @@ _0804E208:
movs r0, 0x1
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0x1
movs r1, 0x11
bl FillWindowPixelBuffer
@@ -4296,7 +4296,7 @@ sub_804E944: @ 804E944
ldr r0, [r0]
bl Free
bl FreeAllWindowBuffers
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
ldr r0, _0804E984 @ =c2_8056854
bl SetMainCallback2
b _0804E9AA
@@ -5876,7 +5876,7 @@ sub_804F5BC: @ 804F5BC
movs r0, 0
movs r1, 0x14
movs r2, 0xC
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl PutWindowTilemap
movs r0, 0
@@ -7178,7 +7178,7 @@ _0804FF7A:
lsls r0, 1
cmp r1, r0
bls _0804FFAC
bl sub_80098B8
bl CloseLink
ldr r0, _0804FFC0 @ =c2_800ACD4
bl SetMainCallback2
ldr r1, [r4]
@@ -7432,7 +7432,7 @@ _08050194:
ldr r2, _08050230 @ =0x00001144
adds r0, r2, 0
strh r0, [r1]
bl sub_80098B8
bl CloseLink
_080501A8:
ldr r4, _08050234 @ =gUnknown_2031DAC
movs r0, 0x88
@@ -14745,7 +14745,7 @@ _0805434C:
ldr r0, _08054378 @ =sub_804C718
cmp r1, r0
bne _08054384
bl sub_80FA4F8
bl IsNoOneConnected
lsls r0, 24
cmp r0, 0
beq _08054396
@@ -14819,7 +14819,7 @@ sub_80543C4: @ 80543C4
ldrb r0, [r0]
cmp r0, 0
beq _08054412
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
_08054412:
ldr r0, _0805443C @ =gMain
ldr r0, [r0, 0x8]
+3 -3
View File
@@ -4288,7 +4288,7 @@ sub_812A424: @ 812A424
ldrb r0, [r0, 0x18]
movs r1, 0x1
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
ldr r0, [r6]
ldrb r0, [r0, 0x18]
movs r1, 0xE
@@ -4524,7 +4524,7 @@ _0812A6B0:
adds r0, r5, 0
movs r1, 0xA
movs r2, 0x2
bl sub_8150048
bl DrawTextBorderOuter
ldrb r3, [r4, 0x5]
ldrb r0, [r4, 0x6]
str r0, [sp]
@@ -4980,7 +4980,7 @@ sub_812AA10: @ 812AA10
movs r0, 0x3
movs r1, 0x1
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
ldr r0, _0812AA60 @ =gUnknown_845ABEC
str r0, [sp]
movs r0, 0x3
+6 -6
View File
@@ -5179,7 +5179,7 @@ _0814A124:
ldrb r0, [r0, 0x12]
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0x17
movs r1, 0x7
movs r2, 0
@@ -5265,7 +5265,7 @@ _0814A1D0:
ldrb r0, [r0, 0x12]
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl CopyBgTilemapBufferToVram
_0814A1F4:
@@ -5386,7 +5386,7 @@ _0814A2C0:
ldrb r0, [r0, 0x12]
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl CopyBgTilemapBufferToVram
_0814A2E4:
@@ -5468,7 +5468,7 @@ _0814A364:
ldrb r0, [r0, 0x12]
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl CopyBgTilemapBufferToVram
_0814A388:
@@ -5839,7 +5839,7 @@ _0814A652:
ldrb r0, [r0, 0x12]
movs r1, 0x1
movs r2, 0xE
bl sub_8150048
bl DrawTextBorderOuter
movs r0, 0
bl CopyBgTilemapBufferToVram
ldr r1, [r4]
@@ -7934,7 +7934,7 @@ sub_814B5C4: @ 814B5C4
adds r0, r4, 0
adds r1, r5, 0
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
adds r0, r4, 0
movs r1, 0x11
bl FillWindowPixelBuffer
+1 -1
View File
@@ -424,7 +424,7 @@ _0814D962:
bl ClearGpuRegBits
b _0814D9BA
_0814D9A2:
bl sub_80FCE44
bl DestroyWirelessStatusIndicatorSprite
adds r0, r5, 0
bl sub_814EF10
bl sub_815C9F4
+1 -1
View File
@@ -6478,7 +6478,7 @@ sub_81538D0: @ 81538D0
adds r0, r7, 0
adds r1, r4, 0
movs r2, 0xD
bl sub_8150048
bl DrawTextBorderOuter
adds r0, r7, 0
movs r1, 0x11
bl FillWindowPixelBuffer
+83 -57
View File
@@ -644,7 +644,7 @@ gUnknown_8415F3D:: @ 8415F3D
gUnknown_8415F4A:: @ 8415F4A
.incbin "baserom.gba", 0x415F4A, 0x7
gUnknown_8415F51:: @ 8415F51
gText_PickOKExit:: @ 8415F51
.incbin "baserom.gba", 0x415F51, 0x15
gUnknown_8415F66:: @ 8415F66
@@ -2252,10 +2252,10 @@ gUnknown_841D18D:: @ 841D18D
gUnknown_841D198:: @ 841D198
.incbin "baserom.gba", 0x41D198, 0xCB8
gUnknown_841DE50:: @ 841DE50
gJPText_MysteryGift:: @ 841DE50
.string "$"
gUnknown_841DE51:: @ 841DE51
gJPText_DecideStop:: @ 841DE51
.string "$"
gUnknown_841DE52:: @ 841DE52
@@ -2432,155 +2432,181 @@ gFameCheckerBillName:: @ 841E5F3
gFameCheckerMrFujiName:: @ 841E5F8
.string "FUJI$"
gUnknown_841E5FD:: @ 841E5FD
.string "A variety of events will be imported\nover Wireless Communication.$"
gText_VarietyOfEventsImportedWireless:: @ 841E5FD
.string "A variety of events will be imported\n"
.string "over Wireless Communication.$"
gUnknown_841E63F:: @ 841E63F
.string "Read the WONDER CARDS in your\npossession.$"
gText_WonderCardsInPossession:: @ 841E63F
.string "Read the WONDER CARDS in your\n"
.string "possession.$"
gUnknown_841E669:: @ 841E669
gText_ReadNewsThatArrived:: @ 841E669
.string "Read the NEWS that arrived.$"
gUnknown_841E685:: @ 841E685
gText_ReturnToTitle:: @ 841E685
.string "Return to the title screen.$"
gUnknown_841E6A1:: @ 841E6A1
gText_DontHaveCardNewOneInput:: @ 841E6A1
.incbin "baserom.gba", 0x41E6A1, 0x3B
gUnknown_841E6DC:: @ 841E6DC
gText_DontHaveNewsNewOneInput:: @ 841E6DC
.incbin "baserom.gba", 0x41E6DC, 0x3B
gUnknown_841E717:: @ 841E717
gText_WhereShouldCardBeAccessed:: @ 841E717
.incbin "baserom.gba", 0x41E717, 0x2A
gUnknown_841E741:: @ 841E741
gText_WhereShouldNewsBeAccessed:: @ 841E741
.incbin "baserom.gba", 0x41E741, 0x53
gUnknown_841E794:: @ 841E794
gText_Communicating:: @ 841E794
.incbin "baserom.gba", 0x41E794, 0xF
gUnknown_841E7A3:: @ 841E7A3
gText_CommunicationCompleted:: @ 841E7A3
.incbin "baserom.gba", 0x41E7A3, 0x19
gUnknown_841E7BC:: @ 841E7BC
gText_CommunicationError:: @ 841E7BC
.incbin "baserom.gba", 0x41E7BC, 0x15
gUnknown_841E7D1:: @ 841E7D1
gText_CommunicationCanceled:: @ 841E7D1
.incbin "baserom.gba", 0x41E7D1, 0x21
gUnknown_841E7F2:: @ 841E7F2
gText_ThrowAwayWonderCard:: @ 841E7F2
.incbin "baserom.gba", 0x41E7F2, 0x31
gUnknown_841E823:: @ 841E823
gText_HaventReceivedCardsGift:: @ 841E823
.incbin "baserom.gba", 0x41E823, 0x43
gUnknown_841E866:: @ 841E866
gText_WonderCardReceivedFrom:: @ 841E866
.incbin "baserom.gba", 0x41E866, 0x29
gUnknown_841E88F:: @ 841E88F
gText_WonderNewsReceivedFrom:: @ 841E88F
.incbin "baserom.gba", 0x41E88F, 0x2E
gUnknown_841E8BD:: @ 841E8BD
gText_WonderCardReceived:: @ 841E8BD
.incbin "baserom.gba", 0x41E8BD, 0x25
gUnknown_841E8E2:: @ 841E8E2
gText_WonderNewsReceived:: @ 841E8E2
.incbin "baserom.gba", 0x41E8E2, 0x2A
gUnknown_841E90C:: @ 841E90C
gText_NewStampReceived:: @ 841E90C
.incbin "baserom.gba", 0x41E90C, 0x1F
gUnknown_841E92B:: @ 841E92B
gText_NewTrainerReceived:: @ 841E92B
.incbin "baserom.gba", 0x41E92B, 0x1B
gUnknown_841E946:: @ 841E946
gText_AlreadyHadCard:: @ 841E946
.incbin "baserom.gba", 0x41E946, 0x22
gUnknown_841E968:: @ 841E968
gText_AlreadyHadNews:: @ 841E968
.incbin "baserom.gba", 0x41E968, 0x27
gUnknown_841E98F:: @ 841E98F
gText_AlreadyHadStamp:: @ 841E98F
.incbin "baserom.gba", 0x41E98F, 0x1C
gUnknown_841E9AB:: @ 841E9AB
gText_NoMoreRoomForStamps:: @ 841E9AB
.incbin "baserom.gba", 0x41E9AB, 0x28
gUnknown_841E9D3:: @ 841E9D3
gText_RecordUploadedViaWireless:: @ 841E9D3
.incbin "baserom.gba", 0x41E9D3, 0x3A
gUnknown_841EA0D:: @ 841EA0D
gText_CantAcceptCardFromTrainer:: @ 841EA0D
.incbin "baserom.gba", 0x41EA0D, 0x32
gUnknown_841EA3F:: @ 841EA3F
gText_CantAcceptNewsFromTrainer:: @ 841EA3F
.incbin "baserom.gba", 0x41EA3F, 0x30
gUnknown_841EA6F:: @ 841EA6F
gText_NothingSentOver:: @ 841EA6F
.incbin "baserom.gba", 0x41EA6F, 0x17
gUnknown_841EA86:: @ 841EA86
gText_WhatToDoWithCards:: @ 841EA86
.incbin "baserom.gba", 0x41EA86, 0x31
gUnknown_841EAB7:: @ 841EAB7
gText_WhatToDoWithNews:: @ 841EAB7
.incbin "baserom.gba", 0x41EAB7, 0x30
gUnknown_841EAE7:: @ 841EAE7
gText_SendingWonderCard:: @ 841EAE7
.incbin "baserom.gba", 0x41EAE7, 0x1A
gUnknown_841EB01:: @ 841EB01
gText_SendingWonderNews:: @ 841EB01
.incbin "baserom.gba", 0x41EB01, 0x1F
gUnknown_841EB20:: @ 841EB20
gText_WonderCardSentTo:: @ 841EB20
.incbin "baserom.gba", 0x41EB20, 0x26
gUnknown_841EB46:: @ 841EB46
gText_WonderNewsSentTo:: @ 841EB46
.incbin "baserom.gba", 0x41EB46, 0x2B
gUnknown_841EB71:: @ 841EB71
gText_StampSentTo:: @ 841EB71
.incbin "baserom.gba", 0x41EB71, 0x1D
gUnknown_841EB8E:: @ 841EB8E
gText_GiftSentTo:: @ 841EB8E
.incbin "baserom.gba", 0x41EB8E, 0x1C
gUnknown_841EBAA:: @ 841EBAA
gText_OtherTrainerHasCard:: @ 841EBAA
.incbin "baserom.gba", 0x41EBAA, 0x34
gUnknown_841EBDE:: @ 841EBDE
gText_OtherTrainerHasNews:: @ 841EBDE
.incbin "baserom.gba", 0x41EBDE, 0x34
gUnknown_841EC12:: @ 841EC12
gText_OtherTrainerHasStamp:: @ 841EC12
.incbin "baserom.gba", 0x41EC12, 0x2E
gUnknown_841EC40:: @ 841EC40
gText_OtherTrainerCanceled:: @ 841EC40
.incbin "baserom.gba", 0x41EC40, 0x2A
gUnknown_841EC6A:: @ 841EC6A
gText_CantSendGiftToTrainer:: @ 841EC6A
.incbin "baserom.gba", 0x41EC6A, 0x2F
gUnknown_841EC99:: @ 841EC99
gText_IfThrowAwayCardEventWontHappen:: @ 841EC99
.incbin "baserom.gba", 0x41EC99, 0x3A
gUnknown_841ECD3:: @ 841ECD3
gText_OkayToDiscardNews:: @ 841ECD3
.incbin "baserom.gba", 0x41ECD3, 0x26
gUnknown_841ECF9:: @ 841ECF9
gText_HaventReceivedGiftOkayToDiscard:: @ 841ECF9
.incbin "baserom.gba", 0x41ECF9, 0x36
gUnknown_841ED2F:: @ 841ED2F
gText_DataWillBeSaved:: @ 841ED2F
.incbin "baserom.gba", 0x41ED2F, 0x21
gUnknown_841ED50:: @ 841ED50
gText_SaveCompletedPressA:: @ 841ED50
.incbin "baserom.gba", 0x41ED50, 0x2B
gUnknown_841ED7B:: @ 841ED7B
gText_WonderCardThrownAway:: @ 841ED7B
.incbin "baserom.gba", 0x41ED7B, 0x21
gUnknown_841ED9C:: @ 841ED9C
gText_WonderNewsThrownAway:: @ 841ED9C
.incbin "baserom.gba", 0x41ED9C, 0x21
gUnknown_841EDBD:: @ 841EDBD
.incbin "baserom.gba", 0x41EDBD, 0xD
gText_MysteryGift:: @ 841EDBD
.string "MYSTERY GIFT$"
gUnknown_841EDCA:: @ 841EDCA
.incbin "baserom.gba", 0x41EDCA, 0x61
gText_PickOKCancel:: @ 841EDCA
.string "{KEYGFX_DPAD_UP_DOWN}PICK {KEYGFX_A_BUTTON}OK {KEYGFX_B_BUTTON}EXIT$"
gText_WonderCards::
.string "WONDER CARDS$"
gText_WonderNews::
.string "WONDER NEWS$"
gText_WirelessCommunication::
.string "WIRELESS COMMUNICATION$"
gText_Friend2::
.string "FRIEND$"
gText_Exit3::
.string "EXIT$"
gText_Receive::
.string "RECEIVE$"
gText_Send::
.string "SEND$"
gText_Toss::
.string "TOSS$"
gUnknown_841EE2B:: @ 841EE2B
.incbin "baserom.gba", 0x41EE2B, 0x17
-54
View File
@@ -1,54 +0,0 @@
.section .rodata
.align 2
gUnknown_8466D90:: @ 8466D90
.incbin "baserom.gba", 0x466D90, 0x8
gUnknown_8466D98:: @ 8466D98
.incbin "baserom.gba", 0x466D98, 0x8
gUnknown_8466DA0:: @ 8466DA0
.incbin "baserom.gba", 0x466DA0, 0x8
gUnknown_8466DA8:: @ 8466DA8
.incbin "baserom.gba", 0x466DA8, 0x8
gUnknown_8466DB0:: @ 8466DB0
.incbin "baserom.gba", 0x466DB0, 0x8
gUnknown_8466DB8:: @ 8466DB8
.incbin "baserom.gba", 0x466DB8, 0x8
gUnknown_8466DC0:: @ 8466DC0
.incbin "baserom.gba", 0x466DC0, 0x8
gUnknown_8466DC8:: @ 8466DC8
.incbin "baserom.gba", 0x466DC8, 0x8
gUnknown_8466DD0:: @ 8466DD0
.incbin "baserom.gba", 0x466DD0, 0x18
gUnknown_8466DE8:: @ 8466DE8
.incbin "baserom.gba", 0x466DE8, 0x18
gUnknown_8466E00:: @ 8466E00
.incbin "baserom.gba", 0x466E00, 0x78
gUnknown_8466E78:: @ 8466E78
.incbin "baserom.gba", 0x466E78, 0x18
gUnknown_8466E90:: @ 8466E90
.incbin "baserom.gba", 0x466E90, 0x18
gUnknown_8466EA8:: @ 8466EA8
.incbin "baserom.gba", 0x466EA8, 0x18
gUnknown_8466EC0:: @ 8466EC0
.incbin "baserom.gba", 0x466EC0, 0x28
gUnknown_8466EE8:: @ 8466EE8
.incbin "baserom.gba", 0x466EE8, 0x8
gUnknown_8466EF0:: @ 8466EF0
.incbin "baserom.gba", 0x466EF0, 0x10
-14
View File
@@ -1,14 +0,0 @@
.section .rodata
.align 2
gUnknown_8466D10:: @ 8466D10
.incbin "baserom.gba", 0x466D10, 0x20
gUnknown_8466D30:: @ 8466D30
.incbin "baserom.gba", 0x466D30, 0x30
gUnknown_8466D60:: @ 8466D60
.incbin "baserom.gba", 0x466D60, 0x10
gUnknown_8466D70:: @ 8466D70
.incbin "baserom.gba", 0x466D70, 0x20
+2 -2
View File
@@ -40,7 +40,7 @@ gSpecials:: @ 815FD60
def_special sub_8081064
def_special sub_80810CC
def_special sub_80810F4
def_special sub_80098B8
def_special CloseLink
def_special sub_80819C8
def_special sub_8081978
def_special sub_80819B8
@@ -393,7 +393,7 @@ gSpecials:: @ 815FD60
def_special sub_812B220
def_special sub_812B234
def_special sub_812B248
def_special sub_8143FC8
def_special ValidateReceivedWonderCard
def_special sub_810B810
def_special sub_811999C
def_special sp182_move_string
Binary file not shown.

After

Width:  |  Height:  |  Size: 141 B

+1 -1
View File
@@ -204,7 +204,7 @@ bool8 sub_800AA48(void);
void sub_800A5BC(void);
void sub_800AA80(u8);
void sub_80098D8(void);
void sub_80098B8(void);
void CloseLink(void);
bool8 sub_800A4BC(void);
#endif // GUARD_LINK_H
+9 -3
View File
@@ -1,9 +1,15 @@
#ifndef GUARD_LINK_RFU_H
#define GUARD_LINK_RFU_H
void sub_8142504(const u8 *str);
bool32 mevent_0814257C(u8 * cmdPtr, const u8 * src);
void AddTextPrinterToWindow1(const u8 *str);
bool32 MG_PrintTextOnWindow1AndWaitButton(u8 * cmdPtr, const u8 * src);
void sub_80FA190(void);
void sub_8142420(void);
void MG_DrawCheckerboardPattern(void);
void task_add_05_task_del_08FA224_when_no_RfuFunc(void);
bool8 IsNoOneConnected(void);
void DestroyWirelessStatusIndicatorSprite(void);
void MEvent_CreateTask_CardOrNewsWithFriend(u8);
void MEvent_CreateTask_CardOrNewsOverWireless(u8);
void MEvent_CreateTask_Leader(u8);
#endif //GUARD_LINK_RFU_H
+2
View File
@@ -59,5 +59,7 @@ void sub_81AE6C8(u8 a0, u16 *a1, u16 *a2);
void DestroyListMenu(u8, u16 *, u16 *);
u16 ListMenuGetYCoordForPrintingArrowCursor(u8);
void sub_8107D38(u8, u8);
s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palNum);
void ListMenuDefaultCursorMoveFunc(s32, u8, struct ListMenu *);
#endif //GUARD_LIST_MENU_H
+1 -1
View File
@@ -3,7 +3,7 @@
#include "global.h"
void sub_8146C30(u32 a0);
void GenerateRandomNews(u32 a0);
void sub_8146C88(void);
void sub_8146CA4(void);
+20 -3
View File
@@ -33,12 +33,13 @@ struct MEvent_Str_2
u8 fill_00[0x40];
};
struct MEventBuffer_3120_Sub * sub_8143D58(void);
struct MEventBuffer_32E0_Sub * sav1_get_mevent_buffer_1(void);
struct MEventBuffer_3120_Sub * GetSavedWonderNews(void);
struct MEventBuffer_32E0_Sub * GetSavedWonderCard(void);
struct MEventBuffer_3430_Sub * sav1_get_mevent_buffer_2(void);
struct MysteryEventStruct * sub_8143D94(void);
bool32 sub_8143DC8(const struct MEventBuffer_3120_Sub * src);
bool32 sub_8143E1C(void);
bool32 ValidateReceivedWonderNews(void);
bool32 ValidateReceivedWonderCard(void);
bool32 sub_8143EF4(const u8 * src);
bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data);
void sub_814410C(struct MEventBuffer_32E0_Sub * buffer);
@@ -49,5 +50,21 @@ u32 sub_8144418(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void *
u32 sub_8144434(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused);
bool32 sub_8144474(const struct MEventStruct_Unk1442CC * a0, const u16 * a1);
u16 sub_81444B0(const struct MEventStruct_Unk1442CC * a0, u32 command);
bool32 InitWonderCardResources(struct MEventBuffer_32E0_Sub * r5, struct MEventBuffer_3430_Sub * r6);
bool32 InitWonderNewsResources(const struct MEventBuffer_3120_Sub * a0);
s32 FadeToWonderCardMenu(void);
s32 FadeToWonderNewsMenu(void);
void DestroyWonderCard(void);
void DestroyWonderNews(void);
void DestroyWonderCardResources(void);
void DestroyWonderNewsResources(void);
s32 FadeOutFromWonderCard(bool32 flag);
s32 FadeOutFromWonderNews(bool32 flag);
bool32 CheckReceivedGiftFromWonderCard(void);
void MENews_AddScrollIndicatorArrowPair(void);
void MENews_RemoveScrollIndicatorArrowPair(void);
bool32 WonderNews_Test_Unk_02(void);
bool32 WonderCard_Test_Unk_08_6(void);
u32 MENews_GetInput(u16 input);
#endif //GUARD_MEVENT_H
+9 -9
View File
@@ -37,7 +37,7 @@ struct mevent_cmd_ish
u32 parameter;
};
struct mevent_srv_ish
struct mevent_client
{
u32 unk_00;
u32 param;
@@ -83,13 +83,13 @@ void mevent_srv_sub_init(struct mevent_srv_sub * svr, u32 sendPlayerNo, u32 recv
void mevent_srv_sub_init_send(struct mevent_srv_sub * svr, u32 ident, const void * src, u32 size);
void mevent_srv_sub_init_recv(struct mevent_srv_sub * svr, u32 ident, void * dest);
void mevent_srv_ish_do_init(void);
u32 mevent_srv_ish_do_exec(u16 * a0);
void mevent_srv_ish_inc_flag(void);
void * mevent_srv_ish_get_buffer(void);
void mevent_srv_ish_set_param(u32 a0);
void mevent_srv_common_do_init_1(void);
void mevent_srv_common_do_init_2(void);
u32 mevent_srv_init_do_exec(u16 * a0);
void mevent_client_do_init(void);
u32 mevent_client_do_exec(u16 * a0);
void mevent_client_inc_flag(void);
void * mevent_client_get_buffer(void);
void mevent_client_set_param(u32 a0);
void mevent_srv_init_wnews(void);
void mevent_srv_new_wcard(void);
u32 mevent_srv_common_do_exec(u16 * a0);
#endif //GUARD_MEVENT_SERVER_H
+3 -3
View File
@@ -1,9 +1,9 @@
#ifndef GUARD_MYSTERY_GIFT_MENU_H
#define GUARD_MYSTERY_GIFT_MENU_H
extern bool8 gUnknown_203F3B8;
extern bool8 gGiftIsFromEReader;
void sub_81422FC(void);
void sub_8142344(bool8, bool32);
void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void);
void PrintMysteryGiftOrEReaderTopMenu(bool8, bool32);
#endif //GUARD_MYSTERY_GIFT_MENU_H
+1
View File
@@ -30,5 +30,6 @@ void Menu_LoadStdPalAt(u16);
void * malloc_and_decompress(const void * src, u32 * size);
u16 sub_80F796C(void);
void sub_80F6B08(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette);
void sub_80F696C(u8 bgId, const void * gfx, u32 size, u16 a3, u8 a4);
#endif // GUARD_NEW_MENU_HELPERS_H
+3
View File
@@ -23,5 +23,8 @@ void sub_8098C6C(u8 bg, u16 destOffset, u8 palOffset);
void sub_814FEAC(u8 windowId, u16 tileStart, u8 palette);
void sub_814FF2C(u8 windowId, u16 tileStart, u8 palette);
void sub_815001C(u8 windowId, u16 tileStart, u8 palette);
void sub_814FE40(u8 windowId, u16 tileStart, u8 palette);
void sub_814FDA0(u8 windowId, u16 tileStart, u8 palette);
void DrawTextBorderOuter(u8 windowId, u16 tileStart, u8 palette);
#endif // GUARD_TEXT_WINDOW_H
+6
View File
@@ -0,0 +1,6 @@
#ifndef GUARD_TITLE_SCREEN_H
#define GUARD_TITLE_SCREEN_H
void CB2_InitTitleScreen(void);
#endif //GUARD_TITLE_SCREEN_H
+2 -4
View File
@@ -241,8 +241,7 @@ SECTIONS {
asm/buy_menu_helpers.o(.text);
asm/slot_machine.o(.text);
src/roamer.o(.text);
asm/mystery_gift_menu.o(.text);
asm/link_rfu_4.o(.text);
src/mystery_gift_menu.o(.text);
src/mevent.o(.text);
src/mevent_server_helpers.o(.text);
src/mevent_server.o(.text);
@@ -409,8 +408,7 @@ SECTIONS {
data/buy_menu_helpers.o(.rodata);
data/slot_machine.o(.rodata);
src/roamer.o(.rodata);
data/mystery_gift_menu.o(.rodata);
data/link_rfu_4.o(.rodata);
src/mystery_gift_menu.o(.rodata);
src/mevent.o(.rodata);
src/mevent_server_helpers.o(.rodata);
src/mevent_server.o(.rodata);
+2 -2
View File
@@ -10,7 +10,7 @@ static u32 sub_8146E0C(struct MysteryEventStruct *);
static void sub_8146DA0(struct MysteryEventStruct *);
static void sub_8146D94(struct MysteryEventStruct *);
void sub_8146C30(u32 a0)
void GenerateRandomNews(u32 a0)
{
struct MysteryEventStruct *r5 = sub_8143D94();
@@ -59,7 +59,7 @@ u16 sub_8146CE8(void)
struct MysteryEventStruct *r4 = sub_8143D94();
u16 r5;
if (!sub_806E2BC() || !sub_8143E1C())
if (!sub_806E2BC() || !ValidateReceivedWonderNews())
return 0;
r5 = sub_8146E0C(r4);
+43 -43
View File
@@ -240,7 +240,7 @@ u32 sub_8143770(u8 * r4, u16 * r5)
return 0;
}
void sub_81438A0(void)
void task_add_00_ereader(void)
{
u8 taskId = CreateTask(sub_8143910, 0);
struct MEventTaskData1 *data = (struct MEventTaskData1 *)gTasks[taskId].data;
@@ -279,7 +279,7 @@ void sub_8143910(u8 taskId)
switch (data->t08)
{
case 0:
if (mevent_0814257C(&data->t09, gUnknown_841DE52))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE52))
data->t08 = 1;
break;
case 1:
@@ -294,16 +294,16 @@ void sub_8143910(u8 taskId)
case 3:
if (!sub_814374C())
{
sub_80098B8();
CloseLink();
data->t08 = 4;
}
else
data->t08 = 13;
break;
case 4:
if (mevent_0814257C(&data->t09, gUnknown_841DE53))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE53))
{
sub_8142504(gUnknown_841DE54);
AddTextPrinterToWindow1(gUnknown_841DE54);
sub_81438E8(&data->t00);
data->t08 = 5;
}
@@ -325,36 +325,36 @@ void sub_8143910(u8 taskId)
if (JOY_NEW(B_BUTTON))
{
PlaySE(SE_SELECT);
sub_80098B8();
CloseLink();
sub_81438E8(&data->t00);
data->t08 = 23;
}
else if (GetLinkPlayerCount_2() > 1)
{
sub_81438E8(&data->t00);
sub_80098B8();
CloseLink();
data->t08 = 7;
}
else if (sub_81436EC())
{
PlaySE(SE_SELECT);
sub_80098B8();
CloseLink();
sub_81438E8(&data->t00);
data->t08 = 8;
}
else if (sub_81438F0(&data->t00, 10))
{
sub_80098B8();
CloseLink();
sub_81436BC();
sub_81438E8(&data->t00);
}
break;
case 7:
if (mevent_0814257C(&data->t09, gUnknown_841DE7C))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE7C))
data->t08 = 4;
break;
case 8:
sub_8142504(gUnknown_841DE95);
AddTextPrinterToWindow1(gUnknown_841DE95);
sub_81435DC(&gUnknown_3005ED0, gUnknownSerialData_End - gUnknownSerialData_Start, gUnknownSerialData_Start);
data->t08 = 9;
break;
@@ -370,7 +370,7 @@ void sub_8143910(u8 taskId)
else if (data->t0E == 1)
{
sub_81438E8(&data->t00);
sub_8142504(gUnknown_841DE9B);
AddTextPrinterToWindow1(gUnknown_841DE9B);
data->t08 = 11;
}
else
@@ -382,7 +382,7 @@ void sub_8143910(u8 taskId)
break;
case 12:
sub_81436BC();
sub_8142504(gUnknown_841DE98);
AddTextPrinterToWindow1(gUnknown_841DE98);
data->t08 = 13;
break;
case 13:
@@ -391,21 +391,21 @@ void sub_8143910(u8 taskId)
case 0:
break;
case 2:
sub_8142504(gUnknown_841DE95);
AddTextPrinterToWindow1(gUnknown_841DE95);
data->t08 = 14;
break;
case 1:
PlaySE(SE_SELECT);
sub_80098B8();
CloseLink();
data->t08 = 23;
break;
case 5:
sub_80098B8();
CloseLink();
data->t08 = 21;
break;
case 3:
case 4:
sub_80098B8();
CloseLink();
data->t08 = 20;
break;
}
@@ -413,7 +413,7 @@ void sub_8143910(u8 taskId)
case 14:
if (HasLinkErrorOccurred())
{
sub_80098B8();
CloseLink();
data->t08 = 20;
}
else if (GetBlockReceivedStatus())
@@ -439,7 +439,7 @@ void sub_8143910(u8 taskId)
case 17:
if (sub_815D794(gDecompressionBuffer))
{
sub_8142504(gUnknown_841DE99);
AddTextPrinterToWindow1(gUnknown_841DE99);
sub_81438E8(&data->t00);
data->t08 = 18;
}
@@ -449,7 +449,7 @@ void sub_8143910(u8 taskId)
case 18:
if (sub_81438F0(&data->t00, 120))
{
sub_8142504(gUnknown_841DE9A);
AddTextPrinterToWindow1(gUnknown_841DE9A);
PlayFanfare(258);
data->t08 = 19;
}
@@ -459,26 +459,26 @@ void sub_8143910(u8 taskId)
data->t08 = 26;
break;
case 23:
if (mevent_0814257C(&data->t09, gUnknown_841DE7D))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE7D))
data->t08 = 26;
break;
case 20:
if (mevent_0814257C(&data->t09, gUnknown_841DE96))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE96))
data->t08 = 0;
break;
case 21:
if (mevent_0814257C(&data->t09, gUnknown_841DE97))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE97))
data->t08 = 0;
break;
case 22:
if (mevent_0814257C(&data->t09, gUnknown_841DE9C))
if (MG_PrintTextOnWindow1AndWaitButton(&data->t09, gUnknown_841DE9C))
data->t08 = 0;
break;
case 26:
sub_812B484();
Free(data->t10);
DestroyTask(taskId);
SetMainCallback2(sub_81422FC);
SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen);
break;
}
}
@@ -490,12 +490,12 @@ void sub_8143D24(void)
sub_80BDE28();
}
struct MEventBuffer_3120_Sub * sub_8143D58(void)
struct MEventBuffer_3120_Sub * GetSavedWonderNews(void)
{
return &gSaveBlock1Ptr->unk_3120.buffer_000.data;
}
struct MEventBuffer_32E0_Sub * sav1_get_mevent_buffer_1(void)
struct MEventBuffer_32E0_Sub * GetSavedWonderCard(void)
{
return &gSaveBlock1Ptr->unk_3120.buffer_1c0.data;
}
@@ -515,7 +515,7 @@ u16 * sub_8143DA8(void)
return gSaveBlock1Ptr->unk_3120.unk_338;
}
void sub_8143DBC(void)
void DestroyWonderNews(void)
{
sub_8143E9C();
}
@@ -530,7 +530,7 @@ bool32 sub_8143DC8(const struct MEventBuffer_3120_Sub * src)
return TRUE;
}
bool32 sub_8143E1C(void)
bool32 ValidateReceivedWonderNews(void)
{
if (CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_3120.buffer_000.data, sizeof(struct MEventBuffer_3120_Sub)) != gSaveBlock1Ptr->unk_3120.buffer_000.crc)
return FALSE;
@@ -546,7 +546,7 @@ bool32 sub_8143E64(const struct MEventBuffer_3120_Sub * data)
return TRUE;
}
bool32 sub_8143E78(void)
bool32 WonderNews_Test_Unk_02(void)
{
const struct MEventBuffer_3120_Sub * data = &gSaveBlock1Ptr->unk_3120.buffer_000.data;
if (data->unk_02 == 0)
@@ -556,7 +556,7 @@ bool32 sub_8143E78(void)
void sub_8143E9C(void)
{
CpuFill32(0, sub_8143D58(), sizeof(gSaveBlock1Ptr->unk_3120.buffer_000.data));
CpuFill32(0, GetSavedWonderNews(), sizeof(gSaveBlock1Ptr->unk_3120.buffer_000.data));
gSaveBlock1Ptr->unk_3120.buffer_000.crc = 0;
}
@@ -570,7 +570,7 @@ bool32 sub_8143EF4(const u8 * src)
{
const u8 * r5 = (const u8 *)&gSaveBlock1Ptr->unk_3120.buffer_000.data;
u32 i;
if (!sub_8143E1C())
if (!ValidateReceivedWonderNews())
return FALSE;
for (i = 0; i < sizeof(struct MEventBuffer_3120_Sub); i++)
{
@@ -580,7 +580,7 @@ bool32 sub_8143EF4(const u8 * src)
return TRUE;
}
void sub_8143F38(void)
void DestroyWonderCard(void)
{
sub_814407C();
sub_81440B4();
@@ -597,7 +597,7 @@ bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data)
struct MEventBuffer_32E0_Sub * r1;
if (!sub_8144018(data))
return FALSE;
sub_8143F38();
DestroyWonderCard();
memcpy(&gSaveBlock1Ptr->unk_3120.buffer_1c0.data, data, sizeof(struct MEventBuffer_32E0_Sub));
gSaveBlock1Ptr->unk_3120.buffer_1c0.crc = CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_3120.buffer_1c0.data, sizeof(struct MEventBuffer_32E0_Sub));
r2 = &gSaveBlock1Ptr->unk_3120.buffer_310.data;
@@ -606,7 +606,7 @@ bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data)
return TRUE;
}
bool32 sub_8143FC8(void)
bool32 ValidateReceivedWonderCard(void)
{
if (gSaveBlock1Ptr->unk_3120.buffer_1c0.crc != CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_3120.buffer_1c0.data, sizeof(struct MEventBuffer_32E0_Sub)))
return FALSE;
@@ -632,7 +632,7 @@ bool32 sub_8144018(const struct MEventBuffer_32E0_Sub * data)
return TRUE;
}
bool32 sub_8144054(void)
bool32 WonderCard_Test_Unk_08_6(void)
{
const struct MEventBuffer_32E0_Sub * data = &gSaveBlock1Ptr->unk_3120.buffer_1c0.data;
if (data->unk_08_6 == 0)
@@ -654,7 +654,7 @@ void sub_81440B4(void)
u16 sub_81440E8(void)
{
if (sub_8143FC8())
if (ValidateReceivedWonderCard())
return gSaveBlock1Ptr->unk_3120.buffer_1c0.data.unk_00;
return 0;
}
@@ -672,7 +672,7 @@ bool32 sub_8144124(u16 a0)
return FALSE;
}
bool32 sub_8144144(void)
bool32 CheckReceivedGiftFromWonderCard(void)
{
u16 value = sub_81440E8();
if (!sub_8144124(value))
@@ -721,7 +721,7 @@ bool32 sub_81441F0(const u16 * data)
s32 sub_8144218(void)
{
struct MEventBuffer_32E0_Sub * data;
if (!sub_8143FC8())
if (!ValidateReceivedWonderCard())
return 0;
data = &gSaveBlock1Ptr->unk_3120.buffer_1c0.data;
if (data->unk_08_0 != 1)
@@ -759,11 +759,11 @@ void sub_81442CC(struct MEventStruct_Unk1442CC * data)
data->unk_08 = 1;
data->unk_0C = 1;
data->unk_10 = 1;
if (sub_8143FC8())
if (ValidateReceivedWonderCard())
{
data->unk_14 = sav1_get_mevent_buffer_1()->unk_00;
data->unk_14 = GetSavedWonderCard()->unk_00;
data->unk_20 = *sav1_get_mevent_buffer_2();
data->unk_44 = sav1_get_mevent_buffer_1()->unk_09;
data->unk_44 = GetSavedWonderCard()->unk_09;
}
else
data->unk_14 = 0;
@@ -945,7 +945,7 @@ bool32 sub_81446D0(u16 a0)
gUnknown_203F3BC = FALSE;
if (a0 == 0)
return FALSE;
if (!sub_8143FC8())
if (!ValidateReceivedWonderCard())
return FALSE;
if (gSaveBlock1Ptr->unk_3120.buffer_1c0.data.unk_00 != a0)
return FALSE;
+14 -14
View File
@@ -126,7 +126,7 @@ const struct UnkStruct_8467FB8 gUnknown_8467FB8[8] = {
{1, 0, 0, 7, gUnknown_8467A7C, gUnknown_8467CAC, gUnknown_846716C}
};
bool32 sub_8145654(struct MEventBuffer_32E0_Sub * r5, struct MEventBuffer_3430_Sub * r6)
bool32 InitWonderCardResources(struct MEventBuffer_32E0_Sub * r5, struct MEventBuffer_3430_Sub * r6)
{
if (r5 == NULL || r6 == NULL)
return FALSE;
@@ -145,7 +145,7 @@ bool32 sub_8145654(struct MEventBuffer_32E0_Sub * r5, struct MEventBuffer_3430_S
return TRUE;
}
void sub_81456F0(void)
void DestroyWonderCardResources(void)
{
if (gUnknown_203F3C8 != NULL)
{
@@ -155,7 +155,7 @@ void sub_81456F0(void)
}
}
s32 sub_814571C(void)
s32 FadeToWonderCardMenu(void)
{
if (gUnknown_203F3C8 == NULL)
return -1;
@@ -219,7 +219,7 @@ s32 sub_814571C(void)
return 0;
}
s32 sub_814593C(bool32 flag)
s32 FadeOutFromWonderCard(bool32 flag)
{
if (gUnknown_203F3C8 == NULL)
return -1;
@@ -252,7 +252,7 @@ s32 sub_814593C(bool32 flag)
FreeMonIconPalettes();
break;
case 5:
sub_8142344(gUnknown_203F3B8, flag);
PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag);
break;
case 6:
CopyBgTilemapBufferToVram(0);
@@ -508,7 +508,7 @@ const struct UnkStruct_8467FB8 gUnknown_8468720[] = {
{1, 0, 0, 0, gUnknown_84685B4, gUnknown_8468644, gUnknown_84680A0}
};
bool32 sub_8146288(const struct MEventBuffer_3120_Sub * a0)
bool32 InitWonderNewsResources(const struct MEventBuffer_3120_Sub * a0)
{
if (a0 == NULL)
return FALSE;
@@ -523,7 +523,7 @@ bool32 sub_8146288(const struct MEventBuffer_3120_Sub * a0)
return TRUE;
}
void sub_81462EC(void)
void DestroyWonderNewsResources(void)
{
if (gUnknown_203F3CC != NULL)
{
@@ -533,7 +533,7 @@ void sub_81462EC(void)
}
}
s32 sub_8146318(void)
s32 FadeToWonderNewsMenu(void)
{
if (gUnknown_203F3CC == NULL)
return -1;
@@ -608,7 +608,7 @@ s32 sub_8146318(void)
return 0;
}
s32 sub_8146604(bool32 flag)
s32 FadeOutFromWonderNews(bool32 flag)
{
if (gUnknown_203F3CC == NULL)
return -1;
@@ -653,10 +653,10 @@ s32 sub_8146604(bool32 flag)
}
break;
case 5:
sub_8142344(gUnknown_203F3B8, flag);
PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag);
break;
case 6:
sub_8142420();
MG_DrawCheckerboardPattern();
CopyBgTilemapBufferToVram(0);
CopyBgTilemapBufferToVram(3);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
@@ -671,7 +671,7 @@ s32 sub_8146604(bool32 flag)
return 0;
}
void sub_81467EC(void)
void MENews_RemoveScrollIndicatorArrowPair(void)
{
if (!gUnknown_203F3CC->unk_01C0_0 && gUnknown_203F3CC->unk_01C1 != 0xFF)
{
@@ -682,7 +682,7 @@ void sub_81467EC(void)
}
void sub_8146834(void)
void MENews_AddScrollIndicatorArrowPair(void)
{
if (gUnknown_203F3CC->unk_01C0_0)
{
@@ -691,7 +691,7 @@ void sub_8146834(void)
}
}
u8 sub_8146884(u16 input)
u32 MENews_GetInput(u16 input)
{
if (gUnknown_203F3CC->unk_01C2_0)
{
+46 -46
View File
@@ -11,12 +11,12 @@
#include "mevent.h"
#include "mevent_server.h"
EWRAM_DATA struct mevent_srv_ish * s_mevent_srv_ish_ptr = NULL;
EWRAM_DATA struct mevent_client * s_mevent_client_ptr = NULL;
EWRAM_DATA struct mevent_srv_common * s_mevent_srv_common_ptr = NULL;
static void mevent_srv_ish_init(struct mevent_srv_ish *, u32, u32);
static u32 mevent_srv_ish_exec(struct mevent_srv_ish *);
static void mevent_srv_ish_free_resources(struct mevent_srv_ish *);
static void mevent_client_init(struct mevent_client *, u32, u32);
static u32 mevent_client_exec(struct mevent_client *);
static void mevent_client_free_resources(struct mevent_client *);
static void mevent_srv_init_common(struct mevent_srv_common *, const void *, u32, u32);
static void mevent_srv_free_resources(struct mevent_srv_common *);
static u32 mevent_srv_exec_common(struct mevent_srv_common *);
@@ -25,44 +25,44 @@ extern const u8 gUnknown_84687E0[];
extern const struct mevent_cmd gUnknown_8468B6C[];
extern const struct mevent_cmd gUnknown_8468BCC[];
void mevent_srv_ish_do_init(void)
void mevent_client_do_init(void)
{
s_mevent_srv_ish_ptr = AllocZeroed(sizeof(struct mevent_srv_ish));
mevent_srv_ish_init(s_mevent_srv_ish_ptr, 1, 0);
s_mevent_client_ptr = AllocZeroed(sizeof(struct mevent_client));
mevent_client_init(s_mevent_client_ptr, 1, 0);
}
u32 mevent_srv_ish_do_exec(u16 * a0)
u32 mevent_client_do_exec(u16 * a0)
{
u32 result;
if (s_mevent_srv_ish_ptr == NULL)
if (s_mevent_client_ptr == NULL)
return 6;
result = mevent_srv_ish_exec(s_mevent_srv_ish_ptr);
result = mevent_client_exec(s_mevent_client_ptr);
if (result == 6)
{
*a0 = s_mevent_srv_ish_ptr->param;
mevent_srv_ish_free_resources(s_mevent_srv_ish_ptr);
Free(s_mevent_srv_ish_ptr);
s_mevent_srv_ish_ptr = NULL;
*a0 = s_mevent_client_ptr->param;
mevent_client_free_resources(s_mevent_client_ptr);
Free(s_mevent_client_ptr);
s_mevent_client_ptr = NULL;
}
return result;
}
void mevent_srv_ish_inc_flag(void)
void mevent_client_inc_flag(void)
{
s_mevent_srv_ish_ptr->flag++;
s_mevent_client_ptr->flag++;
}
void * mevent_srv_ish_get_buffer(void)
void * mevent_client_get_buffer(void)
{
return s_mevent_srv_ish_ptr->buffer;
return s_mevent_client_ptr->buffer;
}
void mevent_srv_ish_set_param(u32 a0)
void mevent_client_set_param(u32 a0)
{
s_mevent_srv_ish_ptr->param = a0;
s_mevent_client_ptr->param = a0;
}
static void mevent_srv_ish_init(struct mevent_srv_ish * svr, u32 sendPlayerNo, u32 recvPlayerNo)
static void mevent_client_init(struct mevent_client * svr, u32 sendPlayerNo, u32 recvPlayerNo)
{
svr->unk_00 = 0;
svr->mainseqno = 0;
@@ -74,7 +74,7 @@ static void mevent_srv_ish_init(struct mevent_srv_ish * svr, u32 sendPlayerNo, u
mevent_srv_sub_init(&svr->manager, sendPlayerNo, recvPlayerNo);
}
static void mevent_srv_ish_free_resources(struct mevent_srv_ish * svr)
static void mevent_client_free_resources(struct mevent_client * svr)
{
Free(svr->sendBuffer);
Free(svr->recvBuffer);
@@ -82,20 +82,20 @@ static void mevent_srv_ish_free_resources(struct mevent_srv_ish * svr)
Free(svr->buffer);
}
static void mevent_srv_ish_jmp_buffer(struct mevent_srv_ish * svr)
static void mevent_client_jmp_buffer(struct mevent_client * svr)
{
memcpy(svr->cmdBuffer, svr->recvBuffer, ME_SEND_BUF_SIZE);
svr->cmdidx = 0;
}
static void mevent_srv_ish_send_word(struct mevent_srv_ish * svr, u32 ident, u32 word)
static void mevent_client_send_word(struct mevent_client * svr, u32 ident, u32 word)
{
CpuFill32(0, svr->sendBuffer, ME_SEND_BUF_SIZE);
*(u32 *)svr->sendBuffer = word;
mevent_srv_sub_init_send(&svr->manager, ident, svr->sendBuffer, sizeof(u32));
}
static u32 ish_mainseq_0(struct mevent_srv_ish * svr)
static u32 ish_mainseq_0(struct mevent_client * svr)
{
// init
memcpy(svr->cmdBuffer, gUnknown_84687E0, ME_SEND_BUF_SIZE);
@@ -105,13 +105,13 @@ static u32 ish_mainseq_0(struct mevent_srv_ish * svr)
return 0;
}
static u32 ish_mainseq_1(struct mevent_srv_ish * svr)
static u32 ish_mainseq_1(struct mevent_client * svr)
{
// done
return 6;
}
static u32 ish_mainseq_2(struct mevent_srv_ish * svr)
static u32 ish_mainseq_2(struct mevent_client * svr)
{
// do recv
if (mevent_srv_sub_recv(&svr->manager))
@@ -122,7 +122,7 @@ static u32 ish_mainseq_2(struct mevent_srv_ish * svr)
return 1;
}
static u32 ish_mainseq_3(struct mevent_srv_ish * svr)
static u32 ish_mainseq_3(struct mevent_client * svr)
{
// do send
if (mevent_srv_sub_send(&svr->manager))
@@ -133,7 +133,7 @@ static u32 ish_mainseq_3(struct mevent_srv_ish * svr)
return 1;
}
static u32 ish_mainseq_4(struct mevent_srv_ish * svr)
static u32 ish_mainseq_4(struct mevent_client * svr)
{
// process command
struct mevent_cmd_ish * cmd = &svr->cmdBuffer[svr->cmdidx];
@@ -162,20 +162,20 @@ static u32 ish_mainseq_4(struct mevent_srv_ish * svr)
svr->flag = 0;
break;
case 19:
mevent_srv_ish_send_word(svr, 0x12, GetGameStat(cmd->parameter));
mevent_client_send_word(svr, 0x12, GetGameStat(cmd->parameter));
svr->mainseqno = 3;
svr->flag = 0;
break;
case 6:
if (svr->param == 0)
mevent_srv_ish_jmp_buffer(svr);
mevent_client_jmp_buffer(svr);
break;
case 7:
if (svr->param == 1)
mevent_srv_ish_jmp_buffer(svr);
mevent_client_jmp_buffer(svr);
break;
case 4:
mevent_srv_ish_jmp_buffer(svr);
mevent_client_jmp_buffer(svr);
break;
case 5:
memcpy(svr->buffer, svr->recvBuffer, 0x40);
@@ -201,7 +201,7 @@ static u32 ish_mainseq_4(struct mevent_srv_ish * svr)
mevent_srv_sub_init_send(&svr->manager, 0x11, svr->sendBuffer, sizeof(struct MEventStruct_Unk1442CC));
break;
case 14:
mevent_srv_ish_send_word(svr, 0x13, svr->param);
mevent_client_send_word(svr, 0x13, svr->param);
break;
case 10:
sub_8143F68(svr->recvBuffer);
@@ -210,10 +210,10 @@ static u32 ish_mainseq_4(struct mevent_srv_ish * svr)
if (!sub_8143EF4(svr->recvBuffer))
{
sub_8143DC8(svr->recvBuffer);
mevent_srv_ish_send_word(svr, 0x13, 0);
mevent_client_send_word(svr, 0x13, 0);
}
else
mevent_srv_ish_send_word(svr, 0x13, 1);
mevent_client_send_word(svr, 0x13, 1);
break;
case 15:
svr->mainseqno = 6;
@@ -239,7 +239,7 @@ static u32 ish_mainseq_4(struct mevent_srv_ish * svr)
return 1;
}
static u32 ish_mainseq_5(struct mevent_srv_ish * svr)
static u32 ish_mainseq_5(struct mevent_client * svr)
{
// wait flag
if (svr->flag)
@@ -250,7 +250,7 @@ static u32 ish_mainseq_5(struct mevent_srv_ish * svr)
return 1;
}
static u32 ish_mainseq_6(struct mevent_srv_ish * svr)
static u32 ish_mainseq_6(struct mevent_client * svr)
{
// ???
switch (svr->flag)
@@ -270,7 +270,7 @@ static u32 ish_mainseq_6(struct mevent_srv_ish * svr)
return 1;
}
static u32 ish_mainseq_7(struct mevent_srv_ish * svr)
static u32 ish_mainseq_7(struct mevent_client * svr)
{
// exec arbitrary code
u32 (*func)(u32 *, struct SaveBlock2 *, struct SaveBlock1 *) = (void *)gDecompressionBuffer;
@@ -282,9 +282,9 @@ static u32 ish_mainseq_7(struct mevent_srv_ish * svr)
return 1;
}
static u32 mevent_srv_ish_exec(struct mevent_srv_ish * svr)
static u32 mevent_client_exec(struct mevent_client * svr)
{
u32 (*funcs[])(struct mevent_srv_ish *) = {
u32 (*funcs[])(struct mevent_client *) = {
ish_mainseq_0,
ish_mainseq_1,
ish_mainseq_2,
@@ -297,19 +297,19 @@ static u32 mevent_srv_ish_exec(struct mevent_srv_ish * svr)
return funcs[svr->mainseqno](svr);
}
void mevent_srv_common_do_init_1(void)
void mevent_srv_init_wnews(void)
{
s_mevent_srv_common_ptr = AllocZeroed(sizeof(struct mevent_srv_common));
mevent_srv_init_common(s_mevent_srv_common_ptr, gUnknown_8468B6C, 0, 1);
}
void mevent_srv_common_do_init_2(void)
void mevent_srv_new_wcard(void)
{
s_mevent_srv_common_ptr = AllocZeroed(sizeof(struct mevent_srv_common));
mevent_srv_init_common(s_mevent_srv_common_ptr, gUnknown_8468BCC, 0, 1);
}
u32 mevent_srv_init_do_exec(u16 * a0)
u32 mevent_srv_common_do_exec(u16 * a0)
{
u32 result;
if (s_mevent_srv_common_ptr == NULL)
@@ -526,12 +526,12 @@ static u32 common_mainseq_4(struct mevent_srv_common * svr)
break;
case 26:
AGB_ASSERT_EX(cmd->flag == FALSE && cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 506);
memcpy(svr->mevent_32e0, sav1_get_mevent_buffer_1(), 332);
memcpy(svr->mevent_32e0, GetSavedWonderCard(), 332);
sub_814410C(svr->mevent_32e0);
break;
case 27:
AGB_ASSERT_EX(cmd->flag == FALSE && cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 512);
memcpy(svr->mevent_3120, sub_8143D58(), 444);
memcpy(svr->mevent_3120, GetSavedWonderNews(), 444);
break;
case 28:
AGB_ASSERT_EX(cmd->flag == FALSE && cmd->parameter == NULL, "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/mevent_server.c", 517);
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -9,7 +9,7 @@ extern u8 gUnknown_203ADFA;
extern void sub_80CBDE8(void); // field_specials
extern u16 CalcCRC16WithTable(u8 *data, int length); // util
extern bool32 sub_8143FC8(void); // mevent
extern bool32 ValidateReceivedWonderCard(void); // mevent
enum
{
@@ -525,7 +525,7 @@ bool32 sub_8069DFC(void)
u8 *sub_8069E48(void)
{
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
if (!sub_8143FC8())
if (!ValidateReceivedWonderCard())
return NULL;
if (scriptData->magic != RAM_SCRIPT_MAGIC)
return NULL;
+1 -6
View File
@@ -1615,12 +1615,7 @@ sLocationHistory: @ 203F3A8
sRoamerLocation: @ 203F3AE
.space 0x2
gUnknown_203F3B0: @ 203F3B0
.space 0x8
gUnknown_203F3B8: @ 203F3B8
.space 0x4
.include "src/mystery_gift_menu.o"
.include "src/mevent.o"
.include "src/mevent_server_helpers.o"
.include "src/mevent_server.o"