devinacker / bsnes-plus

debug-oriented fork of bsnes
http://bsnes.revenant1.net
327 stars 94 forks source link

Fix D-pad inputs on macOS #347

Closed NobodyNada closed 1 year ago

NobodyNada commented 1 year ago

Take into account that the minimum element of the range might not be zero. My Xbox One controller uses 1-based indexing and does not work without this change.

With this change, bsnes-plus works flawlessly on macOS (the compile command I used is qtpath=(brew --prefix qt5) make -j24). It is a bit tricky to compile on M1 because the version of Clang that ships with Xcode does not accept the -march=native flag. Upstream Clang 15 (which can be installed with brew install llvm) does work with this flag; however, the repository fails to compile due to a bug: llvm/llvm-project#59684

Once this bug is fixed, compiling with Clang 15 will be the best way to compile the repo on macOS. In the meantime, M1 users can replace -march=native with -mcpu=apple-m1 in all the makefiles, and compile with Xcode clang.