Start crow.c for s15c

This commit is contained in:
Kieron 2024-03-09 18:50:43 +00:00
parent a7b9d3b489
commit 57fba7caa9
19 changed files with 413 additions and 781 deletions

View File

@ -1,36 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DD7D8
s15c_crow_800DD7D8:
dw 0x27BDFFD8 ; 800DD7D8
dw 0x00801021 ; 800DD7DC
dw 0x00A02021 ; 800DD7E0
dw 0x00402821 ; 800DD7E4
dw 0xAFB1001C ; 800DD7E8
dw 0x00C08821 ; 800DD7EC
dw 0x27A60010 ; 800DD7F0
dw 0xAFBF0020 ; 800DD7F4
dw 0x0C005B50 ; 800DD7F8
dw 0xAFB00018 ; 800DD7FC
dw 0x87A40010 ; 800DD800
dw 0x87A50014 ; 800DD804
dw 0x0C0250C2 ; 800DD808
dw 0x00000000 ; 800DD80C
dw 0x30420FFF ; 800DD810
dw 0xA6220002 ; 800DD814
dw 0x87B00012 ; 800DD818
dw 0x27A40010 ; 800DD81C
dw 0x0C005B60 ; 800DD820
dw 0xA7A00012 ; 800DD824
dw 0x00402021 ; 800DD828
dw 0x0C0250C2 ; 800DD82C
dw 0x02002821 ; 800DD830
dw 0x30420FFF ; 800DD834
dw 0x2442FC00 ; 800DD838
dw 0xA6220000 ; 800DD83C
dw 0x8FBF0020 ; 800DD840
dw 0x8FB1001C ; 800DD844
dw 0x8FB00018 ; 800DD848
dw 0x03E00008 ; 800DD84C
dw 0x27BD0028 ; 800DD850

View File

@ -1,26 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DD854
s15c_crow_800DD854:
dw 0x27BDFFE0 ; 800DD854
dw 0xAFB00010 ; 800DD858
dw 0x00A08021 ; 800DD85C
dw 0xAFB10014 ; 800DD860
dw 0x00008821 ; 800DD864
dw 0xAFBF0018 ; 800DD868
dw 0x0C0082A9 ; 800DD86C
dw 0x00000000 ; 800DD870
dw 0x10400006 ; 800DD874
dw 0x00402021 ; 800DD878
dw 0x0C008285 ; 800DD87C
dw 0x02002821 ; 800DD880
dw 0x26100008 ; 800DD884
dw 0x0803761B ; 800DD888
dw 0x26310001 ; 800DD88C
dw 0x02201021 ; 800DD890
dw 0x8FBF0018 ; 800DD894
dw 0x8FB10014 ; 800DD898
dw 0x8FB00010 ; 800DD89C
dw 0x03E00008 ; 800DD8A0
dw 0x27BD0020 ; 800DD8A4

View File

@ -1,27 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DD8A8
s15c_crow_800DD8A8:
dw 0x27BDFFE8 ; 800DD8A8
dw 0xAFBF0010 ; 800DD8AC
dw 0x8C8203B8 ; 800DD8B0
dw 0x00000000 ; 800DD8B4
dw 0x10450008 ; 800DD8B8
dw 0x24020001 ; 800DD8BC
dw 0xAC8503B8 ; 800DD8C0
dw 0x24840080 ; 800DD8C4
dw 0x00003021 ; 800DD8C8
dw 0x0C00D335 ; 800DD8CC
dw 0x24070004 ; 800DD8D0
dw 0x0803763C ; 800DD8D4
dw 0x00000000 ; 800DD8D8
dw 0x8483009A ; 800DD8DC
dw 0x00000000 ; 800DD8E0
dw 0x14620002 ; 800DD8E4
dw 0x00000000 ; 800DD8E8
dw 0xAC8603C4 ; 800DD8EC
dw 0x8FBF0010 ; 800DD8F0
dw 0x00000000 ; 800DD8F4
dw 0x03E00008 ; 800DD8F8
dw 0x27BD0018 ; 800DD8FC

View File

@ -1,31 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DD900
s15c_crow_800DD900:
dw 0x84860000 ; 800DD900
dw 0x84A20000 ; 800DD904
dw 0x94A30000 ; 800DD908
dw 0x0046102A ; 800DD90C
dw 0x10400003 ; 800DD910
dw 0x00000000 ; 800DD914
dw 0xA4830000 ; 800DD918
dw 0xA4A60000 ; 800DD91C
dw 0x84860002 ; 800DD920
dw 0x84A20002 ; 800DD924
dw 0x94A30002 ; 800DD928
dw 0x0046102A ; 800DD92C
dw 0x10400003 ; 800DD930
dw 0x00000000 ; 800DD934
dw 0xA4830002 ; 800DD938
dw 0xA4A60002 ; 800DD93C
dw 0x84860004 ; 800DD940
dw 0x84A20004 ; 800DD944
dw 0x94A30004 ; 800DD948
dw 0x0046102A ; 800DD94C
dw 0x10400003 ; 800DD950
dw 0x00000000 ; 800DD954
dw 0xA4830004 ; 800DD958
dw 0xA4A60004 ; 800DD95C
dw 0x03E00008 ; 800DD960
dw 0x00000000 ; 800DD964

View File

@ -1,31 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DD968
s15c_crow_800DD968:
dw 0x84830000 ; 800DD968
dw 0x84A20000 ; 800DD96C
dw 0x00000000 ; 800DD970
dw 0x0062102A ; 800DD974
dw 0x14400011 ; 800DD978
dw 0x00000000 ; 800DD97C
dw 0x84C20000 ; 800DD980
dw 0x00000000 ; 800DD984
dw 0x0043102A ; 800DD988
dw 0x1440000C ; 800DD98C
dw 0x00000000 ; 800DD990
dw 0x84840004 ; 800DD994
dw 0x84A20004 ; 800DD998
dw 0x00000000 ; 800DD99C
dw 0x0082102A ; 800DD9A0
dw 0x14400006 ; 800DD9A4
dw 0x00000000 ; 800DD9A8
dw 0x84C20004 ; 800DD9AC
dw 0x00000000 ; 800DD9B0
dw 0x0044102A ; 800DD9B4
dw 0x10400003 ; 800DD9B8
dw 0x00000000 ; 800DD9BC
dw 0x03E00008 ; 800DD9C0
dw 0x2402FFFF ; 800DD9C4
dw 0x03E00008 ; 800DD9C8
dw 0x24020001 ; 800DD9CC

View File

@ -1,70 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DD9D0
s15c_crow_800DD9D0:
dw 0x27BDFFC8 ; 800DD9D0
dw 0xAFB00020 ; 800DD9D4
dw 0x00808021 ; 800DD9D8
dw 0xAFB10024 ; 800DD9DC
dw 0x00A08821 ; 800DD9E0
dw 0xAFB3002C ; 800DD9E4
dw 0x00C09821 ; 800DD9E8
dw 0x24040040 ; 800DD9EC
dw 0xAFBF0034 ; 800DD9F0
dw 0xAFB40030 ; 800DD9F4
dw 0x0C005C24 ; 800DD9F8
dw 0xAFB20028 ; 800DD9FC
dw 0x24040040 ; 800DDA00
dw 0x0C005C24 ; 800DDA04
dw 0x00409021 ; 800DDA08
dw 0x24040040 ; 800DDA0C
dw 0x0C005C24 ; 800DDA10
dw 0x0040A021 ; 800DDA14
dw 0x86230000 ; 800DDA18
dw 0x86040000 ; 800DDA1C
dw 0x00000000 ; 800DDA20
dw 0x00641823 ; 800DDA24
dw 0x00720018 ; 800DDA28
dw 0x00003812 ; 800DDA2C
dw 0x00071983 ; 800DDA30
dw 0xAFA30010 ; 800DDA34
dw 0x86230002 ; 800DDA38
dw 0x86040002 ; 800DDA3C
dw 0x00000000 ; 800DDA40
dw 0x00641823 ; 800DDA44
dw 0x00740018 ; 800DDA48
dw 0x00003812 ; 800DDA4C
dw 0x00071983 ; 800DDA50
dw 0xAFA30014 ; 800DDA54
dw 0x86230004 ; 800DDA58
dw 0x86040004 ; 800DDA5C
dw 0x00000000 ; 800DDA60
dw 0x00641823 ; 800DDA64
dw 0x00620018 ; 800DDA68
dw 0x97A30010 ; 800DDA6C
dw 0x00003812 ; 800DDA70
dw 0x00071183 ; 800DDA74
dw 0xAFA20018 ; 800DDA78
dw 0x96020000 ; 800DDA7C
dw 0x00000000 ; 800DDA80
dw 0x00431021 ; 800DDA84
dw 0xA6620000 ; 800DDA88
dw 0x96020002 ; 800DDA8C
dw 0x97A30014 ; 800DDA90
dw 0x00000000 ; 800DDA94
dw 0x00431021 ; 800DDA98
dw 0xA6620002 ; 800DDA9C
dw 0x96020004 ; 800DDAA0
dw 0x97A30018 ; 800DDAA4
dw 0x00000000 ; 800DDAA8
dw 0x00431021 ; 800DDAAC
dw 0xA6620004 ; 800DDAB0
dw 0x8FBF0034 ; 800DDAB4
dw 0x8FB40030 ; 800DDAB8
dw 0x8FB3002C ; 800DDABC
dw 0x8FB20028 ; 800DDAC0
dw 0x8FB10024 ; 800DDAC4
dw 0x8FB00020 ; 800DDAC8
dw 0x03E00008 ; 800DDACC
dw 0x27BD0038 ; 800DDAD0

View File

@ -1,36 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DDAD4
s15c_crow_800DDAD4:
dw 0x27BDFFE0 ; 800DDAD4
dw 0xAFB00010 ; 800DDAD8
dw 0x00808021 ; 800DDADC
dw 0xAFB20018 ; 800DDAE0
dw 0x26120004 ; 800DDAE4
dw 0x02402021 ; 800DDAE8
dw 0x26050384 ; 800DDAEC
dw 0xAFB10014 ; 800DDAF0
dw 0x26110050 ; 800DDAF4
dw 0xAFBF001C ; 800DDAF8
dw 0x0C0375F6 ; 800DDAFC
dw 0x02203021 ; 800DDB00
dw 0x3C04800B ; 800DDB04
dw 0x2484B39C ; 800DDB08
dw 0x0C006F23 ; 800DDB0C
dw 0x02202821 ; 800DDB10
dw 0x2604039C ; 800DDB14
dw 0x261003A4 ; 800DDB18
dw 0x02002821 ; 800DDB1C
dw 0x0C006F92 ; 800DDB20
dw 0x24060001 ; 800DDB24
dw 0x02402021 ; 800DDB28
dw 0x02002821 ; 800DDB2C
dw 0x0C005B40 ; 800DDB30
dw 0x00803021 ; 800DDB34
dw 0x8FBF001C ; 800DDB38
dw 0x8FB20018 ; 800DDB3C
dw 0x8FB10014 ; 800DDB40
dw 0x8FB00010 ; 800DDB44
dw 0x03E00008 ; 800DDB48
dw 0x27BD0020 ; 800DDB4C

View File

@ -1,101 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DDB50
s15c_crow_800DDB50:
dw 0x27BDFFE8 ; 800DDB50
dw 0xAFB00010 ; 800DDB54
dw 0x00808021 ; 800DDB58
dw 0xAFBF0014 ; 800DDB5C
dw 0x0C005C24 ; 800DDB60
dw 0x24041000 ; 800DDB64
dw 0x8E030024 ; 800DDB68
dw 0x00000000 ; 800DDB6C
dw 0x0043001A ; 800DDB70
dw 0x14600002 ; 800DDB74
dw 0x00000000 ; 800DDB78
dw 0x0007000D ; 800DDB7C
dw 0x2401FFFF ; 800DDB80
dw 0x14610004 ; 800DDB84
dw 0x3C018000 ; 800DDB88
dw 0x14410002 ; 800DDB8C
dw 0x00000000 ; 800DDB90
dw 0x0006000D ; 800DDB94
dw 0x00001810 ; 800DDB98
dw 0x8E020028 ; 800DDB9C
dw 0x00000000 ; 800DDBA0
dw 0x0062182A ; 800DDBA4
dw 0x10600045 ; 800DDBA8
dw 0x00000000 ; 800DDBAC
dw 0x8E020060 ; 800DDBB0
dw 0x00000000 ; 800DDBB4
dw 0x00401821 ; 800DDBB8
dw 0x2442FFFF ; 800DDBBC
dw 0x04610021 ; 800DDBC0
dw 0xAE020060 ; 800DDBC4
dw 0x0C005C24 ; 800DDBC8
dw 0x24040020 ; 800DDBCC
dw 0x24041000 ; 800DDBD0
dw 0x24420014 ; 800DDBD4
dw 0x0C005C24 ; 800DDBD8
dw 0xAE020060 ; 800DDBDC
dw 0x3C035555 ; 800DDBE0
dw 0x34635556 ; 800DDBE4
dw 0x00430018 ; 800DDBE8
dw 0x00021FC3 ; 800DDBEC
dw 0x8E040058 ; 800DDBF0
dw 0x00003810 ; 800DDBF4
dw 0x00E32823 ; 800DDBF8
dw 0x00051840 ; 800DDBFC
dw 0x00651821 ; 800DDC00
dw 0x00432823 ; 800DDC04
dw 0x10850003 ; 800DDC08
dw 0x24A20001 ; 800DDC0C
dw 0x0803770B ; 800DDC10
dw 0xAE050058 ; 800DDC14
dw 0xAE020058 ; 800DDC18
dw 0x28420003 ; 800DDC1C
dw 0x14400002 ; 800DDC20
dw 0x00000000 ; 800DDC24
dw 0xAE000058 ; 800DDC28
dw 0x0C005C2F ; 800DDC2C
dw 0x24040020 ; 800DDC30
dw 0x304400FF ; 800DDC34
dw 0x8E060058 ; 800DDC38
dw 0x2405003F ; 800DDC3C
dw 0x0C00CA5A ; 800DDC40
dw 0x24C600B5 ; 800DDC44
dw 0x8E020064 ; 800DDC48
dw 0x00000000 ; 800DDC4C
dw 0x00401821 ; 800DDC50
dw 0x2442FFFF ; 800DDC54
dw 0x04610019 ; 800DDC58
dw 0xAE020064 ; 800DDC5C
dw 0x0C005C24 ; 800DDC60
dw 0x24040010 ; 800DDC64
dw 0x24040004 ; 800DDC68
dw 0x2442000F ; 800DDC6C
dw 0x0C005C24 ; 800DDC70
dw 0xAE020064 ; 800DDC74
dw 0x8E03005C ; 800DDC78
dw 0x00402821 ; 800DDC7C
dw 0x10650003 ; 800DDC80
dw 0x24A20001 ; 800DDC84
dw 0x08037729 ; 800DDC88
dw 0xAE05005C ; 800DDC8C
dw 0xAE02005C ; 800DDC90
dw 0x28420004 ; 800DDC94
dw 0x14400002 ; 800DDC98
dw 0x00000000 ; 800DDC9C
dw 0xAE00005C ; 800DDCA0
dw 0x0C005C2F ; 800DDCA4
dw 0x24040020 ; 800DDCA8
dw 0x304400FF ; 800DDCAC
dw 0x8E06005C ; 800DDCB0
dw 0x2405003F ; 800DDCB4
dw 0x0C00CA5A ; 800DDCB8
dw 0x24C600B9 ; 800DDCBC
dw 0x8FBF0014 ; 800DDCC0
dw 0x8FB00010 ; 800DDCC4
dw 0x03E00008 ; 800DDCC8
dw 0x27BD0018 ; 800DDCCC

View File

@ -1,22 +1,8 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DDCD0
s15c_crow_800DDCD0:
dw 0x3C02800B ; 800DDCD0
dw 0x8C42B3CC ; 800DDCD4
dw 0x00000000 ; 800DDCD8
dw 0x30420002 ; 800DDCDC
dw 0x10400007 ; 800DDCE0
dw 0x24030001 ; 800DDCE4
dw 0x8C8203C8 ; 800DDCE8
dw 0x00000000 ; 800DDCEC
dw 0x10430003 ; 800DDCF0
dw 0x2402000A ; 800DDCF4
dw 0xAC8303C8 ; 800DDCF8
dw 0xAC8203C4 ; 800DDCFC
dw 0x03E00008 ; 800DDD00
dw 0x00000000 ; 800DDD04
xdef s15c_crow_800DDD08
s15c_crow_800DDD08:
dw 0x27BDFFB0 ; 800DDD08
dw 0xAFB1002C ; 800DDD0C
dw 0x00808821 ; 800DDD10
@ -744,3 +730,14 @@ s15c_crow_800DDCD0:
dw 0x1440FD8E ; 800DE858
dw 0x265203CC ; 800DE85C
dw 0x8FBF004C ; 800DE860
dw 0x8FBE0048 ; 800DE864
dw 0x8FB70044 ; 800DE868
dw 0x8FB60040 ; 800DE86C
dw 0x8FB5003C ; 800DE870
dw 0x8FB40038 ; 800DE874
dw 0x8FB30034 ; 800DE878
dw 0x8FB20030 ; 800DE87C
dw 0x8FB1002C ; 800DE880
dw 0x8FB00028 ; 800DE884
dw 0x03E00008 ; 800DE888
dw 0x27BD0050 ; 800DE88C

View File

@ -1,16 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DE864
s15c_crow_800DE864:
dw 0x8FBE0048 ; 800DE864
dw 0x8FB70044 ; 800DE868
dw 0x8FB60040 ; 800DE86C
dw 0x8FB5003C ; 800DE870
dw 0x8FB40038 ; 800DE874
dw 0x8FB30034 ; 800DE878
dw 0x8FB20030 ; 800DE87C
dw 0x8FB1002C ; 800DE880
dw 0x8FB00028 ; 800DE884
dw 0x03E00008 ; 800DE888
dw 0x27BD0050 ; 800DE88C

View File

@ -1,48 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DE890
s15c_crow_800DE890:
dw 0x27BDFFD0 ; 800DE890
dw 0xAFB40028 ; 800DE894
dw 0x0080A021 ; 800DE898
dw 0xAFBF002C ; 800DE89C
dw 0xAFB30024 ; 800DE8A0
dw 0xAFB20020 ; 800DE8A4
dw 0xAFB1001C ; 800DE8A8
dw 0xAFB00018 ; 800DE8AC
dw 0x8E840020 ; 800DE8B0
dw 0x0C00C530 ; 800DE8B4
dw 0x00008021 ; 800DE8B8
dw 0x8E820024 ; 800DE8BC
dw 0x00000000 ; 800DE8C0
dw 0x18400014 ; 800DE8C4
dw 0x24130032 ; 800DE8C8
dw 0x2412006C ; 800DE8CC
dw 0x0C00B500 ; 800DE8D0
dw 0x02928821 ; 800DE8D4
dw 0x10400009 ; 800DE8D8
dw 0xAE220000 ; 800DE8DC
dw 0x00402021 ; 800DE8E0
dw 0x24050014 ; 800DE8E4
dw 0x24060002 ; 800DE8E8
dw 0x27A70010 ; 800DE8EC
dw 0xA7B30010 ; 800DE8F0
dw 0xA7B30012 ; 800DE8F4
dw 0x0C00B71D ; 800DE8F8
dw 0xA7B30014 ; 800DE8FC
dw 0xAE2003C0 ; 800DE900
dw 0x8E820024 ; 800DE904
dw 0x26100001 ; 800DE908
dw 0x0202102A ; 800DE90C
dw 0x1440FFEF ; 800DE910
dw 0x265203CC ; 800DE914
dw 0x8FBF002C ; 800DE918
dw 0x8FB40028 ; 800DE91C
dw 0x8FB30024 ; 800DE920
dw 0x8FB20020 ; 800DE924
dw 0x8FB1001C ; 800DE928
dw 0x8FB00018 ; 800DE92C
dw 0x00001021 ; 800DE930
dw 0x03E00008 ; 800DE934
dw 0x27BD0030 ; 800DE938

View File

@ -1,212 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DE93C
s15c_crow_800DE93C:
dw 0x27BDFFB8 ; 800DE93C
dw 0xAFB40030 ; 800DE940
dw 0x0080A021 ; 800DE944
dw 0x24040069 ; 800DE948
dw 0xAFBF0044 ; 800DE94C
dw 0xAFBE0040 ; 800DE950
dw 0xAFB7003C ; 800DE954
dw 0xAFB60038 ; 800DE958
dw 0xAFB50034 ; 800DE95C
dw 0xAFB3002C ; 800DE960
dw 0xAFB20028 ; 800DE964
dw 0xAFB10024 ; 800DE968
dw 0xAFB00020 ; 800DE96C
dw 0xAFA5004C ; 800DE970
dw 0x0C00825A ; 800DE974
dw 0xAFA60050 ; 800DE978
dw 0x10400007 ; 800DE97C
dw 0x00000000 ; 800DE980
dw 0x0C00827A ; 800DE984
dw 0x00402021 ; 800DE988
dw 0x08037A69 ; 800DE98C
dw 0xAE820054 ; 800DE990
dw 0x08037B12 ; 800DE994
dw 0x2402FFFF ; 800DE998
dw 0x2402FFFF ; 800DE99C
dw 0xAE820054 ; 800DE9A0
dw 0x0C00825A ; 800DE9A4
dw 0x24040073 ; 800DE9A8
dw 0x1040002E ; 800DE9AC
dw 0x00402021 ; 800DE9B0
dw 0x26900034 ; 800DE9B4
dw 0x0C037615 ; 800DE9B8
dw 0x02002821 ; 800DE9BC
dw 0x02002021 ; 800DE9C0
dw 0x0C037640 ; 800DE9C4
dw 0x2685003C ; 800DE9C8
dw 0x8A880037 ; 800DE9CC
dw 0x9A880034 ; 800DE9D0
dw 0x8A89003B ; 800DE9D4
dw 0x9A890038 ; 800DE9D8
dw 0xAA880047 ; 800DE9DC
dw 0xBA880044 ; 800DE9E0
dw 0xAA89004B ; 800DE9E4
dw 0xBA890048 ; 800DE9E8
dw 0x8A88003F ; 800DE9EC
dw 0x9A88003C ; 800DE9F0
dw 0x8A890043 ; 800DE9F4
dw 0x9A890040 ; 800DE9F8
dw 0xAA88004F ; 800DE9FC
dw 0xBA88004C ; 800DEA00
dw 0xAA890053 ; 800DEA04
dw 0xBA890050 ; 800DEA08
dw 0x86820034 ; 800DEA0C
dw 0x8683003C ; 800DEA10
dw 0x96840036 ; 800DEA14
dw 0x00431021 ; 800DEA18
dw 0x00021FC2 ; 800DEA1C
dw 0x00431021 ; 800DEA20
dw 0x86830036 ; 800DEA24
dw 0xA684004E ; 800DEA28
dw 0x8684003E ; 800DEA2C
dw 0x00021043 ; 800DEA30
dw 0xA682002C ; 800DEA34
dw 0x00641821 ; 800DEA38
dw 0x000317C2 ; 800DEA3C
dw 0x00621821 ; 800DEA40
dw 0x86820038 ; 800DEA44
dw 0x86840040 ; 800DEA48
dw 0x00031843 ; 800DEA4C
dw 0xA683002E ; 800DEA50
dw 0x00441021 ; 800DEA54
dw 0x00021FC2 ; 800DEA58
dw 0x00431021 ; 800DEA5C
dw 0x00021043 ; 800DEA60
dw 0xA6820030 ; 800DEA64
dw 0x8E820024 ; 800DEA68
dw 0x8FA80050 ; 800DEA6C
dw 0x0000B021 ; 800DEA70
dw 0x18400066 ; 800DEA74
dw 0xAE880020 ; 800DEA78
dw 0x3C02800E ; 800DEA7C
dw 0x245E2F50 ; 800DEA80
dw 0x0280A821 ; 800DEA84
dw 0x2417006C ; 800DEA88
dw 0x02979821 ; 800DEA8C
dw 0x26720004 ; 800DEA90
dw 0x8FA5004C ; 800DEA94
dw 0x8FA60050 ; 800DEA98
dw 0x0C009667 ; 800DEA9C
dw 0x02402021 ; 800DEAA0
dw 0x0440FFBB ; 800DEAA4
dw 0x02402021 ; 800DEAA8
dw 0x0C00988F ; 800DEAAC
dw 0x00002821 ; 800DEAB0
dw 0x02402021 ; 800DEAB4
dw 0x2405FFFF ; 800DEAB8
dw 0x2406FFFE ; 800DEABC
dw 0x0C00988B ; 800DEAC0
dw 0x00A03821 ; 800DEAC4
dw 0x02402021 ; 800DEAC8
dw 0x0C009891 ; 800DEACC
dw 0x24050004 ; 800DEAD0
dw 0x3C02800B ; 800DEAD4
dw 0x2448B39C ; 800DEAD8
dw 0x89090003 ; 800DEADC
dw 0x99090000 ; 800DEAE0
dw 0x890A0007 ; 800DEAE4
dw 0x990A0004 ; 800DEAE8
dw 0xAA69004B ; 800DEAEC
dw 0xBA690048 ; 800DEAF0
dw 0xAA6A004F ; 800DEAF4
dw 0xBA6A004C ; 800DEAF8
dw 0x0C005B33 ; 800DEAFC
dw 0x03C02021 ; 800DEB00
dw 0x03C02021 ; 800DEB04
dw 0x0C005B33 ; 800DEB08
dw 0x00408021 ; 800DEB0C
dw 0x26710080 ; 800DEB10
dw 0x02202021 ; 800DEB14
dw 0x02002821 ; 800DEB18
dw 0x2406022D ; 800DEB1C
dw 0x0C00D286 ; 800DEB20
dw 0x00403821 ; 800DEB24
dw 0x0C00D32D ; 800DEB28
dw 0x02202021 ; 800DEB2C
dw 0x02202021 ; 800DEB30
dw 0x0C00D311 ; 800DEB34
dw 0x26650344 ; 800DEB38
dw 0x03C02021 ; 800DEB3C
dw 0x26F703CC ; 800DEB40
dw 0x8EA500EC ; 800DEB44
dw 0x26D60001 ; 800DEB48
dw 0x8CA20028 ; 800DEB4C
dw 0x2403FF7F ; 800DEB50
dw 0x00431024 ; 800DEB54
dw 0x0C005B33 ; 800DEB58
dw 0xACA20028 ; 800DEB5C
dw 0x02202021 ; 800DEB60
dw 0x26650164 ; 800DEB64
dw 0x00403021 ; 800DEB68
dw 0x266701B4 ; 800DEB6C
dw 0x266202D4 ; 800DEB70
dw 0xAFA00010 ; 800DEB74
dw 0xAFB20014 ; 800DEB78
dw 0x0C00D3C2 ; 800DEB7C
dw 0xAFA20018 ; 800DEB80
dw 0x02202021 ; 800DEB84
dw 0x00002821 ; 800DEB88
dw 0x00A03021 ; 800DEB8C
dw 0x0C00D335 ; 800DEB90
dw 0x00A03821 ; 800DEB94
dw 0x0C005C24 ; 800DEB98
dw 0x24041000 ; 800DEB9C
dw 0x26840034 ; 800DEBA0
dw 0x2685003C ; 800DEBA4
dw 0x02403021 ; 800DEBA8
dw 0xAEA20420 ; 800DEBAC
dw 0x0C037674 ; 800DEBB0
dw 0xAEA00430 ; 800DEBB4
dw 0x24041000 ; 800DEBB8
dw 0x0C005C24 ; 800DEBBC
dw 0xA6400008 ; 800DEBC0
dw 0xA642000A ; 800DEBC4
dw 0xA640000C ; 800DEBC8
dw 0x8A69000F ; 800DEBCC
dw 0x9A69000C ; 800DEBD0
dw 0x8A6A0013 ; 800DEBD4
dw 0x9A6A0010 ; 800DEBD8
dw 0xAA690053 ; 800DEBDC
dw 0xBA690050 ; 800DEBE0
dw 0xAA6A0057 ; 800DEBE4
dw 0xBA6A0054 ; 800DEBE8
dw 0x0C005C24 ; 800DEBEC
dw 0x24040002 ; 800DEBF0
dw 0xAEA20418 ; 800DEBF4
dw 0xAEA00434 ; 800DEBF8
dw 0x8E820024 ; 800DEBFC
dw 0x00000000 ; 800DEC00
dw 0x02C2102A ; 800DEC04
dw 0x1440FFA0 ; 800DEC08
dw 0x26B503CC ; 800DEC0C
dw 0x24040004 ; 800DEC10
dw 0x0C005C24 ; 800DEC14
dw 0xAE800058 ; 800DEC18
dw 0x24040040 ; 800DEC1C
dw 0x0C005C24 ; 800DEC20
dw 0xAE82005C ; 800DEC24
dw 0x24040040 ; 800DEC28
dw 0x24420014 ; 800DEC2C
dw 0x0C005C24 ; 800DEC30
dw 0xAE820060 ; 800DEC34
dw 0x24430014 ; 800DEC38
dw 0x00001021 ; 800DEC3C
dw 0xAE830064 ; 800DEC40
dw 0xAE800068 ; 800DEC44
dw 0x8FBF0044 ; 800DEC48
dw 0x8FBE0040 ; 800DEC4C
dw 0x8FB7003C ; 800DEC50
dw 0x8FB60038 ; 800DEC54
dw 0x8FB50034 ; 800DEC58
dw 0x8FB40030 ; 800DEC5C
dw 0x8FB3002C ; 800DEC60
dw 0x8FB20028 ; 800DEC64
dw 0x8FB10024 ; 800DEC68
dw 0x8FB00020 ; 800DEC6C
dw 0x03E00008 ; 800DEC70
dw 0x27BD0048 ; 800DEC74

View File

@ -1,41 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DEC78
s15c_crow_800DEC78:
dw 0x27BDFFD8 ; 800DEC78
dw 0xAFB40020 ; 800DEC7C
dw 0x0080A021 ; 800DEC80
dw 0xAFBF0024 ; 800DEC84
dw 0xAFB3001C ; 800DEC88
dw 0xAFB20018 ; 800DEC8C
dw 0xAFB10014 ; 800DEC90
dw 0xAFB00010 ; 800DEC94
dw 0x8E820024 ; 800DEC98
dw 0x00000000 ; 800DEC9C
dw 0x18400011 ; 800DECA0
dw 0x00008821 ; 800DECA4
dw 0x02809821 ; 800DECA8
dw 0x2412006C ; 800DECAC
dw 0x02928021 ; 800DECB0
dw 0x0C00D2FE ; 800DECB4
dw 0x26040080 ; 800DECB8
dw 0x0C009833 ; 800DECBC
dw 0x26040004 ; 800DECC0
dw 0x8E64006C ; 800DECC4
dw 0x267303CC ; 800DECC8
dw 0x0C00B52C ; 800DECCC
dw 0x265203CC ; 800DECD0
dw 0x8E820024 ; 800DECD4
dw 0x26310001 ; 800DECD8
dw 0x0222102A ; 800DECDC
dw 0x1440FFF4 ; 800DECE0
dw 0x02928021 ; 800DECE4
dw 0x8FBF0024 ; 800DECE8
dw 0x8FB40020 ; 800DECEC
dw 0x8FB3001C ; 800DECF0
dw 0x8FB20018 ; 800DECF4
dw 0x8FB10014 ; 800DECF8
dw 0x8FB00010 ; 800DECFC
dw 0x03E00008 ; 800DED00
dw 0x27BD0028 ; 800DED04

View File

@ -1,70 +0,0 @@
opt c+, at+, e+, n-
section overlay.text
xdef s15c_crow_800DED08
s15c_crow_800DED08:
dw 0x27BDFFD8 ; 800DED08
dw 0xAFB20018 ; 800DED0C
dw 0x00809021 ; 800DED10
dw 0xAFB3001C ; 800DED14
dw 0x00A09821 ; 800DED18
dw 0x2404006E ; 800DED1C
dw 0xAFBF0020 ; 800DED20
dw 0xAFB10014 ; 800DED24
dw 0x0C00825A ; 800DED28
dw 0xAFB00010 ; 800DED2C
dw 0x10400009 ; 800DED30
dw 0x24110001 ; 800DED34
dw 0x0C00827A ; 800DED38
dw 0x00402021 ; 800DED3C
dw 0x00408821 ; 800DED40
dw 0x2A220019 ; 800DED44
dw 0x14400004 ; 800DED48
dw 0x24040006 ; 800DED4C
dw 0x08037B57 ; 800DED50
dw 0x24110018 ; 800DED54
dw 0x24040006 ; 800DED58
dw 0x00112900 ; 800DED5C
dw 0x00B12823 ; 800DED60
dw 0x00052880 ; 800DED64
dw 0x00B12821 ; 800DED68
dw 0x00052880 ; 800DED6C
dw 0x00B12823 ; 800DED70
dw 0x00052880 ; 800DED74
dw 0x0C005439 ; 800DED78
dw 0x24A5006C ; 800DED7C
dw 0x00408021 ; 800DED80
dw 0x12000019 ; 800DED84
dw 0x02002021 ; 800DED88
dw 0x3C05800E ; 800DED8C
dw 0x24A5DD08 ; 800DED90
dw 0x3C06800E ; 800DED94
dw 0x24C6EC78 ; 800DED98
dw 0x3C07800E ; 800DED9C
dw 0x24E72F58 ; 800DEDA0
dw 0xAE110024 ; 800DEDA4
dw 0x0C005453 ; 800DEDA8
dw 0xAE110028 ; 800DEDAC
dw 0x02002021 ; 800DEDB0
dw 0x02402821 ; 800DEDB4
dw 0x0C037A4F ; 800DEDB8
dw 0x02603021 ; 800DEDBC
dw 0x04400006 ; 800DEDC0
dw 0x02002021 ; 800DEDC4
dw 0x02402821 ; 800DEDC8
dw 0x0C037A24 ; 800DEDCC
dw 0x02603021 ; 800DEDD0
dw 0x04410006 ; 800DEDD4
dw 0x02001021 ; 800DEDD8
dw 0x0C005472 ; 800DEDDC
dw 0x02002021 ; 800DEDE0
dw 0x08037B7C ; 800DEDE4
dw 0x00001021 ; 800DEDE8
dw 0x02001021 ; 800DEDEC
dw 0x8FBF0020 ; 800DEDF0
dw 0x8FB3001C ; 800DEDF4
dw 0x8FB20018 ; 800DEDF8
dw 0x8FB10014 ; 800DEDFC
dw 0x8FB00010 ; 800DEE00
dw 0x03E00008 ; 800DEE04
dw 0x27BD0028 ; 800DEE08

View File

@ -1998,22 +1998,7 @@ overlay_bss group file("{{OBJ_DIR}}\{{OVERLAY}}_{{OVERLAY_SUFFIX}}_bss.bin")
include "{{OBJ_DIR}}\overlays\s15c\s15c_dyncon_800D8C9C.obj"
include "{{OBJ_DIR}}\overlays\s15c\Okajima\valcan\valcan.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD578.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD7D8.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD854.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD8A8.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD900.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD968.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DD9D0.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DDAD4.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DDB50.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DDCD0.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DE864.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DE890.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DE93C.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DEC78.obj"
include "{{OBJ_DIR}}\overlays\s15c\s15c_crow_800DED08.obj"
include "{{OBJ_DIR}}\overlays\s15c\Okajima\valcan\crow.obj"
include "{{OBJ_DIR}}\overlays\d11c\Takabe\gas_efct.obj"
include "{{OBJ_DIR}}\overlays\s16b\unknown.obj"

View File

@ -0,0 +1,397 @@
#include "Game/control.h"
#include "Game/game.h"
#include "Game/object.h"
#include "Game/target.h"
typedef struct _CrowEntry
{
TARGET *target;
CONTROL control;
OBJECT body;
MOTION_CONTROL m_ctrl;
OAR_RECORD anims[8];
SVECTOR rots[14];
MATRIX light[2];
SVECTOR f384;
char pad1[0x10];
SVECTOR f39C;
SVECTOR f3A4;
int f3AC;
char pad2[0x4];
int f3B4;
int action_flag;
char pad3[0x4];
int f3C0;
int f3C4;
int f3C8;
} CrowEntry;
typedef struct _CrowWork
{
GV_ACT actor;
int map;
int n_entries;
int f28;
SVECTOR f2C;
SVECTOR f34;
SVECTOR f3C;
SVECTOR f44;
SVECTOR f4C;
int f54;
int f58;
int f5C;
int f60;
int f64;
int f68;
CrowEntry entries[0];
} CrowWork;
extern SVECTOR DG_ZeroVector_800AB39C;
extern int GM_GameStatus_800AB3CC;
#define EXEC_LEVEL 6
void Crow_800DD7D8(SVECTOR *from, SVECTOR *to, SVECTOR *out)
{
SVECTOR diff;
int y;
int len;
GV_SubVec3_80016D40(to, from, &diff);
out->vy = ratan2(diff.vx, diff.vz) & 0xFFF;
y = diff.vy;
diff.vy = 0;
len = GV_VecLen3_80016D80(&diff);
out->vx = (ratan2(len, y) & 0xFFF) - 1024;
}
int Crow_800DD854(char *opt, SVECTOR *out)
{
int count;
char *res;
count = 0;
while ((res = GCL_Get_Param_Result_80020AA4()) != NULL)
{
GCL_StrToSV_80020A14(res, out);
out++;
count++;
}
return count;
}
void Crow_800DD8A8(CrowEntry *entry, int action_flag, int arg2)
{
if (entry->action_flag != action_flag)
{
entry->action_flag = action_flag;
GM_ConfigObjectAction_80034CD4(&entry->body, action_flag, 0, 4);
}
else if (entry->body.is_end == 1)
{
entry->f3C4 = arg2;
}
}
void Crow_800DD900(SVECTOR *a, SVECTOR *b)
{
int x, y, z;
if (a->vx > b->vx)
{
x = a->vx;
a->vx = b->vx;
b->vx = x;
}
if (a->vy > b->vy)
{
y = a->vy;
a->vy = b->vy;
b->vy = y;
}
if (a->vz > b->vz)
{
z = a->vz;
a->vz = b->vz;
b->vz = z;
}
}
int Crow_800DD968(SVECTOR *arg0, SVECTOR *arg1, SVECTOR *arg2)
{
if (arg0->vx < arg1->vx || arg2->vx < arg0->vx || arg0->vz < arg1->vz || arg2->vz < arg0->vz)
{
return -1;
}
return 1;
}
void Crow_800DD9D0(SVECTOR *a, SVECTOR *b, CONTROL *control)
{
VECTOR vec;
int x, y, z;
x = GV_RandU_80017090(64);
y = GV_RandU_80017090(64);
z = GV_RandU_80017090(64);
vec.vx = ((b->vx - a->vx) * x) >> 6;
vec.vy = ((b->vy - a->vy) * y) >> 6;
vec.vz = ((b->vz - a->vz) * z) >> 6;
control->field_0_mov.vx = a->vx + vec.vx;
control->field_0_mov.vy = a->vy + vec.vy;
control->field_0_mov.vz = a->vz + vec.vz;
}
void Crow_800DDAD4(CrowEntry *entry)
{
SVECTOR *pos;
SVECTOR *rot;
pos = &entry->control.field_0_mov;
rot = &entry->control.field_4C_turn;
Crow_800DD7D8(pos, &entry->f384, rot);
DG_SetPos2_8001BC8C(&DG_ZeroVector_800AB39C, rot);
DG_PutVector_8001BE48(&entry->f39C, &entry->f3A4, 1);
GV_AddVec3_80016D00(pos, &entry->f3A4, pos);
}
void Crow_800DDB50(CrowWork *work)
{
int rnd;
if ((GV_RandU_80017090(4096) % work->n_entries) >= work->f28)
{
return;
}
if (work->f60-- < 0)
{
work->f60 = GV_RandU_80017090(32) + 20;
rnd = GV_RandU_80017090(4096) % 3;
if (work->f58 != rnd)
{
work->f58 = rnd;
}
else
{
work->f58 = rnd + 1;
if (work->f58 >= 3)
{
work->f58 = 0;
}
}
GM_SeSet2_80032968(GV_RandS_800170BC(32) & 0xFF, 63, work->f58 + 181);
}
if (work->f64-- < 0)
{
work->f64 = GV_RandU_80017090(16) + 15;
rnd = GV_RandU_80017090(4);
if (work->f5C != rnd)
{
work->f5C = rnd;
}
else
{
work->f5C = rnd + 1;
if (work->f5C >= 4)
{
work->f5C = 0;
}
}
GM_SeSet2_80032968(GV_RandS_800170BC(32) & 0xFF, 63, work->f5C + 185);
}
}
void Crow_800DDCD0(CrowEntry *entry)
{
if ((GM_GameStatus_800AB3CC & GAME_FLAG_BIT_02) != 0 && entry->f3C8 != 1)
{
entry->f3C8 = 1;
entry->f3C4 = 10;
}
}
#pragma INCLUDE_ASM("asm/overlays/s15c/s15c_crow_800DDD08.s")
void s15c_crow_800DDD08(CrowWork *work); // CrowAct
int Crow_800DE890(CrowWork *work, int name, int map)
{
SVECTOR size;
int i;
CrowEntry *entry;
TARGET *target;
Map_FromId_800314C0(work->map);
for (i = 0; i < work->n_entries; i++)
{
entry = &work->entries[i];
target = GM_AllocTarget_8002D400();
entry->target = target;
if (target != NULL)
{
size.vx = 50;
size.vy = 50;
size.vz = 50;
GM_SetTarget_8002DC74(target, TARGET_SEEK | TARGET_POWER, ENEMY_SIDE, &size);
}
entry->f3C0 = 0;
}
return 0;
}
int Crow_800DE93C(CrowWork *work, int name, int map)
{
int opt;
int i;
CONTROL *control;
OBJECT *body;
opt = GCL_GetOption_80020968('i');
if (opt != NULL)
{
work->f54 = GCL_StrToInt_800209E8((char *)opt);
}
else
{
work->f54 = -1;
}
opt = GCL_GetOption_80020968('s');
if (opt != NULL)
{
Crow_800DD854((char *)opt, &work->f34);
Crow_800DD900(&work->f34, &work->f3C);
work->f44 = work->f34;
work->f4C = work->f3C;
work->f4C.vy = work->f34.vy;
work->f2C.vx = (work->f34.vx + work->f3C.vx) / 2;
work->f2C.vy = (work->f34.vy + work->f3C.vy) / 2;
work->f2C.vz = (work->f34.vz + work->f3C.vz) / 2;
}
work->map = map;
for (i = 0; i < work->n_entries; i++)
{
control = &work->entries[i].control;
if (GM_InitLoader_8002599C(control, name, map) < 0)
{
return -1;
}
GM_ConfigControlAttribute_8002623C(control, 0);
GM_ConfigControlHazard_8002622C(control, -1, -2, -1);
GM_ConfigControlInterp_80026244(control, 4);
control->field_44_step = DG_ZeroVector_800AB39C;
body = &work->entries[i].body;
GM_InitObject_80034A18(body, GV_StrCode_80016CCC("crow"), 0x22D, GV_StrCode_80016CCC("crow"));
GM_ConfigObjectJoint_80034CB4(body);
GM_ConfigObjectLight_80034C44(body, work->entries[i].light);
DG_VisibleObjs(work->entries[i].body.objs);
GM_ConfigMotionControl_80034F08(body, &work->entries[i].m_ctrl, GV_StrCode_80016CCC("crow"), work->entries[i].anims, NULL, control, work->entries[i].rots);
GM_ConfigObjectAction_80034CD4(body, 0, 0, 0);
work->entries[i].f3B4 = GV_RandU_80017090(4096);
work->entries[i].f3C4 = 0;
Crow_800DD9D0(&work->f34, &work->f3C, control);
control->field_8_rot.vx = 0;
control->field_8_rot.vy = GV_RandU_80017090(4096);
control->field_8_rot.vz = 0;
control->field_4C_turn = control->field_8_rot;
work->entries[i].f3AC = GV_RandU_80017090(2);
work->entries[i].f3C8 = 0;
}
work->f58 = 0;
work->f5C = GV_RandU_80017090(4);
work->f60 = GV_RandU_80017090(64) + 20;
work->f64 = GV_RandU_80017090(64) + 20;
work->f68 = 0;
return 0;
}
void CrowDie_800DEC78(CrowWork *work)
{
int i;
for (i = 0; i < work->n_entries; i++)
{
GM_FreeObject_80034BF8(&work->entries[i].body);
GM_FreeControl_800260CC(&work->entries[i].control);
GM_FreeTarget_8002D4B0(work->entries[i].target);
}
}
GV_ACT * NewCrow_800DED08(int name, int where)
{
CrowWork *work;
int opt;
int n_entries;
opt = GCL_GetOption_80020968('n');
if (opt != NULL)
{
n_entries = GCL_StrToInt_800209E8((char *)opt);
if (n_entries > 24)
{
n_entries = 24;
}
}
else
{
n_entries = 1;
}
work = (CrowWork *)GV_NewActor_800150E4(EXEC_LEVEL, sizeof(CrowWork) + sizeof(CrowEntry) * n_entries);
if (work != NULL)
{
work->n_entries = n_entries;
work->f28 = n_entries;
GV_SetNamedActor_8001514C(&work->actor, (TActorFunction)s15c_crow_800DDD08, (TActorFunction)CrowDie_800DEC78, "crow.c");
if (Crow_800DE93C(work, name, where) < 0 || Crow_800DE890(work, name, where) < 0)
{
do
{
GV_DestroyActor_800151C8(&work->actor);
return NULL;
} while (0);
}
}
return &work->actor;
}

View File

@ -398,3 +398,5 @@ void Valcan_800D9EBC(SVECTOR *from, SVECTOR *to, SVECTOR *out)
#pragma INCLUDE_ASM("asm/overlays/s15c/s15c_crow_800DD03C.s")
void s15c_crow_800DD03C(ValcanWork *work);
#pragma INCLUDE_ASM("asm/overlays/s15c/s15c_crow_800DD578.s")

View File

@ -117,10 +117,6 @@ const int s15c_dword_800E2F40 = 0x800DE7C0;
const int s15c_dword_800E2F44 = 0x800DE550;
const int s15c_dword_800E2F48 = 0x800DE584;
const int s15c_dword_800E2F4C = 0x800DE760;
const char s15c_aCrow_800E2F50[] = "crow";
const char s15c_dword_800E2F58[] = {'c', 'r', 'o', 'w'};
const char s15c_dword_800E2F5C[] = {'.', 'c', 0x0, 0xae};
int SECTION("overlay.bss") s15c_dword_800E344C;
int SECTION("overlay.bss") s15c_dword_800E3450;

Binary file not shown.