Set up an Android foldable as a retro emulation handheld over ADB

Jatin K Malik had an AI agent drive a Galaxy Z Fold over ADB to set up ES-DE with 20 emulated systems, migrate games from an old RetroPie image and test each one at full frame rate, in an afternoon.

Done withCustom agent· Oct 30, 2026

What they did

Malik wanted to retire a Raspberry Pi running RetroPie and turn a Galaxy Z Fold into a retro handheld, with everything launching from the ES-DE frontend, box art, per-console settings and an FPS counter. Malik connected the phone to a PC and let an AI agent work over ADB. It started with a read-only inventory of installed emulators, versions, storage permissions and where the owner's game backups lived. It updated apps after checking signing certificates and hashes, pulled games and old metadata straight out of the RetroPie SD-card image with debugfs in WSL without mounting it, laid out the ROM folders ES-DE expects, switched the PSP and PS1 emulators, copied shader presets across RetroArch cores and wrote a script to carry over old game lists. Because emulators draw their own UI, it navigated with screenshots and D-pad key events.

How it went

Twenty systems, from NES to PSP, launch from ES-DE and each held full frame rate in the agent's one-game-per-system test (60 FPS, or 50 for the Virtual Boy). The hard parts were plumbing: PPSSPP failed every launch until it was granted folder access through its own picker, N64 hardware renderers showed a black screen on the Adreno GPU so the software renderer was used, and the free scraper quota ran out quickly. The agent also stopped one copy plan that would have left the phone with under 8 GB free. Malik says it turned a weekend of fiddling into an afternoon.

Worth knowing

The post does not name the agent; in Malik's earlier battery post in the same series it was Claude Code. Use only games and BIOS files you dumped yourself. A plain adb install also installs into the work profile and Secure Folder, so pass --user 0. In ES-DE, Android's Back key can quit the app, and game lists should only be edited while ES-DE is closed.

Try it

With Custom agent· 3 parts to fill in

My [Android phone model] is connected over ADB. Set it up as a retro handheld with [ES-DE or my frontend] for these systems: [list of consoles]. Start read-only: list installed emulators and versions, their storage permissions, and where my own game backups and BIOS files are. Show me the plan before changing anything. Only install updates from official sources after checking the signing certificate matches, and install with --user 0. Put games in the folders the frontend expects, pick an emulator per system, and fix storage permissions. Check free space before every large copy. Navigate emulator menus with screenshots and D-pad key events. Launch one game per system, report the FPS, and stop with a table of what works and what I need to confirm with real buttons.

Square brackets are the parts to fill in. The prompt is ours; the story is theirs.

Where they said it

Related