Skip to content

Releases: encounter/decomp-toolkit

v0.7.5

05 Mar 01:19
Compare
Choose a tag to compare

What's Changed

  • Check if git tag matches Cargo version when releasing by @ribbanya in #44
  • Allow overriding jump table size analysis (96b13be)
    • When the analyzer detects a jump table, it will now check for an existing object symbol at that address, using that size if present.
  • Write .note.split section in split objects (4f8a9e6, b829e15)
    • This enables showing the original address of symbols in objdiff, as well as elf disasm on split objects retaining the original addresses.

Full Changelog: v0.7.4...v0.7.5

v0.7.4

29 Feb 02:43
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.7.3...v0.7.4

v0.7.3

09 Feb 22:10
Compare
Choose a tag to compare

Adds ar extract: Extracts the contents of static library (.a) files.

Accepts multiple files, glob patterns (e.g. *.a) and response files (e.g. @rspfile).

# Extracts to outdir
$ dtk ar extract lib.a -o outdir

# With multiple inputs, extracts to separate directories
# Extracts to outdir/lib1, outdir/lib2
$ dtk ar extract lib1.a lib2.a -o outdir

Full Changelog: v0.7.2...v0.7.3

v0.7.2

14 Jan 21:16
Compare
Choose a tag to compare
  • Added: Add noexport attr to symbols.txt
  • Changed: Rename auto_force_active to export_all.

This is a better solution for -code_merging, as individual functions can be marked noexport, rather than disabling export_all globally.

Full Changelog: v0.7.1...v0.7.2

v0.7.1

14 Jan 05:00
Compare
Choose a tag to compare
  • Added: Add support for MwOverlayBranch by @DaZombieKiller in #24
  • Added: Support anonymous type names as seen in PS2 DWARF by @DaZombieKiller in #25
  • Added: Infer anonymous unions from type layout by @DaZombieKiller in #26
  • Added: auto_force_active option (disable to support linker -code_merging, #13)

Full Changelog: v0.7.0...v0.7.1

v0.7.0

07 Jan 06:02
Compare
Choose a tag to compare
  • Added: Support some more MetroWerkz DWARF extensions by @DaZombieKiller in #22
  • Added: Analyzer improvements for ProDG games (WIP, #19)
  • Added: dwarf dump: Emit address range for compile units and functions (458d059)
  • Fixed: Disassembling addi with relocation as subi (3bcfaef)
  • Fixed: Allow linker-generated symbol references from data sections (#15)
  • Fixed: Allow matching multiple symbols during signature analysis (#20)
  • Fixed: Avoid duplicate unit names when auto-splitting (#20)
  • Fixed: Analyzer fix for fallthrough switch cases (#23)

Full Changelog: v0.6.5...v0.7.0

v0.6.5

21 Dec 03:40
Compare
Choose a tag to compare
  • Added: Support for Little Endian DWARF, Inline Arrays & Additional MetroWerks Extensions by @Sewer56 in #14
  • Fixed: Sanitize auto-split filenames (#16)
  • Fixed: Permit object filenames with dots (#17)
  • Fixed: Warn on unknown .comment section values instead of bailing (#18)

Full Changelog: v0.6.4...v0.6.5

v0.6.4

29 Nov 23:36
Compare
Choose a tag to compare
  • Added: Overhauled common BSS support
    • With a map, attempts to detect and handle common BSS automatically
    • With a map, attempts to detect and correct inflated common BSS bug (< GC 2.7 linker)
    • Support for "stripped" symbols, sometimes required to match inflated common BSS sizes
  • Added: Warn on duplicated TUs in a map (other than common BSS)
  • Added: Automatically adds comment:0 to .s units from a map (avoids linker crash)
  • Added: dwarf dump: Better support for GCC/ProDG & various fixes
    • Displays subroutine "static" and "inline" if present
    • Displays subroutine labels, blocks and inlines if present
    • Displays struct member visibility if present
    • Skips tags that can't be processed rather than bailing

Full Changelog: v0.6.3...v0.6.4

v0.6.3

26 Nov 06:17
Compare
Choose a tag to compare
  • Fixed: Honor symbol alignment when extracting a symbol to a C header

Full Changelog: v0.6.2...v0.6.3

v0.6.2

26 Nov 05:52
Compare
Choose a tag to compare
  • Added: Extract embedded assets to binary and C header (#11)

Adds an "extract" list to project configuration:

extract:
- symbol: SomeData
  binary: Lib/SomeData.bin
  header: Lib/SomeData.inc

This example extracts the data of symbol SomeData to out_dir/bin/Lib/SomeData.bin,
and a C array representation to out_dir/include/Lib/SomeData.inc.

Full Changelog: v0.6.1...v0.6.2