Skip to content

Commit

Permalink
README.md: Get rid of the numbering (stg refresh)
Browse files Browse the repository at this point in the history
  • Loading branch information
AndreRH committed Apr 14, 2024
1 parent 65af657 commit 05a9a11
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ Make sure to leave a :star: :)
This is Hangover, a project started by André Zwing and Stefan Dösinger in 2016 that currently can
run x86_32 Windows applications on aarch64 Wine.

### 1) How it works
### How it works
Hangover uses various emulators as DLLs (pick one that suits your needs, e.g. works for you) to only emulate the application you want to run instead of emulating a complete Wine installation.

As soon as the application does a Windows/Wine system call, say NtUserCreateWindowEx, it's executed outside the emulator (read non-emulated, fast, native). Even better, everything Unix related is never emulated.

In short, we break out of emulation at the win32 syscall or wine unix call level for performance reasons, which is enabled by the WoW64 support in Wine.

### 2) Status
### Status
While the overall stability was improved, expect issues.

For Benchmarks see [here](benchmarks/readme.md). They show that the Hangover approach works as expected, as only emulating the application instead of a complete Wine installation has benefits. It's especially visible with box64cpu vs. Wine running under Box64.
Expand All @@ -34,22 +34,22 @@ Emulator integrations:
- [Box64](https://github.com/ptitSeb/box64/): Mostly done, but depends on the early 32-bit emulation of Box64
- [Blink](https://github.com/jart/blink): started, not part of this repository yet

### 3) Discord
A Discord Server is available for contributors and financial supporters (see point 8 below).
### Discord
A Discord Server is available for contributors and financial supporters (see "Financial Contributiors" below).
It provides advanced user support, development discussions and more.

### 4) Packages
### Packages
__Debian__ 11 & 12 (also usable for Raspbian, Armbian, ...) and __Ubuntu__ 22.04 & 23.10 & 24.04 are attached to the Github Release.

__Termux__ packages can be found in the [Termux User Repository](https://github.com/termux-user-repository/tur).

__Alpine__ package can be found in the [Alpine Testing Repository](https://gitlab.alpinelinux.org/alpine/aports/-/tree/master/testing/hangover-wine).
It's only hangover-wine without box64cpu.dll for now, but you can copy over box64cpu.dll and/or libwow64fex.dll from extracted debian packages or compile them yourself.

### 5) How to build
### How to build
For build instructions see [here](docs/COMPILE.md).

### 6) Running
### Running
You can add the following environment variables:

* HODLL to select the emulator dll:
Expand All @@ -61,7 +61,7 @@ You can add the following environment variables:
* HOLIB to set full path of the library, e.g. HOLIB=/path/to/libqemu-i386.so
* QEMU_LOG to set QEMU log channels, find some options [here.](https://github.com/AndreRH/qemu/blob/v5.2.0/util/log.c#L297)

#### 6.1) Box64
#### Box64
box64cpu.dll currently is the default for i386 emulation, so it's simply:

```bash
Expand All @@ -70,7 +70,7 @@ $ wine your_x86_application.exe

If you have issues with the default, please try one of the other emulators below.

#### 6.2) QEMU
#### QEMU
Until the critical section issue is solved it is highly recomended to limit execution to 1 core with
"taskset -c 1" for Qemu emulation:

Expand All @@ -79,17 +79,17 @@ $ HODLL=xtajit.dll taskset -c 1 wine your_x86_application.exe
$ HODLL=wowarmhw.dll taskset -c 1 wine your_arm_application.exe
```

#### 6.3) FEX, PE
#### FEX, PE
```bash
$ HODLL=libwow64fex.dll wine your_x86_application.exe
```

### 7) Known issues
### Known issues

* QEMU: CriticalSection doesn't work reliably and other instabilities
* FEX, PE: Doesn't support CLI applications, as it can't handle writing to the console

### 8) Financial Contributors
### Financial Contributors

Become a financial contributor and help me sustain this project:

Expand Down

0 comments on commit 05a9a11

Please sign in to comment.