Release v0.16.0: AOT compiler (89%), Jupyter kernel, Hardware I/O, string GC
Version 0.16.0 consolidates the major features added since v0.14.0:
Ahead-of-time compiler (gwbasic-compile):
- Translates .bas programs to C source → GCC → native executables
- 64 of 72 test programs produce correct output (89%)
- Zero compile errors — all 72 programs compile successfully
- Token embedding for complex statements (PRINT USING, DEF FN,
graphics, file I/O, MID$ assignment)
- String comparison, division-by-zero detection, ON ERROR GOTO/RESUME
- libgwrt.a runtime library from existing interpreter modules
Jupyter kernel (gwbasickernel):
- Persistent subprocess with sentinel protocol
- Inline Sixel graphics rendering (pure-Python decoder → PNG)
- INPUT statement support via Jupyter stdin protocol
- Pygments GW-BASIC syntax highlighter
Hardware I/O simulator (portio.c):
- 8253 PIT, PPI speaker, CGA mode/color, COM1, game port
- Continuous tone via PulseAudio pthread worker
Interpreter improvements:
- 100% token coverage (all 144 GW-BASIC tokens handled)
- String space pool with compacting garbage collector
- RESET, ENVIRON/ENVIRON$, ERDEV/ERDEV$, IOCTL/IOCTL$,
LCOPY, DATE$/TIME$ assignment, CALL, COM
This commit is contained in:
+2
-1
@@ -18,7 +18,8 @@
|
||||
| 0.12.0 | | BSAVE/BLOAD, TUI ANSI 16-color rendering, CGA graphics framebuffer PEEK/POKE, keyboard shift flags |
|
||||
| 0.13.0 | | VIEW/WINDOW/PALETTE graphics, PMAP function, MBF float format for CVS/CVD/MKS$/MKD$ |
|
||||
| 0.14.0 | | MBF binary file compatibility (IEEE↔MBF at save/load boundary), fix binary loader null-byte truncation, fix DRAW M/S/A bugs, add TA/=var;/X substring |
|
||||
| 0.15.0 | | Hardware I/O simulator, gap-fill (100% token coverage), string pool + compacting GC, Jupyter kernel, ahead-of-time compiler (Phase 1) |
|
||||
| 0.15.0 | | Hardware I/O simulator, gap-fill (100% token coverage), string pool + compacting GC, Jupyter kernel (Sixel graphics, INPUT, Pygments), ahead-of-time compiler Phase 1 |
|
||||
| 0.16.0 | | AOT compiler complete: 64/72 tests pass (89%), zero compile errors. Token embedding for complex statements, string comparison, division-by-zero detection, FIELD read-back, PMAP/POINT, MID$ assignment, CVI/MKI$, CLEAR resize, ENVIRON/IOCTL$ delegation |
|
||||
|
||||
## Tests
|
||||
|
||||
|
||||
Reference in New Issue
Block a user