Support distributor DLL packages and validate Windows player mode

This commit is contained in:
xdfnx-dev committed 2026-10-03 11:28:21 +03:00
1 parent 65ab1460a8
commit df415ec828
8 files changed
+191 -16

No files matched your search

+27 -2
View File
@@ -2,8 +2,11 @@
The shim, diagnostics, native K/M kernels and game installer accept the
targets below, with one package per actual ISA. **Only RX 9070 XT has physical
validation here.** All other targets are experimental and compile-tested;
working DLSS, interop and performance on them remain unverified.
validation here.** Community RX 9060 XT / gfx1200 logs now show K/M backend
execution in Cyberpunk and Dawnwalker with all required native layers and
finite output. Visual issues remain reported and are not resolved by those
checks. All other targets are experimental and compile-tested; their DLSS,
interop and performance remain unverified.
| Family | Target | Examples / scope |
| --- | --- | --- |
@@ -68,6 +71,28 @@ The new packages/preflight address the identified failures. They do not prove
those games work on RX 9060 XT; a new native-D3D12 run on that GPU is required.
Raw community logs and personal directory paths stay local.
## Community retest, 2026-10-03
[Comment 5962444244](https://github.com/countervolts/d4r/issues/10#issuecomment-5962444244)
uses the corrected `52d9872` package / `3d62b98` binaries on RX 9060 XT
(`gfx1200`, 16 GB). Cyberpunk K/M complete 4,365 / 1,751 session frames;
Dawnwalker K/M complete 6,713 / 1,690. Every frame has a finite-output GPU
check, all required native layers execute and all four sessions exit normally.
The logs record zero backend failures, previous-frame outputs and CPU image
copies. This is community backend coverage, not a reference-image comparison:
the tester reports texture/LOD and motion-related artifacts. All four runs use
the HDR network input/output path, unlike the local Cyberpunk LDR validation.
Spider-Man 2 crashes with `0xc0000005` before any completed DLSS frame;
its nonstandard launch is not evidence of a transformer kernel failure.
Assassin's Creed exits with zero frames and Streamline logs repeated internal
minidumps; its clean process exit is still inconclusive. Their causes remain
open without a stack trace. The Witcher 3 log in
[comment 5962808629](https://github.com/countervolts/d4r/issues/10#issuecomment-5962808629)
selects the gfx1200 d4r shim instead of the original NGX core (its SHA256
matches the shipped shim exactly), and the installer correctly refuses
before modifying the game. It does not establish a Witcher runtime failure.
## Build
Prepare dependencies following `windows-rdna4-port.md`. Default: gfx1201.
+7 -4
View File
@@ -9,14 +9,16 @@ The package detects the real GPU automatically. Do not rename any DLLs.
Already installed an older test? Close the game and run RESTORE-GAME.cmd
from that old package first, then extract this version to a new folder.
2. CLOSE YOUR GAME. Have these TWO ORIGINAL NVIDIA files ready:
2. CLOSE YOUR GAME. If your distributor included the validated NVIDIA DLL pair,
it is selected automatically; you only need to choose the game executable.
Otherwise have these TWO ORIGINAL NVIDIA files ready:
_nvngx.dll version 32.0.16.1714
nvngx_dlss.dll version 310.9.1
NVIDIA DLLs are not included. Other versions are rejected.
The xdfnx-dev public test ZIP does not include them. Other versions are rejected.
The small _nvngx.dll inside this package is d4r, NOT the original NVIDIA file.
3. DOUBLE-CLICK START-K.cmd. Pick the actual game .exe when asked.
Pick your two NVIDIA DLLs. These choices are remembered for the next run.
If asked, pick your two NVIDIA DLLs. These choices are remembered for the next run.
Next time, press Enter for the same game, or C to choose another.
If Steam/Epic is needed, keep it open. Choose a D3D12 game without anti-cheat.
If a launcher opens, type C and choose the real game executable next time.
@@ -53,7 +55,8 @@ Colour, depth, motion and output remain in VRAM in the runtime fast path.
Runtime files are in files/. Cache/settings are created in work/.
Licenses are in licenses/. Corresponding sources are a SEPARATE release download;
testers do not need to download or build them. No NVIDIA proprietary DLLs are shipped.
testers do not need to download or build them. NVIDIA DLLs, when supplied by a
distributor, keep their separate license and are not part of the GPL source archive.
Report: https://github.com/countervolts/d4r/issues/10
Source: https://github.com/xdfnx-dev/d4r
+70
View File
@@ -19,6 +19,76 @@ explicit limits; the validated package keeps conservative arithmetic.
## Milestone and gates
2026-10-03 upstream Windows refresh: imported ayo's `e7e5c44` (LF patch
attributes) and `54c201a` (drag-in installation / per-game `d4r.ini`) while
preserving their authorship. The target-independent NGX loader selects the
shim using the game's D3D12/HIP LUID. Player mode derives paths and the
validated codegen settings from `d4r.ini`, pins NVIDIA DLL identities and
exposes K/M, async interop, logging, validation and cache settings. OptiScaler
patch `0006` resolves relative library directories. These changes do not
replace the transformer arithmetic or establish a performance improvement.
The new packaging fixture passes 3/3 cases. Player config/loader probes pass
2/2 in both PowerShell 5 and PowerShell 7, including real gfx1201 LUID
selection without executing GPU kernels. Found and fixed a PowerShell 7
argument-quoting regression in `test-player-config.ps1`: only Legacy/PS5
passing needs escaped embedded quotes. Both new DLL targets compile through
CMake/Ninja, and all 20 RX 9070 XT CTest gates pass (6.21 seconds).
Reports are in `test-results/upstream-player-54c201a-ps5/`,
`upstream-player-54c201a-ps7/` and `upstream-release-54c201a/`.
The drag-in installation has not yet received a real-game K/M test, and
OptiScaler patch `0006` is not in the previously published frontend binary.
The existing public quick-test archive is unchanged and continues to use the
game-tested installer layout. Do not label it as the new drag-in release.
2026-10-03 community retest ([comment 5962444244](https://github.com/countervolts/d4r/issues/10#issuecomment-5962444244)):
seven new diagnostic bundles are read without running their contents. On
RX 9060 XT / gfx1200, Cyberpunk K/M complete **4365 / 1751** frames and
Dawnwalker K/M complete **6713 / 1690**. Each frame has a finite-output GPU
check; all required native transformer layers execute, exit codes are zero,
and backend failures / previous-frame output / CPU image-copy counters are
zero. These sessions use HDR input/output helpers; the local Cyberpunk tests
below used LDR. This establishes additional community backend execution,
not numerical or visual equivalence. The tester reports texture/LOD and motion
artifacts, which remain an explicit correctness gate before performance work.
Do not claim that NaN/Inf scans establish image correctness.
Mean recorded `interop_ngx_ms` is 18.623 / 50.237 ms for Cyberpunk K/M and
8.126 / 32.632 ms for Dawnwalker K/M. These are CPU completion intervals in
the synchronous diagnostic, including scheduling and validation, not isolated
GPU kernel times or a controlled cross-game/preset benchmark. K performance
remains open. Extracted logs, original ZIP hashes and parsed reports stay local
under `build/issue-10-latest/`; personal user paths are not committed.
The new Spider-Man 2 log exits `0xc0000005` before a DLSS frame, without a
usable crash stack. Assassin's Creed's process exits zero with no DLSS frames,
but Streamline reports repeated internal minidumps before capability discovery;
it remains inconclusive. Neither report establishes a native WMMA failure.
[The Witcher 3 report](https://github.com/countervolts/d4r/issues/10#issuecomment-5962808629)
selects the gfx1200 d4r shim instead of the original NGX core; the submitted
SHA256 matches that shim exactly. It is rejected before installation, rather
than failing a GPU workload. Launcher/Streamline crash diagnosis remains open.
Distributor-supplied NVIDIA DLL support: quick-test packaging accepts optional
`-NvidiaDirectory <directory>` and `-NvidiaLicensePath <applicable-license>`.
It stages the exact validated originals under `files/nvidia/`, adds both DLLs
and the separate license to integrity metadata and selects them automatically.
Explicit developer overrides still have strict SHA256 checks; bundled files
take precedence over stale remembered file selections. Restore remains
independent of DLL/GPU selection. This option is for local testing or a
distributor with appropriate permission; matching hashes are not a grant of
redistribution rights. The current public xdfnx-dev release remains unchanged
and contains no NVIDIA runtime binaries or private NVIDIA-derived kernels.
The [current NVIDIA SDK license](https://github.com/NVIDIA/DLSS/blob/main/LICENSE.txt)
has distribution conditions and a supplement limiting DLSS/NGX development
to systems with NVIDIA GPUs; the Linux bundle's contents alone do not resolve
permission for this Windows package. A local-only bundled package with the
user-provided pair passes eight isolated installer/restore/negative fixtures,
including stale-choice recovery and altered bundled-core rejection before any
game write. The ordinary no-DLL package also passes all six existing fixtures;
reports are in `test-results/windows-bundled-fixtures/` and
`windows-unbundled-fixtures/`. Real games are untouched by these fixture tests.
2026-10-02 issue #10 follow-up ([comment 5958769640](https://github.com/countervolts/d4r/issues/10#issuecomment-5958769640)):
four new logs confirm that RX 9060 XT / gfx1200 HIP discovery succeeds. The
Cyberpunk K/M runs never launch the transformer: numeric CUDA NGX capabilities