github florinp93/hells-gate-recomp v0.6.4-beta

2 hours ago

What's Changed

TU2 (Title Update 2) stability — random crash fixes

  • Unified post-codegen patcher (apply_generated_patches.py): detects setjmp/longjmp by function signature, works on both base XEX and TU2, and is idempotent.
  • Patched all 4 setjmp call sites (previously only 1) — unpatched sites left the host jmp_buf unarmed, so longjmp jumped into stale state → random crash.
  • Patched all 14 longjmp call sites (previously only 1).
  • Stripped the TU2 fiber-switch bnectr gate inside setjmp.
  • OnPreLaunchModule now detects the loaded image variant and clears the correct TU2 fiber-switch callback slot (0x82CE68E4; base was 0x82B101E4).
  • FiberRestoreContext now restores the full guest jmp_buf state: f14–f31, r1, r13–r31, CR, LR, and v64–v127.

Codegen trap fixes

  • Added 35 missing manifest entrypoints for unresolved branch/call targets.
  • 181 unresolved calls/branches resolved — 0 remaining REX_FATAL unresolved traps (was 85).
  • Eliminated the runtime "Call to unresolved function" spam that preceded access-violation crashes.

Native renderer (Vulkan / DiligentCore, experimental)

  • Restored the dantes_inferno_native build target, DiligentCore integration, and SSE3/SSE4.1 compile flags lost when the project files were re-stamped.
  • Wired the real NativePresenter (previously a color-clear smoke test): D3D12 presenter is detached before Vulkan swapchain creation, fixing VK_ERROR_NATIVE_WINDOW_IN_USE_KHR.
  • Verified D3D12→Vulkan shared-texture GPU interop (zero-copy presentation), 3440×1440 ultrawide, 2× resolution scale.
  • dantes_inferno_native.exe is now bundled in the installer — selecting "Native (Vulkan, experimental)" in the launcher runs it.

Also in this release

  • DLC auto-install (Trials of Saint Lucia + item DLC), TU2 bundled as default.xexp. Place DLC files in "Path to game \dlc\454108CF\00000002"
image

Don't miss a new hells-gate-recomp release

NewReleases is sending notifications on new releases.