Skip to content

Releases: tabemann/zeptoforth

Patch-level release 1.9.1

08 Dec 03:54
Compare
Choose a tag to compare

This patch-level release renames the int-io module to serial (but retains the now-deprecated int-io name for the time being), includes a key fix to the CYW43439 driver for the new Raspberry Pi Pico 2 W, and fixes to the parsing of a number of different kinds of numeric literal. It also removes the source code for unsupported Nordic Semiconductor microcontrollers. Note that due to yet-unresolved issues with the USB CDC driver on the RP2350 is it is highly recommended one use the serial console when uploading the CYW43439 firmware, CYW43439 driver, and zeptoIP to the Raspberry Pi Pico 2 W; this can be accessed within full_usb builds by calling serial::serial-console.

Minor release 1.9.0

15 Nov 08:21
Compare
Choose a tag to compare

This release:

  • adds hardware single-precision floating-point numerics support (except on the RP2040, due to lack of hardware floating point, and STM32F411, to save room of what little flash it has)
  • reworks the multitasker to be based on deadlines
  • optionally supports complex numbers on top of hardware single-precision floating-point numerics
  • adds a current directory concept
  • optionally supports FAT32 filesystems in PSRAM on RP2350 boards with PSRAM such as the Pimoroni Pico Plus 2
  • supports conveniently compiling string constants to the dictionary and storing them in buffers and reading them therefrom without the limitations of traditional counted strings or null-delimited strings
  • optimizes of/ofstr ... endof to collect all end branches to the end of case ... endcase/endcasestr blocks (except on the RP2040 and STM32L476, due to the limitations of these platforms)
  • fixes a bug where double-cell local variables would not be properly updated with constants due to an issue with the code generator
  • fixes a bug introduced in the last beta release 1.9.0-beta.3 where due to an issue with the multitasker zeptoforth would sometimes crash on boot and would not properly update the deadlines of tasks.

Beta release 1.9.0-beta.3

12 Nov 03:49
Compare
Choose a tag to compare
Pre-release

This beta release adds string,, string@, and string! for conveniently compiling string constants and reading and writing strings without the constraints of traditional counted strings, updates endof, endcase, and endcasestr on the RP2350, STM32F407, STM32F411, and STM32F746 for all branches at the ends of of ... endof blocks to point to the end of the case ... endcase/endcasestr block (the RP2040 and STM32L476 are not so updated due to the platforms' limitations), adds task-deadline! and task-deadline@ in the task module to allow finer control over the deadline scheduler, and tunes zeptoIP to take advantage of the deadline scheduler.

Beta release 1.9.0-beta.2

03 Nov 22:38
Compare
Choose a tag to compare
Pre-release

This beta release updates the multitasker to use the new "deadline" scheduler and fixes a bug which would cause spawning tasks to crash.

Beta release 1.9.0-beta.1

02 Nov 22:31
Compare
Choose a tag to compare
Pre-release

This beta release adds optional support for FAT32 filesystems in PSRAM on RP2350 boards with PSRAM such as the Pimoroni Pico Plus 2 along with a current directory concept that was previously sorely missing from zeptoforth and an optional utility to copy files from one filesystem to another.

Beta release 1.9.0-beta.0

27 Oct 20:19
Compare
Choose a tag to compare
Pre-release

This beta release adds optional support for complex numbers on top of single-precision hardware floating point, including support for string conversions and complex literals.

Alpha release 1.9.0-alpha.1

21 Oct 02:50
Compare
Choose a tag to compare
Pre-release

This alpha release improves floating-point number parsing to avoid precision issues and fixes an issue with float32::vln where it would hang if passed 2e0.

Alpha release 1.9.0-alpha.0

17 Oct 03:14
Compare
Choose a tag to compare
Pre-release

This alpha release introduces hardware single-precision floating-point support on the RP2350, STM32F407, STM32L476, and STM32F746. It is mostly working in its current state, even though the string conversion routines could possibly be improved upon. If anyone has any input on how to practically improve them without resorting to things like bignums, it would be greatly appreciated. This release also fixes a bug where literals immediately before assigning their value to double-cell local variables would not be compiled properly.

Bug-fix release 1.8.1.2

27 Sep 23:17
Compare
Choose a tag to compare

This bug-fix release fixes an issue where certain specially-defined words such as words defined with defer would cause issues with the flash dictionary index on the RP2350, resulting in words sometimes not being usable despite being listed by words or words-in.

Bug-fix release 1.8.1.1

25 Sep 02:46
Compare
Choose a tag to compare

This bug-fix release adds a maximum iteration counter to ln and lnp1 to avoid a bug where with certain inputs they would get caught in an infinite loop.