Quick-and-dirty wrapper that tries to run 32-bit Windows command-line executables on Linux
Go to file
Anghelo Carvajal ca9364a0df
Add trailing periods support to `FindFirstFileA` (#75)
* idk

* meh

* Implement trailing periods on FindFirstFileA

* ah?

* Remove assert
2024-05-27 19:51:24 -06:00
.github/workflows Update link to gc/wii compilers (#72) 2024-03-22 22:30:18 +00:00
cmake Explicitly link std::filesystem as needed (#14) 2022-07-08 02:02:27 +09:00
dll Add trailing periods support to `FindFirstFileA` (#75) 2024-05-27 19:51:24 -06:00
test 3 funcs needed for some mwcc compilers (#22) 2022-09-24 23:59:30 +09:00
.clang-format Everything needed to run simple Rust programs (#40) 2023-09-10 12:07:23 +09:00
.clang-tidy Everything needed to run simple Rust programs (#40) 2023-09-10 12:07:23 +09:00
.dockerignore Add Dockerfile + build action (#3) 2022-06-30 20:42:24 +01:00
.gitignore Implement enough process handling logic to make psyq4.0 happy (#46) 2023-09-18 15:05:47 +09:00
CMakeLists.txt [TEMPORARY FIX] Fix issues with the stack not being resized correctly (#65) 2023-12-23 15:34:37 -07:00
Dockerfile Build a wibo_debug binary as well (#51) 2023-10-08 12:46:26 -04:00
LICENSE first commit 2022-06-13 02:20:18 +02:00
README.md Fixed grammatical error in README.md (#67) 2024-01-10 22:59:53 +09:00
common.h Handle special handle value from FindFirstFileA in FindNextFileA (#52) 2023-10-08 13:08:53 -04:00
files.cpp Add trailing periods support to `FindFirstFileA` (#75) 2024-05-27 19:51:24 -06:00
files.h Everything needed to run simple Rust programs (#40) 2023-09-10 12:07:23 +09:00
handles.cpp 3 funcs needed for some mwcc compilers (#22) 2022-09-24 23:59:30 +09:00
handles.h Implement enough process handling logic to make psyq4.0 happy (#46) 2023-09-18 15:05:47 +09:00
loader.cpp Minor cppcheck lint fixes 2023-10-16 20:08:52 +02:00
main.cpp [TEMPORARY FIX] Fix issues with the stack not being resized correctly (#65) 2023-12-23 15:34:37 -07:00
processes.cpp Implement enough process handling logic to make psyq4.0 happy (#46) 2023-09-18 15:05:47 +09:00
processes.h Implement enough process handling logic to make psyq4.0 happy (#46) 2023-09-18 15:05:47 +09:00
strutil.cpp GetLocaleInfoW (#47) 2023-09-22 09:13:56 +09:00
strutil.h GetLocaleInfoW (#47) 2023-09-22 09:13:56 +09:00

README.md

wibo

A minimal, low-fuss wrapper that can run really simple command-line 32-bit Windows binaries on Linux - with less faff and fewer dependencies than WINE.

Don't run this on any untrusted executables, I implore you. (Or probably just don't run it at all... :p)

cmake -B build
cmake --build build
build/wibo

Rough to-do list:

  • Implement more APIs
  • Do something intelligent with Windows HANDLEs
  • Convert paths in environment variables (and the structure of PATH itself, maybe) to Windows format
  • Implement PE relocations rather than just failing unceremoniously
  • Make the PE loader work for DLLs as well in case we ever want to load some

Related projects: