FEX 2203 Tagged!

More changes all over this place this month.

  • Implemented some new CPU extensions
    • RDRAND/RDSEED and 3DNow!
      • RDRAND only exposed if your host CPU supports the extension
      • 3DNow! implementation also including the Extended and Geode exclusive instructions
  • Implemented a way for guest applications to use CPUID to see FEX hypervisor
    • Any additional options we want the guest to see can be passed through
  • Preparation work for JIT code caching
    • Switching over to loading function pointers from our state options to make the JIT code PIC compliant
    • Adding robin_map which the code cache will use
    • Updating vixl to have finer grained cursor control for JIT relocations
  • A new IR JSON format
    • This allows cleaner IR implementations and more consistent emitter functions
    • Allow emitter functions to have validation inside of them for strict validation
    • Automatic SSA argument type validation to remove invalid IR generation
      • Already found a bug in our x87 code generation
  • Musl fixes
    • FEX-Emu can now both be compiled for Musl and run Musl compiled applications
  • Termux fixes
    • FEX-Emu now more cleanly compiles under Termux
      • Hard to use due to raw syscall usage and Android seccomp
      • proot is likely required here
Read More

FEX 2202 Tagged!

Lots of good changes this month

  • pressure-vessel hang fixes in preparation of supporting Proton on AArch64
  • The start of implementing SSE4.2
  • Fixes an x87 FREM issue, fixing camera rotation in Source engine games and Binding of Isaac
  • Linux 32-bit socket fixes resolving some controller bugs
  • FEXRootFSFetcher doing some additional checks to make the user experience better
  • Removes the IR Interpreter option since it isn’t userful for end users
  • FEXLogServer bug fixed which was causing FEX asserts to be missed
Read More

FEX 2201 Tagged!

Another release with a lot changes this month!

  • We now support BMI2, RDTSCP, CLZero.
  • We tell the guest what ARM CPU name we are running on.
  • We expose the hybrid CPU flag flag on big.LITTLE ARM SoCs.
  • Bunches of syscall fixes, JIT compile time speed increases, usability improvements.
  • Tons more.
  • A new FEXRootFSFetcher tool for downloading prebuilt RootFS images.
  • A Python script for automatically setting up an Ubuntu PPA and RootFS.
    • See our quick start guide to see how here
    • Or see the Ubuntu PPA here
Read More

FEX 2112 Tagged!

A lot of changed things this month.

  • New instructions & fixes (BZHI, MULX, RORX, SARX/SHLX/SHRX)
  • steamwebhelper now works
  • Linux emulation updated to 5.16, sched_getaffinity, MAP_32BIT, 32-bit DRM emulation improvements
  • Several other bug fixes and optimizations
Read More

FEX 2111 Tagged!

BMI1 is now fully supported, several linux emulation fixes, thunk cleanups, initialization optimizations and several other assorted improvements.

Read More

Hello world

FEX-Emu is a linux usermode x86 and x86-64 emulator for arm64. It aims to bring x86 and x86-64 games to arm64 devices.

Read More