Tag Archives: UTM SE

Retro Computing: Windows 98 SE/Setup

Continuing my adventures with UTM SE, the first thing I did was run Windows 98 SE Setup.

Windows 98 SE was the first OS on my first computer, so this was a huge trip in nostalgia. I made an ISO from my old and scratched Windows 98 SE disk, mounted it in UTM SE and let it boot.

Windows 98 SE, Start Computer with CD ROM Support
Windows 98 SE, Start Computer with CD ROM Support

The boot screen sent me into throes of nostalgia. So did the next steps.

I could feel myself going crazy when the setup GUI came up.

Windows 98 Setup, To begin Setup, click Continue
Windows 98 Setup, To begin Setup, click Continue

I got stuck for a while here because I couldn’t make my keyboard and mouse work. Eventually, I figured out that I needed to disable support for USB peripherals and I could continue.

After the first reboot, I was presented with the famous “first time” Windows 98 boot splash screen. Another huge dose of nostalgia.

Microsoft Windows 98, Getting Ready to run Windows for the first time
Microsoft Windows 98, Getting Ready to run Windows for the first time

The second phase of the setup is (was) my favourite. I especially like the part with the beating drums animation.

Eventually, after an hour and 50% of my iPad’s battery, setup was complete and it booted into Windows.

More to come, soon.

Retro Computing: UTM SE

Last week, something unthinkable happened. Apple finally allowed emulation of any and all OS on iOS and iPadOS. The intended purpose is to emulate retro Windows based games, which matches their recent trend of approval of gaming-system emulation apps. However, for me, it restarts a long-time hobby of running retro OSes purely for nostalgia and hobby purposes. This was not possible before because I don’t have a real computer, just an iPad. The first app to take advantage of this change of heart from Apple is UTM SE.

Now, UTM SE has been available on macOS and jailbroken iOS and iPadOS for quite some time, but this is the first time the app is officially available through the App Store.

Overview

The process to configure a new VM is much like most virtualisation apps out there. You use either an existing image or create a new one, select various parameters like RAM, HDD, CPU architecture, cores etc.

Your Bluetooth mice/keyboards can be mapped to the guest OS via USB or PS/2 emulation. For older OS (Pre Windows ME) which don’t have out of-box support for USB peripherals, you need to disable USB support for Mouse/Keyboard so that they are emulated as PS/2. Even touch gestures can be used in lieu of a mouse, although the experience is clunky.

UTM SE: Switch between USB or PS/2 for mouse and keyboard
UTM SE: Switch between USB or PS/2 for mouse and keyboard

Another useful feature is that you can map a folder on your iOS/iPadOS filesystem to the guest machine allowing you to transfer files easily.

UTM SE: Select Shared Directory
Select Shared Directory

Also, you can choose to include your VMs in your iCloud backups.

The Bad

Instead of proper virtualisation that is possible on other computing platforms, UTM on iOS and iPadOS uses software emulation, making it very-very slow. Apparently iOS and iPadOS had virtualisation support (only with jailbreak) previously, but they removed it a few years ago.

The other limitation is, iOS and iPadOS don’t allow JIT compilation for apps from the App Store which negatively affects performance further.

For me, the performance is roughly similar to my first Celeron 400Mhz computer. Which, when compared to the 4×3.49Ghz high-performance cores on the Apple M2 means there is an approx 35x performance penalty for emulation. No wonder the “SE’ in UTM stands for “Slow Edition”.

Also, switching to another app causes UTM to suspend the VM after a few minutes. None of this is UTM’s fault, but needless restrictions from Apple to stop iPads from cannibalising Mac sales.

Also, the iPad screen locks after inactivity, which I think is on UTM, because apps (especially games) have been able to keep the screen unlocked through inactivity.

But the good thing is, you can resume from where you left off. Also, you can run multiple windows of UTM itself, even with multiple windows mapping to multiple monitors on the guest.

Battery usage is also extremely high because of the inefficiencies.

Look forward to many (many) posts on this topic.