ChipsProcessorsFantasy & virtual CPUs › PICO-8 virtual machine

PICO-8 virtual machine

2015

Lexaloffle's fantasy console, a self-imposed-limits virtual machine for making, sharing and playing tiny Lua games.

PICO-8 virtual machine Online Emulator

Play PICO-8 virtual machine using WebAssembly directly in your browser.

Configurations

ConfigurationEmulatorMachineOSLegal
PICO-8 Education Edition (editor)PICO-8 Education EditionPICO-8closedOpen ⛶

Machines

Emulators

EmulatorTypeLicenseSite
FAKE-08downloadableMITWebsite ↗
PICO-8bothCommercialWebsite ↗
PICO-8 Education EditiononlineFreewareWebsite ↗
PICOLOVEdownloadableMITWebsite ↗
tac08downloadableMITWebsite ↗

Reference & documentation

External technical references for programming PICO-8 virtual machine and for writing emulators.

ResourceTypeNotes
picotool: .p8 and .p8.png format support ↗FormatReads/writes text .p8 and PNG-encoded .p8.png carts
PICO-8 API Cheatsheet (RAM layout) ↗Memory mapRAM layout: gfx, map, sfx, screen addresses
PICO-8 Manual: Lua programming & lifecycle ↗ProgrammingOfficial Lua, _update/_draw callbacks, program structure
PICO-8 language grammar (zepto8 doc) ↗ProgrammingEBNF grammar of PICO-8 Lua dialect
PICO-8 User Manual (Lexaloffle, official) ↗ReferenceOfficial API reference, memory, GPIO, callbacks
PICO-8 API Cheatsheet (all functions) ↗ReferenceCompact all-function API reference with ranges
FAKE-08 PICO-8 runtime (C++) ↗SourceOpen-source C++ PICO-8 emulator implementation
zepto8 emulator (samhocevar) ↗SourceReverse-engineered PICO-8 emulator with technical docs
z8lua: PICO-8 Lua dialect fork ↗SourceLua fork with fixed-point, syntax extensions for emulators
picotool cartridge library (dansanderson) ↗ToolPython tools to parse/build/minify cartridges