Commit Graph

234 Commits

Author SHA1 Message Date
Alex Vanderveen c19618adc6 BIOS handling 2026-08-03 14:44:17 -04:00
Alex Vanderveen 2889550f50 bios path bump 2026-08-03 08:36:14 -04:00
Alex Vanderveen a0ef88887d bump wizard 2026-08-03 08:20:30 -04:00
Alex Vanderveen f1f892049e fix: persist absolute BIOS paths across generate/relaunch.
Relative bios.cfg / settings picks like bios/SCPH1001.BIN broke after
rebuild when cwd was build/; launcher verify also ignored exe-anchored
resolve. Absolutize sidecars, hydrate from bios.cfg, and resolve in
ae_bios_verify.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 08:07:02 -04:00
Alex Vanderveen ba276624b9 patch bad merge 2026-08-03 05:26:37 -04:00
Alex Vanderveen 804d3094c0 Merge feat/game-codegen-hooks into feat/rollback-netplay.
Keep rollback netplay/runtime authority (dual-raster, snaps, lobby) while
taking local codegen host/CLI/toolchain packaging from game-codegen-hooks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 05:13:45 -04:00
Alex Vanderveen 0feb7709f6 rollback opengl render path, ICE patches, resim optimizations 2026-08-03 05:04:48 -04:00
Alex Vanderveen 7234d347ea Merge upstream/master into feat/game-codegen-hooks.
Keep local codegen/FMV cutover/zlib host work while taking upstream
tests, FPS telemetry, and mod-provider wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 03:29:32 -04:00
Alex Vanderveen 90266d4eaa resim optimizations 2026-08-02 19:11:04 -04:00
Alex Vanderveen fb252728a5 optimize scheduler WAN performance 2026-08-02 16:12:01 -04:00
Alex Vanderveen cc6b061f24 resim catchup patch 2026-08-02 13:23:55 -04:00
Alex Vanderveen 9769e9fbc2 rollback patches 2026-08-02 00:08:39 -04:00
Matthew Stanley 0cfa9fe0a8 runtime: add PaRappa timing debug controls 2026-08-01 16:11:11 -07:00
Alex Vanderveen 4ddd2d01b9 rollback patches 2026-08-01 14:13:58 -04:00
Matthew Stanley 5176e40037 build: isolate the SDL3 entry point implementation
SDL_main.h is a single-header implementation in SDL3. Include it only from the translation unit that owns main so MinGW emits one WinMain instead of one per SDL-using source.
2026-08-01 10:43:59 -07:00
Matthew Stanley 987c6eeced Revert "Merge pull request #87 from mstan/feat/ui-5p"
This reverts commit e01347cbca, reversing
changes made to 60cb60eee6.
2026-07-31 15:37:57 -07:00
Alex Vanderveen 0e6416d5b0 Allow BIOS-free setup hosts; defer BIOS C to local generate.
PSXRECOMP_ALLOW_NO_BIOS links an empty backend registry so CI can ship a
launcher without OpenBIOS/SCPH1001 generated C. First-run generate emits
BIOS backends on the user's machine.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 17:51:40 -04:00
Alex Vanderveen fe403e6ce1 rollback patches 2026-07-31 17:14:35 -04:00
Alex Vanderveen e7f68a2ba7 Restore BPE FMV cutover fix and SIMD MDEC paths.
Only re-arm depth24 cutover blank on long MDEC idle (not every ~15fps
decode gap), and bring back SSE2/NEON IDCT hot paths lost from the dirty tree.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 17:07:58 -04:00
Alex Vanderveen 2d0bfe5dac Wire PSX_HAS_GAME_CODEGEN into the launcher setup path.
Call the game codegen host after BIOS/disc checks so missing generated/
opens Generate & rebuild, and handle relaunch after a successful rebuild.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 16:53:16 -04:00
Alex Vanderveen 6c6bde94ae initial rollback patches for input handling and resim accuracy 2026-07-30 13:19:55 -04:00
Alex Vanderveen 88234d5e60 rollback integrations 2 2026-07-30 02:00:31 -04:00
Alex Vanderveen 3b88d9f9b5 rollback integrations 2 2026-07-30 01:58:30 -04:00
Alex Vanderveen 2b35b76a56 rollback engine patch 1 2026-07-29 21:44:44 -04:00
Alex Vanderveen 92efb5c4fd no mods in MP, minor patches 2026-07-29 02:40:50 -04:00
Alex Vanderveen 227d395823 ICE optimizations, connectivity, latency polling, save/loadstate performance 2026-07-28 00:16:30 -04:00
Alex Vanderveen fbad0be1b9 launcher performance, load state performance, game launch performance
it stops checking the entire PSX disc for full hash check every time the launcher runs, assuming the user's hash checked it when selecting the disc the first time and saving it to settings, so it just validates the file name and size instead, then it shares lifecycle with the launcher and the game to load the game faster, and several optimizations were made to loadstate paths which I think in the end relied on reanchoring host timings to the restored clock that came with the state
2026-07-27 11:03:10 -04:00
Alex Vanderveen ab99a6acac delay sync patches 2026-07-24 20:13:26 -04:00
Alex Vanderveen 5e75c845ea Merge origin/feat/ui-5p into feat/ui-5p
Resolve main.cpp comment conflicts (keep MotK NETPLAY/P1 wording and
fail-closed match_caps launch). Point lib/recomp-net at 5336f24 (same
tree as local host-auth delay sync patch).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-24 18:31:17 -04:00
Alex Vanderveen 80d207024f netplay patch 2026-07-24 18:27:07 -04:00
Alex Vanderveen 2bba3cdc1e netplay patch 2026-07-24 18:26:40 -04:00
Alex Vanderveen 2c372195d1 Update main.cpp 2026-07-24 15:40:05 -04:00
Alex Vanderveen e2e3bbb82e Fix accidental conflict markers from MotK stash merge on feat/ui-5p.
Restore the six conflicted runtime files to the clean 5p tip so shared psxrecomp matches BPE again.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-24 14:43:09 -04:00
Alex Vanderveen 2431c773a1 Netplay 5p MotK sync: lobby client relay/bind fixes on feat/ui-5p.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-24 14:42:22 -04:00
Alex Vanderveen 50334aea61 psx 5p networking patch 2026-07-24 14:41:53 -04:00
Alex Vanderveen 0a1414f378 Update main.cpp 2026-07-23 21:57:31 -04:00
Alex Vanderveen 9b44327793 launcher BIOS + ROM prompt 2026-07-23 20:25:33 -04:00
Alex Vanderveen 20cfcc144b Defer offline multitap until after game entry.
Enabling SCPH-1070 during BIOS boot breaks pad/LoadExe bring-up for
N-player titles. Offline builds arm multitap once fntrace sees game start;
netplay still enables from slot_count >= 3.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 23:42:18 -04:00
Alex Vanderveen 65d254cc9b Add MAX_PLAYERS build flag, multitap, and N-slot netplay wiring.
Games pass MAX_PLAYERS (2..5, default 2) to bake PSX_MAX_PLAYERS. SCPH-1070
multitap maps pads 0–3 on port 1 and pad 4 on port 2. Lobby max_slots and
recomp-net slot_count follow the game player count; MotK stays at 2.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 23:09:00 -04:00
Alex Vanderveen f8c9af3d6b Netplay: LAN/online lobby split, rematch soft-return, port conflict handling.
Keep LAN membership on the local registry/UDP path and online lobbies on the
WebSocket server, return soft-exits to the same room for rematch, accept
guest ephemeral peers, and fail LAN create when the UDP port is busy while
online create auto-selects a free port. Bump recomp-ui for lobby UI updates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 21:24:19 -04:00
Alex Vanderveen 3d6b0f3a86 launcher: enumerate LAN IPs for host advertise dropdown
Implement list_lan_ips (GetAdaptersAddresses / getifaddrs), bump
recomp-ui for the Host Lobby LAN IP combo, and keep UDP bind on 0.0.0.0.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 13:17:03 -04:00
Matthew Stanley 87491cb035 launcher: integrate recomp-ui netplay flow 2026-07-21 21:39:28 -07:00
Matthew Stanley 0527806ce3 Repair netplay PR rebase for MotK bring-up 2026-07-21 21:38:05 -07:00
Alex Vanderveen fe7913cbca Fix psx_cycles / audio linkage for MotK CI.
Export service_to_now, rename advance to *_slow for the header inline,
and give g_audio_host_rate C linkage.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-21 21:38:05 -07:00
Alex Vanderveen 7cf9958135 FMV optimizations 2026-07-21 21:38:04 -07:00
Alex Vanderveen 31015ceab1 feat: launcher polish and recomp-net lobby netplay
Wire MotK-style lobby (recomp-net submodule, WS client, match_caps),
netplay delay-sync, and launcher UX so host sim settings stay aligned
across peers.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-21 21:37:57 -07:00
Matthew Stanley 9228f32c00 runtime: keep Vulkan opt-in and remove old launcher
Remove the in-tree launcher implementation and its submodules now that game projects use recomp-ui for launcher support.

Keep Vulkan hidden from the launcher unless a game explicitly sets [video] offer_vulkan = true, and clamp stale Vulkan settings back to OpenGL when it is not offered.

Co-authored-by: Martin Penkava <mpenkava1337@gmail.com>
2026-07-21 16:31:36 -07:00
Steve Gilissen 1ae1cfdaf6 runtime: add mod frame hooks
Add a small generic frame-hook surface for statically linked mod code. Mods can
register C callbacks with mod_register_frame_hook(); the runtime invokes them
after normal input sampling and before presentation/widescreen frame work.

Expose the SDL window symbol with C linkage so linked mod code can integrate
with SDL APIs such as window grab control.
2026-07-21 15:45:45 -07:00
Opok 4412bc7a7d widescreen: add per-primitive X-reject bound-load cull sites
Add opt-in [widescreen.cull] xclip_load_sites: a configured `lw rt,off(rs)`
loading a per-primitive X-reject bound (sltu-compared against ANDI-masked
u16 screen X) routes through psx_ws_xclip_bound() - INT32_MAX while the
margins are revealed (reject disabled; the wide-surface scissor clips the
overflow, wrapped off-left u16 coords pass), vanilla value at 4:3. Matched
native codegen emit and interpreter hook; overlay ABI v18 forwarder (NULL
preserves the vanilla loaded value); codegen ver 8. Parser, codegen and
overlay-mismatch regression coverage.

Split from #49: replaces the xclip_globals RAM poke with a recompile-time
instruction transform so native shards and the interpreter behave identically.
2026-07-21 15:02:20 -07:00
Matthew Stanley 2ba20f5af7 runtime: make FPS stderr logging opt-in 2026-07-21 14:53:47 -07:00