Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Recommendation for a simple x86 emulator and operating system

As a personal learning project, I want to port an existing x86 emulator library to JavaScript and then run a very simple operating system on top of it.

My only requirement for the library is that it should be written in C\C++, as I want to use emscripten and asm.js to compile the source files to JavaScript. The library should at least be able to interpret x86 opcodes; the specific environment details for JavaScript (memory, GUI, interrupts etc.) I can implement myself. The operating system doesn't have any requirement, as long as it is simple enough and can run on the emulator.

So far in my research, Softx86 seems like the most viable solution, as it seems simple enough to port to JavaScript (it only does CPU emulation). The simplest 16 bit real-mode operating system I can find is MikeOS, the only problem being that it requires a 386 processor, which Softx86 cannot emulate and I am not sure if they are completely compatible.

My question is if anyone knows an alternate combination of emulator-OS that is simple enough to be ported to JavaScript.

like image 282
Colin Dumitru Avatar asked May 27 '13 10:05

Colin Dumitru


1 Answers

For anyone who will come across this thread in the future, I've decided to port Fake86 to JavaScript, and use MS-DOS as the operating system.

You can see a live demo here

It runs very, very slowly, and currently only runs on Firefox, but it works nonetheless.

You can see the full source code here

like image 165
Colin Dumitru Avatar answered Sep 28 '22 16:09

Colin Dumitru