CPU
Cycle-accurate 65C02
Per-instruction cycle counting, decimal mode, page-crossing penalties — at a faithful 1.023 MHz.
Browser-Based Emulation · Apple //e Enhanced
A cycle-accurate Apple IIe Enhanced — 65C02, 128 KB, 1.023 MHz — compiled from C++ to WebAssembly, rendered in WebGL, sounding exactly as it should. Complete with a suite of period-correct expansion cards, right down to fully emulated dot-matrix printers.
CPU
Cycle-accurate 65C02
Per-instruction cycle counting, decimal mode, page-crossing penalties — at a faithful 1.023 MHz.
Video
Six video modes
Text 40/80, LoRes, HiRes, Double LoRes & HiRes, with NTSC artifact colors and per-scanline rendering.
Audio
Mockingboard sound
Dual AY-3-8910 chips in stereo, plus the built-in speaker with anti-aliased samples.
Storage
Disk II & SmartPort
GCR encoding with write support for DSK, DO, PO, NIB, WOZ; hard drives via HDV and 2MG.
Display
CRT shader effects
Scanlines, curvature, phosphor glow, vignette, NTSC fringing — or green, amber, white monochrome.
Persistence
Save states
Autosave every five seconds, five manual slots, full machine serialization.
Seven slots with hot-swappable cards, faithful to the IIe's legendary expandability.
Two 5.25″ floppy drives with stepper-motor emulation and GCR encode/decode.
Dual AY-3-8910 sound chips and dual VIA 6522 timers — stereo across six tone channels and two noise channels.
ProDOS-compatible real-time clock and calendar services.
A full Z80 co-processor at 2.041 MHz with hardware address translation — CP/M software on the Apple II.
ACIA 6551 serial with WebSocket-to-TCP proxy and Hayes modem emulation. Also drives the ImageWriter printers.
Hard drive controller supporting two block devices — HDV, PO and 2MG images for high-capacity storage.
Centronics printer interface running the original 341-0005 firmware — drives the Epson FX-80 and Apple DMP.
Connect a printer just like the real hardware, send output with PR#1, and watch your documents build up dot by dot on fanfold paper — in true carriage-travel order, with the unmistakable buzz of a nine-pin head at authentic speed. Standard fanfold presets or drag-to-size custom paper, colour ribbons, print history, and PNG / PDF / ZIP export.
Colour · NLQ · MouseText
B/W · Correspondence
ESC/P · Roman & Italic
Parallel · Bit-image
“The entire dot-matrix subsystem — four printer models, the mechanical head and sound model, colour ribbon rendering, paper handling, history and export — was designed and built by Shawn Bullock.”
Contributor Spotlight
Breakpoints, watchpoints, step-over/out, conditional expressions, and beam breakpoints for position-based debugging.
Hex/ASCII across the full 128 KB with a live read/write heat map.
Merlin-syntax 65C02 assembler; recursive-descent disassembly with flow analysis and symbols.
Applesoft tokenizer and variable inspector; DOS 3.3 / ProDOS browsing with syntax highlighting.
Real-time view of every IIe soft switch, stack viewer, zero-page watch, instruction trace.
Print the current //e screen straight to paper as a bit-image graphics dump, exactly as the ROM would.
Core
C++ → WebAssembly via Emscripten with full LTO. CPU, MMU, video, audio and every card run at native speed.
Timing
Master clock driven by Web Audio at 48 kHz — precise timing, background-tab support, no A/V drift.
Threading
The core runs in a Web Worker behind an ES6 Proxy wrapper — the UI never blocks.
Rendering
Per-scanline WebGL catches mid-frame mode changes, through a configurable CRT shader pipeline.
A full MCP server and AG-UI event protocol let LLMs drive the emulator — multiple named tabs, broadcast or targeted commands, sandbox mode.
No installation required. Just click and start computing.
RetroTech71 · Mike's personal projects & experiments · © 2026