Merge pull request #321 from hatal175/eu-asm-funcs

This commit is contained in:
notyourav
2022-01-27 17:37:36 -08:00
committed by GitHub
19 changed files with 243 additions and 1324 deletions
-251
View File
@@ -1,251 +0,0 @@
.syntax unified
push {r4, r5, lr}
adds r5, r0, #0
ldr r0, _080170E4 @ =gUnk_0200AF00
adds r2, r0, #0
adds r2, #0x2f
movs r1, #0
strb r1, [r2]
subs r2, #2
strb r1, [r2]
adds r0, #0x2e
strb r1, [r0]
ldr r2, _080170E8 @ =gPlayerEntity
adds r0, r2, #0
adds r0, #0x41
ldrb r1, [r0]
movs r0, #0x80
ands r0, r1
cmp r0, #0
beq _08017072
adds r0, r2, #0
adds r0, #0x3d
ldrb r0, [r0]
lsls r0, r0, #0x18
asrs r0, r0, #0x18
cmp r0, #0
ble _08017072
movs r0, #0x86
bl SoundReq
_08017072:
ldr r4, _080170EC @ =gPlayerState
ldr r0, [r4, #0x30]
ldr r1, _080170F0 @ =0xFDFFFDFF
ands r0, r1
str r0, [r4, #0x30]
movs r1, #0x80
lsls r1, r1, #3
ands r0, r1
cmp r0, #0
beq _0801708A
bl ResetPlayer
_0801708A:
ldr r0, [r4, #0x30]
movs r1, #0x80
lsls r1, r1, #0xf
ands r0, r1
cmp r0, #0
beq _080170A4
adds r0, r4, #0
adds r0, #0xa0
ldrb r0, [r0]
cmp r0, #0
bne _080170A4
bl DeleteClones
_080170A4:
bl sub_08079B24
cmp r0, #0
bne _080170B2
adds r0, r5, #0
bl sub_08079708
_080170B2:
ldr r0, _080170F4 @ =gUnk_03003DF0
movs r4, #0
strb r4, [r0]
ldr r2, _080170EC @ =gPlayerState
adds r1, r2, #0
adds r1, #0x27
ldrb r0, [r1]
cmp r0, #0
beq _080170C8
subs r0, #1
strb r0, [r1]
_080170C8:
adds r1, r2, #0
adds r1, #0xa8
ldrb r0, [r1]
adds r3, r2, #0
adds r3, #0xa9
strb r0, [r3]
strb r4, [r1]
subs r1, #0x1e
ldrb r0, [r1]
cmp r0, #0
beq _080170F8
subs r0, #1
strb r0, [r1]
b _08017222
.align 2, 0
_080170E4: .4byte gUnk_0200AF00
_080170E8: .4byte gPlayerEntity
_080170EC: .4byte gPlayerState
_080170F0: .4byte 0xFDFFFDFF
_080170F4: .4byte gUnk_03003DF0
_080170F8:
adds r0, r2, #0
adds r0, #0x8b
ldrb r0, [r0]
cmp r0, #0
beq _08017104
b _08017222
_08017104:
ldr r0, _08017160 @ =gMessage
ldrb r1, [r0]
movs r0, #0x7f
ands r0, r1
cmp r0, #0
beq _08017112
b _08017222
_08017112:
ldr r0, _08017164 @ =gUnk_0200AF00
ldrb r0, [r0, #1]
cmp r0, #0
bne _0801714E
ldr r0, _08017168 @ =gRoomTransition
ldr r0, [r0]
movs r1, #0x5a
bl __modsi3
cmp r0, #0
bne _0801714E
ldr r2, _0801716C @ =gSave
adds r0, r2, #0
adds r0, #0xab
ldrb r0, [r0]
lsrs r1, r0, #2
cmp r1, #0x18
bls _08017138
movs r1, #0x18
_08017138:
cmp r1, #7
bhi _0801713E
movs r1, #8
_0801713E:
adds r0, r2, #0
adds r0, #0xaa
ldrb r0, [r0]
cmp r0, r1
bhi _0801714E
ldr r0, _08017170 @ =0x0000011F
bl EnqueueSFX
_0801714E:
ldr r0, _0801716C @ =gSave
adds r2, r0, #0
adds r2, #0xb2
ldrb r1, [r2]
cmp r1, #0
bne _08017174
adds r0, #0xc4
strh r1, [r0]
b _08017192
.align 2, 0
_08017160: .4byte gMessage
_08017164: .4byte gUnk_0200AF00
_08017168: .4byte gRoomTransition
_0801716C: .4byte gSave
_08017170: .4byte 0x0000011F
_08017174:
adds r1, r0, #0
adds r1, #0xc4
ldrh r0, [r1]
cmp r0, #0
beq _08017188
subs r0, #1
strh r0, [r1]
lsls r0, r0, #0x10
cmp r0, #0
bne _08017192
_08017188:
movs r0, #0
strb r0, [r2]
ldr r0, _080171A4 @ =0x000001B3
bl SoundReq
_08017192:
ldr r0, _080171A8 @ =gSave
adds r3, r0, #0
adds r3, #0xb3
ldrb r1, [r3]
cmp r1, #0
bne _080171AC
adds r0, #0xc6
strh r1, [r0]
b _080171DC
.align 2, 0
_080171A4: .4byte 0x000001B3
_080171A8: .4byte gSave
_080171AC:
adds r2, r0, #0
adds r2, #0xc6
ldrh r0, [r2]
cmp r0, #0
beq _080171C0
subs r1, r0, #1
strh r1, [r2]
lsls r0, r1, #0x10
cmp r0, #0
bne _080171CE
_080171C0:
movs r0, #0
strb r0, [r3]
movs r0, #0xa0
lsls r0, r0, #1
bl SoundReq
b _080171DC
_080171CE:
movs r0, #0xf
ands r1, r0
cmp r1, #0
bne _080171DC
adds r0, r5, #0
bl CreateSparkle
_080171DC:
ldr r0, _080171F0 @ =gSave
adds r3, r0, #0
adds r3, #0xba
ldrb r1, [r3]
cmp r1, #0
bne _080171F4
adds r0, #0xc8
strh r1, [r0]
b _08017222
.align 2, 0
_080171F0: .4byte gSave
_080171F4:
adds r2, r0, #0
adds r2, #0xc8
ldrh r0, [r2]
cmp r0, #0
beq _08017208
subs r1, r0, #1
strh r1, [r2]
lsls r0, r1, #0x10
cmp r0, #0
bne _0801720E
_08017208:
movs r0, #0
strb r0, [r3]
b _08017222
_0801720E:
movs r0, #0x3f
ands r1, r0
cmp r1, #0
bne _08017222
ldrb r1, [r3]
adds r1, #0x55
adds r0, r5, #0
movs r2, #0
bl CreateFx
_08017222:
pop {r4, r5}
pop {r0}
bx r0
.syntax divided
-95
View File
@@ -1,95 +0,0 @@
.syntax unified
push {r4, r5, r6, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xc]
cmp r0, #0
bne _080578C4
movs r0, #1
strb r0, [r4, #0xc]
movs r0, #8
strb r0, [r4, #0xe]
adds r1, r4, #0
adds r1, #0x20
movs r0, #0xff
strb r0, [r1]
ldr r1, _0805791C @ =sub_080582F8
adds r0, r4, #0
movs r2, #0
bl RegisterTransitionManager
_080578C4:
ldr r0, _08057920 @ =gRoomControls
ldrh r5, [r0]
cmp r5, #0
bne _08057960
adds r0, r4, #0
bl sub_08057E40
cmp r0, #0
beq _080578E8
ldr r0, _08057924 @ =gRoomVars
ldrb r6, [r0, #0x10]
adds r1, r4, #0
adds r1, #0x20
ldrb r0, [r1]
cmp r0, r6
beq _080578E8
strb r6, [r1]
strb r5, [r4, #0xe]
_080578E8:
lsls r1, r6, #6
ldr r0, _08057928 @ =gUnk_081080A4
adds r2, r1, r0
ldrb r1, [r4, #0xe]
cmp r1, #0
bne _08057938
ldr r1, _0805792C @ =gUnk_02034490
movs r0, #1
strb r0, [r1]
ldr r0, [r2]
ldr r1, _08057930 @ =gGlobalGfxAndPalettes
adds r0, r0, r1
ldr r1, [r2, #4]
movs r2, #0x80
lsls r2, r2, #5
bl LoadResourceAsync
ldr r0, _08057934 @ =gUnk_081081E4
adds r0, r6, r0
ldrb r0, [r0]
bl LoadPaletteGroup
ldrb r0, [r4, #0xe]
adds r0, #1
strb r0, [r4, #0xe]
b _08057960
.align 2, 0
_0805791C: .4byte sub_08057E30
_08057920: .4byte gRoomControls
_08057924: .4byte gRoomVars
_08057928: .4byte gUnk_081080A4
_0805792C: .4byte gUnk_02034490
_08057930: .4byte gGlobalGfxAndPalettes
_08057934: .4byte gUnk_081081E4
_08057938:
cmp r1, #0
blt _08057960
cmp r1, #7
bgt _08057960
lsls r1, r1, #3
adds r1, r1, r2
ldr r0, [r1]
ldr r2, _08057964 @ =gGlobalGfxAndPalettes
adds r0, r0, r2
ldr r1, [r1, #4]
movs r2, #0x80
lsls r2, r2, #5
bl LoadResourceAsync
ldrb r0, [r4, #0xe]
adds r0, #1
movs r1, #0
strb r0, [r4, #0xe]
ldr r0, _08057968 @ =gUnk_02034490
strb r1, [r0]
_08057960:
pop {r4, r5, r6, pc}
.align 2, 0
_08057964: .4byte gGlobalGfxAndPalettes
_08057968: .4byte gUnk_02034490
.syntax divided
@@ -1,98 +0,0 @@
.syntax unified
push {r4, r5, lr}
adds r4, r0, #0
ldr r5, [r4, #0x54]
cmp r5, #0
bne _080A984A
bl DeleteThisEntity
_080A984A:
ldr r0, [r5, #4]
cmp r0, #0
bne _080A9856
bl DeleteThisEntity
b _080A989A
_080A9856:
ldrh r0, [r5, #0x12]
ldrb r1, [r5, #0x1e]
bl GetSpriteSubEntryOffsetDataPointer
adds r3, r0, #0
ldrb r1, [r5, #0x14]
movs r0, #4
ands r0, r1
cmp r0, #0
beq _080A9884
movs r2, #0
ldrsb r2, [r3, r2]
rsbs r2, r2, #0
lsls r2, r2, #0x10
ldrb r3, [r3, #1]
lsls r3, r3, #0x18
asrs r3, r3, #0x18
lsls r3, r3, #0x10
adds r0, r5, #0
adds r1, r4, #0
bl PositionRelative
b _080A989A
_080A9884:
movs r2, #0
ldrsb r2, [r3, r2]
lsls r2, r2, #0x10
ldrb r3, [r3, #1]
lsls r3, r3, #0x18
asrs r3, r3, #0x18
lsls r3, r3, #0x10
adds r0, r5, #0
adds r1, r4, #0
bl PositionRelative
_080A989A:
adds r0, r5, #0
adds r0, #0x43
ldrb r0, [r0]
cmp r0, #0
bne _080A98F8
ldrb r0, [r4, #0xf]
cmp r0, #0
beq _080A98B0
subs r0, #1
strb r0, [r4, #0xf]
b _080A98F8
_080A98B0:
adds r0, r4, #0
bl UpdateAnimationSingleFrame
adds r0, r4, #0
adds r0, #0x5a
ldrb r1, [r0]
movs r0, #0x80
ands r0, r1
cmp r0, #0
beq _080A98F8
movs r0, #4
strb r0, [r4, #0xc]
adds r1, r4, #0
adds r1, #0x82
movs r0, #3
strb r0, [r1]
movs r2, #0x40
movs r0, #0x40
strb r0, [r4, #0xf]
ldrb r0, [r5, #0x14]
lsls r1, r0, #2
strb r1, [r4, #0x15]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1a
strb r0, [r4, #0x14]
ldrb r1, [r4, #0x1b]
movs r0, #0x3f
ands r0, r1
orrs r0, r2
strb r0, [r4, #0x1b]
ldr r0, _080A98FC @ =gHitbox_0
str r0, [r4, #0x48]
adds r0, r4, #0
movs r1, #0
bl sub_080AA3E0
_080A98F8:
pop {r4, r5, pc}
.align 2, 0
_080A98FC: .4byte gHitbox_0
.syntax divided
-101
View File
@@ -1,101 +0,0 @@
.syntax unified
push {r4, r5, r6, r7, lr}
mov r7, r8
push {r7}
adds r4, r0, #0
bl sub_0802AC40
ldrb r0, [r4, #0xf]
subs r0, #1
strb r0, [r4, #0xf]
lsls r0, r0, #0x18
cmp r0, #0
bne _0802AAB4
adds r0, r4, #0
movs r1, #4
bl sub_0802AD1C
_0802AAB4:
adds r6, r4, #0
adds r6, #0x81
ldrb r0, [r6]
cmp r0, #0
beq _0802AB38
ldr r5, [r4, #0x54]
cmp r5, #0
bne _0802AAC8
strb r5, [r6]
b _0802AB56
_0802AAC8:
ldr r0, [r5, #4]
cmp r0, #0
bne _0802AAD4
strb r0, [r6]
str r0, [r4, #0x54]
b _0802AB56
_0802AAD4:
ldrb r0, [r5, #0xe]
mov r8, r0
cmp r0, #0
bne _0802AB56
movs r1, #0x2e
ldrsh r0, [r4, r1]
ldr r2, _0802AB24 @ =gRoomControls
ldrh r1, [r2, #6]
subs r0, r0, r1
asrs r0, r0, #4
movs r3, #0x3f
ands r0, r3
movs r7, #0x32
ldrsh r1, [r4, r7]
ldrh r2, [r2, #8]
subs r1, r1, r2
asrs r1, r1, #4
ands r1, r3
lsls r1, r1, #6
orrs r0, r1
movs r1, #1
bl sub_080002E0
cmp r0, #0
bne _0802AB2C
ldr r1, _0802AB28 @ =gPlayerEntity
adds r0, r4, #0
movs r2, #0x10
movs r3, #0x10
bl EntityInRectRadius
cmp r0, #0
beq _0802AB56
ldrb r0, [r5, #0xf]
cmp r0, #0x50
bhi _0802AB56
mov r0, r8
strb r0, [r6]
b _0802AB56
.align 2, 0
_0802AB24: .4byte gRoomControls
_0802AB28: .4byte gPlayerEntity
_0802AB2C:
ldrb r0, [r5, #0xf]
cmp r0, #0x13
bhi _0802AB56
mov r1, r8
strb r1, [r6]
b _0802AB56
_0802AB38:
movs r1, #4
strb r1, [r4, #0xc]
movs r0, #0xc0
strb r0, [r4, #0xe]
strb r1, [r4, #0xf]
adds r2, r4, #0
adds r2, #0x80
ldrb r0, [r2]
movs r1, #1
eors r0, r1
strb r0, [r2]
adds r0, r4, #0
movs r1, #0
bl InitializeAnimation
_0802AB56:
pop {r3}
mov r8, r3
pop {r4, r5, r6, r7, pc}
.syntax divided
-50
View File
@@ -1,50 +0,0 @@
.syntax unified
push {r4, lr}
adds r4, r0, #0
bl sub_0802AC40
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
movs r2, #0xff
lsls r0, r0, #0x18
lsrs r1, r0, #0x18
cmp r1, #0
bne _0802ABA6
adds r0, r4, #0
adds r0, #0x7a
ldrb r0, [r0]
cmp r0, #4
bhi _0802AB90
movs r0, #5
strb r0, [r4, #0xc]
strh r1, [r4, #0x24]
ldrb r1, [r4, #0xa]
adds r1, #1
adds r0, r4, #0
bl InitializeAnimation
b _0802ABBA
_0802AB90:
movs r0, #0xc0
strb r0, [r4, #0xe]
movs r0, #4
strb r0, [r4, #0xf]
adds r2, r4, #0
adds r2, #0x80
ldrb r0, [r2]
movs r1, #1
eors r0, r1
strb r0, [r2]
b _0802ABBA
_0802ABA6:
ldrb r0, [r4, #0xf]
subs r0, #1
strb r0, [r4, #0xf]
ands r0, r2
cmp r0, #0
bne _0802ABBA
adds r0, r4, #0
movs r1, #4
bl sub_0802ACDC
_0802ABBA:
pop {r4, pc}
.syntax divided
-43
View File
@@ -1,43 +0,0 @@
.syntax unified
push {r4, r5, lr}
adds r4, r0, #0
bl GetNextFrame
adds r0, r4, #0
bl LinearMoveUpdate
adds r5, r4, #0
adds r5, #0x7a
ldrb r0, [r5]
cmp r0, #0
beq _0802AC26
adds r0, r4, #0
bl sub_0802B234
cmp r0, #0
bne _0802AC44
strb r0, [r5]
adds r2, r4, #0
adds r2, #0x29
ldrb r1, [r2]
movs r0, #0x39
rsbs r0, r0, #0
ands r0, r1
b _0802AC42
_0802AC26:
adds r0, r4, #0
bl sub_0802B234
cmp r0, #0
beq _0802AC44
movs r0, #1
strb r0, [r5]
adds r2, r4, #0
adds r2, #0x29
ldrb r1, [r2]
subs r0, #0x3a
ands r0, r1
movs r1, #0x18
orrs r0, r1
_0802AC42:
strb r0, [r2]
_0802AC44:
pop {r4, r5, pc}
.align 2, 0
.syntax divided
-38
View File
@@ -1,38 +0,0 @@
.syntax unified
push {r4, r5, lr}
adds r5, r0, #0
ldrb r1, [r5, #0xa]
adds r1, #2
movs r0, #0x1b
bl CreateEnemy
adds r4, r0, #0
cmp r4, #0
beq _0802AD92
adds r0, r5, #0
bl sub_0802B234
rsbs r1, r0, #0
orrs r1, r0
lsrs r1, r1, #0x1f
strb r1, [r4, #0xb]
str r5, [r4, #0x50]
str r4, [r5, #0x54]
adds r0, r5, #0
adds r1, r4, #0
bl CopyPosition
ldrh r0, [r4, #0x36]
adds r0, #8
strh r0, [r4, #0x36]
adds r1, r5, #0
adds r1, #0x81
movs r0, #1
strb r0, [r1]
ldrb r0, [r5, #0xa]
cmp r0, #0
bne _0802AD92
subs r1, #7
ldrb r0, [r1]
adds r0, #1
strb r0, [r1]
_0802AD92:
pop {r4, r5, pc}
.syntax divided
-78
View File
@@ -1,78 +0,0 @@
.syntax unified
push {r4, lr}
adds r4, r0, #0
ldr r2, [r4, #0x50]
cmp r2, #0
bne _0802ADFA
movs r0, #3
strb r0, [r4, #0xc]
ldrb r1, [r4, #0x18]
subs r0, #7
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
adds r1, r4, #0
adds r1, #0x80
movs r0, #1
strb r0, [r1]
_0802ADFA:
adds r0, r2, #0
adds r0, #0x81
ldrb r0, [r0]
cmp r0, #0
beq _0802AE1E
adds r0, r2, #0
adds r1, r4, #0
bl CopyPosition
ldrh r0, [r4, #0x36]
adds r0, #8
strh r0, [r4, #0x36]
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
strb r0, [r4, #0x18]
b _0802AE68
_0802AE1E:
movs r0, #3
strb r0, [r4, #0xc]
adds r1, r4, #0
adds r1, #0x80
movs r2, #1
movs r0, #1
strb r0, [r1]
ldrb r1, [r4, #0x18]
subs r0, #5
ands r0, r1
orrs r0, r2
strb r0, [r4, #0x18]
adds r0, r4, #0
bl sub_0802B234
cmp r0, #0
beq _0802AE54
adds r2, r4, #0
adds r2, #0x29
ldrb r0, [r2]
movs r1, #0x39
rsbs r1, r1, #0
ands r1, r0
movs r0, #0x18
orrs r1, r0
strb r1, [r2]
b _0802AE62
_0802AE54:
adds r2, r4, #0
adds r2, #0x29
ldrb r1, [r2]
movs r0, #0x39
rsbs r0, r0, #0
ands r0, r1
strb r0, [r2]
_0802AE62:
adds r0, r4, #0
bl GetNextFrame
_0802AE68:
pop {r4, pc}
.align 2, 0
.syntax divided
-71
View File
@@ -1,71 +0,0 @@
.syntax unified
push {r4, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xe]
cmp r0, #0
beq _0802B17A
subs r0, #1
strb r0, [r4, #0xe]
_0802B17A:
ldr r2, [r4, #0x50]
cmp r2, #0
bne _0802B190
movs r0, #2
strb r0, [r4, #0xc]
ldrb r1, [r4, #0x18]
subs r0, #6
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
_0802B190:
adds r0, r2, #0
adds r0, #0x81
ldrb r0, [r0]
cmp r0, #0
beq _0802B1AA
adds r0, r2, #0
adds r1, r4, #0
bl CopyPosition
ldrh r0, [r4, #0x36]
adds r0, #8
strh r0, [r4, #0x36]
b _0802B1EC
_0802B1AA:
movs r0, #2
strb r0, [r4, #0xc]
ldrb r1, [r4, #0x18]
subs r0, #6
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
adds r0, r4, #0
bl sub_0802B234
cmp r0, #0
beq _0802B1D8
adds r2, r4, #0
adds r2, #0x29
ldrb r0, [r2]
movs r1, #0x39
rsbs r1, r1, #0
ands r1, r0
movs r0, #0x18
orrs r1, r0
strb r1, [r2]
b _0802B1E6
_0802B1D8:
adds r2, r4, #0
adds r2, #0x29
ldrb r1, [r2]
movs r0, #0x39
rsbs r0, r0, #0
ands r0, r1
strb r0, [r2]
_0802B1E6:
adds r0, r4, #0
bl GetNextFrame
_0802B1EC:
pop {r4, pc}
.align 2, 0
.syntax divided
-56
View File
@@ -1,56 +0,0 @@
.syntax unified
push {r4, r5, r6, lr}
mov r6, r8
push {r6}
mov r8, r0
adds r4, r1, #0
bl SetInitializationPriority
ldr r5, _080575E8 @ =gUnk_03004030
ldrb r0, [r5, #9]
strb r0, [r5, #0xa]
ldr r3, _080575EC @ =gRoomControls
ldrb r0, [r3, #4]
strb r0, [r5, #9]
ldr r1, _080575F0 @ =gRoomTransition
ldrb r0, [r4, #4]
strb r0, [r1, #0xc]
ldrb r0, [r4, #5]
strb r0, [r1, #0xd]
ldrb r0, [r4, #4]
strb r0, [r3, #4]
ldrb r0, [r4, #5]
strb r0, [r3, #5]
str r4, [r5]
ldr r6, _080575F4 @ =gPlayerEntity
ldrh r1, [r6, #0x2e]
ldrh r0, [r3, #6]
subs r1, r1, r0
ldrh r2, [r4]
movs r0, #0x3f
ands r0, r2
lsls r0, r0, #4
subs r1, r1, r0
strh r1, [r5, #4]
ldrh r1, [r6, #0x32]
ldrh r0, [r3, #8]
subs r1, r1, r0
ldrh r2, [r4]
movs r0, #0xfc
lsls r0, r0, #4
ands r0, r2
lsrs r0, r0, #2
subs r1, r1, r0
strh r1, [r5, #6]
ldrb r0, [r4, #3]
bl sub_08080930
mov r0, r8
bl DeleteManager
pop {r3}
mov r8, r3
pop {r4, r5, r6, pc}
.align 2, 0
_080575E8: .4byte gUnk_03004030
_080575EC: .4byte gRoomControls
_080575F0: .4byte gRoomTransition
_080575F4: .4byte gPlayerEntity
.syntax divided
-37
View File
@@ -1,37 +0,0 @@
.syntax unified
push {r4, r5, r6, lr}
adds r4, r0, #0
ldr r0, _080579F0 @ =gUnk_081081E4
adds r0, r4, r0
ldrb r0, [r0]
bl LoadPaletteGroup
lsls r1, r4, #6
ldr r0, _080579F4 @ =gUnk_081080A4
adds r1, r1, r0
movs r3, #0
ldr r2, _080579F8 @ =0x040000D4
ldr r6, _080579FC @ =gGlobalGfxAndPalettes
ldr r5, _08057A00 @ =0x84000400
_080579D4:
ldr r0, [r1]
adds r0, r0, r6
str r0, [r2]
ldr r0, [r1, #4]
str r0, [r2, #4]
str r5, [r2, #8]
ldr r0, [r2, #8]
adds r3, #1
adds r1, #8
cmp r3, #7
bls _080579D4
ldr r0, _08057A04 @ =gRoomVars
strb r4, [r0, #0x10]
pop {r4, r5, r6, pc}
.align 2, 0
_080579F0: .4byte gUnk_081081E4
_080579F4: .4byte gUnk_081080A4
_080579F8: .4byte 0x040000D4
_080579FC: .4byte gGlobalGfxAndPalettes
_08057A00: .4byte 0x84000400
_08057A04: .4byte gRoomVars
.syntax divided
-369
View File
@@ -1,369 +0,0 @@
.ifdef EU
.syntax unified
push {r4, r5, r6, r7, lr}
adds r5, r0, #0
adds r7, r1, #0
ldr r4, _08074DA8 @ =gPlayerState
ldr r1, [r4, #0x30]
movs r3, #0x80
adds r0, r1, #0
ands r0, r3
cmp r0, #0
beq _08074DAC
ldrb r0, [r5, #9]
movs r1, #0x80
orrs r1, r0
strb r1, [r5, #9]
adds r0, r5, #0
adds r1, r7, #0
bl sub_08077D38
movs r0, #0xc0
lsls r0, r0, #4
strh r0, [r4, #8]
movs r0, #0x75
bl SoundReq
b _08074EE2
.align 2, 0
_08074DA8: .4byte gPlayerState
_08074DAC:
ldrb r2, [r4, #2]
cmp r2, #0
beq _08074E22
movs r6, #7
adds r0, r6, #0
ands r0, r2
cmp r0, #3
beq _08074E18
movs r0, #0x78
ands r0, r2
cmp r0, #0
bne _08074E18
ldr r3, _08074E10 @ =gPlayerEntity
ldr r1, [r3, #0x20]
ldr r0, _08074E14 @ =0x00017FFF
cmp r1, r0
bhi _08074E18
adds r0, r4, #0
adds r0, #0xac
ldrh r1, [r0]
movs r0, #0x40
ands r0, r1
cmp r0, #0
beq _08074E18
ldr r0, [r3, #0x34]
cmp r0, #0
beq _08074E18
movs r0, #0x20
orrs r0, r2
strb r0, [r4, #2]
adds r0, r4, #0
adds r0, #0xab
strb r6, [r0]
movs r0, #8
asrs r0, r7
lsls r1, r0, #4
orrs r0, r1
ldrb r1, [r4, #4]
orrs r0, r1
strb r0, [r4, #4]
adds r0, r5, #0
bl sub_08077B98
movs r0, #6
strb r0, [r5, #4]
adds r0, r5, #0
adds r1, r7, #0
bl sub_08075898
b _08074EE2
.align 2, 0
_08074E10: .4byte gPlayerEntity
_08074E14: .4byte 0x00017FFF
_08074E18:
adds r0, r5, #0
adds r1, r7, #0
bl sub_080759B8
b _08074EE2
_08074E22:
movs r6, #0x80
lsls r6, r6, #0xb
ands r6, r1
cmp r6, #0
beq _08074EAE
adds r0, r4, #0
adds r0, #0xac
ldrh r1, [r0]
movs r0, #2
ands r0, r1
lsls r0, r0, #0x10
lsrs r6, r0, #0x10
cmp r6, #0
bne _08074E4C
ldr r0, [r4, #0x2c]
cmp r0, #0
beq _08074EE2
bl DeleteEntity
str r6, [r4, #0x2c]
b _08074EE2
_08074E4C:
adds r0, r5, #0
adds r1, r7, #0
bl sub_08077D38
adds r0, r5, #0
bl sub_08077B98
movs r3, #8
adds r1, r3, #0
asrs r1, r7
lsls r0, r1, #4
orrs r0, r1
ldrb r2, [r4, #4]
orrs r0, r2
strb r0, [r4, #4]
ldrb r2, [r4, #0xa]
adds r0, r1, #0
orrs r0, r2
strb r0, [r4, #0xa]
ldrb r0, [r4, #0xb]
orrs r1, r0
strb r1, [r4, #0xb]
strb r3, [r5, #4]
movs r0, #0x14
strb r0, [r5, #7]
movs r0, #6
strb r0, [r5, #0xf]
ldrb r1, [r5, #9]
movs r0, #0x80
orrs r0, r1
strb r0, [r5, #9]
adds r1, r4, #0
adds r1, #0xab
movs r0, #2
strb r0, [r1]
ldr r0, [r4, #0x30]
movs r1, #0x80
lsls r1, r1, #0x14
orrs r0, r1
str r0, [r4, #0x30]
movs r1, #0x98
lsls r1, r1, #1
adds r0, r5, #0
bl sub_08077DF4
movs r0, #0x77
bl SoundReq
b _08074EE2
_08074EAE:
ldrb r1, [r4, #0x1b]
adds r0, r3, #0
ands r0, r1
cmp r0, #0
bne _08074EC0
strb r6, [r4, #0x1b]
ldr r0, _08074EE4 @ =gPlayerEntity
bl sub_0806F948
_08074EC0:
ldr r1, [r4, #0x2c]
cmp r1, #0
beq _08074ED4
ldrb r0, [r1, #9]
cmp r0, #1
beq _08074ED4
adds r0, r1, #0
bl DeleteEntity
str r6, [r4, #0x2c]
_08074ED4:
adds r0, r5, #0
adds r1, r7, #0
bl sub_08077D38
adds r0, r5, #0
bl sub_08077B98
_08074EE2:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_08074EE4: .4byte gPlayerEntity
.syntax divided
.else
.syntax unified
push {r4, r5, r6, r7, lr}
adds r5, r0, #0
adds r7, r1, #0
ldr r4, _0807536C @ =gPlayerState
ldr r1, [r4, #0x30]
movs r3, #0x80
adds r0, r1, #0
ands r0, r3
cmp r0, #0
beq _08075370
ldrb r0, [r5, #9]
movs r1, #0x80
orrs r1, r0
strb r1, [r5, #9]
adds r0, r5, #0
adds r1, r7, #0
bl sub_08077D38
movs r0, #0xc0
lsls r0, r0, #4
strh r0, [r4, #8]
movs r0, #0x75
bl SoundReq
b _080754B4
.align 2, 0
_0807536C: .4byte gPlayerState
_08075370:
ldrb r2, [r4, #2]
cmp r2, #0
beq _080753DC
movs r6, #7
adds r0, r6, #0
ands r0, r2
cmp r0, #3
beq _080753E4
movs r0, #0x78
ands r0, r2
cmp r0, #0
bne _080753E4
ldr r3, _080753D4 @ =gPlayerEntity
ldr r1, [r3, #0x20]
ldr r0, _080753D8 @ =0x00017FFF
cmp r1, r0
bhi _080753E4
adds r0, r4, #0
adds r0, #0xac
ldrh r1, [r0]
movs r0, #0x40
ands r0, r1
cmp r0, #0
beq _080753E4
ldr r0, [r3, #0x34]
cmp r0, #0
beq _080753E4
movs r0, #0x20
orrs r0, r2
strb r0, [r4, #2]
adds r0, r4, #0
adds r0, #0xab
strb r6, [r0]
movs r0, #8
asrs r0, r7
lsls r1, r0, #4
orrs r0, r1
ldrb r1, [r4, #4]
orrs r0, r1
strb r0, [r4, #4]
adds r0, r5, #0
bl sub_08077B98
movs r0, #6
strb r0, [r5, #4]
adds r0, r5, #0
adds r1, r7, #0
bl sub_08075898
b _080754B4
.align 2, 0
_080753D4: .4byte gPlayerEntity
_080753D8: .4byte 0x00017FFF
_080753DC:
ldr r2, _080753F0 @ =gPlayerEntity
ldr r0, [r2, #0x34]
cmp r0, #0
beq _080753F4
_080753E4:
adds r0, r5, #0
adds r1, r7, #0
bl sub_080759B8
b _080754B4
.align 2, 0
_080753F0: .4byte gPlayerEntity
_080753F4:
movs r6, #0x80
lsls r6, r6, #0xb
ands r6, r1
cmp r6, #0
beq _08075480
adds r0, r4, #0
adds r0, #0xac
ldrh r1, [r0]
movs r0, #2
ands r0, r1
lsls r0, r0, #0x10
lsrs r6, r0, #0x10
cmp r6, #0
bne _0807541E
ldr r0, [r4, #0x2c]
cmp r0, #0
beq _080754B4
bl DeleteEntity
str r6, [r4, #0x2c]
b _080754B4
_0807541E:
adds r0, r5, #0
adds r1, r7, #0
bl sub_08077D38
adds r0, r5, #0
bl sub_08077B98
movs r3, #8
adds r1, r3, #0
asrs r1, r7
lsls r0, r1, #4
orrs r0, r1
ldrb r2, [r4, #4]
orrs r0, r2
strb r0, [r4, #4]
ldrb r2, [r4, #0xa]
adds r0, r1, #0
orrs r0, r2
strb r0, [r4, #0xa]
ldrb r0, [r4, #0xb]
orrs r1, r0
strb r1, [r4, #0xb]
strb r3, [r5, #4]
movs r0, #0x14
strb r0, [r5, #7]
movs r0, #6
strb r0, [r5, #0xf]
ldrb r1, [r5, #9]
movs r0, #0x80
orrs r0, r1
strb r0, [r5, #9]
adds r1, r4, #0
adds r1, #0xab
movs r0, #2
strb r0, [r1]
ldr r0, [r4, #0x30]
movs r1, #0x80
lsls r1, r1, #0x14
orrs r0, r1
str r0, [r4, #0x30]
movs r1, #0x98
lsls r1, r1, #1
adds r0, r5, #0
bl sub_08077DF4
movs r0, #0x77
bl SoundReq
b _080754B4
_08075480:
ldrb r1, [r4, #0x1b]
adds r0, r3, #0
ands r0, r1
cmp r0, #0
bne _08075492
strb r6, [r4, #0x1b]
adds r0, r2, #0
bl sub_0806F948
_08075492:
ldr r1, [r4, #0x2c]
cmp r1, #0
beq _080754A6
ldrb r0, [r1, #9]
cmp r0, #1
beq _080754A6
adds r0, r1, #0
bl DeleteEntity
str r6, [r4, #0x2c]
_080754A6:
adds r0, r5, #0
adds r1, r7, #0
bl sub_08077D38
adds r0, r5, #0
bl sub_08077B98
_080754B4:
pop {r4, r5, r6, r7, pc}
.align 2, 0
.syntax divided
.endif
+1
View File
@@ -87,6 +87,7 @@ SECTIONS {
. = 0x000227F0; gUnk_020227F0 = .;
. = 0x000227F8; gUnk_020227F8 = .;
. = 0x00022800; gUnk_02022800 = .;
. = 0x0002281D; gTextRenderUpdateDraw = .;
. = 0x00022830; gUnk_02022830 = .;
. = 0x00024030; gMessageChoices = .;
. = 0x00024048; gUnk_02024048 = .;
+91 -19
View File
@@ -188,9 +188,6 @@ void sub_0802AA40(Entity* this) {
}
}
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_0802AAC0.inc", void sub_0802AAC0(Entity* this))
#else
void sub_0802AAC0(Entity* this) {
sub_0802AC40(this);
if (--this->field_0xf == 0) {
@@ -204,24 +201,52 @@ void sub_0802AAC0(Entity* this) {
} else if (ent->next == NULL) {
this->field_0x80.HALF.HI = 0;
this->child = NULL;
#ifdef EU
} else if (ent->actionDelay == 0) {
if (sub_080002E0(COORD_TO_TILE(this), 1) == 0) {
if (EntityInRectRadius(this, &gPlayerEntity, 0x10, 0x10) && ent->field_0xf <= 0x50) {
this->field_0x80.HALF.HI = 0;
}
} else if (ent->field_0xf <= 0x13) {
this->field_0x80.HALF.HI = 0;
}
}
#else
} else if (ent->actionDelay == 0 && ent->field_0xf < 0x51) {
this->field_0x80.HALF.HI = 0;
}
#endif
} else {
this->action = 4;
this->actionDelay = 0xc0;
this->field_0xf = 4;
this->field_0x80.HALF.LO ^= 1;
#ifndef EU
this->field_0x78.HALF.LO = 0;
this->field_0x78.HALF.HI = 4;
this->direction = 0xff;
#endif
InitializeAnimation(this, 0);
}
}
#endif
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_0802AB40.inc", void sub_0802AB40(Entity* this));
void sub_0802AB40(Entity* this) {
sub_0802AC40(this);
if (--this->actionDelay == 0) {
if (this->field_0x7a.HALF.LO <= 4) {
this->action = 5;
this->speed = 0;
InitializeAnimation(this, this->type + 1);
} else {
this->actionDelay = 0xc0;
this->field_0xf = 0x4;
this->field_0x80.HALF.LO ^= 1;
}
} else if ((--this->field_0xf & 0xff) == 0) {
sub_0802ACDC(this, 4);
}
}
#else
void sub_0802AB40(Entity* this) {
sub_0802AC40(this);
@@ -275,9 +300,6 @@ void sub_0802AC08(Entity* this) {
GetNextFrame(this);
}
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_0802AC40.inc", void sub_0802AC40(Entity* this))
#else
void sub_0802AC40(Entity* this) {
GetNextFrame(this);
LinearMoveUpdate(this);
@@ -285,6 +307,7 @@ void sub_0802AC40(Entity* this) {
if (sub_0802B234(this) == 0) {
this->field_0x7a.HALF.LO = 0;
this->spritePriority.b1 = 0;
#ifndef EU
} else {
if (this->z.HALF.HI == 0) {
if (this->spritePriority.b1 != 1) {
@@ -295,19 +318,23 @@ void sub_0802AC40(Entity* this) {
this->spritePriority.b1 = 3;
}
}
#endif
}
} else {
if (sub_0802B234(this)) {
this->field_0x7a.HALF.LO = 1;
#ifndef EU
if (this->z.HALF.HI == 0) {
this->spritePriority.b1 = 1;
} else {
this->spritePriority.b1 = 3;
}
#else
this->spritePriority.b1 = 3;
#endif
}
}
}
#endif
void sub_0802ACDC(Entity* this, u32 param_2) {
u32 x;
@@ -356,10 +383,6 @@ void sub_0802AD54(Entity* this) {
}
}
#ifdef EU
// TODO regalloc in EU version
ASM_FUNC("asm/non_matching/eu/sub_0802ADDC.inc", void sub_0802ADDC(Entity* this))
#else
void sub_0802ADDC(Entity* this) {
Entity* ent = CreateEnemy(BOMB_PEAHAT, this->type + 2);
if (ent != NULL) {
@@ -367,16 +390,15 @@ void sub_0802ADDC(Entity* this) {
ent->parent = this;
this->child = ent;
CopyPosition(this, ent);
/*#ifdef EU
this->z.HALF.HI += 8;
#endif*/
#ifdef EU
ent->z.HALF.HI += 8;
#endif
this->field_0x80.HALF.HI = 1;
if (this->type == 0) {
this->field_0x7a.HALF.LO++;
}
}
}
#endif
void sub_0802AE24(Entity* this) {
this->action = 1;
@@ -392,7 +414,30 @@ void sub_0802AE24(Entity* this) {
}
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_0802AE68.inc", void sub_0802AE68(Entity* this))
void sub_0802AE68(Entity* this) {
Entity* ent = this->parent;
if (ent == 0) {
this->action = 3;
this->spriteSettings.draw = 1;
this->field_0x80.HALF.LO = 1;
}
if (ent->field_0x80.HALF.HI) {
CopyPosition(ent, this);
this->z.HALF.HI += 8;
this->spriteSettings.draw = 0;
} else {
this->action = 3;
this->field_0x80.HALF.LO = 1;
this->spriteSettings.draw = 1;
if (sub_0802B234(this)) {
this->spritePriority.b1 = 3;
} else {
this->spritePriority.b1 = 0;
}
GetNextFrame(this);
}
}
#else
void sub_0802AE68(Entity* this) {
Entity* ent = sub_0802B250(this);
@@ -569,7 +614,34 @@ void sub_0802B1A0(Entity* this) {
}
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_0802B1BC.inc", void sub_0802B1BC(Entity* this))
void sub_0802B1BC(Entity* this) {
Entity* ent;
if (this->actionDelay) {
this->actionDelay--;
}
ent = this->parent;
if (ent == 0) {
this->action = 2;
this->spriteSettings.draw = 1;
}
if (ent->field_0x80.HALF.HI) {
CopyPosition(ent, this);
this->z.HALF.HI += 8;
} else {
this->action = 2;
this->spriteSettings.draw = 1;
if (sub_0802B234(this)) {
this->spritePriority.b1 = 3;
} else {
this->spritePriority.b1 = 0;
}
GetNextFrame(this);
}
}
#else
void sub_0802B1BC(Entity* this) {
Entity* ent;
+14 -4
View File
@@ -245,9 +245,6 @@ void PlayerUpdate(Entity* this) {
}
// Responsible for some life things like low health beep and initiating the death sequence
#ifdef EU
ASM_FUNC("asm/non_matching/eu/HandlePlayerLife.inc", void HandlePlayerLife(Entity* this));
#else
void HandlePlayerLife(Entity* this) {
u32 temp;
@@ -280,6 +277,19 @@ void HandlePlayerLife(Entity* this) {
if ((gPlayerState.controlMode != CONTROL_ENABLED) || (gMessage.doTextBox & 0x7f))
return;
#ifdef EU
if ((gUnk_0200AF00.filler0[1] == 0) && gRoomTransition.frameCount % 90 == 0) {
temp = gSave.stats.maxHealth / 4;
if (temp > 24)
temp = 24;
if (temp < 8)
temp = 8;
if (gSave.stats.health <= temp) {
EnqueueSFX(SFX_LOW_HEALTH);
}
}
#else
gRoomVars.unk2 = gMessage.doTextBox & 0x7f;
temp = gSave.stats.maxHealth / 4;
if (temp > 24)
@@ -293,6 +303,7 @@ void HandlePlayerLife(Entity* this) {
EnqueueSFX(SFX_LOW_HEALTH);
}
}
#endif
if (gSave.stats.charm == 0) {
gSave.stats.charmTimer = 0;
@@ -318,7 +329,6 @@ void HandlePlayerLife(Entity* this) {
CreateFx(this, (FX_RED_AURA - 1) + gSave.stats.effect, 0);
}
}
#endif
void sub_080171F0(void) {
if (gPlayerState.mobility != 0)
+76 -1
View File
@@ -4,8 +4,11 @@
#include "object.h"
extern void (*const gUnk_0811BD44[])(ItemBehavior*, u32);
extern void sub_08077B98(ItemBehavior*);
void sub_080759B8(ItemBehavior*, u32);
void sub_080754B8(ItemBehavior*, u32);
void sub_08075898(ItemBehavior*, u32);
extern u32 sub_08077EC8(ItemBehavior*);
@@ -16,7 +19,79 @@ void ItemSword(ItemBehavior* this, u32 arg1) {
gUnk_0811BD44[this->stateID](this, arg1);
}
ASM_FUNC("asm/non_matching/itemSword/sub_08075338.inc", void sub_08075338(ItemBehavior* this, u32 arg1))
void sub_08075338(ItemBehavior* this, u32 arg1) {
u32 temp, temp2;
if (gPlayerState.flags & 0x80) {
this->field_0x5[4] |= 0x80;
sub_08077D38(this, arg1);
gPlayerState.animation = 0xc00;
SoundReq(SFX_PLY_VO1);
return;
}
if (gPlayerState.jump_status) {
if ((gPlayerState.jump_status & 7) != 3) {
if ((gPlayerState.jump_status & 0x78) == 0 && (u32)gPlayerEntity.zVelocity <= 0x17fff &&
(gPlayerState.field_0xac & 0x40) && gPlayerEntity.z.WORD) {
gPlayerState.jump_status |= 0x20;
gPlayerState.field_0xab = 7;
gPlayerState.field_0x3[1] |= (8 >> arg1) | ((8 >> arg1) << 4);
sub_08077B98(this);
this->stateID = 6;
sub_08075898(this, arg1);
return;
}
}
#ifndef EU
sub_080759B8(this, arg1);
return;
} else if (gPlayerEntity.z.WORD) {
#endif
sub_080759B8(this, arg1);
return;
}
if (gPlayerState.flags & 0x40000) {
if ((gPlayerState.field_0xac & 2) == 0) {
if (gPlayerState.item == NULL)
return;
DeleteEntity(gPlayerState.item);
gPlayerState.item = NULL;
return;
}
sub_08077D38(this, arg1);
sub_08077B98(this);
temp = (8 >> arg1);
gPlayerState.field_0x3[1] |= temp | (temp << 4);
gPlayerState.field_0xa |= temp;
gPlayerState.keepFacing |= temp;
this->stateID = 8;
this->field_0x5[2] = 0x14;
this->field_0xf = 6;
this->field_0x5[4] |= 0x80;
gPlayerState.field_0xab = 2;
gPlayerState.flags |= 0x8000000;
sub_08077DF4(this, 0x130);
SoundReq(SFX_PLY_VO3);
return;
}
if ((gPlayerState.sword_state & 0x80) == 0) {
gPlayerState.sword_state = 0;
sub_0806F948(&gPlayerEntity);
}
if (gPlayerState.item) {
if (gPlayerState.item->id != 1) {
DeleteEntity(gPlayerState.item);
gPlayerState.item = NULL;
}
}
sub_08077D38(this, arg1);
sub_08077B98(this);
}
ASM_FUNC("asm/non_matching/itemSword/sub_080754B8.inc", void sub_080754B8(ItemBehavior* this, u32 arg1))
+4 -4
View File
@@ -91,9 +91,6 @@ u32 sub_0805795C(Manager* this, DiggingCaveEntrance* entr) {
extern void sub_08080930(u32);
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_08057A18.inc", void sub_08057A18(Manager* this, DiggingCaveEntrance* entr))
#else
void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) {
u16 tmp;
SetInitializationPriority();
@@ -106,6 +103,8 @@ void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) {
gUnk_03004030.unk_00 = entr;
gUnk_03004030.unk_04 = gPlayerEntity.x.HALF.HI - gRoomControls.origin_x - ((entr->unk_00 & 0x3F) * 16);
gUnk_03004030.unk_06 = gPlayerEntity.y.HALF.HI - gRoomControls.origin_y - ((entr->unk_00 & 0xFC0) >> 2);
#ifndef EU
tmp = gUnk_03004030.unk_08;
if (!tmp) {
if ((entr->target_room | 0x80) != gUnk_03004030.unk_0b) {
@@ -113,10 +112,11 @@ void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) {
}
gUnk_03004030.unk_0b = entr->target_room | 0x80;
}
#endif
sub_08080930(entr->unk_03);
DeleteManager(this);
}
#endif
DiggingCaveEntrance* sub_08057AA8(DiggingCaveEntrance* entr, int room) {
for (; entr->unk_00 != 0xFFFF; entr++) {
+52 -5
View File
@@ -55,7 +55,54 @@ const u32 gUnk_081080A4[0x50] = {
const u8 gUnk_081081E4[] = { 0x16, 0x17, 0x17, 0x18, 0x18 };
#ifdef EU
ASM_FUNC("asm/non_matching/eu/Manager7_Main.inc", void Manager7_Main(Manager7* this))
void Manager7_Main(Manager7* this) {
u32 tmp;
const u32* tmp2;
s32 tmp3;
if (!this->manager.action) {
this->manager.action = 1;
this->manager.unk_0e = 8;
this->unk_20 = 0xFF;
RegisterTransitionManager(this, sub_08057E30, 0);
}
if (gRoomControls.reload_flags)
return;
if (sub_08057E40(this)) {
tmp = (u32)gRoomVars.unk_10[0];
if (this->unk_20 != tmp) {
this->unk_20 = tmp;
this->manager.unk_0e = 0;
}
}
tmp2 = &gUnk_081080A4[tmp << 4];
tmp3 = this->manager.unk_0e;
if (tmp3 == 0) {
gUnk_02034490[0] = 1;
LoadResourceAsync(&gGlobalGfxAndPalettes[tmp2[0]], tmp2[1], 0x1000);
LoadPaletteGroup(gUnk_081081E4[tmp]);
this->manager.unk_0e++;
} else {
switch (tmp3) {
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
LoadResourceAsync(&gGlobalGfxAndPalettes[tmp2[(this->manager.unk_0e << 1)]],
tmp2[(this->manager.unk_0e << 1) + 1], 0x1000);
this->manager.unk_0e++;
gUnk_02034490[0] = 0;
case 8:
break;
}
}
}
#else
void Manager7_Main(Manager7* this) {
u32 tmp;
@@ -129,14 +176,15 @@ void sub_08057E64(void) {
}
}
#ifdef EU
ASM_FUNC("asm/non_matching/eu/sub_08057E7C.inc", void sub_08057E7C(u32 unk1))
#else
void sub_08057E7C(u32 unk1) {
u32 tmp;
const u32* tmp2;
#ifndef EU
if (unk1 > 4)
return;
#endif
LoadPaletteGroup(gUnk_081081E4[unk1]);
tmp2 = &gUnk_081080A4[unk1 << 4];
for (tmp = 0; tmp < 8; tmp++, tmp2 += 2) {
@@ -144,4 +192,3 @@ void sub_08057E7C(u32 unk1) {
}
gRoomVars.unk_10[0] = unk1;
}
#endif
+5 -4
View File
@@ -108,9 +108,6 @@ void MandiblesProjectile_Action2(Entity* this) {
}
}
#ifdef EU
ASM_FUNC("asm/non_matching/eu/MandiblesProjectile_Action3.inc", void MandiblesProjectile_Action3(Entity* this))
#else
void MandiblesProjectile_Action3(Entity* this) {
u32 uVar1;
s8* tmp;
@@ -142,16 +139,20 @@ void MandiblesProjectile_Action3(Entity* this) {
uVar1 = entity->animationState;
this->direction = uVar1 << 2;
this->animationState = uVar1 << 0x1a >> 0x1a;
#ifdef EU
this->spriteOrientation.flipY = 1;
this->hitbox = &gHitbox_0;
#else
this->hitbox = &gHitbox_0;
if (AreaIsDungeon() != 0) {
this->spriteOrientation.flipY = 1;
}
#endif
sub_080AA3E0(this, 0);
}
}
}
}
#endif
void MandiblesProjectile_Action4(Entity* this) {
s32 iVar1;