mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-16 08:11:35 +02:00
c8adbdcc64
T24 closed: fused boot/import, Red+Blue Play after Blue mount fix, and NRO-only replace keeps saves on OLED. Co-authored-by: Cursor <cursoragent@cursor.com>
97 lines
3.1 KiB
Markdown
97 lines
3.1 KiB
Markdown
# Switch hardware evidence (Phase 0 + import + input)
|
||
|
||
**love-nx:** `11.5-nx1`
|
||
**Console:** Switch OLED
|
||
**Operator:** Andrew
|
||
**Date:** 2026-08-01
|
||
|
||
Do **not** commit ROM dumps or private dump hashes.
|
||
|
||
---
|
||
|
||
## Phase 0 — probe (T4) — pass
|
||
|
||
| Field | Value |
|
||
| ----- | ----- |
|
||
| Commit (import era) | `df7cea4` |
|
||
| `getOS()` / `love._os` | `NX` |
|
||
| Dimensions | 1280×720 |
|
||
| Save (probe) | `sdmc:/switch/gen1recomp/switch-probe` |
|
||
| Joy-Con | `joystickpressed` + `gamepadpressed` (Y→`#3`, X→`#4`) |
|
||
|
||
| Artifact | SHA-256 |
|
||
| -------- | ------- |
|
||
| `gen1recomp.nro` | `8290ac153d4c630e48c9b26ef9123f5204ed8ee0cef3042511707b5b645918f5` |
|
||
|
||
---
|
||
|
||
## T12 — Red import + Play — pass
|
||
|
||
Inbox MTP → “Procurar novamente” → Play; Joy-Con launcher/gameplay (not touch-only).
|
||
|
||
---
|
||
|
||
# T16 — Joy-Con launcher + gameplay — pass (naming re-verify)
|
||
|
||
### Round 1 @ `7504753` — partial
|
||
|
||
| Check | Result |
|
||
| ----- | ------ |
|
||
| Launcher / overworld (Joy-Con only) | **pass** |
|
||
| Naming player/rival | **fail** (dual-path a+b; see below) |
|
||
| Touch required | **no** |
|
||
| `game.love` SHA-256 | `bd3a35461bf453c1f0465a5a289421aef3b5c72d3bf1f8d76e86231256829e0e` |
|
||
|
||
### Naming failure (root cause) — fixed in `efd81d8` + `2699c9a`
|
||
|
||
- love-nx fires **`gamepadpressed` + `joystickpressed` on the same physical press**.
|
||
- `NamingScreen` tested `wasPressed("b")` before `"a"` → if both true in one frame, always deletes.
|
||
- Dual-path fix: ignore raw when `isGamepad()` (`efd81d8`).
|
||
- SDL-only UX then had physical B confirm / A erase; NX face remap (`2699c9a`) restores Nintendo A=confirm / B=cancel.
|
||
|
||
### Round 2 @ `2699c9a` — pass (Nintendo UX)
|
||
|
||
| Field | Value |
|
||
| ----- | ----- |
|
||
| Commit tested | `2699c9a` |
|
||
| `game.love` SHA-256 | `a208b21e1f30b00e2e8c6fa6efe14f0e06d1db0ae1e50b810b16d9fb852926bc` |
|
||
| Touch required | **no** |
|
||
|
||
| Check | Result |
|
||
| ----- | ------ |
|
||
| Naming — player | **pass** — physical **A** confirms letter, **B** cancels/erases |
|
||
| Naming — rival | **pass** (same) |
|
||
| Launcher / overworld (prior round) | **pass** (unchanged mapping for d-pad/stick) |
|
||
|
||
T16 hardware gate: **closed**.
|
||
|
||
---
|
||
|
||
## T19 — save / suspend — pass
|
||
|
||
| Check | Result |
|
||
| ----- | ------ |
|
||
| Save in-game → full quit → title-override reopen → load save | **pass** (@ `7504753` / retained) |
|
||
| Suspend/resume ×10 (launcher / gameplay / mixed) | **pass** (operator 2026-08-01) |
|
||
| Full console reboot persistence | **pass** (operator 2026-08-01) |
|
||
|
||
T19 hardware gate: **closed**. No stuck input, duplicate audio, or crash reported.
|
||
|
||
---
|
||
|
||
## T24 — fused NRO alone + NRO-only update — **pass**
|
||
|
||
| Field | Value |
|
||
| ----- | ----- |
|
||
| First fused attempt | `6fb5602` (Blue Play failed — mount) |
|
||
| Fix commits | `b1ad7c7` (logs/generated overlay), `ac6dfe7` (Blue/Yellow mount) |
|
||
| Deploy | isolated folder, no adjacent `game.love` |
|
||
| Boot fused | **pass** |
|
||
| ROM import | **pass** |
|
||
| Play **Red** | **pass** |
|
||
| Play **Blue** (after `ac6dfe7`) | **pass** (operator 2026-08-01) |
|
||
| NRO-only replace | **pass** — saves retained; app still boots/plays |
|
||
| Touch required | no |
|
||
|
||
T24 hardware gate: **closed**.
|