qemu-system-x86_64 -m 256 -cpu pentium -hda win98.qcow2 -net nic,model=ne2k_pci -net user -vga cirrus -soundhw sb16

If you want, I can provide a step-by-step installation script tailored to your host (Linux/macOS/Windows) and whether you’ll use KVM acceleration.

Bringing the 90s Back: Installing Windows 98 on QEMU (qcow2)

If you’re looking to relive the glory days of StarCraft, Age of Empires II, or simply the iconic startup sound, running Windows 98 Second Edition (SE) in a modern virtual machine is the way to go. Using QEMU, an open-source emulator, and the flexible qcow2 disk format, you can get a vintage desktop running on your modern hardware. 1. Preparation

Before starting, ensure you have an ISO image of Windows 98 SE. The Internet Archive is a popular resource for locating these legacy files. 2. Create the Virtual Disk

The qcow2 format is ideal because it only occupies the space actually used by the guest OS. Since Windows 98 is tiny by modern standards, a 1GB to 2GB disk is plenty. Run this command in your terminal: qemu-img create -f qcow2 win98.qcow2 2G Use code with caution. Copied to clipboard 3. Launching the Installation

To boot from the CD-ROM and start the setup, use the following configuration. Note the use of the pentium2 or pentium3 CPU type, as modern CPU instructions can sometimes crash older installers.

qemu-system-i386 \ -m 256 \ -cpu pentium3 \ -drive file=win98.qcow2,format=qcow2 \ -cdrom win98se.iso \ -boot d \ -vga cirrus \ -soundhw sb16 \ -net nic,model=pcnet -net user Use code with caution. Copied to clipboard 4. Navigating the Setup Initial Boot: Choose "Boot from CD-ROM" when prompted.

FDISK: You’ll need to initialize the virtual disk. Use the fdisk utility provided by the installer to create a primary DOS partition.

Format C:: After restarting the VM, run format c: to prepare the file system.

The Wait: The GUI installer will take about 20–30 minutes. 5. Essential Post-Install Fixes

The default installation often lacks modern luxuries like high-resolution graphics or smooth mouse movement.

Video Drivers: The default "Standard VGA" is limited to 16 colors. Use a freeware VBE driver to enable 32-bit color and higher resolutions.

Memory Management: While Windows 98 can run with more, it is generally not designed to handle more than 1GB of RAM, which can lead to instability. Stick to 256MB to 512MB for the best experience.

Software Transfer: Sharing folders can be tricky. A common workaround is creating a temporary ISO file containing your drivers and games and mounting it as a second CD-ROM. Final Boot Command

Once installed, you can drop the -boot d flag to boot directly from your new virtual hard drive:

qemu-system-i386 -m 256 -cpu pentium3 -drive file=win98.qcow2 -vga cirrus -soundhw sb16 Use code with caution. Copied to clipboard

Running Windows 98 within a qcow2 virtual disk image is a popular approach for retro-computing, as it allows for modern features like snapshots, thin provisioning, and compression that the original hardware never supported. 1. Core Configuration & Commands

To get started, you’ll need to create the virtual disk image and then launch the VM with specific hardware emulation that Windows 98 recognizes.

Create the Disk Image: Use qemu-img to create a 2GB to 4GB disk. While Windows 98 technically supports larger, staying under 2GB avoids potential setup prompts regarding "large file system support". qemu-img create -f qcow2 win98.qcow2 2G Use code with caution. Copied to clipboard

Optimal Launch Command: The following configuration is widely cited for stability:

qemu-system-i386 -cpu pentium3 -m 256 \ -hda win98.qcow2 -cdrom win98se.iso -boot d \ -vga cirrus -net nic,model=pcnet -net user \ -soundhw sb16 Use code with caution. Copied to clipboard 2. Performance Optimizations

Because Windows 98 was not built for virtualization, specific "tweaks" are required to prevent the OS from feeling sluggish or crashing.

Enable DMA (Critical): By default, Windows 98 often has DMA (Direct Memory Access) disabled for the "QEMU Hard Disk," which causes extreme instability. Once installed, go to Control Panel > System > Device Manager > Disk Drives, double-click the QEMU Hard Disk, and check DMA in the Settings tab.

Role Change: Set the "Typical role of this machine" to Network Server under the Performance tab in File System settings. This speeds up disk access by increasing the size of the look-ahead buffer.

Cache Tuning: For the host side, you can improve qcow2 read/write speeds by increasing the L2 cache size in your QEMU command (e.g., -drive file=win98.qcow2,l2-cache-size=8M). 3. Known Workarounds & Troubleshooting

Modern CPU Crashes: Newer processors may cause Windows 98 to crash during setup. A common workaround involves switching the hard disk bus type to SATA in your VM manager to bypass standard IDE driver conflicts.

Graphics & Resolution: The default cirrus or std VGA drivers often limit you to 16 colors. It is recommended to use the SoftGPU or Scitec Nucleus drivers to unlock 32-bit color, higher resolutions (up to 1152x864), and basic 3D acceleration.

Network Drivers: The most compatible emulated network card is the pcnet model (-nic model=pcnet), as it has built-in drivers in Windows 98 SE. 4. Format Comparison: qcow2 vs. Raw Snapshots Native support; easy to revert Requires external tools or overlays Disk Space Uses only what is occupied (thin provisioning) Occupies full allocated size immediately Performance Slightly slower due to metadata overhead Maximum speed; no extra formatting layer


QCOW2 files can be used on other platforms with slight adjustments:

For gaming, also consider PCem or 86Box – they offer more accurate cycle-by-cycle emulation. But for lightweight, scriptable, and snapshot-friendly usage, Windows 98 on qcow2 + QEMU is unbeatable.

Once your base win98se.qcow2 is perfect, leverage the QCOW2 superpowers.

Assume you have a perfect install at base.qcow2. To create a new child image:

qemu-img create -f qcow2 -b base.qcow2 -F qcow2 my_game_vm.qcow2

This 100KB file acts as a full 4GB drive. Writes go to my_game_vm.qcow2; reads come from base.qcow2. You can run 10 games simultaneously without duplicating the OS files.

Windows 98 Qcow2 May 2026

qemu-system-x86_64 -m 256 -cpu pentium -hda win98.qcow2 -net nic,model=ne2k_pci -net user -vga cirrus -soundhw sb16

If you want, I can provide a step-by-step installation script tailored to your host (Linux/macOS/Windows) and whether you’ll use KVM acceleration.

Bringing the 90s Back: Installing Windows 98 on QEMU (qcow2)

If you’re looking to relive the glory days of StarCraft, Age of Empires II, or simply the iconic startup sound, running Windows 98 Second Edition (SE) in a modern virtual machine is the way to go. Using QEMU, an open-source emulator, and the flexible qcow2 disk format, you can get a vintage desktop running on your modern hardware. 1. Preparation

Before starting, ensure you have an ISO image of Windows 98 SE. The Internet Archive is a popular resource for locating these legacy files. 2. Create the Virtual Disk

The qcow2 format is ideal because it only occupies the space actually used by the guest OS. Since Windows 98 is tiny by modern standards, a 1GB to 2GB disk is plenty. Run this command in your terminal: qemu-img create -f qcow2 win98.qcow2 2G Use code with caution. Copied to clipboard 3. Launching the Installation

To boot from the CD-ROM and start the setup, use the following configuration. Note the use of the pentium2 or pentium3 CPU type, as modern CPU instructions can sometimes crash older installers.

qemu-system-i386 \ -m 256 \ -cpu pentium3 \ -drive file=win98.qcow2,format=qcow2 \ -cdrom win98se.iso \ -boot d \ -vga cirrus \ -soundhw sb16 \ -net nic,model=pcnet -net user Use code with caution. Copied to clipboard 4. Navigating the Setup Initial Boot: Choose "Boot from CD-ROM" when prompted.

FDISK: You’ll need to initialize the virtual disk. Use the fdisk utility provided by the installer to create a primary DOS partition.

Format C:: After restarting the VM, run format c: to prepare the file system. windows 98 qcow2

The Wait: The GUI installer will take about 20–30 minutes. 5. Essential Post-Install Fixes

The default installation often lacks modern luxuries like high-resolution graphics or smooth mouse movement.

Video Drivers: The default "Standard VGA" is limited to 16 colors. Use a freeware VBE driver to enable 32-bit color and higher resolutions.

Memory Management: While Windows 98 can run with more, it is generally not designed to handle more than 1GB of RAM, which can lead to instability. Stick to 256MB to 512MB for the best experience.

Software Transfer: Sharing folders can be tricky. A common workaround is creating a temporary ISO file containing your drivers and games and mounting it as a second CD-ROM. Final Boot Command

Once installed, you can drop the -boot d flag to boot directly from your new virtual hard drive:

qemu-system-i386 -m 256 -cpu pentium3 -drive file=win98.qcow2 -vga cirrus -soundhw sb16 Use code with caution. Copied to clipboard

Running Windows 98 within a qcow2 virtual disk image is a popular approach for retro-computing, as it allows for modern features like snapshots, thin provisioning, and compression that the original hardware never supported. 1. Core Configuration & Commands qemu-system-x86_64 -m 256 -cpu pentium -hda win98

To get started, you’ll need to create the virtual disk image and then launch the VM with specific hardware emulation that Windows 98 recognizes.

Create the Disk Image: Use qemu-img to create a 2GB to 4GB disk. While Windows 98 technically supports larger, staying under 2GB avoids potential setup prompts regarding "large file system support". qemu-img create -f qcow2 win98.qcow2 2G Use code with caution. Copied to clipboard

Optimal Launch Command: The following configuration is widely cited for stability:

qemu-system-i386 -cpu pentium3 -m 256 \ -hda win98.qcow2 -cdrom win98se.iso -boot d \ -vga cirrus -net nic,model=pcnet -net user \ -soundhw sb16 Use code with caution. Copied to clipboard 2. Performance Optimizations

Because Windows 98 was not built for virtualization, specific "tweaks" are required to prevent the OS from feeling sluggish or crashing.

Enable DMA (Critical): By default, Windows 98 often has DMA (Direct Memory Access) disabled for the "QEMU Hard Disk," which causes extreme instability. Once installed, go to Control Panel > System > Device Manager > Disk Drives, double-click the QEMU Hard Disk, and check DMA in the Settings tab.

Role Change: Set the "Typical role of this machine" to Network Server under the Performance tab in File System settings. This speeds up disk access by increasing the size of the look-ahead buffer.

Cache Tuning: For the host side, you can improve qcow2 read/write speeds by increasing the L2 cache size in your QEMU command (e.g., -drive file=win98.qcow2,l2-cache-size=8M). 3. Known Workarounds & Troubleshooting If you want, I can provide a step-by-step

Modern CPU Crashes: Newer processors may cause Windows 98 to crash during setup. A common workaround involves switching the hard disk bus type to SATA in your VM manager to bypass standard IDE driver conflicts.

Graphics & Resolution: The default cirrus or std VGA drivers often limit you to 16 colors. It is recommended to use the SoftGPU or Scitec Nucleus drivers to unlock 32-bit color, higher resolutions (up to 1152x864), and basic 3D acceleration.

Network Drivers: The most compatible emulated network card is the pcnet model (-nic model=pcnet), as it has built-in drivers in Windows 98 SE. 4. Format Comparison: qcow2 vs. Raw Snapshots Native support; easy to revert Requires external tools or overlays Disk Space Uses only what is occupied (thin provisioning) Occupies full allocated size immediately Performance Slightly slower due to metadata overhead Maximum speed; no extra formatting layer


QCOW2 files can be used on other platforms with slight adjustments:

For gaming, also consider PCem or 86Box – they offer more accurate cycle-by-cycle emulation. But for lightweight, scriptable, and snapshot-friendly usage, Windows 98 on qcow2 + QEMU is unbeatable.

Once your base win98se.qcow2 is perfect, leverage the QCOW2 superpowers.

Assume you have a perfect install at base.qcow2. To create a new child image:

qemu-img create -f qcow2 -b base.qcow2 -F qcow2 my_game_vm.qcow2

This 100KB file acts as a full 4GB drive. Writes go to my_game_vm.qcow2; reads come from base.qcow2. You can run 10 games simultaneously without duplicating the OS files.