hmm... the farthest back you can go and still be able to run almost everything you need would be windows 95. But getting a lot of programs running on there takes a LOT of hacking; there was a site I saw somewhere where somebody described how to get all sorts of new applications running under windows 95- firefox, office 2003, etc. Google fails me though.
makes one wonder if one could tweak Firefox to run under win32s...
It's fun to go back to windows 3.1 on modern or semi-modern hardware, like a pentium 2. the moment I press enter on my other PC with windows 3.1, Program manager is started by the time the video mode changes- Less then half a second, that is.
One of the things I don't like about Windows 3.1 as a main OS is that the memory model is not exactly robust- while it runs in "protected mode" all windows processes can stomp on each other without regard, which makes debugging with MSVC a bit annoying since the program might perform runaway memory writes onto the debugger itself. Not a pleasant result, either.
Another annoying limitation is the IMO opinion stupid decision to allocate all GDI and User handles on the Heap- a limited 64K segment of memory is used for storing all GDI and user Handles. So of course, a leak of handles results in another set of less-then-pleasant symptoms.
Although not a problem with any amount of memory the developers could foresee, windows 3.1 was limited to a certain number of memory "selectors", or handles. with 8MB, 16MB, and 32MB of Ram, all of were prohibitively expensive at the time, this was way more then enough- but once you factor in today's even old computers with 128,256,512, and even GBs of RAM running windows 3.1 (although it only detects up to 512, I believe), you cannot even use up all the RAM, since aside from the selector's running out user and GDI resources usually go below 10% around 64MB of used RAM.
The neat part is, Windows NT 3.51 by all appearances looks like a "super enhanced" version of Windows 3.1!
And we get all the tools we are familiar with nowadays, perhaps with fewer features, such as Disk management. And imagine my surprise, since all versions of Windows NT appear to use the same Display dialog as that used in Windows 95- asmall image of monitor and the ability to dynamically change color and resolution combinations, whereas 3.1 required a reboot for either.
Quite an intriguing OS. even more intriguing is that a prerelease of NT4 was really a "option pack" for 3.51, but they decided to package it as a new OS because of the massive UI tweak. (After all, it's easier for a program to check the OS version itself to determine shell capabilities then digging through obscure OLE and COM dlls checking version numbers).
Unfortunately it also does away with the safety net of a DOS prompt for when windows crashes.. on the bright side we have blue screens!