Early MSDN CD’s on archive.org

I ran across this, and thought it was cool. These CD’s are getting harder and harder to find, and unless you want the old physical disks, getting ISO images is, of course the next best thing.

Granted these disks replaced the much older Microsoft Programmer’s Library. The new CD’s use a Windows based search & interface program removing the clunky old MS-DOS program that made it feel like trying to view the world through a straw. (Although the up side of the MS-DOS version is that you could easily dump the video RAM and save the contents to plain text).

And in this brave new post Windows 3.0 centric world of Microsoft just about everything regarding OS/2 was dumped, and the seeding of Win32 via Windows NT had started.

Naturally after winning this war, Microsoft withdrew many low end products and just couldn’t compete with the tidalwave that was GNU/Linux.

At any rate for the curious kids down the road that want to see what all the fuss was with Win16, and how Windows 3.0 had changed the landscape removing the force of IBM it’s worth a look.

Compiling Microsoft Word 1.1a for Windows

A while back, Microsoft had famously released the source code to Word for Windows 1.1a (and OS/2 as well!), to some fanfare.

People were excited, but then kind of dismayed as they couldn’t really do much with it.  Oddly enough the source code release really didn’t have any notes on how to build it, although everything needed is included.  I went looking for information on how to build Word to see why it keeps doing weird things on WineVDM, and I came across this thread on betaarchive: 

https://www.betaarchive.com/forum/viewtopic.php?t=31096

Special props to yksoft1 for getting it to build in the first place, and Ringding for noticing that the OS/2 supplied compiler binaries can be re-bound to run under MS-DOS using a MS-DOS Extender.

So I went ahead and fired up Qemu and within an hour I had done it!

Word 1.1a compiled and on Windows 2.11

Well this is great fun, and all, but there isn’t a heck of a lof of people with Windows 2.x around anymore.  And of course Word 1.1a really wanted to have 2.11 or higher.  It has some hooks for what would be Windows 3.0 although I think it was much more.  Although it certainly doesn’t want to run (unmodified) under debug release 1.14.

So now that the world has gone beyond Win16 OS’s what can you do?

Well the tip of  WineVDM will run it!

Word 1.1a on Windows 10 using WineVDM

So now there is some new life for this old word processor.

Another fun thing in Word 1.1a is that it has an early implementation of MDI letting you view and work with several documents at once.  Naturally you would need a massive monitor, which we all have today.  Although people tend to just launch more than one copy of Word to accomplish this.

Early MDI

So now on my 64bit machine I can not only play with the source to Word, but I can run it at unimaginable resolutions on my modern machine!

WineVDM 0.5.0 released!

This version has MANY issues fixed, and is capable of running more and more Win16 software on Win64 based OS’s.

Printing on paper!

One of the more exciting things is that as long as I do a print setup first, I can actually print on a new printer from MS Word 2.0c!

You can download it from the releases page here:

https://github.com/otya128/winevdm/releases/tag/v0.5.0

MSDN from October 1994

I picked this 20 disc set recently and ugh the cringe is just… insane.  And yes, that is Bill Nye

 

STUDS from Microsoft .
(Video in MPEG-1/Audio MPEG-2 care of JSMpeg).

I had this ages ago, although I couldn't remember if the NT 3.5 SDK/DDK had shown up at this point, but it's only the Japanese version in this set.  Since I'm having such a PITA in tracking down a 3.5 set, and I'm not sitting on this, I may as well archive it.

Yes, I had to rip 20 of these!

So you too can find the early Video for Windows, and all kinds of other things from the mid '90's on archive.org.

Or Wallpapers like this 'puppy' from the Japanese version of Windows 3.1

https://archive.org/details/MSDNOctober1994

Excel Working Model

While messing around with Windows/386 and talking to others going through their old stuff, I’d forgotten that in the box was a working model of Excel. Since I only have the physical diskettes for 2.03, I did dump the disks for 2.11 when I had that.

Envelope with the demo

At this time in history the big spreadsheet that defined the PC was 1-2-3 which took the spreadsheet mantle away from the CP/M spreadsheet who in turn took it away from the progenitor VisiCalc on the Apple II.  And this was the chance to define the new spreadsheet for a whole new platform.  

Excel started out on the Macintosh, but with version 2 it was time to come to the PC for the new and exciting Windows 2 platoform.  And to get people to try it out the key was free working demos.

Automated demo

I thought it was interesting that it comes with a demo showing off the ability to take data from several spreadsheets and make a 3rd with data.  Oh what an exciting world 1989 was!

Oddly enough I couldn’t directly import text (csv) data into XL, but I could use Excel 3 to create a version 2 xls with my current top blog stats and then create some graphs.

So first, here is from the blog stats package wp-statistics:

wp-stats
Chart in Excel 2

And there we go in Excel 2.  Since I have Excel 3, here is it running under WineVDM on Windows 10:

Excel 3

Obviously the higer resolution helps for moving stuff around.  And the legend doesn’t resize in either, but in Excel 3’s larger display it and move stuff around.

Needless to say this stuff is down right primative in 2018, but it’s always fun to check out ‘professional’ tools from 30 years ago.

Windows/386 v2.0(3)

Unknown disk on Ebay…

I stumbled onto these three disks, seemingly out of place in history.  Windows/386 version 2.0 is a strange one in that it shipped to OEM’s in late 1987, making it & Xenix part of the initial 386 wave of Operating Systems/Environments and beating out not only the OS/2 launch in 1988, but taking advantage of the 80386’s v86 mode, something that OS/2 wouldn’t be able to do in a shipping product until 1992. 

This version itself appears to be a retail version of Windows/386 lacking any clear OEM identification that was so prevalent for the era.  Indeed setting it up it offers a few interesting platforms:

Getting this to run was a little bit of a challenge as much as I prefer Qemu, these older 2.0x versions of Windows/386 have a BIOS/disk incompatibility with the hypervisor resulting in errors reading the hard disk.  Although PCem/86Box have no such issues.  I think it’ll run off floppy/CD-ROM/Network without any issue though.

Windows/386 v2.03

Once installed it reveals itself to be version 2.03 of all things.  While I was hoping for some kind of retail version of 2.00/2.01 this appears as close as it may get as it has more in common with the PCjs version of 2.01 (which you can try live on his site!)

The PCjs version of 2.03 has 138 setup files (not counting the PIFs), compared to the eBay’s 141, while the PCjs 2.01 has 59 files.

That said, well it’s Windows/386 mostly from 1987 with slightly updated EGA/CGA VMM drivers from early 1988 that just didn’t quite make the cut.  To me what is confusing, is that it identifies as 2.03 while it’s closer to 2.01 in file count and functionality, unlike 2.03 it really ought to have been a 2.02, if there even was such a thing.

Windows/386 2.03 in CGA

Otherwise it’s really not all that interesting short of the timestamp.  It’ll run on CGA/EGA *IF* you have the proper adapter in place, although VGA is compatible, the environment will detect that it’s not actually the proper card and refuse to run.  I tried to put in the 2.01 CGA/EGA drivers, but that resulted in an OS version mismatch (I didn’t check if 2.01 was locked to the Compaq OEM of MS-DOS)

No mixing drivers!

I installed the infamous pair Word & Excel.  Despite Word 1.1a demanding at least Windows 2.11, it appears to run okay.  Excel 2.1d loaded without complaining.  There isn’t very much convential memory for either, but they both can use expanded memory, which the hypervisor can create and share out without any emm386 or any equivalent driver.  I can only imagine the incompatibles of trying to balance these drivers at the time, and how much the coming DPMI specification was needed.

Memory trouble in Windows 2.x

 And as the old saying goes the three top problems in Windows version 2 is memory, memory and memory.  Trying to run anything graphical will exhaust convential ram, forcing you to single task anything graphical which kind of defeats the whole point of Windows.  You go from this:

BattleTech CGA in a Window

To this:

Windows is out of memory!

Oh well it’s 1987, and users were kind of used to being disappointed as such.  It’s really no wonder why Windows 3.0 became the smash it it was.

And of course you can't talk about Windows/386 without this gem. (Video in MPEG-1/Audio MPEG-2 care of JSMpeg).

WineVDM is improving at a dramatic rate

It’s incredible how much it’s improved since I last touched on WineVDM, the port of Wine to run on Windows using the MS-DOS Player (and Mame 80386 emulation) at it’s heart.

The latest source build WineVDM_2018_07_30b.7z is now capable of loading and running Sim City for Windows 1.0.

I found it best to install Windows 3.0 into DOSBox, and then your application.  After the install I copy the application so the physical drive of the hosts matches where it was installed, and then unpack the 7z build archive into that directory.  There is a ‘WINDOWS’ directory and I xcopy the installed Windows directory into there so it has all the INI files, fonts and all that jazz.  To make sure it doesn’t conflict I delete the following from Windows 3.0:

del windows\system\*.drv
del windows\system\*.exe
del windows\system\*.mod
del windows\system\WIN87EM.DLL

Since these files are most certainly going to be emulated by WineVDM.  After that it’s time to run stuff!

130 KLOC!

I should also add that I’ve been able to use QuickC for Windows, and build a ‘non trivial’ program, the Fortran f2c compiler weighing in at 104,245 lines , and use that to compile 16,182 lines of Fortran 77 into C, and then compile the resulting C + the Fortran runtime library a staggering 130,405 lines of code, and the resulting binary works, just like it did on Windows 3.0!

I’ve also been able to print a text file using Microsoft Word 2.0 much to my amazement, although anything involving fonts just locks or crashes.  I can’t say I’m all that surprised.

And yes, it does in fact run SkiFree 1.0

SkiFree on WineVDM

So no need to wait for Win3mu, there is WineVDM which is being developed RIGHT NOW, and the source is already available.  You can see my notes on building it here.

WineVDM

This is super cool, building on Takeda Toshiya’s excellent MS-DOS Player, is a fusion of the MS-DOS emulation with portions of Wine to run Win16 applications on Win32 capable OS’s.

Excel 3.0a

Yes, it really can run Excel 3.0a.  I don’t know how much people will want a 27 year old spreadsheet, but here we go!  It’s incredibly buggy, and many Microsoft programs don’t like their accelerators, or menus, more things don’t run than do, but when they do it’s great.

The releases on the github page are quite old, and you’ll really want to bulid this from source.    You will need Visual Studio 2017 to build this, and I used the Community Edition.  While trying to compiling I got this error:

Really it’s no help at all

Performing Custom Build Tools
The system cannot find the path specified.

Well that doesn’t help us at all!

Setting the Tools -> Options -> Build and Run, MSBuild sections to both detailed verbosity revealed:

“C:\Users\neozeed\source\repos\winevdm-master\Release\convspec” “krnl386.exe16.spec” KERNEL > “krnl386.exe16.asm” && “C:\msys32\mingw64\bin\as” –32 -o “krnl386.exe16.obj” “krnl386.exe16.asm”
Performing Custom Build Tools
The system cannot find the path specified.

So it turns out it is using GNU GAS to assemble itself.  So I just copied in an ‘as.exe’ from another MinGW install I have lying around.

c:\msys32\mingw64\bin\as.exe –version
GNU assembler 2.17.50 20060824

So it doesn’t even have to be a hyper modern version, as you can see with the –32 we are building 32bit based stuff anyways.

And with that all done we have a release build.

F2c Dungeon

I had no luck with Sim City, but Sim Life & Sim Earth load at least, but not being able to use the menus means you can’t really use them.  Microsoft Word 1.1 won’t load at all, while Word 2.0 will load but again no menus, and it’s unable to register enough OLE to open documents so it’s not very useful again.  Although my ancient QuickC for Windows F2c port of Dungeon, works okay, although QuickC for Windows itself does not currently run.

WinHelp 3.00

Another great thing is that you can run WinHelp for all your ancient documenation fixes!  Also MS Write from the ancient days of Windows 3.0/3.1 works as well

Write

You can download my binary build here: WineVDM_2018_07_30.7z.  It’s almost a given that you will need the Visual C++ 2017 runtime.

The latest version allows the menus to work properly so you can actually use Word for Windows 2.0 and SimEarth & SimLife now!  Further updates let you actually select and open files in Word for Windows 2.0!

SimLife for Windows

Sim Life on Crossover for OS X

Continuing in my eventual goal to get all the Maxis games (Sim City, Sim Earth) for Windows 3.0 I just acquired Sim Life.

Although the box that I have is the ‘Classics’ version, it actually does support Windows 3.0 as specified on the box.  The requirements were again massive for the era, but pitiful for today requiring an 80386 processor, and 4MB of RAM, and a VGA display!

Unlike Sim City, the UI in Sim Life prevents you from moving MID child windows under the title bar, making playing on modern machines much more tolerable.  My copy arrived with 3 low density 3 1/2″ diskettes, and a 204 page manual, making for a very hefty learning curve, along with a more involved experience then something casual, say Spore.

There is no doubt about how there is a great deal of overlap between Sim Earth and Sim Life, although the timescale is certainly more geared to life, unlike Sim Earth’s geological timescale, and even with these 3 programs it certainly feels like the save files should have been able to be transfered at some point, that the genesis of Spore is here with moving from geological to biological then to human lifetime scales.  Although with so many things to change and get involved in, I really have to wonder if dumbing down Spore was the ‘right thing’ to do, to make it more accessible, however there is no doubt that the space portion of Spore was terrible with only a single ship to command, which made growing an empire of any size once the Grox has been encountered impossible.

Having a modern display does make the sense of the planet feel laughably small, but it’s a game, not a real life simulation, and as such expected to execute on 16Mhz machines.  That said running on Crossover (Wine) on my Xeon it is incredibly snappy.  One nice touch is that Sim Life is able to detect sound properly and it’ll run silently on Windows 3.0, but with 3.1 with configured audio & MIDI drivers, it’ll play (annoying) sounds, and the occasional MIDI track.

The included catalogue for this game didn’t have any prices so I don’t know what the retail price was at the time.  And I have to admit, short of collecting old games for Windows 3.0 there is probably little value here compared to the far more relatable Sim City for Windows.

VGA display

Also it just goes to say that although it scales nicer for the UI on a VGA display, comparing my Apple Cinema display to VGA really makes for a claustrophobic experience.

Unless you are a diehard fan, I’d say that you’d get more out of the much flawed spore.  Although if you want to see how incredibly more detailed the older games were, you’ll certainly love this one!

DOSBox 0.74 can run Windows 3.0/3.1 in 386 Enhanced mode!

DOSBox… in a box!

I don’t know why I never tried it before, but it actually works!  And it’ll even spawn out to a window two.  Although without share/record locking it’ll end up being a world of pain, I suspect.  Maybe vDOS/vDosPlus will work?  I know it’ll work fine if you boot MS-DOS inside of DOSBox, but for some reason I never actually tried to stress the v86 mode of DOSBox from within Windows.