Skip to content

v0.9.2

Compare
Choose a tag to compare
@github-actions github-actions released this 04 May 14:25
· 219 commits to master since this release

May the 4th be with you! ⭐ 👾

Added

  • New 0-indexed string functions (we plan to eventually deprecate the old 1-indexed ones):
    • STRFIND and STRRFIND: like STRIN and STRRIN
    • STRCHAR: like CHARSUB
    • STRSLICE: like STRSUB, but taking start and stop indexes, instead of a start position and length
  • CHARCMP: compares two strings by their charmap value sequences
  • CHARSIZE: counts how many charmap values a single character would map to
  • REVCHAR: reverse-maps a value sequence to its charmap string (the values must have one unique corresponding charmap)
  • Allow macro \<arg> to take negative values to count arguments from the end (e.g. \<-2> is the penultimate arg)
  • Allow the index of bit/res/set instructions to be determined at link time
  • rgbgfx -B/--background specifies a "background" color; tiles entirely of that color will be skipped in the graphic output
  • rgbfix -o/--output can write its output to a different file than its input (must have one input file); thanks @jmillikin!

Changed

  • Raw symbols do not undergo EQUS expansion (so #symbol can be used instead of "{symbol}")
  • Some invalid instructions have more specific error messages than just "syntax error"
  • Terser RGBASM output for sequences of unknown characters
  • contrib/gbdiff.bash does not need a .sym file to be sorted

Fixed

  • Macro names could be used as numeric symbols with value 0
  • Map files were listing anonymous labels (as Unicode escape syntax)
  • RGBGFX could segfault with transparent colors in embedded palettes
  • RGBGFX could segfault or give incorrect output for grayscale images with transparent colors
  • RGBFIX expects nonzero -r/--ram-size for -m MBC6 (the one game that uses MBC6 has -r 3)
  • CMAKE_CXX_FLAGS_DEBUG can be user-specified

Thanks to @Rangi42 and @ISSOtm for the work done for this release.