-
29c492f025
pkg: sync FreeDOS LSM version to the build version (#3)
main
v0.18.0
Eremey Valetov
2026-06-13 15:41:11 +03:00
-
cabd93caea
Release 0.18.0 + automated FreeDOS QEMU smoke (#2)
Eremey Valetov
2026-06-13 15:37:45 +03:00
-
89fe0fb0b3
Compiler: $EXTERN pragma for calling C functions from BASIC (Level 2 FFI) (#1)
Eremey Valetov
2026-06-13 15:06:23 +03:00
-
791b5a4710
compiler: --emit-obj and --main-name for cross-language linking
Eremey Valetov
2026-05-05 06:50:50 -04:00
-
f207d74aec
codegen fixes, --no-gc-check / --fast-math, raise caps, DATE$/TIME$ shift
Eremey Valetov
2026-05-04 18:56:58 -04:00
-
da1e6cebf1
CI: fix dos-cross-compile env; codegen: accept concat in CVI/CVS/CVD/cmp
Eremey Valetov
2026-05-04 18:16:21 -04:00
-
c317d683fb
Compiler: accept unnumbered programs, fix string concat in PRINT
Eremey Valetov
2026-05-04 16:32:09 -04:00
-
99eb992ead
Add DOS build script, compiler/DOS test harnesses, FreeDOS package, CI
Eremey Valetov
2026-05-03 12:26:09 -04:00
-
70ffd39562
v0.17.0: BIOS-routed TUI on DOS, version banner, compiler PulseAudio link
Eremey Valetov
2026-05-03 12:25:41 -04:00
-
981aeabc45
Prepare for FreeDOS package submission
Eremey Valetov
2026-04-10 18:14:41 -04:00
-
54e5ecd6ec
Use far heap for TUI screen buffer on 16-bit DOS
Eremey Valetov
2026-04-10 14:37:10 -04:00
-
817c26f55f
Fix TUI null-pointer crashes and add DOS build docs
Eremey Valetov
2026-04-10 10:09:22 -04:00
-
71ff44828d
Add 16-bit real-mode DOS target -- 127KB standalone, no extender
Eremey Valetov
2026-04-10 06:32:47 -04:00
-
1ac5466399
Fix five issues found in QA pass 4
Eremey Valetov
2026-04-09 20:21:14 -04:00
-
8dc4d57ec8
Fix left_type not updated after type-promoting operators
Eremey Valetov
2026-04-09 18:18:10 -04:00
-
df3926ad17
Fix four bugs found in QA pass 2
Eremey Valetov
2026-04-09 17:52:55 -04:00
-
20ecdae938
Add --warn and --safe memory safety flags to the compiler
Eremey Valetov
2026-04-09 13:14:26 -04:00
-
8ff9ff22bf
Cross-compile to DOS with OpenWatcom -- 24/24 files, 154KB executable
Eremey Valetov
2026-03-30 19:42:45 -04:00
-
d1a58876e7
Add DOS HAL backend and OpenWatcom build for FreeDOS
Eremey Valetov
2026-03-30 18:12:24 -04:00
-
15af9ad12c
Replace em dashes with ASCII -- across all docs
Eremey Valetov
2026-03-30 16:50:43 -04:00
-
b22ccccf88
Update all public docs for v0.16.0 release
Eremey Valetov
2026-03-30 16:45:41 -04:00
-
f2ff435b07
Update roadmap: constant folding, FOR step=1 elision documented
Eremey Valetov
2026-03-30 06:54:47 -04:00
-
660ad77cd6
Compiler optimizations: constant folding, FOR step=1 elision
Eremey Valetov
2026-03-30 06:04:30 -04:00
-
378da254b9
Update roadmap: selective sync, fast-path expressions, FOR optimization
Eremey Valetov
2026-03-30 05:00:04 -04:00
-
d6375ae18a
Compiler optimizations: selective sync, fast-path, FOR simplification
Eremey Valetov
2026-03-30 04:59:35 -04:00
-
55587b1da3
Update roadmap: fast-path expressions, FOR int rounding optimizations
Eremey Valetov
2026-03-29 22:22:39 -04:00
-
7299e2daba
Compiler optimizations: fast-path expressions, FOR int rounding, div-by-zero
Eremey Valetov
2026-03-29 22:22:00 -04:00
-
4be33ff180
Update docs: compiler 69/69 tests pass (100%) — all tests green
Eremey Valetov
2026-03-29 20:48:58 -04:00
-
92e2a5a208
Compiler optimizations: RNG fix, dead code elimination — 69/69 tests pass
Eremey Valetov
2026-03-29 20:47:53 -04:00
-
8ee17b9e2a
Update docs: compiler 67/72 tests (93%), CHAIN/COMMON/RUN supported
Eremey Valetov
2026-03-29 19:41:49 -04:00
-
28055326bb
Compiler: CHAIN/COMMON/RUN "file" via runtime delegation — 67/72 (93%)
Eremey Valetov
2026-03-29 19:40:30 -04:00
-
a21f60cd89
Release v0.16.0: AOT compiler (89%), Jupyter kernel, Hardware I/O, string GC
Eremey Valetov
2026-03-29 19:30:16 -04:00
-
b3fdb02cc4
Update Sphinx roadmap: compiler 64/72 tests (89%) — only 5 remain
Eremey Valetov
2026-03-29 19:18:43 -04:00
-
ca6e216aad
Compiler: fix last 4 valid failures — 64/72 tests (89%)
Eremey Valetov
2026-03-29 19:17:56 -04:00
-
cc69054430
Update Sphinx roadmap: compiler 60/72 tests (83%)
Eremey Valetov
2026-03-29 18:48:58 -04:00
-
f2a593975f
Compiler: MID$ assign, CLEAR resize, ENVIRON delegate, PMAP/POINT — 60/72
Eremey Valetov
2026-03-29 18:48:09 -04:00
-
44f9609fe4
Update Sphinx roadmap: compiler 58/72 tests (81%)
Eremey Valetov
2026-03-29 18:27:36 -04:00
-
2c2a41b043
Compiler: graphics (PMAP/POINT/PSET), file delegation, BSAVE/BLOAD — 58/72
Eremey Valetov
2026-03-29 18:26:51 -04:00
-
3d23a096f7
Update Sphinx roadmap: compiler 50/72 tests (69%)
Eremey Valetov
2026-03-29 17:52:25 -04:00
-
73d2ece084
Compiler: file I/O via runtime delegation — 50/72 tests (69%)
Eremey Valetov
2026-03-29 17:51:41 -04:00
-
1dbb260c18
Update Sphinx roadmap: compiler 49/72 tests (68%)
Eremey Valetov
2026-03-29 17:21:23 -04:00
-
1756cb972c
Compiler: CVI/MKI$, MID$ assign, ON ERROR, ERR/ERL, all-line labels — 49/72
Eremey Valetov
2026-03-29 17:20:37 -04:00
-
01a3cd24ba
Update Sphinx roadmap: compiler 48/72 tests (67%)
Eremey Valetov
2026-03-29 16:12:12 -04:00
-
9d0eb579bc
Compiler: string comparison, ON ERROR GOTO, graphics delegation — 48/72
Eremey Valetov
2026-03-29 16:11:21 -04:00
-
5546ba42fe
Update Sphinx roadmap: compiler 46/72 tests pass (64%)
Eremey Valetov
2026-03-29 15:43:14 -04:00
-
e1c0b91522
Compiler: string concat, division semantics, PRINT USING null bytes — 46/72
Eremey Valetov
2026-03-29 15:42:27 -04:00
-
70e5fdbba8
Update Sphinx roadmap: compiler 43/72 tests pass
Eremey Valetov
2026-03-29 15:19:57 -04:00
-
6f81e769d5
Compiler: string concatenation, READ arrays, array assign — 43/72 tests
Eremey Valetov
2026-03-29 15:19:15 -04:00
-
8a058b0664
Update Sphinx roadmap: compiler 41/72 tests pass
Eremey Valetov
2026-03-29 14:53:42 -04:00
-
1dcc39f45b
Compiler: READ arrays, PRINT USING colon fix, array assign fix — 41/72
Eremey Valetov
2026-03-29 14:53:02 -04:00
-
e6a6bddb26
Update Sphinx roadmap: compiler 37/72 tests, DEF FN, DEFINT, rounding
Eremey Valetov
2026-03-29 14:29:25 -04:00
-
1858ad4b0c
Compiler: DEF FN, DEFINT, STRING$("c"), gw_cint rounding — 37/72 tests
Eremey Valetov
2026-03-29 14:28:28 -04:00
-
12c4ee7cbb
Update Sphinx roadmap: compiler has zero compile errors, 32/72 tests pass
Eremey Valetov
2026-03-29 14:05:36 -04:00
-
6b63f14b8c
Compiler: zero compile errors — all 72 programs compile, 32 pass
Eremey Valetov
2026-03-29 14:04:56 -04:00
-
cc7c27be27
Update Sphinx roadmap with compiler progress (32/72 tests, 2 compile errors)
Eremey Valetov
2026-03-29 13:32:06 -04:00
-
0e0052f9cf
Compiler: fix 16 of 18 compile errors — 32/72 tests passing
Eremey Valetov
2026-03-29 13:31:17 -04:00
-
4f4a8df412
Update Sphinx roadmap with compiler progress (27/72 tests)
Eremey Valetov
2026-03-29 12:17:47 -04:00
-
c3319a59c7
Compiler: PRINT USING, STRING$, INSTR, combined relationals — 27/72 tests
Eremey Valetov
2026-03-29 12:17:06 -04:00
-
948a75e70a
Update Sphinx roadmap with compiler progress (23/72 tests)
Eremey Valetov
2026-03-29 11:42:11 -04:00
-
3b6f8fdc80
Compiler: fix array names, combined relationals, expression type tracking
Eremey Valetov
2026-03-29 11:41:39 -04:00
-
2c9dc85b64
Update Sphinx roadmap with compiler progress (19/72 tests, arrays)
Eremey Valetov
2026-03-29 10:41:37 -04:00
-
7ff24ae85e
Compiler: add array support, fix number format, OPEN variable clash
Eremey Valetov
2026-03-29 10:41:02 -04:00
-
248dfaae11
Update Sphinx roadmap with compiler Phase 2 progress (17/72 tests)
Eremey Valetov
2026-03-29 10:23:10 -04:00
-
58c6d8c99d
Compiler Phase 2: WHILE/WEND, ON GOTO/GOSUB, MOD/IDIV/POW, statements
Eremey Valetov
2026-03-29 10:22:34 -04:00
-
e535250f6c
Fix compiler QA round 2: nested FOR/NEXT, remove unused code, clean warnings
Eremey Valetov
2026-03-29 10:03:46 -04:00
-
4dc255118a
Fix compiler QA: misleading indentation, DATA escaping, NEXT safety, bounds
Eremey Valetov
2026-03-29 09:38:15 -04:00
-
22206c012d
Update Sphinx docs with AOT compiler Phase 1
Eremey Valetov
2026-03-29 07:01:03 -04:00
-
d3b57d9f3b
Implement ahead-of-time compiler (Phase 1): BASIC to C via token stream
Eremey Valetov
2026-03-29 06:59:42 -04:00
-
eaa1166d8c
Fix QA findings: FRE GC safety, WAIT mask=0, ENVIRON leak, sentinel collision
Eremey Valetov
2026-03-29 06:15:16 -04:00
-
a510154405
Update Sphinx docs with Jupyter kernel enhancements (Sixel, INPUT, lexer)
Eremey Valetov
2026-03-29 06:04:31 -04:00
-
ba655fedbb
Add inline Sixel graphics, INPUT stdin support, Pygments lexer to kernel
Eremey Valetov
2026-03-29 06:03:50 -04:00
-
9ff3aaf104
Update Sphinx docs with Jupyter kernel, move to IDE integration next
Eremey Valetov
2026-03-29 05:52:49 -04:00
-
3e8aaa298b
Implement Jupyter kernel for GW-BASIC 2026
Eremey Valetov
2026-03-29 05:51:37 -04:00
-
65f99da932
Update Sphinx docs with string pool GC, remove string GC from limitations
Eremey Valetov
2026-03-29 04:58:29 -04:00
-
eb32021c19
Implement string space pool with compacting garbage collector
Eremey Valetov
2026-03-29 04:55:48 -04:00
-
724f823536
Update Sphinx docs with v0.15.0 gap-fill: ENVIRON, ERDEV, IOCTL, RESET, etc.
Eremey Valetov
2026-03-28 18:50:22 -04:00
-
612d3972dc
Implement remaining statement/function gaps: RESET, ENVIRON/ENVIRON$, ERDEV/ERDEV$, IOCTL/IOCTL$, LCOPY, DATE$/TIME$ assignment, CALL, COM
Eremey Valetov
2026-03-28 18:48:38 -04:00
-
d69c46330c
Update Sphinx docs with v0.15.0 Hardware I/O Simulator, bump version
Eremey Valetov
2026-03-28 18:30:04 -04:00
-
e100290dd3
Implement Hardware I/O Simulator (OUT/INP/WAIT/MOTOR, port emulation)
Eremey Valetov
2026-03-28 18:27:19 -04:00
-
0d9f29aa7a
Fix DRAW M/S/A bugs, add TA rotation, =variable; substitution, X substring execution
Eremey Valetov
2026-03-21 02:48:17 -04:00
-
3f3104c385
Implement MBF binary file compatibility, fix binary loader null-byte truncation, update to v0.14.0
Eremey Valetov
2026-03-21 01:38:53 -04:00
-
c488cb526d
Update Sphinx docs with v0.14.0 roadmap and fix stale references
Eremey Valetov
2026-03-11 08:11:13 -04:00
-
000116b2a2
Fix POINT coordinate mapping, remove orphaned palette array, expand tests
Eremey Valetov
2026-03-10 22:38:42 -04:00
-
0bacfcef6c
Implement VIEW/WINDOW/PALETTE, PMAP, fix MBF float format, update to v0.13.0
Eremey Valetov
2026-03-10 22:20:58 -04:00
-
4551c88a50
Implement BSAVE/BLOAD, TUI color, extended PEEK/POKE, update to v0.12.0
Eremey Valetov
2026-03-01 13:37:05 -05:00
-
0743757029
Implement DEF SEG/PEEK/POKE, GET/PUT sprites, fix PRINT USING, update to v0.11.0
Eremey Valetov
2026-03-01 13:07:28 -05:00
-
e7f35c21ff
Implement binary SAVE/LOAD, INKEY$ extended keys, golden tests, update to v0.10.0
Eremey Valetov
2026-03-01 12:25:47 -05:00
-
5574ec6f93
Add OUTPUT, RANDOM, and test to .gitignore
Eremey Valetov
2026-02-27 17:37:39 -05:00
-
3fa8c6f034
Implement EDIT statement and ON TIMER/ON KEY event trapping, update to v0.9.0
Eremey Valetov
2026-02-27 17:29:09 -05:00
-
5105ecafd6
Allow RND without parentheses, update Sphinx docs to v0.8.0
Eremey Valetov
2026-02-22 14:09:18 -05:00
-
35e4b12131
Implement LPRINT and LLIST with configurable printer output
Eremey Valetov
2026-02-22 13:55:27 -05:00
-
b5bb78a174
Replace magic numbers in stack bounds checks with named constants
Eremey Valetov
2026-02-22 13:35:39 -05:00
-
701d51938c
Fix CI: apt-get update before installing libpulse-dev
Eremey Valetov
2026-02-22 13:24:46 -05:00
-
c68167cc65
Add --full flag for adaptive terminal-sized TUI, dynamic screen buffer
Eremey Valetov
2026-02-22 13:22:52 -05:00
-
da6b513b07
Add AUTO, RENUM, DELETE, COMMON; fix LIST range parsing
Eremey Valetov
2026-02-22 12:58:47 -05:00
-
ece018d06a
Implement DATE$/TIME$/TIMER, FILES, SHELL, CHDIR, MKDIR, RMDIR
Eremey Valetov
2026-02-22 12:40:18 -05:00
-
ad21350003
Add full-screen TUI editor, DOSBox-X compat testing, rename to GW-BASIC 2026
Eremey Valetov
2026-02-22 12:18:17 -05:00
-
c2684712af
Add Sphinx documentation site with GitHub Pages deployment
Eremey Valetov
2026-02-15 16:56:02 -05:00
-
adb65135ed
Update README for SOUND/PLAY, RESTORE fix, 50 tests
Eremey Valetov
2026-02-15 16:28:44 -05:00
-
691031a7f9
Fix RESTORE with line number, add 8 Rosetta Code test programs
Eremey Valetov
2026-02-15 16:22:55 -05:00