New version of Box86 and Box64 unlocks Steam Big Picture Mode and Heroic Games Launcher on ARM

By

There’s a new version of Box86 and Box64 out - the amazing piece of software from PtitSeb that can make your ARM Linux PC or SoC run x86 and x86_64 code with great performance. As you may recall, a few weeks ago the previous version made it possible to run the full Steam Linux client - but at the time the Big Picture mode did not work yet. This is now a solved problem! And on top of that, the new version also makes it possible to run Heroic Games Launcher and play games from the Epic Games Store by using WINE, as you would typically do. Here’s the demo in action on a Phytium D2000 ARM Mini-PC equipped with an AMD RX 550X:

Useful Resources

Here’s several links about Box86 and Box64 that should be worth your time:

You can also find the full changelog for Box86 and Box64 below:

Box86 v0.3.0 Changelog

  • Added rcfile handling: box86 now read /etc/box86.box86rc and ~/.box86rc and apply per process parameters => Every program can be finetuned, for speed or just to make them work
  • Added BOX86_DYNAREC_FORWARD to allow bigger Dynarec block to be build
  • Refactored Strong Memory Model emulation (faster and more accurate)
  • Box86 now return a custom name for the CPU instal of P4, build with Box86 and the cpu name it’s running on
  • Improved memory protection tracking and signal handling, again
  • More wrapped libs (especially on the gtk familly)
  • More wrapped functions
  • Added support for CreateDeviceEx in d3dadapter9, for better gallium nine support
  • Improved dladdr/dladdr1 wrapped function
  • Some fixes to flags handling in the Dynarec on some special cases
  • Added specific suppport for RK3588 board (needed some hack in signal handling, probably due to the use of a non mainlined kernel)
  • Lots of improvment in the Rounding of float & double (Dynarec and Interpretor), and proper handling of denormals when converting to/from 80 bits long do>* Added specific suppport for RK3588 board (needed some hack in signal handling, probably due to the use of a non mainlined kernel)

Box64 v0.2.2 Changelog

  • Added a hacked version for overriden malloc/free functions, enabling libcef (and derivative) to work. => Steam Large mode and new BigPicture are working, as well as Heroic Launcher
  • Added rcfile handling: box64 now read /etc/box64.box64rc and ~/.box64rc and apply per process parameters => Every program can be finetuned, for speed or just to make them work
  • Added BOX64_DYNAREC_CALLRET to optimized CALL/RET opcode using semi-direct native CALL/RET (get more than 10% speedup)
  • Added BOX64_DYNAREC_FORWARD to allow bigger Dynarec block to be build (can get more then 30% of Speedup!)
  • Improved memory protection tracking and signal handling, again
  • Box64 now return a custom name for the CPU instal of P4, build with Box64 and the cpu name it’s running on
  • Simplified mutex handling (faster, cleaner)
  • Reduce memory used by the memory tracking (memory almost divide by 4 is some critical use case)
  • Added d3dadapter9 wrapping => gallium nine is now supported on box64 too
  • More wrapped libs (especially on the gtk familly)
  • Improved/fixed some Syscall handling
  • Refactored Strong Memory Model emulation (faster and more accurate)
  • Added some more opcode to ARM64 Dynarec, and fixed some other
  • Some fixes to flags handling in the Dynarec on some special cases
  • Refactor library loading/unloading, with refcount.
  • Some special cases fixes for dlopen (fixes deadcells, maybe others too)
  • Improved mmap mapping, espcially with MAP_32BITS flag
  • More wrapped functions and syscalls
  • Lots of improvment in the Rounding of float & double (Dynarec and Interpretor), and proper handling of denormals when converting to/from 80 bits long do>* Added specific suppport for RK3588 board (needed some hack in signal handling, probably due to the use of a non mainlined kernel)
  • More support on the RV64 port
  • More support to build under musl environment