Machines › Handheld Gaming › Panic › Panic Playdate
Panic Playdate
2022
The Playdate (Panic, 2022) is a small yellow handheld with a 400x240 one-bit reflective Sharp memory-LCD screen and a mechanical crank on its side. It is built around an STMicroelectronics STM32F746 system-on-chip, whose processor is an ARM Cortex-M7.
Panic Playdate Online Emulator
Play Panic Playdate using JavaScript directly in your browser.
Controls
Runs real compiled-C Playdate games on an in-browser ARM Cortex-M7 core with the Playdate C API reimplemented in JavaScript (High-Level Emulation). The default is "Crank Orbit", a self-authored CC0 game compiled with clang for thumbv7em: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to speed the orbiting comet and swing the hand, move the square with the arrow keys, and press Z/X (B/A) for notes. A looping melody plays the moment you press Sound. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP real Thumb-2 instructions, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, s0-s31) and the real memory map (FLASH, SRAM, the 1-bit framebuffer, the FMC heap) live.
Runs real Playdate Lua games on an in-browser Lua VM (fengari) with the playdate.* SDK reimplemented in JavaScript. The default is "Crankit", a self-authored crank demo: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to spin the hand and bend the melody, press the Sound button to hear it, and use the arrow keys + Z/X (B/A) for the d-pad and buttons. Pick another game (Tennis is a crank-controlled Pong, Snake a grid game, Hello a movement demo) from the list. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP the Lua one source line at a time, set breakpoints on Lua lines, and watch the call stack, locals and crank/button state live.
Runs real compiled-C Playdate games on an in-browser ARM Cortex-M7 core with the Playdate C API reimplemented in JavaScript (High-Level Emulation). The default is "Crank Orbit", a self-authored CC0 game compiled with clang for thumbv7em: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to speed the orbiting comet and swing the hand, move the square with the arrow keys, and press Z/X (B/A) for notes. A looping melody plays the moment you press Sound. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP real Thumb-2 instructions, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, s0-s31) and the real memory map (FLASH, SRAM, the 1-bit framebuffer, the FMC heap) live.
Runs real Playdate Lua games on an in-browser Lua VM (fengari) with the playdate.* SDK reimplemented in JavaScript. The default is "Crankit", a self-authored crank demo: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to spin the hand and bend the melody, press the Sound button to hear it, and use the arrow keys + Z/X (B/A) for the d-pad and buttons. Pick another game (Tennis is a crank-controlled Pong, Snake a grid game, Hello a movement demo) from the list. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP the Lua one source line at a time, set breakpoints on Lua lines, and watch the call stack, locals and crank/button state live.
Runs real compiled-C Playdate games on an in-browser ARM Cortex-M7 core with the Playdate C API reimplemented in JavaScript (High-Level Emulation). The default is "Crank Orbit", a self-authored CC0 game compiled with clang for thumbv7em: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to speed the orbiting comet and swing the hand, move the square with the arrow keys, and press Z/X (B/A) for notes. A looping melody plays the moment you press Sound. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP real Thumb-2 instructions, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, s0-s31) and the real memory map (FLASH, SRAM, the 1-bit framebuffer, the FMC heap) live.
Runs real Playdate Lua games on an in-browser Lua VM (fengari) with the playdate.* SDK reimplemented in JavaScript. The default is "Crankit", a self-authored crank demo: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to spin the hand and bend the melody, press the Sound button to hear it, and use the arrow keys + Z/X (B/A) for the d-pad and buttons. Pick another game (Tennis is a crank-controlled Pong, Snake a grid game, Hello a movement demo) from the list. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP the Lua one source line at a time, set breakpoints on Lua lines, and watch the call stack, locals and crank/button state live.
Runs real Playdate Lua games on an in-browser Lua VM (fengari) with the playdate.* SDK reimplemented in JavaScript. The default is "Crankit", a self-authored crank demo: turn the CRANK with your MOUSE WHEEL (or the on-screen dial) to spin the hand and bend the melody, press the Sound button to hear it, and use the arrow keys + Z/X (B/A) for the d-pad and buttons. Pick another game (Tennis is a crank-controlled Pong, Snake a grid game, Hello a movement demo) from the list. Click the screen first so it captures the keyboard. Open the debugger, or add ?debug, to single-STEP the Lua one source line at a time, set breakpoints on Lua lines, and watch the call stack, locals and crank/button state live.
Configurations
| Configuration | Emulator | Machine | OS | Legal | |
|---|---|---|---|---|---|
| Crank Orbit | Playdate (ARM) | Panic Playdate | open | Open ⛶ | |
| Crankit | Playdate (Lua) | Panic Playdate | open | Open ⛶ | |
| Crank Pong | Playdate (ARM) | Panic Playdate | open | Open ⛶ | |
| Tennis | Playdate (Lua) | Panic Playdate | open | Open ⛶ | |
| Maze Runner | Playdate (ARM) | Panic Playdate | open | Open ⛶ | |
| Snake | Playdate (Lua) | Panic Playdate | open | Open ⛶ | |
| Hello Playdate | Playdate (Lua) | Panic Playdate | open | Open ⛶ |
Downloads — ROMs & software
| Title | Type | Size (bytes) | Legal | |
|---|---|---|---|---|
| Maze Runner | game | 0 | open | Download ↓ |
| Crank Orbit | demo | 0 | open | Download ↓ |
| Crank Pong | game | 0 | open | Download ↓ |
| Crankit | demo | 0 | open | Download ↓ |
| Hello Playdate | demo | 0 | open | Download ↓ |
| Snake | game | 0 | open | Download ↓ |
| Tennis | game | 0 | open | Download ↓ |
Downloads — ROMs & software
| Title | Type | Size (bytes) | Legal | |
|---|---|---|---|---|
| Maze Runner | game | 0 | open | Download ↓ |
| Crank Orbit | demo | 0 | open | Download ↓ |
| Crank Pong | game | 0 | open | Download ↓ |
| Crankit | demo | 0 | open | Download ↓ |
| Hello Playdate | demo | 0 | open | Download ↓ |
| Snake | game | 0 | open | Download ↓ |
| Tennis | game | 0 | open | Download ↓ |
Downloads — ROMs & software
| Title | Type | Size (bytes) | Legal | |
|---|---|---|---|---|
| Maze Runner | game | 0 | open | Download ↓ |
| Crank Orbit | demo | 0 | open | Download ↓ |
| Crank Pong | game | 0 | open | Download ↓ |
| Crankit | demo | 0 | open | Download ↓ |
| Hello Playdate | demo | 0 | open | Download ↓ |
| Snake | game | 0 | open | Download ↓ |
| Tennis | game | 0 | open | Download ↓ |
Chips
Emulators
| Emulator | Type | License | Site |
|---|---|---|---|
| Playdate (ARM) | online | MIT core · CC0 games | Website ↗ |
| Playdate (Lua) | online | MIT (fengari) · PD/CC0 games | Website ↗ |