How to install Windows Me in QEMU

< Windows 98 | Windows NT 4.0 >
Windows Millennium Edition (commonly referred to as just Windows Me or Windows ME) is an operating system created by Microsoft, released on June 19, 2000. It was the final addition to the Windows 9x series. Support ended in 2006.
Notes
Windows Me was quite notorious at time for its random crashes and frequent BSODs, earning the nickname "Mistake Edition" because of this. This mostly happened on physical hardware, though, and doesn't really occur on emulated hardware.
The QEMU Device Tablet, like in Windows 95 and Windows 98, does not work out of the box in Windows Me. However, this trick may work for installing the drivers on Windows Me.
Minus the issues above, it will work fine for a VM.
Starting up
QEMU
Pre-installation
Make a qcow2 image (or a raw image if you want) by typing
qemu-img create -f qcow2 winme.img 1G
1G can be replaced with however big you want the hard drive to be (with G standing for Gigabytes). Windows Me is a very old OS and does not take up a lot of space.
When that's done, run the following command:
qemu-system-i386 -hda winme.img -cdrom winme_iso_name.iso -boot d -cpu pentium3 -m 128 -vga cirrus -net nic,model=pcnet -net user -rtc base=localtime
Windows Me usually works on, but is highly unstable on, KVM, with very frequent lockups and BSODs. We'll just disable it, since you don't really need it anyways.
You can also use VMWare graphics adapter instead of Cirrus if you have the drivers available.
We set the memory to 128 MB. The absolute minimum is 8 MB, like Windows 95 and 98, although this isn't recommended if you want to be running any programs.
After installation
qemu-system-i386 -hda winme.img -boot c -cpu pentium3 -m 128 -vga cirrus -net nic,model=pcnet -net user -rtc base=localtime
Improved CPU stability
For better CPU stability and KVM support, you'll want to install Patcher9x.
Patcher9x is a utility for improving compatibility and stability of Windows 95, 98, and Millennium Edition (Windows 9x) in virtual machines. It applies runtime patches to system files to fix hardware, memory, and driver issues in emulated environments.
Download
The latest release is available on GitHub at JHRobotics/patcher9x.
Install
In QEMU, Patcher9x is typically booted from a floppy disk image (.ima) to patch a virtual hard disk. Attach the image as a virtual floppy and boot from it, for example you would add:
-fda patcher9x-0.9.88-boot.ima -boot a
When it boots up, you can select all the default options. It'll work just fine. Once you're done, reboot and you're all set. This patch allows for more reliable usage of KVM under Windows Me.
32-bit Display Drivers
For improved graphics performance and display quality in Windows Me virtual machines, the recommended solution is SoftGPU.
SoftGPU is a modern VESA/OpenGL driver suite developed specifically for Windows 9x environments, but is still compatible with Windows Me.
It addresses several known issues present when using QEMU’s Standard VGA driver, including page faults, mode-switch corruption, and system hangs during shutdown.
By replacing the default Standard VGA driver, SoftGPU enables 32-bit color depth and higher display resolutions without requiring any hardware modifications.
Download
The latest release is available on GitHub at JHRobotics/SoftGPU.
The ISO distribution is recommended, as it can be transferred to the virtual machine more easily.
Installation
Execute softgpu.exe using an Administrator account.
Allow the program to inspect your system.
Select Copy files (default settings are fine).
If prompted to install DirectX, complete that process, then run softgpu.exe again and select Copy files.
Reboot the guest operating system.
Once installation is complete, the system should display correctly without graphical corruption. The -vga std option can now be used for improved performance compared to Cirrus. Additionally, KVM acceleration may now be more stable, since the virtual machine should shut down and reboot properly with no stalls or graphical corruption.
Windows Updates
If you want a streamlined process to install all of Windows Me's updates, you'll want to use the Windows Me Update CD (Release 2.3). It is a community-sourced compilation of official Microsoft updates, security patches, and hotfixes for Windows Me. It includes:
- An automated installer for over 140 updates, such as the System Restore Update, Windows Installer 2.0, and Active Accessibility 2.0.
- Options to update preinstalled components like Internet Explorer and Windows Media Player.
- A collection of recommended and optional component updates, including DirectX 9.0c, Microsoft .NET Framework, and Microsoft Jet Database Engine 4.0 SP8.
For more information and to download the release, see Windows Me Update CD (R2.3) at Internet Archive.