Year: 2013

I got passed a link to this new emulator, Virtual x86, a complete PC emulator in javascript. It is in it’s early phases, but it seems to emulate text mode and a single diskette or ISO ok. It can boot Linux or OpenBSD, but not any MS-DOS protected mode software I tried. And graphics don’t work…

But it’s 100% javascript! And open in that you can download the source (tarball,github) under a BSD style license! So naturally I made my own mirror…

So there has been all this talk as of late with NSA and special USB cables that embed microprocessors and wireless transmitters that send out everything that passes through them. not to mention video cables, that can do the same thing.

Apparently another favorite thing to hit is the BIOS, as you can load whatever OS on there you want, and the firmware is still active. The best of the best must be hacking peripheral firmware. Namely storage.

I was thinking after rebuilding the Mach disk, that back in the say it was insinuated that the changes from Net/2 to 386BSD 0.0 were quite minimal. So I figured I should take a look. The first thing to do would be to clean up Net/2’s kernel to look more like 386 BSD’s. This was trivial as there wasn’t much of anything structure wise done. Running the patch was pretty easy:

And I saw my old look at Mach+Lites. And of course there was a qcow disk image associated with some ancient version of Qemu which I can’t run on Wine on OS X. So I figured with a bit of fun I’d update the disk image to work with Qemu 1.7.0.

Luckily Qemu 0.15.1 works just fine for it’s qemu-img. So a quick

qemu-img convert -f qcow -O vmdk mach.img mach.vmdk

and I had my image. I’m not sure of what the NE2000 parameters that Mach can use to enable the network, but I do recall it was easier to just rebuild Qemu around them. However this time, I switched to the Mach kernel that utilized Linux device drivers to get a working network.

As always testing is very minimal, all I’ve done is installed MS-DOS 6.22 & Doom 1.1, and tested the SoundBlaster 16 emulation. And as with the pre-release versions, the adlib code is still broken. And Ive done the ‘better’ fix in this code regarding that.

I haven’t run anything else, including fun things like the PowerPC & OS X emulation, MIPS with Windows NT, or even trying anything x64 based as I’m sure it is still broken from back in the Qemu 0.90 days.