Make VICE non-reliance explicit: no phase uses it for verification

This commit is contained in:
ballz
2026-07-17 01:03:26 +02:00
parent 1cd3a962e6
commit 558ab27668
+12 -13
View File
@@ -22,23 +22,22 @@ runs the same `.prg` file the C64 will run, with no setup, no
display, no ROMs, and at high speed. It is the default for the display, no ROMs, and at high speed. It is the default for the
development loop and is what every phase's *Verify* step uses. development loop and is what every phase's *Verify* step uses.
**VICE 3.9 is installed** at `/usr/bin/` and can be used via **VICE is not used.** VICE 3.9 is installed at `/usr/bin/` but is
`build.sh -v` (standard `x64`) or `build.sh -V` (cycle-exact a GUI emulator that requires a real X11/Wayland display to render.
`x64sc`). However, VICE is a GUI emulator and is **not suitable In this headless environment, the ROMs had to be fetched manually,
for headless / scripted use** in this environment — it needs a the KERNAL/BASIC/CHAR/1541 ROMs were not bundled with the package,
working `$DISPLAY` (X11 / Wayland) to render, and the `-exitscreenshot` and the autostart mechanism produced blank screenshots (no display
path produces a blank PNG when no display is available. The C64 to render to). We attempted to get VICE working and abandoned
itself boots and runs fine in VICE, but you can't see anything in the effort after deciding it wasn't worth the time. The `build.sh
a headless terminal. VICE is a *manual* interactive tool here: -v` / `-V` flags remain in place for the rare case where someone
run it in your own terminal session when you want to watch the has a real terminal session and wants to use VICE interactively,
game play, validate raster IRQ timing by eye, or step through but **no phase of this project depends on VICE for verification**,
breakpoints in the monitor. Don't expect to script it. and the `-v` / `-V` flags are *optional* additions, not required.
| Tool | Headless? | Use it for | | Tool | Headless? | Use it for |
|------|-----------|------------| |------|-----------|------------|
| `build.sh -e` (oscar64 built-in) | Yes | Default for every Verify step. Fast, deterministic, runs in CI. | | `build.sh -e` (oscar64 built-in) | Yes | Default for every Verify step. Fast, deterministic, runs in CI. |
| `build.sh -v` (VICE x64) | No | Interactive play-testing. Needs a real display. | | `build.sh -v` / `-V` (VICE) | No | Optional, interactive only. VICE is unreliable in this headless env and not used for verification. |
| `build.sh -V` (VICE x64sc) | No | Cycle-exact validation. Same display requirement. |
| `x128` / `xvic` / `xpet` | No | Out of scope (we target C64 PAL). | | `x128` / `xvic` / `xpet` | No | Out of scope (we target C64 PAL). |
**Bottom line for the plan:** every `Verify` step uses `build.sh -e` **Bottom line for the plan:** every `Verify` step uses `build.sh -e`