diff --git a/faq.md b/faq.md index 48149e5..03c24fe 100644 --- a/faq.md +++ b/faq.md @@ -6,19 +6,19 @@ permalink: /faq/ description: Frequently Asked Questions about RPCSX. --- -## What is RPCSX? +## Q: What is RPCSX? **A:** RPCSX is an experimental emulator for PS4 games (and later, PS5 games). Development is ongoing. -## Can I play Bloodborne? +## Q: Can I play Bloodborne? **A:** Not yet. -## Can I run RPCSX on Windows? +## Q: Can I run RPCSX on Windows? **A:** Yes, But only through WSL at this time. [learn more](/wiki/installation/#method-2-wsl) -## What is the current state of the project? +## Q: What is the current state of the project? **A:** The emulator can run test samples and play in-game on [We Are Doomed](https://store.playstation.com/en-us/product/UP2195-CUSA01783_00-WEAREDOOMED00000). A compatibility table is in progress and will be available when RPCSX can run commercial games. diff --git a/install-guide.md b/install-guide.md index 41a9e51..a3df84f 100644 --- a/install-guide.md +++ b/install-guide.md @@ -27,7 +27,8 @@ We provide two installation methods: #### Install dependencies -- **.deb-based (Ubuntu etc.)** Note: git is only needed for Ubuntu 22.04 +- **.deb-based (Ubuntu etc.)**
+Note: git is only needed for Ubuntu 22.04 ```sh sudo apt install build-essential cmake libunwind-dev libglfw3-dev libvulkan-dev vulkan-validationlayers-dev libsox-dev git libasound2-dev nasm g++-14 @@ -43,8 +44,8 @@ sudo dnf install cmake libunwind-devel glfw-devel vulkan-devel vulkan-validation go to [Continued Install.](/wiki/installation/#continued-install) -- **Arch** - - vulkan-devel is a group, and you should install **all**! +- **Arch**
+vulkan-devel is a group, and you should install **all**! ```sh sudo pacman -S --needed libunwind glfw-x11 vulkan-devel sox git cmake alsa-lib nasm @@ -69,7 +70,7 @@ go to [Continued Install.](/wiki/installation/#continued-install) ### Method 2: WSL -**Install WSL** +**Install WSL**
Run Windows Powershell as Administrator: ```sh @@ -78,40 +79,56 @@ wsl --install Reboot your machine -**Install Ubuntu:** +**Install Ubuntu:**
Run Windows Powershell ```sh -wsl --install +wsl --install -d Ubuntu ``` Setup user credentials -**Configure Ubuntu and build RPCSX:** +**Configure Ubuntu and build RPCSX:**
+Add the PPA repository that has the packages we need ```sh sudo add-apt-repository ppa:oibaf/graphics-drivers sudo apt upgrade ``` +Install Ubuntu package dependencies + ```sh -sudo apt install -y build-essential cmake libunwind-dev libglfw3-dev libvulkan-dev libsox-dev git libasound2-dev nasm g++-14 -sudo apt install -y pkgconf libasound2-plugins vainfo mesa-va-drivers +sudo apt install build-essential cmake libunwind-dev libglfw3-dev libvulkan-dev libsox-dev git libasound2-dev nasm g++-14 ``` +Install WSL specific package dependencies + +```sh +sudo apt install pkgconf libasound2-plugins vainfo mesa-va-drivers +``` + +Add pcm.default pulse to the bottom of the .asoundrc file to configure audio + ```sh echo "pcm.default pulse" > ~/.asoundrc ``` +Add ctl.default pulse to the bottom of the .asoundrc file to configure audio + ```sh echo "ctl.default pulse" >> ~/.asoundrc ``` +Clone both Vulkan ExtensionLayer and RPCSX Git repositories + ```sh git clone --depth 1 https://github.com/KhronosGroup/Vulkan-ExtensionLayer.git git clone --depth 1 --recursive https://github.com/RPCSX/rpcsx.git ``` +Change directory and compile Vulkan ExtensionLayer + ```sh cd Vulkan-ExtensionLayer cmake -B build -D UPDATE_DEPS=ON -DCMAKE_BUILD_TYPE=Release @@ -119,6 +136,8 @@ cmake --build build -j$(nproc) sudo cmake --build build --target install -j$(nproc) ``` +Change directory back from Vulkan ExtensionLayer and to RPCSX then compile + ```sh cd ../rpcsx cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS_INIT="-march=native" -DCMAKE_CXX_COMPILER=g++-14 @@ -126,19 +145,26 @@ cmake --build build -j$(nproc) sudo cp build/bin/rpcsx /bin ``` +Tell Ubuntu to set the VK_LAYER_PATH Environment variable + ```sh echo 'export VK_LAYER_PATH=/usr/local/share/vulkan/explicit_layer.d/:$VK_LAYER_PATH' >> ~/.profile ``` +Tell Ubuntu to set the VK_INSTANCE_LAYERS Environment variable + ```sh echo 'export VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_shader_object' >> ~/.profile ``` +Initalize and shutdown the Linux machine + ```sh sudo init 0 ``` -Wait a few minutes to let Linux shutdown +Wait a few minutes to let Linux shutdown.
+This will not turn off your PC only the virtual Ubuntu distro. #### ArchWSL