emaculation / emaculation/macemu

Basilisk II doesn't build on Windows x64

Open
#149 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
78
Forks
13
PR merge metrics
No merged PRs in 30d

Description

I'm doing wider ranging cleanup to BII, I fired up MSYS2 and building for x86_64 is very broken, and from the looks of it has never worked. The windows builds posted on the emaculation forum are 32bit. (What source code are those builds coming from?)

```
g++ -I../include -I. -I../CrossPlatform -I../uae_cpu -I../slirp -DHAVE_CONFIG_H -DDIRECT_ADDRESSING -DUNALIGNED_PROFITABLE -DX86_64_ASSEMBLY -DOPTIMIZED_FLAGS -DUSE_JIT -DUSE_JIT_FPU -DFPU_IEEE -O2 -IC:/msys64/mingw64/include/SDL2 -Dmain=SDL_main -c cdenable/ntcd.cpp -o obj/ntcd.o
cdenable/ntcd.cpp: In function 'int CdenableSysReadCdBytes(HANDLE, DWORD, DWORD, char*)':
cdenable/ntcd.cpp:208:17: error: cast from 'HANDLE' {aka 'void*'} to 'DWORD' {aka 'long unsigned int'} loses precision [-fpermissive]
208 | in_buffer[0] = (DWORD)h;
| ^~~~~~~~
cdenable/ntcd.cpp:211:17: error: cast from 'char*' to 'DWORD' {aka 'long unsigned int'} loses precision [-fpermissive]
211 | in_buffer[3] = (DWORD)buf;
| ^~~~~~~~~~
make: *** [Makefile:148: obj/ntcd.o] Error 1
```

Looks like standard 64bit portability issues. If there's a bored windows programmer out there please take a look. :)

The other OSs are dropping 32bit support left and right, increasingly leaving Windows as the odd one out lingering on 32bit. https://github.com/flathub/flathub/issues/1531

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.