Split rom_81370FC and port function names
This commit is contained in:
234
asm/birch_pc.s
Normal file
234
asm/birch_pc.s
Normal file
@@ -0,0 +1,234 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ScriptGetPokedexInfo
|
||||
ScriptGetPokedexInfo: @ 8137A4C
|
||||
push {lr}
|
||||
ldr r0, =gSpecialVar_0x8004
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _08137A70
|
||||
movs r0, 0
|
||||
bl sub_80C0844
|
||||
ldr r1, =gSpecialVar_0x8005
|
||||
strh r0, [r1]
|
||||
movs r0, 0x1
|
||||
bl sub_80C0844
|
||||
b _08137A80
|
||||
.pool
|
||||
_08137A70:
|
||||
movs r0, 0
|
||||
bl pokedex_count
|
||||
ldr r1, =gSpecialVar_0x8005
|
||||
strh r0, [r1]
|
||||
movs r0, 0x1
|
||||
bl pokedex_count
|
||||
_08137A80:
|
||||
ldr r1, =gSpecialVar_0x8006
|
||||
strh r0, [r1]
|
||||
bl IsNationalPokedexEnabled
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end ScriptGetPokedexInfo
|
||||
|
||||
thumb_func_start GetPokedexRatingText
|
||||
GetPokedexRatingText: @ 8137A98
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r0, 0x9
|
||||
bhi _08137AA4
|
||||
b _08137BFC
|
||||
_08137AA4:
|
||||
cmp r0, 0x13
|
||||
bhi _08137AB0
|
||||
ldr r0, =gUnknown_082A5DAB
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137AB0:
|
||||
cmp r0, 0x1D
|
||||
bhi _08137ABC
|
||||
ldr r0, =gUnknown_082A5DF1
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137ABC:
|
||||
cmp r0, 0x27
|
||||
bhi _08137AC8
|
||||
ldr r0, =gUnknown_082A5E34
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137AC8:
|
||||
cmp r0, 0x31
|
||||
bhi _08137AD4
|
||||
ldr r0, =gUnknown_082A5E83
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137AD4:
|
||||
cmp r0, 0x3B
|
||||
bhi _08137AE0
|
||||
ldr r0, =gUnknown_082A5EB9
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137AE0:
|
||||
cmp r0, 0x45
|
||||
bhi _08137AEC
|
||||
ldr r0, =gUnknown_082A5EF4
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137AEC:
|
||||
cmp r0, 0x4F
|
||||
bhi _08137AF8
|
||||
ldr r0, =gUnknown_082A5F39
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137AF8:
|
||||
cmp r0, 0x59
|
||||
bhi _08137B04
|
||||
ldr r0, =gUnknown_082A5F82
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B04:
|
||||
cmp r0, 0x63
|
||||
bhi _08137B10
|
||||
ldr r0, =gUnknown_082A5FB9
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B10:
|
||||
cmp r0, 0x6D
|
||||
bhi _08137B1C
|
||||
ldr r0, =gUnknown_082A6018
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B1C:
|
||||
cmp r0, 0x77
|
||||
bhi _08137B28
|
||||
ldr r0, =gUnknown_082A6061
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B28:
|
||||
cmp r0, 0x81
|
||||
bhi _08137B34
|
||||
ldr r0, =gUnknown_082A609C
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B34:
|
||||
cmp r0, 0x8B
|
||||
bhi _08137B40
|
||||
ldr r0, =gUnknown_082A60D5
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B40:
|
||||
cmp r0, 0x95
|
||||
bhi _08137B4C
|
||||
ldr r0, =gUnknown_082A6124
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B4C:
|
||||
cmp r0, 0x9F
|
||||
bhi _08137B58
|
||||
ldr r0, =gUnknown_082A616F
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B58:
|
||||
cmp r0, 0xA9
|
||||
bhi _08137B64
|
||||
ldr r0, =gUnknown_082A61D6
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B64:
|
||||
cmp r0, 0xB3
|
||||
bhi _08137B70
|
||||
ldr r0, =gUnknown_082A623A
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B70:
|
||||
cmp r0, 0xBD
|
||||
bhi _08137B7C
|
||||
ldr r0, =gUnknown_082A6287
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137B7C:
|
||||
cmp r0, 0xC7
|
||||
bls _08137BEA
|
||||
cmp r0, 0xC8
|
||||
bne _08137BB8
|
||||
ldr r0, =0x00000199
|
||||
bl SpeciesToNationalPokedexNum
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
bl GetSetPokedexFlag
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08137BEA
|
||||
movs r0, 0xCD
|
||||
lsls r0, 1
|
||||
bl SpeciesToNationalPokedexNum
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
bl GetSetPokedexFlag
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08137BEA
|
||||
b _08137C04
|
||||
.pool
|
||||
_08137BB8:
|
||||
cmp r0, 0xC9
|
||||
bne _08137BF8
|
||||
ldr r0, =0x00000199
|
||||
bl SpeciesToNationalPokedexNum
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
bl GetSetPokedexFlag
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08137C04
|
||||
movs r0, 0xCD
|
||||
lsls r0, 1
|
||||
bl SpeciesToNationalPokedexNum
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
bl GetSetPokedexFlag
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08137C04
|
||||
_08137BEA:
|
||||
ldr r0, =gUnknown_082A62C9
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137BF8:
|
||||
cmp r0, 0xCA
|
||||
beq _08137C04
|
||||
_08137BFC:
|
||||
ldr r0, =gUnknown_082A5D6C
|
||||
b _08137C06
|
||||
.pool
|
||||
_08137C04:
|
||||
ldr r0, =gUnknown_082A6312
|
||||
_08137C06:
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end GetPokedexRatingText
|
||||
|
||||
thumb_func_start ShowPokedexRatingMessage
|
||||
ShowPokedexRatingMessage: @ 8137C10
|
||||
push {lr}
|
||||
ldr r0, =gSpecialVar_0x8004
|
||||
ldrh r0, [r0]
|
||||
bl GetPokedexRatingText
|
||||
bl ShowFieldMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end ShowPokedexRatingMessage
|
||||
@@ -6657,7 +6657,7 @@ sub_80DB0C4: @ 80DB0C4
|
||||
lsls r1, 1
|
||||
movs r2, 0x20
|
||||
bl LoadCompressedPalette
|
||||
ldr r0, =gUnknown_08587BE8
|
||||
ldr r0, =gSpriteTemplate_8587BE8
|
||||
movs r1, 0x70
|
||||
movs r2, 0x24
|
||||
movs r3, 0x1E
|
||||
@@ -6692,7 +6692,7 @@ sub_80DB120: @ 80DB120
|
||||
bl LoadCompressedObjectPic
|
||||
ldr r0, =gUnknown_08587C10
|
||||
bl LoadCompressedObjectPalette
|
||||
ldr r0, =gUnknown_08587C18
|
||||
ldr r0, =gSpriteTemplate_8587C18
|
||||
movs r1, 0x60
|
||||
movs r2, 0xA
|
||||
movs r3, 0x1D
|
||||
@@ -8946,7 +8946,7 @@ _080DC2C8:
|
||||
ldrb r0, [r0]
|
||||
adds r0, r5
|
||||
ldrb r2, [r0]
|
||||
ldr r0, =gUnknown_08587AD0
|
||||
ldr r0, =gSpriteTemplate_8587AD0
|
||||
movs r1, 0xB4
|
||||
movs r3, 0x1
|
||||
bl CreateSprite
|
||||
@@ -9240,7 +9240,7 @@ _080DC506:
|
||||
ldr r1, =gUnknown_08587AE8
|
||||
adds r0, r1
|
||||
bl LoadCompressedObjectPic
|
||||
ldr r0, =gUnknown_08587B18
|
||||
ldr r0, =gSpriteTemplate_8587B18
|
||||
adds r0, r6, r0
|
||||
ldr r2, =gUnknown_08587A70
|
||||
ldr r1, =gUnknown_02039F26
|
||||
@@ -9264,7 +9264,7 @@ _080DC506:
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
add r0, r8
|
||||
ldr r1, =gUnknown_08587B80
|
||||
ldr r1, =gSubspriteTables_8587B80
|
||||
bl SetSubspriteTables
|
||||
ldr r0, [r7]
|
||||
ldr r0, [r0, 0x14]
|
||||
@@ -9298,7 +9298,7 @@ sub_80DC594: @ 80DC594
|
||||
bl LoadCompressedObjectPic
|
||||
ldr r0, =gUnknown_08587BB8
|
||||
bl LoadSpritePalette
|
||||
ldr r0, =gUnknown_08587BC8
|
||||
ldr r0, =gSpriteTemplate_8587BC8
|
||||
movs r1, 0x1E
|
||||
movs r2, 0x2C
|
||||
movs r3, 0x1
|
||||
@@ -9877,7 +9877,7 @@ sub_80DC9EC: @ 80DC9EC
|
||||
lsls r4, r2, 1
|
||||
adds r4, r2
|
||||
lsls r4, 3
|
||||
ldr r0, =gUnknown_0858998C
|
||||
ldr r0, =gSpriteTemplate_858998C
|
||||
adds r4, r0
|
||||
adds r0, r4, 0
|
||||
movs r1, 0xB8
|
||||
|
||||
@@ -2151,7 +2151,7 @@ sub_80F6AE8: @ 80F6AE8
|
||||
movs r2, 0x80
|
||||
movs r3, 0x1
|
||||
bl RequestDma3Fill
|
||||
ldr r0, =gUnknown_0858D8C8
|
||||
ldr r0, =gSpriteTemplate_858D8C8
|
||||
movs r1, 0x8
|
||||
movs r2, 0x8
|
||||
movs r3, 0
|
||||
@@ -2454,7 +2454,7 @@ sub_80F6DC0: @ 80F6DC0
|
||||
push {r4-r6,lr}
|
||||
sub sp, 0x20
|
||||
mov r1, sp
|
||||
ldr r0, =gUnknown_0858D7F8
|
||||
ldr r0, =gSpriteTemplate_858D7F8
|
||||
ldm r0!, {r2-r4}
|
||||
stm r1!, {r2-r4}
|
||||
ldm r0!, {r2-r4}
|
||||
@@ -3564,7 +3564,7 @@ sub_80F7670: @ 80F7670
|
||||
ldrb r0, [r0, 0x7]
|
||||
cmp r0, 0x27
|
||||
bhi _080F7732
|
||||
ldr r4, =gUnknown_0858D860
|
||||
ldr r4, =gSpriteTemplate_858D860
|
||||
bl Random
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
709
asm/fldeff_flash.s
Normal file
709
asm/fldeff_flash.s
Normal file
@@ -0,0 +1,709 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start SetUpFieldMove_Flash
|
||||
SetUpFieldMove_Flash: @ 81370FC
|
||||
push {r4,lr}
|
||||
bl ShouldDoBrailleFlyEffect
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08137134
|
||||
ldr r4, =gSpecialVar_Result
|
||||
bl GetCursorSelectionMonId
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r4]
|
||||
ldr r1, =gUnknown_03005DB0
|
||||
ldr r0, =hm_add_c3_launch_phase_2
|
||||
str r0, [r1]
|
||||
ldr r1, =gUnknown_0203CEEC
|
||||
ldr r0, =sub_8179918
|
||||
b _08137152
|
||||
.pool
|
||||
_08137134:
|
||||
ldr r0, =gMapHeader
|
||||
ldrb r0, [r0, 0x15]
|
||||
cmp r0, 0x1
|
||||
bne _08137170
|
||||
ldr r0, =0x00000888
|
||||
bl FlagGet
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08137170
|
||||
ldr r1, =gUnknown_03005DB0
|
||||
ldr r0, =hm_add_c3_launch_phase_2
|
||||
str r0, [r1]
|
||||
ldr r1, =gUnknown_0203CEEC
|
||||
ldr r0, =hm2_flash
|
||||
_08137152:
|
||||
str r0, [r1]
|
||||
movs r0, 0x1
|
||||
b _08137172
|
||||
.pool
|
||||
_08137170:
|
||||
movs r0, 0
|
||||
_08137172:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end SetUpFieldMove_Flash
|
||||
|
||||
thumb_func_start hm2_flash
|
||||
hm2_flash: @ 8137178
|
||||
push {r4,lr}
|
||||
bl oei_task_add
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
bl GetCursorSelectionMonId
|
||||
ldr r1, =gFieldEffectArguments
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [r1]
|
||||
ldr r1, =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldr r2, =sub_81371B4
|
||||
lsrs r1, r2, 16
|
||||
strh r1, [r0, 0x18]
|
||||
strh r2, [r0, 0x1A]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end hm2_flash
|
||||
|
||||
thumb_func_start sub_81371B4
|
||||
sub_81371B4: @ 81371B4
|
||||
push {lr}
|
||||
movs r0, 0xCF
|
||||
bl PlaySE
|
||||
ldr r0, =0x00000888
|
||||
bl FlagSet
|
||||
ldr r0, =EventScript_2926F8
|
||||
bl ScriptContext1_SetupScript
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81371B4
|
||||
|
||||
thumb_func_start sub_81371D4
|
||||
sub_81371D4: @ 81371D4
|
||||
push {lr}
|
||||
bl RunTasks
|
||||
bl AnimateSprites
|
||||
bl BuildOamBuffer
|
||||
bl UpdatePaletteFade
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_81371D4
|
||||
|
||||
thumb_func_start sub_81371EC
|
||||
sub_81371EC: @ 81371EC
|
||||
push {lr}
|
||||
bl LoadOam
|
||||
bl ProcessSpriteCopyRequests
|
||||
bl TransferPlttBuffer
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_81371EC
|
||||
|
||||
thumb_func_start c2_change_map
|
||||
c2_change_map: @ 8137200
|
||||
push {r4,lr}
|
||||
sub sp, 0x8
|
||||
movs r0, 0
|
||||
bl SetVBlankCallback
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0xC
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0xA
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x8
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x18
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x1A
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x14
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x16
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x10
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x12
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
mov r1, sp
|
||||
movs r0, 0
|
||||
strh r0, [r1]
|
||||
ldr r1, =0x040000d4
|
||||
mov r0, sp
|
||||
str r0, [r1]
|
||||
movs r0, 0xC0
|
||||
lsls r0, 19
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, =0x8100c000
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
movs r4, 0
|
||||
str r4, [sp, 0x4]
|
||||
add r0, sp, 0x4
|
||||
str r0, [r1]
|
||||
movs r0, 0xE0
|
||||
lsls r0, 19
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, =0x85000100
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
mov r0, sp
|
||||
strh r4, [r0]
|
||||
str r0, [r1]
|
||||
ldr r0, =0x05000002
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, =0x810001ff
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
bl ResetPaletteFade
|
||||
bl ResetTasks
|
||||
bl ResetSpriteData
|
||||
ldr r3, =0x04000208
|
||||
ldrh r2, [r3]
|
||||
strh r4, [r3]
|
||||
ldr r4, =0x04000200
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
orrs r0, r1
|
||||
strh r0, [r4]
|
||||
strh r2, [r3]
|
||||
ldr r0, =sub_81371EC
|
||||
bl SetVBlankCallback
|
||||
ldr r0, =sub_81371D4
|
||||
bl SetMainCallback2
|
||||
bl sub_8137304
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _081372D2
|
||||
ldr r0, =gMain
|
||||
ldr r0, [r0, 0x8]
|
||||
bl SetMainCallback2
|
||||
_081372D2:
|
||||
add sp, 0x8
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end c2_change_map
|
||||
|
||||
thumb_func_start sub_8137304
|
||||
sub_8137304: @ 8137304
|
||||
push {r4-r7,lr}
|
||||
bl get_map_light_from_warp0
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
bl sav1_map_get_light_level
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
movs r3, 0
|
||||
ldr r4, =gUnknown_085B27C8
|
||||
ldrb r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _08137358
|
||||
adds r7, r4, 0
|
||||
adds r0, r4, 0x4
|
||||
mov r12, r0
|
||||
_08137326:
|
||||
lsls r2, r3, 3
|
||||
adds r1, r2, r7
|
||||
ldrb r0, [r1]
|
||||
cmp r0, r6
|
||||
bne _08137348
|
||||
ldrb r0, [r1, 0x1]
|
||||
cmp r0, r5
|
||||
bne _08137348
|
||||
mov r1, r12
|
||||
adds r0, r2, r1
|
||||
ldr r0, [r0]
|
||||
bl _call_via_r0
|
||||
movs r0, 0x1
|
||||
b _0813735A
|
||||
.pool
|
||||
_08137348:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
lsls r0, r3, 3
|
||||
adds r0, r4
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _08137326
|
||||
_08137358:
|
||||
movs r0, 0
|
||||
_0813735A:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8137304
|
||||
|
||||
thumb_func_start sub_8137360
|
||||
sub_8137360: @ 8137360
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsls r1, 24
|
||||
lsrs r5, r0, 24
|
||||
lsrs r4, r1, 24
|
||||
movs r3, 0
|
||||
ldr r1, =gUnknown_085B27C8
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0
|
||||
beq _081373A0
|
||||
adds r6, r1, 0
|
||||
_08137376:
|
||||
lsls r0, r3, 3
|
||||
adds r2, r0, r6
|
||||
ldrb r0, [r2]
|
||||
cmp r0, r5
|
||||
bne _08137390
|
||||
ldrb r0, [r2, 0x1]
|
||||
cmp r0, r4
|
||||
bne _08137390
|
||||
ldrb r0, [r2, 0x2]
|
||||
b _081373A2
|
||||
.pool
|
||||
_08137390:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
lsls r0, r3, 3
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _08137376
|
||||
_081373A0:
|
||||
movs r0, 0
|
||||
_081373A2:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8137360
|
||||
|
||||
thumb_func_start fade_type_for_given_maplight_pair
|
||||
fade_type_for_given_maplight_pair: @ 81373A8
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsls r1, 24
|
||||
lsrs r5, r0, 24
|
||||
lsrs r4, r1, 24
|
||||
movs r3, 0
|
||||
ldr r1, =gUnknown_085B27C8
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0
|
||||
beq _081373E8
|
||||
adds r6, r1, 0
|
||||
_081373BE:
|
||||
lsls r0, r3, 3
|
||||
adds r2, r0, r6
|
||||
ldrb r0, [r2]
|
||||
cmp r0, r5
|
||||
bne _081373D8
|
||||
ldrb r0, [r2, 0x1]
|
||||
cmp r0, r4
|
||||
bne _081373D8
|
||||
ldrb r0, [r2, 0x3]
|
||||
b _081373EA
|
||||
.pool
|
||||
_081373D8:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
lsls r0, r3, 3
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _081373BE
|
||||
_081373E8:
|
||||
movs r0, 0
|
||||
_081373EA:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end fade_type_for_given_maplight_pair
|
||||
|
||||
thumb_func_start sub_81373F0
|
||||
sub_81373F0: @ 81373F0
|
||||
push {lr}
|
||||
ldr r0, =sub_8137404
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81373F0
|
||||
|
||||
thumb_func_start sub_8137404
|
||||
sub_8137404: @ 8137404
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r0, =sub_8137420
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.pool
|
||||
thumb_func_end sub_8137404
|
||||
|
||||
thumb_func_start sub_8137420
|
||||
sub_8137420: @ 8137420
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
ldr r0, =gCaveTransitionTiles
|
||||
ldr r1, =0x0600c000
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, =gCaveTransitionTilemap
|
||||
ldr r1, =0x0600f800
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, =gCaveTransitionPalette_White
|
||||
movs r1, 0xE0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, =gUnknown_085B28A0
|
||||
movs r1, 0xE0
|
||||
movs r2, 0x10
|
||||
bl LoadPalette
|
||||
ldr r1, =0x00003e41
|
||||
movs r0, 0x50
|
||||
bl SetGpuReg
|
||||
movs r0, 0x52
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x54
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
ldr r1, =0x00001f0c
|
||||
movs r0, 0x8
|
||||
bl SetGpuReg
|
||||
movs r1, 0x8A
|
||||
lsls r1, 5
|
||||
movs r0, 0
|
||||
bl SetGpuReg
|
||||
ldr r1, =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldr r1, =sub_81374C4
|
||||
str r1, [r0]
|
||||
movs r2, 0
|
||||
movs r1, 0x10
|
||||
strh r1, [r0, 0x8]
|
||||
strh r2, [r0, 0xA]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8137420
|
||||
|
||||
thumb_func_start sub_81374C4
|
||||
sub_81374C4: @ 81374C4
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r5, r1, r2
|
||||
ldrh r4, [r5, 0xA]
|
||||
movs r0, 0x80
|
||||
lsls r0, 5
|
||||
adds r1, r4, r0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
movs r0, 0x52
|
||||
bl SetGpuReg
|
||||
cmp r4, 0x10
|
||||
bhi _081374F8
|
||||
ldrh r0, [r5, 0xA]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0xA]
|
||||
b _08137500
|
||||
.pool
|
||||
_081374F8:
|
||||
movs r0, 0
|
||||
strh r0, [r5, 0xC]
|
||||
ldr r0, =sub_813750C
|
||||
str r0, [r5]
|
||||
_08137500:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81374C4
|
||||
|
||||
thumb_func_start sub_813750C
|
||||
sub_813750C: @ 813750C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r1, =0x00001010
|
||||
movs r0, 0x52
|
||||
bl SetGpuReg
|
||||
ldr r1, =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r4, r0, r1
|
||||
ldrh r1, [r4, 0xC]
|
||||
cmp r1, 0x7
|
||||
bhi _08137554
|
||||
adds r0, r1, 0x1
|
||||
strh r0, [r4, 0xC]
|
||||
lsls r1, 1
|
||||
ldr r0, =gUnknown_085B28A0
|
||||
adds r0, r1, r0
|
||||
movs r2, 0x10
|
||||
subs r2, r1
|
||||
lsls r2, 16
|
||||
lsrs r2, 16
|
||||
movs r1, 0xE0
|
||||
bl LoadPalette
|
||||
b _08137566
|
||||
.pool
|
||||
_08137554:
|
||||
ldr r0, =gCaveTransitionPalette_White
|
||||
movs r1, 0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, =sub_8137574
|
||||
str r0, [r4]
|
||||
movs r0, 0x8
|
||||
strh r0, [r4, 0xC]
|
||||
_08137566:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_813750C
|
||||
|
||||
thumb_func_start sub_8137574
|
||||
sub_8137574: @ 8137574
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldrh r2, [r1, 0xC]
|
||||
movs r3, 0xC
|
||||
ldrsh r0, [r1, r3]
|
||||
cmp r0, 0
|
||||
beq _08137598
|
||||
subs r0, r2, 0x1
|
||||
strh r0, [r1, 0xC]
|
||||
b _081375A0
|
||||
.pool
|
||||
_08137598:
|
||||
ldr r0, =gMain
|
||||
ldr r0, [r0, 0x8]
|
||||
bl SetMainCallback2
|
||||
_081375A0:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8137574
|
||||
|
||||
thumb_func_start sub_81375A8
|
||||
sub_81375A8: @ 81375A8
|
||||
push {lr}
|
||||
ldr r0, =sub_81375BC
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81375A8
|
||||
|
||||
thumb_func_start sub_81375BC
|
||||
sub_81375BC: @ 81375BC
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r0, =sub_81375D8
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.pool
|
||||
thumb_func_end sub_81375BC
|
||||
|
||||
thumb_func_start sub_81375D8
|
||||
sub_81375D8: @ 81375D8
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
ldr r0, =gCaveTransitionTiles
|
||||
ldr r1, =0x0600c000
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, =gCaveTransitionTilemap
|
||||
ldr r1, =0x0600f800
|
||||
bl LZ77UnCompVram
|
||||
movs r0, 0x50
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x52
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
movs r0, 0x54
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
ldr r1, =0x00001f0c
|
||||
movs r0, 0x8
|
||||
bl SetGpuReg
|
||||
movs r1, 0x8A
|
||||
lsls r1, 5
|
||||
movs r0, 0
|
||||
bl SetGpuReg
|
||||
ldr r0, =gCaveTransitionPalette_White
|
||||
movs r1, 0xE0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, =gCaveTransitionPalette_Black
|
||||
movs r1, 0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r1, =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldr r1, =sub_8137678
|
||||
str r1, [r0]
|
||||
movs r2, 0
|
||||
movs r1, 0x10
|
||||
strh r1, [r0, 0x8]
|
||||
strh r2, [r0, 0xA]
|
||||
strh r2, [r0, 0xC]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81375D8
|
||||
|
||||
thumb_func_start sub_8137678
|
||||
sub_8137678: @ 8137678
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r4, r1, r2
|
||||
ldrh r1, [r4, 0xC]
|
||||
cmp r1, 0xF
|
||||
bhi _081376B4
|
||||
adds r2, r1, 0x1
|
||||
adds r0, r2, 0x1
|
||||
strh r0, [r4, 0xC]
|
||||
movs r0, 0xF
|
||||
subs r0, r1
|
||||
lsls r0, 1
|
||||
ldr r1, =gUnknown_085B2890
|
||||
adds r0, r1
|
||||
lsls r2, 17
|
||||
lsrs r2, 16
|
||||
movs r1, 0xE0
|
||||
bl LoadPalette
|
||||
b _081376C8
|
||||
.pool
|
||||
_081376B4:
|
||||
ldr r1, =0x00001010
|
||||
movs r0, 0x52
|
||||
bl SetGpuReg
|
||||
ldr r1, =0x00003e41
|
||||
movs r0, 0x50
|
||||
bl SetGpuReg
|
||||
ldr r0, =sub_81376DC
|
||||
str r0, [r4]
|
||||
_081376C8:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_8137678
|
||||
|
||||
thumb_func_start sub_81376DC
|
||||
sub_81376DC: @ 81376DC
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r5, r1, r2
|
||||
ldrh r0, [r5, 0xA]
|
||||
movs r1, 0x10
|
||||
subs r1, r0
|
||||
lsls r1, 16
|
||||
lsrs r4, r1, 16
|
||||
movs r0, 0x80
|
||||
lsls r0, 21
|
||||
adds r1, r0
|
||||
lsrs r1, 16
|
||||
movs r0, 0x52
|
||||
bl SetGpuReg
|
||||
cmp r4, 0
|
||||
beq _08137714
|
||||
ldrh r0, [r5, 0xA]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0xA]
|
||||
b _08137726
|
||||
.pool
|
||||
_08137714:
|
||||
ldr r0, =gCaveTransitionPalette_Black
|
||||
movs r1, 0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, =gMain
|
||||
ldr r0, [r0, 0x8]
|
||||
bl SetMainCallback2
|
||||
_08137726:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81376DC
|
||||
73
asm/hof_pc.s
Normal file
73
asm/hof_pc.s
Normal file
@@ -0,0 +1,73 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start AccessHallOfFamePC
|
||||
AccessHallOfFamePC: @ 8137C28
|
||||
push {lr}
|
||||
ldr r0, =CB2_DoHallOfFamePC
|
||||
bl SetMainCallback2
|
||||
bl ScriptContext2_Enable
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end AccessHallOfFamePC
|
||||
|
||||
thumb_func_start ReturnFromHallOfFamePC
|
||||
ReturnFromHallOfFamePC: @ 8137C3C
|
||||
push {lr}
|
||||
ldr r0, =c2_exit_to_overworld_2_switch
|
||||
bl SetMainCallback2
|
||||
ldr r1, =gFieldCallback
|
||||
ldr r0, =ReshowPCMenuAfterHallOfFamePC
|
||||
str r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end ReturnFromHallOfFamePC
|
||||
|
||||
thumb_func_start ReshowPCMenuAfterHallOfFamePC
|
||||
ReshowPCMenuAfterHallOfFamePC: @ 8137C5C
|
||||
push {lr}
|
||||
sub sp, 0x4
|
||||
bl ScriptContext2_Enable
|
||||
bl sub_8085784
|
||||
bl sp109_CreatePCMenu
|
||||
bl sub_80E2514
|
||||
movs r0, 0x1
|
||||
negs r0, r0
|
||||
movs r1, 0
|
||||
str r1, [sp]
|
||||
movs r2, 0x10
|
||||
movs r3, 0
|
||||
bl BeginNormalPaletteFade
|
||||
ldr r0, =Task_WaitForPaletteFade
|
||||
movs r1, 0xA
|
||||
bl CreateTask
|
||||
add sp, 0x4
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end ReshowPCMenuAfterHallOfFamePC
|
||||
|
||||
thumb_func_start Task_WaitForPaletteFade
|
||||
Task_WaitForPaletteFade: @ 8137C94
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r0, =gPaletteFade
|
||||
ldrb r1, [r0, 0x7]
|
||||
movs r0, 0x80
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
bne _08137CAC
|
||||
adds r0, r2, 0
|
||||
bl DestroyTask
|
||||
_08137CAC:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end Task_WaitForPaletteFade
|
||||
@@ -65,7 +65,7 @@
|
||||
.byte 3, 4, \slot, \slot, \slot
|
||||
.endm
|
||||
|
||||
.macro sprite_oam x, y, priority, tile_num_offset, size
|
||||
.macro subsprite x, y, priority, tile_num_offset, size
|
||||
.byte \x
|
||||
.byte \y
|
||||
.2byte ((\priority) << 14) | ((\tile_num_offset) << 4) | SPRITE_SIZE_\size
|
||||
@@ -114,7 +114,8 @@
|
||||
.4byte 0 @ padding
|
||||
.endm
|
||||
|
||||
.macro obj_rot_scal_anim_end
|
||||
.macro obj_rot_scal_anim_end unknown=0
|
||||
.2byte 0x7fff
|
||||
.fill 6 @ padding
|
||||
.2byte \unknown
|
||||
.fill 4 @ padding
|
||||
.endm
|
||||
|
||||
@@ -130,7 +130,7 @@ sub_8084788: @ 8084788
|
||||
ldr r0, =0x0000088c
|
||||
bl FlagClear
|
||||
bl sub_8085B2C
|
||||
bl wild_pokemon_reroll
|
||||
bl ResetCyclingRoadChallengeData
|
||||
bl UpdateLocationHistoryForRoamer
|
||||
bl RoamerMoveToOtherLocationSet
|
||||
pop {r0}
|
||||
@@ -1377,7 +1377,7 @@ _080850C8:
|
||||
bl CopyFieldObjectTemplatesToSav1
|
||||
bl TrySetMapSaveWarpStatus
|
||||
bl ClearTempFieldEventData
|
||||
bl wild_pokemon_reroll
|
||||
bl ResetCyclingRoadChallengeData
|
||||
bl prev_quest_postbuffer_cursor_backup_reset
|
||||
adds r0, r6, 0
|
||||
adds r1, r5, 0
|
||||
@@ -1465,7 +1465,7 @@ _080851A2:
|
||||
bl sub_80EB218
|
||||
bl TrySetMapSaveWarpStatus
|
||||
bl ClearTempFieldEventData
|
||||
bl wild_pokemon_reroll
|
||||
bl ResetCyclingRoadChallengeData
|
||||
bl prev_quest_postbuffer_cursor_backup_reset
|
||||
ldr r0, =gSaveBlock1Ptr
|
||||
ldr r1, [r0]
|
||||
@@ -2668,7 +2668,7 @@ sub_8085B2C: @ 8085B2C
|
||||
lsls r0, 6
|
||||
cmp r1, r0
|
||||
bne _08085B5C
|
||||
bl sub_813793C
|
||||
bl IsMirageIslandPresent
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08085B5C
|
||||
|
||||
@@ -1831,7 +1831,7 @@ _0813D924:
|
||||
lsls r6, 16
|
||||
adds r1, r6
|
||||
asrs r1, 16
|
||||
ldr r0, =gUnknown_085B40FC
|
||||
ldr r0, =gSpriteTemplate_85B40FC
|
||||
movs r2, 0x8C
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
|
||||
@@ -21048,8 +21048,8 @@ _080D220C:
|
||||
bx r1
|
||||
thumb_func_end sub_80D214C
|
||||
|
||||
thumb_func_start sub_80D2218
|
||||
sub_80D2218: @ 80D2218
|
||||
thumb_func_start CheckFreePokemonStorageSpace
|
||||
CheckFreePokemonStorageSpace: @ 80D2218
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
@@ -21095,7 +21095,7 @@ _080D2262:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_80D2218
|
||||
thumb_func_end CheckFreePokemonStorageSpace
|
||||
|
||||
thumb_func_start sub_80D2270
|
||||
sub_80D2270: @ 80D2270
|
||||
|
||||
165
asm/post_battle_event_funcs.s
Normal file
165
asm/post_battle_event_funcs.s
Normal file
@@ -0,0 +1,165 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start GameClear
|
||||
GameClear: @ 8137734
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x1C
|
||||
bl HealPlayerParty
|
||||
ldr r4, =0x00000864
|
||||
adds r0, r4, 0
|
||||
bl FlagGet
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
cmp r1, 0x1
|
||||
bne _08137760
|
||||
ldr r0, =gHasHallOfFameRecords
|
||||
strb r1, [r0]
|
||||
b _0813776C
|
||||
.pool
|
||||
_08137760:
|
||||
ldr r1, =gHasHallOfFameRecords
|
||||
movs r0, 0
|
||||
strb r0, [r1]
|
||||
adds r0, r4, 0
|
||||
bl FlagSet
|
||||
_0813776C:
|
||||
movs r0, 0x1
|
||||
bl GetGameStat
|
||||
cmp r0, 0
|
||||
bne _0813778E
|
||||
ldr r0, =gSaveBlock2Ptr
|
||||
ldr r2, [r0]
|
||||
ldrh r1, [r2, 0xE]
|
||||
lsls r1, 16
|
||||
ldrb r0, [r2, 0x10]
|
||||
lsls r0, 8
|
||||
orrs r1, r0
|
||||
ldrb r0, [r2, 0x11]
|
||||
orrs r1, r0
|
||||
movs r0, 0x1
|
||||
bl sav12_xor_set
|
||||
_0813778E:
|
||||
bl sub_8076D48
|
||||
ldr r0, =gSaveBlock2Ptr
|
||||
ldr r0, [r0]
|
||||
ldrb r0, [r0, 0x8]
|
||||
cmp r0, 0
|
||||
bne _081377AC
|
||||
movs r0, 0x1
|
||||
bl sub_8084F6C
|
||||
b _081377B2
|
||||
.pool
|
||||
_081377AC:
|
||||
movs r0, 0x2
|
||||
bl sub_8084F6C
|
||||
_081377B2:
|
||||
movs r7, 0
|
||||
movs r6, 0
|
||||
add r0, sp, 0x18
|
||||
mov r8, r0
|
||||
mov r5, sp
|
||||
_081377BC:
|
||||
movs r0, 0x64
|
||||
adds r1, r6, 0
|
||||
muls r1, r0
|
||||
ldr r0, =gPlayerParty
|
||||
adds r4, r1, r0
|
||||
movs r0, 0
|
||||
strb r6, [r5]
|
||||
strb r0, [r5, 0x1]
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x5
|
||||
bl GetMonData
|
||||
cmp r0, 0
|
||||
beq _0813780A
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x6
|
||||
bl GetMonData
|
||||
cmp r0, 0
|
||||
bne _0813780A
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x43
|
||||
bl GetMonData
|
||||
cmp r0, 0
|
||||
bne _0813780A
|
||||
movs r0, 0x1
|
||||
mov r1, r8
|
||||
strb r0, [r1]
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x43
|
||||
add r2, sp, 0x18
|
||||
bl SetMonData
|
||||
adds r0, r4, 0
|
||||
bl GetRibbonCount
|
||||
strb r0, [r5, 0x1]
|
||||
movs r7, 0x1
|
||||
_0813780A:
|
||||
adds r5, 0x4
|
||||
adds r6, 0x1
|
||||
cmp r6, 0x5
|
||||
ble _081377BC
|
||||
cmp r7, 0x1
|
||||
bne _0813785A
|
||||
movs r0, 0x2A
|
||||
bl IncrementGameStat
|
||||
ldr r0, =0x0000089b
|
||||
bl FlagSet
|
||||
mov r3, sp
|
||||
add r2, sp, 0x4
|
||||
movs r6, 0x4
|
||||
_08137828:
|
||||
ldrb r1, [r3, 0x1]
|
||||
ldrb r0, [r2, 0x1]
|
||||
cmp r0, r1
|
||||
bls _08137838
|
||||
ldr r1, [sp]
|
||||
ldr r0, [r2]
|
||||
str r0, [sp]
|
||||
str r1, [r2]
|
||||
_08137838:
|
||||
adds r2, 0x4
|
||||
subs r6, 0x1
|
||||
cmp r6, 0
|
||||
bge _08137828
|
||||
mov r0, sp
|
||||
ldrb r0, [r0, 0x1]
|
||||
cmp r0, 0x4
|
||||
bls _0813785A
|
||||
mov r0, sp
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x64
|
||||
muls r0, r1
|
||||
ldr r1, =gPlayerParty
|
||||
adds r0, r1
|
||||
movs r1, 0x43
|
||||
bl sub_80EE4DC
|
||||
_0813785A:
|
||||
ldr r0, =CB2_DoHallOfFameScreen
|
||||
bl SetMainCallback2
|
||||
movs r0, 0
|
||||
add sp, 0x1C
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end GameClear
|
||||
|
||||
thumb_func_start sp0C8_whiteout_maybe
|
||||
sp0C8_whiteout_maybe: @ 813787C
|
||||
push {lr}
|
||||
ldr r0, =CB2_WhiteOut
|
||||
bl SetMainCallback2
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end sp0C8_whiteout_maybe
|
||||
225
asm/time_events.s
Normal file
225
asm/time_events.s
Normal file
@@ -0,0 +1,225 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start GetMirageRnd
|
||||
GetMirageRnd: @ 8137890
|
||||
push {r4,lr}
|
||||
ldr r0, =0x00004024
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
ldr r0, =0x00004025
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r4, 16
|
||||
orrs r4, r0
|
||||
adds r0, r4, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.pool
|
||||
thumb_func_end GetMirageRnd
|
||||
|
||||
thumb_func_start SetMirageRnd
|
||||
SetMirageRnd: @ 81378BC
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r0, =0x00004024
|
||||
lsrs r1, r4, 16
|
||||
bl VarSet
|
||||
ldr r0, =0x00004025
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r1, r4, 0
|
||||
bl VarSet
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end SetMirageRnd
|
||||
|
||||
thumb_func_start InitMirageRnd
|
||||
InitMirageRnd: @ 81378E4
|
||||
push {r4,lr}
|
||||
bl Random
|
||||
adds r4, r0, 0
|
||||
bl Random
|
||||
lsls r4, 16
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
orrs r4, r0
|
||||
adds r0, r4, 0
|
||||
bl SetMirageRnd
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end InitMirageRnd
|
||||
|
||||
thumb_func_start UpdateMirageRnd
|
||||
UpdateMirageRnd: @ 8137904
|
||||
push {r4,lr}
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
bl GetMirageRnd
|
||||
adds r1, r0, 0
|
||||
cmp r4, 0
|
||||
beq _08137928
|
||||
ldr r3, =0x41c64e6d
|
||||
ldr r2, =0x00003039
|
||||
_08137918:
|
||||
adds r0, r1, 0
|
||||
muls r0, r3
|
||||
adds r1, r0, r2
|
||||
subs r0, r4, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
cmp r4, 0
|
||||
bne _08137918
|
||||
_08137928:
|
||||
adds r0, r1, 0
|
||||
bl SetMirageRnd
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end UpdateMirageRnd
|
||||
|
||||
thumb_func_start IsMirageIslandPresent
|
||||
IsMirageIslandPresent: @ 813793C
|
||||
push {r4-r6,lr}
|
||||
bl GetMirageRnd
|
||||
lsrs r6, r0, 16
|
||||
movs r5, 0
|
||||
_08137946:
|
||||
movs r0, 0x64
|
||||
adds r1, r5, 0
|
||||
muls r1, r0
|
||||
ldr r0, =gPlayerParty
|
||||
adds r4, r1, r0
|
||||
adds r0, r4, 0
|
||||
movs r1, 0xB
|
||||
bl GetMonData
|
||||
cmp r0, 0
|
||||
beq _08137978
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl GetMonData
|
||||
ldr r1, =0x0000ffff
|
||||
ands r1, r0
|
||||
cmp r1, r6
|
||||
bne _08137978
|
||||
movs r0, 0x1
|
||||
b _08137980
|
||||
.pool
|
||||
_08137978:
|
||||
adds r5, 0x1
|
||||
cmp r5, 0x5
|
||||
ble _08137946
|
||||
movs r0, 0
|
||||
_08137980:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end IsMirageIslandPresent
|
||||
|
||||
thumb_func_start UpdateShoalTideFlag
|
||||
UpdateShoalTideFlag: @ 8137988
|
||||
push {lr}
|
||||
bl get_map_light_from_warp0
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl is_light_level_1_2_3_5_or_6
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081379CE
|
||||
bl RtcCalcLocalTime
|
||||
ldr r1, =gUnknown_085B2B44
|
||||
ldr r0, =gLocalTime
|
||||
ldrb r0, [r0, 0x2]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _081379C8
|
||||
ldr r0, =0x0000089a
|
||||
bl FlagSet
|
||||
b _081379CE
|
||||
.pool
|
||||
_081379C8:
|
||||
ldr r0, =0x0000089a
|
||||
bl FlagClear
|
||||
_081379CE:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end UpdateShoalTideFlag
|
||||
|
||||
thumb_func_start Task_WaitWeather
|
||||
Task_WaitWeather: @ 81379D8
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
bl sub_80AC3BC
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081379F2
|
||||
bl EnableBothScriptContexts
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
_081379F2:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end Task_WaitWeather
|
||||
|
||||
thumb_func_start WaitWeather
|
||||
WaitWeather: @ 81379F8
|
||||
push {lr}
|
||||
ldr r0, =Task_WaitWeather
|
||||
movs r1, 0x50
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end WaitWeather
|
||||
|
||||
thumb_func_start InitBirchState
|
||||
InitBirchState: @ 8137A0C
|
||||
push {lr}
|
||||
ldr r0, =0x00004049
|
||||
bl GetVarPointer
|
||||
movs r1, 0
|
||||
strh r1, [r0]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end InitBirchState
|
||||
|
||||
thumb_func_start UpdateBirchState
|
||||
UpdateBirchState: @ 8137A20
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
ldr r0, =0x00004049
|
||||
bl GetVarPointer
|
||||
adds r5, r0, 0
|
||||
ldrh r0, [r5]
|
||||
adds r4, r0
|
||||
strh r4, [r5]
|
||||
ldrh r0, [r5]
|
||||
movs r1, 0x7
|
||||
bl __umodsi3
|
||||
strh r0, [r5]
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end UpdateBirchState
|
||||
Reference in New Issue
Block a user