Look inside the machine
aarch64-playground is a hand-written ARMv8 emulator and visual debugger. Paste a program, assemble it, and watch the registers, the stack, and memory update as each instruction runs.
jump table
what it does
Hand-written interpreter
A hand-written Rust interpreter, compiled to WebAssembly, executes AArch64 in the browser tab.
Visual debugger
Watch registers, the stack, memory, and the console update as each instruction runs.
Step and step back
Step one instruction at a time, or rewind through the snapshot ring.
Hosted runtime
A hosted runtime backs the C standard library and Linux syscalls for real input and output.
Course toolchain
m4 macros, GAS sections, and the literal pool assemble like the course toolchain.
Command-line arguments
Pass command-line arguments to a program through argc and argv.
Embeddable surface
The same surface embeds into lessons and exercises, not only the full playground.
Bounded sandbox
Step and memory ceilings keep every program inside a bounded sandbox.
Three themes
Dark, light, and high-contrast themes, all driven by design tokens.
Installable and offline
Installable as a progressive web app and usable offline after the first load.