Commit Graph

924 Commits

Author SHA1 Message Date
Matt Stanley 916da6f80d Integrate shared disc tray with the maintained menu provider (#652) 2026-10-19 18:13:38 -07:00
Matthew Stanley ee9e464fd0 Preserve stock-frame VSync on faster displays 2026-10-19 18:02:47 -07:00
Matt Stanley 13b7f81d29 Add guarded instruction variants fixed during offline mod activation
Keep selector zero stock and seal all choices until the next session restart. Refuse nonzero online activation, scope non-stock save states by frozen choices, and preserve original instruction guards when combined with effective-address adapters. Use overlay ABI34 on current master without the old menu dependency stack.
2026-10-19 16:37:32 -07:00
Matt Stanley c0ffd6d4c5 Support guarded mod address adapters and atomic extended memory cards
Extract the audited adapters and card transport onto master without the held selector/menu stack. Keep adapters and codecs tied to mod activation, use overlay ABI 33, retain rejected-load protection on codec registration, and refuse extended-card codecs in netplay before frame zero. Preserve default atomic save publication and guest-visible write failures.
2026-10-19 16:00:11 -07:00
Matt Stanley bc574c5700 Isolate runtime publication and wall-time diagnostics from held mod selector stack 2026-10-19 14:07:22 -07:00
Matt Stanley 422238d0fa Merge current master and qualified review fixes into PR #642 2026-10-19 14:00:58 -07:00
Matt Stanley da9029a73a Merge current master and qualified review fixes into PR #408 2026-10-19 13:09:25 -07:00
Matt Stanley cda860fe74 Merge current master and qualified review fixes into PR #670 2026-10-19 13:09:14 -07:00
Matt Stanley aa36c8bfe4 Merge current master and qualified review fixes into PR #402 2026-10-19 13:08:01 -07:00
Matt Stanley 98f584b450 Merge current master and qualified review fixes into PR #646 2026-10-19 13:07:33 -07:00
Matt Stanley 82062711b3 Merge pull request #669 from RetroPortingToolKit/work/windows-file-identity-fallback
Use full verification for unqualified Windows file identities
2026-10-19 13:06:47 -07:00
Zap0xfce2 1b778616b7 feat(widescreen): continue framebuffer-feedback sprites into native-wide bands (#692)
* feat(widescreen): continue framebuffer-feedback sprites into native-wide bands

Titles tag a 15-bit sprite that copies a framebuffer 1:1 (gpu_ws_tag_feedback_rect / psx_mod_tag_feedback_rect). Where it touches the draw area's edge, gpu.c emits band spans and the new optional backend op wide_feedback_rect (GL incl. render thread, software) samples the source buffer's wide surface. Band texels count as bit 15 set, as the centre does once the trail blends.

The software rasterizer now writes the texel's bit 15 into the framebuffer, and wide_full can dump the surface alpha ("alpha":1).

* fix(widescreen): quantise band feedback like packed VRAM

The centre samples 5-bit packed VRAM each frame; the band copy read the 8-bit wide surface and modulated with /128, so the bands drifted ~3 grey levels brighter and left a step at the 4:3 edge. Truncate like PACK_FS and modulate like TEX_FS.

* Reject fully clipped sprites before extending feedback margins

* Complete isolated resident and PGXP fixture collaborators

* Preserve existing line endings in the review fixes

---------

Co-authored-by: Matthew Stanley <1379tech@gmail.com>
2026-10-19 11:44:13 -07:00
Matt Stanley 282a72e3bd Merge pull request #691 from maliquem/fix/mdec-busy-drain
mdec: keep status bit 29 set until decode output is down to one OutFIFO load
2026-10-19 11:44:07 -07:00
Matt Stanley ac71aec441 Merge pull request #685 from boburning/fix/portable-generated-texture-defaults
Keep runtime-generated texture-pack defaults portable across installs
2026-10-19 11:44:00 -07:00
Matt Stanley 01564fa71e Merge pull request #680 from Alexbeav/fix/ps1b526-same-thread-rfe-k0-20261017
interrupts: retain handler k0 on qualified same-thread RFE
2026-10-19 11:43:54 -07:00
Matt Stanley c159a94cc6 Merge pull request #679 from Alexbeav/fix/ps1b526-digital-pad-command-id-20261017
sio: preserve digital pad ID when rejecting a command
2026-10-19 11:43:48 -07:00
Matt Stanley 02173a5e24 Merge pull request #694 from zap0xfce2/fix/cli-musl-toolchain-bios-stamp
fix(cli): write the BIOS emitter stamp after generate --bios (#672, part 2)
2026-10-19 11:10:33 -07:00
Matt Stanley c24a236c4d Merge pull request #678 from Alexbeav/fix/ps1b526-cycle-fixture-link-20261017
tests: refresh isolated clock and optional-netplay fixtures
2026-10-19 11:10:17 -07:00
Zap0xfce2 9de74475b3 fix(cli): write the BIOS emitter stamp after generate --bios
regen_bios_profile now records generated/<out_stem>.emitter.sha via tools/bios_emitter_fingerprint.cmake, like tools/regen_bios.sh, so the next configure does not report the fresh BIOS as STALE.
2026-10-19 16:38:41 +02:00
maliquem 613112996f mdec: keep status bit 29 set until decode output is down to one OutFIFO load
Bit 29 is Beetle's InCommand. The hardware decodes progressively and stalls
while its 32-word OutFIFO is full, so a decode command stays in progress until
all but the last FIFO load of its output has been read. mdec.c decodes a whole
command at once and cleared the bit at execute time.

libpress DecDCTin spins on bit 29 before issuing the next frame. Reporting
ready early let Breath of Fire IV's FMV player issue the next DecDCTin and
DecDCTout while a column DMA was mid-transfer; DecDCTout's CHCR=0 restart
dropped the 205 words already moved, so every later column read started 820
bytes late (vertical stripes at macroblock edges, a one-macroblock vertical
wrap and shifted colour channels in the intro FMV).

Derive the bit from the unread output instead. No new state, so snapshots
are unchanged. Adds mdec_busy_drain_test (fails on the old behaviour).
2026-10-19 10:38:08 -03:00
Matthew Stanley a848b2281e Retain complete radial masks across buffered packet layouts 2026-10-18 21:54:58 -07:00
Matthew Stanley 96fbf0391c Merge remote-tracking branch 'origin/master' into fix/playtest-renderer-coverage-20261018 2026-10-18 21:08:46 -07:00
Matthew Stanley db596520ab Record real renderer activity and explicit playtest verification coverage 2026-10-18 20:55:22 -07:00
boburning 572558394b Keep runtime-generated texture-pack defaults portable across installs 2026-10-18 13:09:07 -04:00
Matthew Stanley 852199db7c Stage OpenBIOS assets only when its backend is linked 2026-10-17 15:49:54 -07:00
Matthew Stanley 947f1da5de Audit the current Windows offline toolchain picker title 2026-10-17 15:16:39 -07:00
Matthew Stanley a9a19e70f5 Omit launcher state and demo ROM fixtures from setup SDKs 2026-10-17 15:04:02 -07:00
Matthew Stanley 2c92ac3ff1 Restore native POSIX setup tools and platform release validation 2026-10-17 14:17:16 -07:00
Matthew Stanley 444264f2aa Restore retail-only setup packaging and audit diagnostic release ZIPs 2026-10-17 14:04:52 -07:00
Matthew Stanley 40892ebb2c Fix transition capture and enforce title-disabled mod packages 2026-10-17 13:15:40 -07:00
Matthew Stanley 4a7a8d54ac Keep diagnostic display independent and stage setup replay helper 2026-10-17 13:13:02 -07:00
Matthew Stanley 09221b8263 Share bounded playtest diagnostics and isolated verified replay 2026-10-17 13:04:46 -07:00
Matthew Stanley fedb5319d2 Support scoped modern controls and replay controller presence
Keep temporary keyboard profiles separate from saved bindings. Add optional persistent mouse capture with ordered release/focus/reset handling, and let offline sources represent an unplugged port without falling back to physical input. Existing capture and source defaults remain intact. Beads: beads-9wg8 and beads-eio.19.18.
2026-10-17 09:19:31 -07:00
Matthew Stanley 8bee2b14f2 Resume CD reads at the paused drive position
Preserve new Setloc targets and explicit seeks. Serialize the pending-location flag in a validated CDF3 extension while retaining CDF2 and legacy state readers. Covers ReadN/ReadS pause, repeated resume, seeks and state restores. Beads: beads-cgvd.
2026-10-17 09:18:17 -07:00
Alexandros Mandravillis b1fd460350 interrupts: retain handler k0 on qualified same-thread RFE 2026-10-17 18:01:31 +03:00
Alexandros Mandravillis c29cb9c339 sio: preserve digital pad ID when rejecting a command 2026-10-17 18:01:27 +03:00
Alexandros Mandravillis 628f47b33c tests: restore standalone GTE and muldiv clock fixture links 2026-10-17 18:01:24 +03:00
Shokunin b279afdc4a In-game presets: draw-thread-safe callbacks and a coherent menu seed
P1: quality_launcher_apply is now a pure preset -> rows mapping
(psxq::rows_from_runtime plus startup constants); it never writes the live
globals. The in-game menu publishes only thread-safe callbacks: that
mapper, and a re-detect that returns this session's detection (a fresh
probe needs the GL context and mutates the run's state, so it stays in the
pre-game launcher). Summary/reason strings and the detection are fixed on
the main thread at menu setup; settings_get reads only the main-thread
snapshot.

P2: psxq::MenuSelection keeps what the player selected versus what is live.
A pick's next-launch rows and netplay-deferred rows stay selected for the
next seed until the live value matches; other rows follow live. The host
classification moves to psxq::classify_launcher/row_differs (same rules).

Tests: quality_presets_test test_ingame_menu_host_path runs the review's
fixture through the host get/pick/apply/save path (Ultra -> High, then
Antialiasing = NONE; a governed edit is still Custom from High; a netplay-
deferred row stays selected). menu_quality_callbacks_test guards the
draw-thread callbacks against runtime writes and stateful calls.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 19:09:49 -07:00
Matthew Stanley 50958497c4 Integrate merged experimental wheel support before preset validation 2026-10-15 13:49:46 -07:00
Matthew Stanley a6ee3aa062 Integrate current master and canonical BIOS stamp for PR609 validation 2026-10-15 13:40:27 -07:00
Matthew Stanley 6d3c5308a7 Integrate current master and canonical BIOS stamp for preset re-review 2026-10-15 08:34:17 -07:00
Matthew Stanley c91331ff67 Isolate save slots for verified mod content plans 2026-10-15 01:50:14 -07:00
Matthew Stanley f3236362fc Expect authoritative source hashing in legacy netplay commits 2026-10-15 01:19:15 -07:00
Matthew Stanley d234f1b55f Merge Windows content-verification fallback 2026-10-15 01:17:06 -07:00
Matthew Stanley c91dba45af Retain verified disc identity in negotiated content plans 2026-10-15 01:17:06 -07:00
Matthew Stanley c5da091a28 Verify catalogs and exercise preparation without cheap file stamps 2026-10-15 01:15:18 -07:00
Matt Stanley b6835b6773 Merge pull request #667 from RetroPortingToolKit/work/prepared-resource-overlays
Support verified prepared resources as disc overlays
2026-10-15 00:51:10 -07:00
Matthew Stanley d110d0a423 Integrate current master for reviewed PR597 and retain canonical BIOS stamp 2026-10-15 00:36:07 -07:00
Matt Stanley d550ddf2e9 Merge pull request #590 from RetroPortingToolKit/feat/idle-skip-store-counters
idle_skip: elide store-counter wait loops (PsyQ v_wait), opt-in
2026-10-15 00:34:00 -07:00
Matt Stanley bf7582bb3e Merge pull request #666 from FractalEngineer/feat/vr-hud-surfaces
Add isolated render capture and head-facing surfaces for VR HUDs
2026-10-15 00:33:52 -07:00