2013-11-06 01:12:55 +01:00
<!doctype html>
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
2024-10-05 17:43:47 -06:00
< title > v86< / 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" >
2020-12-31 19:14:34 -06:00
< meta name = "description" content = "Run KolibriOS, Linux or Windows 98 in your browser" >
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" >
2024-10-18 16:03:48 -06:00
< div id = "filter" >
Family:
< label > < input id = filter_linux type = checkbox > Linux< / label >
< label > < input id = filter_bsd type = checkbox > BSD< / label >
< label title = "Microsoft Windows" > < input id = filter_windows type = checkbox > Windows< / label >
< label > < input id = filter_unix type = checkbox > Unix-like< / label >
< label > < input id = filter_dos type = checkbox > DOS< / label >
< label > < input id = filter_custom type = checkbox > Custom< / label >
<!-- <label><input type=checkbox> Hobby OS</label> -->
UI:
< label title = "Graphical desktop" > < input id = filter_graphical type = checkbox > Graphical< / label >
< label title = "Text-based or serial console only" > < input id = filter_text type = checkbox > Text< / label >
Medium:
< label title = "Boots from floppy disk" > < input id = filter_floppy type = checkbox > Floppy< / label >
< label title = "Boots from CD-ROM" > < input id = filter_cd type = checkbox > CD< / label >
< label title = "Boots from hard disk" > < input id = filter_hd type = checkbox > HD< / label >
Size:
< label title = "Fits it bootsector" > < input id = filter_bootsector type = checkbox > 512 B< / label >
< label > < input id = filter_lt5mb type = checkbox > < 5 MB< / label >
< label > < input id = filter_gt5mb type = checkbox > > 5 MB< / label >
Status:
< label title = "Most recent release is younger than 10 years" > < input id = filter_modern type = checkbox > Modern< / label >
< label title = "No release in 10 years" > < input id = filter_historic type = checkbox > Historic< / label >
License:
< label > < input id = filter_opensource type = checkbox > Open-Source< / label >
< label > < input id = filter_proprietary type = checkbox > Proprietary< / label >
Arch:
< label > < input id = filter_16bit type = checkbox > 16-bit< / label >
< label > < input id = filter_32bit type = checkbox > 32-bit< / label >
<!-- <label><input type=checkbox> Microkernel</label> -->
<!-- <label title="Uses a saved memory dump to skip the boot process"><input type=checkbox> skip boot process</label> -->
<!-- <label title="Supports networking (in v86)"><input type=checkbox> networking</label>
< label title = "Supports audio output (in v86)" > < input type = checkbox > audio< / label >
< label title = "Supports the serial console (in v86)" > < input type = checkbox > serial< / label >
< label title = "Supports filesharing using virtio-9p (in v86)" > < input type = checkbox > 9pfs< / label > -->
Lang:
< label title = "Written in assembly language" > < input id = filter_asm type = checkbox > ASM< / label >
< label title = "Written in C" > < input id = filter_c type = checkbox > C< / label >
< label title = "Written in C++" > < input id = filter_cpp type = checkbox > C++< / label >
< label title = "Written in other languages" > < input id = filter_other_lang type = checkbox > Other< / label >
<!-- <label><input type=checkbox> contains: games</label>
< label > < input type = checkbox > contains: demos< / label >
< label > < input type = checkbox > contains: compilers< / label >
< label > < input type = checkbox > contains: web browsers< / label > -->
< div style = "text-align: right; float: right" > < a href = "#setup" > Skip to custom settings< / a > < / div >
< br style = "clear: both" >
< / div >
< hr >
2020-12-31 19:14:34 -06:00
< table id = "oses" >
2024-10-18 16:03:48 -06:00
< thead >
< tr >
< th > Name< / th >
< th > Size< / th >
< th > UI< / th >
< th > Family< / th >
< th > Arch< / th >
< th > Status< / th >
< th > Source< / th >
< th > Lang< / th >
< th > Medium< / th >
< th > Notes< / th >
< / tr >
< / thead >
< tr id = "start_archlinux" > < td > < a href = "?profile=archlinux" > Arch Linux< / a > < td > 15+ MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > Linux< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C< / td > < td > 9pfs< / td > < td > Xorg, Firefox, various compilers and more< / td > < / tr >
< tr id = "start_dsl" > < td > < a href = "?profile=dsl" > Damn Small Linux< / a > < td > 50 MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Linux< / td > < td > 32-bit< / td > < td > Historic< / td > < td > Open-source< / td > < td > C< / td > < td > CD< / td > < td > 4.11.rc2 with Firefox 2.0< / td > < / tr >
< tr id = "start_buildroot" > < td > < a href = "?profile=buildroot" > Buildroot Linux< / a > < td > 4.9 MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > Linux< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C< / td > < td > bzImage< / td > < td > Lua, ping, curl, telnet< / td > < / tr >
< tr id = "start_freebsd" > < td > < a href = "?profile=freebsd" > FreeBSD< / a > < td > 16+ MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > BSD< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C< / td > < td > HD< / td > < td > FreeBSD 12.0< / td > < / tr >
< tr id = "start_openbsd" > < td > < a href = "?profile=openbsd" > OpenBSD< / a > < td > 11+ MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > BSD< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C< / td > < td > HD< / td > < td > OpenBSD 6.6< / td > < / tr >
< tr id = "start_fiwix" > < td > < a href = "?profile=fiwix" > FiwixOS< / a > < td > 15+ MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > Unix-like< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C< / td > < td > HD< / td > < td > With Doom< / td > < / tr >
< tr id = "start_serenity" > < td > < a href = "?profile=serenity" > SerenityOS< / a > < td > 16+ MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Unix-like< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C++< / td > < td > HD< / td > < td > Web browser, various games and demos< / td > < / tr >
< tr id = "start_haiku" > < td > < a href = "?profile=haiku" > Haiku< / a > < td > 41+ MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > BeOS< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C++< / td > < td > HD< / td > < td > Networking (WebPositive), OCaml, 2048, NetHack< / td > < / tr >
< tr id = "start_tinyaros" > < td > < a href = "?profile=tinyaros" > Tiny Aros< / a > < td > 17+ MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > AmigaOS< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C< / td > < td > CD< / td > < td > AmigaOS-like graphical OS< / td > < / tr >
< tr id = "start_reactos" > < td > < a href = "?profile=reactos" > ReactOS< / a > < td > 17+ MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Windows-like< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > C++< / td > < td > HD< / td > < td > QtWeb, LBreakout2, OpenTTD, Bochs, TCC< / td > < / tr >
< tr id = "start_windows1" > < td > < a href = "?profile=windows1" > Windows 1.01< / a > < td > 0.7 MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Windows< / td > < td > 16-bit< / td > < td > Historic< / td > < td > Proprietary< / td > < td > ASM, C< / td > < td > Floppy< / td > < td > Reversi, Paint< / td > < / tr >
< tr id = "start_windows95" > < td > < a href = "?profile=windows95" > Windows 95< / a > < td > 19+ MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Windows< / td > < td > 32-bit< / td > < td > Historic< / td > < td > Proprietary< / td > < td > ASM, C< / td > < td > HD< / td > < td > Age of Empires, FASM, POV-Ray, Hover!< / td > < / tr >
< tr id = "start_windows2000" > < td > < a href = "?profile=windows2000" > Windows 2000< / a > < td > 23+ MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Windows< / td > < td > 32-bit< / td > < td > Historic< / td > < td > Proprietary< / td > < td > C++< / td > < td > HD< / td > < td > IE 5, Pinball< / td > < / tr >
< tr id = "start_msdos" > < td > < a href = "?profile=msdos" > MS-DOS 6.22< / a > < td > 2.4+ MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > DOS< / td > < td > 16-bit< / td > < td > Historic< / td > < td > Proprietary< / td > < td > ASM< / td > < td > HD< / td > < td > Doom, Sim City, OCaml 1.0, Turbo C and more< / td > < / tr >
< tr id = "start_freedos" > < td > < a href = "?profile=freedos" > FreeDOS< / a > < td > 0.6 MB< / td >
< td > < span class = tui_icon > < / span > < / td > < td > DOS< / td > < td > 16-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > ASM, C< / td > < td > Floppy< / td > < td > nasm, vim, debug.com, Rogue, various demos< / td > < / tr >
< tr id = "start_kolibrios" > < td > < a href = "?profile=kolibrios" > KolibriOS< / a > < td > 1.3 MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Custom< / td > < td > 32-bit< / td > < td > Modern< / td > < td > Open-source< / td > < td > ASM< / td > < td > Floppy< / td > < td > Various apps, games and demos< / td > < / tr >
< tr id = "start_qnx" > < td > < a href = "?profile=qnx" > QNX 4.05< / a > < td > 1.4 MB< / td >
< td > < span class = gui_icon > < / span > < / td > < td > Custom< / td > < td > 32-bit< / td > < td > Historic< / td > < td > Proprietary< / td > < td > C< / td > < td > Floppy< / td > < td > 1999 demo disk< / td > < / tr >
2020-12-31 19:14:34 -06:00
< / table >
2014-01-10 23:10:35 +01:00
< hr >
2024-10-18 16:03:48 -06:00
< h4 id = "setup" > Setup< / h4 >
2014-01-10 23:10:35 +01:00
< table >
< tr >
2024-09-20 17:09:15 -06:00
< td width = "350" > < label for = "cdrom_image" > CD image< / label > < / td >
2016-01-01 17:50:13 +01:00
< td >
2024-09-20 17:09:15 -06:00
< input type = "file" id = "cdrom_image" >
2014-01-10 23:10:35 +01:00
< / td >
< / tr >
< tr >
2020-12-31 19:14:34 -06:00
< td > < label for = "floppy_image" > Floppy disk image< / label > < / td >
2014-01-10 23:10:35 +01:00
< td > < input type = "file" id = "floppy_image" > < br > < / td >
< / tr >
< tr >
2023-09-28 16:12:01 -05:00
< td > < label for = "hda_image" > Hard disk image< / label > < / td >
2020-09-06 14:01:50 -05:00
< td > < input type = "file" id = "hda_image" > < br > < / td >
2014-01-10 23:10:35 +01:00
< / tr >
2017-04-02 15:14:03 -05:00
<!--
< tr >
2020-12-31 19:14:34 -06:00
< td > < label for = "multiboot_image" > Multiboot kernel image (experimental)< / td >
2017-04-02 15:14:03 -05:00
< td > < input type = "file" id = "multiboot_image" > < br > < / td >
< / tr >
-->
2022-03-10 21:28:53 +01:00
< tr >
< td > < label for = "bzimage" > Kernel image (bzimage)< / label > < / td >
< td > < input type = "file" id = "bzimage" > < br > < / td >
< / tr >
< tr >
< td > < label for = "initrd" > initrd< / label > < / td >
< td > < input type = "file" id = "initrd" > < br > < / td >
< / tr >
2024-08-24 18:44:52 +02:00
< tr >
< td > < label for = "bios" > BIOS< / label > < / td >
< td > < input type = "file" id = "bios" > < br > < / td >
< / tr >
2017-04-02 15:14:03 -05:00
2014-01-10 23:10:35 +01:00
< tr >
2020-12-31 19:14:34 -06:00
< td colspan = "2" > < small > Disk images are not uploaded to the server< / small > < hr > < / td >
2014-01-10 23:10:35 +01:00
< / tr >
< tr >
2020-12-31 19:14:34 -06:00
< td > < label for = "memory_size" > Memory size< / label > < / td >
2014-01-10 23:10:35 +01:00
< 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 >
2024-09-20 23:02:13 -06:00
< td > < label for = "vga_memory_size" > Video Memory size< / label > < / td >
2014-01-10 23:10:35 +01:00
< td >
2024-09-20 23:02:13 -06:00
< input id = "vga_memory_size" type = "number" value = "8" min = "1" max = "128" step = "1" > MB< br >
2014-01-10 23:10:35 +01:00
< / td >
< / tr >
2020-12-31 19:14:34 -06:00
< tr >
2024-10-16 14:17:09 -06:00
< td > < label for = "relay_url" > Networking proxy< / label > < br >
Presets: < a id = "network_none" > none< / a > , < a id = "network_relay" > public relay< / a > , < a id = "network_wisp" > wisp< / a > , < a id = "network_fetch" > fetch< / a > < / td >
2020-12-31 19:14:34 -06:00
< td >
2024-09-20 23:08:03 -06:00
< input id = "relay_url" type = "text" value = "wss://relay.widgetry.org/" >
2020-12-31 19:14:34 -06:00
< / td >
< / tr >
2014-01-10 23:10:35 +01:00
< tr >
< td colspan = "2" > < hr > < / td >
< / tr >
< tr >
2020-12-31 19:14:34 -06:00
< td > < label for = "disable_audio" > Disable audio< / label > < / td >
< td >
< input id = "disable_audio" type = "checkbox" > < br >
< / td >
< / tr >
< tr >
2024-09-20 23:02:13 -06:00
< td > < label for = "acpi" > Enable ACPI (experimental)< / label > < / td >
2020-12-31 19:14:34 -06:00
< td >
2024-09-20 23:02:13 -06:00
< input id = "acpi" type = "checkbox" > < br >
2020-12-31 19:14:34 -06:00
< / td >
< / tr >
2014-01-10 23:10:35 +01:00
< tr >
< td colspan = "2" > < hr > < / td >
< / tr >
< tr >
2020-12-31 19:14:34 -06:00
< td > < label for = "boot_order" > Boot order< / label > < / td >
2016-01-01 17:50:13 +01:00
< td >
2014-01-10 23:10:35 +01:00
< select id = "boot_order" >
2023-08-25 17:16:08 -06:00
< option value = "0" > Auto< / option >
2014-01-10 23:10:35 +01:00
< 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-24 16:03:11 -07: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" >
2023-09-28 16:12:01 -05:00
< input type = "button" value = "Get CD-ROM image" id = "get_cdrom_image" >
2023-08-25 17:52:52 -06:00
< input type = "button" value = "Insert floppy image" id = "change_fda_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" >
2022-07-26 20:01:05 +09:00
< input type = "button" value = "Capture network traffic" id = "capture_network_traffic" title = "In wireshark: file -> import from hex -> tick direction indication, timestamp %s.%f" >
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" >
2022-06-03 18:40:59 +07:00
< input type = "button" value = "Take screenshot" id = "take_screenshot" >
2021-12-16 14:33:34 -05:00
< input type = "button" value = "Mute" id = "mute" >
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 >
2023-08-26 17:19:10 -06:00
< br > < br >
2013-11-06 01:12:55 +01:00
< / div >
< pre style = "display: none" id = "loading" > < / pre >
< / div >
2017-03-17 14:24:01 -05:00
< div id = "screen_container" style = "display: none" >
2013-11-06 01:12:55 +01:00
< div id = "screen" > < / div >
< canvas id = "vga" > < / canvas >
2017-11-09 18:11:16 +01:00
< div style = "position: absolute; top: 0; z-index: 10" >
< textarea class = "phone_keyboard" > < / textarea >
< / div >
2013-11-06 01:12:55 +01:00
< / div >
2015-04-12 21:42:05 +02:00
2014-02-11 01:28:35 +01:00
< div id = "runtime_infos" style = "display: none" >
Running: < span id = "running_time" > 0s< / span > < br >
2020-12-31 19:14:29 -06:00
Speed: < span id = "speed" > 0< / span > mIPS< br >
Avg speed: < span id = "avg_speed" > 0< / span > mIPS< br >
2014-02-11 01:28:35 +01:00
< br >
2015-01-14 00:45:17 +01:00
< div id = "info_storage" style = "display: none" >
2023-09-28 16:12:01 -05:00
< b > IDE device< span id = "ide_type" > < / span > < / 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 >
2018-06-11 13:00:23 -05:00
< div style = "white-space: nowrap; overflow-x: hidden" > Last file: < span id = "info_filesystem_last_file" > < / span > < / div >
2015-01-14 00:45:17 +01:00
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 >
< br >
2015-01-14 00:45:17 +01:00
Mouse: < span id = "info_mouse_enabled" > No< / span > < br >
2017-03-23 12:12:35 -05:00
2020-12-31 19:14:34 -06:00
< div id = "description" style = "display: none" > < br > < / 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" >
2020-12-31 19:14:34 -06:00
< label >
2015-03-07 05:43:18 +01:00
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 >
2020-12-31 19:14:34 -06:00
< br style = "clear: both" > < br >
2014-01-10 23:10:35 +01:00
2020-12-31 19:14:29 -06:00
< div id = "terminal" > < / div >
2014-01-10 23:10:35 +01:00
2020-12-31 19:14:34 -06:00
< br style = "clear: both" >
2021-03-30 04:35:27 -05:00
< code > Version: < a href = "https://github.com/copy/v86/commits/98e7110c2" > 98e7110c2< / a > (Feb 16, 2021 12:02)< / 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 >