retrowin32 is a win32 emulator; you give
it a Windows
.exe file and it runs it on a Mac or in a browser.
I've written a few blog posts about it and this page serves as an index of them:
- 2022/10: Introductory post: the initial motivation of the project.
- 2023/01: Emulating win32: the high-level approaches one could take to emulate Windows.
- 2023/02: Progress report: WebAssembly vs native, testing, and some Rust trickery.
- 2023/05: async, DLL loading, tracing execution, and Zig: a grab bag of topics.
- 2023/08: Emulating x86 on x64 on aarch64, how to run 32-bit x86 within an x86-64 process.