Skip to content

version 11.2

Choose a tag to compare

@irmen irmen released this 08 Mar 22:08
· 627 commits to master since this release

Important bug fix release with some new features.

Bugs fixed:

  • C64: graphics.plot() now works again , it was broken since version 10.5
  • X16: introduced a workaround for SMC issue that could make sys.reset_system() and sys.poweroff_system() not work properly on hardware boards
  • X16: cx16.VERA_FX_POLY_FILL_H constant value typo fixed
  • clear error messages instead of compiler crashes for several source code errors
  • symbol prefixing bug fixed for certain use of %option no_symbol_prefixing
  • you can once again call a label as a subroutine (but this is now also a footgun warning)
  • fix code generation error when assigning address of split word array without explicit adressof syntax
  • better error if module name clash occurs caused by case-insensitive names
  • fix codegen for @(ptr-offset)=value that was writing bogus values to memory

New stuff:

  • some range checks can now be evaluated at compile time
  • introduced %option romable as a start to help generate code that can be put into ROM. There's still a long way to go. But this option now starts generating warnings of code that is generated that will not be able to be put into ROM, so it can help to identify problem points.
  • Added strings.ncompare to compare strings up to n characters
  • improved some syntax highlights
  • more forgiving handling of constants of different types
  • various optimizations in generated code
  • internal compiler refactoring to reduce project dependencies and improve API surface for future code generators or tools
  • more often print the offending source code position that triggers an internal compiler crash
  • added a sprites/coroutines/defer benchmark module to the benchmarking program