mirror of https://github.com/zeldaret/tmc.git
begin rem
This commit is contained in:
parent
ebe4a20bf7
commit
d92be5f9cc
|
@ -44,7 +44,7 @@ sub_080632E0: @ 0x080632E0
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _08063310 @ =gUnk_0810C8D4
|
ldr r1, _08063310 @ =gUnk_0810C8D4
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806330E
|
beq _0806330E
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
|
@ -205,7 +205,7 @@ sub_08063410: @ 0x08063410
|
||||||
cmp r5, #0
|
cmp r5, #0
|
||||||
bne _08063442
|
bne _08063442
|
||||||
ldr r1, _08063464 @ =gUnk_0810C8D4
|
ldr r1, _08063464 @ =gUnk_0810C8D4
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08063462
|
beq _08063462
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -35,7 +35,7 @@ _0806717E:
|
||||||
ldr r0, _080671EC @ =gUnk_08110CA8
|
ldr r0, _080671EC @ =gUnk_08110CA8
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08067224
|
beq _08067224
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -247,7 +247,7 @@ sub_0806732C: @ 0x0806732C
|
||||||
ldr r0, _08067374 @ =gUnk_08110CA8
|
ldr r0, _08067374 @ =gUnk_08110CA8
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806737E
|
beq _0806737E
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -93,7 +93,7 @@ _0806458A:
|
||||||
ldr r0, _080645D0 @ =gUnk_0810F874
|
ldr r0, _080645D0 @ =gUnk_0810F874
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806463C
|
beq _0806463C
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -515,8 +515,8 @@ _0806FDDC:
|
||||||
_0806FDEA:
|
_0806FDEA:
|
||||||
pop {r4, pc}
|
pop {r4, pc}
|
||||||
|
|
||||||
thumb_func_start sub_0806FDEC
|
thumb_func_start LoadExtraSpriteData
|
||||||
sub_0806FDEC: @ 0x0806FDEC
|
LoadExtraSpriteData: @ 0x0806FDEC
|
||||||
push {r4, r5, r6, r7, lr}
|
push {r4, r5, r6, r7, lr}
|
||||||
mov r7, r8
|
mov r7, r8
|
||||||
push {r7}
|
push {r7}
|
||||||
|
|
|
@ -517,7 +517,7 @@ sub_08069EF0: @ 0x08069EF0
|
||||||
ldr r0, _08069F20 @ =gUnk_08111D58
|
ldr r0, _08069F20 @ =gUnk_08111D58
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08069F28
|
beq _08069F28
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
|
|
@ -21,7 +21,7 @@ sub_0806BBE4: @ 0x0806BBE4
|
||||||
ldr r0, _0806BC28 @ =gUnk_08113140
|
ldr r0, _0806BC28 @ =gUnk_08113140
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806BC54
|
beq _0806BC54
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
@ -174,7 +174,7 @@ sub_0806BCFC: @ 0x0806BCFC
|
||||||
ldr r0, _0806BD48 @ =gUnk_08113140
|
ldr r0, _0806BD48 @ =gUnk_08113140
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806BD52
|
beq _0806BD52
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -25,7 +25,7 @@ _0805FFEC:
|
||||||
_0805FFF2:
|
_0805FFF2:
|
||||||
ldr r1, _0806003C @ =gUnk_0810A348
|
ldr r1, _0806003C @ =gUnk_0810A348
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806008C
|
beq _0806008C
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -532,7 +532,7 @@ sub_080603B4: @ 0x080603B4
|
||||||
bne _080603F4
|
bne _080603F4
|
||||||
ldr r1, _080603F0 @ =gUnk_0810A348
|
ldr r1, _080603F0 @ =gUnk_0810A348
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080603FA
|
beq _080603FA
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -48,7 +48,7 @@ sub_080697C4: @ 0x080697C4
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _080697E8 @ =gUnk_08111C3C
|
ldr r1, _080697E8 @ =gUnk_08111C3C
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080697E4
|
beq _080697E4
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -112,7 +112,7 @@ sub_08069838: @ 0x08069838
|
||||||
cmp r5, #0
|
cmp r5, #0
|
||||||
bne _08069862
|
bne _08069862
|
||||||
ldr r1, _08069884 @ =gUnk_08111C3C
|
ldr r1, _08069884 @ =gUnk_08111C3C
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08069880
|
beq _08069880
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -67,7 +67,7 @@ sub_08063D44: @ 0x08063D44
|
||||||
ldr r0, _08063DA4 @ =gUnk_0810F524
|
ldr r0, _08063DA4 @ =gUnk_0810F524
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08063DC6
|
beq _08063DC6
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
|
@ -228,7 +228,7 @@ sub_08063E90: @ 0x08063E90
|
||||||
ldr r0, _08063EC8 @ =gUnk_0810F524
|
ldr r0, _08063EC8 @ =gUnk_0810F524
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08063F1E
|
beq _08063F1E
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -25,7 +25,7 @@ _0806E31C:
|
||||||
_0806E322:
|
_0806E322:
|
||||||
ldr r1, _0806E348 @ =gUnk_081144F0
|
ldr r1, _0806E348 @ =gUnk_081144F0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806E3E0
|
beq _0806E3E0
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -180,7 +180,7 @@ sub_0806E458: @ 0x0806E458
|
||||||
bne _0806E498
|
bne _0806E498
|
||||||
ldr r1, _0806E494 @ =gUnk_081144F0
|
ldr r1, _0806E494 @ =gUnk_081144F0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806E49E
|
beq _0806E49E
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -42,7 +42,7 @@ sub_080620F4: @ 0x080620F4
|
||||||
adds r0, r0, r1
|
adds r0, r0, r1
|
||||||
ldr r1, [r0]
|
ldr r1, [r0]
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806212A
|
beq _0806212A
|
||||||
movs r1, #0
|
movs r1, #0
|
||||||
|
@ -158,7 +158,7 @@ _080621CE:
|
||||||
adds r0, r0, r1
|
adds r0, r0, r1
|
||||||
ldr r1, [r0]
|
ldr r1, [r0]
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
bne _080621E4
|
bne _080621E4
|
||||||
b _080622F2
|
b _080622F2
|
||||||
|
@ -1262,7 +1262,7 @@ sub_08062A60: @ 0x08062A60
|
||||||
adds r0, r0, r1
|
adds r0, r0, r1
|
||||||
ldr r1, [r0]
|
ldr r1, [r0]
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08062AB6
|
beq _08062AB6
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -102,7 +102,7 @@ sub_0806C454: @ 0x0806C454
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _0806C470 @ =gUnk_08113754
|
ldr r1, _0806C470 @ =gUnk_08113754
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806C474
|
beq _0806C474
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
|
|
|
@ -39,7 +39,7 @@ sub_08068708: @ 0x08068708
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _0806872C @ =gUnk_08111520
|
ldr r1, _0806872C @ =gUnk_08111520
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08068728
|
beq _08068728
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -116,7 +116,7 @@ _08068794:
|
||||||
_0806879A:
|
_0806879A:
|
||||||
ldr r1, _080687CC @ =gUnk_08111520
|
ldr r1, _080687CC @ =gUnk_08111520
|
||||||
adds r0, r5, #0
|
adds r0, r5, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806887A
|
beq _0806887A
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -355,7 +355,7 @@ sub_0806897C: @ 0x0806897C
|
||||||
bne _080689B4
|
bne _080689B4
|
||||||
ldr r1, _080689B0 @ =gUnk_08111520
|
ldr r1, _080689B0 @ =gUnk_08111520
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080689BA
|
beq _080689BA
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -16,7 +16,7 @@ sub_08062F70: @ 0x08062F70
|
||||||
bne _08062FA0
|
bne _08062FA0
|
||||||
ldr r1, _08062FE8 @ =gUnk_0810C48C
|
ldr r1, _08062FE8 @ =gUnk_0810C48C
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08062FE4
|
beq _08062FE4
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -39,7 +39,7 @@ sub_08067E60: @ 0x08067E60
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _08067E84 @ =gUnk_08111358
|
ldr r1, _08067E84 @ =gUnk_08111358
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08067E80
|
beq _08067E80
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -136,7 +136,7 @@ _08067F0E:
|
||||||
_08067F10:
|
_08067F10:
|
||||||
ldr r1, _08067F50 @ =gUnk_08111358
|
ldr r1, _08067F50 @ =gUnk_08111358
|
||||||
adds r0, r5, #0
|
adds r0, r5, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
bne _08067F1E
|
bne _08067F1E
|
||||||
b _080680F0
|
b _080680F0
|
||||||
|
@ -561,7 +561,7 @@ sub_08068270: @ 0x08068270
|
||||||
bne _080682A8
|
bne _080682A8
|
||||||
ldr r1, _080682A4 @ =gUnk_08111358
|
ldr r1, _080682A4 @ =gUnk_08111358
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080682AE
|
beq _080682AE
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -32,7 +32,7 @@ _08066FF8:
|
||||||
_08066FFE:
|
_08066FFE:
|
||||||
ldr r1, _0806702C @ =gUnk_08110C00
|
ldr r1, _0806702C @ =gUnk_08110C00
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806707C
|
beq _0806707C
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -176,7 +176,7 @@ sub_08067118: @ 0x08067118
|
||||||
bne _08067150
|
bne _08067150
|
||||||
ldr r1, _0806714C @ =gUnk_08110C00
|
ldr r1, _0806714C @ =gUnk_08110C00
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08067156
|
beq _08067156
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
.include "asm/macros.inc"
|
||||||
|
|
||||||
|
.include "constants/constants.inc"
|
||||||
|
|
||||||
|
.syntax unified
|
||||||
|
|
||||||
|
.text
|
||||||
|
|
||||||
|
push {r4, r5, lr}
|
||||||
|
adds r5, r0, #0
|
||||||
|
movs r0, #0xf
|
||||||
|
movs r1, #0x2f
|
||||||
|
movs r2, #0
|
||||||
|
bl CreateObject
|
||||||
|
adds r4, r0, #0
|
||||||
|
cmp r4, #0
|
||||||
|
beq _0806A2AE
|
||||||
|
adds r0, r5, #0
|
||||||
|
adds r1, r4, #0
|
||||||
|
bl sub_0806FA30
|
||||||
|
bl Random
|
||||||
|
adds r5, r0, #0
|
||||||
|
ldr r2, _0806A2B0 @ =gUnk_081121DC
|
||||||
|
movs r1, #7
|
||||||
|
ands r0, r1
|
||||||
|
adds r0, r0, r2
|
||||||
|
ldrb r0, [r0]
|
||||||
|
adds r3, r4, #0
|
||||||
|
adds r3, #0x62
|
||||||
|
strb r0, [r3]
|
||||||
|
lsrs r0, r5, #8
|
||||||
|
ands r0, r1
|
||||||
|
adds r0, r0, r2
|
||||||
|
ldrb r0, [r0]
|
||||||
|
subs r0, #8
|
||||||
|
adds r1, r4, #0
|
||||||
|
adds r1, #0x63
|
||||||
|
strb r0, [r1]
|
||||||
|
_0806A2AE:
|
||||||
|
pop {r4, r5, pc}
|
||||||
|
.align 2, 0
|
||||||
|
_0806A2B0: .4byte gUnk_081121DC
|
||||||
|
.syntax divided
|
|
@ -15,7 +15,7 @@ sub_0806EAF4: @ 0x0806EAF4
|
||||||
bne _0806EB48
|
bne _0806EB48
|
||||||
ldr r1, _0806EBA0 @ =gUnk_081146D0
|
ldr r1, _0806EBA0 @ =gUnk_081146D0
|
||||||
adds r0, r6, #0
|
adds r0, r6, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806EBA8
|
beq _0806EBA8
|
||||||
ldrb r0, [r6, #0xc]
|
ldrb r0, [r6, #0xc]
|
||||||
|
|
|
@ -35,7 +35,7 @@ sub_0806B3CC: @ 0x0806B3CC
|
||||||
bne _0806B3F4
|
bne _0806B3F4
|
||||||
ldr r1, _0806B418 @ =gUnk_08112E1C
|
ldr r1, _0806B418 @ =gUnk_08112E1C
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806B414
|
beq _0806B414
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -84,7 +84,7 @@ _0806B430:
|
||||||
_0806B436:
|
_0806B436:
|
||||||
ldr r1, _0806B46C @ =gUnk_08112E1C
|
ldr r1, _0806B46C @ =gUnk_08112E1C
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806B4EC
|
beq _0806B4EC
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -335,7 +335,7 @@ sub_0806B624: @ 0x0806B624
|
||||||
bne _0806B65C
|
bne _0806B65C
|
||||||
ldr r1, _0806B658 @ =gUnk_08112E1C
|
ldr r1, _0806B658 @ =gUnk_08112E1C
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806B662
|
beq _0806B662
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
62
asm/rem.s
62
asm/rem.s
|
@ -6,68 +6,6 @@
|
||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A358
|
|
||||||
sub_0806A358: @ 0x0806A358
|
|
||||||
push {lr}
|
|
||||||
ldr r2, _0806A36C @ =gUnk_08112260
|
|
||||||
ldrb r1, [r0, #0xa]
|
|
||||||
lsls r1, r1, #2
|
|
||||||
adds r1, r1, r2
|
|
||||||
ldr r1, [r1]
|
|
||||||
bl _call_via_r1
|
|
||||||
pop {pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806A36C: .4byte gUnk_08112260
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A370
|
|
||||||
sub_0806A370: @ 0x0806A370
|
|
||||||
push {r4, lr}
|
|
||||||
adds r4, r0, #0
|
|
||||||
ldr r1, _0806A3D0 @ =gUnk_08112278
|
|
||||||
ldrb r0, [r4, #0xc]
|
|
||||||
lsls r0, r0, #2
|
|
||||||
adds r0, r0, r1
|
|
||||||
ldr r1, [r0]
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl _call_via_r1
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r1, #0
|
|
||||||
bl sub_0807DDAC
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0807DDE4
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl UpdateAnimationSingleFrame
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0806ED78
|
|
||||||
adds r0, r4, #0
|
|
||||||
adds r0, #0x58
|
|
||||||
ldrb r0, [r0]
|
|
||||||
cmp r0, #0xf
|
|
||||||
bne _0806A3CC
|
|
||||||
adds r4, #0x5a
|
|
||||||
ldrb r0, [r4]
|
|
||||||
cmp r0, #1
|
|
||||||
bne _0806A3BC
|
|
||||||
movs r0, #0
|
|
||||||
strb r0, [r4]
|
|
||||||
movs r0, #0x86
|
|
||||||
lsls r0, r0, #2
|
|
||||||
bl PlaySFX
|
|
||||||
_0806A3BC:
|
|
||||||
ldrb r0, [r4]
|
|
||||||
cmp r0, #2
|
|
||||||
bne _0806A3CC
|
|
||||||
movs r0, #0
|
|
||||||
strb r0, [r4]
|
|
||||||
ldr r0, _0806A3D4 @ =0x00000219
|
|
||||||
bl PlaySFX
|
|
||||||
_0806A3CC:
|
|
||||||
pop {r4, pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806A3D0: .4byte gUnk_08112278
|
|
||||||
_0806A3D4: .4byte 0x00000219
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A3D8
|
thumb_func_start sub_0806A3D8
|
||||||
sub_0806A3D8: @ 0x0806A3D8
|
sub_0806A3D8: @ 0x0806A3D8
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
|
|
|
@ -31,7 +31,7 @@ sub_08063758: @ 0x08063758
|
||||||
ldr r0, _08063794 @ =gUnk_0810CB78
|
ldr r0, _08063794 @ =gUnk_0810CB78
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080637B4
|
beq _080637B4
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -365,7 +365,7 @@ sub_080639E8: @ 0x080639E8
|
||||||
ldr r0, _08063A3C @ =gUnk_0810CB78
|
ldr r0, _08063A3C @ =gUnk_0810CB78
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08063A5C
|
beq _08063A5C
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -159,7 +159,7 @@ sub_080660EC: @ 0x080660EC
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _08066114 @ =gUnk_08110354
|
ldr r1, _08066114 @ =gUnk_08110354
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08066112
|
beq _08066112
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -237,7 +237,7 @@ sub_08066178: @ 0x08066178
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _080661AC @ =gUnk_08110354
|
ldr r1, _080661AC @ =gUnk_08110354
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080661A8
|
beq _080661A8
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -399,7 +399,7 @@ sub_08066298: @ 0x08066298
|
||||||
bne _080662D0
|
bne _080662D0
|
||||||
ldr r1, _080662CC @ =gUnk_08110354
|
ldr r1, _080662CC @ =gUnk_08110354
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080662D6
|
beq _080662D6
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -35,7 +35,7 @@ _08064ABC:
|
||||||
bne _08064AE4
|
bne _08064AE4
|
||||||
ldr r1, _08064AE0 @ =gUnk_0810FA38
|
ldr r1, _08064AE0 @ =gUnk_0810FA38
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08064B42
|
beq _08064B42
|
||||||
movs r0, #1
|
movs r0, #1
|
||||||
|
@ -97,7 +97,7 @@ sub_08064B44: @ 0x08064B44
|
||||||
push {r4, lr}
|
push {r4, lr}
|
||||||
adds r4, r0, #0
|
adds r4, r0, #0
|
||||||
ldr r1, _08064B80 @ =gUnk_0810FA38
|
ldr r1, _08064B80 @ =gUnk_0810FA38
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08064B7E
|
beq _08064B7E
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
|
@ -349,7 +349,7 @@ sub_08064D18: @ 0x08064D18
|
||||||
bne _08064D50
|
bne _08064D50
|
||||||
ldr r1, _08064D4C @ =gUnk_0810FA38
|
ldr r1, _08064D4C @ =gUnk_0810FA38
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08064D56
|
beq _08064D56
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
115
asm/syrup.s
115
asm/syrup.s
|
@ -6,121 +6,6 @@
|
||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A1D8
|
|
||||||
sub_0806A1D8: @ 0x0806A1D8
|
|
||||||
push {r4, lr}
|
|
||||||
adds r4, r0, #0
|
|
||||||
ldr r1, _0806A1F4 @ =gUnk_081121D4
|
|
||||||
ldrb r0, [r4, #0xc]
|
|
||||||
lsls r0, r0, #2
|
|
||||||
adds r0, r0, r1
|
|
||||||
ldr r1, [r0]
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl _call_via_r1
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0806ED78
|
|
||||||
pop {r4, pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806A1F4: .4byte gUnk_081121D4
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A1F8
|
|
||||||
sub_0806A1F8: @ 0x0806A1F8
|
|
||||||
push {r4, lr}
|
|
||||||
adds r4, r0, #0
|
|
||||||
ldrb r0, [r4, #0xa]
|
|
||||||
ldr r1, _0806A22C @ =gUnk_081121C4
|
|
||||||
cmp r0, #0
|
|
||||||
bne _0806A206
|
|
||||||
ldr r1, _0806A230 @ =gUnk_081121B4
|
|
||||||
_0806A206:
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0806FDEC
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0806A22A
|
|
||||||
movs r0, #1
|
|
||||||
strb r0, [r4, #0xc]
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r1, #2
|
|
||||||
bl sub_0805E3A0
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0807DD50
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r1, #0
|
|
||||||
bl InitializeAnimation
|
|
||||||
_0806A22A:
|
|
||||||
pop {r4, pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806A22C: .4byte gUnk_081121C4
|
|
||||||
_0806A230: .4byte gUnk_081121B4
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A234
|
|
||||||
sub_0806A234: @ 0x0806A234
|
|
||||||
push {r4, lr}
|
|
||||||
adds r4, r0, #0
|
|
||||||
movs r1, #0
|
|
||||||
bl sub_0807DD94
|
|
||||||
adds r0, r4, #0
|
|
||||||
adds r0, #0x82
|
|
||||||
ldrh r1, [r0]
|
|
||||||
movs r0, #4
|
|
||||||
ands r0, r1
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0806A266
|
|
||||||
ldr r0, _0806A268 @ =gUnk_030010A0
|
|
||||||
ldr r0, [r0]
|
|
||||||
movs r1, #7
|
|
||||||
ands r0, r1
|
|
||||||
cmp r0, #0
|
|
||||||
bne _0806A25E
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0806A26C
|
|
||||||
_0806A25E:
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r1, #2
|
|
||||||
bl sub_080042BA
|
|
||||||
_0806A266:
|
|
||||||
pop {r4, pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806A268: .4byte gUnk_030010A0
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A26C
|
|
||||||
sub_0806A26C: @ 0x0806A26C
|
|
||||||
push {r4, r5, lr}
|
|
||||||
adds r5, r0, #0
|
|
||||||
movs r0, #0xf
|
|
||||||
movs r1, #0x2f
|
|
||||||
movs r2, #0
|
|
||||||
bl CreateObject
|
|
||||||
adds r4, r0, #0
|
|
||||||
cmp r4, #0
|
|
||||||
beq _0806A2AE
|
|
||||||
adds r0, r5, #0
|
|
||||||
adds r1, r4, #0
|
|
||||||
bl sub_0806FA30
|
|
||||||
bl Random
|
|
||||||
adds r5, r0, #0
|
|
||||||
ldr r2, _0806A2B0 @ =gUnk_081121DC
|
|
||||||
movs r1, #7
|
|
||||||
ands r0, r1
|
|
||||||
adds r0, r0, r2
|
|
||||||
ldrb r0, [r0]
|
|
||||||
adds r3, r4, #0
|
|
||||||
adds r3, #0x62
|
|
||||||
strb r0, [r3]
|
|
||||||
lsrs r0, r5, #8
|
|
||||||
ands r0, r1
|
|
||||||
adds r0, r0, r2
|
|
||||||
ldrb r0, [r0]
|
|
||||||
subs r0, #8
|
|
||||||
adds r1, r4, #0
|
|
||||||
adds r1, #0x63
|
|
||||||
strb r0, [r1]
|
|
||||||
_0806A2AE:
|
|
||||||
pop {r4, r5, pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806A2B0: .4byte gUnk_081121DC
|
|
||||||
|
|
||||||
thumb_func_start sub_0806A2B4
|
thumb_func_start sub_0806A2B4
|
||||||
sub_0806A2B4: @ 0x0806A2B4
|
sub_0806A2B4: @ 0x0806A2B4
|
||||||
push {r4, r5, r6, lr}
|
push {r4, r5, r6, lr}
|
||||||
|
|
|
@ -29,7 +29,7 @@ _0806C5C2:
|
||||||
ldr r0, _0806C600 @ =gUnk_08113910
|
ldr r0, _0806C600 @ =gUnk_08113910
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r5, #0
|
adds r0, r5, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806C670
|
beq _0806C670
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -214,7 +214,7 @@ sub_0806C738: @ 0x0806C738
|
||||||
ldr r0, _0806C774 @ =gUnk_08113910
|
ldr r0, _0806C774 @ =gUnk_08113910
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806C77E
|
beq _0806C77E
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -103,7 +103,7 @@ _0806ACE4:
|
||||||
ldr r0, _0806AD24 @ =gUnk_08112674
|
ldr r0, _0806AD24 @ =gUnk_08112674
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
bne _0806ACF8
|
bne _0806ACF8
|
||||||
b _0806ADFA
|
b _0806ADFA
|
||||||
|
@ -714,7 +714,7 @@ sub_0806B184: @ 0x0806B184
|
||||||
ldr r0, _0806B1C0 @ =gUnk_08112674
|
ldr r0, _0806B1C0 @ =gUnk_08112674
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806B1CA
|
beq _0806B1CA
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -49,7 +49,7 @@ sub_08061BC8: @ 0x08061BC8
|
||||||
adds r0, r0, r1
|
adds r0, r0, r1
|
||||||
ldr r1, [r0]
|
ldr r1, [r0]
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08061BF8
|
beq _08061BF8
|
||||||
movs r0, #2
|
movs r0, #2
|
||||||
|
@ -199,7 +199,7 @@ sub_08061CEC: @ 0x08061CEC
|
||||||
adds r0, r0, r1
|
adds r0, r0, r1
|
||||||
ldr r1, [r0]
|
ldr r1, [r0]
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _08061D62
|
beq _08061D62
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -687,7 +687,7 @@ sub_08062088: @ 0x08062088
|
||||||
adds r0, r0, r1
|
adds r0, r0, r1
|
||||||
ldr r1, [r0]
|
ldr r1, [r0]
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _080620C2
|
beq _080620C2
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -29,7 +29,7 @@ sub_0806C798: @ 0x0806C798
|
||||||
ldr r0, _0806C7D0 @ =gUnk_08113A1C
|
ldr r0, _0806C7D0 @ =gUnk_08113A1C
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806C7CE
|
beq _0806C7CE
|
||||||
movs r2, #1
|
movs r2, #1
|
||||||
|
@ -433,7 +433,7 @@ sub_0806CA94: @ 0x0806CA94
|
||||||
ldr r0, _0806CAD0 @ =gUnk_08113A1C
|
ldr r0, _0806CAD0 @ =gUnk_08113A1C
|
||||||
adds r1, r1, r0
|
adds r1, r1, r0
|
||||||
adds r0, r4, #0
|
adds r0, r4, #0
|
||||||
bl sub_0806FDEC
|
bl LoadExtraSpriteData
|
||||||
cmp r0, #0
|
cmp r0, #0
|
||||||
beq _0806CADA
|
beq _0806CADA
|
||||||
ldrb r0, [r4, #0xc]
|
ldrb r0, [r4, #0xc]
|
||||||
|
|
|
@ -12,17 +12,19 @@ extern void UpdateSpriteOrderAndFlip(Entity*);
|
||||||
extern void InitAnimationForceUpdate(Entity*, u32);
|
extern void InitAnimationForceUpdate(Entity*, u32);
|
||||||
extern void ShowNPCDialogue(Entity*, u32*);
|
extern void ShowNPCDialogue(Entity*, u32*);
|
||||||
extern u32 UpdateFuseInteraction();
|
extern u32 UpdateFuseInteraction();
|
||||||
extern void CopyPosition(Entity*, Entity*);
|
|
||||||
extern void PositionRelative(Entity*, Entity*, u32, u32);
|
|
||||||
extern void InitializeAnimation(Entity*, u32);
|
extern void InitializeAnimation(Entity*, u32);
|
||||||
extern void DeleteEntity(Entity*);
|
extern void DeleteEntity(Entity*);
|
||||||
extern u32 __modsi3(u32, u32);
|
extern u32 __modsi3(u32, u32);
|
||||||
extern void DoFade(u32, u32);
|
extern void DoFade(u32, u32);
|
||||||
extern void UpdateAnimationSingleFrame(Entity*);
|
extern void UpdateAnimationSingleFrame(Entity*);
|
||||||
extern u32 GetInventoryValue(u32);
|
extern u32 GetInventoryValue(u32);
|
||||||
extern void TextboxNoOverlapFollow(u32 index);
|
|
||||||
extern Entity* CreateFx(Entity*, u32, u32);
|
extern Entity* CreateFx(Entity*, u32, u32);
|
||||||
extern u32 CheckKinstoneFused(u32);
|
extern u32 CheckKinstoneFused(u32);
|
||||||
|
extern void ForceEquipItem(u8, u8);
|
||||||
|
extern void LoadRoomEntityList();
|
||||||
|
void ModHealth(s32);
|
||||||
|
void PositionRelative(Entity*, Entity*, u32, u32);
|
||||||
|
void CopyPosition(Entity*, Entity*);
|
||||||
|
|
||||||
// Unidentified
|
// Unidentified
|
||||||
extern void sub_0806ED78(Entity*);
|
extern void sub_0806ED78(Entity*);
|
||||||
|
@ -56,7 +58,7 @@ extern void sub_0807DD50(Entity*);
|
||||||
extern void sub_0807DD94(Entity*, u32);
|
extern void sub_0807DD94(Entity*, u32);
|
||||||
extern Entity* sub_0805EB00(u32, u32, u32);
|
extern Entity* sub_0805EB00(u32, u32, u32);
|
||||||
extern Entity* sub_0805EB2C(u32, u32, u32, u32, u32);
|
extern Entity* sub_0805EB2C(u32, u32, u32, u32, u32);
|
||||||
extern u32 sub_0806FDEC(Entity*, u32*);
|
extern u32 LoadExtraSpriteData(Entity*, u32*);
|
||||||
extern s32 sub_0806ED9C(Entity*, u32, u32);
|
extern s32 sub_0806ED9C(Entity*, u32, u32);
|
||||||
extern s32* sub_0807DAD0(Entity*, u8*);
|
extern s32* sub_0807DAD0(Entity*, u8*);
|
||||||
extern void sub_0806FF60(Entity*, u32, u32);
|
extern void sub_0806FF60(Entity*, u32, u32);
|
||||||
|
@ -65,4 +67,20 @@ extern void sub_0807000C(Entity*);
|
||||||
extern void sub_0805E47C(Entity*);
|
extern void sub_0805E47C(Entity*);
|
||||||
extern void sub_0805E584(Entity*);
|
extern void sub_0805E584(Entity*);
|
||||||
extern void sub_0806FAB0(Entity*, Entity*);
|
extern void sub_0806FAB0(Entity*, Entity*);
|
||||||
|
extern void sub_0806ED78(Entity*);
|
||||||
|
extern void sub_08068BEC(Entity*, u32);
|
||||||
|
extern void sub_08078778(Entity*);
|
||||||
|
extern s32 sub_0806ED9C(Entity*, u32, u32);
|
||||||
|
extern s32 sub_0806F078(Entity*, s32);
|
||||||
|
extern void sub_08004274(Entity*);
|
||||||
|
extern void sub_0801D2B4(Entity*, u32);
|
||||||
|
extern void sub_0806FD3C(Entity*);
|
||||||
|
extern u32 sub_0801E99C(Entity*);
|
||||||
|
extern void sub_0807DD50(Entity*);
|
||||||
|
extern u32 sub_080045C4(Entity*, Entity*);
|
||||||
|
extern void sub_0806F118(Entity*);
|
||||||
|
extern void sub_0807DD94(Entity*, u32);
|
||||||
|
extern void sub_0805ED14(u32*);
|
||||||
|
extern void sub_080A7C18(u32, u32, u32);
|
||||||
|
extern void sub_08068BEC(Entity*, u32);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -8,6 +8,6 @@ typedef struct {
|
||||||
u16 palette;
|
u16 palette;
|
||||||
u8 animIndex;
|
u8 animIndex;
|
||||||
u8 unk;
|
u8 unk;
|
||||||
} SpriteLoadThing;
|
} SpriteLoadData;
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -20,4 +20,5 @@ extern TextBox gTextBox;
|
||||||
|
|
||||||
void TextboxNoOverlap(u32 index, Entity* ent);
|
void TextboxNoOverlap(u32 index, Entity* ent);
|
||||||
|
|
||||||
|
void extern TextboxNoOverlapFollow(u32 index);
|
||||||
#endif
|
#endif
|
|
@ -516,7 +516,9 @@ SECTIONS {
|
||||||
asm/goronMerchant.o(.text);
|
asm/goronMerchant.o(.text);
|
||||||
asm/gorman.o(.text);
|
asm/gorman.o(.text);
|
||||||
asm/dog.o(.text);
|
asm/dog.o(.text);
|
||||||
|
src/syrup.o(.text);
|
||||||
asm/syrup.o(.text);
|
asm/syrup.o(.text);
|
||||||
|
src/rem.o(.text);
|
||||||
asm/rem.o(.text);
|
asm/rem.o(.text);
|
||||||
src/townMinish.o(.text);
|
src/townMinish.o(.text);
|
||||||
asm/townMinish.o(.text);
|
asm/townMinish.o(.text);
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "entity.h"
|
#include "entity.h"
|
||||||
|
#include "functions.h"
|
||||||
|
#include "flags.h"
|
||||||
#include "link.h"
|
#include "link.h"
|
||||||
#include "room.h"
|
#include "room.h"
|
||||||
|
#include "textbox.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/*0x00*/ u8 filler[0x2C];
|
/*0x00*/ u8 filler[0x2C];
|
||||||
/*0x2C*/ u8 unk;
|
/*0x2C*/ u8 unk;
|
||||||
|
@ -12,39 +16,6 @@ typedef struct {
|
||||||
Stats stats;
|
Stats stats;
|
||||||
} struct_02002A40;
|
} struct_02002A40;
|
||||||
|
|
||||||
extern void sub_0806ED78(Entity*);
|
|
||||||
extern void sub_08068BEC(Entity*, u32);
|
|
||||||
extern void sub_08078778(Entity*);
|
|
||||||
extern void InitializeAnimation(Entity*, u32);
|
|
||||||
extern s32 sub_0806ED9C(Entity*, u32, u32);
|
|
||||||
extern s32 sub_0806F078(Entity*, s32);
|
|
||||||
extern void sub_08004274(Entity*);
|
|
||||||
extern void TextboxNoOverlapFollow(u32);
|
|
||||||
extern void sub_0801D2B4(Entity*, u32);
|
|
||||||
extern void sub_0806FD3C(Entity*);
|
|
||||||
extern u32 sub_0801E99C(Entity*);
|
|
||||||
extern void sub_08078784(Entity*, u8);
|
|
||||||
extern void sub_0807DD50(Entity*);
|
|
||||||
extern void sub_080045C4(Entity*, Entity*);
|
|
||||||
extern u32 sub_0806F5A4(void);
|
|
||||||
extern void InitAnimationForceUpdate(Entity*, u32);
|
|
||||||
extern void sub_0806F118(Entity*);
|
|
||||||
extern void sub_0807DD94(Entity*, u32);
|
|
||||||
extern u32 UpdateFuseInteraction();
|
|
||||||
extern void ForceEquipItem(u8, u8);
|
|
||||||
extern void sub_0805ED14(u32*);
|
|
||||||
extern Entity* CreateFx(Entity*, u32, u32);
|
|
||||||
extern void PositionRelative(Entity*, Entity*, u32, u32);
|
|
||||||
extern void PlaySFX(u32);
|
|
||||||
extern u32 GetInventoryValue(u32);
|
|
||||||
extern void sub_080A7C18(u32, u32, u32);
|
|
||||||
extern u32 CheckLocalFlag(u32);
|
|
||||||
extern void TextboxNoOverlap(u32, Entity*);
|
|
||||||
extern void LoadRoomEntityList();
|
|
||||||
extern void ModHealth(s32);
|
|
||||||
extern void InitAnimationForceUpdate(Entity*, u32);
|
|
||||||
extern void UpdateAnimationSingleFrame(Entity*);
|
|
||||||
extern void sub_08068BEC(Entity*, u32);
|
|
||||||
|
|
||||||
extern void (*gUnk_081115C0[])(Entity*);
|
extern void (*gUnk_081115C0[])(Entity*);
|
||||||
extern void (*gUnk_081115D0[])(Entity*);
|
extern void (*gUnk_081115D0[])(Entity*);
|
||||||
|
@ -164,8 +135,7 @@ void FUN_08068b2c(Entity* this) {
|
||||||
if (this->interactType == '\x02') {
|
if (this->interactType == '\x02') {
|
||||||
this->action = 2;
|
this->action = 2;
|
||||||
this->interactType = '\0';
|
this->interactType = '\0';
|
||||||
sub_080045C4(this, &gLinkEntity);
|
uVar1 = sub_0806F5A4(sub_080045C4(this, &gLinkEntity));
|
||||||
uVar1 = sub_0806F5A4();
|
|
||||||
InitAnimationForceUpdate(this, uVar1);
|
InitAnimationForceUpdate(this, uVar1);
|
||||||
sub_0806F118(this);
|
sub_0806F118(this);
|
||||||
} else {
|
} else {
|
||||||
|
@ -347,18 +317,22 @@ switchD_08068d12_caseD_0:
|
||||||
*(u32*)¶m_2->animationState = 1;
|
*(u32*)¶m_2->animationState = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Introduction dialoague
|
||||||
void sub_08068DB8(Entity* this) {
|
void sub_08068DB8(Entity* this) {
|
||||||
TextboxNoOverlap(gUnk_08111664[this->parameter3], this);
|
TextboxNoOverlap(gUnk_08111664[this->parameter3], this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Ask to teach dialoague
|
||||||
void sub_08068DD0(Entity* this) {
|
void sub_08068DD0(Entity* this) {
|
||||||
TextboxNoOverlap(gUnk_0811167A[this->parameter3], this);
|
TextboxNoOverlap(gUnk_0811167A[this->parameter3], this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Technique Dialogue
|
||||||
void sub_08068DE8(Entity* this) {
|
void sub_08068DE8(Entity* this) {
|
||||||
TextboxNoOverlap(gUnk_08111690[this->parameter3], this);
|
TextboxNoOverlap(gUnk_08111690[this->parameter3], this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Posession dialogue
|
||||||
void sub_08068E00(Entity* this) {
|
void sub_08068E00(Entity* this) {
|
||||||
TextboxNoOverlap(gUnk_081116A6[this->parameter3], this);
|
TextboxNoOverlap(gUnk_081116A6[this->parameter3], this);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "entity.h"
|
#include "entity.h"
|
||||||
#include "room.h"
|
#include "room.h"
|
||||||
|
|
||||||
extern void sub_080A2CC0();
|
extern void sub_080A2CC0();
|
||||||
extern void sub_0806F69C();
|
extern void sub_0806F69C();
|
||||||
extern void sub_08004488();
|
extern void sub_08004488();
|
||||||
|
@ -20,7 +19,7 @@ void BladeTrap(Entity* ent) {
|
||||||
if ((ent->direction & 0x80) == 0) {
|
if ((ent->direction & 0x80) == 0) {
|
||||||
sub_0806F69C(ent);
|
sub_0806F69C(ent);
|
||||||
}
|
}
|
||||||
(u32) puVar3 = &(ent->heldObjectPtr);
|
puVar3 = (u16*)&(ent->heldObjectPtr);
|
||||||
uVar1 = *puVar3;
|
uVar1 = *puVar3;
|
||||||
*puVar3 = uVar1 - 1;
|
*puVar3 = uVar1 - 1;
|
||||||
if ((u16)(*puVar3) == 0) {
|
if ((u16)(*puVar3) == 0) {
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
#include "global.h"
|
||||||
|
#include "functions.h"
|
||||||
|
#include "entity.h"
|
||||||
|
|
||||||
|
extern void sub_0807DDAC(Entity*, u32);
|
||||||
|
extern void sub_0807DDE4(Entity*);
|
||||||
|
extern void UpdateAnimationSingleFrame(Entity*);
|
||||||
|
extern void sub_0806ED78(Entity*);
|
||||||
|
extern void PlaySFX(u32);
|
||||||
|
|
||||||
|
extern void (*gUnk_08112260[])(Entity*);
|
||||||
|
extern void (*gUnk_08112278[])(Entity*);
|
||||||
|
|
||||||
|
void sub_0806A358(Entity* this) {
|
||||||
|
gUnk_08112260[this->entityType.parameter1](this);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_0806a370(Entity* this) {
|
||||||
|
u8* pbVar1;
|
||||||
|
|
||||||
|
gUnk_08112278[this->action](this);
|
||||||
|
sub_0807DDAC(this, 0);
|
||||||
|
sub_0807DDE4(this);
|
||||||
|
UpdateAnimationSingleFrame(this);
|
||||||
|
sub_0806ED78(this);
|
||||||
|
if (this->field_0x58 == 0xf) {
|
||||||
|
pbVar1 = &this->frames.all;
|
||||||
|
if (*pbVar1 == 1) {
|
||||||
|
*pbVar1 = 0;
|
||||||
|
PlaySFX(0x218);
|
||||||
|
}
|
||||||
|
if (*pbVar1 == 2) {
|
||||||
|
*pbVar1 = 0;
|
||||||
|
PlaySFX(0x219);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,77 @@
|
||||||
|
#include "global.h"
|
||||||
|
#include "entity.h"
|
||||||
|
#include "npc.h"
|
||||||
|
|
||||||
|
|
||||||
|
extern void sub_0807DD50(Entity*);
|
||||||
|
extern Entity* LoadExtraSpriteData(Entity*, SpriteLoadData*);
|
||||||
|
extern void sub_0806ED78(Entity*);
|
||||||
|
extern void sub_0805E3A0(Entity*, u32);
|
||||||
|
extern void InitializeAnimation(Entity*, u32);
|
||||||
|
|
||||||
|
extern void (*gUnk_081121D4[])(Entity*);
|
||||||
|
|
||||||
|
extern SpriteLoadData gUnk_081121C4;
|
||||||
|
extern SpriteLoadData gUnk_081121B4;
|
||||||
|
extern u32 gUnk_030010A0;
|
||||||
|
extern void sub_0807DD94(Entity*, u32);
|
||||||
|
extern void sub_0806A26C(Entity*);
|
||||||
|
extern void sub_080042BA(Entity*, u32);
|
||||||
|
|
||||||
|
void Syrup(Entity *this)
|
||||||
|
{
|
||||||
|
gUnk_081121D4[this->action](this);
|
||||||
|
sub_0806ED78(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_0806A1F8(Entity *this)
|
||||||
|
{
|
||||||
|
Entity *iVar1;
|
||||||
|
SpriteLoadData *paVar2;
|
||||||
|
|
||||||
|
(this->entityType).parameter1 == 0 ? (paVar2 = &gUnk_081121B4) : (paVar2 = &gUnk_081121C4);
|
||||||
|
|
||||||
|
iVar1 = LoadExtraSpriteData(this,paVar2);
|
||||||
|
if (iVar1) {
|
||||||
|
this->action = 1;
|
||||||
|
sub_0805E3A0(this,2);
|
||||||
|
sub_0807DD50(this);
|
||||||
|
InitializeAnimation(this,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_0806A234(Entity *this)
|
||||||
|
{
|
||||||
|
sub_0807DD94(this, 0);
|
||||||
|
if ((this->field_0x82 & 4) != 0) {
|
||||||
|
if ((gUnk_030010A0 & 7) == 0) {
|
||||||
|
sub_0806A26C(this);
|
||||||
|
}
|
||||||
|
sub_080042BA(this, 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef NON_MATCHING
|
||||||
|
void sub_0806A26C(Entity *this)
|
||||||
|
{
|
||||||
|
u8 unk;
|
||||||
|
u32 uVar2;
|
||||||
|
Entity *pEVar1;
|
||||||
|
pEVar1 = CreateObject(0xf,0x2f,0);
|
||||||
|
if (pEVar1 != NULL) {
|
||||||
|
sub_0806FA30(this, pEVar1);
|
||||||
|
if (uVar2 = Random(), uVar2)
|
||||||
|
{
|
||||||
|
unk = -unk; // wtf?!
|
||||||
|
}
|
||||||
|
pEVar1->spriteOffsetX = gUnk_081121DC[uVar2 & 7];
|
||||||
|
pEVar1->spriteOffsetY = gUnk_081121DC[(uVar2 / 256) & 7] - 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
NAKED
|
||||||
|
void sub_0806A26C(Entity *this)
|
||||||
|
{
|
||||||
|
asm(".include \"asm/non_matching/syrup/sub_0806A26C.inc\"");
|
||||||
|
}
|
||||||
|
#endif
|
|
@ -23,7 +23,7 @@ void sub_08065534(Entity* this) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_08065570(Entity* this) {
|
void sub_08065570(Entity* this) {
|
||||||
if (sub_0806FDEC(this, &gUnk_0810FEB0) != 0) {
|
if (LoadExtraSpriteData(this, &gUnk_0810FEB0) != 0) {
|
||||||
InitializeAnimation(this, 0);
|
InitializeAnimation(this, 0);
|
||||||
sub_08078778(this);
|
sub_08078778(this);
|
||||||
this->action = 1;
|
this->action = 1;
|
||||||
|
@ -63,7 +63,7 @@ void sub_0806559C(Entity* this) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_08065608(Entity* this) {
|
void sub_08065608(Entity* this) {
|
||||||
if (sub_0806FDEC(this, &gUnk_0810FEB0) != 0) {
|
if (LoadExtraSpriteData(this, &gUnk_0810FEB0) != 0) {
|
||||||
this->action = 1;
|
this->action = 1;
|
||||||
this->spriteSettings.b.ss0 = 1;
|
this->spriteSettings.b.ss0 = 1;
|
||||||
this->field_0x68 = sub_0801E99C(this);
|
this->field_0x68 = sub_0801E99C(this);
|
||||||
|
@ -152,7 +152,7 @@ void sub_080657A8(Entity* this) {
|
||||||
|
|
||||||
void sub_080657DC(Entity* this) {
|
void sub_080657DC(Entity* this) {
|
||||||
if (this->action == 0) {
|
if (this->action == 0) {
|
||||||
if (sub_0806FDEC(this, &gUnk_0810FEB0) != 0) {
|
if (LoadExtraSpriteData(this, &gUnk_0810FEB0) != 0) {
|
||||||
this->action++;
|
this->action++;
|
||||||
this->spriteSettings.b.ss0 = 1;
|
this->spriteSettings.b.ss0 = 1;
|
||||||
InitializeAnimation(this, 6);
|
InitializeAnimation(this, 6);
|
||||||
|
|
|
@ -9,8 +9,8 @@ extern void sub_0806ED78(Entity *);
|
||||||
extern void (*gUnk_081126E8[])();
|
extern void (*gUnk_081126E8[])();
|
||||||
extern void sub_0806ACC4(Entity *);
|
extern void sub_0806ACC4(Entity *);
|
||||||
|
|
||||||
extern u32 sub_0806FDEC(Entity *, SpriteLoadThing *);
|
extern u32 LoadExtraSpriteData(Entity *, SpriteLoadData *);
|
||||||
extern SpriteLoadThing gUnk_08112674[];
|
extern SpriteLoadData gUnk_08112674[];
|
||||||
|
|
||||||
void sub_0806ABC8(Entity *this)
|
void sub_0806ABC8(Entity *this)
|
||||||
{
|
{
|
||||||
|
@ -27,8 +27,8 @@ void sub_0806ABFC(Entity *this)
|
||||||
{
|
{
|
||||||
u8 animationState;
|
u8 animationState;
|
||||||
|
|
||||||
SpriteLoadThing* spriteLoadThing = &gUnk_08112674[this->entityType.parameter1 << 2];
|
SpriteLoadData* SpriteLoadData = &gUnk_08112674[this->entityType.parameter1 << 2];
|
||||||
if (!sub_0806FDEC(this, spriteLoadThing))
|
if (!LoadExtraSpriteData(this, SpriteLoadData))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue