Releases: encounter/decomp-toolkit
Releases · encounter/decomp-toolkit
v1.6.2
v1.6.1
v1.6.0
What's Changed
- Added:
dtk extab clean& config.ymlclean_extab(9cafb77)- It was discovered that certain extab actions contain uninitalized data from the compiler. This provides a way to zero out uninitialized data in DOL or object files. Usage:
dtk extab clean input.dol output.dol - A
clean_extabsetting was added to config.yml, so projects can link the cleaned objects and target the cleaned DOL hash.
- It was discovered that certain extab actions contain uninitalized data from the compiler. This provides a way to zero out uninitialized data in DOL or object files. Usage:
- Added: Some ProDG improvements by @dbalatoni13 in #101
- Added: Write
ldscript_templatepath to output depfile (9c68155) - Fixed: Fix BSS symbol data check in
add_padding_symbols(f212b35)
Full Changelog: v1.5.1...v1.6.0
v1.5.1
What's Changed
Full Changelog: v1.5.0...v1.5.1
v1.5.0
What's Changed
- Added:
rel make --versionoption @dbalatoni13 in #94 - Added:
shiftjisas possible data type for symbols by @Rainchus in #95 - Added:
dol apply: skip updating anonymous symbols by default by @robojumper in #97 - Added: ALF support in
elf2dol(a064ddf)
Full Changelog: v1.4.1...v1.5.0
v1.4.1
What's Changed
- Fixed: Auto-split and padding symbol fixes (bb18a4b)
A few issues were causing linker errors:
- Auto-splits could contain symbols that have a higher alignment than the split itself. Detect this and create a new auto-split at these symbols.
- The analyzer can miss objects in between other objects if there are no direct relocations to them. In these cases, non-zero data could just get totally lost. Detect and create symbols for these.
Full Changelog: v1.4.0...v1.4.1
v1.4.0
What's Changed
- Added: Improve split cyclic dependency errors (6c3887c)
- When a link order is unresolvable, decomp-toolkit now prints out all of the TUs in a cycle, easing debugging.
- Added: WAD support for
object_base(51a7fbd)- This allows WAD projects to use the auto-extraction feature: decomp-toolkit will extract all
objects from a disc file or WAD file that exists in the configuredobject_base.
- This allows WAD projects to use the auto-extraction feature: decomp-toolkit will extract all
- Added:
dol diff: Conditionally warn on symbol size mismatch (#35, b964232)- When a symbol's data matches but the size differs due to padding bytes, print a warning and continue.
- Added:
dol diff: Ignore globalized symbols (#61, e55ade1) - Added: Set alignment for floats/doubles in analyzer (#60, 9a6348e)
- Added: Check for conflicting splits with different file extensions (#81, 93000b2)
- Added: Treat a branch to the start of a function as a tail call (#74, a22e878)
- Fixed:
vfs ls: Column sizing with Unicode chars (04b60d3) - Fixed: Don't emit split alignment warnings for auto-splits (#84, 0c6eff4)
- Fixed: Warn rather than fail on
.note.split/.commentreading (589e59a) - Changed: Improve logic for generating padding symbols (6819a8b)
- Changed: Update Error Messages by @NWPlayer123 in #87
- Removed:
elf splitcommand (a6c7001)- This command was an early experiment and only worked correctly on one game. The project system has long superseded it. ELFs are better supported by generating a project config via
elf configand using the DOL as the target object.
- This command was an early experiment and only worked correctly on one game. The project system has long superseded it. ELFs are better supported by generating a project config via
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
- Add
renamefield to extract configuration (9fc56d8)- Allows renaming, for example, local statics from
symbol$1234tosymbolfor inclusion in the source function.
- Allows renaming, for example, local statics from
- Add Wii WAD support to
dtk vfs&wadcommands (1cc38ad)
Examples:
$ dtk vfs ls 'test.wad:'
676 bytes | 000100014e414345.tik | File
736 bytes | 000100014e414345.tmd | File
2.50 KiB | 000100014e414345.cert | File
225 KiB | 000100014e414345.trailer | File
225 KiB | 00000000.app | File
1.62 MiB | 00000001.app | File
4.35 MiB | 00000002.app | Archive: U8
2.55 MiB | 00000003.app | Archive: U8
2.06 MiB | 00000004.app | Archive: U8
33.5 MiB | 00000005.app | Archive: U8
257 KiB | 00000006.app | File
$ dtk vfs ls 'test.wad:00000004.app:./HomeButton2/LZ77_homeBtn.arc:nlzss:arc/anim'
300 bytes | th_HomeBtn_b_12btn_on.brlan | File
3.79 KiB | th_HomeBtn_b_btry_gry.brlan | File
2.85 KiB | th_HomeBtn_b_btry_red.brlan | File
3.79 KiB | th_HomeBtn_b_btry_wht.brlan | File
500 bytes | th_HomeBtn_b_btry_wink.brlan | File
...
Full Changelog: v1.2.0...v1.3.0
v1.2.0
What's Changed
- Added: Add
header_typeandcustom_typeto extract config
Extract configuration is now emitted in the output config, so tooling can load and perform their own tasks on extracted assets without having to parse YAML.
header_type:
symbol(default): Emit a full symbol declaration.raw: Emit raw array data (for wrapping in your own declaration)none: Don't emit a header at all. (For custom processing)
custom_type/custom_data: Passed through to the output config as-is for custom tasks.
Full Changelog: v1.1.4...v1.2.0