VirtualBox
I need to set up a MSDOS virtual machine to run a program that talks to my vintage Magnavox GPS reference station.
I've done it in the past with VMWare but have pretty much switched over to VirtualBox now.
The problem is, at the moment the server connected to the GPS station is in the garage. I moved put the Magnavox in the garage because that's where the antenna wire is right now. Both antennas. The GPS antenna and the 420 MHz transceiver that will transmit DGPS corrections.
Anyway more on that later / elsewhere. The whole point of this page is to describe how to set up a virtual machine to run on a server, using VirtualBox.
I intend to try to get it going from the command line. In theory I should be able to open a VNC session to see the DOS window, let's see if the theory pans out.
Here we go.
Create a machine.
One CPU with 640K would be enough but I have to give it a minimum of 4MB! No network card. Minimum video RAM. No CDROM drive. This is so easy.
VBoxManage createvm --name MSDOS --ostype DOS --register VBoxManage modifyvm MSDOS --memory 1 --nic1 none --audio none VBoxManage modifyvm MSDOS --bioslogodisplaytime 1
The whole point is to talk to a Magnavox GPS receiver, and that happens on COM1
VBoxManage modifyvm MSDOS --uart1 0x3F8 4
Show the results of our labours
VBoxManage showvminfo MSDOS
Create virtual hard disk.
It does not have to be big. 5 megabytes should be plenty. "Fixed" means to pre-allocate the space. That makes the drive faster and hey, it's only 5 MB!
VBoxManage createhd --filename MSDOS.vdi --size 5 --variant Fixed
Connect the hard disk to the machine.
VBoxManage storagectl MSDOS --name IDE0 --add ide VBoxManage storageattach MSDOS --storagectl IDE0 --port 0 --device 0 --type hdd --medium MSDOS.vdi
Put the (virtual) MSDOS installer floppy into the (virtual) floppy drive
You can still download the installer from Microsoft MSDN! Cool. No need to root around in that box of 5.25" floppies! Not sure where the floppy drive is anyway.
VBoxManage storagectl MSDOS --name FD0 --add floppy VBoxManage openmedium floppy msdos.img VBoxManage storageattach MSDOS --type fdd --medium msdos.img
Fire it up.
VBoxHeadless MSDOS
Mount the image of the floppy drive and copy the contents to the virtual hard drive.