nepx / halfix

x86 PC emulator that runs both natively and in the browser, via WebAssembly
https://nepx.github.io/halfix-demo/
GNU General Public License v3.0
669 stars 86 forks source link

Visual Studio project? #28

Open Pixelsuft opened 3 years ago

Pixelsuft commented 3 years ago

Is it possible to create Visual Studio Project for Windows builds?

nepx commented 3 years ago

I currently don't have Visual Studio installed (I'm working from Linux), so I apologize for not having these files set up. It can build on Windows, you just need MinGW+zlib+SDL+Node.js.

The codebase currently uses a number of GCC/Clang-isms (e.g. __attribute__((something)), some intrinsics for the bit functions), and that might not fly with MSVC.

Pixelsuft commented 3 years ago

Yes, I can compile it.

Same question: Is possible to create module for python, because halfix is written on C?

nepx commented 3 years ago

Same question: Is possible to create module for python, because halfix is written on C?

Of course. I don't know very much Python, but creating bindings seems feasible, the emulator is reasonably portable and well-behaved. Bear in mind that because the many fields are statically allocated, there can only be one CPU instance per process; this is true for Python as well as any other language.

ergo720 commented 1 year ago

To anyone who is still interested: I have created this fork, which uses cmake to generate a Visual Studio project file that you can then use to build a native Windows application with Visual Studio 2022.

vadosnaprimer commented 6 months ago

To anyone who is still interested: I have created this fork, which uses cmake to generate a Visual Studio project file that you can then use to build a native Windows application with Visual Studio 2022.

Nice job! Mind sending a PR upstream?

ergo720 commented 6 months ago

If you need it, you can use the vanilla branch in my fork, which only contains the Visual Studio changes. I don't think I will upstream because I'm no longer interested/don't need Halfix now, and I haven't used it for almost a year at this point.