Reverse-chronological
Devlog
Worklogs as they happened. The dead ends matter.
This is the unedited worklog stream for the PS1 port. The posts below are the same plain-text notes that were written at the keyboard on the day the work happened. They were not cleaned up before being published here. They were not rewritten with the benefit of hindsight. The dates on them are the dates the work was done.
The reason verbatim matters is that most of the time on this project has been spent on dead ends. A scene that reads “verified” in a status table today only got there after several attempts that did not. A single-line timing bug took a week of plans and counter-plans to pin down. If the only artifacts left over are the wins, the actual shape of the work is invisible — and the actual shape of the work is the only useful thing to hand to the next person trying something similar.
So expect plans that did not survive contact, status snapshots that
were superseded a week later, and worklogs that are honest about
what was tried and what failed. Each post carries an editor’s note
above the original text giving brief context, but the body itself
is the source file from docs/ps1/research/, preserved as it was
written. A link back to the source on GitHub sits at the bottom of
every post.
Subscribe via
Atom
or
JSON Feed;
both carry full-content posts with absolute URLs. Auto-discovery
is wired into every page’s <head>, so most feed readers find
them automatically.
May 2026
-
Scene Set lineup expands to seven categories — May 3, 2026 Scene Set ships with the full categorical lineup: Johnny Stories, Mary Visits, Visitors, Activities, and Misc & Suzy on top of the existing All Scenes and Fishing Only. Pools point at real scenes whose FG2 packs are already on disc, so they play immediately and look better in place as visual signoff lands. ~1 min read · 483 words
-
Scene Set framework and an animated frog clock — May 3, 2026 Pause menu gains a Scene Set row that constrains the screensaver pool by category (All Scenes / Fishing Only / …); Left/Right preview, Cross or Start commits. The frog-clock loading frame goes from a static image to a 36-vblank animation with hour and minute hands placed from the original MEANWHIL.TTM script. ~3 min read · 971 words
-
Ocean Ambience — v0.6.0-ps1 — May 1, 2026 A CC0-sourced 20-second ocean loop on a dedicated SPU voice. Pause-menu toggle, memcard-persisted, zero CPU cost in steady state. The screensaver's per-VBlank budget is unchanged; the SPU plays + auto-loops in hardware while the screensaver loop runs as before. ~4 min read · 1175 words
-
Scripted pad input, menu screenshots, and testing the UI like a player The next test harness teaches the PS1 build to press its own controller buttons, capture every major pause-menu screen, and publish the result as player help. ~1 min read · 369 words
-
Freeplay debug mode — May 1, 2026 Direct-control Johnny moved from design sketch to a playtestable PS1 mode: analog walking, fishing, menu-driven gag/visitor catalogs, immediate world toggles, frog loading transitions, and a stricter no-per-frame-allocation rule. ~3 min read · 797 words
April 2026
-
Milestones — April 25, 2026 A status snapshot from a single-day batch that pushed the PS1 port across several long-standing unknowns: working TTY, an instrumentable perf module, an on-PS1 pause menu, a hand-rolled SPI controller driver, and memcard-backed user settings. ~4 min read · 1022 words
-
PS1 Fishing 1 Water Animation — Session Worklog, April 21, 2026 Unedited session worklog from the day the missing-waves bug in fishing1 was traced to numSprites[0] == 0 after adsInitIsland. The dead ends are why this exists. ~7 min read · 1895 words
-
PS1 Fishing 1 Water Animation Handoff — April 21, 2026 Handoff document for the water-animation work in fishing1, written so the next session could pick up without re-deriving the slot-loading findings. ~4 min read · 1239 words
-
Fishing 1 Pixel-Perfect Plan — April 21, 2026 The plan written the day work started on getting fishing1 visually identical to the original PC version across every islandState variation. ~3 min read · 858 words
-
Ocean Restore Plan — April 16, 2026 Short-term plan for restoring the ocean draw path on the prerender pilot, with the title -> fgpilot fishing1 path locked in as the safe baseline. ~2 min read · 544 words
-
Current PS1 Prerender Pilot Status — April 16, 2026 Historical status snapshot from the prerender-pilot era, between the restore-pilot work and the fgpilot/full-SFX baseline. Preserved as-is. ~1 min read · 221 words
-
PS1 Foreground Top-Layer Validation Log — April 13, 2026 Validation log tracking prerendered foreground-only fgpilot status separately from the normal PS1 scene verification track. A scene listed here is not yet PS1-verified. ~3 min read · 873 words
-
Foreground Timing Plan — April 13, 2026 Plan written after the fgpilot fishing1 scene was visually correct but timing was drifting from the host baseline. The dead ends on scheduler-sum paths matter. ~1 min read · 377 words
-
Offline Scene Playback Pivot — April 12, 2026 The pivot proposal that moved scene playback to an offline content pipeline. Preserved at the proposed-pivot moment, before any of it was committed to. ~6 min read · 1745 words
March 2026
-
VLM Classifier Plan — March 29, 2026 The hosted-VLM plan written on the same day as the local-classifier plan. The two were posed against each other; both got tried. ~1 min read · 396 words
-
Vision Classifier Worklog — March 29, 2026 Worklog from the day the local vision classifier path went from plan to running. The dead ends are inline with the wins. ~1 min read · 336 words
-
Vision Classifier Usage — March 29, 2026 Operator's reference for the vision-classifier pipeline as it stood on the day it landed. One-command runs, knobs, what to expect. ~1 min read · 131 words
-
PS1 Scene Validation Log — March 29, 2026 Validation log from the push to verify all 63 PS1 scenes against the canonical Linux reference. Findings, build state, and what was failing where. ~1 min read · 396 words
-
Local Vision Classifier Plan — March 29, 2026 Plan for a local vision classifier to replace heuristic captioning. Same day as the parallel VLM plan; the two were evaluated against each other. ~6 min read · 1719 words
-
PS1 Scene Validation And Debug Prompt The mission brief handed to a debugging agent the day the validation push for all 63 scenes started. Plain instructions, no rhetoric. ~3 min read · 858 words
-
Regtest Harness Worklog — March 28, 2026 Worklog from the day the old final-frame/hash regtest was retired in favor of a scene-sequence comparator against the canonical host baseline corpus. ~112 min read · 28149 words
-
PS1 Restore Rollout History The dated rollout chronology that used to live in the research README. Historical context for how the restore pilot moved through the scene set. ~12 min read · 3247 words
-
Current PS1 Restore Rollout Status — March 21, 2026 Historical status snapshot from the restore-pilot era. The verified counts here use a different bar than what the project measures today; preserved unedited. ~1 min read · 238 words
Older material that predates the worklog stream — earlier plans, superseded designs, archived experiments — lives under docs/ps1/research/archive/ on GitHub. It is not surfaced here on purpose; the index above is the active record.
Related pages
- Lab — the curated long-form companion to this stream: seventeen feature-length retrospectives with the benefit of hindsight that the worklogs above deliberately lack. Read the devlog for what happened on the day, the lab for what it added up to.
- Releases — short notes on every tagged version, dated, with headline bullets and links to the full release notes and the disc image.
- About — History — the eras-and-milestones narrative. The devlog is daily; this is the zoomed-out timeline.
- Feeds & well-known endpoints — the reference for every machine-readable endpoint on the site; the devlog ships Atom + JSON Feed pair with full-content posts for offline reading.
- FAQ — author-written answers to the recurring questions a worklog skimmer doesn’t have time to reconstruct.