Skip to content

Releases: ExpHP/truth

0.4.0-pre1

15 Apr 05:01

Choose a tag to compare

0.4.0-pre1 Pre-release
Pre-release

v0.4.0-pre1

The biggest addition to 0.4.0 is that trumsg is now usable.

In this prerelease, trumsg only supports up to TH11 because ZUN things

Compatibility Note

Text source files are now always UTF-8, never Shift-JIS. If you were previously using truth with Shift-JIS files, you may need to change their encoding and re-save them in your text editor.

Changes

  • trumsg now produces reasonable output, and can roundtrip-decode all MSG files in all games up to and including TH09.
  • Added pseudo-arguments. When decompiling, instructions with unknown signatures will now be decoded to a form like ins_1011(@mask=0b100, @blob="00501c46 00000040 00541c46");
  • Added const variables. These are typed compile-time constants. Please see the truth syntax primer for more information.
  • More warnings! Diagnostics were heavily reworked, allowing warnings to be emitted for many more things (and allowing some things that used to be errors to become warnings instead).
  • Default output line width changed from 100 to 80.

Version 0.0.3

12 Feb 04:52

Choose a tag to compare

Commit diff: 0.0.2...0.0.3

  • Added word-sized arguments. ANM's anchor now takes two words in some games.
  • Big cleanup of how type checking and name resolution works, with generally better error messages for many things.
  • Sprite names and script names now can be used as expressions (e.g. scriptNew(script20)), and such names will be produced while decompiling as well.
  • Added a --output-thecl-defs FILENAME flag to truanm that works like thanm's -s, as this may have been a blocker for adoption by some. This may be a somewhat temporary solution, as the goal is for truecl to have its own way of importing an anm script directly.

Version 0.0.2

26 Jan 02:09

Choose a tag to compare

Version 0.0.2

This is the first release made available online. It contains:

  • A fully functional trustd
  • A largely functional truanm. It can decompile and recompile all vanilla ANM files. However, not all language features are implemented yet.