1980s Computing Meets Modern AI
Write 8-bit assembly. Program in BASIC. Code in 25 languages. Chat with Claude or GitHub Copilot. RetroCode is a free desktop IDE that brings back the magic of the TRS-80, Apple II, and Commodore 64 — with AI assistants built right in.
v1.3.0 • macOS 12+ (Apple Silicon) • Windows 11+ • Free • No account required
Assembly, BASIC, and Code — switch between them with a click. Each mode has its own file tabs, editor, and reference panels. Learn how computers really work, then build something real.
A simple 8-bit CPU with 36 instructions. Load values into registers, do math, branch on flags, and draw pixels on a 64x48 graphics display. Step through one instruction at a time and watch everything change.
A green-screen terminal with a > prompt. Type BASIC just like on a TRS-80, Apple II, or Commodore 64. Write programs with line numbers, run them instantly, and draw graphics with PLOT, DRAW, and CIRCLE.
Syntax highlighting for 25 languages. Multiple file tabs, find/replace, autocomplete, bracket matching, and up to 4 concurrent terminal sessions. Everything you need for real-world coding alongside the retro stuff.
Every mode gets its own set of file tabs — up to 5 per mode. Switch between files, name them, save them, and pick up right where you left off. Session recovery survives crashes and reboots.
Start from "What is a CPU?" and build up to drawing graphics and writing complete programs. Every lesson has runnable code you can modify and experiment with.
Choose your aesthetic. From retro green terminal to high contrast accessibility.
Chat with Claude or GitHub Copilot inside RetroCode. Your AI assistant can write code, run scripts, manage files, and switch between 11 models — all through the built-in chat panel. This feature is in active development.
Uses your Claude Max/Pro subscription through Claude Code CLI.
claude mcp add retrocode node ~/mcp-server.js/retrocode in Claude CodeUses your Copilot subscription. Choose from GPT-4.1, Claude, Gemini, and more.
npm i -g @github/copilot @github/copilot-sdkcopilot -i "auth login"node ~/copilot-bridge.js --model gpt-4.1Talk through the RetroCode chat panel. Your AI responds in real time inside the app.
AI writes directly in your editor with full syntax highlighting for 25 languages.
Save files to disk from the editor. Create and manage your project files via chat.
Execute programs in the embedded terminal. Run assembly, BASIC, or any script.
AI reads and understands what you've written, then suggests improvements.
Move between Assembly, BASIC, and Code editor. Manage tabs and create new files.
| Category | Tools |
|---|---|
| Editor | get_editor, set_editor, append_editor |
| Files | save_file, read_file |
| Tabs | list_tabs, switch_tab, new_tab |
| Terminal | open_terminal, close_terminal, terminal, terminal_output |
| Chat | chat, get_chat, heartbeat |
| Control | run, stop, switch_mode, get_mode |
| Reference | asm_reference, basic_reference |
| System | health, list_languages |
36 instructions: arithmetic, logic, branching, stack, I/O, and graphics. Two registers (A, B), 256 bytes of memory, zero and carry flags.
40+ commands including PRINT, INPUT, FOR/NEXT, GOSUB, arrays, DATA/READ, PEEK/POKE, virtual file system, and INKEY$ for real-time games.
Bitmap display with PLOT, DRAW, CIRCLE, BOX, FILL. Draw sine waves, fractals, games, and animations.
26 assembly lessons and 25 BASIC lessons. Start from scratch and build up to drawing graphics and writing complete programs.
19 ASM examples and 35 BASIC samples — Snake, Breakout, math plots, trig functions, and diagnostic suites.
The assembler supports labels for jump targets — no manual address counting. Write readable code with LOOP:, DONE:, SKIP:.
Execute one instruction at a time. Watch registers change, flags toggle, and the program counter advance through your code.
Default (green terminal), Standard, Dark, Light, RPG, and High Contrast. Choose your aesthetic.
Save and load .asm, .bas, and .hex files. Your programs are real files you can share and edit.
A full-featured text editor with syntax highlighting for 25 languages — C, C++, Java, Python, Rust, Go, Swift, Kotlin, Ruby, and more. Includes find/replace, autocomplete, bracket matching, go-to-line, comment toggle, and word wrap.
Up to 4 concurrent terminal sessions with tab switching. Built-in xterm.js with shell selection, available in all three modes.
Directory tree navigation for opening and managing files directly within the IDE.
Choose Claude, GitHub Copilot, or MorselHub as your AI provider. MorselHub adds iMessage and webhook support. Write code, run scripts, manage files — all from the built-in chat panel.
Up to 5 file tabs in each mode — Assembly, BASIC, and Code. Independent content, session recovery, and full keyboard shortcuts.
The CPU has 36 instructions organized into 7 categories. All values are 8-bit (0x00 to 0xFF).
| Hex | Mnemonic | Description |
|---|---|---|
| Data Movement | ||
| 00 | NOP | No operation |
| 01 | LDA addr | Load A from memory address |
| 02 | LDI val | Load immediate value into A |
| 03 | STA addr | Store A to memory address |
| 04 | LDB addr | Load B from memory address |
| 05 | LBI val | Load immediate value into B |
| 06 | STB addr | Store B to memory address |
| 07 | MOV | Copy A to B |
| Arithmetic | ||
| 10 | ADD | A = A + B |
| 11 | SUB | A = A - B |
| 12 | INC | A = A + 1 |
| 13 | DEC | A = A - 1 |
| 14 | ADI val | A = A + immediate |
| 15 | MUL | A = A * B |
| 16 | DIV | A = A / B |
| 17 | MOD | A = A % B |
| 18 | PUSH | Push A onto stack |
| 19 | POP | Pop stack into A |
| Logic | ||
| 20 | AND | A = A AND B |
| 21 | OR | A = A OR B |
| 22 | XOR | A = A XOR B |
| 23 | NOT | A = NOT A |
| 24 | SHL | Shift A left |
| 25 | SHR | Shift A right |
| 26 | CPI val | Compare A with immediate |
| Compare & Branch | ||
| 30 | CMP | Compare A with B |
| 31 | JMP addr | Jump to address |
| 32 | JZ addr | Jump if zero flag set |
| 33 | JNZ addr | Jump if zero flag clear |
| 34 | JC addr | Jump if carry flag set |
| I/O & Graphics | ||
| 40 | OUT | Output A to display |
| 41 | INP | Input to A |
| 50 | PLT | Plot pixel at (A, B) |
| 51 | UPL | Unplot pixel at (A, B) |
| 52 | CLG | Clear graphics |
| FF | HLT | Halt |
A complete BASIC interpreter with 40+ commands, math and string functions, graphics, and a virtual file system.
PRINT, INPUT, LET, GOTO, IF/THEN, FOR/NEXT/STEP, GOSUB/RETURN, REM, END, CLS, DIM, DATA/READ/RESTORE, ON GOTO/GOSUB, STOP/CONT, POKE/PEEK
INT, RND, ABS, SQR, SGN, SIN, COS, TAN, LOG, EXP
LEN, LEFT$, RIGHT$, MID$, CHR$, ASC, TAB, VAL, STR$
INKEY$ — non-blocking key detection for real-time games. Supports arrow keys, WASD, SPACE, ENTER, ESC, and all printable characters. Game loops run at ~60fps.
PLOT, UNPLOT, DRAW, CIRCLE, BOX, FILL, GCLS, COLOR, LOCATE
SAVE$, LOAD$, DIR, DEL — persistent storage in the browser
In 7th grade, Senzall's dad surprised him with a TRS-80 Color Computer — powered by the Motorola 6809 CPU that his dad's team at Motorola helped build. Before that, he'd been writing BASIC programs at Radio Shack store windows since age 12. By 1983 he had an IBM PC, learning 8088 assembly and Turbo Pascal.
RetroCode recreates that experience for a new generation. The same hands-on learning — loading registers, branching on flags, plotting pixels — but now with Claude or GitHub Copilot as your coding partner. Ask it to explain an instruction, write a BASIC game, or debug your assembly code. It's 1980s computing meets 2026 AI.
Full documentation is available in the app (Learn tab + Reference panels) and online:
Free to download and use. No account required. No internet required after download.