Replace the single start_cmd manifest field with a "programs" list so a
game can expose more than one runnable binary. Duke Nukem 3D's manifests
now offer Play and Setup (DOS sound hardware config), and every ScummVM
manifest offers Start and Manager (ScummVM's own graphical Launcher).
Also fixes two real bugs found along the way:
- All 5 ScummVM manifests were passing the game id as `-f <id>`, but -f
is ScummVM's --fullscreen flag; ScummVM rejected it as a stray argument
and exited before the setup page's poll interval could notice, so
clicking Start silently did nothing. Switched to --auto-detect.
- The page's audio-unlock listener called ctx.resume() once on first
click/keydown and unconditionally removed itself with no .catch(), so
a silently failed first attempt left the AudioContext stuck suspended
forever with no way to retry. Now retries on every click/keydown until
ctx.state actually reports "running".
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NiNnj78HGx1KWyCCo39HSz