Skip to content

Releases: irmen/prog8

release 1.9

09 Jul 07:10
Compare
Choose a tag to compare
  • Syntax change: simplified the asmsub syntax (see the updated p8 lib files)
  • fixed bug where assignments were shuffled around in a futile attempt to optimize something
  • added parsing of when statement (code generation not yet complete though)
  • gradle build system improvements
  • fix jiffy clock r/w
  • major code restructurings in an attempt to separate things and improve editor and compiler performance
  • there's now an AstToSource printer

release 1.8

02 Jul 02:45
Compare
Choose a tag to compare
  • script fixes
  • updated kotlin sdk version
  • many code cleanups and improvements
  • added code optimization: removal of unused code and variables, subroutine inlining
  • added travis CI builds
  • added AST-based virtual machine (-avm command line option) it runs on the internal AST directly, without needing byte codes
  • strlen functions now terminate at the first zero byte
  • better implicit type casting
  • the stackvm and astvm can now print in different colors

release 1.7

21 Apr 01:12
Compare
Choose a tag to compare
  • array size in vardecl is now optional (if you provide an array initializer value)
  • %asmbinary is now implemented
  • tweaked the build scripts a bit
  • invalid assignment reordering fixed
  • avg() fixed for float arrays

release 1.6

12 Apr 20:52
Compare
Choose a tag to compare
  • upgraded to kotlin 1.3.30 and intellij 2019.1
  • new functions: pow(f)
  • fixed functions: min, max, all, ceil
  • integer pow() removed
  • address-of operator & implemented to create memory address pointer values
  • memory variable datatype keyword replaced by &
  • various stackVm bugs fixed

release 1.5 beta

29 Mar 23:36
Compare
Choose a tag to compare
release 1.5 beta Pre-release
Pre-release
  • fixed loop labeling problem that resulted in uncompilable assembly code
  • stackvm can now intercept certain system/rom calls
  • stackvm endless loop bug fixed
  • strlen() and sqrt16() added
  • improved some compiler error messages
  • for loops can now be over an iterable literal (such as a string or array) without explicitly having to use a hold variable
  • irq handler now saves zero page scratch registers

release 1.4 beta

10 Mar 19:26
Compare
Choose a tag to compare
release 1.4 beta Pre-release
Pre-release
  • removed pascal string types (str_p and str_ps)
  • fixed some bugs in the tehtriz example, added holding area, tweaked controls

release 1.3 beta

10 Mar 04:28
Compare
Choose a tag to compare
release 1.3 beta Pre-release
Pre-release
  • fixed many bugs
  • added Tetris clone game example
  • asmsubroutines can now be used in expressions (they return their value on the eval stack)
  • fixed primes.p8 example
  • documented zp type tag and irq handlers
  • gradle can now create a fully contained fat jar (although it still is a lot bigger than what the build script produces)
  • added a few builtin functions such as read_flags

release 1.2 beta

12 Feb 22:38
Compare
Choose a tag to compare
release 1.2 beta Pre-release
Pre-release
  • gradle buildsystem (contributed by fboldog)
  • math assembly optimizations (contributed by Soci)
  • bugfixes
  • better zeropage handling, new zeropage mode (floatsafe)
  • improved module file name/path handling, fixed path issues on windows

release 1.1 beta

27 Jan 22:13
Compare
Choose a tag to compare
release 1.1 beta Pre-release
Pre-release

allocation of variables in zero page added
proper (re)initialization of block level variables
some bug fixes and optimizations

release 1.0 beta

26 Jan 18:02
Compare
Choose a tag to compare
release 1.0 beta Pre-release
Pre-release

First public release