mirror of
https://github.com/Xeeynamo/sotn-decomp.git
synced 2024-11-23 13:09:44 +00:00
3649d507c1
Instead of outputting a `D_80123456.dec` from an extracted compressed asset, now a PNG is written from the decompressed data from the specified YAML entry. The asset tool will synchronize with splat to retrieve the symbol names for graphics and palettes. The new splat extension `cmpgfx` will also be able to detect unused graphics by failing with a hint on how to tweak the YAML. That way I found some unused placeholders under the name `stage_placeholder` and some kind of beta graphics from the prologue stage.
189 lines
6.9 KiB
YAML
189 lines
6.9 KiB
YAML
options:
|
|
platform: psx
|
|
basename: stno3
|
|
base_path: ..
|
|
build_path: build/us
|
|
target_path: disks/us/ST/NO3/NO3.BIN
|
|
asm_path: asm/us/st/no3
|
|
asset_path: assets/st/no3
|
|
src_path: src/st/no3
|
|
ld_script_path: build/us/stno3.ld
|
|
compiler: GCC
|
|
symbol_addrs_path:
|
|
- config/symbols.us.txt
|
|
- config/symbols.us.stno3.txt
|
|
undefined_funcs_auto_path: config/undefined_funcs_auto.us.stno3.txt
|
|
undefined_syms_auto_path: config/undefined_syms_auto.us.stno3.txt
|
|
find_file_boundaries: yes
|
|
use_legacy_include_asm: no
|
|
migrate_rodata_to_functions: no
|
|
asm_jtbl_label_macro: jlabel
|
|
extensions_path: tools/splat_ext
|
|
disassemble_all: True
|
|
section_order:
|
|
- ".data"
|
|
- ".rodata"
|
|
- ".text"
|
|
- ".bss"
|
|
- ".sbss"
|
|
sha1: 5d06216b895ab5ff892c88b0d9eff67ff16e2bd1
|
|
segments:
|
|
- name: stno3
|
|
type: code
|
|
start: 0x00000000
|
|
vram: 0x80180000
|
|
align: 4
|
|
subalign: 4
|
|
subsegments:
|
|
- [0x0, .data, header]
|
|
- [0x1C4, .data, header] # layers
|
|
- [0x5A4, .data, header] # GfxBanks
|
|
- [0x77C, .data, e_laydef] # layout entries header
|
|
- [0x924, .data, e_init]
|
|
- [0xAAC, data]
|
|
- [0xDC0, .data, 377D4]
|
|
- [0xDD0, .data, 377D4]
|
|
- [0xE50, data]
|
|
- [0xE70, data]
|
|
- [0xE80, data]
|
|
- [0xE90, data]
|
|
- [0xEA0, .data, entrance_stage_entities]
|
|
- [0x13A8, data]
|
|
- [0x1ACC, .data, cutscene]
|
|
- [0x1AD4, data]
|
|
- [0x1B40, data]
|
|
- [0x1C8C, .data, d_prize_drops]
|
|
- [0x1CC0, .data, st_update]
|
|
- [0x1CEC, .data, collision]
|
|
- [0x20AC, .data, e_red_door]
|
|
- [0x20C4, .data, st_common]
|
|
- [0x22C4, .data, e_collect]
|
|
- [0x25B4, .data, e_misc]
|
|
- [0x26D0, data]
|
|
- [0x3180, data]
|
|
- [0x3870, data]
|
|
- [0x39A0, data]
|
|
- [0x3AC0, data]
|
|
- [0x3AF0, data]
|
|
- [0x3B30, data]
|
|
- [0x3B50, .data, e_bone_scimitar]
|
|
- [0x3C44, .data, e_bat]
|
|
- [0x3C7C, data]
|
|
- [0x3CC4, .data, rooms]
|
|
- [0x3DC8, .data, e_layout] # layout entries data
|
|
- [0x4CE0, .data, cutscene_data]
|
|
- [0x4E60, data]
|
|
- [0x4E74, cmpgfx, stage_title_jp, 128, 128, 4]
|
|
- [0x51B8, cmpgfx, stage_placeholder, 128, 128, 4]
|
|
- [0x575C, cmpgfx, e_skyswirl_g0, 128, 128, 4, 0x16AB8] # TODO rename palette
|
|
- [0x68C8, cmpgfx, e_skyswirl_g1, 128, 128, 4, 0x16AB8] # TODO rename palette
|
|
- [0x7BD0, cmpgfx, e_merman_g0, 128, 128, 4, 0x17838]
|
|
- [0x8870, cmpgfx, e_merman_g1, 128, 128, 4, 0x17838]
|
|
- [0x94AC, cmpgfx, e_merman_g2, 128, 128, 4, 0x17838]
|
|
- [0xA4BC, cmpgfx, e_merman_g3, 128, 128, 4, 0x17838]
|
|
- [0xADC0, cmpgfx, e_slinger_g, 128, 128, 4, 0x17EF8]
|
|
- [0xB99C, cmpgfx, e_ghost_bat_g, 128, 128, 4, 0x17F58]
|
|
- [0xC460, cmpgfx, e_warg_rider_g0, 128, 128, 4, 0x17FB8]
|
|
- [0xD5EC, cmpgfx, e_warg_rider_g1, 128, 128, 4, 0x17FB8]
|
|
- [0xE6CC, cmpgfx, e_warg_rider_g2, 128, 128, 4, 0x17FB8]
|
|
- [0xF870, cmpgfx, e_warg_rider_g3, 128, 128, 4, 0x17FB8]
|
|
- [0x10958, cmpgfx, e_warg_rider_g4, 128, 128, 4, 0x17FD8]
|
|
- [0x114B8, cmpgfx, e_zombie_g, 128, 128, 4, 0x180B8]
|
|
- [0x11B88, raw, cutscene_alucard]
|
|
- [0x12908, raw, cutscene_death]
|
|
- [0x13688, cmpgfx, e_death_g0, 128, 128, 4, 0x18518]
|
|
- [0x14688, cmpgfx, e_death_g1, 128, 128, 4, 0x18518]
|
|
- [0x150CC, cmpgfx, e_death_g2, 128, 128, 4, 0x18518]
|
|
- [0x1573C, cmpgfx, e_explosion_g, 128, 128, 4, 0x18578]
|
|
- [0x166B8, pal, e_skyswirl_p]
|
|
- [0x17838, pal, e_merman_p]
|
|
- [0x178F8, pal, D_801978F8] # unused
|
|
- [0x17918, pal, D_80197918]
|
|
- [0x17958, pal, D_80197958]
|
|
- [0x17998, pal, D_80197998]
|
|
- [0x179D8, pal, D_801979D8]
|
|
- [0x17A18, pal, D_80197A18]
|
|
- [0x17A58, pal, D_80197A58]
|
|
- [0x17A98, pal, D_80197A98]
|
|
- [0x17AD8, pal, D_80197AD8]
|
|
- [0x17B18, pal, D_80197B18]
|
|
- [0x17B58, pal, D_80197B58]
|
|
- [0x17B98, pal, D_80197B98]
|
|
- [0x17BD8, pal, D_80197BD8]
|
|
- [0x17C18, pal, D_80197C18]
|
|
- [0x17C58, pal, D_80197C58]
|
|
- [0x17C98, pal, D_80197C98]
|
|
- [0x17EF8, pal, e_slinger_p]
|
|
- [0x17F58, pal, e_ghost_bat_p]
|
|
- [0x17FB8, pal, e_warg_rider_p]
|
|
- [0x180B8, pal, e_zombie_p]
|
|
- [0x18118, pal, D_80198118]
|
|
- [0x18218, pal, D_80198218] # unused
|
|
- [0x18318, pal, D_80198318]
|
|
- [0x18418, pal, D_80198418] # unused
|
|
- [0x18518, pal, e_death_p]
|
|
- [0x18578, pal, e_explosion_p]
|
|
- [0x18778, pal, D_80198778] # unused
|
|
- [0x18838, .data, tile_data] # tile data
|
|
- [0x26638, .data, tile_data] # tile definitions
|
|
- [0x2EA68, .data, sprites]
|
|
- [0x373E0, data]
|
|
- [0x373E8, .rodata, entrance_stage_entities] # EntityCastleDoor
|
|
- [0x37400, .rodata, entrance_stage_entities] # EntityStairwayPiece
|
|
- [0x37414, .rodata, 3C4EC]
|
|
- [0x3742C, .rodata, 3E134] #EntityFlyingOwlAndLeaves
|
|
- [0x37440, .rodata, cutscene] # actor names
|
|
- [0x37458, .rodata, cutscene] # NO3_EntityCutscene
|
|
- [0x374DC, .rodata, 3FF00] # EntityRoomTransition2
|
|
- [0x374F4, .rodata, 3FF00] # EntityDeathStolenItems
|
|
- [0x37514, .rodata, 3FF00] # EntityDeath
|
|
- [0x37564, .rodata, e_explosion_puff_opaque] # EntityExplosionPuffOpaque
|
|
- [0x37578, .rodata, e_red_door] # EntityRedDoor
|
|
- [0x37590, .rodata, e_collect] # CollectGold text
|
|
- [0x375E0, .rodata, e_collect] # EntityPrizeDrop
|
|
- [0x37600, .rodata, e_collect] # EntityEquipItemDrop
|
|
- [0x37618, .rodata, e_misc]
|
|
- [0x37650, .rodata, e_misc]
|
|
- [0x37664, .rodata, 4AFF0] # EntityStageNamePopup
|
|
- [0x37698, .rodata, e_fire_warg] # EntityFireWarg
|
|
- [0x376D0, .rodata, e_fire_warg] # EntityFireWargWaveAttack
|
|
- [0x376E8, .rodata, e_fire_warg] # EntityUnkId2F
|
|
- [0x376FC, .rodata, 4F58C] # EntityWarg RECT
|
|
- [0x37704, .rodata, 4F58C] # EntityWarg
|
|
- [0x37738, .rodata, e_merman2]
|
|
- [0x3775C, .rodata, 53F38]
|
|
- [0x37784, .rodata, e_bone_scimitar]
|
|
- [0x377A4, .rodata, e_bat] # EntityBat
|
|
- [0x377B8, .rodata, 564B0] # EntityZombie
|
|
- [0x377CC, .rodata, prim_helpers]
|
|
- [0x377D4, c]
|
|
- [0x37A64, c, e_breakable]
|
|
- [0x37B98, c, entrance_stage_entities]
|
|
- [0x3C4EC, c]
|
|
- [0x3E134, c]
|
|
- [0x3E544, c, cutscene]
|
|
- [0x3FF00, c]
|
|
- [0x413F8, c, e_explosion_puff_opaque]
|
|
- [0x4184C, c, st_update]
|
|
- [0x41C80, c, collision]
|
|
- [0x4343C, c, create_entity]
|
|
- [0x43FB4, c, e_red_door]
|
|
- [0x44C64, c, st_common]
|
|
- [0x45BC0, c, e_collect]
|
|
- [0x47680, c, blit_char]
|
|
- [0x47930, c, e_misc]
|
|
- [0x4AFF0, c]
|
|
- [0x4C5A4, c, e_fire_warg]
|
|
- [0x4F58C, c]
|
|
- [0x50A2C, c, player_water_effect]
|
|
- [0x516B4, c, e_merman2]
|
|
- [0x53F38, c]
|
|
- [0x559d0, c, e_bone_scimitar]
|
|
- [0x56264, c, e_bat]
|
|
- [0x564B0, c]
|
|
- [0x56880, c, prim_helpers]
|
|
- [0x570B0, .bss, create_entity]
|
|
- [0x57120, .bss, bss]
|
|
- [0x57DD8, .bss, e_collect]
|
|
- [0x57E18]
|