Skip to content

pokketstation - RetroBIOS

Type libretro
Classification Official ports
Source https://github.com/mentalfoundry/pokketstation
Version v1.11.1
Profiled 2026-09-03
Cores pokketstation
Systems sony-pocketstation
Technical notes

PocketStation emulator with a portable C core (core/) shared by the libretro core, an SDL2 desktop application and a PS Vita port. The libretro core reports library_version "0.1"; the project version is the release tag, v1.11.1 in the desktop frontend (frontends/desktop/main.c:40).

load_bios opens /pocketstation.bin, reads 16384 bytes and fails when fewer are read; a longer file is accepted and truncated. psemu_load_bios copies the image and rejects any size other than PSEMU_BIOS_SIZE. retro_load_game returns false when load_bios fails, and psemu_run executes nothing while no BIOS is loaded: there is no HLE and no embedded copy. Content (.mcr, .mcd, .mcs, .pss) is identified by its bytes, not by the extension. Save RAM is the full 128 KB flash image.

psemu_settings_offsets_known hashes the loaded image with FNV-1a and compares it with 0xB2E46838, the retail 110 revision the project traced; a match enables the date, time and volume override writes into kernel RAM. Any 16 KB image boots. Two mask ROM revisions are documented: 061, from prototype hardware, and 110, the retail one; the ASCII tags at offsets 0x1DFC (C061 or C110) and 0x3FFC (J061 or J110) identify them (docs/hardware-notes.md:778-788). SWI 0Fh FlashWriteSerial works on 061 and locks the CPU on 110.

The desktop application takes the BIOS path from the command line, then from the bios= key of settings.cfg beside the executable, then falls back to bios.bin beside the executable; File > Load BIOS opens any path (frontends/desktop/main.c:630-668, 1000-1035, 2380-2451). The Vita frontend loads no BIOS yet (frontends/vita/main.c:31-33).

1 files | 1 required, 0 optional | 1 in repo, 0 missing

pocketstation.bin required in repo
PocketStation BIOS ROM, kernel and GUI, 16 KB

Generated on 2026-09-14T09:03:10Z