main_menu through sub_800CE70

This commit is contained in:
PikalaxALT
2019-10-07 17:06:11 -04:00
parent 2fe6b6db8c
commit 0f67a952a3
10 changed files with 444 additions and 966 deletions
+4 -882
View File
@@ -5,884 +5,6 @@
.text
thumb_func_start sub_800C7A0
sub_800C7A0: @ 800C7A0
push {r4-r7,lr}
mov r7, r8
push {r7}
sub sp, 0x10
lsls r0, 24
lsrs r7, r0, 24
movs r0, 0x40
movs r1, 0
bl SetGpuReg
movs r0, 0x44
movs r1, 0
bl SetGpuReg
movs r0, 0x48
movs r1, 0x1
bl SetGpuReg
movs r0, 0x4A
movs r1, 0x21
bl SetGpuReg
movs r0, 0x50
movs r1, 0xFF
bl SetGpuReg
movs r0, 0x52
movs r1, 0
bl SetGpuReg
movs r0, 0x54
movs r1, 0x7
bl SetGpuReg
ldr r0, _0800C7F4 @ =gSaveBlock2Ptr
ldr r0, [r0]
ldrb r0, [r0, 0x8]
cmp r0, 0
bne _0800C7FC
ldr r1, _0800C7F8 @ =0x00007e04
b _0800C7FE
.align 2, 0
_0800C7F4: .4byte gSaveBlock2Ptr
_0800C7F8: .4byte 0x00007e04
_0800C7FC:
ldr r1, _0800C85C @ =0x0000547f
_0800C7FE:
add r0, sp, 0xC
strh r1, [r0]
add r0, sp, 0xC
movs r1, 0xF1
movs r2, 0x2
bl LoadPalette
ldr r2, _0800C860 @ =gTasks
lsls r1, r7, 2
adds r0, r1, r7
lsls r0, 3
adds r6, r0, r2
movs r2, 0x8
ldrsh r0, [r6, r2]
mov r8, r1
cmp r0, 0x1
beq _0800C870
cmp r0, 0x1
ble _0800C828
cmp r0, 0x2
beq _0800C8F0
_0800C828:
movs r0, 0
movs r1, 0xAA
bl FillWindowPixelBuffer
ldr r0, _0800C864 @ =gUnknown_8234688
str r0, [sp]
movs r0, 0x1
negs r0, r0
str r0, [sp, 0x4]
ldr r0, _0800C868 @ =gUnknown_8415A6E
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParameterized3
ldr r0, _0800C86C @ =gUnknown_8234618
bl sub_800D0B4
movs r0, 0
bl PutWindowTilemap
movs r0, 0
b _0800C8D8
.align 2, 0
_0800C85C: .4byte 0x0000547f
_0800C860: .4byte gTasks
_0800C864: .4byte gUnknown_8234688
_0800C868: .4byte gUnknown_8415A6E
_0800C86C: .4byte gUnknown_8234618
_0800C870:
movs r0, 0x1
movs r1, 0xAA
bl FillWindowPixelBuffer
movs r0, 0x2
movs r1, 0xAA
bl FillWindowPixelBuffer
ldr r5, _0800C8E0 @ =gUnknown_8234688
str r5, [sp]
movs r4, 0x1
negs r4, r4
str r4, [sp, 0x4]
ldr r0, _0800C8E4 @ =gUnknown_8415A77
str r0, [sp, 0x8]
movs r0, 0x1
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParameterized3
str r5, [sp]
str r4, [sp, 0x4]
ldr r0, _0800C8E8 @ =gUnknown_8415A6E
str r0, [sp, 0x8]
movs r0, 0x2
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParameterized3
bl sub_800CE58
ldr r4, _0800C8EC @ =gUnknown_8234620
adds r0, r4, 0
bl sub_800D0B4
adds r4, 0x8
adds r0, r4, 0
bl sub_800D0B4
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0x2
bl PutWindowTilemap
movs r0, 0x1
movs r1, 0x2
bl CopyWindowToVram
movs r0, 0x2
_0800C8D8:
movs r1, 0x3
bl CopyWindowToVram
b _0800C994
.align 2, 0
_0800C8E0: .4byte gUnknown_8234688
_0800C8E4: .4byte gUnknown_8415A77
_0800C8E8: .4byte gUnknown_8415A6E
_0800C8EC: .4byte gUnknown_8234620
_0800C8F0:
movs r0, 0x1
movs r1, 0xAA
bl FillWindowPixelBuffer
movs r0, 0x2
movs r1, 0xAA
bl FillWindowPixelBuffer
movs r0, 0x3
movs r1, 0xAA
bl FillWindowPixelBuffer
ldr r5, _0800C9B0 @ =gUnknown_8234688
str r5, [sp]
movs r4, 0x1
negs r4, r4
str r4, [sp, 0x4]
ldr r0, _0800C9B4 @ =gUnknown_8415A77
str r0, [sp, 0x8]
movs r0, 0x1
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParameterized3
str r5, [sp]
str r4, [sp, 0x4]
ldr r0, _0800C9B8 @ =gUnknown_8415A6E
str r0, [sp, 0x8]
movs r0, 0x2
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParameterized3
movs r0, 0x1
strh r0, [r6, 0x1C]
str r5, [sp]
str r4, [sp, 0x4]
ldr r0, _0800C9BC @ =gUnknown_8415A97
str r0, [sp, 0x8]
movs r0, 0x3
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl AddTextPrinterParameterized3
bl sub_800CE58
ldr r4, _0800C9C0 @ =gUnknown_8234620
adds r0, r4, 0
bl sub_800D0B4
adds r0, r4, 0
adds r0, 0x8
bl sub_800D0B4
adds r4, 0x10
adds r0, r4, 0
bl sub_800D0B4
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0x2
bl PutWindowTilemap
movs r0, 0x3
bl PutWindowTilemap
movs r0, 0x1
movs r1, 0x2
bl CopyWindowToVram
movs r0, 0x2
movs r1, 0x2
bl CopyWindowToVram
movs r0, 0x3
movs r1, 0x3
bl CopyWindowToVram
_0800C994:
ldr r0, _0800C9C4 @ =gTasks
mov r2, r8
adds r1, r2, r7
lsls r1, 3
adds r1, r0
ldr r0, _0800C9C8 @ =sub_800C9CC
str r0, [r1]
add sp, 0x10
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0800C9B0: .4byte gUnknown_8234688
_0800C9B4: .4byte gUnknown_8415A77
_0800C9B8: .4byte gUnknown_8415A6E
_0800C9BC: .4byte gUnknown_8415A97
_0800C9C0: .4byte gUnknown_8234620
_0800C9C4: .4byte gTasks
_0800C9C8: .4byte sub_800C9CC
thumb_func_end sub_800C7A0
thumb_func_start sub_800C9CC
sub_800C9CC: @ 800C9CC
push {r4,r5,lr}
sub sp, 0x4
lsls r0, 24
lsrs r4, r0, 24
movs r5, 0x1
negs r5, r5
adds r0, r5, 0
bl CheckForSpaceForDma3Request
lsls r0, 16
asrs r0, 16
cmp r0, r5
beq _0800CA10
ldr r1, _0800CA18 @ =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, _0800CA1C @ =sub_800CA28
str r1, [r0]
ldr r0, _0800CA20 @ =0x0000ffff
str r0, [sp]
adds r0, r5, 0
movs r1, 0
movs r2, 0x10
movs r3, 0
bl BeginNormalPaletteFade
movs r0, 0
bl ShowBg
ldr r0, _0800CA24 @ =sub_800C2EC
bl SetVBlankCallback
_0800CA10:
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0800CA18: .4byte gTasks
_0800CA1C: .4byte sub_800CA28
_0800CA20: .4byte 0x0000ffff
_0800CA24: .4byte sub_800C2EC
thumb_func_end sub_800C9CC
thumb_func_start sub_800CA28
sub_800CA28: @ 800CA28
push {r4,lr}
lsls r0, 24
lsrs r0, 24
ldr r1, _0800CA4C @ =gTasks
lsls r4, r0, 2
adds r4, r0
lsls r4, 3
adds r4, r1
ldrb r0, [r4, 0x8]
ldrb r1, [r4, 0xA]
bl sub_800CC94
ldr r0, _0800CA50 @ =sub_800CA54
str r0, [r4]
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0800CA4C: .4byte gTasks
_0800CA50: .4byte sub_800CA54
thumb_func_end sub_800CA28
thumb_func_start sub_800CA54
sub_800CA54: @ 800CA54
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _0800CA88 @ =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _0800CA80
adds r0, r4, 0
bl sub_800CCF8
lsls r0, 24
cmp r0, 0
beq _0800CA80
ldr r0, _0800CA8C @ =gTasks
lsls r1, r4, 2
adds r1, r4
lsls r1, 3
adds r1, r0
ldr r0, _0800CA90 @ =sub_800CA28
str r0, [r1]
_0800CA80:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0800CA88: .4byte gPaletteFade
_0800CA8C: .4byte gTasks
_0800CA90: .4byte sub_800CA28
thumb_func_end sub_800CA54
thumb_func_start sub_800CA94
sub_800CA94: @ 800CA94
push {r4-r6,lr}
sub sp, 0x4
lsls r0, 24
lsrs r6, r0, 24
ldr r0, _0800CAC4 @ =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _0800CB84
ldr r1, _0800CAC8 @ =gTasks
lsls r0, r6, 2
adds r0, r6
lsls r0, 3
adds r4, r0, r1
movs r1, 0x8
ldrsh r0, [r4, r1]
cmp r0, 0x1
beq _0800CACC
cmp r0, 0x1
ble _0800CAEE
cmp r0, 0x2
beq _0800CADA
b _0800CAEE
.align 2, 0
_0800CAC4: .4byte gPaletteFade
_0800CAC8: .4byte gTasks
_0800CACC:
movs r1, 0xA
ldrsh r0, [r4, r1]
cmp r0, 0
beq _0800CAEA
cmp r0, 0x1
bne _0800CAEA
b _0800CAEE
_0800CADA:
movs r1, 0xA
ldrsh r0, [r4, r1]
cmp r0, 0x1
beq _0800CAEE
cmp r0, 0x1
ble _0800CAEA
cmp r0, 0x2
beq _0800CAF2
_0800CAEA:
movs r0, 0x1
b _0800CB22
_0800CAEE:
movs r0, 0
b _0800CB22
_0800CAF2:
bl IsWirelessAdapterConnected
lsls r0, 24
lsrs r5, r0, 24
cmp r5, 0
bne _0800CB20
movs r0, 0
bl sub_800D094
ldr r0, _0800CB1C @ =sub_800CB90
str r0, [r4]
movs r0, 0x1
negs r0, r0
str r5, [sp]
movs r1, 0
movs r2, 0x10
movs r3, 0
bl BeginNormalPaletteFade
b _0800CB84
.align 2, 0
_0800CB1C: .4byte sub_800CB90
_0800CB20:
movs r0, 0x2
_0800CB22:
cmp r0, 0x1
beq _0800CB48
cmp r0, 0x1
ble _0800CB2E
cmp r0, 0x2
beq _0800CB70
_0800CB2E:
ldr r1, _0800CB44 @ =gUnknown_2031DE0
movs r0, 0
strb r0, [r1]
bl FreeAllWindowBuffers
adds r0, r6, 0
bl DestroyTask
bl StartNewGameScene
b _0800CB84
.align 2, 0
_0800CB44: .4byte gUnknown_2031DE0
_0800CB48:
ldr r0, _0800CB64 @ =gPlttBufferUnfaded
movs r2, 0
movs r1, 0
strh r1, [r0]
ldr r0, _0800CB68 @ =gPlttBufferFaded
strh r1, [r0]
ldr r0, _0800CB6C @ =gUnknown_2031DE0
strb r2, [r0]
bl FreeAllWindowBuffers
adds r0, r6, 0
bl sub_8110F14
b _0800CB84
.align 2, 0
_0800CB64: .4byte gPlttBufferUnfaded
_0800CB68: .4byte gPlttBufferFaded
_0800CB6C: .4byte gUnknown_2031DE0
_0800CB70:
ldr r0, _0800CB8C @ =c2_mystery_gift
bl SetMainCallback2
bl sub_812B478
bl FreeAllWindowBuffers
adds r0, r6, 0
bl DestroyTask
_0800CB84:
add sp, 0x4
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0800CB8C: .4byte c2_mystery_gift
thumb_func_end sub_800CA94
thumb_func_start sub_800CB90
sub_800CB90: @ 800CB90
push {r4,r5,lr}
sub sp, 0x8
lsls r0, 24
lsrs r5, r0, 24
ldr r1, _0800CBB4 @ =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r4, r0, r1
movs r0, 0x1A
ldrsh r1, [r4, r0]
cmp r1, 0x1
beq _0800CC0C
cmp r1, 0x1
bgt _0800CBB8
cmp r1, 0
beq _0800CBC2
b _0800CC58
.align 2, 0
_0800CBB4: .4byte gTasks
_0800CBB8:
cmp r1, 0x2
beq _0800CC1C
cmp r1, 0x3
beq _0800CC34
b _0800CC58
_0800CBC2:
movs r0, 0x1E
str r0, [sp]
movs r0, 0x14
str r0, [sp, 0x4]
movs r0, 0
movs r1, 0
movs r2, 0
movs r3, 0
bl FillBgTilemapBufferRect_Palette0
movs r1, 0x1C
ldrsh r0, [r4, r1]
cmp r0, 0x1
bne _0800CBEC
ldr r0, _0800CBE8 @ =gUnknown_8415AA4
bl sub_800CDF8
b _0800CBF2
.align 2, 0
_0800CBE8: .4byte gUnknown_8415AA4
_0800CBEC:
ldr r0, _0800CC04 @ =gUnknown_8415ACB
bl sub_800CDF8
_0800CBF2:
ldr r0, _0800CC08 @ =gTasks
lsls r1, r5, 2
adds r1, r5
lsls r1, 3
adds r1, r0
ldrh r0, [r1, 0x1A]
adds r0, 0x1
strh r0, [r1, 0x1A]
b _0800CC58
.align 2, 0
_0800CC04: .4byte gUnknown_8415ACB
_0800CC08: .4byte gTasks
_0800CC0C:
ldr r0, _0800CC18 @ =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
b _0800CC28
.align 2, 0
_0800CC18: .4byte gPaletteFade
_0800CC1C:
bl RunTextPrinters
movs r0, 0x4
bl IsTextPrinterActive
lsls r0, 16
_0800CC28:
cmp r0, 0
bne _0800CC58
ldrh r0, [r4, 0x1A]
adds r0, 0x1
strh r0, [r4, 0x1A]
b _0800CC58
_0800CC34:
ldr r0, _0800CC60 @ =gMain
ldrh r0, [r0, 0x2E]
ands r1, r0
cmp r1, 0
beq _0800CC58
movs r0, 0x5
bl PlaySE
movs r0, 0x1
negs r0, r0
movs r1, 0
str r1, [sp]
movs r2, 0
movs r3, 0x10
bl BeginNormalPaletteFade
ldr r0, _0800CC64 @ =sub_800CC68
str r0, [r4]
_0800CC58:
add sp, 0x8
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0800CC60: .4byte gMain
_0800CC64: .4byte sub_800CC68
thumb_func_end sub_800CB90
thumb_func_start sub_800CC68
sub_800CC68: @ 800CC68
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _0800CC8C @ =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _0800CC86
ldr r0, _0800CC90 @ =CB2_InitTitleScreen
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
_0800CC86:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0800CC8C: .4byte gPaletteFade
_0800CC90: .4byte CB2_InitTitleScreen
thumb_func_end sub_800CC68
thumb_func_start sub_800CC94
sub_800CC94: @ 800CC94
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
lsls r1, 24
lsrs r5, r1, 24
ldr r1, _0800CCB8 @ =0x000012de
movs r0, 0x40
bl SetGpuReg
cmp r4, 0
beq _0800CCB2
cmp r4, 0
blt _0800CCB2
cmp r4, 0x2
ble _0800CCBC
_0800CCB2:
movs r2, 0
movs r0, 0x20
b _0800CCDC
.align 2, 0
_0800CCB8: .4byte 0x000012de
_0800CCBC:
cmp r5, 0x1
beq _0800CCCE
cmp r5, 0x1
ble _0800CCC8
cmp r5, 0x2
beq _0800CCD6
_0800CCC8:
movs r2, 0
movs r0, 0x60
b _0800CCDC
_0800CCCE:
movs r2, 0xC0
lsls r2, 7
movs r0, 0x80
b _0800CCDC
_0800CCD6:
movs r2, 0x80
lsls r2, 8
movs r0, 0xA0
_0800CCDC:
movs r3, 0x80
lsls r3, 2
adds r1, r3, 0
adds r1, r2, r1
subs r0, 0x2
orrs r1, r0
lsls r1, 16
lsrs r1, 16
movs r0, 0x44
bl SetGpuReg
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end sub_800CC94
thumb_func_start sub_800CCF8
sub_800CCF8: @ 800CCF8
push {r4,r5,lr}
sub sp, 0x4
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _0800CD38 @ =gMain
ldrh r1, [r0, 0x2E]
movs r5, 0x1
ands r5, r1
adds r3, r0, 0
cmp r5, 0
beq _0800CD44
movs r0, 0x5
bl PlaySE
bl IsWirelessAdapterConnected
movs r0, 0x1
negs r0, r0
movs r1, 0
str r1, [sp]
movs r2, 0
movs r3, 0x10
bl BeginNormalPaletteFade
ldr r1, _0800CD3C @ =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, _0800CD40 @ =sub_800CA94
str r1, [r0]
b _0800CDEC
.align 2, 0
_0800CD38: .4byte gMain
_0800CD3C: .4byte gTasks
_0800CD40: .4byte sub_800CA94
_0800CD44:
movs r0, 0x2
ands r0, r1
cmp r0, 0
beq _0800CD8C
movs r0, 0x5
bl PlaySE
movs r0, 0x1
negs r0, r0
str r5, [sp]
movs r1, 0
movs r2, 0
movs r3, 0x10
bl BeginNormalPaletteFade
movs r0, 0x40
movs r1, 0xF0
bl SetGpuReg
movs r0, 0x44
movs r1, 0xA0
bl SetGpuReg
ldr r1, _0800CD84 @ =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, _0800CD88 @ =sub_800CC68
str r1, [r0]
b _0800CDEC
.align 2, 0
_0800CD84: .4byte gTasks
_0800CD88: .4byte sub_800CC68
_0800CD8C:
movs r0, 0x40
ands r0, r1
cmp r0, 0
beq _0800CDB4
ldr r0, _0800CDB0 @ =gTasks
lsls r1, r4, 2
adds r1, r4
lsls r1, 3
adds r1, r0
ldrh r2, [r1, 0xA]
movs r5, 0xA
ldrsh r0, [r1, r5]
cmp r0, 0
ble _0800CDB4
subs r0, r2, 0x1
strh r0, [r1, 0xA]
movs r0, 0x1
b _0800CDEE
.align 2, 0
_0800CDB0: .4byte gTasks
_0800CDB4:
ldrh r1, [r3, 0x2E]
movs r0, 0x80
ands r0, r1
cmp r0, 0
beq _0800CDEC
ldr r1, _0800CDE4 @ =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r3, r0, r1
movs r0, 0xA
ldrsh r2, [r3, r0]
ldr r1, _0800CDE8 @ =gUnknown_8234694
movs r4, 0x8
ldrsh r0, [r3, r4]
adds r0, r1
ldrb r0, [r0]
cmp r2, r0
bge _0800CDEC
ldrh r0, [r3, 0xA]
adds r0, 0x1
strh r0, [r3, 0xA]
movs r0, 0x1
b _0800CDEE
.align 2, 0
_0800CDE4: .4byte gTasks
_0800CDE8: .4byte gUnknown_8234694
_0800CDEC:
movs r0, 0
_0800CDEE:
add sp, 0x4
pop {r4,r5}
pop {r1}
bx r1
thumb_func_end sub_800CCF8
thumb_func_start sub_800CDF8
sub_800CDF8: @ 800CDF8
push {r4,lr}
sub sp, 0xC
adds r4, r0, 0
movs r0, 0x4
movs r1, 0xAA
bl FillWindowPixelBuffer
ldr r0, _0800CE48 @ =gUnknown_8234638
bl sub_800D0B4
ldr r0, _0800CE4C @ =gUnknown_8234688
str r0, [sp]
movs r0, 0x2
str r0, [sp, 0x4]
str r4, [sp, 0x8]
movs r0, 0x4
movs r1, 0x2
movs r2, 0
movs r3, 0x2
bl AddTextPrinterParameterized3
movs r0, 0x4
bl PutWindowTilemap
movs r0, 0x4
movs r1, 0x2
bl CopyWindowToVram
ldr r1, _0800CE50 @ =0x000013dd
movs r0, 0x40
bl SetGpuReg
ldr r1, _0800CE54 @ =0x0000739d
movs r0, 0x44
bl SetGpuReg
add sp, 0xC
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0800CE48: .4byte gUnknown_8234638
_0800CE4C: .4byte gUnknown_8234688
_0800CE50: .4byte 0x000013dd
_0800CE54: .4byte 0x0000739d
thumb_func_end sub_800CDF8
thumb_func_start sub_800CE58
sub_800CE58: @ 800CE58
push {lr}
bl sub_800CE70
bl sub_800CF3C
bl sub_800CED4
bl sub_800CFC4
pop {r0}
bx r0
thumb_func_end sub_800CE58
thumb_func_start sub_800CE70
sub_800CE70: @ 800CE70
push {lr}
sub sp, 0x14
ldr r0, _0800CEC8 @ =gUnknown_823468B
str r0, [sp]
movs r0, 0x1
negs r0, r0
str r0, [sp, 0x4]
ldr r0, _0800CECC @ =gUnknown_841B6D5
str r0, [sp, 0x8]
movs r0, 0x1
movs r1, 0x2
movs r2, 0x2
movs r3, 0x12
bl AddTextPrinterParameterized3
add r1, sp, 0xC
movs r2, 0
ldr r0, _0800CED0 @ =gSaveBlock2Ptr
ldr r3, [r0]
_0800CE96:
adds r0, r3, r2
ldrb r0, [r0]
strb r0, [r1]
adds r1, 0x1
adds r2, 0x1
cmp r2, 0x6
ble _0800CE96
movs r0, 0xFF
strb r0, [r1]
ldr r0, _0800CEC8 @ =gUnknown_823468B
str r0, [sp]
movs r0, 0x1
negs r0, r0
str r0, [sp, 0x4]
add r0, sp, 0xC
str r0, [sp, 0x8]
movs r0, 0x1
movs r1, 0x2
movs r2, 0x3E
movs r3, 0x12
bl AddTextPrinterParameterized3
add sp, 0x14
pop {r0}
bx r0
.align 2, 0
_0800CEC8: .4byte gUnknown_823468B
_0800CECC: .4byte gUnknown_841B6D5
_0800CED0: .4byte gSaveBlock2Ptr
thumb_func_end sub_800CE70
thumb_func_start sub_800CED4
sub_800CED4: @ 800CED4
push {r4-r6,lr}
@@ -892,7 +14,7 @@ sub_800CED4: @ 800CED4
movs r5, 0x1
negs r5, r5
str r5, [sp, 0x4]
ldr r0, _0800CF34 @ =gUnknown_841B6DC
ldr r0, _0800CF34 @ =gText_Time
str r0, [sp, 0x8]
movs r0, 0x1
movs r1, 0x2
@@ -929,7 +51,7 @@ sub_800CED4: @ 800CED4
bx r0
.align 2, 0
_0800CF30: .4byte gUnknown_823468B
_0800CF34: .4byte gUnknown_841B6DC
_0800CF34: .4byte gText_Time
_0800CF38: .4byte gSaveBlock2Ptr
thumb_func_end sub_800CED4
@@ -962,7 +84,7 @@ _0800CF6A:
movs r4, 0x1
negs r4, r4
str r4, [sp, 0x4]
ldr r0, _0800CFBC @ =gUnknown_841B6E3
ldr r0, _0800CFBC @ =gText_Pokedex
str r0, [sp, 0x8]
movs r0, 0x1
movs r1, 0x2
@@ -992,7 +114,7 @@ _0800CFAE:
bx r0
.align 2, 0
_0800CFB8: .4byte gUnknown_823468B
_0800CFBC: .4byte gUnknown_841B6E3
_0800CFBC: .4byte gText_Pokedex
_0800CFC0: .4byte gUnknown_841B6EB
thumb_func_end sub_800CF3C
+3 -1
View File
@@ -42,14 +42,16 @@ gUnknown_8234688:: @ 8234688
.incbin "baserom.gba", 0x234688, 0x3
gUnknown_823468B:: @ 823468B
.incbin "baserom.gba", 0x23468B, 0x5
.incbin "baserom.gba", 0x23468B, 0x3
.align 2
gUnknown_8234690:: @ 8234690
.incbin "baserom.gba", 0x234690, 0x4
gUnknown_8234694:: @ 8234694
.incbin "baserom.gba", 0x234694, 0x4
.align 2
gUnknown_8234698:: @ 8234698
.incbin "baserom.gba", 0x234698, 0x20
+12 -12
View File
@@ -48,25 +48,25 @@ gText_EggNickname:: @ 8415A62
gText_Pokemon:: @ 8415A66
.string "POKéMON$"
gUnknown_8415A6E:: @ 8415A6E
gText_NewGame:: @ 8415A6E
.string "NEW GAME$"
gUnknown_8415A77:: @ 8415A77
gText_Continue:: @ 8415A77
.string "CONTINUE$"
gUnknown_8415A80:: @ 0x8415A80
gTextJP_Options:: @ 0x8415A80
.string " $"
gUnknown_8415A8A:: @ 0x8415A8A
gUnusedText_MysteryGift:: @ 0x8415A8A
.string "MYSTERY GIFT$"
gUnknown_8415A97:: @ 8415A97
gText_MysteryGift:: @ 8415A97
.string "MYSTERY GIFT$"
gUnknown_8415AA4:: @ 8415AA4
gText_WirelessAdapterIsNotConnected:: @ 8415AA4
.string "The Wireless Adapter is not\nconnected.$"
gUnknown_8415ACB:: @ 8415ACB
gText_MysteryGiftCantBeUsedWhileWirelessAdapterIsAttached:: @ 8415ACB
.string "MYSTERY GIFT can't be used while\nthe Wireless Adapter is attached.$"
gUnknown_8415B0E:: @ 0x8415B0E
@@ -3037,16 +3037,16 @@ gUnknown_841B69E:: @ 841B69E
gUnknown_841B6B9:: @ 841B6B9
.string "Clearing data\nPlease wait.$"
gUnknown_841B6D5:: @ 841B6D5
gText_Player:: @ 841B6D5
.string "PLAYER$"
gUnknown_841B6DC:: @ 841B6DC
gText_Time:: @ 841B6DC
.string "TIME$"
gUnknown_841B6E1:: @ 0x841B6E1
gText_Colon:: @ 0x841B6E1
.string ":$"
gUnknown_841B6E3:: @ 841B6E3
gText_Pokedex:: @ 841B6E3
.string "POKéDEX$"
gUnknown_841B6EB:: @ 841B6EB
@@ -4199,7 +4199,7 @@ gText_WonderCardThrownAway:: @ 841ED7B
gText_WonderNewsThrownAway:: @ 841ED9C
.string "The WONDER NEWS was thrown away.$"
gText_MysteryGift:: @ 841EDBD
gText_MysteryGift2:: @ 841EDBD
.string "MYSTERY GIFT$"
gText_PickOKCancel:: @ 841EDCA
+1
View File
@@ -256,5 +256,6 @@ void sub_8009FE8(void);
void ClearLinkCallback_2(void);
void sub_80FA42C(void);
void sub_800B284(struct LinkPlayer * linkPlayer);
bool8 IsWirelessAdapterConnected(void);
#endif // GUARD_LINK_H
+1
View File
@@ -5,5 +5,6 @@ extern bool8 gGiftIsFromEReader;
void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void);
void PrintMysteryGiftOrEReaderTopMenu(bool8, bool32);
void c2_mystery_gift(void);
#endif //GUARD_MYSTERY_GIFT_MENU_H
+1
View File
@@ -35,6 +35,7 @@ void MapNamePopupWindowIdSetDummy(void);
void sub_8111CF0(void);
void sub_811089C(void);
void sub_8113044(void);
void TrySetUpQuestLogScenes_ElseContinueFromSave(u8 taskId);
extern u8 gUnknown_203ADFA;
+85
View File
@@ -340,5 +340,90 @@ extern const u8 gText_ABtnRegistrationCounter[];
extern const u8 gText_SaveFileCorruptedPrevWillBeLoaded[];
extern const u8 gText_SaveFileHasBeenDeleted[];
extern const u8 gText_1MSubCircuitBoardNotInstalled[];
extern const u8 gText_NewGame[];
extern const u8 gText_Continue[];
extern const u8 gText_MysteryGift[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_MysteryGiftCantBeUsedWhileWirelessAdapterIsAttached[];
extern const u8 gText_Player[];
extern const u8 gText_Time[];
extern const u8 gText_Colon[];
extern const u8 gText_Pokedex[];
extern const u8 gUnknown_841B6EB[];
extern const u8 gUnknown_841B6EC[];
extern const u8 gUnknown_841B6F3[];
extern const u8 gUnknown_841B6F4[];
// mystery_gift_menu
extern const u8 gText_PickOKExit[];
extern const u8 gText_PickOKCancel[];
extern const u8 gText_MysteryGift2[];
extern const u8 gJPText_MysteryGift[];
extern const u8 gJPText_DecideStop[];
extern const u8 gText_WhatToDoWithCards[];
extern const u8 gText_WhatToDoWithNews[];
extern const u8 gText_OkayToDiscardNews[];
extern const u8 gText_IfThrowAwayCardEventWontHappen[];
extern const u8 gText_WonderCardThrownAway[];
extern const u8 gText_WonderNewsThrownAway[];
extern const u8 gText_DataWillBeSaved[];
extern const u8 gText_SaveCompletedPressA[];
extern const u8 gText_WonderCards[];
extern const u8 gText_WonderNews[];
extern const u8 gText_Exit3[];
extern const u8 gText_WirelessCommunication[];
extern const u8 gText_Friend2[];
extern const u8 gFameCheckerText_Cancel[];
extern const u8 gText_Receive[];
extern const u8 gText_Send[];
extern const u8 gText_Toss[];
extern const u8 gText_VarietyOfEventsImportedWireless[];
extern const u8 gText_WonderCardsInPossession[];
extern const u8 gText_ReadNewsThatArrived[];
extern const u8 gText_ReturnToTitle[];
extern const u8 gText_NothingSentOver[];
extern const u8 gText_RecordUploadedViaWireless[];
extern const u8 gText_WonderCardReceived[];
extern const u8 gText_WonderCardReceivedFrom[];
extern const u8 gText_WonderNewsReceived[];
extern const u8 gText_WonderNewsReceivedFrom[];
extern const u8 gText_NewStampReceived[];
extern const u8 gText_AlreadyHadCard[];
extern const u8 gText_AlreadyHadStamp[];
extern const u8 gText_AlreadyHadNews[];
extern const u8 gText_NoMoreRoomForStamps[];
extern const u8 gText_CommunicationCanceled[];
extern const u8 gText_CantAcceptCardFromTrainer[];
extern const u8 gText_CantAcceptNewsFromTrainer[];
extern const u8 gText_CommunicationError[];
extern const u8 gText_NewTrainerReceived[];
extern const u8 gText_WonderCardSentTo[];
extern const u8 gText_WonderNewsSentTo[];
extern const u8 gText_StampSentTo[];
extern const u8 gText_OtherTrainerHasCard[];
extern const u8 gText_OtherTrainerHasStamp[];
extern const u8 gText_OtherTrainerHasNews[];
extern const u8 gText_OtherTrainerCanceled[];
extern const u8 gText_GiftSentTo[];
extern const u8 gText_CantSendGiftToTrainer[];
extern const u8 gText_DontHaveCardNewOneInput[];
extern const u8 gText_DontHaveNewsNewOneInput[];
extern const u8 gText_WhereShouldCardBeAccessed[];
extern const u8 gText_WhereShouldNewsBeAccessed[];
extern const u8 gText_Communicating[];
extern const u8 gText_ThrowAwayWonderCard[];
extern const u8 gText_HaventReceivedCardsGift[];
extern const u8 gText_CommunicationCompleted[];
extern const u8 gText_HaventReceivedGiftOkayToDiscard[];
extern const u8 gText_SendingWonderCard[];
extern const u8 gText_SendingWonderNews[];
#endif //GUARD_STRINGS_H
+328
View File
@@ -3,12 +3,23 @@
#include "gpu_regs.h"
#include "scanline_effect.h"
#include "bg.h"
#include "dma3.h"
#include "task.h"
#include "text.h"
#include "save.h"
#include "event_data.h"
#include "window.h"
#include "menu.h"
#include "link.h"
#include "oak_speech.h"
#include "overworld.h"
#include "quest_log.h"
#include "mystery_gift_menu.h"
#include "strings.h"
#include "sound.h"
#include "title_screen.h"
#include "help_system.h"
#include "constants/songs.h"
bool32 sub_800C318(u8 a0);
void sub_800C4D0(u8 taskId);
@@ -17,16 +28,32 @@ void sub_800C688(u8 taskId);
void sub_800C704(u8 taskId);
void sub_800C780(u8 taskId);
void sub_800C7A0(u8 taskId);
void sub_800C9CC(u8 taskId);
void sub_800CA28(u8 taskId);
void sub_800CA54(u8 taskId);
void sub_800CA94(u8 taskId);
void sub_800CB90(u8 taskId);
void sub_800CC68(u8 taskId);
void sub_800CC94(u8 menuType, u8 cursorPos);
bool8 sub_800CCF8(u8 taskId);
void sub_800CDF8(const u8 *str);
void sub_800CE58(void);
void sub_800CE70(void);
void sub_800CED4(void);
void sub_800CF3C(void);
void sub_800CFC4(void);
void sub_800D044(u8 a0);
void sub_800D094(u8 a0);
void sub_800D0B4(const struct WindowTemplate * template);
void sub_800D1E8(const struct WindowTemplate * template);
extern const struct WindowTemplate gUnknown_8234618[];
extern const u16 gUnknown_8234648[];
extern const u16 gUnknown_8234668[];
extern const u8 gUnknown_8234688[];
extern const u8 gUnknown_823468B[];
extern const struct BgTemplate gUnknown_8234690[1];
extern const u8 gUnknown_8234694[];
void sub_800C2D4(void)
{
@@ -215,3 +242,304 @@ void sub_800C780(u8 taskId)
sub_800C7A0(taskId);
}
}
void sub_800C7A0(u8 taskId)
{
u16 pal;
SetGpuReg(REG_OFFSET_WIN0H, 0);
SetGpuReg(REG_OFFSET_WIN0V, 0);
SetGpuReg(REG_OFFSET_WININ, 0x0001);
SetGpuReg(REG_OFFSET_WINOUT, 0x0021);
SetGpuReg(REG_OFFSET_BLDCNT,
BLDCNT_TGT1_BG0 | BLDCNT_TGT1_BG1 | BLDCNT_TGT1_BG2 | BLDCNT_TGT1_BG3 | BLDCNT_TGT1_OBJ |
BLDCNT_TGT1_BD | BLDCNT_EFFECT_DARKEN);
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 0));
SetGpuReg(REG_OFFSET_BLDY, 7);
if (gSaveBlock2Ptr->playerGender == MALE)
pal = RGB(4, 16, 31);
else
pal = RGB(31, 3, 21);
LoadPalette(&pal, 0xF1, 2);
switch (gTasks[taskId].data[0])
{
case 0:
default:
FillWindowPixelBuffer(0, PIXEL_FILL(10));
AddTextPrinterParameterized3(0, 2, 2, 2, gUnknown_8234688, -1, gText_NewGame);
sub_800D0B4(&gUnknown_8234618[0]);
PutWindowTilemap(0);
CopyWindowToVram(0, 3);
break;
case 1:
FillWindowPixelBuffer(1, PIXEL_FILL(10));
FillWindowPixelBuffer(2, PIXEL_FILL(10));
AddTextPrinterParameterized3(1, 2, 2, 2, gUnknown_8234688, -1, gText_Continue);
AddTextPrinterParameterized3(2, 2, 2, 2, gUnknown_8234688, -1, gText_NewGame);
sub_800CE58();
sub_800D0B4(&gUnknown_8234618[1]);
sub_800D0B4(&gUnknown_8234618[2]);
PutWindowTilemap(1);
PutWindowTilemap(2);
CopyWindowToVram(1, 2);
CopyWindowToVram(2, 3);
break;
case 2:
FillWindowPixelBuffer(1, PIXEL_FILL(10));
FillWindowPixelBuffer(2, PIXEL_FILL(10));
FillWindowPixelBuffer(3, PIXEL_FILL(10));
AddTextPrinterParameterized3(1, 2, 2, 2, gUnknown_8234688, -1, gText_Continue);
AddTextPrinterParameterized3(2, 2, 2, 2, gUnknown_8234688, -1, gText_NewGame);
gTasks[taskId].data[10] = 1;
AddTextPrinterParameterized3(3, 2, 2, 2, gUnknown_8234688, -1, gText_MysteryGift);
sub_800CE58();
sub_800D0B4(&gUnknown_8234618[1]);
sub_800D0B4(&gUnknown_8234618[2]);
sub_800D0B4(&gUnknown_8234618[3]);
PutWindowTilemap(1);
PutWindowTilemap(2);
PutWindowTilemap(3);
CopyWindowToVram(1, 2);
CopyWindowToVram(2, 2);
CopyWindowToVram(3, 3);
break;
}
gTasks[taskId].func = sub_800C9CC;
}
void sub_800C9CC(u8 taskId)
{
if (CheckForSpaceForDma3Request(-1) != -1)
{
gTasks[taskId].func = sub_800CA28;
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0xFFFF);
ShowBg(0);
SetVBlankCallback(sub_800C2EC);
}
}
void sub_800CA28(u8 taskId)
{
sub_800CC94(gTasks[taskId].data[0], gTasks[taskId].data[1]);
gTasks[taskId].func = sub_800CA54;
}
void sub_800CA54(u8 taskId)
{
if (!gPaletteFade.active && sub_800CCF8(taskId))
{
gTasks[taskId].func = sub_800CA28;
}
}
void sub_800CA94(u8 taskId)
{
s32 r0;
if (!gPaletteFade.active)
{
switch (gTasks[taskId].data[0])
{
default:
case 0:
r0 = 0;
break;
case 1:
switch (gTasks[taskId].data[1])
{
default:
case 0:
r0 = 1;
break;
case 1:
r0 = 0;
break;
}
break;
case 2:
switch (gTasks[taskId].data[1])
{
default:
case 0:
r0 = 1;
break;
case 1:
r0 = 0;
break;
case 2:
if (!IsWirelessAdapterConnected())
{
sub_800D094(0);
gTasks[taskId].func = sub_800CB90;
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
return;
}
else
{
r0 = 2;
}
break;
}
break;
}
switch (r0)
{
default:
case 0:
gUnknown_2031DE0 = 0;
FreeAllWindowBuffers();
DestroyTask(taskId);
StartNewGameScene();
break;
case 1:
gPlttBufferUnfaded[0] = RGB_BLACK;
gPlttBufferFaded[0] = RGB_BLACK;
gUnknown_2031DE0 = 0;
FreeAllWindowBuffers();
TrySetUpQuestLogScenes_ElseContinueFromSave(taskId);
break;
case 2:
SetMainCallback2(c2_mystery_gift);
sub_812B478();
FreeAllWindowBuffers();
DestroyTask(taskId);
break;
}
}
}
void sub_800CB90(u8 taskId)
{
switch (gTasks[taskId].data[9])
{
case 0:
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 30, 20);
if (gTasks[taskId].data[10] == 1)
sub_800CDF8(gText_WirelessAdapterIsNotConnected);
else
sub_800CDF8(gText_MysteryGiftCantBeUsedWhileWirelessAdapterIsAttached);
gTasks[taskId].data[9]++;
break;
case 1:
if (!gPaletteFade.active)
gTasks[taskId].data[9]++;
break;
case 2:
RunTextPrinters();
if (!IsTextPrinterActive(4))
gTasks[taskId].data[9]++;
break;
case 3:
if (JOY_NEW(A_BUTTON | B_BUTTON))
{
PlaySE(SE_SELECT);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
gTasks[taskId].func = sub_800CC68;
}
break;
}
}
void sub_800CC68(u8 taskId)
{
if (!gPaletteFade.active)
{
SetMainCallback2(CB2_InitTitleScreen);
DestroyTask(taskId);
}
}
void sub_800CC94(u8 menuType, u8 cursorPos)
{
u16 win0v1, win0v2;
SetGpuReg(REG_OFFSET_WIN0H, 0x12DE);
switch (menuType)
{
default:
case 0:
win0v1 = 0x00;
win0v2 = 0x20;
break;
case 1:
case 2:
switch (cursorPos)
{
default:
case 0:
win0v1 = 0x00;
win0v2 = 0x60;
break;
case 1:
win0v1 = 0x60 << 8;
win0v2 = 0x80;
break;
case 2:
win0v1 = 0x80 << 8;
win0v2 = 0xA0;
break;
}
break;
}
SetGpuReg(REG_OFFSET_WIN0V, (win0v1 + (2 << 8)) | (win0v2 - 2));
}
bool8 sub_800CCF8(u8 taskId)
{
if (JOY_NEW(A_BUTTON))
{
PlaySE(SE_SELECT);
IsWirelessAdapterConnected(); // called for its side effects only
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
gTasks[taskId].func = sub_800CA94;
}
else if (JOY_NEW(B_BUTTON))
{
PlaySE(SE_SELECT);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
SetGpuReg(REG_OFFSET_WIN0H, 0xF0);
SetGpuReg(REG_OFFSET_WIN0V, 0xA0);
gTasks[taskId].func = sub_800CC68;
}
else if (JOY_NEW(DPAD_UP) && gTasks[taskId].data[1] > 0)
{
gTasks[taskId].data[1]--;
return TRUE;
}
else if (JOY_NEW(DPAD_DOWN) && gTasks[taskId].data[1] < gUnknown_8234694[gTasks[taskId].data[0]])
{
gTasks[taskId].data[1]++;
return TRUE;
}
return FALSE;
}
void sub_800CDF8(const u8 *str)
{
FillWindowPixelBuffer(4, PIXEL_FILL(10));
sub_800D0B4(&gUnknown_8234618[4]);
AddTextPrinterParameterized3(4, 2, 0, 2, gUnknown_8234688, 2, str);
PutWindowTilemap(4);
CopyWindowToVram(4, 2);
SetGpuReg(REG_OFFSET_WIN0H, 0x13DD);
SetGpuReg(REG_OFFSET_WIN0V, 0x739D);
}
void sub_800CE58(void)
{
sub_800CE70();
sub_800CF3C();
sub_800CED4();
sub_800CFC4();
}
void sub_800CE70(void)
{
s32 i;
u8 name[OT_NAME_LENGTH + 1];
u8 *ptr;
AddTextPrinterParameterized3(1, 2, 2, 18, gUnknown_823468B, -1, gText_Player);
ptr = name;
for (i = 0; i < OT_NAME_LENGTH; i++)
*ptr++ = gSaveBlock2Ptr->playerName[i];
*ptr = EOS;
AddTextPrinterParameterized3(1, 2, 62, 18, gUnknown_823468B, -1, name);
}
+2 -64
View File
@@ -24,6 +24,7 @@
#include "mevent_server.h"
#include "menews_jisan.h"
#include "help_system.h"
#include "strings.h"
#include "constants/songs.h"
EWRAM_DATA u8 sDownArrowCounterAndYCoordIdx[8] = {};
@@ -33,69 +34,6 @@ void task_add_00_mystery_gift(void);
void task00_mystery_gift(u8 taskId);
void task_add_00_ereader(void);
extern const u8 gText_PickOKExit[];
extern const u8 gText_PickOKCancel[];
extern const u8 gText_MysteryGift[];
extern const u8 gJPText_MysteryGift[];
extern const u8 gJPText_DecideStop[];
extern const u8 gText_WhatToDoWithCards[];
extern const u8 gText_WhatToDoWithNews[];
extern const u8 gText_OkayToDiscardNews[];
extern const u8 gText_IfThrowAwayCardEventWontHappen[];
extern const u8 gText_WonderCardThrownAway[];
extern const u8 gText_WonderNewsThrownAway[];
extern const u8 gText_DataWillBeSaved[];
extern const u8 gText_SaveCompletedPressA[];
extern const u8 gText_WonderCards[];
extern const u8 gText_WonderNews[];
extern const u8 gText_Exit3[];
extern const u8 gText_WirelessCommunication[];
extern const u8 gText_Friend2[];
extern const u8 gFameCheckerText_Cancel[];
extern const u8 gText_Receive[];
extern const u8 gText_Send[];
extern const u8 gText_Toss[];
extern const u8 gText_VarietyOfEventsImportedWireless[];
extern const u8 gText_WonderCardsInPossession[];
extern const u8 gText_ReadNewsThatArrived[];
extern const u8 gText_ReturnToTitle[];
extern const u8 gText_NothingSentOver[];
extern const u8 gText_RecordUploadedViaWireless[];
extern const u8 gText_WonderCardReceived[];
extern const u8 gText_WonderCardReceivedFrom[];
extern const u8 gText_WonderNewsReceived[];
extern const u8 gText_WonderNewsReceivedFrom[];
extern const u8 gText_NewStampReceived[];
extern const u8 gText_AlreadyHadCard[];
extern const u8 gText_AlreadyHadStamp[];
extern const u8 gText_AlreadyHadNews[];
extern const u8 gText_NoMoreRoomForStamps[];
extern const u8 gText_CommunicationCanceled[];
extern const u8 gText_CantAcceptCardFromTrainer[];
extern const u8 gText_CantAcceptNewsFromTrainer[];
extern const u8 gText_CommunicationError[];
extern const u8 gText_NewTrainerReceived[];
extern const u8 gText_WonderCardSentTo[];
extern const u8 gText_WonderNewsSentTo[];
extern const u8 gText_StampSentTo[];
extern const u8 gText_OtherTrainerHasCard[];
extern const u8 gText_OtherTrainerHasStamp[];
extern const u8 gText_OtherTrainerHasNews[];
extern const u8 gText_OtherTrainerCanceled[];
extern const u8 gText_GiftSentTo[];
extern const u8 gText_CantSendGiftToTrainer[];
extern const u8 gText_DontHaveCardNewOneInput[];
extern const u8 gText_DontHaveNewsNewOneInput[];
extern const u8 gText_WhereShouldCardBeAccessed[];
extern const u8 gText_WhereShouldNewsBeAccessed[];
extern const u8 gText_Communicating[];
extern const u8 gText_ThrowAwayWonderCard[];
extern const u8 gText_HaventReceivedCardsGift[];
extern const u8 gText_CommunicationCompleted[];
extern const u8 gText_HaventReceivedGiftOkayToDiscard[];
extern const u8 gText_SendingWonderCard[];
extern const u8 gText_SendingWonderNews[];
const u16 gUnkTextboxBorderPal[] = INCBIN_U16("graphics/interface/unk_textbox_border.gbapal");
const u32 gUnkTextboxBorderGfx[] = INCBIN_U32("graphics/interface/unk_textbox_border.4bpp.lz");
@@ -538,7 +476,7 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 mg_or_ereader, bool32 usePickOkCance
if (!mg_or_ereader)
{
src = usePickOkCancel == TRUE ? gText_PickOKExit : gText_PickOKCancel;
AddTextPrinterParameterized4(0, 2, 2, 2, 0, 0, sMG_Ereader_TextColor_1, 0, gText_MysteryGift);
AddTextPrinterParameterized4(0, 2, 2, 2, 0, 0, sMG_Ereader_TextColor_1, 0, gText_MysteryGift2);
width = 222 - GetStringWidth(0, src, 0);
AddTextPrinterParameterized4(0, 0, width, 2, 0, 0, sMG_Ereader_TextColor_1, 0, src);
}
+7 -7
View File
@@ -93,7 +93,7 @@ static struct UnkStruct_300201C * gUnknown_300201C;
static u16 gUnknown_3002020;
EWRAM_DATA u8 gUnknown_203ADF8 = 0;
EWRAM_DATA u8 gUnknown_203ADF9 = 0;
static EWRAM_DATA u8 sNumScenes = 0;
EWRAM_DATA u8 gUnknown_203ADFA = 0;
EWRAM_DATA u16 gUnknown_203ADFC = 0;
EWRAM_DATA u8 gUnknown_203ADFE[3] = {0};
@@ -840,19 +840,19 @@ bool8 sub_8110E68(struct UnkStruct_203AE98 * a0)
return TRUE;
}
void sub_8110F14(u8 taskId)
void TrySetUpQuestLogScenes_ElseContinueFromSave(u8 taskId)
{
u8 i;
sub_811381C();
gUnknown_203ADF9 = 0;
sNumScenes = 0;
for (i = 0; i < 4; i++)
{
if (gSaveBlock1Ptr->questLog[i].unk_000)
gUnknown_203ADF9++;
sNumScenes++;
}
if (gUnknown_203ADF9 != 0)
if (sNumScenes != 0)
{
gUnknown_3005ECC = FALSE;
sub_8110F90(taskId);
@@ -1221,7 +1221,7 @@ void sub_8111914(void)
ScriptContext2_Enable();
if (++gUnknown_203ADF8 < 4 && gSaveBlock1Ptr->questLog[gUnknown_203ADF8].unk_000)
{
gUnknown_203ADF9--;
sNumScenes--;
sub_8111368();
}
else
@@ -1402,7 +1402,7 @@ bool8 sub_8111CD0(void)
void sub_8111CF0(void)
{
if (gUnknown_203ADFA == 2)
sub_8111070(gUnknown_203ADF9);
sub_8111070(sNumScenes);
}
void sub_8111D10(void)