0.1b (2026-08-25) — DVD-game screen timing + boot-menu fixes
DVD player core for MiSTer — alpha. OSD version line: v0.1b 260825.
Incremental drop on top of 0.1a. Both user-facing fixes here are on interactive DVD-game discs; film and TV playback is unchanged.
Fixes
Short screens no longer flash past (#5). A cell's authored playback time is a BCD {hh, mm, ss, rate|frames}, and the reader was reading hh:mm:ss only — throwing away the frame field. Game discs author their short screens as "N seconds + (fps−1) frames", i.e. one frame under N+1 seconds, so Weakest Link's correct/wrong answer reveal and its "money banked" screen (1 s + 24 f = 1.96 s, each a single I-frame) were stored as 1 s — under the hold threshold, so they got no hold at all and flashed by in ~0.2 s. Those screens now stay up for their authored ~2 s. HW-confirmed.
Menu over a disc's copyright screen reaches the real menu (#4). On a DVD-game disc the playing title's VTSM Root PGC is often a dispatcher, not a menu — on Atmosfear it routed to a random 35-second clip. While no menu has been loaded since the mount, the Menu key now targets the disc's main menu VTS instead. A 141-disc sweep found 6 discs changed behaviour, all from a title landing to a menu landing. Deliberate, documented deviation from libdvdnav. HW-confirmed.
UNSUPPORTED IMAGE no longer fires on a slow load (#4). The watchdog now measures streaming time rather than wall time. HW-confirmed.
Also in this build
- RNG-seed hardening: the framework wall clock (
hps_io TIMESTAMP) is folded into the DVD-VM'srndseed, matching what libdvdnav does. Plus a genuine latent fix — the entropy-stir path could drive the LFSR to zero, which is absorbing, after which everyrndreturned 1 forever. Not verified against any symptom. - Documentation: the disc sweep, nav and VM notes now carry the full diagnosis trail for the above, including one retracted hypothesis.
Known limitation worth naming
Some game discs put their randomisation setup in the boot sequence and their menu trampoline jumps straight past it. Skip the intro with Menu and the game can repeat a single question all round. That is how the disc is authored — a real player and libdvdnav do the same thing — so let the intro play. (Weakest Link is the example; details in docs/disc_sweep.md.)
Install
Copy DVD_v01b_20260825_2220.rbf to the SD card and load it like any core. If you are updating from an older build and the OSD defaults look wrong, delete /media/fat/config/DVD.cfg — MiSTer persists the status word per core and some option bits have been reordered.
Timing: SEED 9, clk_dec 90.70 MHz @100c / 90.14 MHz @−40C (gate 86.0). Note this exact bitstream has not itself been run on hardware; the fixes above were confirmed on same-RTL builds.