Developer Documentation¶
This section contains implementation notes, design decisions, and development history for the MBASIC project.
Last Updated: 2026-08-21 Total Documents: 52
What's Here¶
This directory contains documentation for developers working on MBASIC:
- Implementation Notes - How features were implemented
- Design Decisions - Why things work the way they do
- Testing Documentation - Test coverage and methodologies
- Work in Progress - Current development tasks
- Bug Fixes - Historical fixes and their explanations
Organization¶
Documents are organized chronologically as they were created during development. Use the search function or browse by topic below.
For Contributors¶
If you're contributing to MBASIC:
1. Read .claude/CLAUDE.md for coding guidelines
2. Check WORK_IN_PROGRESS.md for current tasks
3. Review relevant implementation docs before making changes
4. Add new docs here when implementing significant features
Z80/CP/M Toolchain¶
The compiler backend targets CP/M through a Z80 C toolchain and a CP/M emulator:
Role Preferred Supported alternate
C compiler uc80 (+ um80, ul80) z88dk (zcc)
CP/M emulator cpmemu tnylpo
uc80 and cpmemu are the default pair. z88dk and tnylpo remain supported and are still
the route for Microsoft Binary Format floats, true Intel 8080 output, and INP/OUT/WAIT
port I/O — but they are not required. Read
Toolchain Policy before editing any doc that names them, and
Compiler Setup to install either pair.
Browse by Category¶
UI Implementation¶
- Curses Program Keyboard
- Ios Ipad Web Ui Todo
- Tk Program Keyboard
- Web Error Logging
- Web Multiuser Deployment
- Web Program Keyboard
Language Features¶
Testing & Quality¶
File I/O¶
- Backup Nonversioned Files
- Checkpoint Validation
- Docs Url Configuration
- Redis Per Session Settings
- Redis Session Storage Setup
- Renum Serialization Fixes
- Single Precision
- Usage Tracking Integration
Debugging & Errors¶
- Cli Input Handling Fixes
- Random Fixes Todo
- Uc80 Bugs Todo
- Usage Tracking Debug
- Usage Tracking Enhanced Debug
Settings & Configuration¶
Refactoring & Cleanup¶
Work in Progress¶
Other¶
- Compiler Cpu Targets
- Compiler Setup
- Compiler Variable Types
- Compiler Z88Dk Path Change
- Edit Mode Typeahead
- Kubernetes Deployment Plan
- Kubernetes Deployment Setup
- Kubernetes Deployment Summary
- Linux Mint Developer Setup
- Macos Libedit Readline
- Mbasic 521 Sources
- No Memory Model
- Number Formatting
- Path Based Tools
- Persistent Issues Analysis
- Persistent Issues Answer
- Persistent Issues Summary
- Rnd Algorithm
- Statement Attempt Undo
- String Pool Changes 2025 11 23
- Tnylpo Setup
- Toolchain Policy
- Windows Console Keys
- Windows Import Compatibility
See Also¶
- MBASIC Help - User-facing documentation
- Search function (top of page) - Find docs by keyword