Installing Windows XP on a Lenovo S20

This was a silly side project that got out of hand, building an XP physical machine to run some old software. Over in the UK, there is this fantastical store, CeX that sells all kinds of retro crap, often for cheap. Normally I wouldn’t care but with pc titles going from £0.50 to £3 it seemed like some fun 1990’s computing value right there!

I had been slowly amassing a collection of bargain bin, garbage tier games ‘from back in the day’ and while I had been running a few on VMware on Windows 10, with that sub £5 copy of Windows XP home, it sadly didn’t help with so many games being copy protected.

I would need a physical machine, and that is where this hunk of junk the S20 fell into place.

S20 is way overkill!

When it comes to Windows XP, the S20 is no slouch. With 12GB of RAM, a Nehalem 3Ghz Xeon W3550 @3Ghz, 2x 120GB SSD drives, and a functional optical disk, this makes for a great system. Rounding out the absurdity is a Nvidia Quadro 4000 with 2GB of VRAM. I’m pretty sure when XP was new I was still using a PII 233Mhz with 256Mb of RAM. So yeah, this is way overkill.

Since all the disks are SATA, the default install CD won’t work. As a matter of fact, not much works on the retail CD-ROM. I tried to use rufus but…

Setup cannot find the End User Licensing Agreement (EULA).

I got this strange error from the USB stick. It appears after some searching it’s seeing the CD-ROM and trying to load the rest of the installer from there. Further searches said don’t use Rufus, instead use “WinSetupFromUSB-1-10“. I figured if I was going to use something like this, that I’d want some crazy pirated/hacked up to date version of XP to compliment the whole hacked up experience, so I went with the seemingly reputable “Windows XP SP3 Integral Edition 2022-6-16“.

WinSetupFromUSB 1.10

Options seemed to be somewhat straightforward, make sure it targets your USB drive! not any external backups. It does recommend you reformat with NTFS & set the alignment for a much needed speed improvement. Other than checking a few boxes to make sure it’s got the BTS driver pack & it’s a 2000/XP/2003 from USB install it pretty much worked.

After rebooting to the USB, be sure to select the

By selecting this option it’ll inject the needed ‘modern’ disk drivers. Otherwise it just wont work (EULA error or inaccessible boot device).

If everything goes well it’ll have injected a tonne of drivers, allowing the install to work.

Once the text part of setup is completed, be sure to boot off the USB again, again choosing option 1 to Auto-detect and use SATA/RAID/SCSI, but then choose option 4 for the Second part of the Windows XP setup.

Windows PE?

From here the setup feels very Windows PE. I suspect it is, but it’ll continue basically unattended and on it’s own. From here you can just boot directly from the hard disk, once it’s finished installing. It will prompt for the USB stick again to add all the additional options

Optional options!

I didn’t know what to exclude or pick, So I just chose them all.

It did take about 20 minutes, but at least by the end I did have a very usable XP install.

Trying the first Quadro Driver I could find, and I got knocked down to 640×480 in 4bit colour. It sucked. I don’t know what the deal was.

320.92 is the version that worked for me!

Working Video

With video working, the next step is all the reaming device drivers. Ohver on Phils Computer Lab, he had mentioned snappy driver installer, but the first link I hit on google was some virus loaded thing. Luckily since this is a fresh install it wasn’t at all painful to shove the USB back in and format the machine. I think I was also spared a lot of damage as it was constantly failing with a “bcrypt.dll missing” error. Saved by being obsolete!

Instead, I found the one on sourceforge.net, and it was working as expected.

Adding the audio drivers took a few attempts at installing stuff, rebooting, trying the windows auto-detect, rebooting, re-running snappy driver, and a few more reboots, and I got the NVIDIA audio and the built in audio working.

Overkill XP

One thing is that some games fail entirely on XP. While GTA: Vice City had been running on Windows 10, it fails to do anything on XP. Older games with Win16 setup programs do run but Games like Links LS 1999 fail completely to run. I think the system has both too many cores, too much RAM, and it’s just plain too fast.

With all the talk of abandoning 8086/286/386 modes of operation, I thought it’d be a good time to build a box explicitly for 32bit gaming out of cast aside parts. The Lenovo S20 list price was an eye watering $3,645 USD, and the Quadro 4000 clocking in at $1,199 USD. This was not a casual machine for playing Mahjong Escape: Ancient China. But it’s kind of funny to know it does.

I have to throw some more stuff at it, but one could have only wished for a PC this fast in 2002.

Installing Novell Netware 3.12

Ok, I thought I’d kick this thing off, by installing the most popular NOS (network operating systems) on Qemu.

First I tried the 2.x stuff, and it just crashes on the bootup of the kernel. Which is frustrating, as it required me to shuffle floppies like there was simply no tomorrow. I also have a copy of 4.1, which I’ll do at some other time.

Let’s get to the list of our requirements:

  1. Qemu 0.9.0 I’m going to use the windows pre-compiled version that can be found here: http://www.h7.dion.ne.jp/~qemu-win/
  2. MS-DOS, or I suppose you can you any DOS compatible OS. I haven’t tried DR-DOS, or FreeDOS. For this installation I’m going to be using MS-DOS 6.22 that is available on MSDN.
  3. An IDE cdrom device driver. I’ve had mixed results with various drivers, however I like IDECD.SYS available from: http://www.computercraft.com/cd_drivers/cdromdrivers.shtml
  4. An ISO Image of your Netware 3.12 CD. For the real unfortunate you’ll have the floppy version…
  5. Some way to take your license diskette and make an image of it. I like WinImage. Available here: http://www.winimage.com/winimage.htm

Here is what my directory looks like before I get started.

 

05/31/1994 06:22a 1,474,560 dos622_1.img
05/31/1994 06:22a 1,474,560 dos622_2.img
05/31/1994 06:22a 1,474,560 dos622_3.img
05/13/2007 01:16p 1,474,560 idecd.vfd
01/26/2004 04:25p 79,321,088 netware312.iso
02/19/2007 12:02a 6,248,207 qemu-0.9.0-windows.zip
05/13/2007 10:42a 1,474,560 SYSTEM_1.IMG
03/08/2007 05:22p 102,400 unzip.exe

Ok, let’s get started! First we are going to unzip the qemu distribution. I’m using Windows 2000 for my host, so I’ve got the commandline unzip from the execellent distribution here: http://unxutils.sourceforge.net/ Ironically it’s zipped, so I’ll provide a copy of unzip at my site here: http://www.vaxenrule.com/Shared%20Documents/unzip.exe

Next cd into the qemu-0.9.0-windows directory. First we need to make two hard disk images. For whatever reason Netware doesn’t detect the MS-DOS disk partition geometry correctly and will destroy your boot hard disk. Since we are running under an emulator, virtual hardware is cheap, so adding a second disk is really no big deal. The MS=DOS hard disk is only to boot up, so it won’t be big at all. I’m going to create a 32 megabyte boot disk, and a 1 gigabyte Netware disk. You can always add more disks, or go with larger disk. Just be forwarned that my Netware didn’t like the MS-DOS disk’s partitioning. This may be a fault of ISADISK, but then it worked fine on its own disk.

qemu-img create -f qcow netware-boot.disk 32M
qemu-img create -f qcow netware-data.disk 1G

Ok now with the disks created it’s time to install MS-DOS. I’m going to assume that you have *some* experence with Qemu, and MS-DOS.

qemu -L . -hda netware-boot.disk -hdb netware-data.disk -M isapc -m 16 -net nic -net none -fda ..\dos622_1.img -boot a

With any luck you’ll be greeted with this image:

netware1

We are going to just accept the defaults (hit enter a few times) which will partition the first disk, and ready it for the MS-DOS install. After enough enters, qemu will reboot, and MS-DOS will format the first disk, and then prompt for disk two. We will want to change disks. This part of qemu can be a little scarry for the uninitated, however its quite simple. Click on the qemu window, then hit CTRL+ALT+2. This will bring you to a window like this:

netware2

 

I typed in “info block” to show what disk images were mounted where. Then to change floppy disk images, simply typing in “change fda ..\dos622_2.img”. Pressing CTRL+ALT+1 changes you back to the qemu display, where you can hit Enter to tell the MS-DOS installation program that you have inserted the second disk image. You will need to repeat this for the third disk.

Once MS-DOS is installed it will prompt you to remove disks and press ENTER. You can simply press enter, and qemu will notify you that your disk is not bootable. Close qemu.

Now we are going to boot qemu from the hard disk, and with the idecd.vfd disk image containing IDECD.SYS.

I’m going to start Qemu as follows:

qemu -L . -hda netware-boot.disk -hdb netware-data.disk -M isapc -m 16 -net nic -net none -fda ..\idecd.vfd

Copy the IDECD.SYS device driver from the floppy to the C:\DOS directory (copy a:\idecd.sys c:\dos). Then you will need to edit your config.sys & autoexec.bat to recognize the cdrom.

Append the following line to config.sys using edit

device=c:\dos\idecd.sys /d:cdrom01

And append the following line to your autoexec.bat

mscdex /d:cdrom01

Information on edit can be found on Wikipeida here. Although if you don’t remember MS-DOS edit, you are going to be in a world of pain when we start Netware…

Ok with the configuration files edited, we can close Qemu, and now start it again as follows:

qemu -L . -hda netware-boot.disk -hdb netware-data.disk -M isapc -m 16 -net nic -net none -cdrom ..\netware312.iso -fda ..\system_1.img

During the MS-DOS install the netware data disk may have been formatted by DOS. This is no big deal, but just keep an eye where your CD-ROM drive is drive letter wise.

To start the Netware install, we now need to type in the following:

e:
cd netware.312\english
install

You’ll get some warning about ethernet frame types, which we can ignore for now. Then you’ll be prompted on the install type. We are going to do a new installation, so just hit enter. The MS-DOS partition will be displayed on the primary disk. We can just leave it alone (or we’ll have to start from the beginning!), press enter to retain the current setup.

Next you’ll be prompted for a server name. I’m not going to cover moving data from an existing Netware 3.12 server, so for now I’m just going to call my server “bobo”. I’m going to accpet the preselected internal IPX number. Again if you are migrating you may wish to preserve the exting information. You will next be prompted as to the location of the DOS mode files. Press enter as the defaults should be correct.

You can press F10, to accept the default locale. Next Netware will ask what naming convention you will wish for your server. If you are going to use ‘modern’ clients on your server you will wan’t the Netware format, otherwise, select the MS-DOS format. Next press enter, as we have no special startup flags. You may allow autoexec.bat to be modified to boot netware directly. The Netware console will now boot up to something like this:

netware3

Next let’s load the disk driver. Type in:

load isadisk

It will prompt for the port & interrupt, just press enter to accept the defaults. With the disk in place, its time to install the Netware files so that we can then setup the networking. Type in the following:

load install

You will be presented with the menu driven install. You will want to setup the partition on the ‘data’ disk. press enter twice, then select the second disk. You’ll need to delete any existing partition, then select create a Netware partiton. You can use the defaults (the entire disk). Pressing escape will confirm the partition creation. Press escape to get back to the root menu, now we can create some volumes. I want a 200MB SYS volume, and the rest of the disk as DATA. Of course you may have other wishes, but this is my install.

Press insert will allow you to create a new volume. Using 4k blocks, about 50,000 of them will allow for an approximate 200MB volume. Pressing escape & enter will create the volume. Next create the DATA volume with the remainder space.

You’ll need to mount the SYS volume by selecting it, and then going down to status, and selecting “Mount Volume”.

With your system volume mounted, we can now copy the rest of the files. Press escape to get back to the root menu, and then select “system options”. From here choose the fist option to copy the system & public files. Since I’m using a CD-ROM, I’m going to press F6 and change the path to:

e:\netware.312\english

Then perss enter. Netware will now start to copy the files. This can take a while. Once the copy is completed, press escape back to the main menu, then exit the installer. I know this seems counter intuitive, but its for a good reason.

Now we will want to load the network card. The default location & type of the network card in Qemu is a NE2000 at 0x300 on interrupt 2/9 (it’s a shared IRQ). Type in the following:

load ne2000

Be sure to select IRQ 2 for the Interrupt Number. Next we will want to select an IPX network number for the card. If you have an existing one, use it, otherwise make one up.

bind ipx ne2000

Then type in the nework name when prompted. I’m using DEADF00D.

Now we can re-load the install program. Go back to System Options, and create the autoexec.ncf file. At the end of this file, you may wish to add “load monitor”. Use the escape & save. Select the default for creating the startup.ncf file. With those two files in place we are now ready!

Exit the install program and then you’ll go back to the server console. Type in down, and the Netware server will shutdown. Then type in exit and you’ll get dumped back to MS-DOS. You can now close Qemu. Now you can re-start Qemu with the following command line:

qemu -L . -hda netware-boot.disk -hdb netware-data.disk -M isapc -m 16 -net nic -net none

Or even save it to a CMD file. You will now have Netware 3.12 installed on a new computer!

I don’t think I need to point out that not only is this exellent for preserving an existing copy of Netware 3.12 (Which was *VERY* expensive in the early 1990’s) But by emulating an older PC we don’t have the same worry when it comes to device drivers. Not to mention the Netware server is now portable to newer computers, by simply copying the data files. I’ll save networking this fileserver for another day.