Sohere's where I'm at... I'd like to play a half-dozen PC games I used to play when I was a teenager. Games that come immediately to mind are Fury 3, Quake, Beavis and Butt-Head's Virtual Stupidity, ST:TNG Final Unity, MDK, and Alpha Centauri. When I was a kid, I was held back by the PC I used. It occurs to me now that modern hardware could allow me to play these games at max resolution, framerate, etc, with no slowdown at all... and incredibly cheaply. The problem, as I've found, is that some of those games don't play so well with newer versions of Windows, or that today's hardware is so advanced compared to what I used to use, that the games don't know how to take advantage of it.
So my question is... if I were going to build a Win95/Win98/DOS Box, using a lot of secondhand hardware, what's the absolute best machine I could build for this purpose? I'd want something advanced enough to make those old games scream, but old enough to not add glitches found by bringing old software into a new hardware generation. Being able to cram it all into a small form factor PC case would be a nice bonus.
I buy the games on GOG or I use Vmlite on Win8 which works well except for sound these days. On Windows 7 I used to use WinXP Mode which worked ok for non graphic type games but I always used DOSbox for Dosbased games.
As for building a PC I used to have one I kept around until a few years ago. It was a Compaq Deskpro Pentium 4 with 256MB of RAM and a Voodoo 5 graphics card because in the late 90's there were some exclusive 3DFX based games I wanted to play and it was a pretty good card too. I had a Soundblaster in it too.
Many windows 95/98 games, even though the actual game is 100% 32-bit software, used 16-bit installers which won't work on 64-bit windows. However, many games ran off the local Programs files folder, so if you have a hard drive image with an intact installation, it is sometimes possible to copy the directories over without performing a proper install.
Modern video cards generally support legacy modes, however "high quality" audio/video settings in certain games may rely on obsolete tech. I have a few games that run with the low quality settings but crash when high quality filters are applied. Cest La vie!
The Pro versions of Windows support virtual machines, so you might consider using a VM in case you still have a retail copy of Windows 95 or 98 laying around, that would be great and should make games 100% compatible. Be forewarned most of the old installation media, even if CD-ROM based, you'll still need a floppy to load the CD-ROM. Most PC motherboards don't even have sockets for floppy drives anymore. If your motherboard doesn't have PS2 ports on the back console of floppy sockets, you'll need to enable USB legacy support and virtualization in BIOS. These settings are typically turned off by default. This will allow you to run virtual machines, and a modern motherboard will detect USB floppies, keyboards, and mice on boot and they will show up as PS2 devices and floppy controllers to old operating systems that don't recognize USB. Bear in mind PS2 and floppy controllers are not plug-n-play, so they have to be connected prior to boot otherwise the "legacy" USB mode won't work if you plug them in or disconnect the device after the system is booted.
Up through Windows 7 it is possible to set up dual boot configurations with Linux or older Windows versions, however they will not work with Windows 8 EFI booting. If you turn EFI off, Windows 8.1 will warn you that secure boot isn't working properly, which is annoying. I'm very annoyed that Microsoft is slowly locking down the Windows OS starting with 8. If you use SATA hard drives make sure to set them to IDE mode in BIOS otherwise dual booting with legacy operating systems won't work correctly. If you've already installed Windows on a SATA drive using a non-IDE setting, you will likely have to reinstall the OS to dual boot with legacy systems. You'd probably have to do that anyway to set up new partitions. Another caveat is that Windows 3.1, 95, and 98, might not run well if you have ridiculous amounts of RAM (like 1-2Gb or more) installed since PC configurations with greater than 256Mb or so of RAM simply didn't exist during the era. Also some games, especially old DOS apps that were designed for slow CPUs, will sometimes go ape-sh!t if you attempt to run them at Gigahertz clock speeds.
Oh, and what the earlier poster said about using old PCs if you still have one laying around. Modern PC tech is at a point now where you could just "emulate" a 400Mhz Celeron or PII with 256Gigs, no problem.
I really recommend a vintage PC for this era of gaming. A 440BX PIII runs Windows 98SE like a dream, and it still has ISA slots for a good old soundblaster. I run my PIII 650 with passive (factory stock) cooling and it's extremely stable.
Which video card you want is a pretty big topic. A Voodoo III is a good option, as some games are Glide only. Later nVidia cards like the TNT2 or a Geforce will perform better, but it's a question of how much you really need.
I run games up to 1999 on a 400mhz Celeron (PII) based with Voodoo II SLI(equivalent to voodoo III 2000). Unreal Tournament, Swat 3, Half-Life, and SiN, all work great on this computer. But going with the 440BX PIII and a Geforce will open up games from the early 2000s without losing any compatibilty with earlier games(except glide only games).
GOG is one way, but I found other methods as well. Look for open source engines for games like Doom or Quake, not only will they run on current PC's but also add things like 3D rendering as well. In other words, the games will now look better than they did back in the day!
For games that only run in 256 color mode, just turn off Aero and right-click the desktop to select Screen Resolution and leave the window open or minimized. That's needed for 64-bit Windows, or you can also run the game in windowed mode. All other problems are a result of depreciated 32-bit libraries that MS removed. For that you will have to run WinXp in VirtualBox or Win95/98 in Boches...
I have a Biostar M5ATA motherboard that absolutely rules with Windows 98, has both PCI and ISA slots, and even onboard USB! I'm only running a 233MHz (or is it 266MHz?) processor at the moment, but I've read that that particular board can be easily modified to support faster processors. I'm actually having it boot up four different operating systems at the moment: MS-DOS 6.22, Windows 98, Windows NT 4.0, and Windows 2000. Pretty much lets me get anything I need to do with an older OS done. It also has three floppy drives installed (on a controller that supports four drives), but that configuration only works properly when I boot to pure MS-DOS or to NT 4.0 (2000 sees all the drives, but won't let me use the 360k drive, whereas Windows 98 won't boot with more than two floppy drives installed, therefore I had to disable BIOS support for the third drive).
Oh no, you really want the real thing. The PC was so far ahead of consoles in that era. Just compare Rogue Squadron between the PC and N64. Crank the resolution up to 1024x768 and use a flight stick. The N64 version is pathetic by comparison. This holds for so many games.
That reminded me of something. When I was young, if I remember correctly, Windows 95 (if not 98) had this weird behavior that when installing programs, wiggling the mouse cursor make the progress faster. What caused this? I searched for it, I couldn't find anything related.
Windows 95 applications often use asynchronous I/O, that is they ask for some file operation like a copy to be performed and then tell the OS that they can be put to sleep until that operation finishes. By sleeping they allow other applications to run, rather than wasting CPU time endlessly asking if the file operation has completed yet.
For reasons that are not entirely clear, but probably due to performance problems on low end machines, Windows 95 tends to bundle up the messages about I/O completion and doesn't immediately wake up the application to service them. However, it does wake the application for user input, presumably to keep it feeling responsive, and when the application is awake it will handle any pending I/O messages too.
Thus wiggling the mouse causes the application to process I/O messages faster, and install quicker. The effect was quite pronounced; large applications that could take an hour to install could be reduced to 15 minutes with suitable mouse input.
Try opening a large file with Notepad on a contemporary machine. The window must not be full screen. When loaded, mark all text using the mouse (the keyboard works as well, it just needs more manual skill). While still holding the button down (and marking) move the mouse down, so the text gets marked and scrolled. Now compare the scroll speed while holding the mouse still versus wiggling it. Depending on your machine the speed up can be several times faster.
It can be viewed in many other programs as well, Notepad is just an easy to reproduce example. It's related to the way multitasking worked in early versions of Windows. Here everything revolved around the message queue. Wiggling the mouse resulted in a flood of mouse-move messages, which in turn made programs wake up more often and (depending on their structure) updating their states each time, going into the message loop again, giving time to screen updates, resulting in an over all faster reaction. It shows a glimpse of the ways MS used to make Windows rather responsive despite its cooperative threaded nature.
What really happens is that, on both OS, you need to process the message loop, but if you want to update something in the background, like a task, a display update, etc, you'd set a timer and the timer would put a message in the queue at a regular interval.
Since the main mechanism was to rely only on the message loop and background operations were done through timer messages, moving the mouse would trigger a lot of messages, move the app up in priority, wake the app up, and get the app to process the background tasks messages. Without moving the mouse, the timer messages would be read up only at a rather slow interval.
3a8082e126