Commit Graph

1646 Commits

Author SHA1 Message Date
Matthew Stanley b0bb115dd0 Honor HOLD when presenting native replay generations 2026-10-06 18:36:52 -07:00
Matthew Stanley 4771a9c236 Repair renderer fixture symbols and snapshot version guards 2026-10-06 18:31:05 -07:00
Matthew Stanley 16d3672526 Add build-selected execution contracts and stateless HLE GTE service 2026-10-06 18:30:50 -07:00
Matt Stanley 7b2539415a Merge pull request #544 from RetroPortingToolKit/fix/ape-pgxp-terrain-seams
PGXP: carry precision through GTE-as-multiplier arithmetic and unaligned word copies
2026-10-06 14:01:53 -07:00
Matthew Stanley f9c7bb0a1c PGXP: carry precision through GTE-as-multiplier arithmetic and lwl/lwr word copies
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>
2026-10-06 13:35:43 -07:00
Matthew Stanley 458e6ece8d Skip the wide centre copy in render-pass captures while a camera view is active
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>
2026-10-06 12:53:03 -07:00
Matthew Stanley afc9d87367 Restore the GL readback fixture build; reject short capture pitch
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>
2026-10-06 12:53:02 -07:00
Matt Stanley d95eed86c2 Merge pull request #541 from RetroPortingToolKit/feat/mod-uncharged-guest-call
Add uncharged guest calls: run a guest function in zero guest time
2026-10-06 11:13:08 -07:00
Matthew Stanley 49fe052a3e Add uncharged guest calls: run a guest function in zero guest time
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-06 09:53:08 -07:00
Matthew Stanley 96b2c05c27 Drain queued world batches before wide overlays, bound forced replay spans, sequence presented images
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 23:33:30 -07:00
Matthew Stanley ddd903014f Keep resident packs in memory when the cache is unwritable and record adapter requests in an always-on ring
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 22:52:52 -07:00
Matthew Stanley a734cd9034 Record GPU list CPU holds, per-source exception cycles and recent C0 readbacks in always-on rings
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 22:52:52 -07:00
Matthew Stanley 66482a7cd8 Add opt-in netplay content negotiation with a backward-compatible LAN protocol
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 22:52:52 -07:00
Matthew Stanley d7fb33eb85 Add opt-in CD-DA playlists, media preparers, netplay render passes, hidden OpenGL headless and netplay_status
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 22:52:51 -07:00
Matthew Stanley d247ce8b88 Add opt-in netplay local viewport width sites, fixed aspect and native-wide per-camera views
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 20:20:18 -07:00
Matthew Stanley 8aa3c63779 Refresh BIOS emitter stamps and fix SDL alias and external net root builds
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 20:20:07 -07:00
Matthew Stanley 6f9bdd94f2 Resolve controller source and mouse policy in one ordered external-input layer
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>
2026-10-05 13:49:35 -07:00
Matthew Stanley c00a09e556 Collapse identical SDL2/SDL3 arms in local mouse focus()
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 12d98c2202)
2026-10-05 13:49:35 -07:00
Matthew Stanley f7ca7237cd Reconcile a LEFT release missed while unfocused on focus regain
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)
2026-10-05 13:49:35 -07:00
Beman 93371b1782 Preserve ordered mouse re-press after delayed release
(cherry picked from commit 50ec9191c2)
2026-10-05 13:49:35 -07:00
Beman b5566c7b25 Support optional held mouse input policies for local P1
(cherry picked from commit 00ee1f40b6)
2026-10-05 13:49:35 -07:00
Matthew Stanley 9f13dd0bbc openxr: suspend presentation interpolation while a session runs; glDeleteProgram optional
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-05 13:41:02 -07:00
Matthew Stanley 78da432f1e Merge origin/master into pr497
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-05 13:39:19 -07:00
Matthew Stanley ad29fcf29d Merge remote-tracking branch 'origin/master' into landtmp/504 2026-10-05 13:25:30 -07:00
Matthew Stanley 19f009600c Merge remote-tracking branch 'origin/master' into landtmp/505
# Conflicts:
#	runtime/tests/test_gte_register_access.cpp
2026-10-05 13:25:10 -07:00
Matthew Stanley b31c40c2ae Merge remote-tracking branch 'origin/master' into landtmp/460 2026-10-05 13:24:39 -07:00
Matthew Stanley 9c88657abc Merge remote-tracking branch 'origin/master' into landtmp/496
# Conflicts:
#	docs/TCP_COMMANDS.md
#	runtime/runtime.cmake
2026-10-05 13:24:20 -07:00
Matthew Stanley a6674e6629 Merge remote-tracking branch 'origin/master' into landtmp/495
# Conflicts:
#	runtime/CMakeLists.txt
#	runtime/src/main.cpp
2026-10-05 13:24:03 -07:00
Matthew Stanley 82468f30d4 Merge remote-tracking branch 'origin/master' into landtmp/494 2026-10-05 13:23:40 -07:00
Matthew Stanley 96375896de Merge remote-tracking branch 'origin/master' into landtmp/493 2026-10-05 13:23:22 -07:00
Matthew Stanley 0da8c607b4 Merge remote-tracking branch 'origin/master' into landtmp/492
# Conflicts:
#	docs/TCP_COMMANDS.md
2026-10-05 13:23:03 -07:00
Shokunin 13cea2407f test(pgxp): link the session harness without a GTE backend
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>
2026-10-05 12:41:59 -07:00
Matthew Stanley c20a32fa2d Merge land/pr493 into land/pr496 2026-10-05 10:12:14 -07:00
Matthew Stanley 67e42e8833 mod controller source: call these offline controller sources, mod-trusted, not 'trusted'
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-05 10:12:08 -07:00
Matthew Stanley 3733764362 Merge origin/master into land/pr495 2026-10-05 10:11:51 -07:00
Matthew Stanley 091fb61d13 Merge land/pr490 into land/pr491
# Conflicts:
#	docs/TCP_COMMANDS.md
2026-10-05 10:11:45 -07:00
Matthew Stanley 029629ff89 Merge origin/master into land/pr494 2026-10-05 10:11:43 -07:00
Matthew Stanley e1673a52f2 Merge land/pr492 into land/pr493 2026-10-05 10:11:34 -07:00
Matthew Stanley 8bb46116ec Merge origin/master into land/pr490
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-05 10:11:10 -07:00
Matthew Stanley 4a276ef0a2 Merge origin/master into land/pr492 2026-10-05 10:11:09 -07:00
Yves a0ed4f7dec openxr: allowlist the color GL fixture in the test-registration guard
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.
2026-10-05 23:42:04 +08:00
Yves a8d859f38b Match encoded desktop colors in OpenXR gameplay and native copies 2026-10-05 23:15:48 +08:00
Yves 5a4a5ee94c tests: link the OpenXR core and guest clock into the GL fixtures
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.
2026-10-05 21:41:42 +08:00
Yves 28c55408d5 tests: define the guest clock the shared GL fixture's renderer reads
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.
2026-10-05 21:20:08 +08:00
Shokunin 5807fe8ec3 fix(pgxp): keep probe out of geometry counters 2026-10-05 03:40:41 -07:00
Shokunin ef768ada9c fix: fall back for unrecognized Windows build tags 2026-10-05 03:23:18 -07:00
Matthew Stanley 75294473a2 fix(renderer): preserve perspective world UVs through camera rounding 2026-10-04 23:18:39 -07:00
Matthew Stanley 3358f81e25 Let titles audit withheld plugin packages; SPU upload wraps like hardware
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-04 21:53:37 -07:00
Matthew Stanley 911426552a Add shared seamless-loading kit: resident disc packs and guest services
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-04 20:55:30 -07:00
Matthew Stanley e9da6ab8b1 Reconcile PGXP field rebase with exact agreement; fix merged test links
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>
2026-10-04 19:37:19 -07:00