Downgrading to Windows 10 on ARM

Ever since Microsoft made x86-64 emulation exclusive to Windows 11 on ARM, they've been heavily pushing Windows 11 for all devices regardless of architecture. However, Windows 11 removed the ability to see window titles on the taskbar without using 3rd party tools, which is a dealbreaker for me due to the way my mind works while I am working at my PC. Clearly, I'm not the only person with a reason to prefer Windows 10, as I've seen many people online sticking to it as much as they can, including Surface Pro X users who are giving up x86-64 support in favor of Windows 10. As a developer, I need to make sure my software runs on the operating systems people are using, but it's getting more difficult as Microsoft is no longer selling Windows 10 licenses in their store, nor Windows 10 on ARM devices in general. In my previous post I talked about trying Windows 11 on ARM with the Lenovo ThinkPad X13s, and while it runs well, I just can't get past the lack of window titles

Finally Trying Windows 11 on ARM

I've long enjoyed my Lenovo Miix 630, a Windows 10 on ARM device with a Snapdragon 835. Microsoft decided not to support that CPU for Windows 11 , so I got to keep Windows 10 on it just as I like. However, Microsoft introduced some bug with storport.sys that resulted in it bluescreening at bootup repeatedly, and despite multiple attempts to wipe and reinstall, the issue persisted. I ended up sending it in for out-of-warranty repair, during which time Microsoft fixed the bug of course. While waiting for Lenovo to fix my device, I started getting antsy. While I had the QC710 to keep me company, its Snapdragon 7c processor was far too sluggish for my liking, and I had upgraded it from Windows 10 to Windows 11. Project Volterra is looming on the horizon, but still not out yet (UPDATE 2022-10-24: Project Volterra is released! ). I had been keeping my eye on the new Lenovo ThinkPad X13s for months, watching review videos and reading articles about it. It was quite tantalizing since it s

Project Volterra is NOT the first desktop Windows on ARM device

 Microsoft recently announced Project Volterra, their second desktop Windows on ARM device after the QC710, seen in this video at 12:17: However, a lot of online reporting is falsely claiming this to be Microsoft's first desktop Windows on ARM device. It seems everyone has already forgotten the QC710 , which has still been available for months sold directly from the Microsoft store . Both the QC710 and Project Volterra are aimed at developers, but it seems like Project Volterra is getting a bigger marketing push from Microsoft, so perhaps most tech press just genuinely had not heard of the QC710 before. My time with the QC710 has been fine, though I was unable to upgrade it from Home to Pro until 2022-06-24 and it still hasn't magically acquired hardware virtualization support, but it works well for its purpose of being a desktop WoA device for development and testing. I will probably get Project Volterra too, since it will likely have better specs than the QC710. There's n

Windows on ARM is off to a shaky start, but it is the future

After waiting and waiting, the Snapdragon Developer Kit for Windows on ARM that was promised to be released before the end of the summer was finally released on 2021-11-14. It's called the ECS LIVA Mini Box QC710 Desktop, and it can be purchased from the Microsoft store with a zero refunds policy, in your browser or in your Microsoft Store app . We have known the specifications since the original announcement back in May, and based on the specs many people were expecting a low end price, but the actual price ended up being $219 USD before tax. This is a bit more expensive than what some were expecting, but it could be to combat supply chain shortages by discouraging ordinary people from buying it, thus leaving enough supply for developers. This is unfortunate as ideally Microsoft would want to jump start Windows on ARM development by getting these devkits into the hands of as many developers as possible, but at least we have it at all and it is indeed cheaper than other Windows on

Down the Windows on ARM devkit rabbit hole

(UPDATE 2021-11-14: It's finally available on the Microsoft Store !) Microsoft and Qualcomm recently teamed up to create a Snapdragon Developer Kit for Windows on ARM. I already have a WoA device, but it's an older processor that doesn't support hardware virtualization, and might not even support Windows 11 , so I am excited to get my hands on this new devkit. It was announced first at Microsoft Build in this rather unusual presentation: At first, I didn't understand why it was so awkward, or why these two Microsoft employees seemed to simultaneously dislike each other and not care about each other. I was incredulous, laughing and naively wondering if Microsoft had really let some passive-aggressive beef between two engineers slip out like this. Then, I showed the video to someone else, and they pointed out that it was a parody of the comedy celebrity interview series Between Two Ferns. That's when things clicked, and I appreciated the presentation even more. The d

I wish UWP had succeeded

I work professionally as a C++ developer, and as part of my job I personally ported multiple Win32 games to run on UWP for Desktop and Xbox. I will admit, there are some aspects of the Universal Windows Platform that I found annoying, but overall I liked the direction it was going and the features it offered. The main thing I liked about UWP apps was the user experience: the app/game runs in a sandbox with limited permissions that the user can see in advance and even turn off or customize. I am a huge, huge advocate of giving users control over what apps are allowed to do on their system. This is difficult to do with any real reliability for Win32 apps, especially without sacrificing performance, and it's why antivirus software has stepped up as an alternative. UWP on the other hand had sandboxing and permissions baked in while being really performant, especially if you implemented your UWP app or game as C++/WinRT with DirectX 11 or 12. Android, iOS, and other mobile operating sys

How to build WinDirStat for Windows 10 on ARM

WinDirStat is a 32-bit x86 app, so it can already run through emulation on Windows 10 on ARM. However, it is surprisingly easy to build an ARM-native version of the app. I thought it'd be fun to try, so here's what worked for me. First, you'll need to install Visual Studio. I used Visual Studio 2022 Preview 1.1 for this, but things should work in Visual Studio 2019 as well. Importantly, within Visual Studio Installer, you need to select the Desktop Development with C++ workload, and in the optional components you need to select MFC, specifically for ARM. You can find it by searching for ARM MFC in the Individual components screen. You should install MFC for x86 as well to verify that you can build WinDirStat in its default configuration. Once you have Visual Studio installed, you need to download the WinDirStat source code. When I did it, it was hosted on OSDN as a mercurial repository, so I installed mercurial and cloned the repository. With the source code in hand, all I