34 lines
1.6 KiB
Markdown
34 lines
1.6 KiB
Markdown
# Roadmap
|
|
|
|
## Planned Features
|
|
|
|
- **PRINT USING edge cases** — Thousands separator (`,`), `**` asterisk fill,
|
|
`**$` combined, `^^^^` scientific notation, `&` full-string format
|
|
- **Binary SAVE/LOAD** — Protected (,P) and tokenized binary formats
|
|
- **DEF SEG / PEEK / POKE** — Memory-mapped I/O emulation for common BIOS/screen
|
|
addresses
|
|
- **Compatibility testing** — Automated test suite comparing output against
|
|
original GWBASIC.EXE under DOSBox-X
|
|
- **GET/PUT** — Sprite capture and blit for graphics mode
|
|
|
|
## IDE and Notebook Integration
|
|
|
|
- **Jupyter kernel for GW-BASIC** — A Jupyter Notebook kernel that runs
|
|
GW-BASIC programs cell-by-cell, with rich output for `PRINT`, inline graphics
|
|
rendering for drawing commands, and interactive `INPUT` via notebook widgets.
|
|
Similar in spirit to [foxkernel](https://github.com/evvaletov/foxkernel).
|
|
- **JetBrains plugin (IntelliJ/CLion)** — Full-featured language plugin with
|
|
syntax highlighting, code completion, line number navigation, run
|
|
configurations, debugger integration (breakpoints via `STOP`, variable
|
|
inspection), structure view (line number outline), and error annotations.
|
|
- **VS Code extension** — Language extension providing syntax highlighting
|
|
(TextMate grammar), snippets, run/debug tasks, integrated terminal runner,
|
|
and Language Server Protocol support for diagnostics and hover info.
|
|
|
|
## Known Limitations
|
|
|
|
- No binary/protected file format support (ASCII only)
|
|
- `PEEK`/`POKE` are no-ops
|
|
- String garbage collection not implemented (uses `malloc`/`free` instead)
|
|
- Maximum 256 variables, 64 arrays, 16 FOR nesting, 24 GOSUB nesting
|