QEMU/Guests/Windows 98: Difference between revisions

no edit summary
m (→‎Display driver installation: more accurate values)
No edit summary
{{DISPLAYTITLE:How to install Windows 98 in QEMU}}
'''[[How to install Windows 95 in QEMU|< Windows 95]]''' | '''[[How to install Windows Me in QEMU|Windows Me >]]'''
 
{{DISPLAYTITLE:How to install Windows 98 in QEMU}}
[[File:Windows98.png|thumb|right|alt=A screenshot of Windows 98 running in QEMU.|Windows 98 running in QEMU.]]
This page details how to install Windows 98 in QEMU. '''Windows 98''' is an operating system created by Microsoft released in June 1998. There is an updated version dubbed Windows 98 Second Edition, which fixes some bugs and adds new features. Support ended in July 2006.
 
We strongly recommend Windows 98 Second Edition as it fixes many bugs from FE and has more application support. This tutorial will assume you're using SE (but should work on FE).
 
Currently, Windows 98 SE is running as [https://computernewb.com/collab-vm/#vm4 VM4 on CollabVM], so if you want to take it for a spin without installing it on your computer, check that out.
 
==Prerequisites==
===QEMU= Prerequisites ==
===SoftGPU QEMU ===
You'll need [[QEMU/Installation|QEMU]] installed.
 
=== Windows 98 QuickInstall ===
Windows 98 without any patches is very, very unstable under QEMU, with bugs such as hanging on reboot, hanging on DOS prompt, hanging randomly, you get the picture. For this reason, we'll be using the [https://github.com/oerg866/win98-quickinstall Windows 98 QuickInstall Project] for this guide, which bundles multiple patches to greatly improve the stability under QEMU.
 
* [https://computernewb.com/isos/windows/win98qi_v0.9.3_stock.iso Download from Computernewb ISOs]
* [https://archive.org/details/win98qi_v0.9.3 Download from archive.org] (This link also has other ISOs that contain extra software and utilities. Pick whichever you want, it's your choice.)
 
===SoftGPU===
=== SoftGPU ===
We'll also be using the SoftGPU driver, to add 32-bit color and high-res support, and also to enable 3D acceleration. Grab the ISO from GitHub [https://github.com/JHRobotics/softgpu/releases/download/v0.5.2024.29/softgpu-0.5.2024.29.iso here].
 
== Starting up ==
=== Installation ===
First, open a command window and create a disk image for the VM using a command like the following.:
<pre>qemu-img create -f qcow2 win98.img 4G</pre>
 
<pre>qemu-system-i386 -hda win98.img -cdrom win98_iso_name.iso -device VGA,vgamem_mb=64 -cpu host -m 256 -accel kvm -M pc-i440fx-2.4,hpet=off -netdev user,id=lan -device pcnet,netdev=lan -usb -device usb-tablet -rtc base=localtime -monitor stdio</pre>
 
The machine argument is set to pc-i440fx-2.4, this is to get around the PCI Bus bug that persists within QEMU, Andand the <code>VGA,vgamem_mb=64</code> parameter allocates 64MB of VRAM onto the generic VGA adapter QEMU provides to allow higher resolutions and color depths within 98SE.
 
We set the memory to 256 MB, but it can run on as low as 16 MB of RAM, although this isn't recommended if you want to be running any programs.
At this point if all went well, Windows should reboot, install drivers, and load the desktop. If you get a bluescreen or protection error, refer to the troubleshooting section. If it all worked, keep reading
 
=== Enabling DMA ===
The first thing you'll want to do is enable DMA on your hard disk ASAP, as it is not enabled by default and this can cause major instabilities.
[[File:Win98dma.png|thumb|right|alt=A screenshot showing how to enable DMA|Enabling DMA]]
# Expand "Disk Drives" and double click "QEMU Hard Disk"
# Switch to the "Settings" tab and tick "DMA"
# Reboot windowsWindows
 
=== Display driver installation ===
After the first boot, you will notice that the display is small and very low quality. This is because, without drivers, Windows 98 runs in 16-color mode, fixed to 640x480 resolution.
 
[[File:Softgpusetup.png|thumb|right|alt=A screenshot of the SoftGPU setup program|SoftGPU installation]]
[[File:98se32bitcolor.png|thumb|right|alt=A screenshot of enabling 32-bit color on Windows 98 SE|Enabling 32 bit color]]
 
# Switch to the SoftGPU ISO by running a command similar to the following in the QEMU console: <pre>change ide1-cd0 softgpu-&lt;version&gt;.iso</pre>
# If the installer does not run on it'sits own, double click the CD in My Computer
# The SoftGPU installer will now open. You can pretty much accept the defaults here, however you may want to consider selecting Mesa3D Gallium "Nine" instead of Wine(D3D) for DX8 and DX9 for improved performance at a slight potential stability cost.
# Click installInstall. After a minute or two, you will be prompted to reboot. Click yesYes.
# Once windowsWindows reboots, right click the desktop, select properties, and switch to the "Settings" tab
# If all went well, you should now be able to switch the Colors to "True Color (32-bit)", and the resolution to 1024x768.
 
You may encounter a bug where not all color modes are available, and attempting to increase to one that is or change the resolution does not properly apply. Refer to the troubleshooting section for how to fix this.
 
=== Finishing up ===
 
Congratulations, you should now have a functioning Windows 98 install! Here is some recommended software to install:
 
* [https://archive.org/download/10.63Opera1063IntSetup/10.63_opera_1063_int_setup.exe Opera 10.63]
 
== Troubleshooting ==
=== VXD or protection errors on first boot ===
 
Upon rebooting from the quick installer into Windows 98, you may get a blue screen and error related to "VXD", or "Windows protection". This is usually caused by Windows 98 not being compatible with one or more features of your CPU. To solve this, change <pre>-cpu host</pre> in your QEMU startup command to <pre>-cpu core2duo</pre> and restart the installation. Windows should now install without issues
 
=== Cannot change color depth or resolution after installing SoftGPU ===
 
After installing SoftGPU, you may find that you are unable to change the color depth or resolution, with Windows prompting for reboot and then resetting back to 16 colors, 640x480 afterward. Additionally, you may notice that all color depths are not visible in the settings menu.
 
 
=== Problems in some 2D games ===
 
If you have installed SoftGPU with Wine <= DX7 setting, you might run across graphical issues and other things related to the game not being compatible with the WineD3D DirectDraw implementation, most notably being unable to Alt-Tab from the game and such things in some games misbehaving with the Wine renderer.
[[File:Reggy.png|thumb|right|alt=DDSwitcher registry screenshot|DDSwitcher registry screenshot]]
The following is the solution on how to resolve the problem:
# Open the Registry Editor (regedit) thruthrough Run
# Navigate to the following registry key: HKEY_LOCAL_MACHINE\Software\DDSwitcher
# Make new String value titled the game's executable name for example: Heroes3.exe for Heroes of Might and Magic 3