92 Commits

Author SHA1 Message Date
salh 0fddc26760 Added audio decompilation tool. Decodes only voicelines and BGM pack and movie packs for now. SFXs are stored under a different format not yet explored 2026-05-02 14:43:09 +03:00
salh 64f8efbb2b Restore AC6 mode-1 decoder dump hook via midasm at 0x821CCC5C
Recovers the Apr 23 hand-edit (lost in subsequent refactors) and re-wires
it as a TOML midasm hook so codegen regeneration can no longer drop it.
Hook fires immediately after the guest decompressor (bl 0x822CF510)
returns, reads the entry record via r11 (codec at +1, csize at +8,
usize at +12), source offset from *(r31+22888), entry tag from r10, and
calls Ac6DumpPacDecodedEntry with the decoded buffer at r4. With
AC6_DUMP_PAC_DECODED=1, all 800 compressed entries now drop as
FHM-magic'd entry_*_mode1_*.bin in out/ac6_pac_runtime_dump/.

Also adds streamer-worker dispatch probes (AC6_TRACE_PAC_WORK_ITEMS),
PPC stack walking on PAC reads (AC6_TRACE_PAC_STACKS), the AC6 PAC
index parser, the chunk-coalescing dump fallback, and a user-facing
walkthrough at docs/ac6_asset_extraction_walkthrough.txt.
2026-05-01 21:22:14 +03:00
salh 96e10d2b6e Removed a whole lot of Dead legacy code. Add a performence that is enabled by Default. 2026-04-30 10:57:35 +03:00
salh 9c1d548dc4 Optimize active capture path and enable release LTO 2026-04-29 09:05:48 +03:00
salh 121c910b57 Add AC6 PAC extraction and texture export tooling 2026-04-24 17:01:15 +03:00
salh d56edb4afe Set Texture swap dump and render_capture to false to fix any preformence issues 2026-04-22 18:09:32 +03:00
salh a0884cbf3a Hardened Failure handling. Added Clearer instructions for building 2026-04-22 16:55:39 +03:00
salh 34d8c0185e Improve texture swap modding workflow 2026-04-22 16:22:41 +03:00
salh d3bb76be61 Integrate rexglue 0.7.5 and 0.7.6 improvements 2026-04-22 14:30:40 +03:00
salh db811bd0ba Support legacy DDS texture swaps and add Xenos format reference 2026-04-22 02:09:19 +03:00
salh 3d3579d290 Implement texture swap dump and replace pipeline 2026-04-22 01:06:53 +03:00
sal063 8c1388304d Merge pull request #1 from ggmini/dev-test
Updated extract-xiso download commands to work with current release
2026-04-21 10:23:32 +03:00
salh 93f0cc7bc4 Track working runtime graphics config 2026-04-20 23:56:57 +03:00
salh c6835e305a Force resolution scale to 1 at startup 2026-04-20 23:45:17 +03:00
Gregory Munro 89c41dc462 Merge branch 'sal063:dev-test' into dev-test 2026-04-20 22:23:48 +02:00
salh 701eb202eb Fix graphics diagnostics and restore default runtime settings 2026-04-20 23:13:53 +03:00
ggmini 71fc35cc6a Updated extract-xiso download commands to work with current release 2026-04-20 21:01:25 +02:00
salh d6a1733648 Fix unescaped parentheses in setup_and_build.bat 2026-04-20 21:32:25 +03:00
salh 90ae3f8f8b Update build section in setup_and_build.bat to include codegen 2026-04-20 19:12:56 +03:00
salh 9af6f59938 Fix texture format bounds checking to prevent rendering corruption (black triangles) 2026-04-20 18:56:20 +03:00
salh d9f1c20d60 Fix vendored FFmpeg avconfig.h include path visibility 2026-04-20 18:48:47 +03:00
salh c57016c272 Track vendored simde x86 headers 2026-04-20 17:23:49 +03:00
salh 41f58b5a1f Fix vendored FFmpeg headers on clean clones 2026-04-20 15:49:18 +03:00
salh 26c84988e7 Add setup_and_build.bat script 2026-04-20 06:43:35 +03:00
salh d57857d157 fix(gpu): correct pacing for guest vblank counter 2026-04-19 13:18:27 +03:00
salh 882d20f686 Refactor native graphics backend and fix build errors 2026-04-19 13:05:54 +03:00
sal063 0a1c92d048 Delete Plan.md 2026-04-18 16:23:27 +03:00
sal063 d27552b931 Removed extra files 2026-04-18 16:18:16 +03:00
sal063 80cc634fb6 Delete docs/native_graphics_migration/AC6_NATIVE_GRAPHICS_RENDER_API_REMOVAL_MAP.md 2026-04-18 16:17:56 +03:00
sal063 f16b38ff23 ] 2026-04-18 16:17:49 +03:00
salh ff5e84b763 renderer: implement real D3D12 backend and translation mocks 2026-04-18 15:37:30 +03:00
sal063 0570b44fde Fixed files 2026-04-18 11:48:20 +03:00
salh 440bbbca88 Wire executor frames into backend submission scaffolding 2026-04-18 11:44:18 +03:00
salh e0cf1eea03 Add execution plan and replay executor scaffolding 2026-04-18 10:34:53 +03:00
salh 84334d3aec renderer: add replay IR scaffolding 2026-04-18 09:51:58 +03:00
salh 2701342e34 Add dev testing warning to README 2026-04-18 09:26:08 +03:00
salh 8d2963c556 docs: clarify reconfigure step after codegen 2026-04-18 09:16:56 +03:00
salh 06d1f57851 Fix undefined reference to FLAGS_vfetch_index_rounding_bias on Linux 2026-04-18 00:12:09 +03:00
salh 45c46ad4fa Enhance GapFill engine with iterative block discovery routing perfectly wrapping unanalyzed boundaries to salvage cross-data orphaned jumping segments 2026-04-17 23:55:57 +03:00
salh 28fb52434a Fix syntax error with UnresolvedJump isConditional property name 2026-04-17 23:49:07 +03:00
salh 1266b0edd0 Fix phase_gapfill discarding valid stranded segments that partially overlapped known functions 2026-04-17 23:43:45 +03:00
salh 3653c167ea Fix validation unresolved calls by resolving gap-fill overlapping intervals in getFunctionContaining 2026-04-17 23:39:18 +03:00
salh a6d3e9b4b7 Fix pipeline generation for POINT and RECTANGLE primitive lists, and resolve audio CVar linkage errors 2026-04-17 23:33:48 +03:00
salh 4f5b43d66b Fix 64-bit portability warning in XObject::GetNativeObject 2026-04-17 23:21:16 +03:00
salh fa136d2920 Revert "fix(gpu): allow VS-expanded primitives in D3D12 pipeline cache"
This reverts commit e41480ebb7.
2026-04-17 23:17:53 +03:00
salh e41480ebb7 fix(gpu): allow VS-expanded primitives in D3D12 pipeline cache
TranslateAnalyzedShader and CreateD3D12Pipeline assumed host vertex type was only kVertex for non-tessellation paths. Point/rectangle list expansion uses kPointListAsTriangleStrip and kRectangleListAsTriangleStrip while still emitting a vertex shader — accept those types for logging and PSO creation.

Made-with: Cursor
2026-04-17 23:00:09 +03:00
salh c604a16310 fix(gpu): handle VS-expanded point/rectangle lists in DXBC translator
StartVertexOrDomainShader only handled kVertex and tessellation domain types; kPointListAsTriangleStrip and kRectangleListAsTriangleStrip fell through to assert_unhandled_case after enabling D3D12 point expansion by default. Route them through the same vertex index setup as kVertex.

Made-with: Cursor
2026-04-17 22:56:51 +03:00
salh 62717248d4 fix(gpu): default point-list expansion in VS for particles/trails
D3D12 previously assumed native point-list + geometry-shader expansion; that path can drop or rasterize points incorrectly (invisible missile trails). Default to the shared triangle-strip VS expansion path with an init-time CVar override.

Vulkan: default vulkan_force_expand_point_sprites_in_vs to true for the same behavior on non-D3D12 hosts.
Made-with: Cursor
2026-04-17 22:55:03 +03:00
salh 38036d9154 feat: expose D3D capture topology and per-frame draw stats in overlay
Add guest primitive-type histograms and per-frame DrawStatsSnapshot to frame capture summary so AC6 debugging can correlate point-list draws (trails) and sampler churn with native graphics planning without extra tooling.

Made-with: Cursor
2026-04-17 22:47:31 +03:00
salh 22900753d7 fix: keep Windows audio backend WASAPI-only
Remove the Windows runtime path that referenced the SDL driver so Windows builds do not require SDL symbols while Linux continues to use the SDL backend.

Made-with: Cursor
2026-04-17 22:44:16 +03:00