Testing x86 application emulation on Windows on ARM
Reviews of Windows on ARM devices pretty much always states that the access to applications is limited and the x86 emulation isn't the best solution. But how do those applications actually work (or not) on WoA laptops? Let's go through various apps and see.
Windows 10 on ARM could run 32-bit x86 application in emulation. Windows 11 added support for 64-bit app emulation. Even though the application can run it will have a penalty on performance or battery life. This would be a best-case scenario as things can get more problematic. Support for external devices that require their own drivers would have to be native to then get support in Windows. If the drivers are x86 only it probably won't work.
For tests I used Lenovo IdeaPad 4G 14Q8C05 (82KE000JGE) with Qualcomm Snapdragon 8c and 8GB of RAM. The laptop was running windows 11 22H2.
In the review I've tested native World of Warcraft which works fine (although not with good FPS and a recent update added some DX-related crashes). Native Geekbench or GFXBench also works. Emulated Skyrim works although the original 32-bit Skyrim runs way better than 64-bit Skyrim Special Edition - which is likely related to assets upgrade in the SE version. Final Fantasy XIV benchmark is emulated and crashes right after start.
GOG or Steam do work. A Dosbox-managed DOS game - Fragile Allegiance does work although the framerate is choppy, making it harder to play. This could be a settings issue as in windowed mode was way better than fullscreen.
Old games like Heroes of Might and Magic III do work and the animations are fluid. Assuming there are no emulation problems old games should be ok to run.
I've also tested old 1.12 WoW client from 2006 that is used by private servers - it's a DX9 client that still runs on modern hardware (with some regressions and problems). On the Lenovo WoA laptop, it does run and reaches around 50 FPS in Orgrimmar - which isn't much for an old game but it's an old client + emulation.
Aida64 does turn on and lists most of the hardware but some of the benchmarks fail. HwInfo does run although the sensors list is quite limited when compared to what you get on an x86 laptop. AsSSD works and can benchmark the SSD, while CrystalDiskMark and CrystalDiskInfo are native AARCH64 Windows applications and also work without problems.
CPU-Z shows an error message on start but does start and lists only basic information. CPU can be tested but results can't be submitted (nothing happens). GPU-Z won't start due to a driver-related error.
Classic applications like WinRAR, TotalCommander or IrfanView do work. I tested them only for a short amount of time so some plugin problems or edge cases could show up.
Benchmarking overlays like MSI Afterburner and CapFrameX do not work. CapFrameX doesn't install while Afterburner launches but doesn't give the overlay and has no data about the laptop hardware.
For third-party hardware-related applications I've picked the astrophotography hardware that I run on an x86 Lenovo laptop as well. Most astronomy hardware vendors do support ARM on Linux, some even use Raspberry Pi for their embedded solutions. None of them from my knowledge has WoA native support.
Omegon/ToupTek camera worked with Nebulosity 4, SharpCap and FireCapture emulated 64-bit x86 applications. The vendor like many other do support ARM for Linux but not for Windows. Omegon
AstroCapture application did not work - it becomes unresponsive after start (although lists the camera) and crashes thereafter. Fast framerate recording in FireCapture did work, although it did slow down to single-digit FPS regularly - unsure if it's SSD/RAM issue or the emulated mode. Funnily enough, when I plugged in the camera Windows did list it as an unknown/unsupported USB device.
Point Grey Chameleon USB2 machine vision camera did not work with FlyCapture nor with Spinnaker SDK (own applications as well as FireCapture bindings). DirectShow mode did not work in SharpCap as well.
QHY5III 174MM planetary USB3 vision camera did not work - in FireCapture nor through ASCOM in Nebulosity 4. QHY own ezPlanetary app did not run due to missing DLL.
USB2 electric filter wheel from Brightstar (made/makes hardware for Orion) did not work - the driver errored out during installation (while ASCOM and control apps do install and launch).
Svbony simple DirectShow USB2 camera as well as laptop own webcam do work in SharpCap.
In short from hardware only ToupTek worked and nothing else.
Simpler apps like IrfanView, TotalCommander, WinRAR tend to just work. More complex applications, like hardware/sensor listing and benchmarking, can have problems. Most hardware that needs its own drivers does not work, at least for astrophotography. Old games seem to work, although Adreno iGPU + emulation won't break records or compete with Intel Xe or Vega 8 iGPU.
Microsoft released a relatively cheap nettop with Snapdragon 8cx gen 3 under
Project Volterra to bring more attention of software developers to Windows on ARM so that so we get native versions of applications. Will it change anything time will tell. With very low availability and a small user base of WoA devices and a lack of competitive performance of current Qualcomm chips, it may be hard to expect a wider boom for WoA. Nuvia-based designs in 2023 may give some more competitive chips but this is still in the future and uncertain... and it would be nice if such devices could dual-boot Linux, which has fewer problems with native apps and drivers.