# Game Boy gaming on an e-paper handheld

Turn an e-paper touchscreen into a Game Boy handheld, with an experimental Claude-written compiler aimed at faster emulation.

## Hardware
M5PaperS3; microSD card

The ESP32-S3 drives the M5PaperS3's raw e-paper interface at a high refresh rate, provides touch controls and plays buzzer audio. A proof-of-concept compiler translates Game Boy instructions into Xtensa LX7 instructions.

## Shopping list

Parts for one build. Reuse equipment you already own. Quantities are planning quantities unless the creator explicitly specifies a count; kit contents are not additional purchases.

Quantities are for one build. Unless marked source-specified, they are planning quantities; confirm kit contents and the chosen configuration before ordering.

### Confirm before buying
- No exact supported Bluetooth controller is established. Check remaining stock and exact PaperS3 revision before buying.

### 1 × M5PaperS3
- Requirement: Required
- Quantity basis: Planning quantity for one build; check the selected configuration
- Purpose: Original e-paper device.
- Notes: Creator and manufacturer mark this device end of life. PaperMono or another successor is not a verified drop-in target.
- Destination: https://shop.m5stack.com/products/m5papers3-esp32s3-development-kit
- Match: Product page
- Link review: Page checked; stock not assessed
- Evidence: Creator source
- Source: https://hackster.io/wenting-zhang/60fps-eink-gameboy-emulator-on-m5papers3-57e4e5

### 1 × microSD card
- Requirement: Required
- Quantity basis: Planning quantity for one build; check the selected configuration
- Purpose: Firmware, operating system or project storage.
- Notes: Store authorized game data and saves; confirm the emulator’s card-format requirements.
- Sourcing: No exact purchase link verified; confirm the model and requirements above before ordering.
- Evidence: Creator source
- Source: https://hackster.io/wenting-zhang/60fps-eink-gameboy-emulator-on-m5papers3-57e4e5

### 1 × USB-C data cable
- Requirement: Required
- Quantity basis: Planning quantity for one build; check the selected configuration
- Purpose: Connect to the computer for programming or data.
- Notes: A charge-only cable cannot flash firmware. Example requires a USB-A host port. If your computer has only USB-C, use an appropriate USB-C data cable instead. Reuse the device’s included cable where possible; this is not a standalone power-supply recommendation.
- Destination: https://www.adafruit.com/product/4474
- Match: Accessory example: USB-A to USB-C, 1 m, data capable
- Link review: Page checked; stock not assessed
- Evidence: Setup requirement — check against your configuration
- Source: https://hackster.io/wenting-zhang/60fps-eink-gameboy-emulator-on-m5papers3-57e4e5
- Source: https://www.adafruit.com/product/4474

### 1 × Computer for setup
- Requirement: Tool
- Quantity basis: Planning quantity for one build; check the selected configuration
- Purpose: Build, configure or flash the software.
- Sourcing: Use existing equipment or match the specification above. No exact purchase link verified.
- Evidence: Setup requirement — check against your configuration
- Source: https://hackster.io/wenting-zhang/60fps-eink-gameboy-emulator-on-m5papers3-57e4e5

### 1 × Bluetooth controller
- Requirement: Optional
- Quantity basis: Planning quantity for one build; check the selected configuration
- Purpose: External game input.
- Notes: Support is experimental; no exact controller model was verified.
- Sourcing: No exact purchase link verified; confirm the model and requirements above before ordering.
- Evidence: Creator source
- Source: https://hackster.io/wenting-zhang/60fps-eink-gameboy-emulator-on-m5papers3-57e4e5

Source reviewed, not assembled or hands-on tested. A working product page does not confirm stock, firmware compatibility or a complete build.

## Setup
Supervised experiment

## Coding tool
Claude Code (experimental JIT component)

## How the agent helped
Wenting Zhang credits his friend Yukidama with building the proof-of-concept Game Boy-to-Xtensa JIT compiler using Claude Code. The article shows the working M5PaperS3 emulator and clearly distinguishes the experimental compiler from the existing CrankBoy core and Zhang's display work.

## Before you build
Claude Code's documented contribution is Yukidama's experimental JIT compiler, not the entire emulator or display driver. Compatibility is largely untested and frame rate varies; 60 Hz panel driving does not guarantee every game runs at 60 fps. Bluetooth controller support is experimental. Save explicitly before powering off. The creator reports M5PaperS3 is end-of-life. Use game data you have the right to use.

## Sources
- Original build: https://hackster.io/wenting-zhang/60fps-eink-gameboy-emulator-on-m5papers3-57e4e5

Source reviewed 2026-11-04. Not hands-on tested.
