36 Commits
Author SHA1 Message Date
ExzapandGitHub a40b226e00 CubebInput: Avoid redundant CoInitializeEx (#449) 2022-11-03 18:29:21 +01:00
TillsunsetandGitHub 521f2fb707 MacOS: Workaround for Metal stride limitation (#445) 2022-11-03 12:51:32 +01:00
goeiecool9999andGitHub a129d22a57 Vulkan: Experimental fix for self-dependency barriers during renderpass (#431) 2022-11-03 00:43:26 +01:00
Adrian GraberandGitHub d4e14d2b05 Implement proper microphone support (#251) 2022-11-03 00:24:34 +01:00
goeiecool9999andGitHub dfa7774c4c Non-windows: Link fontawesome into executable. (#442) 2022-11-03 00:23:31 +01:00
goeiecool9999andGitHub c3182aedd9 GeneralSettings: Update vsync after settings close (#401) 2022-10-31 17:54:26 +01:00
Zhaohui ShiandGitHub f41f7b63e8 DSUController: fix crash when running on offline mode (#434) 2022-10-31 14:27:35 +01:00
TillsunsetandGitHub c143950dd1 Fix fullscreen on macos (#429) 2022-10-30 01:40:53 +02:00
jn64andGitHub 4e991d603a Add libpulse-dev to CI build (#430) 2022-10-30 01:39:39 +02:00
OatmealDomeandGitHub e0aaf631c4 macOS: Set values for empty keys in Info.plist (#425) 2022-10-28 16:57:14 +02:00
TillsunsetandGitHub 9ebbfb3ae2 Fix some compiler warnings (#416) 2022-10-26 14:47:44 +02:00
gurrgurandGitHub 3869b47c35 OpenGL: Bind back buffer before clearing (#222) (#414) 2022-10-26 14:07:34 +02:00
GaryOderNichtsandGitHub d303a7f502 coreinit: Implement OSGetSystemTick (#415) 2022-10-26 14:06:16 +02:00
GaryOderNichtsandGitHub 2461464ba7 FSA: Add missing path translations (#413) 2022-10-26 00:25:46 +02:00
gurrgurandGitHub 76c75f767b Use portable format specifiers (#411)
Fixes #387
2022-10-25 20:38:29 +02:00
Zhaohui ShiandGitHub 88f63ca373 DSU: Fix bad crc calculate (#410) 2022-10-25 18:25:19 +02:00
Zhaohui ShiandGitHub 643ac57a30 DSU: fix build error when enable DEBUG_DSU_CLIENT (#408) 2022-10-24 23:14:22 +02:00
ExzapandGitHub 4561a6929c Fix capitalization of Cemu executable in .desktop file 2022-10-23 23:32:36 +02:00
emiylandGitHub 8f674933d2 Create Cemu .app bundle for macOS (#364) 2022-10-23 16:58:28 +02:00
ExzapandGitHub 028b3f7992 Make controller button code thread-safe (#405)
* Refactor spinlock to meet Lockable requirements
* Input: Refactor button code and make it thread-safe
2022-10-23 15:47:42 +02:00
Jeremy KescherandGitHub c40466f3a8 Fix incorrect title ID (00050000-1011000? -> 00050000-10111000) (#404) 2022-10-23 14:03:51 +02:00
TillsunsetandGitHub 1bcc064593 Add check for "." in FSC path (#402) 2022-10-23 13:06:20 +02:00
Squall LeonhartandGitHub ffa213c794 Generalised game profile cleanup and corrections (#389) 2022-10-21 12:39:26 +02:00
MythicalPlayzandGitHub c217b3ee32 GameList: Use title name based on console language (#388) 2022-10-21 00:17:11 +02:00
goeiecool9999andGitHub dd1cb1cccf Update title manager when clearing MLC path in settings (#319) 2022-10-20 13:18:44 +02:00
goeiecool9999andGitHub 9df1325d14 Linux: Resolve backtrace symbols directly from .symtab instead of .dynsym (#385) 2022-10-20 13:12:16 +02:00
MythicalPlayzandGitHub 271a4e4719 Fixed Discord Rich Presence not working on games that are on MLC (#383) 2022-10-18 17:08:09 +02:00
goeiecool9999andGitHub 15b3a3f77d Linux: Remove libpng dependency from wxwidgets (#382) 2022-10-17 16:05:35 +02:00
ExzapandGitHub 665a34e518 Linux: Always use libpng from system (#381)
* Always use system libpng on Linux
* Remove dependency on boost-crc in DSU (reuse existing implementation)
2022-10-17 13:25:49 +02:00
MythicalPlayzandGitHub 753040f73a Added Boot Image for Gamepad (#372) 2022-10-17 11:26:32 +02:00
goeiecool9999andGitHub e88d20cbfb Fix crashes when wxWidgets tries to free stack allocated dialogs (#377) 2022-10-16 09:02:33 +02:00
TillsunsetandGitHub f0938e1a23 Fix CRC errors on MacOS(/Linux?) (#375)
Fixes graphic packs (like FPS++) not working even when enabled.
2022-10-15 13:38:06 +02:00
TillsunsetandGitHub df0e2f7881 Fix Cannot set locale to "" (#366)
* Add en resource and change language selection for macos user that don't have US as their system region
* default to English if the system language is unavailable
2022-10-15 07:20:20 +02:00
ExzapandGitHub ada8bbb3b4 Linux/MacOS: Greatly improve performance (#370)
std::unordered_set is implemented as a flat hashtable on libstdc++ which makes clearing expensive due to invoking memset on the entire table. To get the best performance across all platforms this replaces the unordered_set with a custom high-performance sparse bitset
2022-10-14 13:45:40 +02:00
ExzapandGitHub a19ed46b2a Windows: Fix file and folder dialog freeze (#369)
Initializing the COM library immediately seems to be more robust than doing it on demand
2022-10-14 12:49:41 +02:00
Exzap d251ce07e0 XAudio2: Don't quit on failed CoInitializeEx()
It returns an error code when already initialized
2022-10-13 12:18:34 +02:00
330 changed files with 1873 additions and 1491 deletions
+15 -4
View File
@@ -45,7 +45,7 @@ jobs:
- name: "Install system dependencies"
run: |
sudo apt update -qq
sudo apt install -y ninja-build cmake libgtk-3-dev libsecret-1-dev libgcrypt20-dev libsystemd-dev freeglut3-dev clang-12 nasm
sudo apt install -y clang-12 cmake freeglut3-dev libgcrypt20-dev libgtk-3-dev libpulse-dev libsecret-1-dev libsystemd-dev nasm ninja-build
- name: "Bootstrap vcpkg"
run: |
bash ./dependencies/vcpkg/bootstrap-vcpkg.sh
@@ -162,6 +162,8 @@ jobs:
with:
name: cemu-bin-windows-x64
path: ./bin/Cemu.exe
build-macos:
runs-on: macos-12
steps:
@@ -213,7 +215,7 @@ jobs:
run: |
mkdir build
cd build
cmake .. ${{ env.BUILD_FLAGS }} -DCMAKE_BUILD_TYPE=${{ env.BUILD_MODE }} -DCMAKE_C_COMPILER=/usr/local/opt/llvm@14/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/opt/llvm@14/bin/clang++ -G Ninja
cmake .. ${{ env.BUILD_FLAGS }} -DCMAKE_BUILD_TYPE=${{ env.BUILD_MODE }} -DPORTABLE=OFF -DMACOS_BUNDLE=ON -DCMAKE_C_COMPILER=/usr/local/opt/llvm@14/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/opt/llvm@14/bin/clang++ -G Ninja
- name: "Build Cemu"
run: |
@@ -221,11 +223,20 @@ jobs:
- name: Prepare artifact
if: ${{ inputs.deploymode == 'release' }}
run: chmod a+x bin/Cemu_release && mv bin/Cemu_release bin/Cemu
run: |
mkdir bin/Cemu_app
mv bin/Cemu_release.app bin/Cemu_app/Cemu.app
mv bin/Cemu_app/Cemu.app/Contents/MacOS/Cemu_release bin/Cemu_app/Cemu.app/Contents/MacOS/Cemu
sed -i '' 's/Cemu_release/Cemu/g' bin/Cemu_app/Cemu.app/Contents/Info.plist
chmod a+x bin/Cemu_app/Cemu.app/Contents/MacOS/Cemu
ln -s /Applications bin/Cemu_app/Applications
hdiutil create ./bin/tmp.dmg -ov -volname "Cemu" -fs HFS+ -srcfolder "./bin/Cemu_app"
hdiutil convert ./bin/tmp.dmg -format UDZO -o bin/Cemu.dmg
rm bin/tmp.dmg
- name: Upload artifact
uses: actions/upload-artifact@v3
if: ${{ inputs.deploymode == 'release' }}
with:
name: cemu-bin-macos-x64
path: ./bin/Cemu
path: ./bin/Cemu.dmg
@@ -64,13 +64,7 @@ jobs:
rm -r ./${{ env.CEMU_FOLDER_NAME }}
- name: Create release from macos-bin
run: |
ls ./
ls ./bin/
cp -R ./bin ./${{ env.CEMU_FOLDER_NAME }}
mv cemu-bin-macos-x64/Cemu ./${{ env.CEMU_FOLDER_NAME }}/Cemu
zip -9 -r upload/cemu-${{ env.CEMU_VERSION }}-macos-12-x64.zip ${{ env.CEMU_FOLDER_NAME }}
rm -r ./${{ env.CEMU_FOLDER_NAME }}
run: cp cemu-bin-macos-x64/Cemu.dmg upload/cemu-${{ env.CEMU_VERSION }}-macos-12-x64.dmg
- name: Create release
run: |
+1 -7
View File
@@ -68,13 +68,7 @@ jobs:
rm -r ./${{ env.CEMU_FOLDER_NAME }}
- name: Create release from macos-bin
run: |
ls ./
ls ./bin/
cp -R ./bin ./${{ env.CEMU_FOLDER_NAME }}
mv cemu-bin-macos-x64/Cemu ./${{ env.CEMU_FOLDER_NAME }}/Cemu
zip -9 -r upload/cemu-${{ env.CEMU_VERSION }}-macos-12-x64.zip ${{ env.CEMU_FOLDER_NAME }}
rm -r ./${{ env.CEMU_FOLDER_NAME }}
run: cp cemu-bin-macos-x64/Cemu.dmg upload/cemu-${{ env.CEMU_VERSION }}-macos-12-x64.dmg
- name: Create release
run: |
+3 -3
View File
@@ -25,7 +25,7 @@ To compile Cemu, a recent enough compiler and STL with C++20 support is required
### Installing dependencies
#### For Ubuntu and derivatives:
`sudo apt install -y git curl cmake ninja-build nasm libgtk-3-dev libsecret-1-dev libgcrypt20-dev libsystemd-dev freeglut3-dev libpulse-dev`
`sudo apt install -y cmake curl freeglut3-dev git libgcrypt20-dev libgtk-3-dev libpulse-dev libsecret-1-dev libsystemd-dev nasm ninja-build`
*Additionally, for Ubuntu 22.04 only:*
- `sudo apt install -y clang-12`
@@ -33,10 +33,10 @@ To compile Cemu, a recent enough compiler and STL with C++20 support is required
`cmake -S . -B build -DCMAKE_BUILD_TYPE=release -DCMAKE_C_COMPILER=/usr/bin/clang-12 -DCMAKE_CXX_COMPILER=/usr/bin/clang++-12 -G Ninja -DCMAKE_MAKE_PROGRAM=/usr/bin/ninja`
#### For Arch and derivatives:
`sudo pacman -S --needed git cmake llvm clang ninja nasm base-devel linux-headers gtk3 libsecret libgcrypt systemd freeglut zip unzip libpulse`
`sudo pacman -S --needed base-devel clang cmake freeglut git gtk3 libgcrypt libpulse libsecret linux-headers llvm nasm ninja systemd unzip zip`
#### For Fedora and derivatives:
`sudo dnf install git cmake clang ninja-build nasm kernel-headers gtk3-devel libsecret-devel libgcrypt-devel systemd-devel freeglut-devel perl-core zlib-devel cubeb-devel`
`sudo dnf install clang cmake cubeb-devel freeglut-devel git gtk3-devel kernel-headers libgcrypt-devel libsecret-devel nasm ninja-build perl-core systemd-devel zlib-devel`
### Build Cemu using cmake and clang
1. `git clone --recursive https://github.com/cemu-project/Cemu`
+2 -1
View File
@@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.21.1)
option(ENABLE_VCPKG "Enable the vcpkg package manager" ON)
option(PORTABLE "All data created and maintained by Cemu will be in the directory where the executable file is located" ON)
option(MACOS_BUNDLE "The executable when built on macOS will be created as an application bundle" OFF)
set(EXPERIMENTAL_VERSION "" CACHE STRING "") # used by CI script to set experimental version
if (EXPERIMENTAL_VERSION)
@@ -20,7 +21,7 @@ if (ENABLE_VCPKG)
endif()
endif()
project(Cemu VERSION 2.0)
project(Cemu VERSION 2.0.0)
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
@@ -1,7 +1 @@
# LEGO City Undercover (USA)
[General]
loadSharedLibraries = false
[Graphics]
GPUBufferCacheAccuracy = 0
# LEGO City Undercover (USA)
@@ -1,7 +1 @@
# LEGO City Undercover (EUR)
[General]
loadSharedLibraries = false
[Graphics]
GPUBufferCacheAccuracy = 0
# LEGO City Undercover (EUR)
@@ -1,5 +1,4 @@
# Monster Hunter 3(tri-)GHD Ver. (JPN)
[Graphics]
GPUBufferCacheAccuracy = 1
streamoutBufferCacheSize = 48
@@ -1,7 +1,4 @@
# Super Mario 3D World (JPN)
[CPU]
[Graphics]
accurateShaderMul = false
GPUBufferCacheAccuracy = 2
@@ -2,6 +2,3 @@
[CPU]
cpuMode = Singlecore-Recompiler
[Graphics]
GPUBufferCacheAccuracy = 2
@@ -1,7 +1 @@
# Scribblenauts Unlimited (EUR)
[General]
loadSharedLibraries = true
[Graphics]
GPUBufferCacheAccuracy = 0
# Scribblenauts Unlimited (EUR)
@@ -1,7 +1 @@
# Ben 10 Omniverse (USA)
[General]
loadSharedLibraries = false
[Graphics]
GPUBufferCacheAccuracy = 0
# Ben 10 Omniverse (USA)
@@ -1,4 +1 @@
# Rayman Legends (USA)
[Graphics]
GPUBufferCacheAccuracy = 0
# Rayman Legends (USA)
@@ -1,7 +1 @@
# Scribblenauts Unlimited (US)
[General]
loadSharedLibraries = true
[Graphics]
GPUBufferCacheAccuracy = 0
# Scribblenauts Unlimited (US)
@@ -1,4 +1 @@
# Mass Effect 3 Special Edition (USA)
[Graphics]
GPUBufferCacheAccuracy = 0
# Mass Effect 3 Special Edition (USA)
@@ -1,4 +1 @@
# ZombiU (US)
[Graphics]
GPUBufferCacheAccuracy = 0
# ZombiU (US)
@@ -1,4 +1 @@
# 007 Legends (US)
[Graphics]
GPUBufferCacheAccuracy = 0
# 007 Legends (US)
@@ -1,7 +1 @@
# Cabela's Dangerous Hunts 2013 (USA)
[General]
loadSharedLibraries = false
[Graphics]
GPUBufferCacheAccuracy = 0
# Cabela's Dangerous Hunts 2013 (USA)
@@ -2,6 +2,3 @@
[CPU]
cpuMode = Singlecore-Recompiler
[Graphics]
GPUBufferCacheAccuracy = 2
@@ -2,6 +2,3 @@
[CPU]
cpuMode = Singlecore-Recompiler
[Graphics]
GPUBufferCacheAccuracy = 2

Some files were not shown because too many files have changed in this diff Show More