papyDeck

Specifications

Video

Resolution640 × 480 at 60 Hz (4:3), 18.4 Mpx/s active
OutputHDMI / DVI
Depth8 bits per pixel, palettised: index → CLUT → RGB565 → RGB888 on the wire
Palette256 entries per bank, 4 banks, bank selected per sprite — up to 1 024 simultaneous colours
Sprites2 500 to 3 900 sprite-pixels per scanline, i.e. 80 to 120 sprites of 32 px width per line
Sizesarbitrary and animated; no fixed tile grid
Resident art450 KB in SRAM, allocated in 256-byte blocks
Planessprite overlay over background, front/behind priority per pixel

For comparison, a Neo Geo manages 1 536 sprite-pixels per line — about half.

Compute

Processors3 × RP2350B, dual Cortex-M33 each, six cores total
Clock252 MHz on all three
Synchronisationgenlock from a shared 12 MHz MEMS oscillator on the XIN pins
SRAM520 KB per chip, 1.5 MB total

Storage

NOR3 × 16 MB, one per chip on its dedicated XIP port — sprite atlas, background, code
Measured throughput33 MB/s, i.e. 550 KB reloadable per frame
Removablemicro-SD on RP1, with card detect

Installing a 12 MB game takes about 32 seconds, after which startup is instant. This is a cartridge model, not a loading-screen model.

Audio

DigitalHDMI data islands generated by RP3 — no extra components
AnalogueI2S DAC on RP1: 4-pole jack and a 2.5 W class-D amplifier into 4 Ω
Sample rate48 kHz, from an exact PIO divider off 252 MHz

Both paths exist because many PC monitors have neither speakers nor a headphone output.

Connectivity

WirelessWi-Fi, Bluetooth Classic (BR/EDR) and BLE
GamepadsDualShock 4, DualSense, Switch Pro, 8BitDo… through Bluepad32
WiredUSB-C 2.0 on RP1, the only chip carrying USB for firmwares update
Debugthree SWD connectors, one per chip

Bluetooth Classic is not a bonus feature: it is what living-room gamepads speak. BLE-only modules will not do.