Javascript PC Emulator - FAQ

Which browser should I use to try the PC emulator ?

The following browsers are officially supported:

Your browser must support the W3C Typed Arrays. In case of doubt, upgrade to the latest version of your browser.

For best performance, your browser should support asm.js.

What is the expected boot time of Linux with the emulator ?

Here are some figures:

Browser Host Boot time (s)
Firefox 38 Core i5 4570 3.2 GHz 1.4
Firefox 40 beta Samsung Galaxy S4 9

How can I scroll back in the terminal ?

Use Ctrl-Up, Ctrl-Down, Ctrl-PageUp and Ctrl-PageDown.

How can I copy data to the Virtual Machine ?

  1. Copy your file content to the OS clipboard using your favorite text editor.
  2. Paste the data to the JS/Linux clipboard using the mouse (it is the text area on the right of the VM terminal).
  3. In the VM Linux shell do:
    cat < /dev/clipboard > /tmp/myfile
    Your text file is now copied to /tmp/myfile.
To copy binary data, you can uuencode it on the PC using (assuming you use Linux):
uuencode myfile myfile > myfile.txt
Then you copy myfile.txt to the Linux VM and uudecode it by doing:
uudecode < /dev/clipboard

How can I copy data from the Virtual Machine ?

The procedure is the reverse of the previous one:
  1. Copy your file to the clipboard:
    cat myfile > /dev/clipboard
  2. Select all the clipboard data and copy it to the host OS clipboard using the mouse over the text area on the right of the VM terminal.
  3. Paste the data in your favorite text editor
For binary files, you can uuencode in the VM and uudecode on the host.

When will there be network support ?

It is relatively easy to add a virtual network interface. The problem is to make it communicate with other hosts, so at this point it is not my priority. For example, due to security restrictions, it is only possible to communicate with the web site hosting the VM or with cooperating servers. Moreover, only specific types of network protocols can be handled because no raw TCP connection nor raw UDP packets can be sent due to API restrictions and security reasons.

Is it possible to emulate a VGA card and all the missing devices to launch say FreeDOS or Windows ?

Yes, it is possible but since the current VM is quite slow, only old OSes (such as Windows 3 or MSDOS) would be really usable.

Is there some source code available ?

In the technical notes, an archive is given which explains how to build the various binary images.

The readable source code of the JS PC emulator itself is not yet available. At this point, any mirroring or redistribution of the code needs my explicit permission.

Is my privacy respected ?

Yes. What you type in the Virtual Machine stays in your browser. No data is sent back to the server.

[Back to the PC emulator]