Skip to content

Add LOLLIPOP CHAINSAW RePOP 1.21.1 support - #684

Open
thehobbit85 wants to merge 1 commit into
seedds:mainfrom
thehobbit85:codex/lollipop-chainsaw-repop
Open

thehobbit85 wants to merge 1 commit into
seedds:mainfrom
thehobbit85:codex/lollipop-chainsaw-repop

Conversation

@thehobbit85

@thehobbit85 thehobbit85 commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Current chain integration — November 13, 2026

Published commit f6a6261852f5c1bb2161cd8c06dc9f4d64a8b8a3 rebases the previously published 1ecdeac719dff1a982c8f0480588a38f825ff089 onto main 90b7cefd1d572ab05859c73930b436c4040cd25c. The confirmed conflict was only the generated chain header: it is regenerated from the actual Maxwell CAS + current tessellation-chain inputs as 25f4175be43c. All other paths match the automatic source merge, including main's tessellation replay/build logic and later shader-extraction corrections. Maxwell ATOM.CAS remains distinct from main's Ampere ATOMG.CAS; RePOP's profile remains necessary.

The entire NativeAOT translator source graph, universal executable, tool lock, RePOP profile and CAS test inputs are byte-identical to published 1ecdeac7. The earlier .NET SDK 10.0.402 NativeAOT build, no-weak-import checks, and ARM64/Rosetta output-identity results therefore still apply to those exact artifacts; no physical Intel or new game claim is made. Supported Metal 32023.922.4 / SPIRV-Cross pins are unchanged.

Fresh checks on this candidate with Python 3.14.6 and Xcode 27.2 (27B52), Metal 32023.922.4:

  • DMSH_TEST_XLATE=$PWD/dm/gfx/tools/dmsh_xlate_bin/dmsh_xlate DMSH_TEST_METAL=1 DMSH_TEST_METAL_SDKS=macosx,iphoneos DMSH_TEST_GPU=1 MTL_DEBUG_LAYER=1 python3 -m unittest -v dm.tools.tests.test_global_atomic_cas dm.tools.tests.test_nsp_chain dm.tools.tests.test_shader_lib dm.tools.tests.test_docs dm.tools.tests.test_native_tools dm.tools.tests.test_dmsh_abi: 63 passed, no skips. Includes 11 CAS readbacks with Metal validation, signed-address/unsupported-form checks and both SDK compiler paths.

  • make -C dm/gfx/tests GAME=0100DD301A686000 -j2 check_t_tess: 3 passed, no skips, including GPU expansion/layout checks with two seeds.

  • make -C dm/host GAME=0100DD301A686000 -j3: passed with the new chain header and main tessellation renderer. tool_lock.py --check-tools passed.

  • Pinned Ruff 0.17.2 / Pyright 1.1.414: dm/tools/lint_python.py passed, 321 findings against 321 baseline entries, zero new/stale; baseline unchanged.

Impacted-game limit: RePOP remains the profile affected by this feature, while the shared chain/tessellation integration can reach other games. Synthetic CAS, ABI/library and tessellation coverage above is not a full game regression. Automated RePOP gameplay/extraction remains stopped; no full game shader rebuild, game launch, current gameplay or performance pass is claimed. Libraries stamped with an older chain are not validated for this new chain; current game/library validation remains open. Earlier manual gameplay and shader comparisons below are historical. A new full native graphics campaign was not repeated; previous profile-specific failures/skips remain historical evidence, not fresh results on this revision. Remote CI on this replacement head is pending verification.

Previous published description, original commit context and validation history (historical; preserved verbatim)

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and the verified Maxwell global 32-bit ATOM.CAS instruction with signed extended addressing. Main still lacks the profile and Maxwell implementation. The existing Ampere instruction remains included.

Published commit 1ecdeac719dff1a982c8f0480588a38f825ff089 rebases 11d8ba396f4ac109e17f137170cb900a8c9ffe38 onto 2401b288717463f81080ab20034aec9351a37fa6. The complete RePOP profile and Maxwell production patch are preserved. Main’s native translator migration replaces the old managed DLL/PDB package. The combined source was built with the documented dm/tools/native_tools.sh dmsh_xlate procedure, using Microsoft .NET SDK 10.0.402, for ARM64 and x86-64. The supported Metal 32023.922.4 and SPIRV-Cross pins remain intact. Combined chain 8f2c1935f064.

The 249-case shader validation ran on 41e2b61f405df1ce1bb67d574f0e4607591bfb70 against 72ca2e09d565e8c144ad27f191948082e22464fa. All native translator sources, binary bytes and CAS/profile test inputs are identical in the final stamp-reader integration. The final chain and shader-library checks are recorded below.

Validation on Apple M2 Max, Xcode 27.2 and native Python 3.14:

  • 249 focused tests passed, with zero failures, errors or skips. This includes eleven CAS GPU readbacks with Metal validation, both supported SDK compilers, rejected unverified encodings, signed-address IR, native tool packaging, current Ampere, HMMA, mesh, raw-global-load and uniform-fetch behavior, ABI, chain, docs and profile checks.
  • ARM64 and x86-64 native slices report source digest 90b90d480e6aaf7e and produce byte-identical optimized CAS SPIR-V. Both carry no weak imports. The x86-64 slice ran under Rosetta on Apple Silicon. Physical Intel remains untested.
  • The existing signed-address reflection test now builds its managed dependency from the repository source into temporary test output. Its first migration attempt failed because MSBuild traversed the /var temporary-path symlink incorrectly. Canonicalizing that path corrected the setup, and the complete suite passed on rerun. The GPU cases exercise the bundled native translator.
  • On the final revision, all 71 shader-library, stamp, cache, chain and documentation tests passed with zero skips, and the RePOP Mac host rebuilt. Scoped LLVM 23.1.4 checking of the unchanged CAS Objective-C fixture passed with zero findings. Final pinned Python lint passed with 321 baseline findings, zero new and zero stale. Whitespace checks pass.

The comparison targets remain RePOP for its profile and Maxwell CAS, Scarlet and Tears of the Kingdom for recorded buffer atomics, Breath of the Wild for the shared NVN chain, and Bananza for Ampere/HMMA. Read-only discovery found no qualifying builds of these five under the inspected roots. Full game regression, current gameplay, full RePOP shader rebuilding and device validation remain open. Earlier gameplay and full graphics results retain their original revision labels below. A full native graphics suite on this revision remains open. Remote CI remains pending verification.

Historical published description, validation and original commit context

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and Maxwell global 32-bit ATOM.CAS with signed extended addressing. Current main still has the Maxwell stub. Its Ampere ATOMG.CAS is a separate instruction.

Current integration, 2026-11-10

Published commit 11d8ba396f4ac109e17f137170cb900a8c9ffe38 rebases 0f88e42743f79c0b212ee49475d573a9853fe0a2 onto bbea4c90f136f478e25228bc3d4ab33c77420f2e. The RePOP profile and Maxwell patch are preserved. Main retired the screenshot gallery and uses the complete game table for original Switch titles. RePOP is listed there with its game note. The original screenshot is preserved in the earlier published revision 0f88e42743f79c0b212ee49475d573a9853fe0a2.

The five managed translator outputs were rebuilt with .NET SDK 10.0.402 from the combined sources at 28d600a333e8ab5e498bbd16ba36e17f04d9ca9d. The final renderer-only integration leaves those build inputs and artifacts byte-identical. Main’s uniform-buffer bounds and vector-load changes, dependency graph, universal launcher, and compiler pins are preserved. The tool lock passes with Xcode 27.2 and Metal 32023.922.4 for both SDKs. Combined chain e35eeaceb813. AnyCPU metadata and launcher signature passed their checks on the identical package. Managed x64 execution and physical Intel validation remain open.

Validation on this revision

  • 49 focused tests passed with zero failures, errors, or skips. This includes eleven synthetic Maxwell CAS GPU readbacks, both SDK compilers, unsupported CAS forms, signed-address IR, uniform fetch, chain verification, and docs.
  • The RePOP Mac host and frame-rate fixture passed. Native checks passed for dirty slots (20), NVN (277), and texture readback (188 with fast wake enabled, 189 with it disabled). The updated texture-copy checks ran on the final renderer. Scoped LLVM 23.1.4 checking of the CAS fixture passed. A full native graphics run on this head remains open.
  • The broader run on 28d600a333e8ab5e498bbd16ba36e17f04d9ca9d recorded 292 passes, four failures and six errors in 302 tests. Exact main 5e1c1aec reproduced all ten. Three Pokopia assertions still expect unguarded uniform reads, six mesh tests lack dmsh_fetch in their fixture scope, and the ABI literal ratchet counts a third "?" string in nvn_mtl.m. The final pin and candidate reproduce the same ABI finding. The translator and the affected Pokopia and mesh inputs are identical across the final integration.
  • Pinned Python lint reports 339 findings against 336 baseline entries, with three excess findings in dmsh_build.py. Exact main reproduces the same log. The final integration leaves Python inputs unchanged.

The comparison targets are RePOP for the profile and Maxwell CAS, Pokémon Scarlet and Tears of the Kingdom for recorded buffer atomics, Breath of the Wild for the NVN chain, and Bananza for adjacent Ampere and HMMA coverage. Read-only discovery found no runnable Mac builds for these five under the inspected roots. Current gameplay, full game regression, RePOP shader rebuilds, and iOS-device validation remain open. Remote CI remains pending verification.

Historical published description, measurements and original commit context

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and Maxwell 32-bit global ATOM.CAS translation. Main still has the Maxwell stub. The RePOP profile and signed extended addressing remain distinct from main's Ampere ATOMG.CAS.

Current integration, 2026-11-09

Published commit 0f88e42743f79c0b212ee49475d573a9853fe0a2 rebases 61c470a019504a034c188ba1dcb83ce116345998 onto 413e8808e0799eab8730688f082835aeeaca84c5. The RePOP profile, gallery entry, and Maxwell patch are preserved. The translator retains main's new vector-load lowering and the combined chain includes main's mesh scheduling, shader builder, and ABI changes. The managed artifacts were rebuilt from the combined source with .NET SDK 10.0.402. Main's universal apphost, runtime dependency graph, and supported compiler pins are preserved. The combined chain is 86dd1764a981.

Validation on this revision

  • 278 focused tests passed with zero failures, errors, or skips. The run includes eleven Maxwell CAS GPU readbacks, six unsupported-form checks, signed-address IR, and compilation on both supported Metal SDKs. It also covers Ampere memory, vector global loads, extended multiply, mesh stages, HMMA, reflection, ABI, shader rewrites, the chain, and profile selection. The same negative-offset CAS fixture translated on exact main without the atomic opcode and reported the unimplemented instruction.
  • The RePOP Mac host built with make -C dm/host GAME=0100DD301A686000 -j3, and the native frame-rate fixture passed. Host and renderer sources match the separately tested optimizer head 72a05e090e2d7e02ba7745c459f0382dc56afb8d apart from the generated chain header. That head's full native campaign remains incomplete due to two reproduced main-profile fixture failures. A full graphics run on this head remains open.
  • Tool lock and generated documentation/chain checks passed with Xcode 27.2 and Metal 32023.922.4 for both SDKs. The apphost signature and AnyCPU metadata checks passed. Managed x64 and physical Intel execution remain open.
  • Pinned Python lint reports 339 findings against 336 baseline entries, with three excess findings in dm/tools/unity_bucket.py. Exact current main produces the same diagnostic log. The lint baseline is unchanged. Local LLVM 23 C lint remains open.

RePOP is the direct game comparison for the profile and Maxwell CAS. The static impact report identifies Pokémon Scarlet and Tears of the Kingdom through buffer atomics, and Breath of the Wild through the shared NVN chain. Bananza adds adjacent Ampere and HMMA coverage. Read-only discovery found no runnable Mac builds for these five under the inspected game roots. Current gameplay, full RePOP shader rebuilds, game regressions, and device validation remain open. The earlier manual gameplay and timing evidence retains its original revision labels. Remote CI on this head is pending verification.

Historical published description, measurements and original commit context

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and Maxwell 32-bit global ATOM.CAS translation. The RePOP profile and Maxwell opcode 0xeef1 with signed extended addressing remain distinct from main's Ampere ATOMG.CAS.

Current integration, 2026-11-08

Published commit 61c470a019504a034c188ba1dcb83ce116345998 rebases 886cb0623acbf3472a3f0bb1576303bff31379ef onto 62f6a52c4fa9b42b73e5c37ef9a88794c8d15ae5. The gallery was regenerated from main's current table plus the RePOP entry. The Rogue Prince of Persia retains its “60 fps, up to 120 on the Mac” caption. The RePOP profile, Maxwell translator source, bundled binaries, fixtures and compiler lock are byte-identical to the previous head. The chain remains 8ea3ad807243 and the bundled translator reports 0bd66426675438a9.

Validation on this revision

  • 152 focused tests passed with zero failures, errors or skips. The run covers docs, chain, profile selection, Unity FPS rewriting, patches and incremental packaging. The first restricted run could not build the synthetic packaging test's .NET helper. The complete suite passed on rerun with access to the local build dependencies.
  • The RePOP Mac host built with make -C dm/host GAME=0100DD301A686000 -j2. The native t_fpslock fixture passed integer, float, vSync and build-gated FPS cases. These checks cover main's new host code without launching a game.
  • The tool lock check passed with Xcode 27.2 (27B52), macOS and iOS Metal 32023.922.4 and pinned SPIRV-Cross. Generated gallery and chain verification and whitespace checks passed.
  • Pinned Python lint still reports 376 findings against 371 baseline entries, with five inherited findings in dm/tools/tests/test_patches.py. Pinned lint run at exact current main reproduces the byte-identical log. The baseline is unchanged. Local LLVM 23 C lint remains open.

The previous head 886cb0623acbf3472a3f0bb1576303bff31379ef passed 214 focused tests, including 11 Maxwell CAS synthetic GPU cases. The shader tools, translator artifacts, ABI, test inputs and RePOP profile match that revision byte for byte. The previous results retain that revision label. Full native graphics coverage on the current head remains open.

The static impact report identifies Pokémon Scarlet and Tears of the Kingdom through buffer atomics, and Breath of the Wild through the shared NVN chain. RePOP is included for its new profile and Maxwell CAS. Bananza is a comparison target for adjacent Ampere and HMMA behavior. The read-only inventory found no runnable builds for those five games under the inspected roots. Full game regression, current gameplay, RePOP shader rebuilding and device validation remain open. Remote CI on this head is pending verification.

Historical published description, measurements and original commit context

The revision-specific results and limitations below predate this refresh.

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and Maxwell 32-bit global ATOM.CAS translation. Main implements Ampere ATOMG.CAS at opcode 0x3a9. This branch supplies Maxwell opcode 0xeef1, signed extended addressing and the RePOP profile.

Current integration, 2026-11-08

Published commit 886cb0623acbf3472a3f0bb1576303bff31379ef rebases bcb4ca5ee31387b75c855ce9e164f24eb77c9321 onto 555122a9069235441d5a88955105397ec6d53686. The gallery includes the newly added main profiles and RePOP. The chain header was regenerated from the combined inputs, including main's uniform-handle table and output-mask changes. Combined chain 8ea3ad807243.

The Maxwell source patch retains stable patch ID 5d01ebde522366006731214b5c7b032ce0dfcc60. The complete C# inputs, dependency metadata, bundled translator and lock match the previous tested revision byte for byte. The translator was carried forward from that build. Its embedded source digest is 0bd66426675438a9. The current tool_lock.py --check-tools check passes with Xcode 27.2 (27B52), Metal 32023.922.4 for both SDKs and the pinned SPIRV-Cross. Apphost signature and AnyCPU metadata checks pass. Managed x64 and physical Intel execution remain open.

Validation on this revision

  • 214 focused tests passed with zero failures, errors or skips. The run includes eleven Maxwell CAS GPU cases, both supported Metal SDK compilers, handle-table lowering, reflection, ABI, toolchain cache keys, shader rewrites, mesh stages, HMMA, offline pipeline inputs and documentation. The current uniform-handle table test checks that table reads omit the pool bitmap mark.
  • The RePOP host built with make -C dm/host GAME=0100DD301A686000 -j2. This revision's native coverage is the host build and the synthetic GPU cases. The previously recorded full graphics runs retain their original revision labels below.
  • Pinned Python lint reports 376 findings against 371 baseline entries, with five new findings in dm/tools/tests/test_patches.py. Exact main reproduces the byte-identical lint output. The feature retains the current baseline. Local LLVM 23 C lint remains open. Generated documentation, chain verification and whitespace checks pass.

The game comparison set is RePOP for the profile and Maxwell CAS, Scarlet and Tears of the Kingdom for recorded buffer atomics, Breath of the Wild for the shared NVN chain, and Bananza for Ampere and HMMA coverage. Read-only inventory found no builds for those five games under the inspected roots. Full game regressions, full RePOP shader rebuilding, extended play and iOS-device validation remain open. Remote CI remains pending verification.

Historical published description, measurements and original commit context

The revision-specific results, failures, limitations and original commit messages below predate this refresh.

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and Maxwell 32-bit global ATOM.CAS translation. Main's ATOMG.CAS handles Ampere opcode 0x3a9. This branch retains Maxwell opcode 0xeef1, signed extended addressing and the game profile. The Maxwell patch keeps stable patch ID 5d01ebde522366006731214b5c7b032ce0dfcc60.

Current integration, 2026-11-07

Published commit bcb4ca5ee31387b75c855ce9e164f24eb77c9321 rebases 937da3b8080c1084067edda6167a5706b83782d2 onto 01abf27977aa4a7366c4a14bc58d9eae75f1d8e6. The profile and commit message are preserved. The Makefile keeps both fixture exclusions, and the gallery and symptom index were regenerated from their sources.

The five bundled DLL/PDB files match a .NET 10.0.402 publish of the combined sources. The upstream universal apphost and complete 61-entry runtime dependency graph match main. The embedded source digest is 0bd66426675438a9, and the combined chain is 24d0349856e8. tool_lock.py --check-tools passes with Xcode 27.2 (27B52), macOS and iOS Metal 32023.922.4, and the pinned SPIRV-Cross. AnyCPU metadata and strict apphost signature checks pass. Managed x64 execution and physical Intel validation remain open.

Validation on this revision

  • 461 focused tests passed with zero failures, errors or skips. The run covers Maxwell CAS, Ampere memory and ALU, geometry and mesh output, HMMA, reflection, atomic bounds, chain and ABI checks, toolchain caches, shader libraries, profile packing and documentation. Synthetic GPU checks include eleven Maxwell CAS cases and forty primitive-ID cases. Ampere CAS and INC each compiled on the supported macOS and iOS Metal compilers in a separate four-case probe.
  • The RePOP host built with make -C dm/host GAME=0100DD301A686000 -j2. Selected native fixtures passed with 243 NVN checks, 15 suspend checks, 16 global-memory word checks, 10 image-view checks and 81 pool-note checks.
  • Main's c9fc4492 and 060aef96 address the earlier pool-array assertion and missing native link dependency. The pool-array case, t_nvn and t_gfx_suspend all passed here. The strict HMMA malformed-parameter and output-reference cases also passed.
  • Pinned Python lint reports 371 findings against 371 baseline entries, with zero new or stale entries. Tool lock, generated documentation and whitespace checks pass.

Static impact identifies Scarlet and Tears of the Kingdom through recorded buffer atomics and Breath of the Wild through the shared NVN chain. The comparison set also includes RePOP for its profile and Maxwell CAS, and Bananza for Ampere and HMMA coverage. Read-only inventory found no builds for those five games under the inspected roots. Full game regressions, a full RePOP shader library rebuild, extended play and iOS-device validation remain open. The test scope here is the local host build and focused synthetic and native fixtures. Remote CI remains pending verification.

Historical published description, measurements and original commit context

The revision-specific results, failures, limitations and commit messages below predate this refresh.

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 and Maxwell 32-bit global ATOM.CAS translation. Both remain absent from current main. Upstream 04df08d4 implements Ampere ATOMG.CAS (0x3a9); this PR's Maxwell ATOM.CAS (0xeef1) decoder/emitter and signed extended-address correction are distinct and retained. Upstream Ampere CAS/INC/DEC and all other current mechanisms remain intact.

Current integration — 2026-11-06

Published commit 937da3b8080c1084067edda6167a5706b83782d2 rebases published 179de4c9e4f2ba213bdeb1f0c2d0780219ae0dda onto main b2d46b86d03f4b03afe11ea61c67cdf00d7a5345 without another squash. The RePOP profile and original commit message are unchanged. The Maxwell CAS patch is unchanged; its stable patch ID is 5d01ebde522366006731214b5c7b032ce0dfcc60. The only vendor differences from main are the same three decoder/emitter files. Shader documentation retains both main's dead-channel optimizer finding and RePOP's Maxwell CAS finding; gallery and symptom index are regenerated from combined sources.

The conflicting translator artifacts were rebuilt from combined sources using .NET SDK 10.0.402 (dotnet publish dm/gfx/tools/dmsh_xlate/dmsh_xlate.csproj -c Release -p:NuGetAudit=false). All five DLL/PDB outputs match that build. Main's complete 61-entry dependency graph, universal apphost/runtime metadata, supported Metal 32023.922.4 and SPIRV-Cross pins are preserved. Source digest is 0bd66426675438a9, combined chain 2215bf042690. Native source/tool-lock, AnyCPU metadata and signature checks pass. No fresh managed x64 or physical Intel execution is claimed.

Fresh checks and remaining failures

The broad focused run on integrated 85504dbc9dbc4ffc3109367e9a2fd9221dea548b executed 422 tests: 419 passed, 3 failed, no errors or skips. It covers both CAS families, Ampere memory/ALU, Maxwell FTZ, geometry/mesh/reflection, HMMA, atomic bounds, pool arrays, AnyCPU, ABI/chain/docs/profile, shader rewrites, packed libraries, in-place caches, offline pipelines, profile packing, bracket-depth/PCH and BAHS entry filtering. Both supported Metal SDKs and synthetic GPU fixtures were enabled where applicable. All eleven Maxwell CAS GPU cases and the primitive-ID fixture's 40 GPU cases pass. Additional synthetic Ampere CAS and INC output from the combined binary compiles for macOS and iOS: four successful compiler checks, without a new Ampere GPU-execution claim.

Two failures were this PR's carried HMMA negative tests: upstream changed the helper's parameter names, making the old string mutations no-ops. They now mutate the current names and explicitly assert each token exists, preserving strict rejection coverage. All 22 affected HMMA/documentation tests pass on final 937da3b8080c1084067edda6167a5706b83782d2, zero failures/errors/skips. The only file changed after the broad run is test_dmsh_hmma.py; every production, profile, documentation and bundled-artifact byte, and every other test source, is identical. Earlier source/build/test results therefore apply to those unchanged inputs. The full 422-case command was not rerun on the final metadata/test-only revision.

One broad-test failure remains inherited: main's unchanged test_dmsh_pool_arrays.Reflect.test_table_of_uniform_handles expects a direct min(index,n) lookup, while main now wraps it in dm_pool_mark. The test and production builder match the pinned main exactly; no assertion or unrelated source fix is included. The broad run is not reported green.

The RePOP Mac host build passes. Selected native checks pass on the identical production tree: PSO prewarming 100 checks in each MTLDevice/Metal 4 mode, global-memory words 16, pool chunks 102 and pool notes 81. The initial native command stopped at t_nvn link failure: undefined _dm_vi_frame_queued. Main added a weak provider in t_host_stubs.c, but this target's separate link rule omits it. Relevant source and link rule match main. The failure is preserved; the remaining targets were run separately once. No complete native graphics-suite pass is claimed.

Final pinned Python lint passes: 371 findings match 371 baseline entries, 0 new or stale (Ruff 0.17.2/Pyright 1.1.414). Generated docs/header, range/source preservation and whitespace checks pass. No production test bypass, assertion weakening, baseline change or unsupported compiler override is used.

The five intended game comparisons are RePOP (profile/CAS), Scarlet and TotK (recorded buffer atomics), BotW (NVN chain) and Bananza (Ampere/HMMA). Static impact was recorded; read-only inventory found none of these builds under the inspected game roots. No full-game regression, full RePOP shader-library rebuild, game launch, extraction, benchmark, signing or installation was performed. Automated RePOP gameplay remains stopped. Historical manual gameplay, allocator/region observations and timings below belong only to their recorded revisions; runtime, long-session and iOS-device limits remain open. Historical validated.tsv was not promoted.

Remote CI on this replacement head is not verified by this pass.

Historical published description, measurements and original commit context

All revision-specific claims below predate this refresh. Prior test results, compiler-availability statements, failures and original commit messages are preserved as historical evidence, not promoted to current-head coverage.

Adds RePOP 1.21.1 and verified Maxwell 32-bit global compare-and-swap. Current main still lacks the profile and CAS implementation; its new VOTEU, guarded-handle, single-file-library, in-place-cache and memory mechanisms do not supersede this work.

Current refresh — 2026-11-05

Published commit 179de4c9e4f2ba213bdeb1f0c2d0780219ae0dda rebases published 4d6fd405b7da6552fbc741670a7931192b1fc6c0 onto main 865cc35fad7034d17c2190f8ce349f61f5bcaba1 without a new squash. The complete RePOP profile and original commit message are unchanged. The only vendor differences from main are the three existing CAS decoder/emitter files; all current upstream translator changes are retained.

The conflicting binary artifacts were rebuilt from the combined sources with .NET SDK 10.0.402 (dotnet publish dm/gfx/tools/dmsh_xlate/dmsh_xlate.csproj -c Release -p:NuGetAudit=false). All five DLL/PDB outputs match the publish directory. The complete 61-entry dependency graph, universal launcher/runtime metadata, AnyCPU contract and supported Metal .922/SPIRV-Cross pins are preserved. Native ARM64 source digest is 71adcdd020e03a64; the regenerated combined chain is 86194d4841ac. tool_lock.py --check-tools, strict signature verification and universal architecture inspection pass. No fresh managed x64 execution or physical Intel result is claimed.

Fresh validation on this exact candidate

  • 360 tests pass, zero failures/errors/skips, with native Python 3.14 and supported macOS/iOS Metal 32023.922.4. Modules cover CAS, current VOTEU/guarded bindless handling, Ampere ALU/memory, Maxwell FTZ, control flow, geometry/mesh/reflection, AnyCPU, ABI/chain/docs/profile, shader rewrites/HMMA, packed shader libraries, the in-place compile cache, offline pipelines, toolchain cache keys and iOS profile packing. All eleven CAS GPU cases and the native primitive-ID fixture's 40 GPU cases pass. Geometry helpers were supplied through DM_TEST_GEOMETRY and DM_TEST_GEOMETRY_PRIMITIVE_ID.
  • The RePOP host builds with make -C dm/host GAME=0100DD301A686000 -j2. Selected native targets pass: check_t_nvn (234 checks), check_t_pso_warm (100 checks each in MTLDevice and Metal 4 modes), check_t_int_float_view and check_t_sparse_layout (28 checks). This is focused native coverage, not a new full graphics-suite claim.
  • The first geometry-helper build failed before any Python tests ran because two validation make commands shared the generated host_msl_gen.h.tmp path. Serializing those commands corrected the validation setup; the subsequent helper build and complete 360-test run pass. No source workaround or weakened fixture was added.
  • Pinned Python lint exits 1 with the same three inherited pyright reportIndexIssue diagnostics at dm/tools/tests/test_nso_match.py lines 147, 150 and 203: 390 findings / 387 baseline, 3 new, 0 stale. Exact main independently reproduces the result; the file blob is identical (042bc4320b0d2a1c22bf296c9877ece03108fb51). No unrelated repair or baseline change is included. Generated docs/header, range/source review and whitespace checks pass.

The intended five impacted games remain RePOP (profile/CAS), Scarlet and TotK (recorded buffer atomics), BotW (NVN chain) and Bananza (Ampere/HMMA). Static impact and synthetic coverage do not establish current full-game shader equivalence. No real-game comparison, RePOP launch, extraction/cache rebuild, benchmark, signing or installation was performed; automated RePOP gameplay remains stopped. Earlier user-confirmed playability, shader/gameplay observations and measurements below apply only to their recorded revisions. Current full-game, allocator/region runtime and iOS-device coverage remain open. No historical validated.tsv stamp was promoted.

Remote CI on this replacement head is pending verification; local checks are not a current CI pass.

Historical published description and complete original commit context

Everything below predates this refresh. Revision-specific results and limitations are historical, including older compiler-availability statements and failed harness attempts. They are preserved without promoting them to current coverage.

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 (v1245184) and Maxwell 32-bit global ATOM.CAS translation, preserving signed offsets, predication and the returned old value while rejecting unverified forms. Main still lacks the profile and this CAS implementation.

Current integration — 2026-11-05

Published commit 4d6fd405b7da6552fbc741670a7931192b1fc6c0 rebases published 16642e73fff521155c189dac89b25b4a61e6b9f8 onto main f8a5618d5f505a4c0a0bcac7c413872d3a53c009 without another squash. The complete RePOP profile is byte-identical to the published head. Current main's guarded Ampere memory operations, FTZ comparisons, BMSK, bindless/layer-entry fixes, current shader rewrites and task/mesh ABI remain intact. The only vendor source differences from main are the three Maxwell CAS decoder/emitter files. The obsolete duplicate Brothership 60 fps gallery row was removed while retaining main's 120 fps row and RePOP.

Conflicting translator artifacts were rebuilt from the combined source with dotnet publish dm/gfx/tools/dmsh_xlate/dmsh_xlate.csproj -c Release -p:NuGetAudit=false, using .NET SDK 10.0.402. All five published DLL/PDB files match that output. The complete 61-entry dependency graph, universal launcher and runtime metadata are retained. Source digest is 71adcdd020e03a64; the regenerated chain is effc5080eae0. The supported macOS/iOS Metal 32023.922.4 and SPIRV-Cross pins are unchanged, and tool_lock.py --check-tools passes. ARM64 launch, universal arm64/x86_64 architecture, AnyCPU metadata and signature verification pass. Fresh managed x86_64 execution is not claimed: this run's installed x64 runtime inventory has only .NET 3.1.32, not the required .NET 10 runtime. Earlier Rosetta results below belong to their named older artifacts; no physical Intel claim is made.

Current validation and limits

  • 240 distinct focused tests are covered on this exact candidate: CAS, Ampere memory/ALU, Maxwell FTZ, control flow, geometry, mesh stages, reflection, AnyCPU, ABI, chain, documentation, profile guessing, shader rewrites and HMMA. Both macOS and iOS shader compilation use supported Metal .922. The first 240-test invocation passed 238 cases, failed the primitive-ID case because its required native-helper variable was unset, and skipped the native geometry canary for the same setup reason. After building the original t_geometry and t_geometry_primitive_id targets, both affected cases passed with DM_TEST_GEOMETRY and DM_TEST_GEOMETRY_PRIMITIVE_ID set. The initial nonzero result is preserved; no assertion or fixture was weakened. All eleven synthetic CAS GPU cases and the primitive-ID fixture's 40 GPU cases pass.
  • make -C dm/host GAME=0100DD301A686000 -j2 passes. make -C dm/gfx/tests GAME=0100DD301A686000 -j2 check_t_nvn check_t_pso_skey check_t_refl check_t_geometry_mesh check_t_image_usage passes: NVN 234 checks, reflection 43 checks, geometry mesh 45 + 21 + 27 checks and explicit image usage 44 checks. Two optional Wonder reflection sample files are absent, so their sample-dependent checks do not run. This is selected native coverage, not a current full-suite pass.
  • Pinned Python lint passes: 389 findings match 389 baseline entries, with zero new or stale entries. Ruff 0.17.2 and Pyright 1.1.414 match current requirements. Generated chain/docs and git diff --check pass; source/range review found no planning artifacts in the repository diff.

The five intended game comparisons are RePOP (the new profile/CAS path), Pokémon Scarlet and Tears of the Kingdom (recorded buffer-atomic consumers), Breath of the Wild (broad NVN chain coverage), and Donkey Kong Bananza (Ampere/HMMA integration). regress.py impact identifies Scarlet and TotK as direct consumers, BotW as broad coverage, and 142 profiles without usage manifests. Read-only discovery finds only independently owned Hollow Knight and Link's Awakening Mac builds under the current NSP root, none of those five. The full game check and profile shader rebuild are therefore incomplete. The default harness was not invoked because its worktree-pruning side effect conflicts with the required preservation of other work. No RePOP launch, extraction, game cache rebuild, signing or installation occurred. User-confirmed RePOP playability and earlier smoke/combat/allocator results below remain historical; current runtime, gameplay and performance are not established by synthetic compilation.

Remote CI for this new candidate is pending Agent 3 verification; local results do not establish a current-head CI pass.

Historical published description, validation and original commit context

All revision-specific results, measurements, tooling limitations and original messages below predate this refresh. They remain historical, including earlier unsupported-toolchain results; they are not fresh validation of the candidate above. Unresolved limits remain open.

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 (v1245184) and verified Maxwell 32-bit global ATOM.CAS translation, preserving signed offsets, predication and the returned old value while rejecting unverified forms. Main still lacks both the profile and implementation.

Consolidated candidate 16642e73fff521155c189dac89b25b4a61e6b9f8 is exactly one commit directly on main 975bb4c. Rebase preserves the complete published profile, C# source/dependencies, bundled translator and supported compiler lock. The combined header is chain 1631b17b77b5; the new upstream task/mesh buffer tables at c0+0x670/0x770 and their renderer assertions are retained. Pre-squash and final tree are identical; the ten original commits and their rationale are preserved below.

Fresh validation on this one-commit candidate: 68 ABI/task-mesh/threadgroup/CAS/chain/docs tests pass with supported Metal 32023.922.4 for macOS and iOS; all eleven synthetic CAS GPU cases pass. The first command used an incorrect ABI module path and failed that import; the corrected full command passes all 68. The RePOP Mac host builds and the native geometry fixture passes 1,920 checks. The complete translator directory and profile are identical to published 5b75d925, whose 289 focused tests and full native graphics command passed this morning with six optional Wonder reflection samples missing. Those earlier full-suite results retain their exact 5b75d925/02c91cd4 revision; this candidate has fresh targeted coverage for the only subsequent behavior delta (task/mesh ABI). No repeated full native campaign is claimed here.

Python lint's shared settings.py:115 ruff B023 is inherited unchanged from main (the preceding exact source proof and failure remain in private evidence); no unrelated fix or baseline change was added. The earlier game harness attempt stopped at sandbox-denied worktree creation; read-only discovery found no installed Mac builds. RePOP, Mario Kart World, Age of Imprisonment, Scarlet and TotK remain unchecked as games. The supported compiler is now available, but no game shader/IPA rebuild, game launch, extraction, signing or device installation occurred.

The user's manual RePOP success and older prologue timings remain historical. Current automatic allocator/region behavior in game, later stages/saves, listening quality, long sessions and iOS device behavior remain unverified. AnyCPU packaging is preserved; no fresh Rosetta or physical Intel run is claimed. See the game note for durable findings and its Found on this game references.

Remote CI on this exact consolidated candidate remains pending Agent 3 verification; local checks do not establish a current-head CI pass.

Original commit context — historical messages and correction rationale

The following original messages retain their historical revisions, test claims and limitations. They are preserved for context; they do not describe fresh validation of the consolidated candidate.

747d6ae172e269109238f163f1f79a7148ca4dae — seedds <seedds@gmail.com>

Add Lollipop Chainsaw RePOP 1.21.1 profile

6c0fc0e431fa522c2dac870497f30258201afec6 — seedds <seedds@gmail.com>

Translate global compare-and-swap used by RePOP

ATOM.CAS silently omitted a feedback hash insertion. Emit the verified 32-bit atomic, preserve the old value and predication, and sign-extend global address displacements before adding carry. Reject unverified forms and publish the updated translator chain.

Verified 11 Mac GPU cases, both Metal SDKs and signed-address IR fixtures. All RePOP and Z-A shaders build; only the three expected RePOP shaders change. Mac smoke and combat pass, and the unsigned iOS IPA passes archive verification.

6c9a687670f898af09d76371d0b398d2d66cbc8a — seedds <seedds@gmail.com>

Record rebased Mac and unsigned iOS validation

The upstream SDK matching rules reproduce all three patched module images byte for byte. Record the full Mac comparison on the rebased hosts and the rebuilt IPA size; archive CRCs, version, shader stamp and arm64 architecture pass verification.

b0fbde9beb4c1a3782b9e17162400946a7f57853 — seedds <seedds@gmail.com>

Record verification after upstream shader rebase

2c559d84ca06c7c8ac25941be6406bb0b8f50f9f — seedds <seedds@gmail.com>

Verify RePOP allocator discovery after main rebase

8e407e8c14c30ff0f3dfd26783f13995a4f9bee2 — seedds <seedds@gmail.com>

Verify RePOP automatic UE region sizing on current main

16bea1d0bf7c5ca508fd6d46046254429e2dcafa — seedds <seedds@gmail.com>

Fix Unreal region discovery lint failures

4eddf653e8f162df629c1fb91eecd6cf924f32a1 — seedds <seedds@gmail.com>

docs: record user-confirmed RePOP gameplay

4ac6097f2567b6eaaffa1c4dee08d9a6fc5e850b — seedds <seedds@gmail.com>

Validate HMMA helper parameter captures before rewriting

5b75d9251a12eb617c0f707e3f4fdfe247bdebc7 — seedds <seedds@gmail.com>

Keep RePOP findings distinct from historical validation evidence

Consolidated commit message

Add Lollipop Chainsaw RePOP and global compare-and-swap translation

Add the 1.21.1 profile, shader/prewarm data and Mac gallery entry. Implement verified Maxwell 32-bit global ATOM.CAS with signed offsets, predication and the old-value result; retain automatic Unreal allocator/region discovery and upstream task/mesh buffer layouts.

Keep the recorded manual gameplay and historical measurements distinct from current compilation and fixture coverage.

Fresh command: DM_GAME=0100DD301A686000 DMSH_TEST_METAL=1 DMSH_TEST_METAL_SDKS=macosx,iphoneos DMSH_TEST_GPU=1 python3 -B -m unittest dm.tools.tests.test_dmsh_abi dm.gfx.tests.test_dmsh_meshstage dm.gfx.tests.test_dmsh_tg_spill dm.tools.tests.test_nsp_chain dm.tools.tests.test_docs dm.tools.tests.test_global_atomic_cas. Native commands: make -C dm/host GAME=0100DD301A686000 -j2; make -C dm/gfx/tests GAME=0100DD301A686000 -j2 check_t_geometry.

Previously published validation and limitations — historical 5b75d9251a12eb617c0f707e3f4fdfe247bdebc7

The following prior description retains its original revisions and environments; none of its old CI, benchmark, game or test claims is promoted to the consolidated head.

Adds LOLLIPOP CHAINSAW RePOP 1.21.1 (v1245184) and implements the Maxwell 32-bit global compare-and-swap operation used by its feedback-compaction shaders. The translator preserves signed address displacement and predication, returns the old value on match or mismatch, and rejects unverified widths and register pairs. The profile records its build, allocator/region requirements, shader tables and controls.

Tested head 5b75d9251a12eb617c0f707e3f4fdfe247bdebc7 integrates main 02c91cd, replacing author head c91684055939c479c543670c14dc91bc050b59a1. Main still lacks this profile and global CAS implementation. All ten feature/history commits and the author's later stdin-based PCH compilation/cache changes are preserved. The combined gallery, game table, patch index and chain header are regenerated; every other path matches Git's automatic merge of those exact revisions. Chain: 7206c3ceca8f. RePOP game note

The complete C# source/dependency tree, bundled translator directory and lock are byte-identical to c916 and the previously built/tested cd5c16a17494ec834a85b4f8f6e922852c799250. All five packaged DLL/PDB files also match the saved cd5 publish outputs (.NET SDK 10.0.402). No translator rebuild or compiler-pin change was required. Upstream's combined alpha/logic side libraries, mixed integer outputs, mesh/cache key coverage, sparse texture sharing, presentation changes and canonical developer/frontend documentation remain exactly upstream.

Fresh validation

Environment: arm64 macOS 26.6, Xcode 27.2/27B52, iPhoneOS SDK 27.2, native Python 3.14.6. The system now supplies the supported Apple Metal 32023.922 (metalfe32023.922.4) for both SDKs. Strict tool_lock.py --check-tools passes. No component installation or system configuration change was made by this maintenance run.

  • All 289 selected tests pass with no skips, errors or failures using the exact checked-in translator and the supported compiler. Command: python3 -B -m unittest -v dm.tools.tests.test_global_atomic_cas dm.tools.tests.test_nsp_chain dm.tools.tests.test_xlate_anycpu dm.tools.tests.test_ue_region dm.tools.tests.test_ue_malloc dm.tools.tests.test_profile_guess dm.tools.tests.test_patches dm.gfx.tests.test_dmsh_hmma dm.gfx.tests.test_dmsh_ampere_mem dm.gfx.tests.test_dmsh_ampere_alu dm.gfx.tests.test_dmsh_first_store dm.gfx.tests.test_dmsh_meshstage dm.gfx.tests.test_dmsh_tg_spill dm.tools.tests.test_shader_pch dm.tools.tests.test_docs dm.gfx.tests.test_dmsh_side dm.gfx.tests.test_dmsh_alpha dm.gfx.tests.test_dmsh_logic dm.tools.tests.test_shader_toolchain_cache dm.tools.tests.test_dmsh_code_fp dm.tools.tests.test_pso_offline dm.tools.tests.test_settings. Environment: DMSH_TEST_XLATE points to the bundled apphost; DMSH_TEST_METAL=1, DMSH_TEST_METAL_SDKS=macosx,iphoneos, DMSH_TEST_GPU=1 and MTL_DEBUG_LAYER=1 apply to this synthetic run. Coverage includes all eleven Maxwell CAS GPU cases, signed/unsupported atomic forms, Ampere memory/ALU, task/mesh stages, threadgroup spill, first-store rewriting, HMMA, actual PCH/name-independent compilation, combined pixel side libraries, alpha/logic behavior, chain/code fingerprints/cache, grouped offline archive behavior, settings, Unreal allocator/region, profiles, patches and docs. The initial 289-test run used supplemental 32023.921.6 and is retained separately; the current result above was rerun with system 32023.922.4.
  • The RePOP-profile arm64 Mac host builds with the supported compiler; it emits 56 existing upstream warnings, so this is not a warning-free build.
  • The full command make -C dm/gfx/tests GAME=0100DD301A686000 -j2 run passes (exit 0) with the supported system compiler and unchanged original per-fixture environments; no global MTL_DEBUG_LAYER was exported. All executed cases pass. Six optional Wonder reflection-sample checks are skipped because those game-derived JSON inputs are absent. Coverage includes combined alpha replay (788 checks), logic replay (929), sparse tiles (4,252), frame step (78), link ticks (40 plus 4 snapshot checks), image primitive ID (6), PSO archive (90), PSO bundle (58), and PSO warm (99 each through MTLDevice and Metal 4). The formerly blocked direct-xcrun cases now complete. This is fresh native fixture coverage, not gameplay.
  • Fresh filesystem fixtures pass 138 checks and 51 case-sensitive checks; the frame-limit fixture passes, covering integer/float caps, build gates, rewriter-found fields, vsync copies and overrides. Expected RED lines are deliberate missing-field/unsupported-rate injections in that fixture.
  • Python lint against 02c91cd fails on one inherited issue: dm/games/settings.py:115:56, ruff B023 (callback does not bind loop variable n). There are 390 findings against 389 baseline entries, one new and zero stale. Candidate and exact main have identical file SHA256 c5cbb4a2c19d4971d66406339a148f89f655d1fcce1d1e52cbecf193841f72e0 and reproduce the same diagnostic. No suppression, baseline change or unrelated fix was added; this remains a current CI limitation for shared remediation.
  • LLVM 23.1.4 scoped CAS fixture lint passes with zero findings and no baseline growth/staleness (241 baseline findings). The current compile database contains 233 sources. Range-diff, main ancestry, source/package identity, generated docs/chain, whitespace and reference-placement checks pass. No agent plans or progress journals enter the repository diff. The separate historical dirty README draft is preserved byte-identically.

Remote CI for this exact published head is pending. Earlier CI results do not validate it.

Game coverage and limitations

The five selected games are RePOP (profile/CAS), Mario Kart World (Ampere task/mesh and sparse texture paths), Hyrule Warriors: Age of Imprisonment (Ampere indexed constant-buffer compatibility), Pokémon Scarlet and Tears of the Kingdom (recorded buffer-atomic use). The exact-base scripts/regress.py check --no-smoke attempt exited 2 at sandbox-denied validation-worktree creation, before checking games. Separate read-only find_games discovery from the unchanged harness confirms none of these five Mac builds is installed under /Users/thehobbit85/Games; currently no other Mac build is discovered either. No five-game comparison ran; missing coverage is not a pass. No retry created validation worktrees. Existing worktree registrations were checked and preserved.

The supported compiler limitation from the previous pass is resolved. Full RePOP shader/IPA rebuilds remain unverified because no selected installed Mac build is available for this comparison and no new game-input rebuild was performed; extraction and game launches remain outside this run. AnyCPU packaging tests pass; no fresh Rosetta or physical Intel runtime result is claimed.

Historical evidence and open limitations

The earlier combined translator build and 187 focused tests on cd5c16a1 remain historical evidence for the unchanged compiler artifacts; the new builder/ABI/renderer behavior has the fresh coverage above. The old full native campaign on cd5 was incomplete: a private global Metal-validation setting first contaminated MetalFX, and after restoring the unchanged repository recipes, DLSS 7+7 checks and image-attachment 120 checks passed before direct /usr/bin/xcrun stopped at t_image_primitive_id because Metal was then unavailable. Those original outcomes are preserved; they were never a full-suite pass. The current supported-compiler full native command above resolves that old environment blocker on this exact candidate; it does not erase the historical failed/incomplete attempts.

The user previously confirmed RePOP gameplay on the Mac. The instrumented prologue route and unsigned IPA belong to an older revision. Current allocator/automatic-region behavior in game, later stages and saves, listening quality, long sessions and iOS-device behavior remain unverified. The game note retains those limitations and labels its older timing tables. Automated RePOP gameplay remains stopped at the user's instruction; this run performed no game launch, extraction, signing or device installation. validated.tsv remains historical.

Preserved published commit message

Original published 16642e73fff521155c189dac89b25b4a61e6b9f8; its rebased candidate retains the same authorship and exact message. Any results named here belong to their original revisions.

Add Lollipop Chainsaw RePOP and global compare-and-swap translation

Add the 1.21.1 profile, shader/prewarm data and Mac gallery entry. Implement verified Maxwell 32-bit global ATOM.CAS with signed offsets, predication and the old-value result; retain automatic Unreal allocator/region discovery and upstream task/mesh buffer layouts.

Keep the recorded manual gameplay and historical measurements distinct from current compilation and fixture coverage.

@github-actions github-actions Bot added docs Documentation shader chain The shader translation chain (DMSH_CHAIN): a change rebuilds every game's shaders game: 0100DD301A686000 A game profile new game Adds a game profile that main does not have yet labels Nov 3, 2026
@thehobbit85
thehobbit85 force-pushed the codex/lollipop-chainsaw-repop branch 6 times, most recently from dfa8f5a to f728121 Compare November 3, 2026 21:19
@github-actions github-actions Bot added rewriter The NSO rewriter and per-build patches game: 01006F8002326000 Animal Crossing: New Horizons labels Nov 3, 2026
@thehobbit85
thehobbit85 force-pushed the codex/lollipop-chainsaw-repop branch 2 times, most recently from 9dc95c7 to 3a8a6a6 Compare November 4, 2026 05:49
@github-actions github-actions Bot added the host The Horizon host: SVCs, services, threads, memory (dm/host) label Nov 4, 2026
@thehobbit85
thehobbit85 force-pushed the codex/lollipop-chainsaw-repop branch 5 times, most recently from 4d6fd40 to 179de4c Compare November 5, 2026 18:02
@thehobbit85
thehobbit85 force-pushed the codex/lollipop-chainsaw-repop branch 7 times, most recently from 11d8ba3 to 1ecdeac Compare November 13, 2026 05:53
Add the 1.21.1 profile, shader/prewarm data and Mac gallery entry. Implement verified Maxwell 32-bit global ATOM.CAS with signed offsets, predication and the old-value result; retain automatic Unreal allocator/region discovery and upstream task/mesh buffer layouts.

Keep the recorded manual gameplay and historical measurements distinct from current compilation and fixture coverage.
@thehobbit85
thehobbit85 force-pushed the codex/lollipop-chainsaw-repop branch from 1ecdeac to f6a6261 Compare November 13, 2026 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Documentation game: 0100DD301A686000 A game profile game: 01006F8002326000 Animal Crossing: New Horizons host The Horizon host: SVCs, services, threads, memory (dm/host) new game Adds a game profile that main does not have yet nvn NVN on Metal and its tests (dm/gfx/nvn, dm/gfx/tests) rewriter The NSO rewriter and per-build patches shader chain The shader translation chain (DMSH_CHAIN): a change rebuilds every game's shaders tools Tools and scripts (dm/tools, scripts)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants