Implement binary SAVE/LOAD, INKEY$ extended keys, golden tests, update to v0.10.0
Binary SAVE/LOAD: SAVE now writes tokenized binary by default (0xFF header format), matching original GW-BASIC behavior. SAVE "file",A for ASCII. LOAD auto-detects binary vs ASCII from the first byte. Command-line file loading also auto-detects, so binary .BAS files just work. INKEY$ extended keys: arrow keys, Home/End/PgUp/PgDn, Insert/Delete, and F1-F10 now return the correct CHR$(0) + scan_code two-byte sequences per the IBM PC convention. Refactored event trap key parsing to use tui_read_key() instead of duplicating escape sequence parsing. Golden-file regression tests: generated .expected output files for 55 of 58 test programs (3 timing-dependent tests excluded). The test runner now reports compat match status alongside pass/fail. Classic programs: added Hamurabi, Lunar Lander, Gunner, and Diamond from David Ahl's BASIC Computer Games (1978) in tests/classic/ for manual compatibility testing. Docs updated with compiler roadmap item and hardware I/O simulator plan.
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
X 1 2 3 4 5 6 7 8 9 10 11 12
|
||||
---------------------------------------------------
|
||||
1 1 2 3 4 5 6 7 8 9 10 11 12
|
||||
2 4 6 8 10 12 14 16 18 20 22 24
|
||||
3 9 12 15 18 21 24 27 30 33 36
|
||||
4 16 20 24 28 32 36 40 44 48
|
||||
5 25 30 35 40 45 50 55 60
|
||||
6 36 42 48 54 60 66 72
|
||||
7 49 56 63 70 77 84
|
||||
8 64 72 80 88 96
|
||||
9 81 90 99 108
|
||||
10 100 110 120
|
||||
11 121 132
|
||||
12 144
|
||||
Multiplication table OK
|
||||
Reference in New Issue
Block a user