Sunday, February 4, 2024

A Reasonable DOS 6.22 / Windows 3.x Retro Build



I recently did a build centered around one of the very first consumer mini-ITX boards ever made, the versatile VIA EPIA-800. For that system I wanted to keep it as small as possible, no expansion cards, just all on-board hardware. To fit within those limitations, I decided to go with Windows 95 as the primary OS. With its integrated Trident CyberBlade i7 AGP 8MB video, VIA audio, and C3 800MHz processor, it’s a very capable system for running games of that era, 1997 and earlier, quite well at 640x480, 800x600, and even 1024x768 in some cases.

Originally, I was just going to stick with this build for all my DOS gaming needs as well. The VIA audio chip does good Sound Blaster Pro emulation, and it generally works well for later DOS titles. The thing is, I still found myself wanting a pure DOS build for a couple different reasons. First, I wanted a build that gave me more era-appropriate sound and video compatibility, improving support for older DOS titles as well. While I can play most DOS games on my EPIA-800 Win95 build without any problems, that hardware really isn’t “era appropriate”, and it does have its problems and limitations in terms of compatibility.

Secondly, I wanted a full-sized ATX system with ISA, PCI, and a floppy controller so I could use it as a “test bench” for testing and troubleshooting other hardware. It’s always a good idea to have a known working system to test components on so you don’t waste time going down unnecessary rabbit holes when you’re trying to get something working.

So, that leads us to this build, DOS6.22 / Windows 3.11 machine using era appropriate hardware and giving me a much wider range of sound, video, and control options, I simply do not have on the EPIA-800.

 



Let’s start with the heart of the build, the motherboard, an Asus TX97-XE. This ATX Socket 7 board, released in 1997, gives me all the connectivity and options I need to build a nice DOS system. Supporting both EDO (x4) and SDR (x2) RAM up to 256MB, support for Pentium MMX, AMD K6, and Cyrix MII processors, 4 ISA and 4 PCI expansion slots, as well as your standard 2 IDE channels and single floppy controller. In other words, everything you need for a very capable DOS build. While the board does have USB 1.1 support, we won’t be using it. 

 

The only problem I had with my specific board was the dual-PS/2 connectors were loose, causing both the keyboard and mouse to lose connection unless the plugs were kept as a certain angle. At first, I thought it was just a loose solder joint, so I checked and re-flowed all the connections, but the problem persisted. With no other visible signs of damage or defects, like a broken trace, I ordered some replacements and just put a new one on the board and that did the trick. 

NOTE: The TX97-XE has a known power delivery issue on some boards when trying to run processors beyond 300MHz, requiring more voltage. The fastest officially supported CPU for this board was AMD K6-2 333MHz. As long as you don't go beyond that, you "should" be fine. If you do, then you should monitor the temps on the boards power delivery, and perhaps consider upgrading it if you know how. Or, look into something like external CPU power delivery. Even with the K6-2 333, it wouldn't hurt to keep an eye on it until you're sure your board is fine.

With the motherboard chosen and working, we needed to figure out what processor and RAM we want on there. RAM was the simplest, I went with 32MB of PC100 SDRAM, way more than enough for any DOS or Win 3.x games. In fact, using more than 32MB of RAM in DOS 6.22 can cause problems with some software, so I wanted to keep it or 32MB or less.

 

For the processor, I went with an IBM 6x86L-PR166+ running at 133MHz, made by Cyrix. More than enough power for my needs, and well within the power delivery limits of my unmodified TX97-XE board.

 





My dream setup would be a dual-card machine, a nice 2D card along with a Voodoo for my 3D (Glide) needs. Sadly, the price of Voodoo cards is absolutely outrageous these days, so I decided to just go with a card that had good overall DOS compatibility, drivers for Win3.x, and “good enough” 3D performance with the full understanding I won’t be playing games like Quake on it, but titles like Duke 3D and Doom would still play fine.

The card I settled on was the S3Virge/DX PCI 4MB, a readily available and affordable card released in 1996. The Virge cards were S3’s first attempt at 3D acceleration, and while they seem to get some hate for being slow in terms of their 3D performance, they are good overall cards with excellent DOS compatibility and 2D performance.

 

My Virge/DX isn’t going to run a game like Quake all that well if we try and play it at 640x480, but other games like Doom and Duke 3D will run just fine on it. It also has native drivers for Windows 3.x and can handle Windows at 800x600 without any problems, though trying to push it beyond that will result in “out of memory” errors and cause Windows to not display correctly. To be completely clear, I’m not going to be doing much 3D accelerated gaming on this machine, I wanted compatibility over performance. So, until I can get my hands on a cheap PCI Voodoo card, I will leave most of the 3D accelerated games to the EPIA-800 build.

Still, the Virge/DX is good 2D card, can do some 3D acceleration, and plays nice with a wide range of older and newer DOS games. It also gives me a chance to play with S3D, S3’s own attempt at 3D acceleration, in the few DOS games that actually support it, something I never tried doing before.

In short, if you’re looking for a video card with support for a wide range of DOS games and software, then the S3 Virge will suit your needs quite well. If you’re lucky enough to pair it with a Voodoo, all the better. In my case, as of the writing of this article, I have tested almost 90 different DOS titles, and a vast majority all play flawlessly on the Virge/DX. If you want to know more about the Virge/DX and its overall performance, check out the link below.

https://retro.swarm.cz/s3-virge-325-vx-dx-gx-gx2-series-of-early-3d-accelerators-deep-dive/

 



For this build, I decided to go with two different ISA sound cards. The first is a very well-known Sound Blaster AWE 64, the CT4520, while the other is a lesser known OPTi 82C930 card with an on-board QS700 wavetable. This combo not only gives me a wider range of sound compatibility in games but allows me to explore how different games sound when using different cards. 

 


I grew up using Sound Blaster in just about everything, so I’m very familiar with how they sound, and the AWE, or “Advanced Wave Effects”, series was always a favorite of mine. This specific AWE64 is the “Value” version, and I did that simply because I ‘m perfectly happy with how they sound, and I didn’t need any of the features of the “Gold” version. Not to mention they are still available at a reasonable price, unlike the AWE64 Gold I used to have.

The AWE64 is a perfectly capable card with very wide range of sound compatibility in DOS and Windows 3.x, as well as a decent software suite for Win 3.x. When games lack support for the AWE64, that’s where the OPTi comes into play. It can do both Sound Blaster Pro and Ad Lib sound making it a good choice for such games and many older DOS titles. My specific card also has that QS700 wavetable built into the board. While the QS700 wasn’t exactly the best on the market, it’s more than capable for my needs.

For more on the OPTi cards, check out this good thread over on Vogons where one of their users did a great breakdown, with samples, of how the OPTi 32C930 sounds. His card is slightly different, lacking the built-in QS700, but it will give you a really good idea of the OPTi’s performance.

When it comes to setting up DOS to use two sound cards, I have my system setup to load the AWE64 drivers by default and use a couple batch (.bat) files to swap between the OPTi and AWE. It works well enough for my needs.

 



Thankfully, we have modern alternatives to using decades old mechanical IDE and floppy drives that greatly increase performance and reliability, while making these older systems much easier to use with modern hardware. For my hard drive, I use the same IDE to SD card adapter as I did in my EPIA-800 Windows 95 machine. These adapters are readily available at most major online retailers like Amazon, eBay, and Ali Express, and are very inexpensive. 

For the SD card, I’m just using a standard 2GB SanDisk. If you don’t have a 2GB card, no problem, any SD card will work as long as it’s formatted correctly, keeping in mind DOS 6.22 has a maximum supported partition size of 2GB. I will talk more about how I setup DOS 6.22 on my system a bit further down this post. 

 

The other benefit of using something these IDE to SD adapters, or IDE to Compact Flash, is you can swap cards quickly and easily. Meaning you can have different cards configured differently, or with different operating systems, and simple swap them out as needed. It also makes transferring files to and from your DOS system much easier since you can just plug your DOS SD card into any modern PC and copy whatever you need right to the card. Unlike my Windows 95 build where I have it setup to see my NAS drive for data transfers, having the ability to just swap the cards themselves is much faster and more convenient.

For my floppy drive needs, I decided to go with two different options, one is the popular GoTek Floppy Drive Emulator. Again, these are readily available, inexpensive, and can be found at the same online retailers as the IDE to SD or IDE to CF adapters. If you want to know more, you can check out GoTek’s website.

 


The GoTek is easy to use and setup and gives me the ability to create and use floppy disk images with the system. It allows you to format most any USB flash drive with up to 100 different disk images at a time that you can then use on your retro hardware. The system sees it as a standard floppy drive and supports 720K, 1.2MB, and 1.44MB disk images and works under DOS and Windows without any problems. There is a massive floppy software library out there and having the GoTek makes it quick and easy to use these images with your classic hardware. 

 

To setup my GoTek for use in this build, it’s just one jumper set at "S0", then hooked up to my board the same as any other floppy drive. If you have a floppy drive cable that’s not keyed, just remember that the colored wire on the cable always goes on the side of the plug with pin 1. If you’re unsure where pin 1 is, and it’s not indicated on the motherboard itself, then refer to the owner’s manual. On the Gotek, the colored wire should be facing the power plug, as is standard for most floppy drives.

 


In addition to the GoTek, I decided to pick up a real 3.5-inch floppy drive as well, mainly for archival purposes. I recently purchased a Sony MPF88E-UA 2X USB floppy drive for use on my modern Windows 10 system to use for a vast majority of my disk archiving needs. I still wanted an alternative to use as a backup in the rare cases the Sony can’t read a disk. Having a second “real” floppy drive, connected to era appropriate hardware, gives me one more option when trying to read old floppy disks. In my case, I went with a new old stock Alps DF354H. At the time of writhing this article, they were being sold on both eBay and Amazon for $40. Reasonable enough for a known working drive that actually comes with a basic return policy should it arrive and not work properly.

 



I had two options for setting up DOS 6.22 on this system, the first was to just use the GoTek and the standard DOS install disks. Something I’ve done a couple times and it’s always worked like a charm. However, for this build, I installed DOS in a virtual machine on my modern computer and then copied that disk image over to the SD card. From there, I did all the DOS configuration on the actual hardware.

I personally like to use Oracle VM VirtualBox. It’s free, easy to use, and great for setting up these old machines. Once you’re done with your VM, you can use a piece of software called AnyBurn to convert the VirtualBox disk image into an ISO format that can be used with just about any disk image burning software, I like to use the Win32 Disk Imager.  All this software 100% free and works great.

Like I said above, I find it quicker and easier to create a bootable disk image in a virtual machine and copy everything I need to it first, burning that image to whatever I’m going to be using on the real hardware, and then doing the actual setup and configuration on the real hardware. However, you can obviously do it however you wish, this is just my method.




 

These days, anyone can enjoy most of the DOS games of days gone past using wonderful modern software like DOSBox and ScummVM, but modern emulation has it’s drawbacks. While it’s much easier to use than original hardware, it’s not always 100% accurate in its emulation. Full virtual machines are great for many things as well but are limited when it comes to using them for playing games.

The biggest drawbacks for me are the inability to use and test original hardware, you obviously need other era appropriate hardware to do this. The other is purely nostalgic, I enjoy using the actual hardware, I find it fun and relaxing. One might go so far to say it’s my “happy place”. Some people, like my lovely wife for example, enjoys making “all natural” things, like soaps, candles, and oils. I enjoy working with old computers and electronics. We all have our hobbies that make us happy, and this one is mine.

Thanks for taking the time to read the ramblings of one old guys love of retro technology, especially in a world where people much prefer quick and concise videos over long-winded articles and blog posts. I wish the very best to you and yours. Until next time, keep your head up and keep it retro!