What's fixed
- Fixed the garbage pixel strip at the top of the screen during the
Nintendo/Enix/Treasure intro logos
(#37).
The game copies palette data into framebuffer rows a CRT never displayed;
presentation now skips the rows above the video interface origin and hides
the first scanned-out rows the way CRT overscan did. This affected every
GPU, aspect ratio, and antialiasing mode, not only the AMD fullscreen setup
in the report. - Added a VSync option. VSync stays on by default and can be disabled from
the launcher's Advanced tab, with--no-vsync, or withvsync=0in
display.cfg— no more forcing it off in the GPU driver's control panel.
Disabling it presents without waiting for the display and can tear. - Fullscreen now starts at the monitor's current desktop mode instead of the
saved windowed resolution, which previously made the renderer allocate an
oversized transient render target (up to 18x with supersampling) when a 4K
size was saved on a 1080p desktop.
Performance guidance and launcher
- The recommended baseline is native 60 fps with antialiasing off. At the
recomp's high internal resolution, MSAA/SSAA often make only a subtle
visual difference; if there is spare headroom, raising the frame-rate
target is the more noticeable upgrade. The launcher now ships quick presets
(Recommended, Higher FPS, Try 4x MSAA), estimates the internal render
target, and warns when SSAA is combined with high-rate interpolation.
Diagnostics
- Presentation-path telemetry: the five-second session reports now include a
[present]record from the real presentation thread — measured present
cadence with p95/p99 tails, late and missed deadlines, interpolated and
skipped frames, and the time blocked in swap-chain acquisition, the GPU
fence, present waits, and pacing — closing the blind spot that made the
July Windows stutter report unattributable. - Process memory and thread statistics now also report on Windows, and the
render-target size and antialiasing state appear in every report.
The implementation and test evidence landed in
#38.
Full changelog: v0.3.6...v0.3.7