Repository navigation
REFramework for ARM64EC Wine — arm64ec-r1
Unofficial REFramework build for Resident Evil / RE Engine games running through ARM64EC Wine/Proton (Android handhelds with Bannerlator, other ARM64 Wine setups). REFramework is made by praydog — https://github.com/praydog/REFramework (MIT).
Built from fix/arm64ec-hook-freeze at 37831bfc = praydog's master f9cb2ac3 (which already contains our ARM64EC crash fix, praydog/REFramework#1887, merged by praydog) plus:
- L3 + R3 opens/closes the menu on a controller (
a986edf1). Option "Gamepad Menu Combo (L3 + R3)" in Configuration, on by default. - Insert works when the game blocks key messages (
b0b03908,2ee55772). RE2 takes its keyboard through DirectInput in exclusive mode; under Wine the game window then gets no key messages, so the menu key never arrived. REFramework now also checks the key itself. - Startup hang fixed (
37831bfc). Under x86-64 emulation on ARM64, writing a new hook next to hooks that were already running could be refused, and REFramework retried forever ("initializing" never went away, about half of all RE2 starts). Each hook now gets its own memory.
On a normal x86-64 PC these code paths are not used (they check for ARM64 emulation first).
Tested on an AYANEO Pocket FIT (Snapdragon, 16 GB) with Bannerlator, Proton 11 ARM64EC, Resident Evil 2 (DX12): 16 of 16 clean starts (before: 10 of 21 stuck), menu opens with Insert, the Bannerlator drawer button and L3 + R3.
Not tested: other RE Engine games, Windows on ARM.
Known: a key press made while REFramework re-initializes after the game's display reset (a moment ~14 s after start) is ignored — press again. Some game-specific hooks for newer games (RE4, SF6, DD2) still use the shared hook memory.
Install: put dinput8.dll next to the game EXE and set WINEDLLOVERRIDES=dinput8=n,b. Bannerlator ships this exact file behind its per-game REFramework switch.
dinput8.dll sha256 fcfa693d349c4e750c2aab8650fb23c5a5a6aad178ae0fb570b23a856b4987e4 (built by GitHub Actions run 41677506877).