Update README.md with new CI instructions

This commit is contained in:
Connor McLaughlin 2020-02-15 21:52:05 +09:00
parent 1ccc26804d
commit 2e629a2e7d

View file

@ -10,7 +10,7 @@
- "Fast boot" for skipping BIOS splash/intro
- Save state support
- Windows and Linux support - macOS may work, but not actively maintained
- Supports bin/cue images, raw bin/img files, and MAME CMD formats.
- Supports bin/cue images, raw bin/img files, and MAME CHD formats.
- Direct booting of homebrew executables
- Digital and analog controllers for input (rumble is forwarded to host)
- Qt and SDL frontends for desktop
@ -23,13 +23,13 @@
- SDL-compatible game controller (e.g. XB360/XBOne)
## Downloading and running
Prebuilt binaries of DuckStation for 64-bit Windows are available via GitHub Actions CI. To download:
- Press the tick or cross next to the commit, shown under the "Clone or download" button
- Find "Windows Build" and click "details".
- Find the "Artifacts (1)" button in the top-right corner of the page, under "Fork".
- Download the `duckstation-windows-x64-release` artifact. This is a zip file containing the prebuilt binary.
Prebuilt binaries of DuckStation for 64-bit Windows are available via AppVeyor CI. To download:
- Go to https://ci.appveyor.com/project/stenzek/duckstation
- Click on the "Artifacts" Tab.
- Download the "duckstation-win64-release.7z" artifact. This is a 7-Zip archive containing the prebuilt binary.
- Extract the archive **to a subdirectory**. The archive has no root subdirectory, so extracting to the current directory will drop a bunch of files in your download directory if you do not extract to a subdirectory.
Once downloaded and extracted, you can launch the Qt frontend from `duckstation-qt-x64-ReleaseLTCG.exe`, or the SDL frontend from `duckstation-x64-ReleaseLTCG.exe`.
Once downloaded and extracted, you can launch the Qt frontend from `duckstation-qt-x64-ReleaseLTCG.exe`, or the SDL frontend from `duckstation-sdl-x64-ReleaseLTCG.exe`.
To set up:
1. Either configure the path to a BIOS image in the settings, or copy one or more PlayStation BIOS images to the bios/ subdirectory.
2. If using the SDL frontend, add the directories containing your disc images by clicking `Settings->Add Game Directory`.
@ -49,21 +49,25 @@ Requirements:
2. Open the Visual Studio solution `duckstation.sln` in the root, or "Open Folder" for cmake build.
3. Build solution.
4. Binaries are located in `bin/x64`.
5. Run `duckstation-x64-Release.exe` or whichever config you used.
5. Run `duckstation-sdl-x64-Release.exe`/`duckstation-qt-x64-Release.exe` or whichever config you used.
### Linux
Requirements:
- CMake
- SDL2
Requirements (Debian/Ubuntu package names):
- CMake (`cmake`)
- SDL2 (`libsdl2-dev`)
- GTK2.0 for file selector (`libgtk2.0-dev`)
- Qt 5 (`qtbase5-dev`, `qtbase5-dev-tools`)
- Optional for faster building: Ninja (`ninja-build`)
1. Clone the repository. Submodules aren't necessary, there is only one and it is only used for Windows.
2. Create a build directory, either in-tree or elsewhere.
3. Run cmake to configure the build system. Assuming a build subdirectory of `build-release`, `cd build-release && cmake -DCMAKE_BUILD_TYPE=Release -GNinja ..`.
4. Compile the source code. For the example above, run `ninja`.
5. Run the binary, located in the build directory under `src/duckstation/duckstation`.
5. Run the binary, located in the build directory under `src/duckstation-sdl/duckstation-sdl`, or `src/duckstation-qt/duckstation-qt`.
### Android
**NOTE:** The Android frontend is still incomplete, not all functionality works and some paths are hard-coded.
**The Android app is currently broken and fixing it is not a priority. However, this will change in the future.**
Requirements:
- Android Studio with the NDK and CMake installed
@ -73,8 +77,17 @@ Requirements:
3. Select Build -> Build Bundle(s) / APKs(s) -> Build APK(s).
4. Install APK on device, or use Run menu for attached device.
## Default keyboard bindings
Keyboard bindings are currently not customizable. For reference:
## Bindings for Qt frontend
Your keyboard can be used to simulate the PS Controller. To bind keys to buttons, go to `Settings` -> `Port Settings`. Each of the buttons will be listed,
along with the corresponding key it is bound to. To rebind the button to a new key, click the button next to button name, and press the key you want to use
within 5 seconds.
**Controllers are not currently supported in the Qt frontend. Support for controllers and custom bindings will be coming soon.**
**Currently, it is only possible to bind one input to each controller button/axis. Multiple bindings per button are planned for the future.**
## Default keyboard bindings for SDL frontend
Keyboard bindings in the SDL frontend are currently not customizable. For reference:
- **D-Pad:** W/A/S/D or Up/Left/Down/Right
- **Triangle/Square/Circle/Cross:** I/J/L/K or Numpad8/Numpad4/Numpad6/Numpad2
- **L1/R1:** Q/E
@ -85,7 +98,7 @@ Keyboard bindings are currently not customizable. For reference:
Gamepads are automatically detected and supported. Tested with an Xbox One controller.
To access the menus with the controller, press the right stick down and use the D-Pad to navigate, A to select.
## Useful hotkeys
## Useful hotkeys for SDL frontend
- **F1-F8:** Quick load/save (hold shift to save)
- **F11:** Toggle fullscreen
- **Tab:** Temporarily disable speed limiter