2013-11-06 01:12:55 +01:00
<!doctype html>
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
< title > Virtual x86< / title >
2014-01-27 18:19:47 +01:00
< meta name = "viewport" content = "width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" >
2013-11-06 01:12:55 +01:00
2014-10-11 12:20:57 +02:00
< script src = "build/v86_all.js" > < / script >
2013-11-06 01:12:55 +01:00
< link rel = "stylesheet" href = "v86.css" >
< div >
< div id = "boot_options" >
2014-01-10 23:10:35 +01:00
< h4 > Quickstart< / h4 >
2017-03-15 19:25:38 +01:00
< input type = "button" value = "ReactOS (32 MB)" id = "start_reactos" >
2016-11-19 22:19:37 +01:00
- Restored from snapshot< br >
2017-03-04 22:06:23 +01:00
< input type = "button" value = "Windows 95 (6.7 MB)" id = "start_windows95" >
- Restored from snapshot< br >
< input type = "button" value = "FreeBSD 10.2 (13.0 MB)" id = "start_freebsd" >
2016-11-19 22:19:37 +01:00
- Restored from snapshot< br >
2016-05-28 20:03:12 +02:00
< input type = "button" value = "Oberon (16.0 MB)" id = "start_oberon" >
2016-07-18 04:37:12 +02:00
- Native Oberon 2.3.6 (< a href = "https://lists.inf.ethz.ch/pipermail/oberon/2013/006844.html" > via< / a > )< br >
2016-11-19 22:19:37 +01:00
< input type = "button" value = "Windows 98 (12.0 MB)" id = "start_windows98" >
2016-02-25 01:56:21 +01:00
- Including Minesweeper, additional sectors are loaded as needed< br >
2015-12-31 00:31:08 +01:00
< input type = "button" value = "Arch Linux (10.1 MB)" id = "start_archlinux" >
2016-02-25 01:56:21 +01:00
- A complete Arch Linux restored from a snapshot, additional files are loaded as needed< br >
2015-12-31 00:31:08 +01:00
< input type = "button" value = "KolibriOS (1.4 MB)" id = "start_kolibrios" >
2014-06-29 20:35:52 +02:00
- Graphical OS, takes about 60 seconds to boot< br >
2015-12-31 00:31:08 +01:00
< input type = "button" value = "Linux 2.6 (5.4 MB)" id = "start_linux26" >
2016-05-28 19:57:54 +02:00
- With busybox, Lua interpreter and test cases, takes about 20 seconds to boot< br >
2017-03-04 22:06:23 +01:00
< input type = "button" value = "Linux 3.18 (8.3 MB)" id = "start_linux3" >
2016-05-28 19:57:54 +02:00
- With internet access, telnet, ping, wget and links. Takes about 60 seconds to boot. Run < code > udhcpc< / code > for networking. Exchange files through < code > /mnt/< / code > .< br >
2015-11-13 00:29:51 +01:00
< input type = "button" value = "Windows 1.01 (1.4 MB)" id = "start_windows1" >
2014-01-10 23:10:35 +01:00
- Takes 1 second to boot< br >
2017-03-16 01:37:59 +01:00
< input type = "button" value = "MS-DOS 6.22 (3.4 MB)" id = "start_msdos" >
- Takes 10 seconds to boot. With Enhanced Tools, QBasic and everything from the FreeDOS image< br >
2015-12-31 00:31:08 +01:00
< input type = "button" value = "FreeDOS (0.7 MB)" id = "start_freedos" >
2014-01-10 23:10:35 +01:00
- With nasm, vim, debug.com, some games and demos, takes 1 second to boot< br >
2015-12-31 00:31:08 +01:00
< input type = "button" value = "OpenBSD (1.4 MB)" id = "start_openbsd" >
2015-01-14 00:45:17 +01:00
- Random boot floppy, takes about 60 seconds< br >
2015-12-31 00:31:08 +01:00
< input type = "button" value = "Solar OS (1.4 MB)" id = "start_solos" >
2015-09-21 03:27:05 +02:00
- Simple graphical OS< br >
2016-10-31 02:35:32 +01:00
< input type = "button" value = "Bootchess (0.2 MB)" id = "start_bootchess" >
- A tiny chess program written in the boot sector
2014-01-10 23:10:35 +01:00
2013-11-06 01:12:55 +01:00
< br >
2014-01-10 23:10:35 +01:00
< hr >
< h4 > Setup< / h4 >
< table >
< tr >
2017-04-02 22:14:03 +02:00
< td width = "350" > CD image< / td >
2016-01-01 17:50:13 +01:00
< td >
2014-01-10 23:10:35 +01:00
< input type = "file" id = "cd_image" >
< / td >
< / tr >
< tr >
< td > Floppy disk image< / td >
< td > < input type = "file" id = "floppy_image" > < br > < / td >
< / tr >
< tr >
< td > Hard drive disk image< / td >
< td > < input type = "file" id = "hd_image" > < br > < / td >
< / tr >
2017-04-02 22:14:03 +02:00
<!--
< tr >
< td > Multiboot kernel image (experimental)< / td >
< td > < input type = "file" id = "multiboot_image" > < br > < / td >
< / tr >
-->
2014-01-10 23:10:35 +01:00
< tr >
2016-02-25 01:56:21 +01:00
< td colspan = "2" > < small > < small > Disk images are not uploaded to the server< / small > < / small > < hr > < / td >
2014-01-10 23:10:35 +01:00
< / tr >
< tr >
< td > Memory size< / td >
< td >
2016-08-03 20:29:30 +02:00
< input id = "memory_size" type = "number" value = "128" min = "16" max = "2048" step = "16" > MB< br >
2014-01-10 23:10:35 +01:00
< / td >
< / tr >
< tr >
< td > Video Memory size< / td >
< td >
2014-07-12 20:21:28 +02:00
< input id = "video_memory_size" type = "number" value = "8" min = "1" max = "128" step = "1" > MB< br >
2014-01-10 23:10:35 +01:00
< / td >
< / tr >
< tr >
< td colspan = "2" > < hr > < / td >
< / tr >
< tr >
< td > Boot order< / td >
2016-01-01 17:50:13 +01:00
< td >
2014-01-10 23:10:35 +01:00
< select id = "boot_order" >
< option value = "213" > CD / Floppy / Hard Disk< / option >
< option value = "123" > CD / Hard Disk / Floppy< / option >
2014-07-02 03:31:35 +02:00
< option value = "231" > Floppy / CD / Hard Disk< / option >
< option value = "321" > Floppy / Hard Disk / CD< / option >
2014-01-10 23:10:35 +01:00
< option value = "312" > Hard Disk / Floppy / CD< / option >
< option value = "132" > Hard Disk / CD / Floppy< / option >
< / select >
< / td >
< / tr >
< / table >
2013-11-06 01:12:55 +01:00
< br >
2014-01-10 23:10:35 +01:00
< button id = "start_emulation" > Start Emulation< / button >
2013-11-06 01:12:55 +01:00
< / div >
2014-01-10 23:10:35 +01:00
2013-11-06 01:12:55 +01:00
< div id = "runtime_options" style = "display: none" >
< input type = "button" value = "Pause" id = "run" >
< input type = "button" value = "Reset" id = "reset" >
2014-09-25 01:03:11 +02:00
< input type = "button" value = "Exit" id = "exit" >
2013-11-06 01:12:55 +01:00
< input type = "button" value = "Send Ctrl-Alt-Del" id = "ctrlaltdel" >
2015-01-05 19:21:02 +01:00
< input type = "button" value = "Send Alt-Tab" id = "alttab" >
2014-01-10 23:10:35 +01:00
< input type = "button" value = "Get floppy image" id = "get_fda_image" >
2016-07-31 16:15:03 +02:00
< input type = "button" value = "Get second floppy image" id = "get_fdb_image" >
< input type = "button" value = "Get hard disk image" id = "get_hda_image" >
< input type = "button" value = "Get second hard disk image" id = "get_hdb_image" >
< input type = "button" value = "Get cdrom image" id = "get_cdrom_image" >
2015-01-19 22:21:13 +01:00
< input type = "button" value = "Save State" id = "save_state" >
2016-07-18 04:22:18 +02:00
< input type = "button" value = "Load State" id = "load_state" > < input type = "file" style = "display: none" id = "load_state_input" >
2015-01-19 22:21:13 +01:00
< input type = "button" value = "Memory Dump" id = "memory_dump" >
2014-07-13 01:37:30 +02:00
< input type = "button" value = "Disable mouse" id = "toggle_mouse" >
2013-11-06 01:12:55 +01:00
< input type = "button" value = "Lock mouse" id = "lock_mouse" >
< input type = "button" value = "Go fullscreen" id = "fullscreen" >
2013-12-22 22:21:37 +01:00
< input type = "button" value = "Take screenshot (only graphic modes)" id = "take_screenshot" >
2013-11-06 01:12:55 +01:00
2015-04-12 21:42:05 +02:00
< label >
2016-01-01 17:50:13 +01:00
Scale:
2015-04-12 21:42:05 +02:00
< input type = "number" min = "0.25" step = "0.25" value = "1.0" id = "scale" style = "width: 50px" >
< / label >
2014-01-10 23:10:35 +01:00
< br >
2015-04-12 21:42:05 +02:00
< label id = "change_fda" style = "display: none" >
2016-01-01 17:50:13 +01:00
Change floppy:
2015-04-12 21:42:05 +02:00
< input type = "file" >
< / label >
< label id = "change_cdrom" style = "display: none" >
2016-01-01 17:50:13 +01:00
Change CD:
2015-04-12 21:42:05 +02:00
< input type = "file" >
< / label >
2014-01-10 23:10:35 +01:00
< br >
2013-11-06 01:12:55 +01:00
< / div >
< pre style = "display: none" id = "loading" > < / pre >
< / div >
2017-03-17 20:24:01 +01:00
< div id = "screen_container" style = "display: none" >
2013-11-06 01:12:55 +01:00
< div id = "screen" > < / div >
< canvas id = "vga" > < / canvas >
< / div >
2015-04-12 21:42:05 +02:00
2014-02-20 22:46:57 +01:00
< input type = "text" class = "phone_keyboard" style = "display: none" >
2014-02-11 01:28:35 +01:00
< div id = "runtime_infos" style = "display: none" >
Running: < span id = "running_time" > 0s< / span > < br >
Speed: < span id = "speed" > 0< / span > kIPS< br >
Avg speed: < span id = "avg_speed" > 0< / span > kIPS< br >
< br >
2015-01-14 00:45:17 +01:00
< div id = "info_storage" style = "display: none" >
2015-01-21 03:22:04 +01:00
< b > IDE device (HDA or CDROM)< / b > < br >
2015-01-14 00:45:17 +01:00
Sectors read: < span id = "info_storage_sectors_read" > 0< / span > < br >
Bytes read: < span id = "info_storage_bytes_read" > 0< / span > < br >
Sectors written: < span id = "info_storage_sectors_written" > 0< / span > < br >
Bytes written: < span id = "info_storage_bytes_written" > 0< / span > < br >
Status: < span id = "info_storage_status" > < / span > < br >
2014-02-11 01:28:35 +01:00
< br >
< / div >
2015-01-14 00:45:17 +01:00
< div id = "info_filesystem" style = "display: none" >
< b > 9p Filesystem< / b > < br >
Bytes read: < span id = "info_filesystem_bytes_read" > 0< / span > < br >
Bytes written: < span id = "info_filesystem_bytes_written" > 0< / span > < br >
Last file: < span id = "info_filesystem_last_file" style = "word-wrap: break-word" > < / span > < br >
Status: < span id = "info_filesystem_status" > < / span > < br >
2014-02-11 01:28:35 +01:00
< br >
< / div >
2015-03-07 05:30:40 +01:00
< div id = "info_network" style = "display: none" >
< b > Network< / b > < br >
Bytes received: < span id = "info_network_bytes_received" > 0< / span > < br >
Bytes transmitted: < span id = "info_network_bytes_transmitted" > 0< / span > < br >
< br >
< / div >
2014-02-11 01:28:35 +01:00
< b > VGA< / b > < br >
Mode: < span id = "info_vga_mode" > < / span > < br >
Resolution: < span id = "info_res" > -< / span > < br >
BPP: < span id = "info_bpp" > -< / span > < br >
< br >
2015-01-14 00:45:17 +01:00
Mouse: < span id = "info_mouse_enabled" > No< / span > < br >
2014-02-11 01:28:35 +01:00
<!-- Keyboard: <span id="info_keyboard_enabled"> - </span><br> -->
2017-03-23 18:12:35 +01:00
< div id = "description" style = "display: none" > < / div >
2014-02-11 01:28:35 +01:00
< / div >
2015-03-07 05:43:18 +01:00
< div id = "filesystem_panel" style = "display: none" >
< label title = "Files will appear in / of the 9p filesystem" >
Send files to emulator< br >
< input type = "file" id = "filesystem_send_file" multiple >
< / label >
< br > < br >
< label >
Get file from emulator< br >
< input type = "text" id = "filesystem_get_file" placeholder = "Absolute path" >
< / label >
< / div >
2014-01-27 18:19:47 +01:00
< br style = "clear:both" > < br >
2016-02-24 20:13:19 +01:00
< textarea cols = "40" rows = "12" id = "serial" style = "display: none" > This is the serial console. Whatever you type or paste here will be sent to COM1.
2014-01-10 23:10:35 +01:00
In Linux it can be accessed with `cat /dev/ttyS0`
< / textarea >
2014-01-11 00:40:43 +01:00
< br style = "clear:both" >
2016-01-22 23:54:02 +01:00
< code > Version: < a href = "https://github.com/copy/v86/commits/53caefc" > 53caefc< / a > (Jan 22, 2016 23:01)< / a > < / code >
2014-01-10 23:10:35 +01:00
< hr >
2016-01-01 17:50:13 +01:00
< a href = "debug.html" > Enable debug< / a >
2014-01-10 23:10:35 +01:00
—
2016-01-01 17:50:13 +01:00
< a href = "https://github.com/copy/v86/blob/master/Readme.md" > Readme< / a >
2014-01-10 23:10:35 +01:00
—
2016-01-01 17:50:13 +01:00
< a href = "https://github.com/copy/v86" > Project on Github< / a >
2014-01-10 23:10:35 +01:00
—
2016-01-01 17:50:13 +01:00
< a href = "https://github.com/copy/v86#compatibility" > Compatibility< / a >
2014-01-10 23:10:35 +01:00
—
2016-01-01 17:50:13 +01:00
< a href = "./screenshots/" > Screenshots< / a >
2013-11-06 01:12:55 +01:00