-
Notifications
You must be signed in to change notification settings - Fork 233
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows x64 build #354
Windows x64 build #354
Conversation
This is one of the last versions still containing DirectDraw + DirectSound and also has x64 support.
Lots of these truncated 64bit pointer or handle types to 32bit.
… compile errors in x64 builds.
We now need native x64 versions of it.
… from the original game. The last library opened with cf_OpenLibrary() will be the first to be searched for DLLs. This way we make sure to load our x64 DLLs before the x86 versions from the original game data.
No idea why this doesn't crash in current builds, maybe just corrupts some memory if we get into if-statement?!
Hey, that looks promising! Just so you know, we will be working on replacing DirectX with SDL2 on Windows just like Linux and MacOS do, so don't spend too much effort on the DirectX code |
Thanks for the heads-up on DirectX stuff. I wasn't planning spending time on it, just replaced the SDK for the x64 support to get the current stuff to compile and run. |
Maybe for Linux, but macOS can have multiple architectures in one binary. |
# Conflicts: # lib/win/win32app.h # win32/winapp.cpp
I can't review further, other than verifying it works in windows, but I'd like to note that as pzychotic nicely explained, this pull will resolve the outstanding multiplayer issues. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need additionally mention somewhere that we use static DirectX libraries (and here issue about licensing them with GPLv3 code).
…rary() call to be moved out of #ifdef.
These are not static libraries, these are just the link libs needed by the linker to resolve the symbols to the DLLs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK from me. Good work!
Pull Request Type
Description
Getting this out as a starting point for a possible Windows x64 build.
So far my local tests in Singleplayer work fine. I haven't tried any Multiplayer.
Quick summary:
Cut corners:
Open questions:
Known Issue:
Checklist