Re-visiting VM/386

So years ago I had won an eBay auction for 3 disks:

VM/386

But pretty much everything I threw at it emulation wise came up with NOTHING but green bars when trying to enter a virtual machine. I’d always thought it was a video ROM thing but VGA type ROM I put in Qemu it’s always the same thing, green jail bars.

VM/386 in action

However, I tried it again on 86box, and YES it runs!

VM/386 VM status

You can see VMs running, where they are in memory and all that other fun stuff.

And even better you can run graphical PC programs on your advanced 80386, and seamlessly multitask them all, using the hotkey ALT+PRINTSCREEN to toggle between them all. Surprisingly creating and terminating VMs didn’t really mess with overall system stability. I have to imagine that had this program had a 32bit API, it would have killed OS/2 before it ever got a chance. Considering that version 1.2 is from 1988 there very well could have been a larger possibility.

It does have the ability for individual profiles to specify RAM or even where or how to boot, it has disk drivers for sharing of files (think file locking). It also has the ability to boot from floppy, or even ROM!

MS-DOS 3.30A booted under VM/386

Indeed there is a rather good review from PC Magazine: January 1988, that goes into many features, and compares it to other contemporary multitaskers of the era.

The one big drawback is there is no data exchange facilities. The one thing that Windows/386 had bridging the gap between MS-DOS & Windows applications.

So many products like VM/386 ended up finding their niche’s in attaching dumb terminals, and turning 386 classed machines into ‘micro mini’s’ witthout the power of Unix. It’s even out of this environment Citrix was born.

But there was so much potential here to be something so much larger, but sadly that was not to come. Perhaps 1988 was just a little too early in the sense of GNU GCC/GAS/LD and some Xenix COFF help. The world would have been a lot more stranger had Microsoft lost that second vital platform war.

Anyone crazy enough to want to try it in 86box, I uploaded my images on archive.org.

MS-DOS Player…

You’ll probably need to run this through translate.google.com, this this site, by Takeda Toshiya, has this nifty utility that’ll run some MS-DOS programs at the command prompt from Windows x64!

It’s best geared towards command line utilities, but it seems to work fine for little (old) stuff.. nothing too fancy though the CPU core is taken from MAME’s i86 (which looks heavily influenced from pcemu).

Today is a slow internet day.

PCemu for Windows

Back when Linux was all new and exciting, I used to run this program, called pcemu to run some basic text only MS-DOS programs. The thing was dosemu was cool, but just unstable as hell, and a put software emulator could always be controlled because it was ‘just another process’…

Now the thing about pcemu is that it was meant for X11, and it’d suck for those of us that actually used terminals… Ages ago I ‘fixed’ a lot of the X11 stuff to run over a terminal, but I never did get the scrolling correct.

So years later, trying to remember the programs that I ran circa 1994, I thought I’d dig out pcemu and see how it runs on ‘modern’ machines…

Much to my surprise, David Given & Michael Hope, have updated it somewhat, and included curses support!

So I took the curses portion, then used a little insight from the ‘bounce’ demo from the NT 3.1 SDK, along with this great example of how to work some of the features of the Win32 Console, along with a long night trying to get the timers working, and I’ve managed to produce a copy of pcemu that’ll run on Win32 & Win64…

Now of course I’m sure you’d be saying Why…. But remember the x64 platform has no native way to run MS-DOS, so even a simple text only emulator is a nice thing to have..

pcemu-x64

pcemu-x64

So while it may not look all that exciting, it actually works!

fdisk on pcemu-x64

fdisk on pcemu-x64

Even FDISK renders correctly!

For some reason pcemu had hard disk emulation, but it was disabled by default… So I re-enabled it, and configured it to emulate the ST506 5MB hard disk.. And it works great, other then you can’t boot from it… 😐

Other then that, yes it is totally pointless, but I have to admit, it was pretty cool the first time I saw it booting up.

For the 2 or 3 people that care, my work is currently here. I’ve built it for the x86, x64 & ia64….