Installing BeOS 5.0.3 Professional in VirtualBox
Here are my notes on how to install version 5.0.3 Pro of BeOS in a virtual
machine (VM) using Oracle's VirtualBox, version 4.2.8 (update
20150828: got it working in 4.3.30). After much fiddling around with settings
and drivers, I got almost everything working really well, except sound which is
choppy.
Installing BeOS in VirtualBox
Install VirtualBox on your computer, as in the previous story about installing Haiku.
Then make a new virtual machine in the VirtualBox VM Manager, starting with
the Other/Other template. Adjust the settings for these items (this was the
hard part to figure out):
- Set up the new virtual machine with VT-x (general hardware virtual
machine support) turned off. You can turn it on after installation for
better speed. But leave "Nested Paging" turned off, it makes BeOS
unbootable on some Intel Core CPUs, though it works on more recent ones.
- Set the VM to 768MB memory (avoid the over 1GB of RAM BeOS bug).
- Just 1 CPU (unfortunately the VM will crash with an access to the $A000
video memory area if you have 2 virtual CPUs), so you can't get all the
multitasking goodness of BeOS. Also turn the multi-CPU related IO APIC
off (if it is on, then BeOS networking doesn't work).
- 32MB of video is fine, since it just runs in VESA mode, and only 16 bit
at that. The highest resolution I can get is 1280x1024x16. The other
possible resolutions are the ones listed in the BeOS safe mode boot menu
(hit space bar while booting to get it).
- BeOS needs an IDE controller, not a SATA one, to attach the virtual hard
disk storage to. The PIIX3 variety of IDE is way faster (factor of 10 or
more) than the newer emulated ones. Unfortunately Windows 2000 needs the
PIIX4 one (or may need a fresh install to force it to use PIIX3), which
BeOS can use but only very slowly. Linux can use either.
- For the network, use the Intel PRO/1000 T Server (82543GC) in the VM. It
will need later installation of a BeOS driver, but it does work well.
- If using VirtualBox NAT
mode, BeOS DHCP doesn't work so you need to manually specify IP addresses
etc, use a bootable Linux CD to find out which numbers get assigned. Mine
were Address 10.0.2.15, Mask 255.255.255.0, Gateway 10.0.2.2, DNS is your
usual one.
For better performance (and no mysterious dropped connections every few
minutes, making BeShare unuseable), instead of NAT use Bridged mode, which
will give the virtual machine its own presence and IP address on the
network. Note that the VirtualBox Windows installer has an option to
install the Bridged Mode Network feature, hope you had it selected when you
installed VirtualBox.
- Sounds - use Soundblaster 16 (SB16) emulation in VirtualBox.
- The emulated CD doesn't handle CDs with multiple tracks/sessions like
the real BeOS R5 Pro CD has. So use some other OS copy the partitions off
the BeOS CD, and make a fake hard drive with the data dd'd into separate
partitions. Then make a BeOS boot virtual floppy disk (I had a real one,
the Personal Edition may have a way of making one). Boot from the floppy,
hit the space bar to get the boot menu, and use it to select the fake CD
main partition for booting, then install BeOS on a different virtual drive
than the fake CD. Alternatively, you may have better luck using a "Personal Edition" of BeOS, which
comes in one file that you put onto a FAT32 formatted disk.
Now install BeOS into the virtual computer. Use BeOS's Drive Setup to
format a virtual disk partition with 2048 bytes per block. 4K blocks trigger
bugs and 1K is slow. There's also a maximum of 60GB volume size with plain
BeOS R5 due to a bug in mkbfs, use the Bone version of "mkbfs" to format larger
partitions. Finally, there's a whole disk maximum of 128GB due to the way BeOS
runs the IDE controller (the SCSI one can go to 2TB, but the VirtualBox SCSI
emulation doesn't work well enough to be useable).
Then install a few more things. It's best if you prepare by downloading
them all to an MSDOS FAT32 disk partition that the virtual machine can see
(boot up Knoppix in
the virtual machine using a virtual DVD .iso file, that will let you download
files and copy them to a virtual FAT32 partition, then reboot without the
virtual Knoppix DVD in the virtual DVD disc drive to get BeOS going, and use
BeOS to install the files).
- Video - use a VESA safe mode from the boot menu. Can make it automatic
by adding the line "mode 1024 768 16" (adjust resolution numbers to your
needs) to the file /boot/home/config/settings/kernel/drivers/vesa. Maximum
is 1280x1024x16.
- Fix the BeOS cache bug by editing
/boot/home/config/settings/kernel/drivers/kernel to include the line
"disk_cache_size 16384".
- Install the R5.0.3 update. BeOS5-5.0.0Pro-to-5.0.3-Update3-Pro-x86.zip
- Install the FAT file system improvement. FAT_filesystem_add-on_2001-12-11.zip
- Process Controller. Always useful. ProcessController3.1.pkg.bin
- CPU Fix - time calculations on high speed CPUs are wrong due to a bad
calculation, making all timing operations wrong. It affects things like
double clicking on Tracker columns. Install this patch to fix it, and also
adjust mouse settings until the timing feels right. cpu_fix_1.4.pkg.zip
- Updated time zone data from Linux TZ files, since the BeOS ones have the
wrong date for daylight savings time. They're stored in
/boot/beos/etc/timezones
- Install the BeOS R5 Intel Pro 1000 driver by Marcus Overhagen from
ipro1000_0.4.zip (available in many places, but apparently not BeBits now).
Use BeOS Network Preferences to set a static address, which is more
reliable than DHCP (which only works in Bridged mode, and depends on your
home network DHCP server being BeOS compatible).
- If using an ADSL modem to connect to the Internet, where the MTU is
less than the standard 1500 bytes, you may have dropped connections when
web browsing. This patch reduces the MTU to make data transfer more
reliable. ADSL-Upload-fix.pkg.zip
- Sounds - Install the SoundBlaster 16 driver for BeOS, with default IRQ,
DMA and other ports. It's a bit choppy in sound quality due to VirtualBox
bugs (other people have complained about this elsewhere). Also it causes a
crash on shutdown. So I usually turn off sound in the BeOS Media
Preferences (set in and out to "None"). The alternative would be to fix
VirtualBox. AC97 sound almost works; you hear a bit of the first sample,
but then it crashes BeOS. You may also wish to experiment with turning on
VT-d and using a BeOS compatible real sound card. sb16-1.2-x86.pkg
- Replace Tracker with OpenTracker for many desktop improvements.
OpenTracker-5.3.0-x86.zip
- Replace the mail system with Mail Daemon Replacement 2.3.0. 3.0.3 also
works (and has SSL encryption), but the install seems to be missing a few
files. mail_daemon_v2.3.0_x86.zip
There are still a few bugs that may cause problems. One is that the mouse
sometimes locks up and gets stuck in the top left corner. Restart the media
server to fix it. The keyboard still works so if you can Alt-Fn and Ctrl-tab
to a Terminal window, you can type in "/system/servers/input_server -q" to get
it working again, or use VNC to remotely move the mouse. The other problem is
that sometimes the Tracker application (which runs those desktop windows full
of file icons) gets stuck at 100% CPU. To fix that, use ProcessController to
quit application "Tracker" and then use ProcessController's menu option to
"Launch Tracker". After one quit and relaunch, Tracker seems to work properly
the rest of the time.
And that should be enough to get you started with a virtual BeOS system.
After that there are many other things to try, have a look at BeBits for things like BeShare, BePDF,
SeaMonkey/Firefox, VLC and so on. Besides chat, BeShare also lets you find yet
more BeOS related files.
Copyright © 2013 by Alexander G. M. Smith.