diff --git a/tools/comptool.py b/tools/comptool.py index b3c48485..8d324876 100644 --- a/tools/comptool.py +++ b/tools/comptool.py @@ -14,8 +14,8 @@ file_names_us = [ "ast_star_wolf", "ast_allies", "ast_corneria", "ast_meteo", "ast_titania", "ast_7_ti_2", "ast_8_ti", "ast_9_ti", "ast_A_ti", "ast_7_ti_1", "ast_sector_x", "ast_sector_z", "ast_aquas", "ast_area_6", "ast_venom_1", "ast_venom_2", "ast_ve1_boss", "ast_bolse", "ast_fortuna", "ast_sector_y", "ast_solar", "ast_zoness", "ast_katina", "ast_macbeth", "ast_warp_zone", - "ast_title", "ast_map", "ast_option", "ast_vs_menu", "ast_font", "ast_font_3d", "ast_andross", "ast_logo", "ast_ending", - "ast_ending_award_front", "ast_ending_award_back", "ast_reward", "ast_training", "ast_radio", "ovl_i1", "ovl_i2", + "ast_title", "ast_map", "ast_option", "ast_vs_menu", "ast_text", "ast_font_3d", "ast_andross", "ast_logo", "ast_ending", + "ast_ending_award_front", "ast_ending_award_back", "ast_ending_expert", "ast_training", "ast_radio", "ovl_i1", "ovl_i2", "ovl_i3", "ovl_i4", "ovl_i5", "ovl_i6", "ovl_menu", "ovl_ending", "ovl_unused" ] @@ -25,8 +25,8 @@ file_names_jp = [ "ast_star_wolf", "ast_allies", "ast_corneria", "ast_meteo", "ast_titania", "ast_7_ti_2", "ast_8_ti", "ast_9_ti", "ast_A_ti", "ast_7_ti_1", "ast_sector_x", "ast_sector_z", "ast_aquas", "ast_area_6", "ast_venom_1", "ast_venom_2", "ast_ve1_boss", "ast_bolse", "ast_fortuna", "ast_sector_y", "ast_solar", "ast_zoness", "ast_katina", "ast_macbeth", "ast_warp_zone", - "ast_title", "ast_map", "ast_option", "ast_vs_menu", "ast_font", "ast_font_3d", "ast_andross", "ast_logo", "ast_ending", - "ast_ending_award_front", "ast_ending_award_back", "ast_reward", "ast_training", "ovl_i1", "ovl_i2", + "ast_title", "ast_map", "ast_option", "ast_vs_menu", "ast_text", "ast_font_3d", "ast_andross", "ast_logo", "ast_ending", + "ast_ending_award_front", "ast_ending_award_back", "ast_ending_expert", "ast_training", "ovl_i1", "ovl_i2", "ovl_i3", "ovl_i4", "ovl_i5", "ovl_i6", "ovl_menu", "ovl_ending", "ovl_unused" ] diff --git a/yamls/jp/rev0/assets.yaml b/yamls/jp/rev0/assets.yaml index e1b4d396..89e749c1 100644 --- a/yamls/jp/rev0/assets.yaml +++ b/yamls/jp/rev0/assets.yaml @@ -1,3 +1,444 @@ - name: audio_seq type: bin start: 0xE9950 + + - name: audio_bank + type: bin + start: 0x124920 + + - name: audio_table + type: bin + start: 0x143A40 + + - name: ast_common + exclusive_ram_id: segment_01 + type: code + dir: assets + start: 0x844660 + vram: 0x01000000 + subsegments: + - [0x844660, bin, ast_common/ast_common] + + - name: ast_bg_space + exclusive_ram_id: segment_02 + type: code + dir: assets + start: 0x8763F0 + vram: 0x02000000 + subsegments: + - [0x8763F0, bin, ast_bg_space/ast_bg_space] + + - name: ast_bg_planet + exclusive_ram_id: segment_02 + type: code + dir: assets + start: 0x87DBD0 + vram: 0x02000000 + subsegments: + - [0x87DBD0, bin, ast_bg_planet/ast_bg_planet] + + - name: ast_arwing + exclusive_ram_id: segment_03 + type: code + dir: assets + start: 0x88F730 + vram: 0x03000000 + subsegments: + - [0x88F730, bin, ast_arwing/ast_arwing] + + - name: ast_landmaster + exclusive_ram_id: segment_03 + type: code + dir: assets + start: 0x8A9520 + vram: 0x03000000 + subsegments: + - [0x8A9520, bin, ast_landmaster/ast_landmaster] + + - name: ast_blue_marine + exclusive_ram_id: segment_03 + type: code + dir: assets + start: 0x8B1AB0 + vram: 0x03000000 + subsegments: + - [0x8B1AB0, bin, ast_blue_marine/ast_blue_marine] + + - name: ast_versus + exclusive_ram_id: segment_03 + type: code + dir: assets + start: 0x8B8E00 + vram: 0x03000000 + subsegments: + - [0x8B8E00, bin, ast_versus/ast_versus] + + - name: ast_enmy_planet + exclusive_ram_id: segment_04 + type: code + dir: assets + start: 0x8E8AE0 + vram: 0x04000000 + subsegments: + - [0x8E8AE0, bin, ast_enmy_planet/ast_enmy_planet] + + - name: ast_enmy_space + exclusive_ram_id: segment_04 + type: code + dir: assets + start: 0x8F2DE0 + vram: 0x04000000 + subsegments: + - [0x8F2DE0, bin, ast_enmy_space/ast_enmy_space] + + - name: ast_great_fox + exclusive_ram_id: segment_0E + type: code + dir: assets + start: 0x8FF2F0 + vram: 0x0E000000 + subsegments: + - [0x8FF2F0, bin, ast_great_fox/ast_great_fox] + + - name: ast_star_wolf + exclusive_ram_id: segment_0F + type: code + dir: assets + start: 0x911000 + vram: 0x0F000000 + subsegments: + - [0x911000, bin, ast_star_wolf/ast_star_wolf] + + - name: ast_allies + exclusive_ram_id: segment_0D + type: code + dir: assets + start: 0x9257A0 + vram: 0x0D000000 + subsegments: + - [0x9257A0, bin, ast_allies/ast_allies] + + - name: ast_corneria + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0x932200 + vram: 0x06000000 + subsegments: + - [0x932200, bin, ast_corneria/ast_corneria] + + - name: ast_meteo + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0x971980 + vram: 0x06000000 + subsegments: + - [0x971980, bin, ast_meteo/ast_meteo] + + - name: ast_titania + exclusive_ram_id: segment_06 + type: code + dir: assets + vram: 0x06000000 + start: 0x9A3370 + subsegments: + - [0x9A3370, bin, ast_titania/ast_titania] + + - name: ast_7_ti_2 + exclusive_ram_id: segment_07 + type: code + dir: assets + vram: 0x07000000 + start: 0x9AD730 + subsegments: + - [0x9AD730, bin, ast_7_ti_2/ast_7_ti_2] + + - name: ast_8_ti + exclusive_ram_id: segment_08 + type: code + dir: assets + start: 0x9BB980 + vram: 0x08000000 + subsegments: + - [0x9BB980, bin, ast_8_ti/ast_8_ti] + + - name: ast_9_ti + exclusive_ram_id: segment_09 + type: code + dir: assets + start: 0x9C4C20 + vram: 0x09000000 + subsegments: + - [0x9C4C20, bin, ast_9_ti/ast_9_ti] + + - name: ast_A_ti + type: code + dir: assets + exclusive_ram_id: segment_0A + start: 0x9D4D40 + vram: 0x0A000000 + subsegments: + - [0x9D4D40, bin, ast_A_ti/ast_A_ti] + + - name: ast_7_ti_1 + exclusive_ram_id: segment_07 + type: code + dir: assets + start: 0x9DE6E0 + vram: 0x07000000 + subsegments: + - [0x9DE6E0, bin, ast_7_ti_1/ast_7_ti_1] + + - name: ast_sector_x + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0x9ED490 + vram: 0x06000000 + subsegments: + - [0x9ED490, bin, ast_sector_x/ast_sector_x] + + - name: ast_sector_z + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xA1FCD0 + vram: 0x06000000 + subsegments: + - [0xA1FCD0, bin, ast_sector_z/ast_sector_z] + + - name: ast_aquas + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xA28E60 + vram: 0x06000000 + subsegments: + - [0xA28E60, bin, ast_aquas/ast_aquas] + + - name: ast_area_6 + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xA5B8F0 + vram: 0x06000000 + subsegments: + - [0xA5B8F0, bin, ast_area_6/ast_area_6] + + - name: ast_venom_1 + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xA84390 + vram: 0x06000000 + subsegments: + - [0xA84390, bin, ast_venom_1/ast_venom_1] + + - name: ast_venom_2 + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xA9E570 + vram: 0x06000000 + subsegments: + - [0xA9E570, bin, ast_venom_2/ast_venom_2] + + - name: ast_ve1_boss + # exclusive_ram_id: segment_06 + exclusive_ram_id: segment_09 + type: code + dir: assets + start: 0xAB36F0 + vram: 0x09000000 + subsegments: + - [0xAB36F0, bin, ast_ve1_boss/ast_ve1_boss] + + - name: ast_bolse + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xAD8050 + vram: 0x06000000 + subsegments: + - [0xAD8050, bin, ast_bolse/ast_bolse] + + - name: ast_fortuna + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xAE9DC0 + vram: 0x06000000 + subsegments: + - [0xAE9DC0, bin, ast_fortuna/ast_fortuna] + + - name: ast_sector_y + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xAF9DC0 + vram: 0x06000000 + subsegments: + - [0xAF9DC0, bin, ast_sector_y/ast_sector_y] + + - name: ast_solar + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xB2E3F0 + vram: 0x06000000 + subsegments: + - [0xB2E3F0, bin, ast_solar/ast_solar] + + - name: ast_zoness + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xB51670 + vram: 0x06000000 + subsegments: + - [0xB51670, bin, ast_zoness/ast_zoness] + + - name: ast_katina + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xB7E0B0 + vram: 0x06000000 + subsegments: + - [0xB7E0B0, bin, ast_katina/ast_katina] + + - name: ast_macbeth + exclusive_ram_id: segment_06 + type: code + dir: assets + vram: 0x06000000 + start: 0xB8F2B0 + subsegments: + - [0xB8F2B0, bin, ast_macbeth/ast_macbeth] + + - name: ast_warp_zone + exclusive_ram_id: segment_07 + type: code + dir: assets + start: 0xBC7460 + vram: 0x07000000 + subsegments: + - [0xBC7460, bin, ast_warp_zone/ast_warp_zone] + + - name: ast_title + exclusive_ram_id: segment_06 + type: code + dir: assets + vram: 0x06000000 + start: 0xBC9230 + subsegments: + - [0xBC9230, bin, ast_title/ast_title] + + - name: ast_map + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xC12690 + vram: 0x06000000 + subsegments: + - [0xC12690, bin, ast_map/ast_map] + + - name: ast_option + exclusive_ram_id: segment_08 + type: code + dir: assets + start: 0xC6FA00 + vram: 0x08000000 + subsegments: + - [0xC6FA00, bin, ast_option/ast_option] + + - name: ast_vs_menu + exclusive_ram_id: segment_07 + type: code + dir: assets + start: 0xC83960 + vram: 0x07000000 + subsegments: + - [0xC83960, bin, ast_vs_menu/ast_vs_menu] + + - name: ast_text + exclusive_ram_id: segment_05 + type: code + dir: assets + vram: 0x05000000 + start: 0xC98590 + subsegments: + - [0xC98590, bin, ast_text/ast_text] + + - name: ast_font_3d + exclusive_ram_id: segment_09 + type: code + dir: assets + vram: 0x09000000 + start: 0xCA2860 + subsegments: + - [0xCA2860, bin, ast_font_3d/ast_font_3d] + + - name: ast_andross + exclusive_ram_id: segment_0C + type: code + dir: assets + vram: 0x0C000000 + start: 0xCAEA30 + subsegments: + - [0xCAEA30, bin, ast_andross/ast_andross] + + - name: ast_logo + exclusive_ram_id: segment_0F + type: code + dir: assets + start: 0xCE8EC0 + vram: 0x0F000000 + subsegments: + - [0xCE8EC0, bin, ast_logo/ast_logo] + + - name: ast_ending + exclusive_ram_id: segment_07 + type: code + dir: assets + start: 0xCEB3C0 + vram: 0x07000000 + subsegments: + - [0xCEB3C0, bin, ast_ending/ast_ending] + + - name: ast_ending_award_front + exclusive_ram_id: segment_08 + type: code + dir: assets + start: 0xD071C0 + vram: 0x08000000 + subsegments: + - [0xD071C0, bin, ast_ending_award_front/ast_ending_award_front] + + - name: ast_ending_award_back + exclusive_ram_id: segment_08 + type: code + dir: assets + start: 0xD2C240 + vram: 0x08000000 + subsegments: + - [0xD2C240, bin, ast_ending_award_back/ast_ending_award_back] + + - name: ast_ending_expert + exclusive_ram_id: segment_08 + type: code + dir: assets + start: 0xD55CD0 + vram: 0x08000000 + subsegments: + - [0xD55CD0, bin, ast_ending_expert/ast_ending_expert] + + - name: ast_training + exclusive_ram_id: segment_06 + type: code + dir: assets + start: 0xD9FDD0 + vram: 0x06000000 + subsegments: + - [0xD9FDD0, bin, ast_training/ast_training] diff --git a/yamls/jp/rev0/main.yaml b/yamls/jp/rev0/main.yaml index 5a107e16..754a6248 100644 --- a/yamls/jp/rev0/main.yaml +++ b/yamls/jp/rev0/main.yaml @@ -10,7 +10,7 @@ type: code start: 0x1050 vram: 0x80000450 - #bss_size: 0x9B1F0 + bss_size: 0x95A50 subsegments: # Microcode - [0x01050, textbin, rspboot] @@ -260,11 +260,14 @@ - [0xE7650, data, wave_samples] - [0xE8270, data, note_data] + # bss + - { start: 0xE93C0, type: bss, vram: 0x800E87C0, name: main } + - name: dma_table type: code start: 0xE93C0 vram: 0x8017E210 - #follows_vram: main + follows_vram: main subsegments: - [0xE93C0, data, dmatable] diff --git a/yamls/jp/rev0/overlays.yaml b/yamls/jp/rev0/overlays.yaml index 13aec004..0ba6e18d 100644 --- a/yamls/jp/rev0/overlays.yaml +++ b/yamls/jp/rev0/overlays.yaml @@ -4,8 +4,8 @@ dir: overlays/ovl_i1 start: 0xDA9680 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0xA10 + follows_vram: dma_table + bss_size: 0xA10 symbol_name_format: i1_$VRAM subsegments: - [0xDA9680, c, fox_i1] @@ -21,15 +21,18 @@ - [0xDBD410, .rodata, fox_ve1] - [0xDBD7A0, .rodata, fox_tr] - [0xDBD7E0, .rodata, fox_tr360] - + - { start: 0xDBD820, type: bss, vram: 0x80192940, name: fox_i1 } + - { start: 0xDBD820, type: bss, vram: 0x80192950, name: fox_co } + - { start: 0xDBD820, type: bss, vram: 0x80192A70, name: fox_ve1 } + - name: ovl_i2 exclusive_ram_id: overlay type: code dir: overlays/ovl_i2 start: 0xDBD820 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x40 + follows_vram: dma_table + bss_size: 0x30 symbol_name_format: i2_$VRAM subsegments: - [0xDBD820, c, fox_i2] @@ -40,6 +43,8 @@ - [0xDCB8F0, data, fox_sx] - [0xDCBA40, .rodata, fox_me] - [0xDCBD00, .rodata, fox_sx] + - { start: 0xDCC020, type: bss, vram: 0x8018CFA0, name: fox_i2 } + - { start: 0xDCC020, type: bss, vram: 0x8018CFB0, name: fox_sx } - name: ovl_i3 exclusive_ram_id: overlay @@ -47,8 +52,8 @@ dir: overlays/ovl_i3 start: 0xDCC020 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x2220 + follows_vram: dma_table + bss_size: 0x2220 symbol_name_format: i3_$VRAM subsegments: - [0xDCC020, c, fox_i3] @@ -65,6 +70,12 @@ - [0xE058E0, .rodata, fox_zo] - [0xE06000, .rodata, fox_so] - [0xE06560, .rodata, fox_aq] + - { start: 0xE06D70, type: bss, vram: 0x801B94F0, name: fox_i3 } + - { start: 0xE06D70, type: bss, vram: 0x801B9500, name: fox_a6 } + - { start: 0xE06D70, type: bss, vram: 0x801B95E0, name: fox_zo } + - { start: 0xE06D70, type: bss, vram: 0x801B99F0, name: fox_so } + - { start: 0xE06D70, type: bss, vram: 0x801B9A70, name: fox_aq } + - name: ovl_i4 exclusive_ram_id: overlay @@ -72,8 +83,8 @@ dir: overlays/ovl_i4 start: 0xE06D70 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x1B0 + follows_vram: dma_table + bss_size: 0x1B0 symbol_name_format: i4_$VRAM subsegments: - [0xE06D70, c, fox_i4] @@ -91,6 +102,11 @@ - [0xE1EDE0, .rodata, fox_bo] - [0xE1F1E0, .rodata, fox_ka] - [0xE1F570, .rodata, fox_sz] + - { start: 0xE1F870, type: bss, vram: 0x801972A0, name: fox_i4 } + - { start: 0xE1F870, type: bss, vram: 0x801972B0, name: fox_bo } + - { start: 0xE1F870, type: bss, vram: 0x80197420, name: fox_ka } + - { start: 0xE1F870, type: bss, vram: 0x80197440, name: fox_sz } + - name: ovl_i5 exclusive_ram_id: overlay @@ -98,8 +114,8 @@ dir: overlays/ovl_i5 start: 0xE1F870 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0xAF80 + follows_vram: dma_table + bss_size: 0xAF70 symbol_name_format: i5_$VRAM subsegments: - [0xE1F870, c, fox_i5] @@ -109,11 +125,19 @@ - [0xE4CDB0, c, fox_ground] - [0xE4F670, data, fox_i5] - [0xE4F680, data, fox_ti_cs] + - [0xE4F740, data, fox_ti] + - [0xE51230, data, fox_ma] + - [0xE52CF0, data, fox_ground] - [0xE52DC0, .rodata, fox_i5] - [0xE52DD0, .rodata, fox_ti_cs] - [0xE52E30, .rodata, fox_ti] - [0xE53690, .rodata, fox_ma] - [0xE541D0, .rodata, fox_ground] + - { start: 0xE542C0, type: bss, vram: 0x801B31F0, name: fox_i5 } + - { start: 0xE542C0, type: bss, vram: 0x801B3200, name: fox_ti } + - { start: 0xE542C0, type: bss, vram: 0x801B5540, name: fox_ma } + - { start: 0xE542C0, type: bss, vram: 0x801B5A40, name: fox_ground } + - name: ovl_i6 exclusive_ram_id: overlay @@ -121,8 +145,8 @@ dir: overlays/ovl_i6 start: 0xE542C0 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x520 + follows_vram: dma_table + bss_size: 0x520 symbol_name_format: i6_$VRAM subsegments: - [0xE542C0, c, fox_i6] @@ -140,6 +164,10 @@ - [0xE74210, .rodata, fox_ve2] - [0xE74250, .rodata, fox_sy] - [0xE74CA0, .rodata, fox_turret] + - { start: 0xE74D00, type: bss, vram: 0x8019F1E0, name: fox_i6 } + - { start: 0xE74D00, type: bss, vram: 0x8019F1F0, name: fox_andross } + - { start: 0xE74D00, type: bss, vram: 0x8019F6E0, name: fox_sy } + - name: ovl_menu exclusive_ram_id: overlay @@ -147,8 +175,8 @@ dir: overlays/ovl_menu start: 0xE74D00 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x17590 + follows_vram: dma_table + bss_size: 0x17570 symbol_name_format: menu_$VRAM subsegments: - [0xE74D00, c, fox_i_menu] @@ -163,6 +191,11 @@ - [0xEA4760, .rodata, fox_title] - [0xEA4B00, .rodata, fox_option] - [0xEA4F00, .rodata, fox_map] + - { start: 0xEA5610, type: bss, vram: 0x801AF0B0, name: fox_menu } + - { start: 0xEA5610, type: bss, vram: 0x801AF0C0, name: fox_title } + - { start: 0xEA5610, type: bss, vram: 0x801B05A0, name: fox_option } + - { start: 0xEA5610, type: bss, vram: 0x801B0910, name: fox_map } + - name: ovl_ending exclusive_ram_id: overlay @@ -170,8 +203,8 @@ dir: overlays/ovl_ending start: 0xEA5610 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x2710 + follows_vram: dma_table + bss_size: 0x2710 symbol_name_format: ending_$VRAM subsegments: - [0xEA5610, c, fox_end1] @@ -180,6 +213,9 @@ - [0xEB0E50, data, fox_end2] - [0xEB41A0, .rodata, fox_end1] - [0xEB45A0, .rodata, fox_end2] + - { start: 0xEB4C00, type: bss, vram: 0x8018DD90, name: fox_end1 } + - { type: bss, vram: 0x8018F620, name: fox_end2 } + - name: ovl_unused exclusive_ram_id: overlay @@ -187,12 +223,12 @@ dir: overlays/ovl_unused start: 0xEB4C00 vram: 0x8017E7A0 - #follows_vram: ast_radio - #bss_size: 0x10 + follows_vram: dma_table + bss_size: 0x10 symbol_name_format: unused_$VRAM subsegments: - [0xEB4C00, c, fox_unused] - [0xEB4C10, data, fox_unused] + - { start: 0xEB4CA0, type: bss, vram: 0x8017E840, name: fox_unused } - - [0xEB4CA0] \ No newline at end of file