Fixes Ape Escape terrain seams: CPU-built subdivision midpoints and lwl/lwr-copied
grid corners drew native next to precise neighbours. Adds pgxp_tri_ring/pgxp_store_ring.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
pass_capture_into copied the unshifted canonical frame over an anchored wide
surface: interpolated frames showed stale margins and a displaced, flickering centre.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The fixture no longer compiled (poisoned s_scale, duplicate psx_cycle_count),
and gl_renderer_capture_display_hires fell back to a write that ignored pitch.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Mouse policy now folds onto the resolved pad (source included) instead of a discarded capture; no-policy path does no mouse polling.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Non-Windows only reconciled while focused AND captured; focus loss drops capture, so a release outside the window left activation_down_ stuck. Decision moved to LocalMousePolicy::sync_left (tested).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
(cherry picked from commit f012cf1693)
pgxp.cpp now calls gte_geometry_correction_lookup_probe for pre-draw
probes; the session harness links pgxp.cpp without gte.cpp, so give it
the same no-op stub it already has for gte_geometry_correction_lookup.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
runtime/tests/test_openxr_color_gl.c is compiled and run by
run_openxr_color_gl.py (a real-GL fixture, like test_gl_readback_region.c),
not a ctest binary. Without the allowlist entry the recompiler project fails
its test-registration check, which blocks configuring that tree.
The shared GL fixture (test_gl_scale_invariance.c) includes
gpu_gl_renderer.c directly. It now reads psx_cycle_count and
g_psx_vblank_cycles and calls the psx_openxr_* core, none of which the GL
filter/scale runners provided, so gl_texture_filter_test failed to link.
Define the same guest-clock stand-ins as test_gl_readback_region.c and
compile psx_openxr.c (its no-op shims without PSX_OPENXR) into the two
runners, as run_gl_readback_region.py already does.
The shared GL fixture (test_gl_scale_invariance.c) includes
gpu_gl_renderer.c directly. The stereo-pair freshness check added for
render passes reads psx_cycle_count and g_psx_vblank_cycles, which the
fixture never provided, so gl_texture_filter_test failed to link on
Windows (and the non-Windows scale test would too).
Define the same test stand-ins as test_gl_readback_region.c.
Rebase a shadow onto GP0's 11-bit field only when flag bits sit above it;
a plain overflowed number keeps master's exact-agreement check.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>