Compatibility layers: Difference between revisions

mNo edit summary
mNo edit summary
Line 282: Line 282:
|x86 and x86-64 Windows applications on Windows for ARM64 <ref group=N>https://www.geeky-gadgets.com/prism-x86-64-emulator/</ref>
|x86 and x86-64 Windows applications on Windows for ARM64 <ref group=N>https://www.geeky-gadgets.com/prism-x86-64-emulator/</ref>
|-
|-
|[[Box86/Box64]]
|[[Box86/Box64|Box86 / Box64]]
|align=left|{{Icon|LiA|Android|Pandora}}
|align=left|{{Icon|LiA|Android|Pandora}}
|[https://github.com/ptitSeb/box86 {{box86Ver}}]/[https://github.com/ptitSeb/box64/ {{box64Ver}}]
|[https://github.com/ptitSeb/box86 {{box86Ver}}]/[https://github.com/ptitSeb/box64/ {{box64Ver}}]
Line 444: Line 444:
:;[[Winlator]]: is an Android application that lets you to run Windows (x86_64) applications with Wine and Box86/Box64.
:;[[Winlator]]: is an Android application that lets you to run Windows (x86_64) applications with Wine and Box86/Box64.


;[[FEX]]: a lightweight compatibility layer that enables the execution of x86 and x86‑64 applications on ARM‑64 Linux devices. It supports both 32‑bit and 64‑bit binaries and can be paired with [[Wine]] or [[Proton]] to run Windows games on ARM hardware. The project began in late 2018 when Valve approached the initial developer, Ryan "Sonicadvance1" Houdek, and provided early funding and guidance to create a long‑term, open‑source solution for translating x86 code to native ARM64. Valve’s backing continued from the start, allowing FEX to mature alongside other Valve‑supported projects such as Proton. By using a dynamic binary recompiler, forwarding graphics APIs (OpenGL/Vulkan) to the host, and offering a per‑application configuration system (exposed through the FEXConfig GUI), FEX delivers broad compatibility while keeping overhead low. Its design makes it suitable for use on devices like the Snapdragon‑based Steam Frame, where Valve needs to run traditional x86 games and applications on ARM hardware.
;[[FEX]]: FEX is a high-performance compatibility layer that enables the execution of ''x86 and x86_64 applications on ARM64 Linux''. It supports both 32‑bit and 64‑bit binaries and can be paired with [[Wine]] or [[Proton]] to run Windows games on ARM hardware. The project began in late 2018 when Valve approached the initial developer, ''Ryan "Sonicadvance1" Houdek'', and provided early funding and guidance to create a long‑term, open‑source solution for translating x86 code to native ARM64. Valve’s backing continued from the start, allowing FEX to mature alongside other Valve‑supported projects such as Proton. FEX utilizes a sophisticated Intermediate Representation (IR) and a dynamic recompiler (JIT) to translate instructions. It relies on a "RootFS" to provide an x86 environment, ensuring high compatibility with complex software and modern instruction sets like AVX. Its design makes it suitable for use on devices like the Snapdragon‑based Steam Frame, where Valve needs to run traditional x86 games and applications on ARM hardware. '''Comparison to Box86/Box64''': FEX emulates the full x86 user-land for high accuracy, whereas Box prioritizes speed by "wrapping" calls to native ARM libraries.


:;[https://gamehub.xiaoji.com/ GameHub] <small>(formerly GameFusion)</small>: an Android application created by GameSir, a company best known for its gaming controllers. The app bundles [[Proton]], [[FEX]], a graphical [[Frontends|front‑end]], and the necessary drivers, providing a complete environment for installing and playing Windows games on Android. It comes with pre‑configured cloud profiles for many titles, lets you build personal game collections, and offers detailed settings for CPU translation, GPU drivers, and controller layouts. Additionally, it provides real‑time monitoring of CPU, GPU, RAM, and temperature. However, the app is proprietary, which may conflict with the open‑source licenses of the included software, and it is developed by a Chinese company that incorporates extensive telemetry and requests numerous permissions.
:;[https://gamehub.xiaoji.com/ GameHub] <small>(formerly GameFusion)</small>: Developed by the hardware company ''GameSir'', GameHub is a proprietary Android application designed to ''simplify Windows gaming on mobile devices''. It bundles [[FEX]], [[Proton]], and custom GPU drivers (like Turnip/Mesa) into a unified graphical interface. The app features cloud-synced controller profiles, a "virtual" Steam environment, and real-time hardware monitoring. However, because it is closed-source and developed by a Chinese entity, it has faced criticism for including extensive telemetry, requiring intrusive permissions, and potentially violating the GPL/MIT licenses of the open-source components it integrates.


::;[https://github.com/Producdevity/gamehub-lite GameHub Lite]: a community‑maintained fork of the original GameHub app that focuses on privacy and simplicity. It removes many telemetry libraries and unnecessary permissions, and eliminates the separate GameHub account requirement—users only need to log in to Steam. From a user’s perspective, GameHub Lite feels slimmer, more privacy‑friendly, and less intrusive, though it sacrifices some of the convenience features found in the official version.
::;[https://github.com/Producdevity/gamehub-lite GameHub Lite]: GameHub Lite is a community-modified version of the GameSir app designed to strip away the "bloat." It removes mandatory account registration, eliminates telemetry libraries, and reduces the number of required Android permissions. Users can log directly into Steam without a third-party intermediary. While it maintains the core performance of the original app, it sacrifices some of the official "cloud" convenience features in favor of a slimmer, more privacy-focused experience.


;[[Box86/Box64]]: Box86 and Box64 are compatibility layers that allow x86 Linux programs, including games, to run on non‑x86 Linux systems such as ARM. Box86 targets 32‑bit little‑endian hosts, while Box64 handles 64‑bit binaries.
;[[Box86/Box64|Box86 / Box64]]: Box86 and Box64 are independent compatibility layers created by ''ptitSeb'' that allow ''x86 Linux programs to run on ARM systems''. Unlike other emulators, they use Library Wrapping: instead of emulating every instruction, they "wrap" common x86 libraries (like SDL, OpenGL, and OpenAL) and redirect those calls to the native ARM versions already installed on the host. This significantly reduces CPU overhead, making it the most efficient option for low-power SBCs (like Raspberry Pi) and Android handhelds. Box86 targets 32-bit applications, while Box64 handles 64-bit binaries. '''Comparison to FEX''': Box is often faster and "lighter" because it uses native ARM libraries, while FEX is more compatible with "pure" x86 code that lacks native ARM equivalents.


;[[TeknoParrot]]: is a compatibility layer for Windows PCs to run games originally made for Windows-based arcade systems. Has since version 1.51 also support for some games running on Linux.
;[[TeknoParrot]]: is a compatibility layer for Windows PCs to run games originally made for Windows-based arcade systems. Has since version 1.51 also support for some games running on Linux.