BeOS 4.5 DemoCD on V86 (Javascript X86 Emulator)


You may know about V86 - a X86 Emulator written in Javascript) : ( ).

It is quite decent even on an ancient Windows 7 netbook with a single core AMD Athlon II K125 and 2 GB of RAM!. There are a number of pre-built images available such as FreeDOS, Windows 95/98, ReactOS and a few BSD/Linux distributions. It is reported that Haiku boots in this emulator albeit rather slowly (30 minutes or so).

One can load, and boot from, local user defined floppy, hard-drive, and CD/DVD images. This makes it more useful for trying out operating systems than Fabrice Bellard’s JSLinux ( ).

I came across a BeOS 4.5 DemoCD iso image by pure chance and give it a try with mixed results. The bootloader loads up, displays the spash screen and the icons lights one after the other one up to the Magnifying Glass (boot volume has been mounted) one after which it displays the “Boot failure: The boot loader was unable to find a BeOS volume to boot from.” error message. Using safe mode to force CD-ROM booting only gets to a “Please put BeosOS CD in CD-ROM drive.” message.

I ended up playing around with safe made and the Kernel Debugging Land console to figure out the stumbling block but without success.

In its overall symptoms, the issue appears similar to a very old ticket ( ) about the bootloader not being able to find the boot volume when booting from CD-ROM under VMWare. The ticket has been closed a long time ago. However, going through the thread, there are pointers to the VMWare emulation of the optical drive not being able to handle multi-track optical discs (such as the BeOS discs) correctly.

Not that BeOS 4.5 still has relevance today - and the “purple” used for the splash screen looks kind of ugly today (inspiration for Google’s fuchsia/magenta?) - but it could offer a way for those with Chromebooks a way to experience the old BeOS…

I provided the information to the developer of V86 it maybe is an easy fix from the emulator side.

On the other hand, is there anyone remembering the ticket and how it was fixed?