It was actually a small miracle that Win95 could run earlier apps as well as it could. Earlier versions had cooperative multitasking, which meant that a lot of software assumed it had almost exclusive control of the machine, and such software running under preemptive multitasking could easily hit race conditions. This is the main reason for the "virtual machine": potentially misbehaving apps could be largely isolated from well-behaved Win32 apps and as long as you weren't running too much of a mix of the two, the apps running under the cooperative scheduler would just work.
You can even change the "shell=explorer.exe" line in SYSTEM.INI to something like "shell=progman.exe" But theres something about win3.1 progman that missing in 9x version, which made me begrudgingly return to explorer.exe. Back then Microsoft actively trying to discourage that practices and warn system builders to not including any alternative shell replacement or else.
Program Manager kept being shipped in Windows until XP SP 1, with SP 2 replacing it for a stub and Vista removing it entirely. File Manager is now on github, and runs on the latest versions of Windows
@@sundhaug92 Windows Win32 API is the most ridiculously backwards compatible thing ever. Not entirely sure why - I feel like they really should've just stuck to the Windows 8 idea of finally trying to scrap it entirely, and they should've stuck with it hard.
Raymond Chen actually wrote about this feature in "For a brief period, Windows 95 could run Windows 3.1 in a virtual machine": "Running Windows 3.1 as a program inside Windows 95 served as a convincing technology demonstration, but the feature was cut shortly after it came together. One reason is that running old programs in a virtual machine doesn’t necessarily create a good user experience. There was no integration between Windows 3.1 and Windows 95. If you copied something to the Windows 3.1 clipboard and then switched back to Windows 95, then tried to paste from the clipboard, you didn’t get what you copied from Windows 3.1, because Windows 3.1 and Windows 95 had separate clipboards. Similarly, if you had a Word document with a live link to an Excel spreadsheet, and you opened the Word document in Windows 3.1 but the Excel spreadsheet in Windows 95, not only did the live link not work, but the copy of Word running in Windows 3.1 would get a file sharing violation when it tried to access the Excel spreadsheet, resulting in confusing error messages. Because even though they ran in separate virtual machines, they shared a file system. But perhaps the biggest reason for the feature to be cut was that its presence would undermine the compatibility story of Windows 95. Windows 95 was intended to be maximally backward compatible with all your Windows 3.1 programs. The compatibility would be so great you would never turn back. If there were this “Run Windows 3.1 in an MS-DOS virtual machine” feature, it would be an admission that we failed: We gave you a way to turn back." Win95 got a bit of a bad rep compared to NT based OSs for stability but in many ways it was remarkable. You could run old (Dos, Win16) and new (Win32) applications. The old apps mostly worked just fine and Win32 quickly took over. And it did all thus with a lower memory requirement to NT. Even better most of the time on a cleanish machine Win95 could run all the filesystem code and disk access in 32 bit mode. So your Win32 applications didn't get clobbered by a switch back to V86 mode to do disk access.
That reminds me of a famous quote: "It's 106 miles to Chicago, we have a full tank of gas, half a packet of cigarettes, it's dark and we're wearing sun glasses."
It's worth noting that this method only allows 3.1 to start in Standard Mode. 386 Enhanced mode cannot be used. Curiously, this actually allows WfW 3.11 to be used in Standard Mode, something that's normally not possible. And yes, I can confirm that this mechanism also works on the PC-9800 versions of 95 and 98.
The fact that they were so concerned about 16 bit compatibility that they even thought they needed this fascinates me. The end result of Chicago is a strange hybrid OS that is as much a 16 bit OS as it is a 32 bit OS and runs 16 bit and 32 bit windows apps natively. I'm going to guess this was for badly behaved apps that assumed exact memory layout of Win3x and did things bypassing the documented APIs. Or maybe it was just intended for programs that could not run in 386 enhanced mode as 95 effectively always run in it. In the end it seems that Microsoft just did a huge amount of compatibility testing and added compatibility shims as needed so everything seemed to work properly when running badly behaved programs. Perhaps they just saw that things weren't great with NT's 16 bit compatibility and wanted to avoid that again (maybe they even originally planned to do things the same way as NTVDM). Even though pretty much everything works well in 95, some Win3x programs could look a little strange with the 95 UI
This would have certainly put a lot of people off an upgrade to 95. Glad they sucked it up and did it the right way in the end. Just wish they would have given DOS gaming similar treatment. I remember in some cases, even rebooting to DOS mode wasn't enough - had to boot from a 6.22 floppy.
Damn, you just reminded me of my first experience with the game Redneck Rampage. I didn't even have enough hard drive space to install it, so I basically had to format my drive and install a barebones MS-DOS 6.22. Yeah that really sucked, but I did make sure to back up all my important files first.
@@southernflatland Yeah, I think Duke3D was one of several that gave me grief...same engine as Redneck Rampage. It was well into the 2000s before DOS gaming quit being an issue and that was only because I had moved on to newer windows-based games lol
I expect this was more for compatibility reasons. Applications which were built specifically for the Program Manager might have had problems with explorer as the shell. For the 95 release, they might have had added all the documented hooks so the full VM backwards compatibility wasn't needed.
What a brilliant video! I do have a computer running Windows 3.11 and Windows 95 side by side on the same partition, but I really prefer to use your method, because it's easier to run 3.11 from within Windows 95 instead of choosing a Windows version on boot.
About Windows 8, and the much hated "Metro" interface. That was an interface that was simply ahead of its time. Metro was a fantastic why to interact with a tablet PC, (Surface Pro for example), but the mistake MS made was thinking people wanted to use normal computers the same way...
I found it borderline insulting. It's like MS didn't think end-users were smart enough to use a desktop-centric interface for a desktop and a mobile-centric interface for tablets and phones, so they created some weird hybrid that was simply annoying to use. And I like Modern UI/Metro so much on mobile devices that I used Windows Phone and still use a WP-like interface on Android today. But you couldn't pay me to use it on a desktop, although I long ago switched to Linux on the desktop and don't have to worry about it now.
@@johncate9541 Think it was more MS just being lazy, than insulting, not wanting to bother with offering a desktop and mobile UI. Of course, then they go and code up Windows-S mode, which never made any sense, since every person I know instantly converted to full Windows
This reminds me of XP Mode for Windows 7 - that was also a feature that didn't make much sense because most applications ran fine on the host OS anyway, so why bother using a VM?
Thanks for releasing this!! I'll have to give it a try. I'd be interested to see if there are any video adapters that PCem/86Box/Dosbox can emulate that can share a VDD with Win95. (Or possibly separate display adapters for 95 and 3.1 to use exclusively, which I can't see a use case for but it would solve the driver binding conflict. Probably have to use a physical machine though, I don't think any of these emulators will emulate 2 video cards at once outside of 3dfx accelerator emulation.)
Apple did similar trick in development versions of Mac OS X. Initially Classic environment was in form of app and if you opened it then classic Mac OS would run full screen. In the app switcher there was additional icon titled "Mac OS X" that could be used to return to Mac OS X desktop. Later they improved it so Mac OS applications would show on Mac OS X desktop like native apps.
It has been such a long time but I do remember the transition to Windows 95 and I would say the work Microsoft did to make it Win16 compatible paid off since I don't remember it being an issue. It was an absurdly smooth upgrade (aside from the hardware requirements) and I'm sure I would still have plenty of Win16 software back then, you would continue to sometimes encounter it well into the Windows 98 era.
It amazes me how with all of this effort that retro computing enthusiasts spend getting old versions of Windows and DOS running that ReactOS is still in alpha.
I think it's a totally different thing in getting an old (working) piece of software to run again, even with a small patch here and there, as opposed to re-writing an entire OS from scratch, what ReactOS actually does. And TBD, as interested as I am in ReactOS, it's way to small a project to really gain traction. The team behind made good progress, but give or take, had they the combined power of a community that big like Linux has it, it would be finished by now ;-)
@@THEPHINTAGECOLLECTOR As far as I understand their goal, they're intent on having feature parity with Windows and to be capable of running all Windows software. So it's not too dissimilar to merely using WINE, which they supposedly share some code with, except they're incorporating the code directly into the kernel and associated libraries. As far as community goes, it's pretty hard to acquire one when the majority of people who want to use Windows software would rather just stay on Windows to use it. It's only because of Valve pushing for more compatibility with games and working on their own fork of WINE that we've seen as much traction in recent years, but it hasn't trickled down to ReactOS because yet again, most people would rather not use it. It being too much like Windows is what has held it back, unfortunately.
@@anon_y_mousse So maybe the Windows we have today, is just "good enough" for said majority of users? I don't know. But obviously, the pain seems not to be too large enough yet, to drive hordes of people away and into ReactOS arms, except for some enthusiasts. And without, for better or worse, having a commercial player behind, traction will remain small. Those investments seen in the past read mostly like lip service. Maybe that's the catch as well. Anyone doing a major investment into ReactOS itself, would get into the direct line of fire of Microsoft. I think, it's one thing if Valve is investing into WINE, but it would be yet a totally other thing, if vendors, be it software companies, but also hardware vendors, would suddenly add ReactOS onto their agenda, because this might lead to be sanctioned by MS in one way or the other. Anyway, there's still a long way for ReactOS. That discussion reminds me btw, I should look into it again. Last time again is already, like 7 years ago, when 0.4.0 came out .... Maybe worth doing a video?
@@THEPHINTAGECOLLECTOR I would say that the pain is enough to drive people away from Windows, but not to ReactOS, because again, too much like Windows for such people looking to get away. Pretty much every refugee goes to where they have the best opportunity and if it's not Mac it's Linux. It would still be worth doing a video though as it satisfies a very niche problem. If you're looking for suggestions that might get more views, TempleOS usually nets a lot, and it does have a rather unique approach to operating.
@@anon_y_mousse Ack, ended up myself on the Mac and Linux years ago ^^ TempleOS, huh? Never heard about it TBH. But it reads as tragic a story around about it's creator. Pities me.
I don't know why it was done cause all applications were for dos or win16 and both of them were executed on win95 without problems. It was a problem of launching win32 apps on win3.11 using win32s subsystem.
I noticed the control panel will load with the original mouse.drv but of course you will not have any mouse support. You can however change settings as needed :). I do miss enhanced mode though.
update: Works fine! Somehow the installer .inf file wouldn't do anything for me on Windows 98. Also the dualcomm/dualmous drivers aren't there anymore so I grabbed them from a beta build. But it works, really neat stuff!
This is a great video and something totally new to me! Thank you so much. Any chance of getting a link to your 86box drive images to play with? Either way, appreciate the time and effort to document this little known. and lost feature.
About built-in emulators, have you (or Mr. Know-It-All) ever heard of some MS Office for Windows NT (maybe it was only Word and/or Excel and maybe a Beta/Demo only) released before Windows NT was even released and that runs on DOS using PharLap's TNT DOS extender?
@@THEPHINTAGECOLLECTOR It's been a few years since I heard about it somewhere, probably on some forum dedicated to HX DOS Extender, but I never managed to find a copy... ChatGPT confirms that it did exist and that it was based on Office 3.0 but it was only distributed to a select group of users ☹
I don't remember this, but I hated Win3.1 so much I refused to boot it unless I had to for something like Word Perfect. I downloaded several beta releases of Chicago, which I remember the first few only supported 16 colors max. This is probably before I had access to 'totally legit' downloads of Chicago though, as I think it was fall of 1994 when I started using them.
I managed to run this on my pentium II. Actually i was able to run it on 1024x768x256 color mode with universal SVGA Driver, with Sound and i was also able to use a better mouse driver other than the buggy dualmous.drv. for the DOS Prompt inside Win3.1, i guess there is a way for it .. I can write an article about it where i share my findings if you want 😊
I'm wondering, can this be used to run 3.1 from inside of WfW 3.11? It's even more pointless but maybe it could be useful for running multiple languages of Windows (particularly ones with different character sets) at the same time.
@JimLeonard well, It's not desirable. There's no use case, as the Win16 subsystem in Windows 95 is fairly compatible. As I guess, they had it in there in the beginning of Chicago, presumably because Win16 was not yet stable enough in the beginning. Or there was uncertainty that it ever would be. Or they didn't want to implement a Win16 subsystem on Win95, but just push to 32-bit applications. I wasn't there, and the reasonings of which lay buried in the past. Pick any reason you like :-) To reference my own quote: Did Win16 applications require this co-hosted Windows 3.x on Windows 95, it might have lead to a similar situation as IBM's OS/2, which included Windows 3.x as well, which is why not many developlers were writing native OS/2 apps. So in Win95 context, it could have hindered the adoption of 32-bit applications. And furtherly, had they actually included this Windows 3.1 compatibility thing along with Windows 95, everyone would propably have blaimed Microsoft being unable to develop a compatible successor of their own brainchild.
There wasn't really any need for this. You could run Win 3.1 apps in Win95 as is. I once found a use for it with Win95 RTM. I was on a laptop that only had 40 MB of ram. I tried to run a Win95 app that needed more memory than what was freely available. The solution was to reboot Win95 into the old Win 3.1 gui shell. I figured that it used far less memory than the Win95 explorer shell. I had stumbled into the old win 3.1 stuff while explorering the system. I decided to see if you could run Win95 with the old Win 3.1 gui shell that came with Win95. You could. So I ended up using it once for that memory hungry app.
internationalization (usually shortened to i18n). It's the part that handles input in multiple languages, including input methods for languages like Chinese and Japanese. If you've ever ran Windows 9x with multiple languages and saw the blue box in the task bar with the language code in it (like "EN" for English), that's something internat.exe handled.
Good question, but no, wouldn‘t work. This runs Windows 3.1 ib so-called standard mode, not 386 enhanced mode. And that would be a requirement to make it run, but Win95 only ran in „386 enhanced“. Quotation marks, because Win95 didn‘t have anything else, So it was never offically called „enhanced mode“ anyway. But that‘s also the same reason, why Win95 wouldn‘t run in Win-OS/2, because the was no way to run Win95 in user mode only, i.e. without all the kernel mode stuff. So here, Win95-in-Win95 would suffer from the same effect, that it wouldn‘t be able to get a hardware-exclusive direct access. That‘s also the reason, why the mouse and serial drivers need to be swapped as shown, as the original Win 3.1 drivers mandated direct hardware access, something that‘s not allowed.
....... Wait.. What "instabilities" were in Win 3.0 !!????.. I never experienced any instabilities that was "solved" in 3.1???.. Unless we are talking about an "undefined" feeling of it being a BIT better at multitasking than 3.0.. (but not AS much better to 3.0 than 3.0 was to 2.1).. I can't say I ever noticed any direct "instability issues" in either that wasn't present in the other... The MAIN reason I loved 3.1 was True type fonts, and some extensions that could be implemented into 3.1 but not 3.0.. (The main ones being about oversampling true type fonts to make them even MORE visually appealing on a graphics card with slightly better abilities than the average VGA-card which was the standard at the time).. so.. really.. You start this video with talking about how 3.1 solved instabilities as if it was a side note, but it is REALLY something I find to be MORE important to me than there being some forgotten Win 3.1 "emulation" support in 95.. (Just to say; I am FAIRLY sure the reason that functionality is forgotten is BECAUSE it didn't work.. I.. Was going through secondary school at the moment and Borland Pascal 6 and 7 was kind of what we used during that era.. and.. IF I tried to use Borland Pascal to create a program and tried to run it in windows.. it WORKED in Windows 3.0.. it worked in Windows 3.1.. but it DIDN'T work in Windows 95.. in fact.. it CRASHED windows 95.. and.. that is true REGARDLESS if I was doing a dos-program using "CRT" OR actually trying to do a WINDOWS program.. instead using the unit "wincrt".. and technically?.. Win 95, 98 and 2k. (I never tried anything newer than this).. ALWAYS crashed any EXE created by Borland pascal that used the CRT unit.. .. and.. no setting I could find (EVEN telling Win95- or later- that it should use "compatibility mode" with the windows that DID work with the "wincrt" unit actually helped the issue.. the Crt-unit REGARDLESS if it was the dos unit OR the windows-SPECIFIC unit.. ALWAYS crashed the ENTIRE system) (Just to say; This is part of my history, and before I could EASILY find answers on the internet- as the internet was WAY too new to really be easy to navigate.. heck, yahoo was even up to date.. . so.. Getting information WAS slightly better than when I had to use BBS:es, but NOT as readily available as it was later.. so.. I didn't "go back" to explore what the problems I was experiencing was about.. it MAY have been my relative youth and inexperience that may have been PART of the problem.. but technically.. the program crashed.. REGARDLESS what the program tried to do.. as long as I included borlands "CRT" unit regardless of which form.. that is "what happened" at the time)
Obviously mostly concerning memory related issues, which lead to crashes. Sources pointing to this are german Wikipedia, i.e. de.wikipedia.org/wiki/Microsoft_Windows_3.1#Geschichte with the following references: Ingo T. Storm: Bill Gates’ Joker: Microsoft Windows 3.1. In: c’t. Nr. 5, 1992, S. 102 ff. www.heise.de/select/ct/archiv/1992/5/seite-102 Michael Fitzgerald: Current needs, future promises: Windows users’ wish list of improvements includes faster speed and font technology. In: Computerworld. Band 25, Nr. 9, 4. März 1991, ISSN 0010-4841, S. SR5 books.google.de/books?id=NGLmSfbEdcQC Also en.wikipedia.org/wiki/Windows_3.0#Reception points to the same topic. Also, stability issues are ever over rediscussed in various places, like forum.vcfed.org/index.php?threads/windows-3-0-vs-3-1.1243206/ Another source pointing to eventual update for improving said issues, windowsmicrosoft.fandom.com/wiki/Windows_3.0#Windows_3.0a All might be heavily opinionated, though sources point to general issues in Windows 3.0. Of course, even with Windows 3.1 fixing things, 3.1 for certain brought new / other issues along, so did later Windows releases. That doesn't imply everybody would have experienced these issues, or even the same way or to the same extend.
@@THEPHINTAGECOLLECTOR .. I guess I missed out on something.. to be fair that is probably because by the time I had internet I wasn't even bothered about Win 3.11 or earlier, so all information I could get was through friends or on discussion forums on actual BBS:es.. and.. I never really had any stability issues with windows 3.0 EXCEPT if I ran out of memory (It was before any functional virtual ram swap-file functionality worked well).. but then again.. I experienced the same problem with windows 3.1, 3.11 and 3.21 (or was it 3.12?) .. Either way.. I experienced problem with swap memory in Windows 95, and 98 as well. .it wasn't until Service pack 4 on Windows 2k it seemed to ACTUALLY work well.. and even then I'd say it would be better if the people making programs had knowledge of how much ram the system have, so it really really can adjust it's usage depending on reality. I know; I am obsolete.. but.. when it comes to stability ALL windows crashes.. I especially loved when Microsoft promised that they had done away with the blue-screen of death.. and.. what INSTEAD happened was just a pop-up with an error message which STILL rendered the system frozen and useless.. Not to mention that the blue-screen of death WAS still there and happened occasionally. I WANTED to Switch to OS/2, but it kind of died before it became useful.. and when Microsoft FIRST released Vista (a software NOT ready for alpha-testing).. and then Windows 7 that was bloated WAY beyond current hardware really would deal with easily (oh, that was actually worse on vista, but in vista you didn't get to that problem because of the fact that the program didn't work in the first place)..... I stuck to Windows XP.. I preferred Windows 2k, but I was forced to switch because they stopped making drivers for graphics cards for it.. but XP.. WORKED.. by the time of Service pack 3.. It just demanded more of my system than I was willing to give to the operating system I wanted it for my programs, the system is just in the way to get me going.. So.. WHEN Microsoft said.. "You may have a computer.. and a huge screen. .but we THINK you want to use it as if it was a smart-phone".. also known as "Windows 8.0". .that is when I decided the inconvenience of STAYING and being able to run common programs (some of which I loved, such as Winamp, and PSP).. It STILL would be worth the extra effort to learn how to deal with Linux. But.. still.. I can't say I ever (or anyone I know) ever noticed any stability issues in Win 3.0 that wasn't also there (at least similar ones) in 3.1.- That seriously sounds more like a placebo effect to me.
I imagine it being a hard time when the mice are ergonomically shaped, with buttons on the side clearly intended to be used with the right hand thumb. Maybe the 1993 Microsoft Mouse is easy compared to a modern days variant.
@@THEPHINTAGECOLLECTOR Ive always used my pinky and ring finger for those, though i will admit its not the most comfortable. I think the side buttons would be the main reason to get a left-handed mouse due to that.
And what makes you the spokesperson for "the rest of us"? I have the freedom to do whatever I like. And if anything, emulation is totally fine as well IMO. But if you want to see real gear, tune in next Sunday.
@@THEPHINTAGECOLLECTOR I was an intern at MS, working on ME and helped get it out the door. We were also working on XP (née Whistler) at the time. ME worked very well on new hardware and was more stable than 98SE, except it seems from possibly upgraded systems. Upgrades were a configuration we tested, but with the practically endless combinations of hardware and software, I think that might have been the source of some of the issues folks saw. As an engineer on that OS, I'm proud of it and I believe it was much better than it was perceived to be received.
It was actually a small miracle that Win95 could run earlier apps as well as it could. Earlier versions had cooperative multitasking, which meant that a lot of software assumed it had almost exclusive control of the machine, and such software running under preemptive multitasking could easily hit race conditions. This is the main reason for the "virtual machine": potentially misbehaving apps could be largely isolated from well-behaved Win32 apps and as long as you weren't running too much of a mix of the two, the apps running under the cooperative scheduler would just work.
This is a totally missed and overlooked aspect.
Thanks for pointing that out.
By "small miracle", I assume you mean "global mutex"?
I like how ultimately the 3.1 program manager and file explorer still exist in 9x
You can even change the "shell=explorer.exe" line in SYSTEM.INI to something like "shell=progman.exe"
But theres something about win3.1 progman that missing in 9x version, which made me begrudgingly return to explorer.exe.
Back then Microsoft actively trying to discourage that practices and warn system builders to not including any alternative shell replacement or else.
Program Manager kept being shipped in Windows until XP SP 1, with SP 2 replacing it for a stub and Vista removing it entirely. File Manager is now on github, and runs on the latest versions of Windows
@@sundhaug92 Windows Win32 API is the most ridiculously backwards compatible thing ever.
Not entirely sure why - I feel like they really should've just stuck to the Windows 8 idea of finally trying to scrap it entirely, and they should've stuck with it hard.
*File Manager
They existed within Windows up into XP, and if you swapped XP Progman and associated DLLs into Win10 it still works, I'd assume it does on 11 as well
Raymond Chen actually wrote about this feature in "For a brief period, Windows 95 could run Windows 3.1 in a virtual machine":
"Running Windows 3.1 as a program inside Windows 95 served as a convincing technology demonstration, but the feature was cut shortly after it came together.
One reason is that running old programs in a virtual machine doesn’t necessarily create a good user experience. There was no integration between Windows 3.1 and Windows 95. If you copied something to the Windows 3.1 clipboard and then switched back to Windows 95, then tried to paste from the clipboard, you didn’t get what you copied from Windows 3.1, because Windows 3.1 and Windows 95 had separate clipboards. Similarly, if you had a Word document with a live link to an Excel spreadsheet, and you opened the Word document in Windows 3.1 but the Excel spreadsheet in Windows 95, not only did the live link not work, but the copy of Word running in Windows 3.1 would get a file sharing violation when it tried to access the Excel spreadsheet, resulting in confusing error messages. Because even though they ran in separate virtual machines, they shared a file system.
But perhaps the biggest reason for the feature to be cut was that its presence would undermine the compatibility story of Windows 95. Windows 95 was intended to be maximally backward compatible with all your Windows 3.1 programs. The compatibility would be so great you would never turn back. If there were this “Run Windows 3.1 in an MS-DOS virtual machine” feature, it would be an admission that we failed: We gave you a way to turn back."
Win95 got a bit of a bad rep compared to NT based OSs for stability but in many ways it was remarkable. You could run old (Dos, Win16) and new (Win32) applications. The old apps mostly worked just fine and Win32 quickly took over. And it did all thus with a lower memory requirement to NT. Even better most of the time on a cleanish machine Win95 could run all the filesystem code and disk access in 32 bit mode. So your Win32 applications didn't get clobbered by a switch back to V86 mode to do disk access.
Windows 95 got criticism for stability for good reasons
"Return to Chicago" is such an exemplary band name
"Take me back to Chicago"
That reminds me of a famous quote:
"It's 106 miles to Chicago, we have a full tank of gas, half a packet of cigarettes, it's dark and we're wearing sun glasses."
This was new!
The dedication to backwards compatibility by MS has always been fascinating.
Not just Microsoft, but Intel as well.
And it's a horrific waste of CPU resources
@@looneyburgmusic its a waste because it cant even properly compute
It's worth noting that this method only allows 3.1 to start in Standard Mode. 386 Enhanced mode cannot be used. Curiously, this actually allows WfW 3.11 to be used in Standard Mode, something that's normally not possible.
And yes, I can confirm that this mechanism also works on the PC-9800 versions of 95 and 98.
What is the difference between standard and 386 Enhanced?
Well with Win /D you can launch 3.11 in standard Mode.
@@asanjuas that flag never worked for me in WfW 3.11, although regular Win 3.11 might be a different story.
@@Spaztron64 as supposed, WfW 3.11 didn‘t support standard mode any longer
@@Spaztron64 check some freedos docs old docs
The fact that they were so concerned about 16 bit compatibility that they even thought they needed this fascinates me. The end result of Chicago is a strange hybrid OS that is as much a 16 bit OS as it is a 32 bit OS and runs 16 bit and 32 bit windows apps natively. I'm going to guess this was for badly behaved apps that assumed exact memory layout of Win3x and did things bypassing the documented APIs. Or maybe it was just intended for programs that could not run in 386 enhanced mode as 95 effectively always run in it. In the end it seems that Microsoft just did a huge amount of compatibility testing and added compatibility shims as needed so everything seemed to work properly when running badly behaved programs. Perhaps they just saw that things weren't great with NT's 16 bit compatibility and wanted to avoid that again (maybe they even originally planned to do things the same way as NTVDM). Even though pretty much everything works well in 95, some Win3x programs could look a little strange with the 95 UI
This would have certainly put a lot of people off an upgrade to 95. Glad they sucked it up and did it the right way in the end. Just wish they would have given DOS gaming similar treatment. I remember in some cases, even rebooting to DOS mode wasn't enough - had to boot from a 6.22 floppy.
Damn, you just reminded me of my first experience with the game Redneck Rampage. I didn't even have enough hard drive space to install it, so I basically had to format my drive and install a barebones MS-DOS 6.22.
Yeah that really sucked, but I did make sure to back up all my important files first.
@@southernflatland Yeah, I think Duke3D was one of several that gave me grief...same engine as Redneck Rampage. It was well into the 2000s before DOS gaming quit being an issue and that was only because I had moved on to newer windows-based games lol
I expect this was more for compatibility reasons. Applications which were built specifically for the Program Manager might have had problems with explorer as the shell. For the 95 release, they might have had added all the documented hooks so the full VM backwards compatibility wasn't needed.
What a brilliant video! I do have a computer running Windows 3.11 and Windows 95 side by side on the same partition, but I really prefer to use your method, because it's easier to run 3.11 from within Windows 95 instead of choosing a Windows version on boot.
Ah man! Win 3.11 was my first OS, I learned most of what I know on it.
This was interesting. I was never aware of it. Thanks for showing this off.
You‘re welcome
And yet another wonderful story. Thank you for sharing your great knowledge. I was particularly impressed by the disassembling and patching.
German Windows ME was better. Because it was also shouting NEIN, NEIN, all the time.
About Windows 8, and the much hated "Metro" interface. That was an interface that was simply ahead of its time. Metro was a fantastic why to interact with a tablet PC, (Surface Pro for example), but the mistake MS made was thinking people wanted to use normal computers the same way...
I found it borderline insulting. It's like MS didn't think end-users were smart enough to use a desktop-centric interface for a desktop and a mobile-centric interface for tablets and phones, so they created some weird hybrid that was simply annoying to use.
And I like Modern UI/Metro so much on mobile devices that I used Windows Phone and still use a WP-like interface on Android today. But you couldn't pay me to use it on a desktop, although I long ago switched to Linux on the desktop and don't have to worry about it now.
"That was an interface that was simply ahead of its time."
Yeah, for gigantic touch screens only.
@@Kizoky. Wouldn't call the Surface Pro line '"gigantic"
@@johncate9541 Think it was more MS just being lazy, than insulting, not wanting to bother with offering a desktop and mobile UI.
Of course, then they go and code up Windows-S mode, which never made any sense, since every person I know instantly converted to full Windows
@@looneyburgmusic Didn't knew Windows 8 was only made for the Surface
Thanks for the episode ! Another interesting story :)
Glad you enjoyed it!
This reminds me of XP Mode for Windows 7 - that was also a feature that didn't make much sense because most applications ran fine on the host OS anyway, so why bother using a VM?
Good point, now that you‘re saying it :)
Thanks for releasing this!! I'll have to give it a try. I'd be interested to see if there are any video adapters that PCem/86Box/Dosbox can emulate that can share a VDD with Win95. (Or possibly separate display adapters for 95 and 3.1 to use exclusively, which I can't see a use case for but it would solve the driver binding conflict. Probably have to use a physical machine though, I don't think any of these emulators will emulate 2 video cards at once outside of 3dfx accelerator emulation.)
Apple did similar trick in development versions of Mac OS X. Initially Classic environment was in form of app and if you opened it then classic Mac OS would run full screen. In the app switcher there was additional icon titled "Mac OS X" that could be used to return to Mac OS X desktop. Later they improved it so Mac OS applications would show on Mac OS X desktop like native apps.
A great episode! And I’m loving the banter with mr know it all 😂I’m looking forward to trying this on my 486 running windows 95
Mr know-it-all be the last Win ME fan
@@TheSulross 🤣🤣
I love the mr. know-it-all thing you do, so funny
It’s kinda creepy
@@CrippleX89hmm… why you think so?
It has been such a long time but I do remember the transition to Windows 95 and I would say the work Microsoft did to make it Win16 compatible paid off since I don't remember it being an issue. It was an absurdly smooth upgrade (aside from the hardware requirements) and I'm sure I would still have plenty of Win16 software back then, you would continue to sometimes encounter it well into the Windows 98 era.
It amazes me how with all of this effort that retro computing enthusiasts spend getting old versions of Windows and DOS running that ReactOS is still in alpha.
I think it's a totally different thing in getting an old (working) piece of software to run again, even with a small patch here and there, as opposed to re-writing an entire OS from scratch, what ReactOS actually does.
And TBD, as interested as I am in ReactOS, it's way to small a project to really gain traction.
The team behind made good progress, but give or take, had they the combined power of a community that big like Linux has it, it would be finished by now ;-)
@@THEPHINTAGECOLLECTOR As far as I understand their goal, they're intent on having feature parity with Windows and to be capable of running all Windows software. So it's not too dissimilar to merely using WINE, which they supposedly share some code with, except they're incorporating the code directly into the kernel and associated libraries.
As far as community goes, it's pretty hard to acquire one when the majority of people who want to use Windows software would rather just stay on Windows to use it. It's only because of Valve pushing for more compatibility with games and working on their own fork of WINE that we've seen as much traction in recent years, but it hasn't trickled down to ReactOS because yet again, most people would rather not use it. It being too much like Windows is what has held it back, unfortunately.
@@anon_y_mousse So maybe the Windows we have today, is just "good enough" for said majority of users?
I don't know. But obviously, the pain seems not to be too large enough yet, to drive hordes of people away and into ReactOS arms, except for some enthusiasts.
And without, for better or worse, having a commercial player behind, traction will remain small.
Those investments seen in the past read mostly like lip service.
Maybe that's the catch as well. Anyone doing a major investment into ReactOS itself, would get into the direct line of fire of Microsoft.
I think, it's one thing if Valve is investing into WINE, but it would be yet a totally other thing, if vendors, be it software companies, but also hardware vendors, would suddenly add ReactOS onto their agenda, because this might lead to be sanctioned by MS in one way or the other.
Anyway, there's still a long way for ReactOS.
That discussion reminds me btw, I should look into it again. Last time again is already, like 7 years ago, when 0.4.0 came out ....
Maybe worth doing a video?
@@THEPHINTAGECOLLECTOR I would say that the pain is enough to drive people away from Windows, but not to ReactOS, because again, too much like Windows for such people looking to get away. Pretty much every refugee goes to where they have the best opportunity and if it's not Mac it's Linux.
It would still be worth doing a video though as it satisfies a very niche problem. If you're looking for suggestions that might get more views, TempleOS usually nets a lot, and it does have a rather unique approach to operating.
@@anon_y_mousse Ack, ended up myself on the Mac and Linux years ago ^^
TempleOS, huh? Never heard about it TBH.
But it reads as tragic a story around about it's creator. Pities me.
awesome vid once again. youre one of my fav youtubers :)
Wow, thanks!
I did not know this was a thing - thank you for this vid.
I don't know why it was done cause all applications were for dos or win16 and both of them were executed on win95 without problems. It was a problem of launching win32 apps on win3.11 using win32s subsystem.
I noticed the control panel will load with the original mouse.drv but of course you will not have any mouse support. You can however change settings as needed :). I do miss enhanced mode though.
I've actually just finished building a new retro pc, I'm definitely giving this a try soon
update: Works fine! Somehow the installer .inf file wouldn't do anything for me on Windows 98. Also the dualcomm/dualmous drivers aren't there anymore so I grabbed them from a beta build. But it works, really neat stuff!
Confirmed, I think I missed to include the advanced INF DLL file. Will see to fix it.
I could see Billy Coore of The Nostalgia Mall trying this out on his Windows 9x machines.
It is so cool.
Imagine this with windows NT 4 or higher and NT 3.x
I had the Windows 95 Resource Kit book as a kid up until 8 years ago when I moved and it got trashed accidentally. Oh well
This is a great video and something totally new to me! Thank you so much. Any chance of getting a link to your 86box drive images to play with? Either way, appreciate the time and effort to document this little known. and lost feature.
About built-in emulators, have you (or Mr. Know-It-All) ever heard of some MS Office for Windows NT (maybe it was only Word and/or Excel and maybe a Beta/Demo only) released before Windows NT was even released and that runs on DOS using PharLap's TNT DOS extender?
Me not, no.
Need to ask Know-It-All, he knows everything ;)
Jokes aside, sounds weird. You know any information sources?
@@THEPHINTAGECOLLECTOR why are you not as cool as mr know it all?
@@THEPHINTAGECOLLECTOR It's been a few years since I heard about it somewhere, probably on some forum dedicated to HX DOS Extender, but I never managed to find a copy...
ChatGPT confirms that it did exist and that it was based on Office 3.0 but it was only distributed to a select group of users ☹
@tezcanaslan2877 Mr. Know-It-All might have the cool factor, but I've got the vintage charm!
I don't remember this, but I hated Win3.1 so much I refused to boot it unless I had to for something like Word Perfect. I downloaded several beta releases of Chicago, which I remember the first few only supported 16 colors max. This is probably before I had access to 'totally legit' downloads of Chicago though, as I think it was fall of 1994 when I started using them.
I managed to run this on my pentium II. Actually i was able to run it on 1024x768x256 color mode with universal SVGA Driver, with Sound and i was also able to use a better mouse driver other than the buggy dualmous.drv. for the DOS Prompt inside Win3.1, i guess there is a way for it .. I can write an article about it where i share my findings if you want 😊
@hamzajeljeli6815 Nice :-)
Mind to share those drivers with me? Might be worthwile including those with the Github project.
@@THEPHINTAGECOLLECTOR For the SVGA, Just google SVGAPTCH.zip
I'm wondering, can this be used to run 3.1 from inside of WfW 3.11? It's even more pointless but maybe it could be useful for running multiple languages of Windows (particularly ones with different character sets) at the same time.
Are you interested in old software discs?
Sure I am!
Why is this desirable when the full release of 95 can install and run 3.1 apps natively? What are the use cases?
@JimLeonard well, It's not desirable. There's no use case, as the Win16 subsystem in Windows 95 is fairly compatible.
As I guess, they had it in there in the beginning of Chicago, presumably because Win16 was not yet stable enough in the beginning. Or there was uncertainty that it ever would be. Or they didn't want to implement a Win16 subsystem on Win95, but just push to 32-bit applications.
I wasn't there, and the reasonings of which lay buried in the past. Pick any reason you like :-)
To reference my own quote: Did Win16 applications require this co-hosted Windows 3.x on Windows 95, it might have lead to a similar situation as IBM's OS/2, which included Windows 3.x as well, which is why not many developlers were writing native OS/2 apps.
So in Win95 context, it could have hindered the adoption of 32-bit applications.
And furtherly, had they actually included this Windows 3.1 compatibility thing along with Windows 95, everyone would propably have blaimed Microsoft being unable to develop a compatible successor of their own brainchild.
There wasn't really any need for this. You could run Win 3.1 apps in Win95 as is. I once found a use for it with Win95 RTM. I was on a laptop that only had 40 MB of ram. I tried to run a Win95 app that needed more memory than what was freely available. The solution was to reboot Win95 into the old Win 3.1 gui shell. I figured that it used far less memory than the Win95 explorer shell. I had stumbled into the old win 3.1 stuff while explorering the system. I decided to see if you could run Win95 with the old Win 3.1 gui shell that came with Win95. You could. So I ended up using it once for that memory hungry app.
wonder if it was a workaround for memory protection
4:16 i am sorry but what is "internat" supposed to be ? the thing with the American flag icon
internationalization (usually shortened to i18n). It's the part that handles input in multiple languages, including input methods for languages like Chinese and Japanese. If you've ever ran Windows 9x with multiple languages and saw the blue box in the task bar with the language code in it (like "EN" for English), that's something internat.exe handled.
aaaa os2.1 warp.....use to run that for a long time
I wonder what would happen if tou somehow forced the Win3.1 install tk upgrade to Win95. Could you get Win95 to 'run' win95??
Important question. Win 95 ception
Good question, but no, wouldn‘t work.
This runs Windows 3.1 ib so-called standard mode, not 386 enhanced mode.
And that would be a requirement to make it run, but Win95 only ran in „386 enhanced“.
Quotation marks, because Win95 didn‘t have anything else,
So it was never offically called „enhanced mode“ anyway.
But that‘s also the same reason, why Win95 wouldn‘t run in Win-OS/2, because the was no way to run Win95 in user mode only, i.e. without all the kernel mode stuff.
So here, Win95-in-Win95 would suffer from the same effect, that it wouldn‘t be able to get a hardware-exclusive direct access.
That‘s also the reason, why the mouse and serial drivers need to be swapped as shown, as the original Win 3.1 drivers mandated direct hardware access, something that‘s not allowed.
I'll be interested to see if it supports Win32s.
You can't stop development, that's why 16bit had to be suppressed.
@@RETROMachines There‘s nothing generally wrong with development and evolution ^^
....... Wait.. What "instabilities" were in Win 3.0 !!????.. I never experienced any instabilities that was "solved" in 3.1???.. Unless we are talking about an "undefined" feeling of it being a BIT better at multitasking than 3.0.. (but not AS much better to 3.0 than 3.0 was to 2.1).. I can't say I ever noticed any direct "instability issues" in either that wasn't present in the other... The MAIN reason I loved 3.1 was True type fonts, and some extensions that could be implemented into 3.1 but not 3.0.. (The main ones being about oversampling true type fonts to make them even MORE visually appealing on a graphics card with slightly better abilities than the average VGA-card which was the standard at the time).. so.. really.. You start this video with talking about how 3.1 solved instabilities as if it was a side note, but it is REALLY something I find to be MORE important to me than there being some forgotten Win 3.1 "emulation" support in 95.. (Just to say; I am FAIRLY sure the reason that functionality is forgotten is BECAUSE it didn't work.. I.. Was going through secondary school at the moment and Borland Pascal 6 and 7 was kind of what we used during that era.. and.. IF I tried to use Borland Pascal to create a program and tried to run it in windows.. it WORKED in Windows 3.0.. it worked in Windows 3.1.. but it DIDN'T work in Windows 95.. in fact.. it CRASHED windows 95.. and.. that is true REGARDLESS if I was doing a dos-program using "CRT" OR actually trying to do a WINDOWS program.. instead using the unit "wincrt".. and technically?.. Win 95, 98 and 2k. (I never tried anything newer than this).. ALWAYS crashed any EXE created by Borland pascal that used the CRT unit.. .. and.. no setting I could find (EVEN telling Win95- or later- that it should use "compatibility mode" with the windows that DID work with the "wincrt" unit actually helped the issue.. the Crt-unit REGARDLESS if it was the dos unit OR the windows-SPECIFIC unit.. ALWAYS crashed the ENTIRE system)
(Just to say; This is part of my history, and before I could EASILY find answers on the internet- as the internet was WAY too new to really be easy to navigate.. heck, yahoo was even up to date.. . so.. Getting information WAS slightly better than when I had to use BBS:es, but NOT as readily available as it was later.. so.. I didn't "go back" to explore what the problems I was experiencing was about.. it MAY have been my relative youth and inexperience that may have been PART of the problem.. but technically.. the program crashed.. REGARDLESS what the program tried to do.. as long as I included borlands "CRT" unit regardless of which form.. that is "what happened" at the time)
Obviously mostly concerning memory related issues, which lead to crashes.
Sources pointing to this are german Wikipedia, i.e. de.wikipedia.org/wiki/Microsoft_Windows_3.1#Geschichte
with the following references:
Ingo T. Storm: Bill Gates’ Joker: Microsoft Windows 3.1. In: c’t. Nr. 5, 1992, S. 102 ff.
www.heise.de/select/ct/archiv/1992/5/seite-102
Michael Fitzgerald: Current needs, future promises: Windows users’ wish list of improvements includes faster speed and font technology. In: Computerworld. Band 25, Nr. 9, 4. März 1991, ISSN 0010-4841, S. SR5 books.google.de/books?id=NGLmSfbEdcQC
Also en.wikipedia.org/wiki/Windows_3.0#Reception points to the same topic.
Also, stability issues are ever over rediscussed in various places, like
forum.vcfed.org/index.php?threads/windows-3-0-vs-3-1.1243206/
Another source pointing to eventual update for improving said issues,
windowsmicrosoft.fandom.com/wiki/Windows_3.0#Windows_3.0a
All might be heavily opinionated, though sources point to general issues in Windows 3.0.
Of course, even with Windows 3.1 fixing things, 3.1 for certain brought new / other issues along, so did later Windows releases.
That doesn't imply everybody would have experienced these issues, or even the same way or to the same extend.
@@THEPHINTAGECOLLECTOR .. I guess I missed out on something.. to be fair that is probably because by the time I had internet I wasn't even bothered about Win 3.11 or earlier, so all information I could get was through friends or on discussion forums on actual BBS:es.. and.. I never really had any stability issues with windows 3.0 EXCEPT if I ran out of memory (It was before any functional virtual ram swap-file functionality worked well).. but then again.. I experienced the same problem with windows 3.1, 3.11 and 3.21 (or was it 3.12?) .. Either way.. I experienced problem with swap memory in Windows 95, and 98 as well. .it wasn't until Service pack 4 on Windows 2k it seemed to ACTUALLY work well.. and even then I'd say it would be better if the people making programs had knowledge of how much ram the system have, so it really really can adjust it's usage depending on reality.
I know; I am obsolete.. but.. when it comes to stability ALL windows crashes.. I especially loved when Microsoft promised that they had done away with the blue-screen of death.. and.. what INSTEAD happened was just a pop-up with an error message which STILL rendered the system frozen and useless.. Not to mention that the blue-screen of death WAS still there and happened occasionally.
I WANTED to Switch to OS/2, but it kind of died before it became useful.. and when Microsoft FIRST released Vista (a software NOT ready for alpha-testing).. and then Windows 7 that was bloated WAY beyond current hardware really would deal with easily (oh, that was actually worse on vista, but in vista you didn't get to that problem because of the fact that the program didn't work in the first place)..... I stuck to Windows XP.. I preferred Windows 2k, but I was forced to switch because they stopped making drivers for graphics cards for it.. but XP.. WORKED.. by the time of Service pack 3.. It just demanded more of my system than I was willing to give to the operating system I wanted it for my programs, the system is just in the way to get me going.. So.. WHEN Microsoft said.. "You may have a computer.. and a huge screen. .but we THINK you want to use it as if it was a smart-phone".. also known as "Windows 8.0". .that is when I decided the inconvenience of STAYING and being able to run common programs (some of which I loved, such as Winamp, and PSP).. It STILL would be worth the extra effort to learn how to deal with Linux.
But.. still.. I can't say I ever (or anyone I know) ever noticed any stability issues in Win 3.0 that wasn't also there (at least similar ones) in 3.1.- That seriously sounds more like a placebo effect to me.
try to run Windows 1.0 and 2.0 software on it
Whatever the reason they made right call and made Win95 successful product. That's the most important thing in the end of the day
Next... Patching DRDOS 6.0 from 1991 to work with Windows 3.1
Why not ? Patching Windows for Windows was a walk in the park maybe patching aard Code on drdos
Was just wondering, thinking about AARD code as well
@@THEPHINTAGECOLLECTOR as it so happens drdos IS compatible maybe patching executables and or interchanging ones.
Pro-tip: use a slower CPU on 86Box, because it's low level emulation and the entire system runs faster than with the fastest emulated CPU on 86Box.
3:00 do you realise a lot of left handed people use right handed mice? i use right handed mice with my left hand; its hardly impossible.
I imagine it being a hard time when the mice are ergonomically shaped, with buttons on the side clearly intended to be used with the right hand thumb.
Maybe the 1993 Microsoft Mouse is easy compared to a modern days variant.
@@THEPHINTAGECOLLECTOR Ive always used my pinky and ring finger for those, though i will admit its not the most comfortable. I think the side buttons would be the main reason to get a left-handed mouse due to that.
Ah good old Chick-A-Go lol.
But what about Windows ME? 😂
German!? I think I've heard of that niche language. Do people still speak that? ;)
If "obsolete hardware" is your passion, why are you running 86BOX? Real hardware, like the rest of us, only please.
And what makes you the spokesperson for "the rest of us"?
I have the freedom to do whatever I like. And if anything, emulation is totally fine as well IMO.
But if you want to see real gear, tune in next Sunday.
He's Mr Know-It-All ...he also wants to ask "what about Windows ME?"
@@laz7354 the only person alive thst cares about said OS
@@tezcanaslan2877at least someone cares about Windows Me 😂
@@THEPHINTAGECOLLECTOR I was an intern at MS, working on ME and helped get it out the door. We were also working on XP (née Whistler) at the time. ME worked very well on new hardware and was more stable than 98SE, except it seems from possibly upgraded systems. Upgrades were a configuration we tested, but with the practically endless combinations of hardware and software, I think that might have been the source of some of the issues folks saw. As an engineer on that OS, I'm proud of it and I believe it was much better than it was perceived to be received.
Subsystem16. The first embryos for containers!