Skip to content

Commit

Permalink
Update windows-xp.md
Browse files Browse the repository at this point in the history
  • Loading branch information
spetterman66 authored and copy committed Dec 3, 2023
1 parent 611cb61 commit ba4b2ec
Showing 1 changed file with 10 additions and 12 deletions.
22 changes: 10 additions & 12 deletions docs/windows-xp.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,29 @@
*Most of this document also applies to Windows 2000.*

You can download Windows 2000 from [WinWorld](https://winworldpc.com/download/413638c2-8d18-c39a-11c3-a4e284a2c3a5).

Use QEMU to create `winxp.img`:

```
qemu-img create winxp.img 2G
qemu-system-x86_64 -m 512 -drive file=winxp.img,format=raw -cdrom en_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73974.iso
```

Follow setup instructions.

The next step fixes `Uncaught RangeError: Maximum call stack size exceeded` in Chrome during Windows 2000/XP boot in v86.
Follow the setup instructions.
This step fixes the error `Uncaught RangeError: Maximum call stack size exceeded` in Chromium during Windows 2000/XP startup in v86.

After installation change computer type to "Standard PC" as described [here](http://web.archive.org/web/20220528021535/https://www.scm-pc-card.de/file/manual/FAQ/acpi_uninstallation_windows_xp_english.pdf):
Start > RightClick "My Computer" > Manage >
Device Manager > Computer > RightClick "ACPI Uniprocessor PC" > Update Driver... >
After installation, change the computer type to "Standard PC" as described [here](http://web.archive.org/web/20220528021535/https://www.scm-pc-card.de/file/manual/FAQ/acpi_uninstallation_windows_xp_english.pdf):
Start > Right Click "My Computer" > Manage >
Device Manager > Computer > Right Click "ACPI Uniprocessor PC" > Update Driver... >
No, not this time > Next > Install from a list or specific location (Advanced) > Next >
Don't search. I will choose the driver to install. > Next > Standard PC > Next > Finish.
Restart the VM, follow multiple "Found New Hardware Wizard" dialogs with default options.

Now `winxp.img` is ready for v86. You can use [the website](https://copy.sh/v86/) to run it:
Specify `winxp.img` as a hard disk and optionally set memory size to 512 MB.
Or run it in a custom html file as described below.
Now, `winxp.img` is ready for v86. You can use [the website](https://copy.sh/v86/) to run it:
Specify `winxp.img` as a hard disk, and optionally set the memory size to 512 MB.
Or run it in a custom HTML file as described below.

Get seabios.bin and vgabios.bin from [here](https://github.com/copy/v86/tree/master/bios),
get libv86.js and v86.wasm from [releases](https://github.com/copy/v86/releases/tag/latest).
and get libv86.js and v86.wasm from [releases](https://github.com/copy/v86/releases/tag/latest).
Create `winxp.htm` with this content (assuming all the files are in the same folder):

```html
Expand Down Expand Up @@ -57,7 +55,7 @@ onload = function()
</div>
```

To open this html file locally a HTTP server is needed. The standard Python server `python -m http.server` doesn't support HTTP range requests.
To open this HTML file locally, a HTTP server is needed. The standard Python server `python -m http.server` doesn't support HTTP range requests.
You can use [http-server](https://www.npmjs.com/package/http-server) or [devd](https://github.com/cortesi/devd).
Start the server (from the same folder as `winxp.htm`):
```
Expand Down

0 comments on commit ba4b2ec

Please sign in to comment.