Releases: encounter/decomp-toolkit
Releases · encounter/decomp-toolkit
v1.5.1
v1.5.0
What's Changed
- Added:
rel make --version
option @dbalatoni13 in #94 - Added:
shiftjis
as 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
object
s 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
/.comment
reading (589e59a) - Changed: Improve logic for generating padding symbols (6819a8b)
- Changed: Update Error Messages by @NWPlayer123 in #87
- Removed:
elf split
command (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 config
and 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
rename
field to extract configuration (9fc56d8)- Allows renaming, for example, local statics from
symbol$1234
tosymbol
for inclusion in the source function.
- Allows renaming, for example, local statics from
- Add Wii WAD support to
dtk vfs
&wad
commands (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_type
andcustom_type
to 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
v1.1.4
v1.1.3
What's Changed
- Fixed: Always check for extracted files in object resolution (bee4570)
- Resolves an issue where extracted files would not be found after removing the disc image from the
orig
dir.
- Resolves an issue where extracted files would not be found after removing the disc image from the
Full Changelog: v1.1.2...v1.1.3
v1.1.2
What's Changed
- Added: Extract files from disc image to
object_base
(18bd608)- When
extract_objects
is enabled (on by default), objects will be extracted from a disc image intoobject_base
, and then used directly fromobject_base
going forward. This allows users to delete the disc image from theirorig
directory after the initial build.
- When
- Fixed: Make
selfile
relative toobject_base
(4fe2608)
Full Changelog: v1.1.1...v1.1.2
v1.1.1
What's Changed
- Added: VFS fixes and command improvements.
vfs ls
: Now displays size, detected file format, and decompressed size (if applicable).
-r
/--recursive
lists files recursively.
-s
/--short
prints only filenames.vfs cp
: Copies files recursively when the source is a directory.
--no-decompress
disables automatic decompression for Yay0/Yaz0.
-q
/--quiet
disables printing copied files.rarc
andu8
commands are now thin wrappers overvfs ls
andvfs cp
.
For example,rarc list file.arc
is now equivalent tovfs ls file.arc:
.
rarc extract file.arc -o out
is equivalent tovfs cp file.arc: out
.
- Fixed: VFS layout for Wii discs (
disc
/sys
dirs) (1f4b452) - Fixed: VFS path handling on Windows (2e524e6)
- Changed: Improve cache locality of some internal structures. Minor reduction in memory usage. (b184fee)
- Removed: Unused
metroidbuildinfo
command. (64d0491)
Full Changelog: v1.1.0...v1.1.1