# Which `GP_TITLE` build is which screen β€” measured against the running game **Status:** βœ… `CONFIRMED` for the four screens the boot path actually shows (title art, `PRESS β’Ά BUTTON`, main menu, `EXTRAS`); 🟑 `PROBABLE` for their Japanese twins; ❔ open for the two `DELTASABER` plates. Answers [MISSION Q2](../port/MISSION.md). The previous statement β€” *"build 4 title, 5 main menu, 6/8/9 submenus"* β€” is **partly wrong** and is withdrawn: build 8 is the **Japanese main menu**, not a submenu, and `GP_TITLE` holds exactly **one** submenu (`EXTRAS`), in two languages. ## The archive is eight screens, each shipped twice `GP_TITLE.pak` has 16 entries; `sylpheed-cli screen list` calls 12 of them composable builds. The 16 fall into **eight pairs**, and each pair's two members have near-identical sizes and name hashes that differ by a constant β€” one character of the name apart: | entry | hash | bytes | build idx | pair | |---|---|---|---|---| | 0 | `01a2db9c` | 483 958 | 0 | A | | 1 | `0ff0b8a8` | 483 958 | 1 | A | | 2 | `285d8849` | 267 014 | 2 | B | | 3 | `369773cb` | 267 014 | 3 | B | | 4 | `a60fcb85` | 12 278 666 | 4 | C | | 7 | `b483e6e6` | 13 363 328 | 7 | C | | 5 | `a715f485` | 6 977 437 | 5 | D | | 8 | `b58a0fe6` | 6 931 653 | 8 | D | | 6 | `a81c1d85` | 6 549 126 | 6 | E | | 9 | `b69038e6` | 6 548 438 | 9 | E | | 10 | `cdba806e` | 426 473 | β€” | F | | 13 | `db2ea1f8` | 423 333 | β€” | F | | 11 | `cec0a96e` | 999 643 | β€” | G | | 14 | `dc34caf8` | 999 643 | β€” | G | | 12 | `cf2a8ccd` | 1 774 639 | 10 | H | | 15 | `dd56d99b` | 1 774 639 | 11 | H | For the three pairs whose members differ visibly β€” C, D, E β€” **the difference is English versus Japanese**: build 7 is the title art with the katakana subtitle γƒ—γƒ­γ‚Έγ‚§γ‚―γƒˆ シルフィード, build 8 the main menu reading 新規 / ロード / チγƒ₯γƒΌγƒˆγƒͺをル / γ‚ͺプション / γ‚¨γ‚―γ‚Ήγƒˆγƒ©, build 9 the `EXTRAS` submenu as γ‚¨γ‚―γ‚Ήγƒˆγƒ©. That is the whole of the language split we can see. In pairs A, B and H the two members render **byte-identical PNGs** β€” the archive still carries two copies, but the artwork does not change with the language. Pairs F and G are the four entries `screen list` does *not* classify as builds. They are not identified here. ## The map Contact sheet of every render: [`captures/title-builds/title-build-contact-sheet.png`](captures/title-builds/title-build-contact-sheet.png). | build | what it is | confirmed how | |---|---|---| | 0, 1 | a `DELTASABER / SYLPHEED A.I.` plate low-left on black, no background | ❔ **not observed running.** Never seen in the boot path, the main menu, `EXTRAS` or `MISSION SELECT` | | **2**, 3 | the `PRESS β’Ά BUTTON` plate β€” **an overlay build of its own**, not a state of build 4 | βœ… seen composited over build 4 on the live title, at the same rect our render puts it | | **4** | title art, English (`PROJECT SYLPHEED`, β„’, `(C)2006,2007 SQUARE ENIX`) | βœ… [`live-title-press-a.png`](captures/title-builds/live-title-press-a.png) | | 7 | the same, Japanese | 🟑 renders as the JP twin of build 4; the container runs an English locale, so it was not seen | | **5** | main menu, English: NEW GAME / LOAD GAME / TUTORIAL / OPTIONS / EXTRAS, footer `β’Ά : OK` | βœ… [`live-main-menu.png`](captures/title-builds/live-main-menu.png) β€” element for element | | 8 | the same, Japanese | 🟑 as above | | **6** | the `EXTRAS` submenu, English: MISSION SELECT / MOVIE THEATER / BACK, footer `β’Ά : OK β’· : Back` | βœ… [`live-extras.png`](captures/title-builds/live-extras.png) | | 9 | the same, Japanese | 🟑 as above | | 10, 11 | the same `DELTASABER` plate as build 0, over a dark circuit-line background | ❔ **not observed running** | **Reach of the two negatives.** Builds 0/1 and 10/11 were looked for in: the whole boot sequence (a 5 s-cadence filmstrip from launch to the title, ~190 s), the title, the main menu, the `EXTRAS` submenu, the `LOAD GAME` slot list, the transition into `MISSION SELECT` (a 40-frame burst), and the attract cycle. They appear in none of them. The obvious remaining candidate is a *long* load β€” a mission launch β€” which is out of this objective's scope; they are most likely a loading/AI-chatter plate. That is a hypothesis, not a result. ## Three things the captures settle beyond the map **The live title is two builds composited.** Build 4 draws the art; build 2 draws `PRESS β’Ά BUTTON` on top, and it **fades in a beat later** β€” a screenshot taken 2.5 s after arriving at the title has the art and no plate, one taken ~1 s later has both. The port must treat the plate as its own timed element. **The attract-loop title carries the plate too.** After ~8–10 s idle the title fades to black, a full-motion video plays for ~85 s, and the title comes back β€” *with* `PRESS β’Ά BUTTON` ([`live-attract-title-press-a-band.png`](captures/title-builds/live-attract-title-press-a-band.png)). This is consistent with, and adds nothing to, the draw-quad comparison in [`canary-scripted-input-traps.md`](canary-scripted-input-traps.md): the plate is not the tell that distinguishes the boot title from the attract title. **`EXTRAS` is the only main-menu destination inside `GP_TITLE`.** β’Ά on `EXTRAS` opens build 6 β€” measured. The other four destinations leave the archive: β’Ά on `LOAD GAME` opened a `LOAD GAME` slot list, and β’Ά on `MISSION SELECT` inside `EXTRAS` opened a `MISSION SELECT` screen, neither of which is a `GP_TITLE` build. `dat/` carries `GP_SAVE_LOAD.pak`, `GP_TUTORIAL.pak`, `GP_OPTIONS.pak`, `GP_MISSION_SELECT.pak` and `GP_MOVIE_THEATER.pak`; **that those are the archives behind the other four buttons is an inference from the names, not a measurement.** ## How to reproduce ```bash sylpheed-cli screen list "$SYLPHEED_DISC/dat/GP_TITLE.pak" sylpheed-cli screen render --build 6 "$SYLPHEED_DISC/dat/GP_TITLE.pak" /tmp/b6.png tools/re-capture/boot_menu.sh q2 # boots to the main menu, cursor on NEW GAME tools/re-capture/pad.py dpad down 0.35 # x4 -> EXTRAS tools/re-capture/pad.py tap A 0.30 ``` Mind the d-pad hold β€” see [`METHOD.md`](METHOD.md).