Rolling notes
← POPSLoader docs · view on GitHub ↗
This is a bleeding-edge TEST build, not a stable release. It has everything from the latest stable plus features still being tested.
This build names itself, so you never have to guess which one you are on. Open Settings, then About: the Version row reads v1.1.1-dev. One step further into Credits, a small grey line at the bottom left says the same (with the boot timing under it). If neither place shows a version at all, you are on the public 1.1.0 release or an older build, and none of the changes below are in it. If the version ends in -EXP and a number, you are on the separate experimental build. (The 1.1.1 part only means "newer than 1.1.0". It is not a promise about what the next release will be called.)
Please try it and report anything odd, and say the version you see. To go back to stable, just reinstall the latest entry on the Releases page.
Here's everything new or changed since BETA-9.
Just graduated from the experimental channel (2026-07-20 — the storage wave)
Six experimental builds proved out on real hardware in one intensive day and have all landed here:
- The two "hangs at 42%" are fixed for real. They were two separate bugs. The MX4SIO page hang: a mid-July driver update replaced three of the four storage drivers but left the MX4SIO one behind, and the mismatched pair never finished registering the card — all four now ship from one matching set. The internal exFAT HDD freeze: the drive's driver does all its detection inside the load call, and loading it mid-session could stall the whole system — it now loads on demand from its own page, in the background, with the screen alive.
- The internal exFAT HDD works, including big GPT drives. Hardware-confirmed on a 4TB drive: the page lists games and launches them. The first open after boot costs a few seconds while the drive spins up; after that it is instant. Boot time is unchanged (nothing drive-related loads at boot).
- MMCE and MX4SIO no longer block each other. For a while POPSLoader made you restart to switch between them, because they share an internal bus. That gate is gone: both drivers now stay loaded together, the way the reference launchers do it, so you can move between the MMCE and MX4SIO pages freely with no dialog. One thing to watch: jumping straight from MX4SIO to MMCE can miss the device on the very first try. Back out, open it again, and tell us if that happens to you.
- Launching is snappier. The "Staging drivers for this device" step at launch (with Adaptive BDMA on) used to sit for a long time; it is now a quick paste of the two driver files.
- Cover art sits inside the case frame. Real covers used to poke out of the jewel-case overlay (worst on PAL); they are now fitted to the case's actual window on every video mode.
- One note from the journey: an earlier experimental build loaded the drive stack at boot and broke MMCE game launches; that approach is gone, and MX4SIO and MMCE launches are both hardware-confirmed working on the final form.
Graduated from the experimental channel (2026-07-16, all of it new to rolling)
The experimental build's changes proved out and have all landed here. In one list, newest first:
- The build is almost a quarter smaller (about 400 KB off). Three separate removals: stripped leftover developer data from the internal launch helper, dropped unused font-format machinery, dropped an unused JPEG decoder. Each fails differently, so if something breaks the symptom names the culprit: games failing to launch or a black screen at the handoff points at the helper; missing or garbled menu text points at the font work; one specific missing cover (a
.pngthat is secretly a renamed JPEG) points at the JPEG drop. Real PNG covers are untouched. - USB now uses wLaunchELF R3Z's drivers, loaded together at startup. This fixed the two testers whose drives were invisible, and it changes the USB drivers for everyone. If your USB, MX4SIO, or internal exFAT drive worked before and does not now, that is a serious report and we want it immediately. If USB fails, the error now includes a bracket line like
[drive found but not mounted, bdm=1 iop128k=ok]; a photo of it tells us exactly which of four faults to fix. - USB games launch with a drive-resident POPSTARTER.ELF. If your
POPSTARTER.ELFlives only in the USB drive'sPOPS/folder, launching used to fail with "No POPSTARTER.ELF found" even though the file was there. Fixed; the launch check now looks at the same place the launch itself uses. Setups with POPSTARTER on a memory card or next to POPSLOADER.ELF behave exactly as before. - The version and boot timing are now on screen. Settings, then About, has a Version row; the Credits page shows the build line with a boot-timing line under it, like
boot 4820ms (slowest: ds34usb+ds34bt load +2100ms). Photos of those two grey lines from different consoles are genuinely useful. - Both internal HDD pages at once (now the default). Settings, Device List, Internal HDD offers APA / PFS, exFAT and Both, and Both is what a fresh install uses, so the device list shows both HDD entries out of the box. One specific order is worth testing: cold boot, open HDD (exFAT) first, let it list, back out, then open HDD (PFS). Power-cycle between attempts.
- POPSLoader speaks Hungarian. Settings, Startup, Language: Magyar (translation by oldman63). Hungarian speakers: check that the double-accented letters (the o and u in words like "főkönyvtár") draw correctly and nothing runs off the edge of a row. Untranslated lines stay English by design.
- Settings: jump between blocks instead of scrolling through them (sAGA's suggestion). Press L1 / R1 anywhere in Settings to hop to the previous or next section; the block you leave folds shut and the one you land on opens. Left / Right do the same on rows that are not value pickers (on a value row they still change the value, as before). Skipping the whole SMB block is now one press.
- The exFAT HDD check now explains itself if it gets stuck. One tester's internal drive froze the "Locating exFAT HDD POPS folder..." step at a silent 42%. That one step is now split into numbered sub-steps (43 through 50), each with its own message, plus an
[iop128k=...]memory readout. If it ever freezes for you, photograph the screen: the number and bracket on it tell us exactly which internal call got stuck. If you reboot instead, the next visit to the exFAT page reports the step it froze at. A clean "No exFAT HDD detected" after a few seconds is unchanged. (Update 2026-07-20: the freeze itself and the GPT-drive gap are both fixed — see the storage wave at the top of this file.)
Currently testing (newest — we'd love your feedback)
- Menu and Settings cleanup (from R3Z3N's review, none of it hardware-run yet).
- The button bars are much shorter. The main menu now shows just Select / Settings / Exit, and a game list shows just Launch / Back. The buttons that vanished still work exactly as before (START still opens Settings), they just are not shouted at you any more. Cover art has since moved off Square entirely and is a saved setting, Settings, Game List, Cover art, on by default.
- Credits moved into Settings (Settings → About → Credits). It used to be a Triangle shortcut advertised on every screen.
- One menu instead of two. Pressing Circle to leave Settings with unsaved changes now opens the same Save Changes / Reset Defaults / Discard & Exit menu that START opens. Before, the two routes showed different prompts.
- "Carousel Devices" is now "Device List", because that is what it is.
- Keyboard now defaults to QWERTY instead of ABC. ABC is still there if you want it.
- Cover folder is spelled out: the setting now reads device:/POPS/ART rather than POPS/ART, so there is no guessing what it means.
- You can finally tell how to hide a game: the Hidden games setting now has a line under it saying "L3 on the game list".
-
Settings no longer steals Select for Hide-Text (hiding the text of the page you are reading was silly). Use Display → Hide UI Text. Select still works on the device list and game lists.
-
Settings & buttons polish round 2 (from R3Z3N's review, none of it hardware-run yet). A batch of quality-of-life changes:
- Save / Reset / Discard moved behind START. On the Settings page, press START for a small menu with Save Changes / Reset Defaults / Discard & Exit. They are no longer rows in the list. Backing out with unsaved changes still asks first.
- Japanese consoles get their native buttons. On an NTSC-J console, Circle confirms and Cross cancels, everywhere, with every on-screen hint following. US/PAL consoles are unchanged. The confirm action now always sits far left in the button bar. (Needs one tester on a Japanese console, and one on anything else confirming nothing changed.)
- Settings readability: section headers have their own color, anything you can't select is dimmed darker, sections unfold with a quick animation instead of snapping, and Hide UI Text reads On/Off.
- On-screen keyboard: number row on top, opens UPPERCASE with the cursor on the letters, the Case/Symbols label names the mode you'd switch to, holding Confirm keeps the key lit for the whole press, and the layout picker inside the keyboard is gone (pick it in Settings → Startup → Keyboard Layout).
- POPSTARTER profiles are gone. "Automatic" replaces them. The old Profile 1..16 row was a preset list for where
POPSTARTER.ELFlives; the launcher already finds it on its own. POPSTARTER Path now defaults to Automatic; set a path only if you want to pin a specific build (a wrong path silently falls back to Automatic; you're only warned if none is found anywhere). If you had a Profile selected before, launches should keep working with zero setup, your old preset choice is carried over into POPSTARTER Path automatically. Please confirm. - Adaptive BDMA (new setting, needs a two-device setup). If you play from more than one storage type (say MMCE and a FAT32 USB drive), the single BDMA Mode setting used to serve one and break the other until you flipped it by hand. Turn on Settings → Storage → Adaptive BDMA and POPSLoader now puts the right drivers on the Memory Card for the game you launch, automatically, checking first so it never rewrites a card that's already correct. The test is simple: launch a game from one device, then a game from another, without touching Settings in between. Both booting is the pass. (There's no on-screen notice on success. If driver staging ever fails, the launch is cancelled with a warning instead of dropping you into a black screen.) One rule to know: the USB page can't tell FAT32 from exFAT drives, so your saved BDMA Mode decides there. Keep it on exFAT-USB if your USB drive is exFAT; anything else means FAT32. Default Off; nothing changes unless you turn it on.
- Partition-installed PS1 games now show on the HDD page (never run on hardware). If your internal drive has HDDOSD / PSBBN-style installs (one partition per game, named like
PP.SomeGame, with the image inside always calledIMAGE0.VCD), the HDD (PFS) page now lists them under their own names, right alongside the classic__.POPSgames, and launches them the way POPStarter documents (PP.SomeGame.ELF). Hidden__.variants work too, and app partitions that aren't games (CodeBreaker and friends) are filtered out. Please try launching one. If it fails, tell us which POPStarter build you have and where it lives; that's the key data. Also worth checking: whether in-game memory card saves work for these (the save should land under__common/POPS/<game name>/). - Boot chime slimmed to half size — does it still sound right? The startup jingle was re-encoded to shave ~190 KB off the build. Analysis says nothing audible changed, but a real console's sound chip is the only proof. If the chime sounds slow, low, chipmunked, or crackly, say so right away; it's a one-step revert.
- Better error detail on the HDD page. If the HDD list ever comes up empty or fails, the messages now say why: the "No '__.POPS' partitions" notice ends with a
last mount rc:number, a new "HDD dir read failed" notice appears when a partition mounts but won't list, and an HDD that reported "not usable" right after boot now recovers on its own when you re-enter the page after it spins up. If you're the setup where the HDD list fails when booting from USB or Memory Card, these numbers are exactly what we need reported. - Internal HDD (exFAT) — NEW backend! You can now play from an exFAT-formatted internal SATA/IDE drive, picked from the carousel's HDD (exFAT) entry. Set Settings → BDMA Mode to ATA, then Settings → Device List → Internal HDD → exFAT (APA-Jail) and save — the HDD (exFAT) entry replaces HDD (PFS) on the carousel (or leave Internal HDD on Both, which is now the default and shows the exFAT and PFS entries side by side). Put the usual
POPS/folder (with your.VCDfiles) on the exFAT drive and it works just like USB / MX4SIO / MMCE — same layout, sameXX.launch; the BDM Assault drivers (R3Z3N's ATA build) do the rest. It has since listed and launched from a 4TB GPT drive on one console, but on another console it stalled while starting the drive, and the current build changes when the drive driver loads without that change being confirmed on hardware yet — if the page stalls, photograph the screen before rebooting (the step number on it is the whole diagnosis) — if you have an exFAT internal drive, please try it and tell us whether the HDD (exFAT) page lists your games and they launch. (Don't see your games? Confirm the drive is exFAT, BDMA Mode is ATA, Internal HDD is set to exFAT (APA-Jail)** under Device List, and your files are inPOPS/.) - SMB (v1) network game browsing — NEW, needs its first hardware run! Browse and launch PS1 games straight off a Windows/SMBv1 network share via the new SMB carousel entry. Setup: Settings → SMB / Network (Server IP, Share, User/Password, Port — default 1111, set it to your server's real SMB port; stock servers listen on 445 — and DHCP or Static IP), set SMB modules → Installed, Save, then open the SMB carousel entry to browse and launch. Networking only starts when you open the SMB page (boot is untouched), the connect overlay reports each phase (link → DHCP → logon), and a failure names the failing step. Leave the Share field blank and the loader lists the server's shares in an in-app picker. None of this has run on real hardware yet — we specifically want connect / browse / launch / disconnect reports (with the exact on-screen message on any failure).
Newest this cycle — UI, cover art & navigation (please eyeball the items marked below):
- Per-game info text — add a <game>.txt for a game, then turn on Settings → Game details (Off / Left / Center / Right alignment) to show it in a panel under the cover. Your line breaks are kept. Scroll long text with the right analog stick (fixed Fast pace, ~7 lines/sec — the Fast/Medium/Slow setting was removed since Fast tested best). Covers and these details files now live in one fixed place and the folder chooser is gone: <device>:/ART/ at the drive root, named exactly after the game file (<gamefilename>_COV.png for the cover, <gamefilename>.txt for the text). The old POPS/ART and beside-the-game spots are no longer read, so move your files if they are still there. On the internal HDD it stays hdd0:__common/POPS/ART/. A multi-disc game now needs one file per disc, each named after that disc's .VCD; the old trick of naming one file without the (Disc N) part no longer works.
- Smoother list navigation — the left analog stick now moves the cursor one game at a time (just like the d-pad), with a comfortable hold-to-repeat (it starts repeating after a short hold, then about 5 items/sec). Left/Right (d-pad or stick) jumps a whole page, and L1 still bounces between top ↔ bottom. The stick only kicks in on real analog/DualShock pads now (a digital pad no longer injects a phantom direction), so up/down lands on individual items cleanly — oldman63 and Nuno6573 confirmed this on hardware. And the list no longer bogs down while cover art is on — it was redoing work every frame; please tell us if scrolling feels snappy with covers enabled.
- Game list cache (opt-in) — Settings → Game list cache. USB / MMCE / MX4SIO / HDD can save their scanned list per device so the "Building game list…" step only runs once (rebuild it any time with R1). Off by default. If you switch it on, please test that games still launch from the cached list, not just that it loads fast.
- New cover-box artwork (newest) — the placeholder in the preview box is now a proper jewel-case picture instead of a text label. With cover preview off you see a clean default case; with preview on but the game has no cover art, that default case gets a small "missing cover" mark layered on top. (The old "Cover disabled" text label is gone, and the single old MISSING.png placeholder was dropped — that alone shaved ~62 KB off the build.) The default, the missing mark, and the frame outline all line up inside the jewel-case window. Please eyeball this on a TV — does the default cover + missing mark sit squarely inside the frame on both NTSC and PAL? It hasn't been checked on real hardware yet.
- Cleaner game list — wider list, the device name (e.g. "USB") no longer overlaps the top row, and the "Building…" progress bar is calmer.
- Boot polish — the welcome splash now appears immediately (covering the old boot black screen) and is centered from the first frame; leaner build (~48 KB smaller). Please just confirm boot still reaches the menu cleanly on each device.
- Boot sound on/off — Settings. A new Boot sound switch (default On) for the splash chime; turn it off for a silent boot. It saves with your other settings — oldman63 confirmed it saves and survives a reboot on hardware.
- Overscan (CRT inset) — Settings → "Overscan (CRT inset)". If a real CRT cuts off the edges of the menu, nudge this up (Off, then 5 → up in steps of 5) to pull the whole UI inward, OPL-style. It previews live as you adjust and reverts if you back out without saving; Off by default so nothing changes unless you ask. This one needs CRT eyeballs — try it on a tube TV and tell us whether the inset clears your overscan without leaving black borders.
- HDD load crash — FIXED. The big one: the HDD game list could fail with "Failed to load HDD" on the second boot (and stay broken until you cleared a file) because of a cache bug. That's fixed — the HDD list should now load reliably every boot. If you ever see "Failed to load HDD" again, please screenshot it — it now shows the real reason on a second line.
- Display / Video standard fix — Settings → Video. POPSLoader now honors your Video Standard choice, with a new Auto default that matches your console's region (fixes e.g. PAL consoles displaying in PAL when NTSC was selected). On PAL the UI now renders natively at 640×512 so it fills the whole screen — no more letterbox / dead band. Two safety nets like OPL: hold START during boot to skip past video settings if a bad mode leaves you with no picture, and a confirm/revert prompt when you change the mode (it auto-reverts if you don't confirm in time). PAL hardware verification is exactly what we'd love feedback on — does the screen fill edge-to-edge?
- Per-device POPSTARTER pickup — you can now drop a specific
POPSTARTER.ELFbuild on a removable device and have that device's games use it, without forcing it everywhere. At launch the search order is: your explicit POPSTARTER Path setting if it resolves → the game device's own<device>:/POPS/POPSTARTER.ELFif present → thePOPSTARTER.ELFnext to POPSLOADER.ELF → the usual Memory Card fallback. (Leave POPSTARTER Path on Automatic for exactly this order — the old Profile presets are gone.) So e.g. a USB-delay build in your USB drive'sPOPS/folder serves USB games while a faster build elsewhere serves the rest. The internal HDD (PFS) install uses the same idea viahdd0:__common/POPS/POPSTARTER.ELF, routed through the existing HDD partition machinery so launch behavior is unchanged. This hasn't been hardware-tested yet — if you place a per-device POPSTARTER, please confirm the right build is used and your games still launch. Heads-up for USB users: until 2026-07-16 this pickup did not actually work on the USB page. If yourPOPSTARTER.ELFlived only in the USB drive'sPOPS/folder, launching showed "No POPSTARTER.ELF found" even though the file was right there. That is fixed now. If that was you, please try again and tell us whether your USB games launch. - POPSTARTER Memory Card Folder toggle — Settings. A new switch for the
mc:/POPSTARTERfolder on your Memory Card. Turning it off deletesmc:/POPSTARTER(you'll get a confirm prompt first — it's a destructive action). It's interlocked with BDMA: you can't disable the folder while BDMA mode is on, and you can't enable BDMA while the folder is off. (Heads-up for the curious: the installed BDMA mode is recorded in abdma_mode.txtmarker in your POPSTARTER pack folder — renamed from the old.pldr_bdma_mode; the legacy name is still read.) - Boot Page — Settings → Startup. Choose where POPSLoader opens after boot: the device carousel (default), or jump straight into a specific device's game list (MX4SIO / USB / MMCE / HDD).
- Multi-disc games — Settings → Game List. Optionally hide the extra discs of multi-disc games so only Disc 1 shows. It works by filename, so name your files like
Game (Disc 1).VCD/Game (Disc 2).VCD. Launch Disc 1 and swap discs in-game with your VMC. - Hide games — press L3 on any game to hide/unhide it (drops a tiny
<name>.hidefile next to its.VCD, the same way a cover.pngcan sit beside the game); press R3 to reveal a device's hidden games — they show dimmed so L3 can unhide them — or hide them again. Settings → Game List → Hidden games: Hidden filters them out of the list; Visible (manage) shows them dimmed so you can toggle them back with L3. In-app hiding now works on every device page — USB / MX4SIO / MMCE / Memory Card and the internal HDD (the HDD writes the.hidestraight to its boot partition; the old "add the file from a PC" step is gone). If an HDD write ever fails, it falls back to telling you to add the.hidefrom a PC — please report it if you see that. - Carousel device visibility — Settings → Device List. Hide carousel entries you don't use (including SMB if you don't have a network share, or the not-yet-implemented iLink stub) with a Shown / Hidden toggle per device; at least one device always stays visible. Your launch behavior is unchanged — hidden entries are just skipped on the carousel.
- HDD settings now save on the HDD — on an HDD install, your Settings save directly to the HDD (on its boot partition), right where POPSLoader lives — same as a USB / MX4SIO / MMCE install keeps its own settings. This used to be a read-only "probe"; it's a real save now. It boots on PCSX2 and provato confirmed the HDD is writable on real hardware, but the full save flow is still validating on hardware — so please save a setting, reboot, and tell us if it stuck.
Since BETA-9 — the big stuff
Internal HDD (PFS)
- Major HDD reliability fixes — games that wouldn't launch from an HDD-resident POPSTARTER now work.
- The HDD game list now loads even when you start POPSLoader from USB or Memory Card (it waits for a cold drive to spin up instead of failing instantly).
- The HDD game list opens instantly on repeat visits within a session — press R1 on the HDD page to force a fresh rescan.
- DKWDRV launches from custom HDD paths, not just the default location.
BOOT.ELF / Exit
- "Exit → BOOT.ELF" handoff fixed for the common cases (booting from USB / MC / MMCE / MX4SIO / OSDmenu / Browser / PSBBN).
Devices & launching
- MMCE: controller input no longer goes dead after you open the MMCE game list.
- Launch arguments (-page / -mode / -game): other launchers can open POPSLoader straight to a device — or straight into a game.
- Settings now save per device (right next to the launcher) — a USB / MX4SIO / MMCE install keeps its own settings.
Polish
- Leaner, faster build (removed unused internals) and assorted stability fixes.
- A full documentation overhaul.
Known issues / still being verified
Canonical list: STATE.md > Known Issues. Tester summary:
- Confirmed on hardware this cycle (thank you!): the Boot sound toggle saves and survives a reboot (oldman63); up/down and left-stick navigation land on individual items with smooth continuous scroll (oldman63); and the latest rolling is running well overall (Nuno6573).
- Still wants an eyeball (works in testing, not yet hardware-confirmed): the new cover-box artwork (default cover + missing mark lining up inside the jewel-case frame on NTSC and PAL), and the Overscan (CRT inset) on a real tube TV. Please report on these specifically.
- SMB network browsing and launching work on real hardware — confirmed on a static IP setup. If your PS2 gets its address from DHCP, you need this build or newer. POPStarter can't get an address by itself, and older builds deleted the file that carries it whenever IP assignment was set to DHCP, which is the default. On those builds a DHCP setup lists your games normally and then black-screens shortly into the launch. That's fixed, but nobody has confirmed the DHCP path on hardware yet, so it's the most useful thing you can test.
- Other new features aren't broadly hardware-confirmed yet. HDD in-app hide (L3), HDD-resident settings save, native PAL 640×512, and the POPSTARTER Memory Card Folder toggle all boot on PCSX2, and provato confirmed the HDD is writable on real hardware — but the full flows are still validating on hardware. These are exactly what we're asking you to test; please report what works and what doesn't.
- "Failed to load HDD" on the second boot — FIXED. That was the cache bug above (it hit setups that had loaded the HDD successfully at least once before). If you ever see it again, it now shows the real error on a second line — please screenshot.
- "Failed to load HDD" from a non-HDD boot — still open (config-specific). On a specific setup, launching POPSLoader from USB / Memory Card via a launcher can fault while building the HDD game list (most setups list the HDD fine; POPSLoader itself starts normally). Workaround: boot POPSLoader from the HDD, or wait a few seconds on the menu before opening the HDD page. The newest rolling adds real diagnostics for this (see "Better error detail on the HDD page" above) — if it hits you, tell us your exact boot setup plus the numbers/messages the HDD page now shows.
Install
Extract to your device like any POPSLoader build, replacing your current install.