diff --git a/.vscode/settings.json b/.vscode/settings.json index 88c89020..8fb56dc3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -92,7 +92,8 @@ "ast_font.h": "c", "fox_std_lib_assets.h": "c", "fox_versus_assets.h": "c", - "guint.h": "c" + "guint.h": "c", + "ast_test.h": "c" }, "C_Cpp_Runner.msvcBatchPath": "" } \ No newline at end of file diff --git a/assets/yaml/us/ast_7_ti_1.yaml b/assets/yaml/us/ast_7_ti_1.yaml index 75579e9a..b58c5c54 100644 --- a/assets/yaml/us/ast_7_ti_1.yaml +++ b/assets/yaml/us/ast_7_ti_1.yaml @@ -9,11 +9,8 @@ - '#include "sf64object.h"' - '#include "structs.h"' -# TODO: There are still Limbs and probably other things inside BLOBS - -# MISSING TLUT! Not clear what uses this texture yet! D_AST_7_TI_1_7000000: - { type: TEXTURE, ctype: u8, format: CI8, width: 96, height: 28, offset: 0x07000000, symbol: D_AST_7_TI_1_7000000, tlut: 0x07001108 } + { type: TEXTURE, ctype: u8, format: IA8, width: 96, height: 28, offset: 0x07000000, symbol: D_AST_7_TI_1_7000000, tlut: 0x07001108 } D_7000A80: { type: GFX, offset: 0x7000A80, symbol: D_7000A80 } @@ -104,9 +101,12 @@ PAD_7005648: D_70067C4: { type: SF64:ANIM, offset: 0x70067C4, symbol: D_70067C4 } - -BLOB_70067D0: - { type: BLOB, size: 0x200, offset: 0x70067D0, symbol: BLOB_70067D0 } + +D_7006990: + { type: SF64:SKELETON, offset: 0x7006990, symbol: D_7006990} + +PAD_70069CC: + { type: BLOB, size: 4, offset: 0x70069CC, symbol: PAD_70069CC } D_7006F74: { type: SF64:ANIM, offset: 0x7006F74, symbol: D_7006F74 } @@ -139,10 +139,13 @@ D_7008090: { type: TEXTURE, ctype: u8, format: CI8, width: 32, height: 32, offset: 0x07008090, symbol: D_7008090, tlut: 0x07008490 } D_7008490: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 242, offset: 0x07008490, symbol: D_7008490 } + { type: TEXTURE, ctype: u16, format: TLUT, colors: 248, offset: 0x07008490, symbol: D_7008490 } -BLOB_7008674: - { type: BLOB, size: 0x2BC, offset: 0x7008674, symbol: BLOB_7008674 } +D_7008680: + { type: TEXTURE, ctype: u8, format: CI8, width: 16, height: 16, offset: 0x07008680, symbol: D_7008680, tlut: 0x07008490 } + +D_7008780: + { type: TEXTURE, ctype: u16, format: TLUT, colors: 216, offset: 0x07008780, symbol: D_7008780 } D_7008930: { type: GFX, offset: 0x7008930, symbol: D_7008930 } @@ -228,20 +231,29 @@ PAD_700C888: D_700C8D8: { type: SF64:ANIM, offset: 0x700C8D8, symbol: D_700C8D8 } -BLOB_700C8E4: - { type: BLOB, size: 0x9C, offset: 0x700C8E4, symbol: BLOB_700C8E4 } +D_700C964: + { type: SF64:SKELETON, offset: 0x700C964, symbol: D_700C964 } + +PAD_700C978: + { type: BLOB, size: 8, offset: 0x700C978, symbol: PAD_700C978 } D_700C980: { type: GFX, offset: 0x700C980, symbol: D_700C980 } -BLOB_700CA58: - { type: BLOB, size: 0x118, offset: 0x700CA58, symbol: BLOB_700CA58 } +PAD_700CA58: + { type: BLOB, size: 8, offset: 0x700CA58, symbol: PAD_700CA58 } + +D_700CAF4: + { type: SF64:ANIM, offset: 0x700CAF4, symbol: D_700CAF4} + +D_700CB60: + {type: SF64:SKELETON, offset: 0x700CB60, symbol: D_700CB60} D_700D534: { type: SF64:ANIM, offset: 0x700D534, symbol: D_700D534 } -BLOB_700D540: - { type: BLOB, size: 0x200, offset: 0x700D540, symbol: BLOB_700D540 } +D_700D700: + {type: SF64:SKELETON, offset: 0x700D700, symbol: D_700D700} D_700D740: { type: GFX, offset: 0x700D740, symbol: D_700D740 } diff --git a/assets/yaml/us/ast_7_ti_1.yml b/assets/yaml/us/ast_7_ti_1.yml deleted file mode 100644 index b58c5c54..00000000 --- a/assets/yaml/us/ast_7_ti_1.yml +++ /dev/null @@ -1,324 +0,0 @@ -:config: - segments: - - [0x07, 0xA0E340] - header: - code: - - '#include "assets/ast_7_ti_1.h"' - header: - - '#include "gfx.h"' - - '#include "sf64object.h"' - - '#include "structs.h"' - -D_AST_7_TI_1_7000000: - { type: TEXTURE, ctype: u8, format: IA8, width: 96, height: 28, offset: 0x07000000, symbol: D_AST_7_TI_1_7000000, tlut: 0x07001108 } - -D_7000A80: - { type: GFX, offset: 0x7000A80, symbol: D_7000A80 } - -D_7000D08: - { type: TEXTURE, ctype: u8, format: CI8, width: 32, height: 32, offset: 0x07000D08, symbol: D_7000D08, tlut: 0x07001108 } - -D_7001108: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 176, offset: 0x07001108, symbol: D_7001108 } - -D_7001268: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 64, offset: 0x7001268, symbol: D_7001268, pad: 8 } - -D_7002270: - { type: GFX, offset: 0x7002270, symbol: D_7002270 } - -D_7002490: - { type: GFX, offset: 0x7002490, symbol: D_7002490 } - -D_7002730: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07002730, symbol: D_7002730 } - -D_7002930: - { type: GFX, offset: 0x7002930, symbol: D_7002930 } - -D_7002C88: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x7002C88, symbol: D_7002C88 } - -D_7003488: - { type: TEXTURE, ctype: u8, format: CI8, width: 32, height: 32, offset: 0x07003488, symbol: D_7003488, tlut: 0x07003888 } - -D_7003888: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 256, offset: 0x07003888, symbol: D_7003888, pad: 8 } - -D_7003A90: - { type: GFX, offset: 0x7003A90, symbol: D_7003A90 } - -D_7003C50: - { type: GFX, offset: 0x7003C50, symbol: D_7003C50 } - -D_7003E30: - { type: GFX, offset: 0x7003E30, symbol: D_7003E30 } - -PAD_7003FB8: - { type: BLOB, size: 8, offset: 0x7003FB8, symbol: PAD_7003FB8 } - -D_7003FC0: - { type: GFX, offset: 0x7003FC0, symbol: D_7003FC0 } - -D_7004170: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07004170, symbol: D_7004170 } - -D_7004370: - { type: GFX, offset: 0x7004370, symbol: D_7004370 } - -D_7004560: - { type: GFX, offset: 0x7004560, symbol: D_7004560 } - -PAD_7004778: - { type: BLOB, size: 8, offset: 0x7004778, symbol: PAD_7004778 } - -D_7004780: - { type: GFX, offset: 0x7004780, symbol: D_7004780 } - -D_70049A0: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x070049A0, symbol: D_70049A0 } - -D_7004BA0: - { type: GFX, offset: 0x7004BA0, symbol: D_7004BA0 } - -D_7004E78: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07004E78, symbol: D_7004E78 } - -D_7005078: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07005078, symbol: D_7005078, pad: 8 } - -D_7005280: - { type: GFX, offset: 0x7005280, symbol: D_7005280 } - -PAD_7005418: - { type: BLOB, size: 8, offset: 0x7005418, symbol: PAD_7005418 } - -D_7005420: - { type: GFX, offset: 0x7005420, symbol: D_7005420 } - -PAD_7005648: - { type: BLOB, size: 8, offset: 0x7005648, symbol: PAD_7005648 } - -D_70067C4: - { type: SF64:ANIM, offset: 0x70067C4, symbol: D_70067C4 } - -D_7006990: - { type: SF64:SKELETON, offset: 0x7006990, symbol: D_7006990} - -PAD_70069CC: - { type: BLOB, size: 4, offset: 0x70069CC, symbol: PAD_70069CC } - -D_7006F74: - { type: SF64:ANIM, offset: 0x7006F74, symbol: D_7006F74 } - -D_7007130: - { type: SF64:ANIM, offset: 0x7007130, symbol: D_7007130 } - -PAD_700713C: - { type: BLOB, size: 4, offset: 0x700713C, symbol: PAD_700713C } - -D_7007234: - { type: SF64:ANIM, offset: 0x7007234, symbol: D_7007234 } - -D_700733C: - { type: SF64:ANIM, offset: 0x700733C, symbol: D_700733C } - -PAD_7007348: - { type: BLOB, size: 8, offset: 0x7007348, symbol: PAD_7007348 } - -D_7007350: - { type: GFX, offset: 0x7007350, symbol: D_7007350 } - -D_7007AB0: - { type: TEXTURE, ctype: u8, format: CI8, width: 32, height: 32, offset: 0x7007AB0, symbol: D_7007AB0, tlut: 0x07007EB0 } - -D_7007EB0: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 240, offset: 0x07007EB0, symbol: D_7007EB0 } - -D_7008090: - { type: TEXTURE, ctype: u8, format: CI8, width: 32, height: 32, offset: 0x07008090, symbol: D_7008090, tlut: 0x07008490 } - -D_7008490: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 248, offset: 0x07008490, symbol: D_7008490 } - -D_7008680: - { type: TEXTURE, ctype: u8, format: CI8, width: 16, height: 16, offset: 0x07008680, symbol: D_7008680, tlut: 0x07008490 } - -D_7008780: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 216, offset: 0x07008780, symbol: D_7008780 } - -D_7008930: - { type: GFX, offset: 0x7008930, symbol: D_7008930 } - -D_7008D10: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x7008D10, symbol: D_7008D10 } - -D_7008F10: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x7008F10, symbol: D_7008F10 } - -D_7009110: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07009110, symbol: D_7009110 } - -D_7009310: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07009310, symbol: D_7009310 } - -D_7009510: - { type: GFX, offset: 0x7009510, symbol: D_7009510 } - -D_70096D8: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x070096D8, symbol: D_70096D8, pad: 8 } - -D_70098E0: - { type: GFX, offset: 0x70098E0, symbol: D_70098E0 } - -D_7009B58: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x07009B58, symbol: D_7009B58, pad: 8 } - -D_7009D60: - { type: GFX, offset: 0x7009D60, symbol: D_7009D60 } - -D_700A190: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x0700A190, symbol: D_700A190 } - -D_700A990: - { type: GFX, offset: 0x700A990, symbol: D_700A990 } - -D_700AAD8: - { type: TEXTURE, ctype: u8, format: CI4, width: 16, height: 16, offset: 0x700AAD8, symbol: D_700AAD8, tlut: 0x700AB58 } - -D_700AB58: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 8, offset: 0x700AB58, symbol: D_700AB58, pad: 8 } - -D_700AB70: - { type: GFX, offset: 0x700AB70, symbol: D_700AB70 } - -D_700AEA8: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 8, height: 8, offset: 0x0700AEA8, symbol: D_700AEA8, pad: 8 } - -D_700AF30: - { type: GFX, offset: 0x700AF30, symbol: D_700AF30 } - -D_700B5B8: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x0700B5B8, symbol: D_700B5B8 } - -D_700B7B8: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x0700B7B8, symbol: D_700B7B8, pad: 8 } - -D_700B9C0: - { type: GFX, offset: 0x700B9C0, symbol: D_700B9C0 } - -D_700BB10: - { type: GFX, offset: 0x700BB10, symbol: D_700BB10 } - -PAD_700BDF8: - { type: BLOB, size: 8, offset: 0x700BDF8, symbol: PAD_700BDF8 } - -D_700BE00: - { type: GFX, offset: 0x700BE00, symbol: D_700BE00 } - -D_700BFB0: - { type: TEXTURE, ctype: u8, format: CI8, width: 32, height: 32, offset: 0x0700BFB0, symbol: D_700BFB0, tlut: 0x0700C3B0 } - -D_700C3B0: - { type: TEXTURE, ctype: u16, format: TLUT, colors: 128, offset: 0x0700C3B0, symbol: D_700C3B0 } - -D_700C4B0: - { type: GFX, offset: 0x700C4B0, symbol: D_700C4B0 } - -PAD_700C888: - { type: BLOB, size: 8, offset: 0x700C888, symbol: PAD_700C888 } - -D_700C8D8: - { type: SF64:ANIM, offset: 0x700C8D8, symbol: D_700C8D8 } - -D_700C964: - { type: SF64:SKELETON, offset: 0x700C964, symbol: D_700C964 } - -PAD_700C978: - { type: BLOB, size: 8, offset: 0x700C978, symbol: PAD_700C978 } - -D_700C980: - { type: GFX, offset: 0x700C980, symbol: D_700C980 } - -PAD_700CA58: - { type: BLOB, size: 8, offset: 0x700CA58, symbol: PAD_700CA58 } - -D_700CAF4: - { type: SF64:ANIM, offset: 0x700CAF4, symbol: D_700CAF4} - -D_700CB60: - {type: SF64:SKELETON, offset: 0x700CB60, symbol: D_700CB60} - -D_700D534: - { type: SF64:ANIM, offset: 0x700D534, symbol: D_700D534 } - -D_700D700: - {type: SF64:SKELETON, offset: 0x700D700, symbol: D_700D700} - -D_700D740: - { type: GFX, offset: 0x700D740, symbol: D_700D740 } - -PAD_700D878: - { type: BLOB, size: 0x8, offset: 0x700D878, symbol: PAD_700D878 } - -D_700D880: - { type: GFX, offset: 0x700D880, symbol: D_700D880 } - -PAD_700D9A8: - { type: BLOB, size: 0x8, offset: 0x700D9A8, symbol: PAD_700D9A8 } - -D_700D9B0: - { type: GFX, offset: 0x700D9B0, symbol: D_700D9B0 } - -PAD_700DAC8: - { type: BLOB, size: 0x8, offset: 0x700DAC8, symbol: PAD_700DAC8 } - -D_700DAD0: - { type: GFX, offset: 0x700DAD0, symbol: D_700DAD0 } - -PAD_700DBA8: - { type: BLOB, size: 0x8, offset: 0x700DBA8, symbol: PAD_700DBA8 } - -D_700DBB0: - { type: GFX, offset: 0x700DBB0, symbol: D_700DBB0 } - -D_700DC50: - { type: GFX, offset: 0x700DC50, symbol: D_700DC50 } - -D_700DD68: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 8, height: 8, offset: 0x0700DD68, symbol: D_700DD68 } - -PAD_700DDE8: - { type: BLOB, size: 0x8, offset: 0x700DDE8, symbol: PAD_700DDE8 } - -D_700DDF0: - { type: GFX, offset: 0x700DDF0, symbol: D_700DDF0 } - -PAD_700DEC8: - { type: BLOB, size: 0x8, offset: 0x700DEC8, symbol: PAD_700DEC8 } - -D_700DED0: - { type: GFX, offset: 0x700DED0, symbol: D_700DED0 } - -D_700DF70: - { type: GFX, offset: 0x700DF70, symbol: D_700DF70 } - -PAD_700E028: - { type: BLOB, size: 0x8, offset: 0x700E028, symbol: PAD_700E028 } - -D_700E030: - { type: GFX, offset: 0x700E030, symbol: D_700E030 } - -D_700E1E8: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x0700E1E8, symbol: D_700E1E8, pad: 8 } - -D_700E3F0: - { type: GFX, offset: 0x700E3F0, symbol: D_700E3F0 } - -D_700E858: - { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x0700E858, symbol: D_700E858, pad: 8 } - -D_700EA60: - { type: GFX, offset: 0x700EA60, symbol: D_700EA60 } - -# size = 0xEDB0 \ No newline at end of file diff --git a/assets/yaml/us/ast_sector_x.yaml b/assets/yaml/us/ast_sector_x.yaml new file mode 100644 index 00000000..7dec1adf --- /dev/null +++ b/assets/yaml/us/ast_sector_x.yaml @@ -0,0 +1,420 @@ +:config: + segments: + - [0x06, 0xA1D0F0] + header: + code: + - '#include "assets/ast_sector_x.h"' + header: + - '#include "gfx.h"' + - '#include "sf64object.h"' + - '#include "structs.h"' + - '#include "sf64level.h"' + +D_AST_SECTOR_X_6000000: + { type: TEXTURE, ctype: u8, format: IA8, width: 176, height: 12, offset: 0x6000000, symbol: D_AST_SECTOR_X_6000000 } + +D_6000840: + { type: GFX, offset: 0x6000840, symbol: D_6000840 } + +# Flying mine +D_60008C0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x60008C0, symbol: D_60008C0 } + +D_60010C0: + { type: GFX, offset: 0x60010C0, symbol: D_60010C0 } + +# Texture of Planet Titania, seen when Slippy gets thrown by Spyborg +D_6001150: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x6001150, symbol: D_6001150 } + +D_6001950: + { type: GFX, offset: 0x6001950, symbol: D_6001950 } + +D_6001AD8: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x6001AD8, symbol: D_6001AD8 } + +PAD_6001CD8: + { type: BLOB, size: 8, offset: 0x6001CD8, symbol: PAD_6001CD8 } + +D_6001CE0: + { type: GFX, offset: 0x6001CE0, symbol: D_6001CE0 } + +D_60020C0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x60020C0, symbol: D_60020C0 } + +D_60022C0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x60022C0, symbol: D_60022C0 } + +D_60024C0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x60024C0, symbol: D_60024C0 } + +D_60026C0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x60026C0, symbol: D_60026C0 } + +D_60028C0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x60028C0, symbol: D_60028C0 } + +D_6002AC0: + { type: GFX, offset: 0x6002AC0, symbol: D_6002AC0 } + +D_60036E8: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x60036E8, symbol: D_60036E8 } + +D_6003EE8: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x6003EE8, symbol: D_6003EE8 } + +D_60046E8: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x60046E8, symbol: D_60046E8 } + +D_6004EE8: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 64, offset: 0x6004EE8, symbol: D_6004EE8 } + +D_6005EE8: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x6005EE8, symbol: D_6005EE8 } + +PAD_60066E8: + { type: BLOB, size: 8, offset: 0x60066E8, symbol: PAD_60066E8 } +D_60066F0: + { type: GFX, offset: 0x60066F0, symbol: D_60066F0 } + +D_6006810: + { type: GFX, offset: 0x6006810, symbol: D_6006810 } + +D_6007128: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x6007128, symbol: D_6007128 } + +D_6007928: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x6007928, symbol: D_6007928 } + +D_6008128: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x6008128, symbol: D_6008128 } + +D_6008928: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x6008928, symbol: D_6008928 } + +PAD_6008B28: + { type: BLOB, size: 8, offset: 0x6008B28, symbol: PAD_6008B28 } + +D_6008B30: + { type: GFX, offset: 0x6008B30, symbol: D_6008B30 } + +D_6009548: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x6009548, symbol: D_6009548 } + +D_6009748: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x6009748, symbol: D_6009748 } + +PAD_6009948: + { type: BLOB, size: 8, offset: 0x6009948, symbol: PAD_6009948 } + +D_6009950: + { type: GFX, offset: 0x6009950, symbol: D_6009950 } + +PAD_6009C28: + { type: BLOB, size: 8, offset: 0x6009C28, symbol: PAD_6009C28 } + +D_6009C30: + { type: GFX, offset: 0x6009C30, symbol: D_6009C30 } + +D_6009CC0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 8, height: 8, offset: 0x6009CC0, symbol: D_6009CC0 } +# 2 byte gap ? +D_6009FF8: + { type: SF64:ANIM, offset: 0x6009FF8, symbol: D_6009FF8 } + +PAD_600A004: + { type: BLOB, size: 0xC, offset: 0x600A004, symbol: PAD_600A004 } + +D_600A2D4: + { type: SF64:ANIM, offset: 0x600A2D4, symbol: D_600A2D4 } + +D_600A2E0: + { type: GFX, offset: 0x600A2E0, symbol: D_600A2E0 } + +D_600A570: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x600A570, symbol: D_600A570 } + +D_600AD70: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x600AD70, symbol: D_600AD70 } + +D_600AF70: + { type: GFX, offset: 0x600AF70, symbol: D_600AF70 } + +PAD_600B2A8: + { type: BLOB, size: 8, offset: 0x600B2A8, symbol: PAD_600B2A8 } + +D_600B2B0: + { type: GFX, offset: 0x600B2B0, symbol: D_600B2B0 } + +D_600B540: + { type: GFX, offset: 0x600B540, symbol: D_600B540 } + +PAD_600B828: + { type: BLOB, size: 8, offset: 0x600B828, symbol: PAD_600B828 } + +D_600B830: + { type: GFX, offset: 0x600B830, symbol: D_600B830 } + +D_600C000: + { type: GFX, offset: 0x600C000, symbol: D_600C000 } + +D_600C5A0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x600C5A0, symbol: D_600C5A0 } + +D_600F890: + { type: SF64:ANIM, offset: 0x600F890, symbol: D_600F890 } + +PAD_600F89C: + { type: BLOB, size: 4, offset: 0x600F89C, symbol: PAD_600F89C } + +D_600F8A0: + { type: GFX, offset: 0x600F8A0, symbol: D_600F8A0 } + +D_600F938: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x0600F938, symbol: D_600F938 } + +PAD_6010138: + { type: BLOB, size: 8, offset: 0x6010138, symbol: PAD_6010138 } + +D_6010140: + { type: GFX, offset: 0x6010140, symbol: D_6010140 } + +D_60105A0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x60105A0, symbol: D_60105A0 } + +D_60123BC: + { type: SF64:ANIM, offset: 0x60123BC, symbol: D_60123BC } + +PAD_60123C8: + { type: BLOB, size: 0x8, offset: 0x60123C8, symbol: PAD_60123C8 } + +D_6013798: + { type: SF64:ANIM, offset: 0x6013798, symbol: D_6013798, pad: 0xC } + +D_6013820: + { type: SF64:ANIM, offset: 0x6013820, symbol: D_6013820 } + +D_601390C: + { type: SF64:SKELETON, offset: 0x601390C, symbol: D_601390C } + +PAD_601392C: + { type: BLOB, size: 4, offset: 0x601392C, symbol: PAD_601392C } + +D_60158C4: + { type: SF64:ANIM, offset: 0x60158C4, symbol: D_60158C4 } + +D_6016E28: + { type: SF64:ANIM, offset: 0x6016E28, symbol: D_6016E28 } + +PAD_6016E34: + { type: BLOB, size: 0xC, offset: 0x6016E34, symbol: PAD_6016E34 } + +PAD_6017238: + { type: BLOB, size: 0x8, offset: 0x6017238, symbol: PAD_6017238 } + +PAD_60186C8: + { type: BLOB, size: 0x8, offset: 0x60186C8, symbol: PAD_60186C8 } + +D_601AA28: + { type: SF64:ANIM, offset: 0x601AA28, symbol: D_601AA28 } + +PAD_601AA34: + { type: BLOB, size: 0xC, offset: 0x601AA34, symbol: PAD_601AA34 } + +D_601C690: + { type: SF64:ANIM, offset: 0x601C690, symbol: D_601C690 } + +PAD_601C69C: + { type: BLOB, size: 4, offset: 0x601C69C, symbol: PAD_601C69C } + +PAD_601CA48: + { type: BLOB, size: 8, offset: 0x601CA48, symbol: PAD_601CA48 } + +PAD_601CD78: + { type: BLOB, size: 0x8, offset: 0x601CD78, symbol: PAD_601CD78 } + +D_60206DC: + { type: SF64:ANIM, offset: 0x60206DC, symbol: D_60206DC } + +D_6020C68: + { type: SF64:SKELETON, offset: 0x6020C68, symbol: D_6020C68 } + +PAD_6020D1C: + { type: BLOB, size: 4, offset: 0x6020D1C, symbol: PAD_6020D1C } + +D_6020D20: + { type: GFX, offset: 0x6020D20, symbol: D_6020D20 } + +# Spyborg Radio +D_6020FB0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 44, height: 44, offset: 0x06020FB0, symbol: D_6020FB0 } + +D_6021ED0: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 44, height: 44, offset: 0x06021ED0, symbol: D_6021ED0 } + +D_6022DF0: + { type: GFX, offset: 0x6022DF0, symbol: D_6022DF0 } + +PAD_60234F8: + { type: BLOB, size: 8, offset: 0x60234F8, symbol: PAD_60234F8 } + +D_6023500: + { type: GFX, offset: 0x6023500, symbol: D_6023500 } + +D_6023C30: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x06023C30, symbol: D_6023C30 } + +D_6023E30: + { type: GFX, offset: 0x6023E30, symbol: D_6023E30 } + +PAD_60247A8: + { type: BLOB, size: 8, offset: 0x60247A8, symbol: PAD_60247A8 } + +PAD_6024B78: + { type: BLOB, size: 8, offset: 0x6024B78, symbol: PAD_6024B78 } + +PAD_60243E8: + { type: BLOB, size: 0x8, offset: 0x60243E8, symbol: PAD_60243E8 } + +PAD_6024F58: + { type: BLOB, size: 8, offset: 0x6024F58, symbol: PAD_6024F58 } + +PAD_6025348: + { type: BLOB, size: 8, offset: 0x6025348, symbol: PAD_6025348 } + +PAD_6025728: + { type: BLOB, size: 8, offset: 0x6025728, symbol: PAD_6025728 } + +PAD_6025B08: + { type: BLOB, size: 8, offset: 0x6025B08, symbol: PAD_6025B08 } + +PAD_6025EE8: + { type: BLOB, size: 8, offset: 0x6025EE8, symbol: PAD_6025EE8 } + +PAD_60262B8: + { type: BLOB, size: 8, offset: 0x60262B8, symbol: PAD_60262B8 } + +PAD_60266A8: + { type: BLOB, size: 8, offset: 0x60266A8, symbol: PAD_60266A8 } + +PAD_6026A98: + { type: BLOB, size: 8, offset: 0x6026A98, symbol: PAD_6026A98 } + +PAD_6026E88: + { type: BLOB, size: 8, offset: 0x6026E88, symbol: PAD_6026E88 } + +PAD_6027278: + { type: BLOB, size: 8, offset: 0x6027278, symbol: PAD_6027278 } + +PAD_6027658: + { type: BLOB, size: 8, offset: 0x6027658, symbol: PAD_6027658 } + +PAD_6027A08: + { type: BLOB, size: 8, offset: 0x6027A08, symbol: PAD_6027A08 } + +PAD_6027DE8: + { type: BLOB, size: 8, offset: 0x6027DE8, symbol: PAD_6027DE8 } + +PAD_60281B8: + { type: BLOB, size: 8, offset: 0x60281B8, symbol: PAD_60281B8 } + +PAD_60285E8: + { type: BLOB, size: 8, offset: 0x60285E8, symbol: PAD_60285E8 } + +D_60285F0: + { type: GFX, offset: 0x60285F0, symbol: D_60285F0 } + +D_6029098: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 16, height: 16, offset: 0x06029098, symbol: D_6029098 } + +PAD_6029298: + { type: BLOB, size: 8, offset: 0x6029298, symbol: PAD_6029298 } + +D_60292A0: + { type: GFX, offset: 0x60292A0, symbol: D_60292A0 } + +D_6029890: + { type: GFX, offset: 0x6029890, symbol: D_6029890 } + +D_6029918: + { type: TEXTURE, ctype: u16, format: RGBA16, width: 32, height: 32, offset: 0x029918, symbol: D_6029918 } + +PAD_602A118: + { type: BLOB, size: 8, offset: 0x602A118, symbol: PAD_602A118 } + +# TODO: Replace with EnvSettings factory +D_602A120: + { type: SF64:ENV_SETTINGS, offset: 0x602A120, symbol: D_602A120 } + +# array of 1026 ObjectInit's +D_602A164: + { type: SF64:OBJECT_INIT, count: 1026, offset: 0x602A164, symbol: D_602A164 } + +# array of 167 ObjectInit's +D_602F18C: + { type: SF64:OBJECT_INIT, count: 167, offset: 0x602F18C, symbol: D_602F18C } + +D_60320D0: + { type: SF64:SCRIPT, offset: 0x60320D0, symbol: D_60320D0 } + +D_6032328: + { type: SF64:HITBOX, offset: 0x6032328, symbol: D_6032328 } + +D_603238C: + { type: SF64:HITBOX, offset: 0x603238C, symbol: D_603238C } + +D_6032408: + { type: SF64:HITBOX, offset: 0x6032408, symbol: D_6032408 } + +D_6032488: # + { type: SF64:HITBOX, offset: 0x6032488, symbol: D_6032488 } + +D_60324EC: # + { type: SF64:HITBOX, offset: 0x60324EC, symbol: D_60324EC } + +D_6032550: + { type: SF64:HITBOX, offset: 0x6032550, symbol: D_6032550 } + +D_603285C: + { type: SF64:HITBOX, offset: 0x603285C, symbol: D_603285C } + +D_6032878: + { type: SF64:HITBOX, offset: 0x6032878, symbol: D_6032878 } + +D_6032894: + { type: SF64:HITBOX, offset: 0x6032894, symbol: D_6032894 } + +D_60328B0: + { type: SF64:HITBOX, offset: 0x60328B0, symbol: D_60328B0 } + +D_60328CC: + { type: SF64:HITBOX, offset: 0x60328CC, symbol: D_60328CC } + +D_603265C: + { type: SF64:HITBOX, offset: 0x603265C, symbol: D_603265C } + +D_6032768: + { type: SF64:HITBOX, offset: 0x6032768, symbol: D_6032768 } + +D_60328E8: + { type: SF64:HITBOX, offset: 0x60328E8, symbol: D_60328E8 } + +D_6032904: + { type: SF64:HITBOX, offset: 0x6032904, symbol: D_6032904 } + +D_6032938: + { type: SF64:HITBOX, offset: 0x6032938, symbol: D_6032938 } + +D_6032954: + { type: SF64:HITBOX, offset: 0x6032954, symbol: D_6032954 } + +D_6032970: + { type: SF64:HITBOX, offset: 0x6032970, symbol: D_6032970 } + +D_603298C: + { type: SF64:HITBOX, offset: 0x603298C, symbol: D_603298C } + +PAD_6032AB8: + { type: BLOB, size: 8, offset: 0x6032AB8, symbol: PAD_6032AB8 } + +# size = 0x32AC0 \ No newline at end of file diff --git a/assets/yaml/us/ast_test.yaml b/assets/yaml/us/ast_test.yaml new file mode 100644 index 00000000..574d620b --- /dev/null +++ b/assets/yaml/us/ast_test.yaml @@ -0,0 +1,14 @@ +:config: + segments: + - [0x06, 0xACF960] + header: + code: + - '#include "assets/ast_test.h"' + header: + - '#include "gfx.h"' + - '#include "sf64object.h"' + - '#include "structs.h"' + - '#include "sf64level.h"' + +D_6014FEC: + {type: SF64:COLPOLY, count: 250, offset: 0x6014FEC, symbol: D_6014FEC} diff --git a/include/assets.h b/include/assets.h index 162a864e..d0809c74 100644 --- a/include/assets.h +++ b/include/assets.h @@ -251,36 +251,36 @@ extern u8 D_500A7D0[]; // fox_std_lib, fox_versus, fox_option, fox_hud * ast_bolse, ast_fortuna, ast_sector_y, ast_solar, ast_zoness, * ast_katina, ast_macbeth, ast_title, ast_menu, ast_training */ -extern Gfx D_60005B0[]; -extern u16 D_6000900[]; -extern Gfx D_6000A80[]; -extern u16 D_6000B60[]; -extern Gfx D_6000E00[]; -extern Gfx D_6000E10[]; -extern Gfx D_6001360[]; -extern Gfx D_6001530[]; -extern u16 D_6001820[]; -extern Gfx D_6001840[]; -extern Gfx D_6001950[]; -extern Gfx D_6001A60[]; -extern u16 D_6001A80[]; -extern u8 D_6001B80[]; -extern Vtx D_6001C50[]; -extern u8 D_6001C80[]; -extern Gfx D_6001DA0[]; -extern u8 D_60020D0[]; -extern u8 D_6002160[]; -extern Gfx D_60023B0[]; -extern Gfx D_6002990[]; -extern u16 D_60029A0[]; -extern Gfx D_6002E60[]; -extern Gfx D_6002F80[]; -extern Gfx D_6003000[]; -extern u8 D_60030D0[]; -extern Gfx D_60030F0[]; -extern Gfx D_60034D0[]; -extern Gfx D_6003610[]; -extern Gfx D_60036A0[]; +extern Gfx D_60005B0[]; // fox_bg +extern u16 D_6000900[]; // fox_radio +extern Gfx D_6000A80[]; // fox_bg, fox_effect +extern u16 D_6000B60[]; // fox_radio +extern Gfx D_6000E00[]; // fox_edata_1C +extern Gfx D_6000E10[]; // fox_enmy2 +extern Gfx D_6001360[]; // fox_bg, fox_demo, fox_edata_1C +extern Gfx D_6001530[]; // fox_360, fox_demo, fox_ka +extern u16 D_6001820[]; // fox_radio +extern Gfx D_6001840[]; // fox_bg +extern Gfx D_6001950[]; // fox_enmy2 +extern Gfx D_6001A60[]; // fox_effect +extern u16 D_6001A80[]; // fox_radio +extern u8 D_6001B80[]; // fox_hud +extern Vtx D_6001C50[]; // fox_play +extern u8 D_6001C80[]; // fox_map +extern Gfx D_6001DA0[]; // fox_demo, fox_edata_1C +extern u8 D_60020D0[]; // fox_hud +extern u8 D_6002160[]; // fox_map +extern Gfx D_60023B0[]; // fox_edata_1C +extern Gfx D_6002990[]; // fox_edata_1C +extern u16 D_60029A0[]; // fox_radio +extern Gfx D_6002E60[]; // fox_bg +extern Gfx D_6002F80[]; // fox_bg +extern Gfx D_6003000[]; // fox_edata_1C +extern u8 D_60030D0[]; // fox_map +extern Gfx D_60030F0[]; // fox_edata_1C +extern Gfx D_60034D0[]; // fox_edata_1C, fox_enmy2 +extern Gfx D_6003610[]; // fox_edata_1C +extern Gfx D_60036A0[]; // fox_edata_1C, fox_enmy2 extern Gfx D_6003760[]; extern u16 D_60038C0[]; extern Gfx D_60038E0[]; diff --git a/include/assets/ast_sector_x.h b/include/assets/ast_sector_x.h index f4c3d1d1..97366570 100644 --- a/include/assets/ast_sector_x.h +++ b/include/assets/ast_sector_x.h @@ -4,5 +4,311 @@ #include "gfx.h" #include "sf64object.h" #include "structs.h" +#include "sf64level.h" + +extern u8 D_AST_SECTOR_X_6000000[]; +extern Gfx D_6000840[]; +extern Vtx ast_sector_x_seg6_vtx_890[]; +extern u16 D_60008C0[]; +extern Gfx D_60010C0[]; +extern Vtx ast_sector_x_seg6_vtx_1110[]; +extern u16 D_6001150[]; +extern Gfx D_6001950[]; +extern Vtx ast_sector_x_seg6_vtx_19B8[]; +extern u16 D_6001AD8[]; +extern Gfx D_6001CE0[]; +extern Vtx ast_sector_x_seg6_vtx_1E40[]; +extern Vtx ast_sector_x_seg6_vtx_1E80[]; +extern Vtx ast_sector_x_seg6_vtx_1FB0[]; +extern Vtx ast_sector_x_seg6_vtx_2090[]; +extern u16 D_60020C0[]; +extern u16 D_60022C0[]; +extern u16 D_60024C0[]; +extern u16 D_60026C0[]; +extern u16 D_60028C0[]; +extern Gfx D_6002AC0[]; +extern Vtx ast_sector_x_seg6_vtx_2E88[]; +extern Vtx ast_sector_x_seg6_vtx_3018[]; +extern Vtx ast_sector_x_seg6_vtx_3118[]; +extern Vtx ast_sector_x_seg6_vtx_3158[]; +extern Vtx ast_sector_x_seg6_vtx_31D8[]; +extern Vtx ast_sector_x_seg6_vtx_3208[]; +extern Vtx ast_sector_x_seg6_vtx_3408[]; +extern Vtx ast_sector_x_seg6_vtx_34A8[]; +extern Vtx ast_sector_x_seg6_vtx_34D8[]; +extern Vtx ast_sector_x_seg6_vtx_3628[]; +extern Vtx ast_sector_x_seg6_vtx_3688[]; +extern Vtx ast_sector_x_seg6_vtx_36B8[]; +extern u16 D_60036E8[]; +extern u16 D_6003EE8[]; +extern u16 D_60046E8[]; +extern u16 D_6004EE8[]; +extern u16 D_6005EE8[]; +extern Gfx D_60066F0[]; +extern Vtx ast_sector_x_seg6_vtx_6760[]; +extern Gfx D_6006810[]; +extern Vtx ast_sector_x_seg6_vtx_6A38[]; +extern Vtx ast_sector_x_seg6_vtx_6B18[]; +extern Vtx ast_sector_x_seg6_vtx_6C18[]; +extern Vtx ast_sector_x_seg6_vtx_6C58[]; +extern Vtx ast_sector_x_seg6_vtx_6DF8[]; +extern Vtx ast_sector_x_seg6_vtx_6FF8[]; +extern u16 D_6007128[]; +extern u16 D_6007928[]; +extern u16 D_6008128[]; +extern u16 D_6008928[]; +extern Gfx D_6008B30[]; +extern Vtx ast_sector_x_seg6_vtx_8E28[]; +extern Vtx ast_sector_x_seg6_vtx_8F18[]; +extern Vtx ast_sector_x_seg6_vtx_8F98[]; +extern Vtx ast_sector_x_seg6_vtx_9188[]; +extern Vtx ast_sector_x_seg6_vtx_9378[]; +extern Vtx ast_sector_x_seg6_vtx_93F8[]; +extern Vtx ast_sector_x_seg6_vtx_9468[]; +extern Vtx ast_sector_x_seg6_vtx_94E8[]; +extern Vtx ast_sector_x_seg6_vtx_9518[]; +extern u16 D_6009548[]; +extern u16 D_6009748[]; +extern Gfx D_6009950[]; +extern Vtx ast_sector_x_seg6_vtx_9AA8[]; +extern Vtx ast_sector_x_seg6_vtx_9B28[]; +extern Vtx ast_sector_x_seg6_vtx_9B68[]; +extern Vtx ast_sector_x_seg6_vtx_9BE8[]; +extern Gfx D_6009C30[]; +extern Vtx ast_sector_x_seg6_vtx_9C80[]; +extern u16 D_6009CC0[]; +extern Animation D_6009FF8; +extern Animation D_600A2D4; +extern Gfx D_600A2E0[]; +extern Vtx ast_sector_x_seg6_vtx_A3F0[]; +extern Vtx ast_sector_x_seg6_vtx_A430[]; +extern Vtx ast_sector_x_seg6_vtx_A530[]; +extern u16 D_600A570[]; +extern u16 D_600AD70[]; +extern Gfx D_600AF70[]; +extern Vtx ast_sector_x_seg6_vtx_B088[]; +extern Vtx ast_sector_x_seg6_vtx_B0C8[]; +extern Vtx ast_sector_x_seg6_vtx_B118[]; +extern Gfx D_600B2B0[]; +extern Vtx ast_sector_x_seg6_vtx_B3C0[]; +extern Vtx ast_sector_x_seg6_vtx_B400[]; +extern Vtx ast_sector_x_seg6_vtx_B500[]; +extern Gfx D_600B540[]; +extern Vtx ast_sector_x_seg6_vtx_B6C8[]; +extern Vtx ast_sector_x_seg6_vtx_B6F8[]; +extern Vtx ast_sector_x_seg6_vtx_B778[]; +extern Vtx ast_sector_x_seg6_vtx_B7A8[]; +extern Vtx ast_sector_x_seg6_vtx_B7E8[]; +extern Gfx D_600B830[]; +extern Vtx ast_sector_x_seg6_vtx_BA30[]; +extern Vtx ast_sector_x_seg6_vtx_BC10[]; +extern Vtx ast_sector_x_seg6_vtx_BD10[]; +extern Vtx ast_sector_x_seg6_vtx_BD60[]; +extern Vtx ast_sector_x_seg6_vtx_BDC0[]; +extern Vtx ast_sector_x_seg6_vtx_BE90[]; +extern Gfx D_600C000[]; +extern Vtx ast_sector_x_seg6_vtx_C1B0[]; +extern Vtx ast_sector_x_seg6_vtx_C380[]; +extern Vtx ast_sector_x_seg6_vtx_C3C0[]; +extern Vtx ast_sector_x_seg6_vtx_C4E0[]; +extern Vtx ast_sector_x_seg6_vtx_C550[]; +extern u16 D_600C5A0[]; +extern Animation D_600F890; +extern Gfx D_600F8A0[]; +extern Vtx ast_sector_x_seg6_vtx_F8F8[]; +extern u16 D_600F938[]; +extern Gfx D_6010140[]; +extern Vtx ast_sector_x_seg6_vtx_10220[]; +extern Vtx ast_sector_x_seg6_vtx_10330[]; +extern Gfx ast_sector_x_seg6_dl_103B0[]; +extern Vtx ast_sector_x_seg6_vtx_10470[]; +extern Vtx ast_sector_x_seg6_vtx_10560[]; +extern u16 D_60105A0[]; +extern Animation D_60123BC; +extern Animation D_6013798; +extern Animation D_6013820; +extern Limb* D_601390C[]; +extern Animation D_60158C4; +extern Animation D_6016E28; +extern Gfx ast_sector_x_seg6_dl_16E40[]; +extern Vtx ast_sector_x_seg6_vtx_16F78[]; +extern Vtx ast_sector_x_seg6_vtx_17138[]; +extern Vtx ast_sector_x_seg6_vtx_171B8[]; +extern Gfx ast_sector_x_seg6_dl_17240[]; +extern Vtx ast_sector_x_seg6_vtx_17330[]; +extern Vtx ast_sector_x_seg6_vtx_17470[]; +extern Gfx ast_sector_x_seg6_dl_17570[]; +extern Vtx ast_sector_x_seg6_vtx_176F0[]; +extern Vtx ast_sector_x_seg6_vtx_177B0[]; +extern Vtx ast_sector_x_seg6_vtx_17880[]; +extern Vtx ast_sector_x_seg6_vtx_178E0[]; +extern Gfx ast_sector_x_seg6_dl_17A20[]; +extern Vtx ast_sector_x_seg6_vtx_17BC0[]; +extern Vtx ast_sector_x_seg6_vtx_17DC0[]; +extern Vtx ast_sector_x_seg6_vtx_17E40[]; +extern Vtx ast_sector_x_seg6_vtx_17EA0[]; +extern Gfx ast_sector_x_seg6_dl_18060[]; +extern Vtx ast_sector_x_seg6_vtx_18228[]; +extern Vtx ast_sector_x_seg6_vtx_18428[]; +extern Vtx ast_sector_x_seg6_vtx_184D8[]; +extern Vtx ast_sector_x_seg6_vtx_185F8[]; +extern Vtx ast_sector_x_seg6_vtx_18678[]; +extern Animation D_601AA28; +extern Animation D_601C690; +extern Gfx ast_sector_x_seg6_dl_1C6A0[]; +extern Vtx ast_sector_x_seg6_vtx_1C7D8[]; +extern Vtx ast_sector_x_seg6_vtx_1C948[]; +extern Vtx ast_sector_x_seg6_vtx_1C9C8[]; +extern Gfx ast_sector_x_seg6_dl_1CA50[]; +extern Vtx ast_sector_x_seg6_vtx_1CB38[]; +extern Vtx ast_sector_x_seg6_vtx_1CC78[]; +extern Gfx ast_sector_x_seg6_dl_1CD80[]; +extern Vtx ast_sector_x_seg6_vtx_1CF00[]; +extern Vtx ast_sector_x_seg6_vtx_1CFD0[]; +extern Vtx ast_sector_x_seg6_vtx_1D0D0[]; +extern Vtx ast_sector_x_seg6_vtx_1D130[]; +extern Gfx ast_sector_x_seg6_dl_1D260[]; +extern Vtx ast_sector_x_seg6_vtx_1D400[]; +extern Vtx ast_sector_x_seg6_vtx_1D5E0[]; +extern Vtx ast_sector_x_seg6_vtx_1D690[]; +extern Vtx ast_sector_x_seg6_vtx_1D6F0[]; +extern Animation D_60206DC; +extern Limb* D_6020C68[]; +extern Gfx D_6020D20[]; +extern Vtx ast_sector_x_seg6_vtx_20E30[]; +extern Vtx ast_sector_x_seg6_vtx_20E70[]; +extern Vtx ast_sector_x_seg6_vtx_20F70[]; +extern u16 D_6020FB0[]; +extern u16 D_6021ED0[]; +extern Gfx D_6022DF0[]; +extern Vtx ast_sector_x_seg6_vtx_23028[]; +extern Vtx ast_sector_x_seg6_vtx_23068[]; +extern Vtx ast_sector_x_seg6_vtx_230B8[]; +extern Vtx ast_sector_x_seg6_vtx_23188[]; +extern Vtx ast_sector_x_seg6_vtx_231C8[]; +extern Vtx ast_sector_x_seg6_vtx_23268[]; +extern Vtx ast_sector_x_seg6_vtx_232C8[]; +extern Vtx ast_sector_x_seg6_vtx_23378[]; +extern Gfx D_6023500[]; +extern Vtx ast_sector_x_seg6_vtx_236D0[]; +extern Vtx ast_sector_x_seg6_vtx_23790[]; +extern Vtx ast_sector_x_seg6_vtx_23860[]; +extern Vtx ast_sector_x_seg6_vtx_23960[]; +extern Vtx ast_sector_x_seg6_vtx_23B20[]; +extern u16 D_6023C30[]; +extern Gfx D_6023E30[]; +extern Vtx ast_sector_x_seg6_vtx_23EB0[]; +extern Gfx ast_sector_x_seg6_dl_24030[]; +extern Vtx ast_sector_x_seg6_vtx_24168[]; +extern Vtx ast_sector_x_seg6_vtx_242E8[]; +extern Vtx ast_sector_x_seg6_vtx_24368[]; +extern Gfx ast_sector_x_seg6_dl_243F0[]; +extern Vtx ast_sector_x_seg6_vtx_24528[]; +extern Vtx ast_sector_x_seg6_vtx_246A8[]; +extern Vtx ast_sector_x_seg6_vtx_24728[]; +extern Gfx ast_sector_x_seg6_dl_247B0[]; +extern Vtx ast_sector_x_seg6_vtx_248E8[]; +extern Vtx ast_sector_x_seg6_vtx_24A78[]; +extern Vtx ast_sector_x_seg6_vtx_24AF8[]; +extern Gfx ast_sector_x_seg6_dl_24B80[]; +extern Vtx ast_sector_x_seg6_vtx_24CB8[]; +extern Vtx ast_sector_x_seg6_vtx_24E58[]; +extern Vtx ast_sector_x_seg6_vtx_24ED8[]; +extern Gfx ast_sector_x_seg6_dl_24F60[]; +extern Vtx ast_sector_x_seg6_vtx_25098[]; +extern Vtx ast_sector_x_seg6_vtx_25248[]; +extern Vtx ast_sector_x_seg6_vtx_252C8[]; +extern Gfx ast_sector_x_seg6_dl_25350[]; +extern Vtx ast_sector_x_seg6_vtx_25488[]; +extern Vtx ast_sector_x_seg6_vtx_25628[]; +extern Vtx ast_sector_x_seg6_vtx_256A8[]; +extern Gfx ast_sector_x_seg6_dl_25730[]; +extern Vtx ast_sector_x_seg6_vtx_25868[]; +extern Vtx ast_sector_x_seg6_vtx_25A08[]; +extern Vtx ast_sector_x_seg6_vtx_25A88[]; +extern Gfx ast_sector_x_seg6_dl_25B10[]; +extern Vtx ast_sector_x_seg6_vtx_25C48[]; +extern Vtx ast_sector_x_seg6_vtx_25DE8[]; +extern Vtx ast_sector_x_seg6_vtx_25E68[]; +extern Gfx ast_sector_x_seg6_dl_25EF0[]; +extern Vtx ast_sector_x_seg6_vtx_26028[]; +extern Vtx ast_sector_x_seg6_vtx_261B8[]; +extern Vtx ast_sector_x_seg6_vtx_26238[]; +extern Gfx ast_sector_x_seg6_dl_262C0[]; +extern Vtx ast_sector_x_seg6_vtx_263F8[]; +extern Vtx ast_sector_x_seg6_vtx_265A8[]; +extern Vtx ast_sector_x_seg6_vtx_26628[]; +extern Gfx ast_sector_x_seg6_dl_266B0[]; +extern Vtx ast_sector_x_seg6_vtx_267E8[]; +extern Vtx ast_sector_x_seg6_vtx_26998[]; +extern Vtx ast_sector_x_seg6_vtx_26A18[]; +extern Gfx ast_sector_x_seg6_dl_26AA0[]; +extern Vtx ast_sector_x_seg6_vtx_26BD8[]; +extern Vtx ast_sector_x_seg6_vtx_26D88[]; +extern Vtx ast_sector_x_seg6_vtx_26E08[]; +extern Gfx ast_sector_x_seg6_dl_26E90[]; +extern Vtx ast_sector_x_seg6_vtx_26FC8[]; +extern Vtx ast_sector_x_seg6_vtx_27178[]; +extern Vtx ast_sector_x_seg6_vtx_271F8[]; +extern Gfx ast_sector_x_seg6_dl_27280[]; +extern Vtx ast_sector_x_seg6_vtx_273B8[]; +extern Vtx ast_sector_x_seg6_vtx_27558[]; +extern Vtx ast_sector_x_seg6_vtx_275D8[]; +extern Gfx ast_sector_x_seg6_dl_27660[]; +extern Vtx ast_sector_x_seg6_vtx_27798[]; +extern Vtx ast_sector_x_seg6_vtx_27908[]; +extern Vtx ast_sector_x_seg6_vtx_27988[]; +extern Gfx ast_sector_x_seg6_dl_27A10[]; +extern Vtx ast_sector_x_seg6_vtx_27B48[]; +extern Vtx ast_sector_x_seg6_vtx_27CE8[]; +extern Vtx ast_sector_x_seg6_vtx_27D68[]; +extern Gfx ast_sector_x_seg6_dl_27DF0[]; +extern Vtx ast_sector_x_seg6_vtx_27F28[]; +extern Vtx ast_sector_x_seg6_vtx_280B8[]; +extern Vtx ast_sector_x_seg6_vtx_28138[]; +extern Gfx ast_sector_x_seg6_dl_281C0[]; +extern Vtx ast_sector_x_seg6_vtx_28328[]; +extern Vtx ast_sector_x_seg6_vtx_284A8[]; +extern Vtx ast_sector_x_seg6_vtx_28528[]; +extern Vtx ast_sector_x_seg6_vtx_28568[]; +extern Gfx D_60285F0[]; +extern Vtx ast_sector_x_seg6_vtx_287E8[]; +extern Vtx ast_sector_x_seg6_vtx_289E8[]; +extern Vtx ast_sector_x_seg6_vtx_28BE8[]; +extern Vtx ast_sector_x_seg6_vtx_28DE8[]; +extern Vtx ast_sector_x_seg6_vtx_28E68[]; +extern Vtx ast_sector_x_seg6_vtx_28FD8[]; +extern u16 D_6029098[]; +extern Gfx D_60292A0[]; +extern Vtx ast_sector_x_seg6_vtx_29380[]; +extern Vtx ast_sector_x_seg6_vtx_29420[]; +extern Gfx ast_sector_x_seg6_dl_294D0[]; +extern Vtx ast_sector_x_seg6_vtx_29610[]; +extern Vtx ast_sector_x_seg6_vtx_29710[]; +extern Vtx ast_sector_x_seg6_vtx_29810[]; +extern Gfx D_6029890[]; +extern Vtx ast_sector_x_seg6_vtx_298E8[]; +extern u16 D_6029918[]; +extern EnvSettings D_602A120; +extern u16* D_60320D0[]; +extern f32 D_6032328[]; +extern f32 D_603238C[]; +extern f32 D_6032408[]; +extern f32 D_6032488[]; +extern f32 D_60324EC[]; +extern f32 D_6032550[]; +extern f32 D_603265C[]; +extern f32 D_6032768[]; +extern f32 D_603285C[]; +extern f32 D_6032878[]; +extern f32 D_6032894[]; +extern f32 D_60328B0[]; +extern f32 D_60328CC[]; +extern f32 D_60328E8[]; +extern f32 D_6032904[]; +extern f32 D_6032938[]; +extern f32 D_6032954[]; +extern f32 D_6032970[]; +extern f32 D_603298C[]; #endif diff --git a/include/fox_enmy_assets.h b/include/fox_enmy_assets.h index 8df06095..a80c3142 100644 --- a/include/fox_enmy_assets.h +++ b/include/fox_enmy_assets.h @@ -3,25 +3,25 @@ #include "global.h" -extern ObjectInit D_060371A4[]; -extern ObjectInit D_06026CC4[]; -extern ObjectInit D_0602A164[]; -extern ObjectInit D_06023F64[]; -extern ObjectInit D_060287A4[]; -extern ObjectInit D_0602E4F4[]; -extern ObjectInit D_06007E74[]; -extern ObjectInit D_0601F234[]; -extern ObjectInit D_06026714[]; +extern ObjectInit D_60371A4[]; +extern ObjectInit D_6026CC4[]; +extern ObjectInit D_602A164[]; +extern ObjectInit D_6023F64[]; +extern ObjectInit D_60287A4[]; +extern ObjectInit D_602E4F4[]; +extern ObjectInit D_6007E74[]; +extern ObjectInit D_601F234[]; +extern ObjectInit D_6026714[]; extern ObjectInit D_0C035154[]; -extern ObjectInit D_06006AA4[]; -extern ObjectInit D_06031000[]; -extern ObjectInit D_06006C60[]; -extern ObjectInit D_0602E5C8[]; -extern ObjectInit D_0600EAD4[]; -extern ObjectInit D_06011044[]; -extern ObjectInit D_0600FF74[]; -extern ObjectInit D_06006EB4[]; -extern ObjectInit D_06014D94[]; +extern ObjectInit D_6006AA4[]; +extern ObjectInit D_6031000[]; +extern ObjectInit D_6006C60[]; +extern ObjectInit D_602E5C8[]; +extern ObjectInit D_600EAD4[]; +extern ObjectInit D_6011044[]; +extern ObjectInit D_600FF74[]; +extern ObjectInit D_6006EB4[]; +extern ObjectInit D_6014D94[]; extern ObjectInit D_0302DE3C[]; #endif diff --git a/include/sf64object.h b/include/sf64object.h index bed3194a..f394684a 100644 --- a/include/sf64object.h +++ b/include/sf64object.h @@ -288,9 +288,9 @@ typedef struct { /* 0x18C */ Vec3f vwork[30]; } Actor; // size = 0x2F4 -#define EVENT_CMD(opcode, arg1, arg2) (((opcode) & 0x7F << 9) & (arg1 & 0x1FF)), arg2 +#define EVENT_CMD(opcode, arg1, arg2) ((((opcode) & 0x7F) << 9) | ((arg1) & 0x1FF)), (arg2) -typedef enum { +typedef enum EventOpcode { /* 0 */ EVOP_0, /* 1 */ EVOP_1, /* 2 */ EVOP_2, @@ -330,13 +330,13 @@ typedef enum { /* 116 */ EVOP_116 = 116, /* 118 */ EVOP_118 = 118, /* 119 */ EVOP_119, - /* 120 */ EVOP_120, + /* 120 */ EVOP_120, // play message. arg1 is portrait, arg2 is message ID /* 121 */ EVOP_121, /* 122 */ EVOP_122, /* 124 */ EVOP_124 = 124, /* 125 */ EVOP_125, /* 126 */ EVOP_126, - /* 127 */ EVOP_127, + /* 127 */ EVOP_127, // stop script } EventOpcode; typedef enum ObjectId { diff --git a/linker_scripts/us/undefined_syms.ld b/linker_scripts/us/undefined_syms.ld index be944d17..544caa2a 100644 --- a/linker_scripts/us/undefined_syms.ld +++ b/linker_scripts/us/undefined_syms.ld @@ -1017,25 +1017,25 @@ D_1010970 = 0x01010970; D_601F3B8 = 0x0601F3B8; // fox_enmy -D_060371A4 = 0x0060371A4; -D_06026CC4 = 0x006026CC4; -D_0602A164 = 0x00602A164; -D_06023F64 = 0x006023F64; -D_060287A4 = 0x0060287A4; -D_0602E4F4 = 0x00602E4F4; -D_06007E74 = 0x006007E74; -D_0601F234 = 0x00601F234; -D_06026714 = 0x006026714; +D_60371A4 = 0x0060371A4; +D_6026CC4 = 0x006026CC4; +D_602A164 = 0x00602A164; +D_6023F64 = 0x006023F64; +D_60287A4 = 0x0060287A4; +D_602E4F4 = 0x00602E4F4; +D_6007E74 = 0x006007E74; +D_601F234 = 0x00601F234; +D_6026714 = 0x006026714; D_0C035154 = 0x00C035154; -D_06006AA4 = 0x006006AA4; -D_06031000 = 0x006031000; -D_06006C60 = 0x006006C60; -D_0602E5C8 = 0x00602E5C8; -D_0600EAD4 = 0x00600EAD4; -D_06011044 = 0x006011044; -D_0600FF74 = 0x00600FF74; -D_06006EB4 = 0x006006EB4; -D_06014D94 = 0x006014D94; +D_6006AA4 = 0x006006AA4; +D_6031000 = 0x006031000; +D_6006C60 = 0x006006C60; +D_602E5C8 = 0x00602E5C8; +D_600EAD4 = 0x00600EAD4; +D_6011044 = 0x006011044; +D_600FF74 = 0x00600FF74; +D_6006EB4 = 0x006006EB4; +D_6014D94 = 0x006014D94; D_0302DE3C = 0x00302DE3C; // fox_enmy2 diff --git a/src/main/fox_enmy.c b/src/main/fox_enmy.c index e106fa7b..e74611a2 100644 --- a/src/main/fox_enmy.c +++ b/src/main/fox_enmy.c @@ -8,9 +8,9 @@ u8 D_80161684; #include "fox_enmy_assets.h" ObjectInit* D_800CFDA0[] = { - D_060371A4, D_06026CC4, D_0602A164, D_06023F64, D_060287A4, D_0602E4F4, D_06007E74, - D_0601F234, D_06026714, D_0C035154, D_06006AA4, D_06031000, D_06006C60, D_0602E5C8, - D_0600EAD4, NULL, D_06011044, D_0600FF74, D_06006EB4, D_06014D94, D_0302DE3C, + D_60371A4, D_6026CC4, D_602A164, D_6023F64, D_60287A4, D_602E4F4, D_6007E74, + D_601F234, D_6026714, D_0C035154, D_6006AA4, D_6031000, D_6006C60, D_602E5C8, + D_600EAD4, NULL, D_6011044, D_600FF74, D_6006EB4, D_6014D94, D_0302DE3C, }; s32 D_800CFDF4[] = { OBJ_80_0, diff --git a/src/main/fox_enmy2.c b/src/main/fox_enmy2.c index b3345e51..938fec1e 100644 --- a/src/main/fox_enmy2.c +++ b/src/main/fox_enmy2.c @@ -1124,8 +1124,8 @@ void func_8006D36C(Actor* actor) { switch (D_800D003C[actor->unk_0B4].unk_16) { case 1: - if ((gCurrentLevel != LEVEL_SOLAR) && (actor->unk_0B4 != 6) && - ((gCurrentLevel != LEVEL_CORNERIA) || (actor->unk_0B4 != 8))) { + if (!((gCurrentLevel == LEVEL_SOLAR) || (actor->unk_0B4 == 6) || + ((gCurrentLevel == LEVEL_CORNERIA) && (actor->unk_0B4 == 8)))) { AUDIO_PLAY_SFX(0x31000011, actor->sfxSource, 4); } break; diff --git a/src/main/fox_radio.c b/src/main/fox_radio.c index 61a0756a..d0e1fd4f 100644 --- a/src/main/fox_radio.c +++ b/src/main/fox_radio.c @@ -143,7 +143,9 @@ void func_800BAAE8(void) { s32 j; D_80178744 = 0; + mirror = false; + switch (D_801782A4) { case RCID_FOX_RED: D_80178744 = 1; diff --git a/src/overlays/ovl_i2/fox_sx.c b/src/overlays/ovl_i2/fox_sx.c index e9c07bdf..777fa03c 100644 --- a/src/overlays/ovl_i2/fox_sx.c +++ b/src/overlays/ovl_i2/fox_sx.c @@ -25,8 +25,8 @@ extern Animation D_601C690; extern Animation D_60206DC; extern Limb* D_6020C68[]; extern Gfx D_6020D20[]; -extern Gfx D_603265C[]; -extern Gfx D_6032768[]; +extern f32 D_603265C[]; +extern f32 D_6032768[]; extern f32 D_60328CC[]; extern s32 D_800C9E90[]; diff --git a/tools/Torch b/tools/Torch index f1781973..92e70766 160000 --- a/tools/Torch +++ b/tools/Torch @@ -1 +1 @@ -Subproject commit f1781973bc7bd3fc9b9cc32b4d631f9e1bbc9368 +Subproject commit 92e7076647d2da64e8f90aa66974c4a3dba03a06 diff --git a/yamls/us/assets.yaml b/yamls/us/assets.yaml index d52ee991..fb25860f 100644 --- a/yamls/us/assets.yaml +++ b/yamls/us/assets.yaml @@ -136,8 +136,12 @@ - name: ast_sector_x exclusive_ram_id: segment_06 - type: bin + type: code + dir: assets start: 0xA1D0F0 + vram: 0x06000000 + subsegments: + - [0xA1D0F0, .data, ast_sector_x/ast_sector_x] - name: ast_sector_z exclusive_ram_id: segment_06