KleinesSinchen



Warning: Using unsupported legacy Windows versions online is dangerous and could – in the worst case in conjunction with a VM-escape exploit – lead to infecting your host computer. This is – admittedly – not very likely because current malware in the wild probably does not have compatibility with DOS-based Windows systems (and maybe even not compatibility with 2000/XP).


Do not use legacy Windows online unless you have a good reason! I do not recommend to go online with old Windows versions!
Do not use legacy Windows online unless you have a good reason! I do not recommend to go online with old Windows versions!
Do not use legacy Windows online unless you have a good reason! I do not recommend to go online with old Windows versions!



Okay. I had to say this. Now to the actual content:

This question bothered me in the last couple of days. But the ASK! section is not a place for long answers.
The dos based Windows versions 3.1(1),9x and ME are not officially supported by VirtualBox. Although you find tutorials how to proper install e.g. Windows 98SE with ACPI support and additional graphic drivers (won’t link because copyright status is unclear to me), one key feature of the “Guest Additions” is missing: Shared folders.
On any supported guest OS, one can install the additions to get automatic resolution adaption to the window size, shared clipboard,… and the nice possibility to exchange data bidirectional host⟺VM.

But what to do with old Windows 9x?
Getting files into the VM is easy. Put all files inside an ISO-image and mount it in the virtual DVD drive → The VM has access. Fine. No problem. We can go home now. But… How to get files created from inside the VM back to the host?

Idea #1: Install Windows file sharing feature in 9x and just use SMB.
Sounds good. Sadly it does not work. Windows 98 is so outdated and the SMB version so horribly insecure that modern computers don’t support it. Okay, you could look for registry settings in modern Windows versions to enable this (and settings for modern Samba on Linux exists as well)… but this is not a good idea. I do not want to make such settings on a productive system. ⟹ Fail!

Idea #2: Burn to rewritable DVD
The author of the above question stated correctly: “I can’t modify the inserted iso-image from within the VM”. Not surprising. This is a one-way road. But… what if I choose my real host drive in passthrough mode? Could burning software in the VM burn onto DVD+/-RW? Sounds ridiculous. But actually this works. In theory. I got it to work with Windows XP without any configuration inside the VM. But this is pointless. XP has the guest additions which are by far superior. When opening Imgburn under Windows 9x my VMs always froze with the message “Getting write speeds.” or similar ⟹ Fail!

Idea #3: SMB shares with other VMs
I attached my virtual network adapter to “NAT Network” (configure one first in the VirtualBox main preferences) in some virtual machines (95, 98SE, 2000, XP) . All VMs were on their latest patch-levels. And this worked like a charm!
All this old Windows versions were able to push and pull data in all directions. Once configured like I remember it from the past, the transfer between 9x and 2000/XP was a piece of cake. A slight detour but not too bad. Paste all files from Windows 9x to 2000/XP and from there to the host.

However transfer speeds are not consistent:
2000/XP → 95 only about 3 MB/s
2000/Xp → 98 about 6 MB/s
95 → 2000/XP about 6MB/s
98 → 2000/XP about 10MB/s (which is near the maximum; the virtual network card is a 100Mbit)
VirtualBox95. VirtualBox2000.
Success! Problem solved.

But that is not the only way:
Idea #4 Using the VirtualBox feature to attach USB devices to a VM.
With Windows 95 this is probably not gonna work (did not even try). Few versions of 95 supported USB and this support was buggy. So my test only on Windows 98SE. It took a few tries, a bit trial and error, but then finally... VirtualBox attached USB-flash drives to the VM. After installing NUSB 3.6 (universal mass storage driver for 98) the legacy Windows found multiple drives and could read and write. (NUSB is not needed for ME as it has universal mass storage drivers included.) Only one problem with this: I had to set the USB interface to 1.1 because 2.0 (or even 3.0) did not work. Missing Win98 drivers.
Okay, this is slow, but it works. My test drives were FAT32 formatted because 9x does not support other filesystems than FAT12/16/32 out of the box. Yes, I know third party NTFS drivers exit. But I did not test them in this usecase.

Success! Problem solved again. A “little” slow, but hey, it does not need an additional slightly more modern Windows VM.

Idea #0

Closing comments:
  • I was too lazy to setup a complete Windows ME machine (I already had all the others). But ME was not much more than a service pack for 98SE. Probably everything that works for 98 can be applied to ME.
  • My 98SE installation has an unofficial service pack as well as KernelEx installed. This should not make a difference.
  • I did not try to connect Windows for Workgroups 3.11. Would be interesting to see if this is possible.
  • VirtualBox version was 5.2.22 with extension pack on openSUSE Leap 42.3 host.

23 Comments

  • FAST6191
  • KleinesSinchen
  • Minox
  • KleinesSinchen
  • RattletraPM
  • GothicIII
  • KleinesSinchen
  • Simon34545
  • Simon34545
  • The Real Jdbye
  • KleinesSinchen
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
  • Simon34545
You need to be logged in to comment