summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorcamthesaxman <cameronghall@cox.net>2017-11-25 18:07:24 -0600
committercamthesaxman <cameronghall@cox.net>2017-11-25 18:07:24 -0600
commit37418d05c404aec70745e238796c11b464da33ef (patch)
treeda32e04d100701b005c8bdb230da6e53ae003198 /asm
parentc9a21f43bd074e532c745560b1d7d412f6ea8456 (diff)
label and decompile more of field_weather_2
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_anim_80CA710.s16
-rw-r--r--asm/cable_car.s2
-rw-r--r--asm/field_weather.s397
3 files changed, 24 insertions, 391 deletions
diff --git a/asm/battle_anim_80CA710.s b/asm/battle_anim_80CA710.s
index 121cb076b..5f46883f7 100644
--- a/asm/battle_anim_80CA710.s
+++ b/asm/battle_anim_80CA710.s
@@ -11280,14 +11280,14 @@ _080D812A:
ldr r2, _080D81C4 @ =0x85000400
str r2, [r0, 0x8]
ldr r2, [r0, 0x8]
- ldr r2, _080D81C8 @ =gWeatherFog1Tiles
+ ldr r2, _080D81C8 @ =gWeatherFog2Tiles
ldr r3, [sp]
str r2, [r0]
str r3, [r0, 0x4]
ldr r2, _080D81CC @ =0x80000400
str r2, [r0, 0x8]
ldr r0, [r0, 0x8]
- ldr r0, _080D81D0 @ =gWeatherFog1Tilemap
+ ldr r0, _080D81D0 @ =gBattleAnimFogTilemap
bl LZDecompressVram
ldr r0, _080D81D4 @ =gUnknown_083970E8
mov r1, sp
@@ -11326,9 +11326,9 @@ _080D81B8: .4byte gUnknown_030041B4
_080D81BC: .4byte REG_BG1HOFS
_080D81C0: .4byte 0x040000d4
_080D81C4: .4byte 0x85000400
-_080D81C8: .4byte gWeatherFog1Tiles
+_080D81C8: .4byte gWeatherFog2Tiles
_080D81CC: .4byte 0x80000400
-_080D81D0: .4byte gWeatherFog1Tilemap
+_080D81D0: .4byte gBattleAnimFogTilemap
_080D81D4: .4byte gUnknown_083970E8
_080D81D8: .4byte gTasks
_080D81DC: .4byte sub_80D81E0
@@ -11672,14 +11672,14 @@ _080D845E:
ldr r2, _080D84FC @ =0x85000400
str r2, [r0, 0x8]
ldr r2, [r0, 0x8]
- ldr r2, _080D8500 @ =gWeatherFog1Tiles
+ ldr r2, _080D8500 @ =gWeatherFog2Tiles
ldr r3, [sp]
str r2, [r0]
str r3, [r0, 0x4]
ldr r2, _080D8504 @ =0x80000400
str r2, [r0, 0x8]
ldr r0, [r0, 0x8]
- ldr r0, _080D8508 @ =gWeatherFog1Tilemap
+ ldr r0, _080D8508 @ =gBattleAnimFogTilemap
bl LZDecompressVram
ldr r0, _080D850C @ =gUnknown_083970E8
mov r1, sp
@@ -11720,9 +11720,9 @@ _080D84F0: .4byte gUnknown_030041B4
_080D84F4: .4byte REG_BG1HOFS
_080D84F8: .4byte 0x040000d4
_080D84FC: .4byte 0x85000400
-_080D8500: .4byte gWeatherFog1Tiles
+_080D8500: .4byte gWeatherFog2Tiles
_080D8504: .4byte 0x80000400
-_080D8508: .4byte gWeatherFog1Tilemap
+_080D8508: .4byte gBattleAnimFogTilemap
_080D850C: .4byte gUnknown_083970E8
_080D8510: .4byte gTasks
_080D8514: .4byte 0x0000ffff
diff --git a/asm/cable_car.s b/asm/cable_car.s
index abafe5500..e1131c549 100644
--- a/asm/cable_car.s
+++ b/asm/cable_car.s
@@ -204,7 +204,7 @@ _08123384:
bl ResetTasks
bl FreeAllSpritePalettes
bl ResetPaletteFade
- bl sub_807C828
+ bl StartWeather
movs r4, 0
ldr r0, _081233D4 @ =gWeatherPtr
ldr r0, [r0]
diff --git a/asm/field_weather.s b/asm/field_weather.s
index 507b67fd8..aedcfe582 100644
--- a/asm/field_weather.s
+++ b/asm/field_weather.s
@@ -5,373 +5,6 @@
.text
- thumb_func_start sub_807F6E8
-sub_807F6E8: @ 807F6E8
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, _0807F75C @ =gWeatherPtr
- ldr r0, [r0]
- ldr r1, _0807F760 @ =0x000006fb
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F792
- ldr r0, _0807F764 @ =gWeatherFog1SpriteSheet
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- movs r5, 0
-_0807F70C:
- ldr r0, _0807F768 @ =gSpriteTemplate_839AB90
- movs r1, 0
- movs r2, 0
- movs r3, 0xFF
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _0807F770
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _0807F76C @ =gSprites
- adds r4, r0
- adds r0, r5, 0
- movs r1, 0x5
- bl __umodsi3
- strh r0, [r4, 0x2E]
- lsls r0, 16
- lsrs r0, 10
- adds r0, 0x20
- strh r0, [r4, 0x20]
- adds r0, r5, 0
- movs r1, 0x5
- bl __udivsi3
- lsls r0, 16
- lsrs r0, 10
- adds r0, 0x20
- strh r0, [r4, 0x22]
- ldr r2, _0807F75C @ =gWeatherPtr
- ldr r0, [r2]
- lsls r1, r5, 2
- adds r0, 0xA0
- adds r0, r1
- str r4, [r0]
- b _0807F77E
- .align 2, 0
-_0807F75C: .4byte gWeatherPtr
-_0807F760: .4byte 0x000006fb
-_0807F764: .4byte gWeatherFog1SpriteSheet
-_0807F768: .4byte gSpriteTemplate_839AB90
-_0807F76C: .4byte gSprites
-_0807F770:
- ldr r2, _0807F79C @ =gWeatherPtr
- ldr r1, [r2]
- lsls r0, r5, 2
- adds r1, 0xA0
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_0807F77E:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x13
- bls _0807F70C
- ldr r0, [r2]
- ldr r1, _0807F7A0 @ =0x000006fb
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_0807F792:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F79C: .4byte gWeatherPtr
-_0807F7A0: .4byte 0x000006fb
- thumb_func_end sub_807F6E8
-
- thumb_func_start sub_807F7A4
-sub_807F7A4: @ 807F7A4
- push {r4,r5,lr}
- ldr r0, _0807F7EC @ =gWeatherPtr
- ldr r1, [r0]
- ldr r2, _0807F7F0 @ =0x000006fb
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0807F7E4
- movs r4, 0
- adds r5, r1, 0
- adds r5, 0xA0
-_0807F7BA:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _0807F7C8
- bl DestroySprite
-_0807F7C8:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x13
- bls _0807F7BA
- ldr r0, _0807F7F4 @ =0x00001201
- bl FreeSpriteTilesByTag
- ldr r0, _0807F7EC @ =gWeatherPtr
- ldr r0, [r0]
- ldr r1, _0807F7F0 @ =0x000006fb
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_0807F7E4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F7EC: .4byte gWeatherPtr
-_0807F7F0: .4byte 0x000006fb
-_0807F7F4: .4byte 0x00001201
- thumb_func_end sub_807F7A4
-
- thumb_func_start sub_807F7F8
-sub_807F7F8: @ 807F7F8
- push {lr}
- ldr r0, _0807F844 @ =gWeatherPtr
- ldr r1, [r0]
- ldr r0, _0807F848 @ =0x000006cc
- adds r2, r1, r0
- movs r3, 0
- movs r0, 0
- strh r0, [r2]
- ldr r2, _0807F84C @ =0x000006d2
- adds r0, r1, r2
- strb r3, [r0]
- subs r2, 0x11
- adds r0, r1, r2
- strb r3, [r0]
- ldr r3, _0807F850 @ =0x000006c2
- adds r0, r1, r3
- movs r2, 0x14
- strb r2, [r0]
- adds r3, 0x3C
- adds r0, r1, r3
- strh r2, [r0]
- movs r0, 0xE0
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- bne _0807F840
- movs r0, 0
- movs r1, 0x10
- bl sub_807DB64
- ldr r1, _0807F854 @ =REG_BLDALPHA
- movs r2, 0xFD
- lsls r2, 6
- adds r0, r2, 0
- strh r0, [r1]
-_0807F840:
- pop {r0}
- bx r0
- .align 2, 0
-_0807F844: .4byte gWeatherPtr
-_0807F848: .4byte 0x000006cc
-_0807F84C: .4byte 0x000006d2
-_0807F850: .4byte 0x000006c2
-_0807F854: .4byte REG_BLDALPHA
- thumb_func_end sub_807F7F8
-
- thumb_func_start sub_807F858
-sub_807F858: @ 807F858
- push {r4,lr}
- bl sub_807F7F8
- ldr r0, _0807F880 @ =gWeatherPtr
- ldr r1, [r0]
- ldr r2, _0807F884 @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F878
- adds r4, r1, r2
-_0807F86E:
- bl sub_807F888
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807F86E
-_0807F878:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F880: .4byte gWeatherPtr
-_0807F884: .4byte 0x000006d2
- thumb_func_end sub_807F858
-
- thumb_func_start sub_807F888
-sub_807F888: @ 807F888
- push {r4,r5,lr}
- ldr r2, _0807F8CC @ =gWeatherPtr
- ldr r1, [r2]
- ldr r0, _0807F8D0 @ =gSpriteCoordOffsetX
- ldrh r0, [r0]
- ldr r3, _0807F8D4 @ =0x000001ff
- ands r3, r0
- ldr r0, _0807F8D8 @ =0x000006fc
- adds r1, r0
- strh r3, [r1]
- cmp r3, 0xEF
- bls _0807F8B4
- adds r4, r1, 0
- adds r1, r3, 0
-_0807F8A4:
- adds r3, r1, 0
- subs r3, 0xF0
- adds r1, r3, 0
- lsls r0, r3, 16
- lsrs r0, 16
- cmp r0, 0xEF
- bhi _0807F8A4
- strh r3, [r4]
-_0807F8B4:
- ldr r5, [r2]
- ldr r1, _0807F8DC @ =0x000006cc
- adds r4, r5, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _0807F8EC
- cmp r0, 0x1
- bgt _0807F8E0
- cmp r0, 0
- beq _0807F8E6
- b _0807F928
- .align 2, 0
-_0807F8CC: .4byte gWeatherPtr
-_0807F8D0: .4byte gSpriteCoordOffsetX
-_0807F8D4: .4byte 0x000001ff
-_0807F8D8: .4byte 0x000006fc
-_0807F8DC: .4byte 0x000006cc
-_0807F8E0:
- cmp r0, 0x2
- beq _0807F908
- b _0807F928
-_0807F8E6:
- bl sub_807F99C
- b _0807F91A
-_0807F8EC:
- movs r1, 0xE0
- lsls r1, 3
- adds r0, r5, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F8FC
- bl sub_807F9AC
-_0807F8FC:
- movs r0, 0x10
- movs r1, 0
- movs r2, 0x1
- bl sub_807DBA4
- b _0807F91A
-_0807F908:
- bl sub_807DBE8
- lsls r0, 24
- cmp r0, 0
- beq _0807F92C
- ldr r0, _0807F924 @ =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_0807F91A:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _0807F92C
- .align 2, 0
-_0807F924: .4byte 0x000006d2
-_0807F928:
- bl sub_807DBE8
-_0807F92C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_807F888
-
- thumb_func_start sub_807F934
-sub_807F934: @ 807F934
- push {r4,lr}
- ldr r0, _0807F950 @ =gWeatherPtr
- ldr r0, [r0]
- ldr r1, _0807F954 @ =0x000006ce
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _0807F96A
- cmp r0, 0x1
- bgt _0807F958
- cmp r0, 0
- beq _0807F95E
- b _0807F98C
- .align 2, 0
-_0807F950: .4byte gWeatherPtr
-_0807F954: .4byte 0x000006ce
-_0807F958:
- cmp r0, 0x2
- beq _0807F980
- b _0807F98C
-_0807F95E:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x1
- bl sub_807DBA4
- b _0807F978
-_0807F96A:
- bl sub_807DBE8
- lsls r0, 24
- cmp r0, 0
- beq _0807F994
- bl sub_807FA54
-_0807F978:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _0807F994
-_0807F980:
- ldr r1, _0807F990 @ =REG_BLDALPHA
- movs r0, 0
- strh r0, [r1]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0807F98C:
- movs r0, 0
- b _0807F996
- .align 2, 0
-_0807F990: .4byte REG_BLDALPHA
-_0807F994:
- movs r0, 0x1
-_0807F996:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_807F934
-
- thumb_func_start sub_807F99C
-sub_807F99C: @ 807F99C
- push {lr}
- ldr r0, _0807F9A8 @ =gWeatherAshSpriteSheet
- bl LoadSpriteSheet
- pop {r0}
- bx r0
- .align 2, 0
-_0807F9A8: .4byte gWeatherAshSpriteSheet
- thumb_func_end sub_807F99C
-
thumb_func_start sub_807F9AC
sub_807F9AC: @ 807F9AC
push {r4,r5,lr}
@@ -618,7 +251,7 @@ sub_807FB24: @ 807FB24
strh r2, [r0]
movs r0, 0
movs r1, 0x10
- bl sub_807DB64
+ bl Weather_SetBlendCoeffs
_0807FB8E:
pop {r4}
pop {r0}
@@ -687,10 +320,10 @@ _0807FC0C:
movs r0, 0xC
movs r1, 0x8
movs r2, 0x8
- bl sub_807DBA4
+ bl Weather_SetTargetBlendCoeffs
b _0807FC2A
_0807FC18:
- bl sub_807DBE8
+ bl Weather_UpdateBlend
lsls r0, 24
cmp r0, 0
beq _0807FC30
@@ -737,10 +370,10 @@ _0807FC6A:
movs r0, 0
movs r1, 0x10
movs r2, 0x1
- bl sub_807DBA4
+ bl Weather_SetTargetBlendCoeffs
b _0807FC86
_0807FC76:
- bl sub_807DBE8
+ bl Weather_UpdateBlend
lsls r0, 24
cmp r0, 0
beq _0807FC92
@@ -848,7 +481,7 @@ sub_807FD30: @ 807FD30
ldrb r0, [r0]
cmp r0, 0
bne _0807FDD6
- ldr r0, _0807FDA4 @ =gWeatherFog0SpriteSheet
+ ldr r0, _0807FDA4 @ =gWeatherFog1SpriteSheet
ldr r1, [r0, 0x4]
ldr r0, [r0]
str r0, [sp]
@@ -893,7 +526,7 @@ _0807FD54:
.align 2, 0
_0807FD9C: .4byte gWeatherPtr
_0807FDA0: .4byte 0x00000724
-_0807FDA4: .4byte gWeatherFog0SpriteSheet
+_0807FDA4: .4byte gWeatherFog1SpriteSheet
_0807FDA8: .4byte gSpriteTemplate_839AC04
_0807FDAC: .4byte gSprites
_0807FDB0:
@@ -1068,7 +701,7 @@ sub_807FE9C: @ 807FE9C
_0807FEF0:
movs r0, 0
movs r1, 0x10
- bl sub_807DB64
+ bl Weather_SetBlendCoeffs
_0807FEF8:
pop {r4}
pop {r0}
@@ -1150,10 +783,10 @@ _0807FF98:
movs r0, 0x10
movs r1, 0
movs r2, 0
- bl sub_807DBA4
+ bl Weather_SetTargetBlendCoeffs
b _0807FFB6
_0807FFA4:
- bl sub_807DBE8
+ bl Weather_UpdateBlend
lsls r0, 24
cmp r0, 0
beq _0807FFBC
@@ -1201,10 +834,10 @@ _0807FFFA:
movs r0, 0
movs r1, 0x10
movs r2, 0
- bl sub_807DBA4
+ bl Weather_SetTargetBlendCoeffs
b _08080016
_08080006:
- bl sub_807DBE8
+ bl Weather_UpdateBlend
lsls r0, 24
cmp r0, 0
beq _08080022
@@ -1793,7 +1426,7 @@ sub_8080470: @ 8080470
thumb_func_start sub_8080474
sub_8080474: @ 8080474
push {r4,r5,lr}
- bl sub_807F49C
+ bl Fog2_InitVars
ldr r0, _080804B4 @ =gWeatherPtr
ldr r4, [r0]
ldr r1, _080804B8 @ =0x0000072e
@@ -1859,7 +1492,7 @@ _080804F4: .4byte 0x000006d2
thumb_func_start sub_80804F8
sub_80804F8: @ 80804F8
push {r4-r7,lr}
- bl sub_807F52C
+ bl Fog2_Main
ldr r0, _08080558 @ =gWeatherPtr
ldr r5, [r0]
ldr r0, _0808055C @ =0x00000726
@@ -1916,7 +1549,7 @@ _08080568: .4byte 0x0000072a
thumb_func_start sub_808056C
sub_808056C: @ 808056C
push {lr}
- bl sub_807F5EC
+ bl Fog2_Finish
lsls r0, 24
cmp r0, 0
beq _0808057C