diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..f81927b1 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,13 @@ +# These are supported funding model platforms + +#github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] +patreon: RetroDECK # Replace with a single Patreon username +#open_collective: # Replace with a single Open Collective username +#ko_fi: # Replace with a single Ko-fi username +#tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +#community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +#liberapay: # Replace with a single Liberapay username +#issuehunt: # Replace with a single IssueHunt username +#otechie: # Replace with a single Otechie username +#lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry +custom: ['https://retrodeck.readthedocs.io/en/latest/wiki_about/donations-licenses/'] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] diff --git a/.github/workflows/cooker-selfhosted-persistent.yml b/.github/workflows/cooker-selfhosted-persistent.yml new file mode 100644 index 00000000..dced323f --- /dev/null +++ b/.github/workflows/cooker-selfhosted-persistent.yml @@ -0,0 +1,152 @@ +name: "Build cooker (persistent)" + +env: + PERSISTENCE: true + +on: + push: + branches: + - cooker* + - feat* + paths: + - '.github/workflows/**' + - 'automation_tools/**' + - 'emu-configs/**' + - 'es-configs/**' + - 'functions/**' + - 'rd-submodules/**' + - '*.sh' + - 'net.retrodeck.retrodeck.yml' + - 'net.retrodeck.retrodeck.appdata.xml' + pull_request: + branches: + - cooker* + + workflow_dispatch: + +jobs: + + Building_RetroDECK: + runs-on: self-hosted + steps: + + # Circumventing this bug: https://github.com/flatpak/flatpak-builder/issues/317 + - name: Remove stuck mounts + run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* + continue-on-error: true + + - name: Clone RetroDECK repo + uses: actions/checkout@v3 + with: + submodules: 'true' + + - name: "Install dependencies" + run: "automation_tools/install_dependencies.sh" + + - name: Generate cooker build ID + run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_build_id.sh" + + # backing up manifest in case download fails and hashes must be recalculated + - name: Manifest backup + run: "cp ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" + + - name: Run pre-build automation tasks + run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" + + - name: "Adding flatpak portal for automated updates (cooker only)" + run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_flatpak_portal_add.sh" + + - name: "Updating release notes in appdata" + run: "automation_tools/appdata_management.sh" + + - name: "[DEBUG] Outputting manifest" + run: cat net.retrodeck.retrodeck.yml + + - name: "Build flatpak: download only" + id: "flatpak-download" + run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only_persistent.sh" + continue-on-error: true + + # Sometimes flatpak download fails, in this case it tries a second time + - name: "Build flatpak: download only (retry)" + if: steps.flatpak-download.outcome == 'failure' + run: | + echo "Download failed, maybe some hash changed since the build start." + echo "Recalculating hashes and retrying download..." + rm -f "{GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + cp "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + "${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" + "${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only_persistent.sh" + + - name: Build flatpak + run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only_persistent.sh" + + - name: Create Artifact for flathub + run: | + tar -czf ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz -C ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker . + hash=($(sha256sum ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz)) + echo $hash > ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.sha + mv -f RetroDECK-Artifact-cooker.* ${{ secrets.ARTIFACT_REPO }} + continue-on-error: true + + - name: Create Bundle + run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle_persistent.sh" + + - name: Set environment variable with current branch name + run: echo "GITHUB_REF_SLUG=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV + + - name: Get commits since last release + run: | + # Get the latest release tag + LATEST_TAG=$(git describe --tags --abbrev=0) + # Get all commits since the latest release tag + COMMITS=$(git log $LATEST_TAG..HEAD --pretty=format:"- %s") + # Set the output variable + echo "::set-output name=commits::$COMMITS" + id: commits + continue-on-error: true + + - name: Get branch name + id: branch_name + run: echo "BRANCH_NAME=$(echo $GITHUB_REF | sed 's|refs/heads/||')" >> $GITHUB_ENV + + # if it's a feature branch it will not marked as "latest" cooker version + - name: "Set makeLatest (cooker only)" + run: | + if [[ "$BRANCH_NAME" == 'feat/'* ]]; then + echo "MAKE_LATEST=false" >> $GITHUB_ENV + else + echo "MAKE_LATEST=true" >> $GITHUB_ENV + fi + + - name: Publish the flatpak in a new cooker release + uses: ncipollo/release-action@v1 + with: + tag: "${{env.BRANCH_NAME}}-${{ env.buildid }}" + body: | + # Release Notes (Cooker) + This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}. + On branch [${{env.BRANCH_NAME}}](https://github.com/XargonWan/RetroDECK/tree/${{env.BRANCH_NAME}}). + + ## Commits since last release + ${{ steps.commits.outputs.commits }} + + For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/qQcrFvaA2C) on our Discord server. + + Cooker channel is provided for the community to test fixes and explore new functionality. + Please DO NOT open issues or ask support on this build. + + artifacts: "RetroDECK-cooker.flatpak,RetroDECK-Artifact.tar.gz" + allowUpdates: true + makeLatest: ${{env.MAKE_LATEST}} # if it's a feat branch is not considered the latest build + token: ${{ secrets.TRIGGER_BUILD_TOKEN }} + repo: RetroDECK-cooker + continue-on-error: true + + # In case it cannot publish the release at least it's providing the flatpak file for creating a manual release + - name: Upload RetroDECK-cooker.flatpak + uses: actions/upload-artifact@v3 + with: + name: retrodeck-flatpak + path: RetroDECK-cooker.flatpak + continue-on-error: true diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 957d036a..43d086c9 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -1,23 +1,28 @@ name: "Build cooker" on: - push: - branches: - - cooker* - - feat* - paths: - - '.github/workflows/**' - - 'automation_tools/**' - - 'emu-configs/**' - - 'es-configs/**' - - 'functions/**' - - 'rd-submodules/**' - - '*.sh' - - 'net.retrodeck.retrodeck.yml' - - 'net.retrodeck.retrodeck.appdata.xml' - pull_request: - branches: - - cooker* + # push: + # branches: + # - cooker* + # - feat* + # paths: + # - '.github/workflows/**' + # - 'automation_tools/**' + # - 'emu-configs/**' + # - 'es-configs/**' + # - 'functions/**' + # - 'rd-submodules/**' + # - '*.sh' + # - 'net.retrodeck.retrodeck.yml' + # - 'net.retrodeck.retrodeck.appdata.xml' + # pull_request: + # branches: + # - cooker* + + # Italy (CET): 11:00 PM + # Japan (JST): 7:00 AM + schedule: + - cron: '0 22 * * *' workflow_dispatch: @@ -44,6 +49,10 @@ jobs: - name: Generate cooker build ID run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_build_id.sh" + # backing up manifest in case download fails and hashes must be recalculated + - name: Manifest backup + run: "cp ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" + - name: Run pre-build automation tasks run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" @@ -62,12 +71,15 @@ jobs: continue-on-error: true # Sometimes flatpak download fails, in this case it tries a second time - - name: Run pre-build automation tasks (retry) - if: steps.flatpak-download.outcome == 'failure' - run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" - name: "Build flatpak: download only (retry)" if: steps.flatpak-download.outcome == 'failure' - run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh" + run: | + echo "Download failed, maybe some hash changed since the build start." + echo "Recalculating hashes and retrying download..." + rm -f "{GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + cp "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + "${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" + "${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh" - name: Build flatpak run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh" diff --git a/.github/workflows/main-selfhosted.yml b/.github/workflows/main-selfhosted.yml index 4e533c2d..2618d7ba 100644 --- a/.github/workflows/main-selfhosted.yml +++ b/.github/workflows/main-selfhosted.yml @@ -40,6 +40,10 @@ jobs: - name: "Install dependencies" run: "automation_tools/install_dependencies.sh" + # backing up manifest in case download fails and hashes must be recalculated + - name: Manifest backup + run: "cp ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" + - name: Run pre-build automation tasks run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" @@ -65,7 +69,13 @@ jobs: # Sometimes flatpak download fails, in this case it tries a second time - name: "Build flatpak: download only (retry)" if: steps.flatpak-download.outcome == 'failure' - run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh" + run: | + echo "Download failed, maybe some hash changed since the build start." + echo "Recalculating hashes and retrying download..." + rm -f "{GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + cp "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + "${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh" + "${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh" - name: Build flatpak run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh" diff --git a/.github/workflows/submodule-update.yml b/.github/workflows/submodule-update.yml index af02cfd7..03ab876b 100644 --- a/.github/workflows/submodule-update.yml +++ b/.github/workflows/submodule-update.yml @@ -2,8 +2,8 @@ name: Sunday Submodule Update on: # At 4:00 (CET) - schedule: - - cron: '0 2 * * 0' + # schedule: + # - cron: '0 2 * * 0' workflow_dispatch: jobs: diff --git a/.gitignore b/.gitignore index 2784d558..d2569309 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,7 @@ tmp rd-submodules/es-de/patches-tmp* .local/ buildid +*.bak # Python # ########## @@ -27,6 +28,7 @@ __pycache__ # Submodules # ############## -rd-submodules/retroarch/ -rd-submodules/ryujinx/ -rd-submodules/shared-modules/ \ No newline at end of file +rd-submodules/retroarch* +rd-submodules/ryujinx* +rd-submodules/shared-modules* +rd-submodules/es-de/patches-tmp* diff --git a/.readthedocs.yaml b/.readthedocs.yaml deleted file mode 100644 index 5bf1fa68..00000000 --- a/.readthedocs.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Read the Docs configuration file -# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details - -# Required -version: 2 - -# Set the OS, Python version and other tools you might need -build: - os: ubuntu-22.04 - tools: - python: "3.11" - # You can also specify other tool versions: - # nodejs: "19" - # rust: "1.64" - # golang: "1.19" - -# Build documentation in the "docs/" directory with Sphinx -sphinx: - configuration: wiki-rtd/conf.py - -# Optionally build your docs in additional formats such as PDF and ePub -formats: - - pdf - - epub - -# Optional but recommended, declare the Python requirements required -# to build your documentation -# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html -python: - install: - - requirements: wiki-rtd/requirements.txt \ No newline at end of file diff --git a/README.md b/README.md index f053a1ad..88b3f7cb 100644 --- a/README.md +++ b/README.md @@ -4,13 +4,13 @@ # RetroDECK on your device! +

-screenshot -screenshot
screenshot screenshot

-
+ +Instead of having several different emulators, engines and frontends on your Linux/SteamOS system you only need one: RetroDECK. ![Flathub](https://img.shields.io/flathub/downloads/net.retrodeck.retrodeck) ![Flathub](https://img.shields.io/flathub/v/net.retrodeck.retrodeck) @@ -18,43 +18,21 @@ ![GitHub](https://img.shields.io/github/license/XargonWan/RetroDECK) [![Documentation Status](https://readthedocs.org/projects/retrodeck/badge/?version=latest)](https://retrodeck.readthedocs.io/en/latest/?badge=latest) -# What is RetroDECK? -Instead of having several different software on your system for a variety of emulators and frontends you only need to have one: RetroDECK. +**The RetroDECK Wiki & FAQ** -RetroDECK is a [EmulationStation Desktop Edition](https://es-de.org) (ES-DE) powered flatpak application that builds in a variety of emulators and other software that allows you to play your favorite retro (and even not-so-retro) games in one complete package. +Please check out the these links for even more information: -It's inspired by embedded emulation systems like: - -- AmberELEC -- EmuELEC -- CoreELEC -- Lakka -- Batocera - -The RetroDECK team consists of several veterans from some of the projects mentioned above as well as a bunch of other talented individuals. - -RetroDECK also adds the `RetroDECK Framework` and the `RetroDECK Configurator` on top of the emulators and ES-DE frontend that allows deeper integrations between emulators and easier exposure to a variety of features that you otherwise need to set per emulator basis to create a uniformity between them. - -For our long term vision you can check out the following wiki page: - -[RetroDECK: Visions and Goals](https://github.com/XargonWan/RetroDECK/wiki/RetroDECK%3A-Visions-and-Goals) - -### The RetroDECK community: - -[Website](https://retrodeck.net)
-[Wiki](https://github.com/XargonWan/RetroDECK/wiki)
-[Discord](https://discord.gg/Dz3szYsP8g)
-[Lemmy](https://lemmy.zip/c/retrodeck)
-[Subreddit](https://www.reddit.com/r/retrodeck) +- [RetroDECK Wiki](https://retrodeck.readthedocs.io/en/latest/) +- [RetroDECK FAQ](https://retrodeck.readthedocs.io/en/latest/wiki_general/faq/) # How do I start using RetroDECK? +Basically just download it from Flathub, put your roms/games and needed bioses and just play. -We have an in depth How To on how to get started over here: +Read our getting started guide here: -[How to: Start using RetroDECK](https://github.com/XargonWan/RetroDECK/wiki/How-to%3A-Start-using-RetroDECK) +[How to: Start using RetroDECK](https://retrodeck.readthedocs.io/en/latest/wiki_general/retrodeck-start/) ## What devices/systems does RetroDECK support: - RetroDECK currently supports: - Steam Deck @@ -62,21 +40,68 @@ RetroDECK currently supports: For more information read up here: -[Supported Systems](https://github.com/XargonWan/RetroDECK/wiki/RetroDECK%3A-Supported-Systems) +[Supported Systems](https://retrodeck.readthedocs.io/en/latest/wiki_general/supported-devices/) + +## What is RetroDECK? +RetroDECK is a [EmulationStation Desktop Edition](https://es-de.org) (ES-DE) powered Linux [Flatpak application](https://flathub.org/apps/net.retrodeck.retrodeck) that thanks to its `RetroDECK Framework` it builds-in and manage a variety of emulators and other software that allows you to play your favorite retro (and even not-so-retro) games in one complete package. + +### So what does that mean? +It means that RetroDECK provides all the emulators, systems and a frontend. RetroDECK configures them for you and put them into one application you can download from Flathub. + +By being one application RetroDECK can put all important files in one location for all the emulators, instead of having them spread out over your entire system and even add features on top to orchestrate them seamlessly. -## Is RetroDECK in Beta? +### The RetroDECK Framework +As previously mentioned, RetroDECK also adds the `RetroDECK Framework` on top of the emulators and ES-DE interface that allows deeper integrations between emulators and easier exposure to a variety of features that you otherwise need to set per emulator basis to create a uniformity between them. + +The `RetroDECK Configurator` is a `Utility` that some parts of exposes the `RetroDECK Framework` to the RetroDECK users. + +**What can the RetroDECK Framework and by extent the RetroDECK Configurator do?** + +It can help with: + +- Compressing games +- Easier `Texture Pack` and `Mod` management +- File management +- Tools for troubleshooting (BIOS Checker, Multi-File Structure Checker, Partial or full reset of functions) +- Auto installing some free BIOSes +- Install prebuilt Steam Input profiles for devices like the Steam Deck and external controllers +- Easier management of `mods`, `roms`, `texture_packs`, `scraped media`, `screenshots`, `saves / states` `gamelists` and more +- Give access to global presets that can be acitivated to configure things over many emulators in one go like: `RetroAchievements` + `Borders` `Widescreen Mode` `Swaping A/B X/Y for Nintendo Games` + +For our long term vision you can check out the following wiki page: +[RetroDECK: Visions and Goals](https://retrodeck.readthedocs.io/en/latest/wiki_about/visions-and-goals/) + +### How to get support? +Use the supports channels on [Discord](https://discord.gg/Dz3szYsP8g) `🤝-community-support` and `🆘-support`. +### The RetroDECK community: +[Website](https://retrodeck.net)
+[Wiki](https://github.com/XargonWan/RetroDECK/wiki)
+[Discord](https://discord.gg/Dz3szYsP8g)
+[Lemmy](https://lemmy.zip/c/retrodeck)
+[Subreddit](https://www.reddit.com/r/retrodeck) + +### Is RetroDECK in Beta? Yes, here you can read more about the beta period: -[RetroDECK: Beta period](https://github.com/XargonWan/RetroDECK/wiki/RetroDECK%3A-Beta-period) - - -## Can I contribute to the project? +[RetroDECK: Beta period](https://retrodeck.readthedocs.io/en/latest/wiki_general/beta-period/) +### Can I contribute to the project? Yes, off course!
Read up here on how to help out, there is something for everyone: -[How to: Contribute to RetroDECK](https://github.com/XargonWan/RetroDECK/wiki/How-to%3A-Contribute-to-RetroDECK) +[How to: Contribute to RetroDECK](https://retrodeck.readthedocs.io/en/latest/wiki_community/contibute-rd/) + +## Our repositories: +| Name | Description | +|-------------------------------------------------------------|-----------------------------------------------------------| +| [RetroDECK](https://github.com/XargonWan/RetroDECK) | This one, our main repo where the core of the project is | +| [RetroDECK-cooker](https://github.com/XargonWan/RetroDECK-cooker) | Where we publish our test build, no code is hosted here | +| [RetroDECK-Wiki](https://github.com/XargonWan/RetroDECK-Wiki) | Where our wiki source code is | +| [RetroDECK on Flathub](https://github.com/flathub/net.retrodeck.retrodeck) | Our little space in Flathub's organization | +| [RetroDECK-MAME](https://github.com/XargonWan/RetroDECK-MAME) | MAME is big to build, so it's pre-built here and then imported in the build | +| [RetroDECK-ES-DE](https://github.com/XargonWan/RetroDECK-ES-DE) | This is where we store our patched fork of ES-DE | # The RetroDECK Wiki diff --git a/automation_tools/automation_task_list.cfg b/automation_tools/automation_task_list.cfg index 0460a41b..1b955846 100644 --- a/automation_tools/automation_task_list.cfg +++ b/automation_tools/automation_task_list.cfg @@ -8,6 +8,8 @@ hash^MSXBIOSHASHPLACEHOLDER^http://bluemsx.msxblue.com/rel_download/blueMSXv282f hash^XEMUHDDHASHPLACEHOLDER^https://github.com/mborgerson/xemu-hdd-image/releases/latest/download/xbox_hdd.qcow2.zip hash^VITA3KSHAPLACEHOLDER^https://github.com/Vita3K/Vita3K/releases/download/continuous/ubuntu-latest.zip hash^RANIGHTLYCORESPLACEHOLDER^https://buildbot.libretro.com/nightly/linux/x86_64/RetroArch_cores.7z +hash^RETRODECKMAMEPLACEHOLDER^"https://github.com/XargonWan/RetroDECK-MAME/releases/download/$(curl -s https://api.github.com/repos/XargonWan/RetroDECK-MAME/releases/latest | grep -oP '"tag_name": "\K(.*?)(?=")')/RetroDECK-MAME-Artifact.tar.gz" +url^RETRODECKMAMEURLPLACEHOLDER^"https://github.com/XargonWan/RetroDECK-MAME/releases/download/$(curl -s https://api.github.com/repos/XargonWan/RetroDECK-MAME/releases/latest | grep -oP '"tag_name": "\K(.*?)(?=")')/RetroDECK-MAME-Artifact.tar.gz" latestcommit^UNIVERSALDYNAMICINPUTCOMMITPLACEHOLDER^https://github.com/Venomalia/UniversalDynamicInput^main -outside_info^VERSIONPLACEHOLDER^${GITHUB_WORKSPACE}/buildid +outside_file^VERSIONPLACEHOLDER^${GITHUB_WORKSPACE}/buildid branch^THISBRANCH diff --git a/automation_tools/flatpak_build_bundle.sh b/automation_tools/flatpak_build_bundle.sh index ab2847c5..3568ebb7 100755 --- a/automation_tools/flatpak_build_bundle.sh +++ b/automation_tools/flatpak_build_bundle.sh @@ -3,7 +3,7 @@ # This is building the bundle RetroDECK.flatpak after the download and build steps are done if [ "${GITHUB_REF##*/}" = "main" ]; then - flatpak build-bundle ${GITHUB_WORKSPACE}/.local RetroDECK.flatpak net.retrodeck.retrodeck + flatpak build-bundle "${GITHUB_WORKSPACE}/.local" "$GITHUB_WORKSPACE/RetroDECK.flatpak" net.retrodeck.retrodeck else - flatpak build-bundle ${GITHUB_WORKSPACE}/.local RetroDECK-cooker.flatpak net.retrodeck.retrodeck + flatpak build-bundle "${GITHUB_WORKSPACE}/.local" "$GITHUB_WORKSPACE/RetroDECK-cooker.flatpak" net.retrodeck.retrodeck fi \ No newline at end of file diff --git a/automation_tools/flatpak_build_bundle_persistent.sh b/automation_tools/flatpak_build_bundle_persistent.sh new file mode 100755 index 00000000..ca6f1b5a --- /dev/null +++ b/automation_tools/flatpak_build_bundle_persistent.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +# This is building the bundle RetroDECK.flatpak after the download and build steps are done + +BUILD_DIR="$HOME/cooker-persistent" +mkdir -p "$BUILD_DIR" + +if [ "${GITHUB_REF##*/}" = "main" ]; then + flatpak build-bundle "${BUILD_DIR}/.local" "$GITHUB_WORKSPACE/RetroDECK.flatpak" net.retrodeck.retrodeck +else + flatpak build-bundle "${BUILD_DIR}/.local" "$GITHUB_WORKSPACE/RetroDECK-cooker.flatpak" net.retrodeck.retrodeck +fi diff --git a/automation_tools/flatpak_build_download_only.sh b/automation_tools/flatpak_build_download_only.sh index d07f118a..8c779fbb 100755 --- a/automation_tools/flatpak_build_download_only.sh +++ b/automation_tools/flatpak_build_download_only.sh @@ -12,7 +12,7 @@ else FOLDER=retrodeck-flatpak-cooker fi -mkdir -vp "${GITHUB_WORKSPACE}"/{local,retrodeck-flatpak-cooker} +mkdir -vp "${GITHUB_WORKSPACE}"/{.local,retrodeck-flatpak-cooker} flatpak-builder --user --force-clean \ --install-deps-from=flathub \ @@ -21,3 +21,4 @@ flatpak-builder --user --force-clean \ --download-only \ "${GITHUB_WORKSPACE}/${FOLDER}" \ net.retrodeck.retrodeck.yml + \ No newline at end of file diff --git a/automation_tools/flatpak_build_download_only_persistent.sh b/automation_tools/flatpak_build_download_only_persistent.sh new file mode 100755 index 00000000..7b05fa57 --- /dev/null +++ b/automation_tools/flatpak_build_download_only_persistent.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# This script is downloading the needed files to prepare the manifest build + +git config --global protocol.file.allow always + +if [[ "${GITHUB_REF##*/}" == "main" ]]; then + BUNDLE_NAME="RetroDECK.flatpak" + FOLDER=retrodeck-flatpak +else + BUNDLE_NAME="RetroDECK-cooker.flatpak" + FOLDER=retrodeck-flatpak-cooker +fi + +BUILD_DIR="$HOME/cooker-persistent" +mkdir -p "$BUILD_DIR" +mkdir -vp "${BUILD_DIR}"/{.local,retrodeck-flatpak-cooker} + +flatpak-builder --user --force-clean \ +--install-deps-from=flathub \ +--install-deps-from=flathub-beta \ +--repo="${BUILD_DIR}/.local" \ +--download-only \ +"${BUILD_DIR}/${FOLDER}" \ +"${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" + diff --git a/automation_tools/flatpak_build_only.sh b/automation_tools/flatpak_build_only.sh index 18cc58c0..c7f84d82 100755 --- a/automation_tools/flatpak_build_only.sh +++ b/automation_tools/flatpak_build_only.sh @@ -2,7 +2,7 @@ # This script is downloading the needed files to prepare the manifest build -git config --global protocol.file.allow always +git config protocol.file.allow always if [ "${GITHUB_REF##*/}" = "main" ]; then BUNDLE_NAME="RetroDECK.flatpak" @@ -20,5 +20,5 @@ flatpak-builder --user --force-clean \ --install-deps-from=flathub-beta \ --repo=${GITHUB_WORKSPACE}/.local \ --disable-download \ - ${GITHUB_WORKSPACE}/"$FOLDER" \ - net.retrodeck.retrodeck.yml + "${GITHUB_WORKSPACE}/$FOLDER" \ + net.retrodeck.retrodeck.yml \ No newline at end of file diff --git a/automation_tools/flatpak_build_only_persistent.sh b/automation_tools/flatpak_build_only_persistent.sh new file mode 100755 index 00000000..4121cf9f --- /dev/null +++ b/automation_tools/flatpak_build_only_persistent.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +# This script is downloading the needed files to prepare the manifest build + +git config protocol.file.allow always + +if [ "${GITHUB_REF##*/}" = "main" ]; then + BUNDLE_NAME="RetroDECK.flatpak" + FOLDER=retrodeck-flatpak-main +else + BUNDLE_NAME="RetroDECK-cooker.flatpak" + FOLDER=retrodeck-flatpak-cooker +fi + +BUILD_DIR="$HOME/cooker-persistent" +mkdir -vp ${$BUILD_DIR}/.local +mkdir -vp ${$BUILD_DIR}/"$FOLDER" + +flatpak-builder --user --force-clean \ +--install-deps-from=flathub \ +--install-deps-from=flathub-beta \ +--repo="${BUILD_DIR}/.local" \ +--disable-download \ +"${BUILD_DIR}/${FOLDER}" \ +"${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml" diff --git a/automation_tools/install_dependencies.sh b/automation_tools/install_dependencies.sh index e4cc6261..8f33f8cb 100755 --- a/automation_tools/install_dependencies.sh +++ b/automation_tools/install_dependencies.sh @@ -2,4 +2,5 @@ # This scritp is installing the required dependencies to correctly run the pipeline and buold the flatpak sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2 curl -flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo \ No newline at end of file +flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo +flatpak remote-add --user --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo \ No newline at end of file diff --git a/automation_tools/pre_build_automation.sh b/automation_tools/pre_build_automation.sh index f4d56c62..895f2074 100755 --- a/automation_tools/pre_build_automation.sh +++ b/automation_tools/pre_build_automation.sh @@ -3,20 +3,43 @@ # For the file paths to work correctly, call this script with this command from the cloned repo folder root: # sh automation_tools/pre_build_automation.sh # Different actions need different information in the task list file +# branch: This changes the placeholder text to the currently-detected GIT branch if an automated build was started from a PR environment. # hash: Finds the SHA256 hash of a file online and updates the placeholder in the manifest. # Needs the URL of the file, in this line format: hash^PLACEHOLDERTEXT^url # latestcommit: Finds the most recent commit of a git repo and updated the placeholder in the manifest. # Needs the URL of the repo and the branch to find the latest commit from, in this line format: latestcommit^PLACEHOLDERTEXT^url^branch -# latestappimage: Finds the download URL and SHA256 hash of the latest AppImage release from a git repo -# Needs the API URL of the repo, in this line format: latestappimage^PLACEHOLDERTEXT^https://api.github.com/repos///releases/latest +# latestghrelease: Finds the download URL and SHA256 hash of the latest release from a git repo. +# Needs the API URL of the repo, in this line format: latestappimage^PLACEHOLDERTEXT^https://api.github.com/repos///releases/latest^ # As this command updates two different placeholders (one for the URL, one for the file hash) in the manifest, # the URL that would be used in the above example is "PLACEHOLDERTEXT" and the hash placeholder text would be "HASHPLACEHOLDERTEXT" # The "HASH" prefix of the placeholder text is hardcoded in the script +# The will be the file extension or other identifying suffix at the end of the file name that can be used to select from multiple releases. +# Example: If there are these file options for a given release: +# yuzu-mainline-20240205-149629642.AppImage +# yuzu-linux-20240205-149629642-source.tar.xz +# yuzu-linux-20240205-149629642-debug.tar.xz +# Entering "AppImage" (without quotes) for the will identify yuzu-mainline-20240205-149629642.AppImage +# Entering "source-.tar.xz" (without quotes) for the will identify yuzu-linux-20240205-149629642-source.tar.xz +# Entering "debug-tar.xz" (without quotes) for the will identify yuzu-linux-20240205-149629642-debug.tar.xz +# As a file extension like ".tar.zx" can apply to multiple file options, the entire part that is appended to each release name should be included. +# The will also only consider entries where the given suffix is at the end of the file name. So "AppImage" will identify "file.AppImage" but not "file.AppImage.zsync" +# outside_file: Prints the contents of a file from the build environment (such as the buildid file) and replaces the placeholder text with those contents. +# outside_env_var: Gets the value of an environmental variable from the build environment (the output of "echo $var" from the terminal) and replaces the placeholder text with that value. +# custom_command: Runs a single command explicitly as written in the $URL field of the task list, including variable and command expansion. This should work the same as if you were runnig the command directly from the terminal. +# This command does not need a PLACEHOLDERTEXT field in the task list, so needs to be in this syntax: custom_command^^$COMMAND +# url: This is used to calculate a dynamic URL and the value to the $caluculated_url environmental variable, for use in other subsequent commands. rd_manifest=${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml automation_task_list=${GITHUB_WORKSPACE}/automation_tools/automation_task_list.cfg current_branch=$(git rev-parse --abbrev-ref HEAD) +# During the PR automated tests instead of the branch name is returned "HEAD", fixing it +if [ $current_branch == "HEAD" ]; then + echo "Looks like we are on a PR environment, retrieving the branch name from which the PR is raised." + current_branch=$(echo $GITHUB_REF | sed 's@refs/heads/@@') + echo "The branch name from which the PR is raised is \"$current_branch\"." +fi + echo "Manifest location: $rd_manifest" echo "Automation task list location: $automation_task_list" echo @@ -28,21 +51,28 @@ echo while IFS="^" read -r action placeholder url branch do if [[ ! $action == "#"* ]] && [[ ! -z "$action" ]]; then - if [[ "$action" == "branch" ]]; then + case "$action" in + + "branch" ) echo echo "Placeholder text: $placeholder" echo "Current branch:" "$current_branch" echo /bin/sed -i 's^'"$placeholder"'^'"$current_branch"'^g' $rd_manifest - elif [[ "$action" == "hash" ]]; then + ;; + + "hash" ) echo echo "Placeholder text: $placeholder" - echo "URL to hash: $url" + calculated_url=$(eval echo "$url") # in case the url has to be calculated from an expression + echo "URL to hash: $calculated_url" echo - hash=$(curl -sL "$url" | sha256sum | cut -d ' ' -f1) + hash=$(curl -sL "$calculated_url" | sha256sum | cut -d ' ' -f1) echo "Hash found: $hash" /bin/sed -i 's^'"$placeholder"'^'"$hash"'^' $rd_manifest - elif [[ "$action" == "latestcommit" ]]; then + ;; + + "latestcommit" ) echo echo "Placeholder text: $placeholder" echo "Repo to get latest commit from: $url branch: $branch" @@ -50,18 +80,22 @@ do commit=$(git ls-remote "$url" "$branch" | cut -f1) echo "Commit found: $commit" /bin/sed -i 's^'"$placeholder"'^'"$commit"'^' $rd_manifest - elif [[ "$action" == "latestappimage" ]]; then + ;; + + "latestghrelease" ) echo echo "Placeholder text: $placeholder" echo "Repo to look for AppImage releases: $url" echo - appimageurl=$(curl -s "$url" | grep browser_download_url | grep "\.AppImage\"" | cut -d : -f 2,3 | tr -d \" | sed -n 1p | tr -d ' ') - echo "AppImage URL found: $appimageurl" - /bin/sed -i 's^'"$placeholder"'^'"$appimageurl"'^' $rd_manifest - appimagehash=$(curl -sL "$appimageurl" | sha256sum | cut -d ' ' -f1) - echo "AppImage hash found: $appimagehash" - /bin/sed -i 's^'"HASHFOR$placeholder"'^'"$appimagehash"'^' $rd_manifest - elif [[ "$action" == "outside_info" ]]; then + ghreleaseurl=$(curl -s "$url" | grep browser_download_url | grep "$branch\""$ | cut -d : -f 2,3 | tr -d \" | sed -n 1p | tr -d ' ') + echo "GitHub release URL found: $ghreleaseurl" + /bin/sed -i 's^'"$placeholder"'^'"$ghreleaseurl"'^' $rd_manifest + ghreleasehash=$(curl -sL "$ghreleaseurl" | sha256sum | cut -d ' ' -f1) + echo "GitHub release hash found: $ghreleasehash" + /bin/sed -i 's^'"HASHFOR$placeholder"'^'"$ghreleasehash"'^' $rd_manifest + ;; + + "outside_file" ) if [[ "$url" = \$* ]]; then # If value is a reference to a variable name eval url="$url" fi @@ -70,6 +104,36 @@ do echo "Information being injected: $(cat $url)" echo /bin/sed -i 's^'"$placeholder"'^'"$(cat $url)"'^' $rd_manifest - fi + ;; + + "outside_env_var" ) + if [[ "$url" = \$* ]]; then # If value is a reference to a variable name + eval url="$url" + fi + echo + echo "Placeholder text: $placeholder" + echo "Information being injected: $(echo $url)" + echo + /bin/sed -i 's^'"$placeholder"'^'"$(echo $url)"'^' $rd_manifest + ;; + + "custom_command" ) + echo + echo "Command to run: $url" + echo + eval "$url" + ;; + + "url" ) + # this is used to calculate a dynamic url + echo + echo "Placeholder text: $placeholder" + calculated_url=$(eval echo "$url") + echo "Information being injected: $calculated_url" + echo + /bin/sed -i 's^'"$placeholder"'^'"$calculated_url"'^' $rd_manifest + ;; + + esac fi done < "$automation_task_list" diff --git a/build-locally.sh b/build-locally.sh index 647db560..373d5b10 100755 --- a/build-locally.sh +++ b/build-locally.sh @@ -1,5 +1,8 @@ #!/bin/bash +# TODO: FEDORA +# sudo dnf install -y flatpak flatpak-builder p7zip p7zip-plugins xmlstarlet bzip2 curl + export GITHUB_WORKSPACE="." cp net.retrodeck.retrodeck.appdata.xml net.retrodeck.retrodeck.appdata.xml.bak cp net.retrodeck.retrodeck.yml net.retrodeck.retrodeck.yml.bak diff --git a/docs/assets/img/rd-esde-logo.svg b/docs/assets/img/rd-esde-logo.svg new file mode 100644 index 00000000..e4b76a32 --- /dev/null +++ b/docs/assets/img/rd-esde-logo.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/index.html b/docs/index.html index 7c577f6a..eaf0043b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -44,11 +44,12 @@ @@ -58,8 +59,8 @@
-

-

RetroDECK is a polished and beginner-friendly environment for playing your retro games on Steam Deck, available with just one click from the Discover app.

+

+

RetroDECK is a polished and beginner-friendly environment for playing your retro games on Steam Deck and Linux Desktop, available with just one click from the Discover app or wherever you get your flatpaks.

@@ -94,8 +95,8 @@
-

POWERED BY EMULATIONSTATION-DE

-

RetroDECK teamed up with ES-DE to bring you the best retro launcher out there!

+

POWERED BY ES-DE & THE RETRODECK FRAMEWORK

+

Together with ES-DE, other software and RetroDECK's own Framework. We are trying to bring you the best all-in-one system out there.

@@ -110,32 +111,40 @@
-

ready, set, go!

-

No configuration, just play!

+

pickup and play

+

No configuration is needed to start. You provide the games and we provide the play.

-

instant pickup

-

Close your game? No worries! Pick up exactly where you left off!

+

quick resume

+

Quit your game and pick it up exactly where you left off.

-

rewind

-

Seems like you died! Go back in time and retry without having to restart your game or lose a life. (Must be manually enabled during the beta)

+

rewind & fast forward

+

Go back in time and retry without having to restart your game or skip over that long conversation.

+
+
+

The Configurator

+

A super powerful multi-tool interface that allows you to have quick access to the advanced functions and tweak them to your desire.

+
+
+

Flatpak

+

Everything is contained within one application and not over your entire filesystem. Only one place to look and one place to backu.!

+
+
+

Use your system

+

With RetroDECK there is no need to replace your existing Linux / SteamOS to get a all-in-one retro gaming solution. Install it on what you already have.

+
+
+

Hotkey System

+

Features a in-depth global hotkey system with radial menus in addition to button combos via Steam Input.

cheats

-

Wanna be that guy? You can.

-
-
-

online gaming (Coming soon)

-

Thanks to RetroArch's Netplay you will be able to play online with your friends, stay tuned for this feature!

+

Can't surpass THAT point? Don't want to farm? Enable cheats and play smoothly.

-

metadata

-

RetroDECK pulls information from your library to create a beautiful user experience!

-
-
-

cloud saves (coming soon)

-

RetroDECK will backup your progression and sync it across multiple devices. (User configuration may be needed)

+

metadata & Images

+

From the ES-DE frontend you can pull information to your library to create a beautiful user experience from various sources, that fits your style.

Retro Achievements

@@ -143,16 +152,63 @@
+ + +
+
+
+
+

Always evolving & Improving

+

The RetroDECK Team always have several things in the works, what follows is just a tiny selection. To stay up to date on latest RetroDECK news check the the Wiki and join the Discord.

+
+ +
+
+
+
+
+ +
+

Planned / In-progress Features

+
+ +
+
+

online gaming

+

Tools to make it easier to play with your friends online.

+
+
+

cloud saves and backup

+

RetroDECK will backup your progression and sync it across multiple devices.

+
+
+

Multi-User System

+

Use local RetroDECK users or bind Steam Deck users to your own saves and emulator configurations.

+
+
+

Configurator Godot Edition

+

The new controller friendly configurator with even more advanced tools.

+
+
+

Add seperate games to Steam

+

Tools for adding all your favorite games as seperate entries in Steam with the click of a button.

+
+
+

More Content

+

RetroDECK will support even more Emulators / Game Engines / Tools and Systems.

+
+
+
-

Support us oN patreon!

-

Help us keep our servers running by donating to our Patreon!

+

Support RetroDECK or the software we use

+

Help us keep the game preservation ecosystem alive and healthy.

- +
@@ -161,7 +217,7 @@ - + @@ -171,4 +227,4 @@ - \ No newline at end of file + diff --git a/docs/wiki/steamdeck/layout/graphics/DS - Menu.png b/docs/wiki/steamdeck/layout/graphics/DS - Menu.png deleted file mode 100644 index 2d54213a..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/DS - Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/Disp_Graph_Menu.png b/docs/wiki/steamdeck/layout/graphics/Disp_Graph_Menu.png deleted file mode 100644 index 73684ea6..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/Disp_Graph_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/Emu_Spec_Menu.png b/docs/wiki/steamdeck/layout/graphics/Emu_Spec_Menu.png deleted file mode 100644 index 9015a072..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/Emu_Spec_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/GC_Wii_Menu.png b/docs/wiki/steamdeck/layout/graphics/GC_Wii_Menu.png deleted file mode 100644 index 1d1598af..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/GC_Wii_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/General_Menu.png b/docs/wiki/steamdeck/layout/graphics/General_Menu.png deleted file mode 100644 index 6ea53822..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/General_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/MAME_Menu.png b/docs/wiki/steamdeck/layout/graphics/MAME_Menu.png deleted file mode 100644 index 93287a4f..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/MAME_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/Main_Menu.png b/docs/wiki/steamdeck/layout/graphics/Main_Menu.png deleted file mode 100644 index bbf43d03..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/Main_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/Quick_Menu.png b/docs/wiki/steamdeck/layout/graphics/Quick_Menu.png deleted file mode 100644 index fb09918e..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/Quick_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/RetroArch_ Menu.png b/docs/wiki/steamdeck/layout/graphics/RetroArch_ Menu.png deleted file mode 100644 index 3d5ec715..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/RetroArch_ Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/Speed_Menu.png b/docs/wiki/steamdeck/layout/graphics/Speed_Menu.png deleted file mode 100644 index e86c48e2..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/Speed_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/State_Menu.png b/docs/wiki/steamdeck/layout/graphics/State_Menu.png deleted file mode 100644 index 1e363ac8..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/State_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/SteamDeck_Menu.png b/docs/wiki/steamdeck/layout/graphics/SteamDeck_Menu.png deleted file mode 100644 index 49026c9c..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/SteamDeck_Menu.png and /dev/null differ diff --git a/docs/wiki/steamdeck/layout/graphics/Switch_Menu.png b/docs/wiki/steamdeck/layout/graphics/Switch_Menu.png deleted file mode 100644 index 1e2acd0f..00000000 Binary files a/docs/wiki/steamdeck/layout/graphics/Switch_Menu.png and /dev/null differ diff --git a/emu-configs/PCSX2/PCSX2_ui.ini b/emu-configs/PCSX2/PCSX2_ui.ini index 8f9a5a8d..d7ba5375 100644 --- a/emu-configs/PCSX2/PCSX2_ui.ini +++ b/emu-configs/PCSX2/PCSX2_ui.ini @@ -44,7 +44,7 @@ Bios=RETRODECKHOMEDIR/roms/bios Snapshots=RETRODECKHOMEDIR/screenshots Savestates=RETRODECKHOMEDIR/states/ps2/pcsx2 MemoryCards=RETRODECKHOMEDIR/saves/ps2/memcards -Logs=RETRODECKHOMEDIR/.logs +Logs=RETRODECKHOMEDIR/logs Langs=/app/share/PCSX2/resources/locale Cheats=/var/config/PCSX2/cheats CheatsWS=/var/config/PCSX2/cheats_ws diff --git a/emu-configs/citra/qt-config.ini b/emu-configs/citra/qt-config.ini index 2038d65b..d67c1316 100644 --- a/emu-configs/citra/qt-config.ini +++ b/emu-configs/citra/qt-config.ini @@ -239,8 +239,8 @@ filter_mode=true filter_mode\default=true large_screen_proportion=@Variant(\0\0\0\x87@\x80\0\0) large_screen_proportion\default=true -layout_option=5 -layout_option\default=false +layout_option=0 +layout_option\default=true mono_render_option=0 mono_render_option\default=true pp_shader_name=none (builtin) diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps4.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_generic_standard.vdf old mode 100644 new mode 100755 similarity index 70% rename from emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps4.vdf rename to emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_generic_standard.vdf index 79e44094..7e6100aa --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps4.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_generic_standard.vdf @@ -1,18 +1,18 @@ "controller_mappings" { "version" "3" - "revision" "67" - "title" "RetroDECK: Official Layout - PS4" - "description" "RetroDECK: PS4" + "revision" "160" + "title" "RetroDECK: Generic - Standard v.1b" + "description" "RetroDECK: Generic - Standard - v.1b" "creator" "" "progenitor" "" - "url" "f" + "url" "" "export_type" "" - "controller_type" "controller_ps4" - "controller_caps" "35085311" + "controller_type" "controller_generic" + "controller_caps" "1573887" "major_revision" "0" "minor_revision" "0" - "Timestamp" "-640753472" + "Timestamp" "-926565536" "actions" { "Default" @@ -474,8 +474,8 @@ } "group" { - "id" "10" - "mode" "single_button" + "id" "12" + "mode" "joystick_move" "name" "" "description" "" "inputs" @@ -488,7 +488,12 @@ { "bindings" { - "binding" "xinput_button START, , " + "binding" "key_press LEFT_CONTROL, Swap Screens, , " + "binding" "key_press TAB, Swap Screens, , " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -501,92 +506,6 @@ "group" { "id" "11" - "mode" "single_button" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button SELECT, , " - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "14" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button LEFT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "15" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button RIGHT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "19" "mode" "four_buttons" "name" "" "description" "" @@ -601,7 +520,7 @@ "bindings" { "binding" "key_press LEFT_CONTROL, Pause / Resume, , " - "binding" "key_press A, Pause / Resume, , " + "binding" "key_press P, Pause / Resume, , " } } } @@ -618,7 +537,7 @@ "bindings" { "binding" "key_press LEFT_CONTROL, Take Screenshot, , " - "binding" "key_press B, Take Screenshot, , " + "binding" "key_press X, Take Screenshot, , " } } } @@ -664,98 +583,7 @@ } "group" { - "id" "20" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button RIGHT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "21" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button LEFT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "22" - "mode" "joystick_move" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "key_press LEFT_CONTROL, Swap Screens, , " - "binding" "key_press TAB, Swap Screens, , " - } - "settings" - { - "haptic_intensity" "2" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "23" + "id" "13" "mode" "trigger" "name" "" "description" "" @@ -790,7 +618,7 @@ } "group" { - "id" "24" + "id" "14" "mode" "trigger" "name" "" "description" "" @@ -825,7 +653,7 @@ } "group" { - "id" "25" + "id" "15" "mode" "joystick_move" "name" "" "description" "" @@ -851,7 +679,7 @@ } "group" { - "id" "26" + "id" "16" "mode" "dpad" "name" "" "description" "" @@ -950,7 +778,7 @@ } "group" { - "id" "29" + "id" "17" "mode" "joystick_mouse" "name" "" "description" "" @@ -964,7 +792,7 @@ { "bindings" { - "binding" "mouse_button LEFT, , " + "binding" "mouse_button LEFT, Left Click, , " } } } @@ -980,7 +808,7 @@ } "group" { - "id" "30" + "id" "18" "mode" "dpad" "name" "" "description" "" @@ -998,6 +826,14 @@ "binding" "key_press TAB, Swap Screens, , " } } + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, , " + "binding" "key_press W, , " + } + } } "disabled_activators" { @@ -1011,7 +847,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Esacpe, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -1035,6 +871,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -1043,7 +895,7 @@ { "bindings" { - "binding" "mouse_button RIGHT, , " + "binding" "mouse_button RIGHT, Right Click, , " } } } @@ -1059,13 +911,13 @@ } "group" { - "id" "33" - "mode" "absolute_mouse" - "name" "" + "id" "19" + "mode" "radial_menu" + "name" "Global Radial" "description" "" "inputs" { - "click" + "touch_menu_button_0" { "activators" { @@ -1073,11 +925,11 @@ { "bindings" { - "binding" "mouse_button MIDDLE, , " + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " } "settings" { - "haptic_intensity" "1" + "haptic_intensity" "2" } } } @@ -1085,17 +937,7 @@ { } } - } - } - "group" - { - "id" "35" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" + "touch_menu_button_1" { "activators" { @@ -1103,11 +945,377 @@ { "bindings" { - "binding" "mouse_button MIDDLE, , " + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " } "settings" { - "haptic_intensity" "1" + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -1116,123 +1324,14 @@ } } } - } - "group" - { - "id" "7" - "mode" "switches" - "name" "" - "description" "" - "inputs" + "settings" { - "button_escape" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button start, , " - } - } - } - "disabled_activators" - { - } - } - "button_menu" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button SELECT, , " - } - } - "Full_Press" - { - "bindings" - { - "binding" "controller_action CHANGE_PRESET 2 0 1, , " - } - } - } - "disabled_activators" - { - } - } - "left_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_left, , " - } - } - } - "disabled_activators" - { - } - } - "right_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_right, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_left" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button a, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_right" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button x, , " - } - } - } - "disabled_activators" - { - } - } + "touchmenu_button_fire_type" "0" } } "group" { - "id" "18" + "id" "10" "mode" "switches" "name" "" "description" "" @@ -1263,10 +1362,10 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 1 0 1, , " + "binding" "controller_action CHANGE_PRESET 1 0 0, RetroDECK - Set, , " } } - "release" + "Full_Press" { "bindings" { @@ -1346,6 +1445,119 @@ } } } + "group" + { + "id" "7" + "mode" "switches" + "name" "" + "description" "" + "inputs" + { + "button_escape" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button start, , " + } + } + } + "disabled_activators" + { + } + } + "button_menu" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button select, , " + } + } + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 2 0 0, , " + } + } + } + "disabled_activators" + { + } + } + "left_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_left, , " + } + } + } + "disabled_activators" + { + } + } + "right_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_right, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_left" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button a, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_right" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button x, , " + } + } + } + "disabled_activators" + { + } + } + } + } "preset" { "id" "0" @@ -1354,19 +1566,11 @@ { "7" "switch active" "0" "button_diamond active" - "1" "left_trackpad inactive" - "11" "left_trackpad inactive" - "15" "left_trackpad active" - "2" "right_trackpad inactive" - "6" "right_trackpad inactive" - "10" "right_trackpad inactive" - "14" "right_trackpad active" "3" "joystick active" "4" "left_trigger active" "5" "right_trigger active" "8" "right_joystick active" "9" "dpad active" - "35" "center_trackpad active" } } "preset" @@ -1375,18 +1579,16 @@ "name" "Preset_1000001" "group_source_bindings" { - "18" "switch active" - "19" "button_diamond active" - "20" "left_trackpad active" - "21" "right_trackpad active" - "22" "joystick inactive" - "30" "joystick active" - "23" "left_trigger active" - "24" "right_trigger active" - "25" "right_joystick inactive" - "29" "right_joystick active" - "26" "dpad active" - "33" "center_trackpad active" + "10" "switch active" + "11" "button_diamond active" + "12" "joystick inactive" + "18" "joystick inactive" + "19" "joystick active" + "13" "left_trigger active" + "14" "right_trigger active" + "15" "right_joystick inactive" + "17" "right_joystick active" + "16" "dpad active" } } "settings" diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps5.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps3_dualshock3.vdf old mode 100644 new mode 100755 similarity index 72% rename from emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps5.vdf rename to emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps3_dualshock3.vdf index 4aa48205..d9eb5f66 --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps5.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps3_dualshock3.vdf @@ -1,18 +1,18 @@ "controller_mappings" { "version" "3" - "revision" "71" - "title" "RetroDECK: Official Layout - PS5" - "description" "RetroDECK: PS5" + "revision" "93" + "title" "RetroDECK: DualShock 3 v.1b" + "description" "RetroDECK: PS3 - DualShock 3 - v.1b" "creator" "" "progenitor" "" - "url" "f" + "url" "" "export_type" "" - "controller_type" "controller_ps5" - "controller_caps" "43473919" + "controller_type" "controller_ps3" + "controller_caps" "1590271" "major_revision" "0" "minor_revision" "0" - "Timestamp" "-636502528" + "Timestamp" "-925476208" "actions" { "Default" @@ -474,8 +474,8 @@ } "group" { - "id" "10" - "mode" "single_button" + "id" "12" + "mode" "joystick_move" "name" "" "description" "" "inputs" @@ -488,7 +488,12 @@ { "bindings" { - "binding" "xinput_button START, , " + "binding" "key_press LEFT_CONTROL, Swap Screens, , " + "binding" "key_press TAB, Swap Screens, , " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -501,92 +506,6 @@ "group" { "id" "11" - "mode" "single_button" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button SELECT, , " - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "25" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button LEFT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "26" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button RIGHT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "30" "mode" "four_buttons" "name" "" "description" "" @@ -664,98 +583,7 @@ } "group" { - "id" "31" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button RIGHT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "32" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button LEFT, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "33" - "mode" "joystick_move" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button RIGHT, Swap Screens, , " - "binding" "controller_action empty_sub_command, Swap Screens, , " - } - "settings" - { - "haptic_intensity" "2" - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "34" + "id" "13" "mode" "trigger" "name" "" "description" "" @@ -790,7 +618,7 @@ } "group" { - "id" "35" + "id" "14" "mode" "trigger" "name" "" "description" "" @@ -825,7 +653,7 @@ } "group" { - "id" "36" + "id" "15" "mode" "joystick_move" "name" "" "description" "" @@ -839,7 +667,7 @@ { "bindings" { - "binding" "mouse_button LEFT, Escape, , " + "binding" "key_press ESCAPE, Escape, , " } } } @@ -851,7 +679,7 @@ } "group" { - "id" "37" + "id" "16" "mode" "dpad" "name" "" "description" "" @@ -950,8 +778,8 @@ } "group" { - "id" "40" - "mode" "absolute_mouse" + "id" "17" + "mode" "joystick_mouse" "name" "" "description" "" "inputs" @@ -964,11 +792,7 @@ { "bindings" { - "binding" "mouse_button MIDDLE, , " - } - "settings" - { - "haptic_intensity" "1" + "binding" "mouse_button LEFT, , " } } } @@ -977,40 +801,14 @@ } } } - } - "group" - { - "id" "41" - "mode" "absolute_mouse" - "name" "" - "description" "" - "inputs" + "settings" { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button MIDDLE, , " - } - "settings" - { - "haptic_intensity" "1" - } - } - } - "disabled_activators" - { - } - } + "output_joystick" "2" } } "group" { - "id" "42" + "id" "18" "mode" "dpad" "name" "" "description" "" @@ -1041,7 +839,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -1065,6 +863,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -1089,166 +903,7 @@ } "group" { - "id" "43" - "mode" "joystick_mouse" - "name" "" - "description" "" - "inputs" - { - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button LEFT, , " - } - } - } - "disabled_activators" - { - } - } - } - "settings" - { - "output_joystick" "2" - } - } - "group" - { - "id" "7" - "mode" "switches" - "name" "" - "description" "" - "inputs" - { - "button_escape" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button start, , " - } - } - } - "disabled_activators" - { - } - } - "button_menu" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button select, , " - } - } - "Full_Press" - { - "bindings" - { - "binding" "controller_action CHANGE_PRESET 2 0 1, , " - } - } - } - "disabled_activators" - { - } - } - "left_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_left, , " - } - } - } - "disabled_activators" - { - } - } - "right_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_right, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_left" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button a, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_right" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button x, , " - } - } - } - "disabled_activators" - { - } - } - "button_capture" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "controller_action set_led 255 0 0 100 100 2, , " - } - } - } - "disabled_activators" - { - } - } - } - } - "group" - { - "id" "29" + "id" "10" "mode" "switches" "name" "" "description" "" @@ -1279,10 +934,10 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 1 0 1, , " + "binding" "controller_action CHANGE_PRESET 1 0 0, RetroDECK - Set, , " } } - "release" + "Full_Press" { "bindings" { @@ -1360,7 +1015,17 @@ { } } - "button_capture" + } + } + "group" + { + "id" "7" + "mode" "switches" + "name" "" + "description" "" + "inputs" + { + "button_escape" { "activators" { @@ -1368,7 +1033,7 @@ { "bindings" { - "binding" "controller_action set_led 255 0 0 100 100 2, , " + "binding" "xinput_button start, , " } } } @@ -1376,6 +1041,513 @@ { } } + "button_menu" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button select, , " + } + } + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 2 0 0, , " + } + } + } + "disabled_activators" + { + } + } + "left_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_left, , " + } + } + } + "disabled_activators" + { + } + } + "right_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_right, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_left" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button a, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_right" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button x, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "19" + "mode" "radial_menu" + "name" "dial" + "description" "" + "inputs" + { + "touch_menu_button_0" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_1" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "touchmenu_button_fire_type" "0" } } "preset" @@ -1386,19 +1558,11 @@ { "7" "switch active" "0" "button_diamond active" - "1" "left_trackpad inactive" - "11" "left_trackpad inactive" - "26" "left_trackpad active" - "2" "right_trackpad inactive" - "6" "right_trackpad inactive" - "10" "right_trackpad inactive" - "25" "right_trackpad active" "3" "joystick active" "4" "left_trigger active" "5" "right_trigger active" "8" "right_joystick active" "9" "dpad active" - "41" "center_trackpad active" } } "preset" @@ -1407,18 +1571,16 @@ "name" "Preset_1000001" "group_source_bindings" { - "29" "switch active" - "30" "button_diamond active" - "31" "left_trackpad active" - "32" "right_trackpad active" - "33" "joystick inactive" - "42" "joystick active" - "34" "left_trigger active" - "35" "right_trigger active" - "36" "right_joystick inactive" - "43" "right_joystick active" - "37" "dpad active" - "40" "center_trackpad active" + "10" "switch active" + "11" "button_diamond active" + "12" "joystick inactive" + "18" "joystick inactive" + "19" "joystick active" + "13" "left_trigger active" + "14" "right_trigger active" + "15" "right_joystick inactive" + "17" "right_joystick active" + "16" "dpad active" } } "settings" diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps3.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps4_dualshock4.vdf old mode 100644 new mode 100755 similarity index 54% rename from emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps3.vdf rename to emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps4_dualshock4.vdf index 6cd8052f..479ce25d --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps3.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps4_dualshock4.vdf @@ -1,18 +1,18 @@ "controller_mappings" { "version" "3" - "revision" "84" - "title" "RetroDECK: Official Layout - PS3" - "description" "RetroDECK: PS3" + "revision" "81" + "title" "RetroDECK: DualShock 4 v.1b" + "description" "RetroDECK: PS4 - DualShock 4 - v.1b" "creator" "" "progenitor" "" "url" "" "export_type" "" - "controller_type" "controller_ps3" - "controller_caps" "1590271" + "controller_type" "controller_ps4" + "controller_caps" "" "major_revision" "0" "minor_revision" "0" - "Timestamp" "-1069299824" + "Timestamp" "1079447734" "actions" { "Default" @@ -474,8 +474,8 @@ } "group" { - "id" "12" - "mode" "joystick_move" + "id" "10" + "mode" "single_button" "name" "" "description" "" "inputs" @@ -488,12 +488,7 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Swap Screens, , " - "binding" "key_press TAB, Swap Screens, , " - } - "settings" - { - "haptic_intensity" "2" + "binding" "xinput_button START, , " } } } @@ -506,6 +501,92 @@ "group" { "id" "11" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "14" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button LEFT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "15" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "19" "mode" "four_buttons" "name" "" "description" "" @@ -520,7 +601,7 @@ "bindings" { "binding" "key_press LEFT_CONTROL, Pause / Resume, , " - "binding" "key_press P, Pause / Resume, , " + "binding" "key_press A, Pause / Resume, , " } } } @@ -537,7 +618,7 @@ "bindings" { "binding" "key_press LEFT_CONTROL, Take Screenshot, , " - "binding" "key_press X, Take Screenshot, , " + "binding" "key_press B, Take Screenshot, , " } } } @@ -583,7 +664,98 @@ } "group" { - "id" "13" + "id" "20" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "21" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button LEFT, Left Click, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "22" + "mode" "joystick_move" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Screens, , " + "binding" "key_press TAB, Swap Screens, , " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "23" "mode" "trigger" "name" "" "description" "" @@ -618,7 +790,7 @@ } "group" { - "id" "14" + "id" "24" "mode" "trigger" "name" "" "description" "" @@ -653,7 +825,7 @@ } "group" { - "id" "15" + "id" "25" "mode" "joystick_move" "name" "" "description" "" @@ -679,7 +851,7 @@ } "group" { - "id" "16" + "id" "26" "mode" "dpad" "name" "" "description" "" @@ -778,7 +950,7 @@ } "group" { - "id" "17" + "id" "29" "mode" "joystick_mouse" "name" "" "description" "" @@ -792,7 +964,7 @@ { "bindings" { - "binding" "mouse_button LEFT, , " + "binding" "mouse_button LEFT, Left Click, , " } } } @@ -808,7 +980,7 @@ } "group" { - "id" "18" + "id" "30" "mode" "dpad" "name" "" "description" "" @@ -839,7 +1011,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -863,6 +1035,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -871,7 +1059,7 @@ { "bindings" { - "binding" "mouse_button RIGHT, , " + "binding" "mouse_button RIGHT, Right Click, , " } } } @@ -887,7 +1075,717 @@ } "group" { - "id" "10" + "id" "33" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "35" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "37" + "mode" "radial_menu" + "name" "Global Radial" + "description" "" + "inputs" + { + "touch_menu_button_0" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_1" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "touchmenu_button_fire_type" "0" + } + } + "group" + { + "id" "38" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, Right Click, , " + } + "settings" + { + "haptic_intensity" "0" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "39" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, Middle Click, , " + } + "settings" + { + "haptic_intensity" "0" + } + } + } + "disabled_activators" + { + } + } + } + "gameactions" + { + } + } + "group" + { + "id" "41" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + } + "group" + { + "id" "42" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + } + "group" + { + "id" "43" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "7" + "mode" "switches" + "name" "" + "description" "" + "inputs" + { + "button_escape" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button start, , " + } + } + } + "disabled_activators" + { + } + } + "button_menu" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button SELECT, , " + } + } + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 2 0 1, , " + } + } + } + "disabled_activators" + { + } + } + "left_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_left, , " + } + } + } + "disabled_activators" + { + } + } + "right_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_right, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_left" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button a, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_right" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button x, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "18" "mode" "switches" "name" "" "description" "" @@ -918,7 +1816,7 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 1 0 1, RetroDECK - Set, , " + "binding" "controller_action CHANGE_PRESET 1 0 1, , " } } "Full_Press" @@ -1001,119 +1899,6 @@ } } } - "group" - { - "id" "7" - "mode" "switches" - "name" "" - "description" "" - "inputs" - { - "button_escape" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button start, , " - } - } - } - "disabled_activators" - { - } - } - "button_menu" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button select, , " - } - } - "Full_Press" - { - "bindings" - { - "binding" "controller_action CHANGE_PRESET 2 0 1, , " - } - } - } - "disabled_activators" - { - } - } - "left_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_left, , " - } - } - } - "disabled_activators" - { - } - } - "right_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_right, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_left" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button a, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_right" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button x, , " - } - } - } - "disabled_activators" - { - } - } - } - } "preset" { "id" "0" @@ -1122,11 +1907,21 @@ { "7" "switch active" "0" "button_diamond active" + "1" "left_trackpad inactive" + "11" "left_trackpad active" + "15" "left_trackpad inactive" + "2" "right_trackpad inactive" + "6" "right_trackpad inactive" + "10" "right_trackpad inactive" + "14" "right_trackpad active" "3" "joystick active" "4" "left_trigger active" "5" "right_trigger active" "8" "right_joystick active" "9" "dpad active" + "35" "center_trackpad inactive" + "43" "center_trackpad inactive" + "41" "gyro active" } } "preset" @@ -1135,15 +1930,22 @@ "name" "Preset_1000001" "group_source_bindings" { - "10" "switch active" - "11" "button_diamond active" - "12" "joystick inactive" - "18" "joystick active" - "13" "left_trigger active" - "14" "right_trigger active" - "15" "right_joystick inactive" - "17" "right_joystick active" - "16" "dpad active" + "18" "switch active" + "19" "button_diamond active" + "20" "left_trackpad inactive" + "38" "left_trackpad active" + "21" "right_trackpad active" + "22" "joystick inactive" + "30" "joystick inactive" + "37" "joystick active" + "23" "left_trigger active" + "24" "right_trigger active" + "25" "right_joystick inactive" + "29" "right_joystick active" + "26" "dpad active" + "33" "center_trackpad inactive" + "39" "center_trackpad inactive" + "42" "gyro active" } } "settings" diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_generic.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps5_dualsense.vdf old mode 100644 new mode 100755 similarity index 53% rename from emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_generic.vdf rename to emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps5_dualsense.vdf index 4f5e4dd8..58797a73 --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_generic.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_ps5_dualsense.vdf @@ -1,18 +1,18 @@ "controller_mappings" { "version" "3" - "revision" "84" - "title" "RetroDECK: Official Layout - Generic" - "description" "RetroDECK: Generic" + "revision" "114" + "title" "RetroDECK: DualSense v.1b" + "description" "RetroDECK: PS5 - DualSense v.1" "creator" "" "progenitor" "" - "url" "" + "url" "f" "export_type" "" - "controller_type" "controller_generic" - "controller_caps" "1590271" + "controller_type" "controller_ps5" + "controller_caps" "35148799" "major_revision" "0" "minor_revision" "0" - "Timestamp" "-1069299824" + "Timestamp" "-1043740912" "actions" { "Default" @@ -474,8 +474,8 @@ } "group" { - "id" "12" - "mode" "joystick_move" + "id" "10" + "mode" "single_button" "name" "" "description" "" "inputs" @@ -488,12 +488,7 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Swap Screens, , " - "binding" "key_press TAB, Swap Screens, , " - } - "settings" - { - "haptic_intensity" "2" + "binding" "xinput_button START, , " } } } @@ -506,6 +501,92 @@ "group" { "id" "11" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "25" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button LEFT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "26" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "30" "mode" "four_buttons" "name" "" "description" "" @@ -583,7 +664,98 @@ } "group" { - "id" "13" + "id" "31" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "32" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button LEFT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "33" + "mode" "joystick_move" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, Swap Screens, , " + "binding" "controller_action empty_sub_command, Swap Screens, , " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "34" "mode" "trigger" "name" "" "description" "" @@ -618,7 +790,7 @@ } "group" { - "id" "14" + "id" "35" "mode" "trigger" "name" "" "description" "" @@ -653,7 +825,7 @@ } "group" { - "id" "15" + "id" "36" "mode" "joystick_move" "name" "" "description" "" @@ -667,7 +839,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "mouse_button LEFT, Escape, , " } } } @@ -679,7 +851,7 @@ } "group" { - "id" "16" + "id" "37" "mode" "dpad" "name" "" "description" "" @@ -778,8 +950,8 @@ } "group" { - "id" "17" - "mode" "joystick_mouse" + "id" "40" + "mode" "absolute_mouse" "name" "" "description" "" "inputs" @@ -792,7 +964,11 @@ { "bindings" { - "binding" "mouse_button LEFT, , " + "binding" "mouse_button MIDDLE, , " + } + "settings" + { + "haptic_intensity" "1" } } } @@ -801,14 +977,40 @@ } } } - "settings" + } + "group" + { + "id" "41" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" { - "output_joystick" "2" + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } } } "group" { - "id" "18" + "id" "42" "mode" "dpad" "name" "" "description" "" @@ -839,7 +1041,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -863,6 +1065,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -871,7 +1089,7 @@ { "bindings" { - "binding" "mouse_button RIGHT, , " + "binding" "mouse_button RIGHT, Right Click, , " } } } @@ -887,7 +1105,710 @@ } "group" { - "id" "10" + "id" "43" + "mode" "joystick_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button LEFT, Left Click, , " + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "output_joystick" "2" + } + } + "group" + { + "id" "45" + "mode" "radial_menu" + "name" "Global Radial" + "description" "" + "inputs" + { + "touch_menu_button_0" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_1" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "touchmenu_button_fire_type" "0" + } + } + "group" + { + "id" "47" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, , " + } + "settings" + { + "haptic_intensity" "0" + } + } + } + "disabled_activators" + { + } + } + } + "gameactions" + { + } + } + "group" + { + "id" "49" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + "settings" + { + "haptic_intensity" "0" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "50" + "mode" "single_button" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button MIDDLE, , " + } + "settings" + { + "haptic_intensity" "0" + } + } + } + "disabled_activators" + { + } + } + } + "gameactions" + { + } + } + "group" + { + "id" "51" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + } + "group" + { + "id" "52" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + } + "group" + { + "id" "7" + "mode" "switches" + "name" "" + "description" "" + "inputs" + { + "button_escape" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button start, , " + } + } + } + "disabled_activators" + { + } + } + "button_menu" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button select, , " + } + } + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 2 0 0, , " + } + } + } + "disabled_activators" + { + } + } + "left_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_left, , " + } + } + } + "disabled_activators" + { + } + } + "right_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_right, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_left" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button a, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_right" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button x, , " + } + } + } + "disabled_activators" + { + } + } + "button_capture" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "controller_action set_led 255 0 0 100 100 2, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "29" "mode" "switches" "name" "" "description" "" @@ -918,7 +1839,7 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 1 0 1, RetroDECK - Set, , " + "binding" "controller_action CHANGE_PRESET 1 0 0, , " } } "Full_Press" @@ -999,17 +1920,7 @@ { } } - } - } - "group" - { - "id" "7" - "mode" "switches" - "name" "" - "description" "" - "inputs" - { - "button_escape" + "button_capture" { "activators" { @@ -1017,94 +1928,7 @@ { "bindings" { - "binding" "xinput_button start, , " - } - } - } - "disabled_activators" - { - } - } - "button_menu" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button select, , " - } - } - "Full_Press" - { - "bindings" - { - "binding" "controller_action CHANGE_PRESET 2 0 1, , " - } - } - } - "disabled_activators" - { - } - } - "left_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_left, , " - } - } - } - "disabled_activators" - { - } - } - "right_bumper" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button shoulder_right, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_left" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button a, , " - } - } - } - "disabled_activators" - { - } - } - "button_back_right" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "xinput_button x, , " + "binding" "controller_action set_led 255 0 0 100 100 2, , " } } } @@ -1122,11 +1946,21 @@ { "7" "switch active" "0" "button_diamond active" + "1" "left_trackpad inactive" + "11" "left_trackpad active" + "26" "left_trackpad inactive" + "2" "right_trackpad inactive" + "6" "right_trackpad inactive" + "10" "right_trackpad inactive" + "25" "right_trackpad active" "3" "joystick active" "4" "left_trigger active" "5" "right_trigger active" "8" "right_joystick active" "9" "dpad active" + "41" "center_trackpad inactive" + "47" "center_trackpad inactive" + "51" "gyro active" } } "preset" @@ -1135,15 +1969,22 @@ "name" "Preset_1000001" "group_source_bindings" { - "10" "switch active" - "11" "button_diamond active" - "12" "joystick inactive" - "18" "joystick active" - "13" "left_trigger active" - "14" "right_trigger active" - "15" "right_joystick inactive" - "17" "right_joystick active" - "16" "dpad active" + "29" "switch active" + "30" "button_diamond active" + "31" "left_trackpad inactive" + "49" "left_trackpad active" + "32" "right_trackpad active" + "33" "joystick inactive" + "42" "joystick inactive" + "45" "joystick active" + "34" "left_trigger active" + "35" "right_trigger active" + "36" "right_joystick inactive" + "43" "right_joystick active" + "37" "dpad active" + "40" "center_trackpad inactive" + "50" "center_trackpad inactive" + "52" "gyro active" } } "settings" diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_steamcontroller_gordon.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_steam_controller_gordon.vdf old mode 100644 new mode 100755 similarity index 51% rename from emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_steamcontroller_gordon.vdf rename to emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_steam_controller_gordon.vdf index da304181..dfb479ca --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_steamcontroller_gordon.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_steam_controller_gordon.vdf @@ -1,20 +1,20 @@ "controller_mappings" { "version" "3" - "revision" "60" - "title" "RetroDECK: Official Layout - Steam Controller" - "description" "RetroDECK: Steam Controller" + "revision" "73" + "title" "RetroDECK: Steam Controller - Gordon v.1b" + "description" "RetroDECK: Steam Controller - Gordon v.1b" "creator" "" "progenitor" "" "url" "" "export_type" "" "controller_type" "controller_steamcontroller_gordon" "controller_caps" "2179063" - "major_revision" "0" + "major_revision" "1" "minor_revision" "0" - "Timestamp" "-952722512" + "Timestamp" "-596696880" "actions" - { +{ "Default" { "title" "RetroDECK - Set" @@ -25,6 +25,11 @@ "title" "Global Hotkeys - Set" "legacy_set" "1" } + "Preset_1000002" + { + "title" "Mouse Mode - Set" + "legacy_set" "1" + } } "action_layers" { @@ -501,26 +506,6 @@ { } } - "click" - { - "activators" - { - "Full_Press" - { - "bindings" - { - "binding" "mouse_button RIGHT, , " - } - "settings" - { - "haptic_intensity" "0" - } - } - } - "disabled_activators" - { - } - } } } "group" @@ -782,7 +767,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -806,6 +791,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -829,6 +830,752 @@ } } "group" + { + "id" "29" + "mode" "four_buttons" + "name" "" + "description" "" + "inputs" + { + "button_a" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button A, , " + } + } + } + "disabled_activators" + { + } + } + "button_b" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button B, , " + } + } + } + "disabled_activators" + { + } + } + "button_x" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button X, , " + } + } + } + "disabled_activators" + { + } + } + "button_y" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button Y, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "30" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + "dpad_north" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button dpad_up, , " + } + } + } + "disabled_activators" + { + } + } + "dpad_south" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button dpad_down, , " + } + } + } + "disabled_activators" + { + } + } + "dpad_east" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button dpad_right, , " + } + } + } + "disabled_activators" + { + } + } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button dpad_left, , " + } + } + } + "disabled_activators" + { + } + } + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, , " + } + "settings" + { + "haptic_intensity" "0" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "31" + "mode" "mouse_joystick" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button JOYSTICK_RIGHT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "32" + "mode" "joystick_move" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button JOYSTICK_LEFT, , " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "33" + "mode" "trigger" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button TRIGGER_LEFT, , " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "output_trigger" "1" + } + } + "group" + { + "id" "34" + "mode" "trigger" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button TRIGGER_RIGHT, , " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "output_trigger" "2" + } + } + "group" + { + "id" "36" + "mode" "absolute_mouse" + "name" "" + "description" "" + "inputs" + { + "click" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button LEFT, , " + } + "settings" + { + "haptic_intensity" "1" + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "38" + "mode" "radial_menu" + "name" "Global Radial" + "description" "" + "inputs" + { + "touch_menu_button_0" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_1" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "touchmenu_button_fire_type" "0" + } + } + "group" { "id" "7" "mode" "switches" @@ -915,7 +1662,7 @@ { "bindings" { - "binding" "xinput_button JOYSTICK_LEFT, , " + "binding" "controller_action CHANGE_PRESET 2 0 0, , " } } } @@ -931,7 +1678,7 @@ { "bindings" { - "binding" "xinput_button JOYSTICK_RIGHT, , " + "binding" "controller_action CHANGE_PRESET 3 0 0, , " } } } @@ -1023,6 +1770,186 @@ { } } + "button_back_left" + { + "activators" + { + "release" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 1 0 0, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "28" + "mode" "switches" + "name" "" + "description" "" + "inputs" + { + "button_escape" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button start, , " + } + } + } + "disabled_activators" + { + } + } + "button_menu" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button select, , " + } + } + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 2 0 1, , " + } + } + } + "disabled_activators" + { + } + } + "left_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_left, , " + } + } + } + "disabled_activators" + { + } + } + "right_bumper" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "xinput_button shoulder_right, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_left" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 2 0 0, , " + } + } + } + "disabled_activators" + { + } + } + "button_back_right" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "controller_action CHANGE_PRESET 1 0 0, , " + } + } + } + "disabled_activators" + { + } + } + } + } + "group" + { + "id" "40" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + "gameactions" + { + } + } + "group" + { + "id" "41" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + "gameactions" + { + } + } + "group" + { + "id" "42" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + "gameactions" + { } } "preset" @@ -1042,6 +1969,7 @@ "4" "left_trigger active" "5" "right_trigger active" "23" "gyro inactive" + "40" "gyro active" } } "preset" @@ -1056,9 +1984,28 @@ "13" "right_trackpad inactive" "20" "right_trackpad active" "14" "joystick inactive" - "26" "joystick active" + "26" "joystick inactive" + "38" "joystick active" "15" "left_trigger active" "16" "right_trigger active" + "41" "gyro active" + } + } + "preset" + { + "id" "2" + "name" "Preset_1000002" + "group_source_bindings" + { + "28" "switch active" + "29" "button_diamond active" + "30" "left_trackpad active" + "31" "right_trackpad inactive" + "36" "right_trackpad active" + "32" "joystick active" + "33" "left_trigger active" + "34" "right_trigger active" + "42" "gyro active" } } "settings" diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_switchpro.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_switch_pro.vdf old mode 100644 new mode 100755 similarity index 67% rename from emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_switchpro.vdf rename to emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_switch_pro.vdf index 62bcdd2f..c4c07a17 --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_switchpro.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_switch_pro.vdf @@ -1,20 +1,20 @@ "controller_mappings" { "version" "3" - "revision" "72" - "title" "RetroDECK: Official Layout - Switch Pro" - "description" "RetroDECK: Switch Pro" + "revision" "83" + "title" "RetroDECK: Switch Pro v.1b" + "description" "RetroDECK: Switch - Pro Controller - v.1b" "creator" "" "progenitor" "" "url" "" "export_type" "" "controller_type" "controller_switch_pro" - "controller_caps" "68699135" + "controller_caps" "77087743" "major_revision" "0" "minor_revision" "0" - "Timestamp" "-643537072" + "Timestamp" "-936017792" "actions" -{ + { "Default" { "title" "RetroDECK - Set" @@ -488,8 +488,8 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Pause / Resume, , " - "binding" "key_press P, Pause / Resume, , " + "binding" "key_press LEFT_CONTROL, Take Screenshot, , " + "binding" "key_press X, Take Screenshot, , " } } } @@ -505,8 +505,8 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Take Screenshot, , " - "binding" "key_press X, Take Screenshot, , " + "binding" "key_press LEFT_CONTROL, Pause / Resume, , " + "binding" "key_press P, Pause / Resume, , " } } } @@ -522,8 +522,8 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Fullscreen Toggle, , " - "binding" "key_press RETURN, Fullscreen Toggle, , " + "binding" "key_press LEFT_CONTROL, Open Menu, , " + "binding" "key_press M, Open Menu, , " } } } @@ -539,8 +539,8 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Open Menu, , " - "binding" "key_press M, Open Menu, , " + "binding" "key_press LEFT_CONTROL, Fullscreen Toggle, , " + "binding" "key_press RETURN, Fullscreen Toggle, , " } } } @@ -809,7 +809,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -833,6 +833,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -871,7 +887,7 @@ { "bindings" { - "binding" "mouse_button LEFT, , " + "binding" "mouse_button LEFT, Left Click, , " } } } @@ -886,6 +902,426 @@ } } "group" + { + "id" "22" + "mode" "radial_menu" + "name" "Global Radial" + "description" "" + "inputs" + { + "touch_menu_button_0" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_1" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "touchmenu_button_fire_type" "0" + } + } + "group" { "id" "7" "mode" "switches" @@ -918,7 +1354,7 @@ "bindings" { "binding" "xinput_button SELECT, , " - "binding" "controller_action CHANGE_PRESET 2 0 1, , " + "binding" "controller_action CHANGE_PRESET 2 0 0, , " } } } @@ -1041,7 +1477,7 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 1 0 1, , " + "binding" "controller_action CHANGE_PRESET 1 0 0, , " } } "Full_Press" @@ -1140,6 +1576,40 @@ } } } + "group" + { + "id" "24" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + "gameactions" + { + } + } + "group" + { + "id" "25" + "mode" "dpad" + "name" "" + "description" "" + "inputs" + { + } + "settings" + { + "requires_click" "0" + } + "gameactions" + { + } + } "preset" { "id" "0" @@ -1153,6 +1623,7 @@ "5" "right_trigger active" "8" "right_joystick active" "9" "dpad active" + "24" "gyro active" } } "preset" @@ -1164,12 +1635,14 @@ "11" "switch active" "12" "button_diamond active" "13" "joystick inactive" - "19" "joystick active" + "19" "joystick inactive" + "22" "joystick active" "14" "left_trigger active" "15" "right_trigger active" "16" "right_joystick inactive" "20" "right_joystick active" "17" "dpad active" + "25" "gyro active" } } "settings" diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xbox360.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xbox360.vdf old mode 100644 new mode 100755 index 58088e13..d41448c8 --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xbox360.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xbox360.vdf @@ -2,8 +2,8 @@ { "version" "3" "revision" "84" - "title" "RetroDECK: Official Layout - Xbox 360" - "description" "RetroDECK: Xbox 360" + "title" "RetroDECK: Xbox 360 v.1b" + "description" "RetroDECK: Xbox 360 - v.1b" "creator" "" "progenitor" "" "url" "" @@ -796,8 +796,6 @@ } } } - } - "disabled_activators" { } @@ -841,7 +839,7 @@ { "bindings" { - "binding" "key_press ESCAPE, Escape, , " + "binding" "controller_action SHOW_KEYBOARD, Show Keyboard, , " } } } @@ -865,6 +863,22 @@ { } } + "dpad_west" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, , " + } + } + } + "disabled_activators" + { + } + } "click" { "activators" @@ -920,7 +934,7 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 1 0 1, RetroDECK - Set, , " + "binding" "controller_action CHANGE_PRESET 1 0 0, RetroDECK - Set, , " } } "Full_Press" @@ -1042,7 +1056,7 @@ { "bindings" { - "binding" "controller_action CHANGE_PRESET 2 0 1, , " + "binding" "controller_action CHANGE_PRESET 2 0 0, , " } } } @@ -1116,6 +1130,426 @@ } } } + "group" + { + "id" "19" + "mode" "radial_menu" + "name" "dial" + "description" "" + "inputs" + { + "touch_menu_button_0" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_1" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_2" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_3" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + } + "settings" + { + "touchmenu_button_fire_type" "0" + } + } "preset" { "id" "0" @@ -1140,7 +1574,8 @@ "10" "switch active" "11" "button_diamond active" "12" "joystick inactive" - "18" "joystick active" + "18" "joystick inactive" + "19" "joystick active" "13" "left_trigger active" "14" "right_trigger active" "15" "right_joystick inactive" @@ -1154,3 +1589,4 @@ "right_trackpad_mode" "0" } } + diff --git a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xboxone.vdf b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xboxone.vdf index 70a20a96..3899504b 100755 --- a/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xboxone.vdf +++ b/emu-configs/defaults/retrodeck/controller_configs/RetroDECK_controller_xboxone.vdf @@ -1,18 +1,18 @@ "controller_mappings" { "version" "3" - "revision" "93" - "title" "RetroDECK: Official Layout - Xbox One/S/X" - "description" "RetroDECK: Xbox One/S/X" + "revision" "101" + "title" "RetroDECK: Xbox Wireless v.1b" + "description" "RetroDECK: One/S/X - Xbox Wireless v.1b" "creator" "" "progenitor" "" "url" "" - "export_type" "" + "export_type" "personal_cloud" "controller_type" "controller_xboxone" - "controller_caps" "1590271" + "controller_caps" "9978879" "major_revision" "0" "minor_revision" "0" - "Timestamp" "-5320" + "Timestamp" "1079645600" "actions" { "Default" @@ -828,7 +828,21 @@ "description" "" "inputs" { - "dpad_north" + } + "settings" + { + "requires_click" "0" + } + } + "group" + { + "id" "20" + "mode" "radial_menu" + "name" "Global Radial" + "description" "" + "inputs" + { + "touch_menu_button_0" { "activators" { @@ -836,8 +850,11 @@ { "bindings" { - "binding" "key_press LEFT_CONTROL, Swap Screens, , " - "binding" "key_press TAB, Swap Screens, , " + "binding" "mouse_button RIGHT, RetroDECK, RD-icon_circle_2_180x180.png, " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -845,7 +862,7 @@ { } } - "dpad_south" + "touch_menu_button_1" { "activators" { @@ -853,7 +870,11 @@ { "bindings" { - "binding" "key_press ESCAPE, , " + "binding" "key_press ESCAPE, Escape, RD-ESC.png, " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -861,7 +882,7 @@ { } } - "dpad_east" + "touch_menu_button_2" { "activators" { @@ -869,7 +890,11 @@ { "bindings" { - "binding" "key_press RETURN, , " + "binding" "key_press RETURN, Enter, RD-Enter.png, " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -877,7 +902,7 @@ { } } - "click" + "touch_menu_button_3" { "activators" { @@ -885,7 +910,337 @@ { "bindings" { - "binding" "mouse_button RIGHT, , " + "binding" "key_press TAB, Tab, RD-Tab.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_4" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Control, RD-ctrl.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_5" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press SPACE, Space, RD-space.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_6" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press FORWARD_SLASH, /, RD-frontslash.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_7" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Alt, RD-alt.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_8" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F1, F1, RD-F1.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_9" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F4, F4, RD-F4.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_10" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F5, F5, RD-F5.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_11" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F7, F7, RD-F7.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_12" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F8, F8, RD-F8.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_13" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press F10, F10, RD-F10.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_14" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Restart / Reset, RD-system-reboot.png, " + "binding" "key_press R, Restart / Reset, RD-system-reboot.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_15" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_ALT, Wii Sync Button, RD-notification-network-wireless.png, " + "binding" "key_press W, Wii Sync Button, RD-notification-network-wireless.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_16" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Dual - Screens, RD-system-switch-user.png, " + "binding" "key_press TAB, Swap Dual - Screens, RD-system-switch-user.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_17" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + "binding" "key_press L, Change Dual Screen - Layout, RD-preferences-system-windows-actions.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_18" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + "binding" "key_press W, Widescreen / Aspect Ratio, RD-preferences-desktop-display.png, " + } + "settings" + { + "haptic_intensity" "2" + } + } + } + "disabled_activators" + { + } + } + "touch_menu_button_19" + { + "activators" + { + "Full_Press" + { + "bindings" + { + "binding" "key_press LEFT_CONTROL, Swap Disc, RD-application-x-iso.png, " + "binding" "key_press D, Swap Disc, RD-application-x-iso.png, " + } + "settings" + { + "haptic_intensity" "2" } } } @@ -896,7 +1251,7 @@ } "settings" { - "requires_click" "0" + "touchmenu_button_fire_type" "0" } } "group" @@ -1096,7 +1451,7 @@ "binding" "controller_action CHANGE_PRESET 1 0 1, , " } } - "release" + "Full_Press" { "bindings" { @@ -1248,7 +1603,8 @@ "10" "switch active" "11" "button_diamond active" "12" "joystick inactive" - "19" "joystick active" + "19" "joystick inactive" + "20" "joystick active" "13" "left_trigger active" "14" "right_trigger active" "15" "right_joystick inactive" diff --git a/emu-configs/defaults/retrodeck/presets/citra_presets.cfg b/emu-configs/defaults/retrodeck/presets/citra_presets.cfg index 9211d5c0..05b0d7b0 100644 --- a/emu-configs/defaults/retrodeck/presets/citra_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/citra_presets.cfg @@ -1,9 +1,7 @@ config_file_format^citra -target_file^$citraconf -defaults_file^$emuconfigs/citra/qt-config.ini -change^ask_to_exit^confirmClose^true^UI -change^ask_to_exit^confirmClose\default^true^UI -change^nintendo_button_layout^profiles\1\button_a^button:1,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls -change^nintendo_button_layout^profiles\1\button_b^button:0,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls -change^nintendo_button_layout^profiles\1\button_x^button:3,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls -change^nintendo_button_layout^profiles\1\button_y^button:2,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls +change^ask_to_exit^confirmClose^true^UI^$citraconf^$emuconfigs/citra/qt-config.ini +change^ask_to_exit^confirmClose\default^true^UI^$citraconf^$emuconfigs/citra/qt-config.ini +change^abxy_button_swap^profiles\1\button_a^button:1,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls^$citraconf^$emuconfigs/citra/qt-config.ini +change^abxy_button_swap^profiles\1\button_b^button:0,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls^$citraconf^$emuconfigs/citra/qt-config.ini +change^abxy_button_swap^profiles\1\button_x^button:3,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls^$citraconf^$emuconfigs/citra/qt-config.ini +change^abxy_button_swap^profiles\1\button_y^button:2,engine:sdl,guid:030079f6de280000ff11000001000000,port:0^Controls^$citraconf^$emuconfigs/citra/qt-config.ini diff --git a/emu-configs/defaults/retrodeck/presets/dolphin_presets.cfg b/emu-configs/defaults/retrodeck/presets/dolphin_presets.cfg index 234012e9..0836e0ca 100644 --- a/emu-configs/defaults/retrodeck/presets/dolphin_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/dolphin_presets.cfg @@ -1,4 +1,2 @@ config_file_format^dolphin -target_file^$dolphinconf -defaults_file^$emuconfigs/dolphin/Dolphin.ini -change^ask_to_exit^ConfirmStop^True^Interface +change^ask_to_exit^ConfirmStop^True^Interface^$dolphinconf^$emuconfigs/dolphin/Dolphin.ini diff --git a/emu-configs/defaults/retrodeck/presets/duckstation_presets.cfg b/emu-configs/defaults/retrodeck/presets/duckstation_presets.cfg index 76c9f926..e4a2e66a 100644 --- a/emu-configs/defaults/retrodeck/presets/duckstation_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/duckstation_presets.cfg @@ -1,10 +1,8 @@ config_file_format^duckstation -target_file^$duckstationconf -defaults_file^$emuconfigs/duckstation/settings.ini -change^cheevos^Enabled^true^Cheevos -change^cheevos^Username^$cheevos_username^Cheevos -change^cheevos^Token^$cheevos_token^Cheevos -change^cheevos^LoginTimestamp^$cheevos_login_timestamp^Cheevos -change^cheevos_hardcore^ChallengeMode^true^Cheevos -change^savestate_auto_save^SaveStateOnExit^true^Main -change^ask_to_exit^ConfirmPowerOff^true^Main +change^cheevos^Enabled^true^Cheevos^$duckstationconf^$emuconfigs/duckstation/settings.ini +change^cheevos^Username^$cheevos_username^Cheevos^$duckstationconf^$emuconfigs/duckstation/settings.ini +change^cheevos^Token^$cheevos_token^Cheevos^$duckstationconf^$emuconfigs/duckstation/settings.ini +change^cheevos^LoginTimestamp^$cheevos_login_timestamp^Cheevos^$duckstationconf^$emuconfigs/duckstation/settings.ini +change^cheevos_hardcore^ChallengeMode^true^Cheevos^$duckstationconf^$emuconfigs/duckstation/settings.ini +change^savestate_auto_save^SaveStateOnExit^true^Main^$duckstationconf^$emuconfigs/duckstation/settings.ini +change^ask_to_exit^ConfirmPowerOff^true^Main^$duckstationconf^$emuconfigs/duckstation/settings.ini diff --git a/emu-configs/defaults/retrodeck/presets/example.txt b/emu-configs/defaults/retrodeck/presets/example.txt index 53d031a4..3d64330c 100644 --- a/emu-configs/defaults/retrodeck/presets/example.txt +++ b/emu-configs/defaults/retrodeck/presets/example.txt @@ -1,9 +1,7 @@ config_file_format^retroarch # This is the config file format, used in functions like get_setting_value and set_setting_value -target_file^$examplefile # This is the target file that should be updated. This will be the actively-used config file by whatever emulator is being set up. This can be a variable name as well! -defaults_file^$emuconfigs/retroarch/retroarch.cfg # This is the file that is referenced when presets are disabled. This should be the "shipped" config file for this emulator -change^cheevos^Enabled^true^Cheevos # This is a preset configuration line. The syntax is ^^^^ -change^borders^overlay_file^/var/config/retroarch/overlays/borders/snes.cfg # This is another preset configuration line, for the preset section called "borders" in retrodeck.cfg. Also, there is no defined "setting section" on this line - +change^cheevos^Enabled^true^Cheevos^$target_file^$defaults_file # This is a preset configuration line. The syntax is ^^^^^ +change^borders^overlay_file^/var/config/retroarch/overlays/borders/snes.cfg^^target_file^defaults_file # This is another preset configuration line, for the preset section called "borders" in retrodeck.cfg. Also, there is no defined "setting section" on this line, but there must be an empty field between ^^ +enable^abxy_button_swap^/var/config/retroarch/config/remaps/Snes9x/snes.rmp # This will remove the ".disabled" suffix from the target file, or add ".disabled" to the suffix of the target file if the preset is being disabled OTHER NOTES: - The name of the presets configuration file for any given system MUST be _presets.cfg diff --git a/emu-configs/defaults/retrodeck/presets/gb_presets.cfg b/emu-configs/defaults/retrodeck/presets/gb_presets.cfg index cc48e4c0..d754c374 100644 --- a/emu-configs/defaults/retrodeck/presets/gb_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/gb_presets.cfg @@ -1,14 +1,12 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/Gambatte/gb.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^aspect_ratio_index^23 -change^borders^custom_viewport_height^576 -change^borders^custom_viewport_width^640 -change^borders^custom_viewport_x^320 -change^borders^custom_viewport_y^20 -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gb.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.110000 -change^borders^input_overlay_enable^true -change^borders^input_overlay_scale_landscape^1.205000 -change^borders^input_overlay_y_offset_landscape^0.005000 -enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Gambatte/gb.rmp +change^borders^aspect_ratio_index^23^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_height^576^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_width^640^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_x^320^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_y^20^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gb.cfg^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.110000^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.205000^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_y_offset_landscape^0.005000^^/var/config/retroarch/config/Gambatte/gb.cfg^$emuconfigs/retroarch/retroarch.cfg +enable^abxy_button_swap^/var/config/retroarch/config/remaps/Gambatte/gb.rmp diff --git a/emu-configs/defaults/retrodeck/presets/gba_presets.cfg b/emu-configs/defaults/retrodeck/presets/gba_presets.cfg index 21787a86..b5a4fc03 100644 --- a/emu-configs/defaults/retrodeck/presets/gba_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/gba_presets.cfg @@ -1,14 +1,12 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/mGBA/gba.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^aspect_ratio_index^23 -change^borders^custom_viewport_height^640 -change^borders^custom_viewport_width^960 -change^borders^custom_viewport_x^160 -change^borders^custom_viewport_y^0 -change^borders^input_overlay_enable^true -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gba.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.110000 -change^borders^input_overlay_scale_landscape^1.2150000 -change^borders^input_overlay_y_offset_landscape^0.020000 -enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Gambatte/gbc.rmp +change^borders^aspect_ratio_index^23^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_height^640^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_width^960^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_x^160^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_y^0^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gba.cfg^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.110000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.2150000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_y_offset_landscape^0.020000^^/var/config/retroarch/config/mGBA/gba.cfg^$emuconfigs/retroarch/retroarch.cfg +enable^abxy_button_swap^/var/config/retroarch/config/remaps/Gambatte/gbc.rmp diff --git a/emu-configs/defaults/retrodeck/presets/gbc_presets.cfg b/emu-configs/defaults/retrodeck/presets/gbc_presets.cfg index cd24b9e7..d6b2e107 100644 --- a/emu-configs/defaults/retrodeck/presets/gbc_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/gbc_presets.cfg @@ -1,14 +1,12 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/Gambatte/gbc.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^aspect_ratio_index^23 -change^borders^custom_viewport_height^576 -change^borders^custom_viewport_width^640 -change^borders^custom_viewport_x^320 -change^borders^custom_viewport_y^20 -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gbc.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.110000 -change^borders^input_overlay_enable^true -change^borders^input_overlay_scale_landscape^1.205000 -change^borders^input_overlay_y_offset_landscape^-0.040000 -enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Gambatte/gbc.rmp +change^borders^aspect_ratio_index^23^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_height^576^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_width^640^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_x^320^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_y^20^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gbc.cfg^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.110000^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.205000^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_y_offset_landscape^-0.040000^^/var/config/retroarch/config/Gambatte/gbc.cfg^$emuconfigs/retroarch/retroarch.cfg +enable^abxy_button_swap^/var/config/retroarch/config/remaps/Gambatte/gbc.rmp diff --git a/emu-configs/defaults/retrodeck/presets/genesis_presets.cfg b/emu-configs/defaults/retrodeck/presets/genesis_presets.cfg index ef0fbc5b..c566decf 100644 --- a/emu-configs/defaults/retrodeck/presets/genesis_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/genesis_presets.cfg @@ -1,8 +1,6 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/Genesis Plus GX/genesis.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/genesis.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.100000 -change^borders^input_overlay_enable^true -change^borders^input_overlay_scale_landscape^1.040000 -change^widescreen^aspect_ratio_index^24 +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/genesis.cfg^^/var/config/retroarch/config/Genesis Plus GX/genesis.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.100000^^/var/config/retroarch/config/Genesis Plus GX/genesis.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/Genesis Plus GX/genesis.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.040000^^/var/config/retroarch/config/Genesis Plus GX/genesis.cfg^$emuconfigs/retroarch/retroarch.cfg +change^widescreen^aspect_ratio_index^24^^/var/config/retroarch/config/Genesis Plus GX/genesis.cfg^$emuconfigs/retroarch/retroarch.cfg diff --git a/emu-configs/defaults/retrodeck/presets/gg_presets.cfg b/emu-configs/defaults/retrodeck/presets/gg_presets.cfg index f6b8529a..2de18ce3 100644 --- a/emu-configs/defaults/retrodeck/presets/gg_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/gg_presets.cfg @@ -1,13 +1,11 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/Genesis Plus GX/gg.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^aspect_ratio_index^23 -change^borders^custom_viewport_width^960 -change^borders^custom_viewport_height^720 -change^borders^custom_viewport_x^160 -change^borders^custom_viewport_y^24 -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gg.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.110000 -change^borders^input_overlay_enable^true -change^borders^input_overlay_scale_landscape^1.350000 -change^borders^input_overlay_y_offset_landscape^0.020000 +change^borders^aspect_ratio_index^23^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_width^960^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_height^720^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_x^160^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^custom_viewport_y^24^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/gg.cfg^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.110000^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.350000^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_y_offset_landscape^0.020000^^/var/config/retroarch/config/Genesis Plus GX/gg.cfg^$emuconfigs/retroarch/retroarch.cfg diff --git a/emu-configs/defaults/retrodeck/presets/n64_presets.cfg b/emu-configs/defaults/retrodeck/presets/n64_presets.cfg index 542aa841..8a92b041 100644 --- a/emu-configs/defaults/retrodeck/presets/n64_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/n64_presets.cfg @@ -1,8 +1,6 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/Mupen64Plus-Next/n64.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/N64.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.145000 -change^borders^input_overlay_enable^true -change^widescreen^aspect_ratio_index^24 -enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Snes9x/snes.rmp +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/N64.cfg^^/var/config/retroarch/config/Mupen64Plus-Next/n64.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.145000^^/var/config/retroarch/config/Mupen64Plus-Next/n64.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/Mupen64Plus-Next/n64.cfg^$emuconfigs/retroarch/retroarch.cfg +change^widescreen^aspect_ratio_index^24^^/var/config/retroarch/config/Mupen64Plus-Next/n64.cfg^$emuconfigs/retroarch/retroarch.cfg +enable^abxy_button_swap^/var/config/retroarch/config/remaps/Snes9x/snes.rmp diff --git a/emu-configs/defaults/retrodeck/presets/pcsx2_presets.cfg b/emu-configs/defaults/retrodeck/presets/pcsx2_presets.cfg index ba01d17c..134cd00d 100644 --- a/emu-configs/defaults/retrodeck/presets/pcsx2_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/pcsx2_presets.cfg @@ -1,10 +1,8 @@ config_file_format^pcsx2 -target_file^$pcsx2conf -defaults_file^$emuconfigs/PCSX2/PCSX2.ini -change^cheevos^Enabled^true^Achievements -change^cheevos^Username^$cheevos_username^Achievements -change^cheevos^Token^$cheevos_token^Achievements -change^cheevos^LoginTimestamp^$cheevos_login_timestamp^Achievements -change^cheevos_hardcore^ChallengeMode^true^Achievements -change^savestate_auto_save^SaveStateOnShutdown^true^EmuCore -change^ask_to_exit^ConfirmShutdown^true^UI +change^cheevos^Enabled^true^Achievements^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini +change^cheevos^Username^$cheevos_username^Achievements^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini +change^cheevos^Token^$cheevos_token^Achievements^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini +change^cheevos^LoginTimestamp^$cheevos_login_timestamp^Achievements^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini +change^cheevos_hardcore^ChallengeMode^true^Achievements^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini +change^savestate_auto_save^SaveStateOnShutdown^true^EmuCore^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini +change^ask_to_exit^ConfirmShutdown^true^UI^$pcsx2conf^$emuconfigs/PCSX2/PCSX2.ini diff --git a/emu-configs/defaults/retrodeck/presets/ppsspp_presets.cfg b/emu-configs/defaults/retrodeck/presets/ppsspp_presets.cfg index 90094d5e..061b6dee 100644 --- a/emu-configs/defaults/retrodeck/presets/ppsspp_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/ppsspp_presets.cfg @@ -1,4 +1,5 @@ config_file_format^ppsspp -target_file^$ppssppconf -defaults_file^$emuconfigs/PCSX2/PCSX2.ini -change^savestate_auto_load^AutoLoadSaveState^2^General +change^savestate_auto_load^AutoLoadSaveState^2^General^$ppssppconf^$emuconfigs/ppssppdl/ppsspp.ini +change^cheevos^AchievementsEnable^True^Achievements^$ppssppconf^$emuconfigs/ppssppdl/ppsspp.ini +change^cheevos^AchievementsUserName^Achievements^$cheevos_username^$ppssppconf^$emuconfigs/ppssppdl/ppsspp.ini +change^cheevos_hardcore^AchievementsChallengeMode^True^Achievements^$ppssppconf^$emuconfigs/ppssppdl/ppsspp.ini diff --git a/emu-configs/defaults/retrodeck/presets/primehack_presets.cfg b/emu-configs/defaults/retrodeck/presets/primehack_presets.cfg index 3abf4ba5..3eb75c36 100644 --- a/emu-configs/defaults/retrodeck/presets/primehack_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/primehack_presets.cfg @@ -1,4 +1,2 @@ config_file_format^primehack -target_file^$primehackconf -defaults_file^$emuconfigs/primehack/Dolphin.ini -change^ask_to_exit^ConfirmStop^True^Interface +change^ask_to_exit^ConfirmStop^True^Interface^$primehackconf^$emuconfigs/primehack/Dolphin.ini diff --git a/emu-configs/defaults/retrodeck/presets/psx_ra_presets.cfg b/emu-configs/defaults/retrodeck/presets/psx_ra_presets.cfg index f3aaa96d..f9cffa4f 100644 --- a/emu-configs/defaults/retrodeck/presets/psx_ra_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/psx_ra_presets.cfg @@ -1,8 +1,6 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/SwanStation/psx.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^input_overlay^/var/config/retrodeck/overlays/borders/pegasus/psx.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.120000 -change^borders^input_overlay_enable^true -change^borders^input_overlay_scale_landscape^1.040000 -change^widescreen^aspect_ratio_index^24 +change^borders^input_overlay^/var/config/retrodeck/overlays/borders/pegasus/psx.cfg^^/var/config/retroarch/config/SwanStation/psx.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.120000^^/var/config/retroarch/config/SwanStation/psx.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/SwanStation/psx.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.040000^^/var/config/retroarch/config/SwanStation/psx.cfg^$emuconfigs/retroarch/retroarch.cfg +change^widescreen^aspect_ratio_index^24^^/var/config/retroarch/config/SwanStation/psx.cfg^$emuconfigs/retroarch/retroarch.cfg diff --git a/emu-configs/defaults/retrodeck/presets/retroarch_presets.cfg b/emu-configs/defaults/retrodeck/presets/retroarch_presets.cfg index 7a65546a..4d8c268e 100644 --- a/emu-configs/defaults/retrodeck/presets/retroarch_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/retroarch_presets.cfg @@ -1,9 +1,7 @@ config_file_format^retroarch-all -target_file^$raconf -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^cheevos^cheevos_enable^true -change^cheevos^cheevos_token^$cheevos_token -change^cheevos^cheevos_username^$cheevos_username -change^cheevos_hardcore^cheevos_hardcore_mode_enable^true -change^savestate_auto_load^savestate_auto_load^true -change^savestate_auto_save^savestate_auto_save^true +change^cheevos^cheevos_enable^true^^$raconf^$emuconfigs/retroarch/retroarch.cfg +change^cheevos^cheevos_token^$cheevos_token^^$raconf^$emuconfigs/retroarch/retroarch.cfg +change^cheevos^cheevos_username^$cheevos_username^^$raconf^$emuconfigs/retroarch/retroarch.cfg +change^cheevos_hardcore^cheevos_hardcore_mode_enable^true^^$raconf^$emuconfigs/retroarch/retroarch.cfg +change^savestate_auto_load^savestate_auto_load^true^^$raconf^$emuconfigs/retroarch/retroarch.cfg +change^savestate_auto_save^savestate_auto_save^true^^$raconf^$emuconfigs/retroarch/retroarch.cfg diff --git a/emu-configs/defaults/retrodeck/presets/snes_presets.cfg b/emu-configs/defaults/retrodeck/presets/snes_presets.cfg index 2d71ed98..06ce7b18 100644 --- a/emu-configs/defaults/retrodeck/presets/snes_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/snes_presets.cfg @@ -1,9 +1,7 @@ config_file_format^retroarch -target_file^/var/config/retroarch/config/Snes9x/snes.cfg -defaults_file^$emuconfigs/retroarch/retroarch.cfg -change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/snes87.cfg -change^borders^input_overlay_aspect_adjust_landscape^0.305000 -change^borders^input_overlay_scale_landscape^1.050000 -change^borders^input_overlay_enable^true -change^widescreen^aspect_ratio_index^24 -enable^nintendo_button_layout^/var/config/retroarch/config/remaps/Snes9x/snes.rmp +change^borders^input_overlay^/var/config/retroarch/overlays/borders/pegasus/snes87.cfg^^/var/config/retroarch/config/Snes9x/snes.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_aspect_adjust_landscape^0.305000^^/var/config/retroarch/config/Snes9x/snes.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_scale_landscape^1.050000^^/var/config/retroarch/config/Snes9x/snes.cfg^$emuconfigs/retroarch/retroarch.cfg +change^borders^input_overlay_enable^true^^/var/config/retroarch/config/Snes9x/snes.cfg^$emuconfigs/retroarch/retroarch.cfg +change^widescreen^aspect_ratio_index^24^^/var/config/retroarch/config/Snes9x/snes.cfg^$emuconfigs/retroarch/retroarch.cfg +enable^abxy_button_swap^/var/config/retroarch/config/remaps/Snes9x/snes.rmp diff --git a/emu-configs/defaults/retrodeck/presets/yuzu_presets.cfg b/emu-configs/defaults/retrodeck/presets/yuzu_presets.cfg index bfb46f5e..e03474f1 100644 --- a/emu-configs/defaults/retrodeck/presets/yuzu_presets.cfg +++ b/emu-configs/defaults/retrodeck/presets/yuzu_presets.cfg @@ -1,9 +1,7 @@ config_file_format^yuzu -target_file^$yuzuconf -defaults_file^$emuconfigs/yuzu/qt-config.ini -change^ask_to_exit^confirmClose^true^UI -change^ask_to_exit^confirmClose\default^true^UI -change^nintendo_button_layout^player_0_button_a^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:0,pad:0"^Controls -change^nintendo_button_layout^player_0_button_b^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:1,pad:0"^Controls -change^nintendo_button_layout^player_0_button_x^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:2,pad:0"^Controls -change^nintendo_button_layout^player_0_button_y^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:3,pad:0"^Controls +change^ask_to_exit^confirmClose^true^UI^$yuzuconf^$emuconfigs/yuzu/qt-config.ini +change^ask_to_exit^confirmClose\default^true^UI^$yuzuconf^$emuconfigs/yuzu/qt-config.ini +change^abxy_button_swap^player_0_button_a^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:0,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini +change^abxy_button_swap^player_0_button_b^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:1,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini +change^abxy_button_swap^player_0_button_x^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:2,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini +change^abxy_button_swap^player_0_button_y^"engine:sdl,guid:03000000de280000ff11000001000000,port:0,button:3,pad:0"^Controls^$yuzuconf^$emuconfigs/yuzu/qt-config.ini diff --git a/emu-configs/defaults/retrodeck/reference_lists/compression_targets.cfg b/emu-configs/defaults/retrodeck/reference_lists/compression_targets.cfg index 382abc1d..d1d7d923 100644 --- a/emu-configs/defaults/retrodeck/reference_lists/compression_targets.cfg +++ b/emu-configs/defaults/retrodeck/reference_lists/compression_targets.cfg @@ -6,6 +6,7 @@ megacd neogeocd pcenginecd pcfx +psp psx ps2 saturn @@ -29,7 +30,13 @@ gba gbc genesis mastersystem +n64 nds nes +ngp +ngpc +sega32x +sega32xjp +sega32xna snes snesna diff --git a/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg b/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg index 1049836f..22198f01 100644 --- a/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg +++ b/emu-configs/defaults/retrodeck/reference_lists/easter_egg_checklist.cfg @@ -1 +1,4 @@ -1201^1231^0000^2359^RetroDECK-Xmas-splash.svg +1201^1231^0000^2359^rd-xmas-splash.svg +0209^0212^0000^2359^rd-lunar-dragon-splash.svg +0214^0214^0001^2359^rd-valentines-splash.svg +0317^0317^0000^2359^rd-stpatricks-splash.svg diff --git a/emu-configs/defaults/retrodeck/reference_lists/retrodeck_credits.txt b/emu-configs/defaults/retrodeck/reference_lists/retrodeck_credits.txt index eb6c994b..49d44557 100644 --- a/emu-configs/defaults/retrodeck/reference_lists/retrodeck_credits.txt +++ b/emu-configs/defaults/retrodeck/reference_lists/retrodeck_credits.txt @@ -5,19 +5,22 @@ If you feel you have contributed to the project but lacks mention, please contac The Team XargonWan -RetroDECK project founder and also one of the founding members of AmberELEC +RetroDECK project founder and also one of the founding members of AmberELEC. IceNine451 -Creator of the RetroDECK configurator and various awesome features. +Creator of the RetroDECK configurator and the RetroDECK Framework. Lazorne -Community management/outreach, testing, documentation, feature suggestions and some design. +Community management/outreach, testing, documentation and Wiki Lord. -dottormac -Beta Tester +WallK +Works on Godot Features. LX32 -Junior code contributor, Beta Tester +Works on a many projects. + +dottormac +Tester Collaborators diff --git a/emu-configs/defaults/retrodeck/retrodeck.cfg b/emu-configs/defaults/retrodeck/retrodeck.cfg index adf10001..da64517f 100644 --- a/emu-configs/defaults/retrodeck/retrodeck.cfg +++ b/emu-configs/defaults/retrodeck/retrodeck.cfg @@ -8,7 +8,7 @@ states_folder=/home/deck/retrodeck/states bios_folder=/home/deck/retrodeck/bios media_folder=/home/deck/retrodeck/downloaded_media themes_folder=/home/deck/retrodeck/themes -logs_folder=/home/deck/retrodeck/.logs +logs_folder=/home/deck/retrodeck/logs screenshots_folder=/home/deck/retrodeck/screenshots mods_folder=/home/deck/retrodeck/mods texture_packs_folder=/home/deck/retrodeck/texture_packs @@ -54,7 +54,7 @@ n64=false psx_ra=false snes=false -[nintendo_button_layout] +[abxy_button_swap] citra=false gb=false gba=false diff --git a/emu-configs/dolphin/GCPadNew.ini b/emu-configs/dolphin/GCPadNew.ini index 1882559e..7c2d8a7c 100644 --- a/emu-configs/dolphin/GCPadNew.ini +++ b/emu-configs/dolphin/GCPadNew.ini @@ -4,7 +4,7 @@ Buttons/A = SOUTH Buttons/B = EAST Buttons/X = NORTH Buttons/Y = WEST -Buttons/Z = TR +Buttons/Z = `TR` | `TL` Buttons/Start = START Main Stick/Up = `Axis 1-` Main Stick/Down = `Axis 1+` diff --git a/emu-configs/dolphin/Hotkeys.ini b/emu-configs/dolphin/Hotkeys.ini index d2912ae6..fdf30cae 100644 --- a/emu-configs/dolphin/Hotkeys.ini +++ b/emu-configs/dolphin/Hotkeys.ini @@ -21,4 +21,9 @@ Other State Hotkeys/Increase Selected State Slot = @(Ctrl+K) Other State Hotkeys/Decrease Selected State Slot = @(Ctrl+J) General/Toggle Fullscreen = @(Ctrl+Return) General/Control NetPlay Golf Mode = @(Alt+H) -Wii/Press Sync Button = @(Alt+W) \ No newline at end of file +Wii/Press Sync Button = @(Alt+W) +Wii/Connect Wii Remote 1 = @(Alt+W+`1`) +Wii/Connect Wii Remote 2 = @(Alt+W+`2`) +Wii/Connect Wii Remote 3 = @(Alt+W+`3`) +Wii/Connect Wii Remote 4 = @(Alt+W+`4`) +Wii/Connect Balance Board = @(Alt+W+`5`) \ No newline at end of file diff --git a/emu-configs/dolphin/WiimoteNew.ini b/emu-configs/dolphin/WiimoteNew.ini index 73002a7c..79183554 100644 --- a/emu-configs/dolphin/WiimoteNew.ini +++ b/emu-configs/dolphin/WiimoteNew.ini @@ -10,7 +10,7 @@ Drums/Stick/Modifier/Range = 50.0 Turntable/Stick/Modifier/Range = 50.0 uDraw/Stylus/Modifier/Range = 50.0 Drawsome/Stylus/Modifier/Range = 50.0 -Buttons/A = SOUTH +Buttons/A = `SOUTH` | `Click 1` | `XInput2/0/Virtual core pointer:Click 1` Buttons/B = EAST Buttons/1 = WEST Buttons/2 = NORTH diff --git a/emu-configs/gzdoom/gzdoom.sh b/emu-configs/gzdoom/gzdoom.sh index 6e9f4617..dda22916 100644 --- a/emu-configs/gzdoom/gzdoom.sh +++ b/emu-configs/gzdoom/gzdoom.sh @@ -1,48 +1,118 @@ #!/bin/bash -LOG_FILE="$rdhome/.logs/gzdoom.log" - -if [ -e "$LOG_FILE" ]; then - rm "$LOG_FILE" -fi - -echo "RetroDECK GZDOOM wrapper init." | tee -a "$LOG_FILE" - -# List of IWAD files +# Define the IWAD files list IWAD_FILES=("DOOM1.WAD" "DOOM.WAD" "DOOM2.WAD" "DOOM2F.WAD" "DOOM64.WAD" "TNT.WAD" "PLUTONIA.WAD" "HERETIC1.WAD" "HERETIC.WAD" "HEXEN.WAD" "HEXDD.WAD" "STRIFE0.WAD" "STRIFE1.WAD" "VOICES.WAD" "CHEX.WAD" - "CHEX3.WAD" "HACX.WAD" "freedoom1.wad" "freedoom2.wad" "freedm.wad" # unlicensed iwads - "doom_complete.pk3" # this includes them all - ) + "CHEX3.WAD" "HACX.WAD" "freedoom1.wad" "freedoom2.wad" "freedm.wad" + "doom_complete.pk3" +) -echo "Trying to load \"$1\"." | tee -a "$LOG_FILE" +# Function to log messages to terminal and a log file +log() { + local message="$1" + local logfile="$rdhome/logs/gzdoom.log" + local timestamp="$(date +[%Y-%m-%d\ %H:%M:%S])" -if [ ! -e "$1" ]; then - echo "$1 not found. Quitting." | tee -a "$LOG_FILE" - exit 0 -fi + echo "$timestamp $message" | tee -a "$logfile" +} -filename=$(basename "$1") # Extracts only the filename from the full path -extension="${filename##*.}" # Extracts the file extension -if [ "$extension" == "doom" ]; then - map_file="$1" - iwad="-iwad $(head -n 1 "$map_file")" - file="-file $(tail -n +2 "$map_file" | sed 's/.*/-file &/')" +# Function to check if a file is an IWAD +is_iwad() { + local file="$1" + local lowercase_file="$(basename "${file,,}")" + + for iwad in "${IWAD_FILES[@]}"; do + if [[ "${iwad,,}" == "$lowercase_file" ]]; then + echo "true" + return + fi + done + echo "false" +} - echo "Found a .doom file: $1, parsing it." | tee -a "$LOG_FILE" - echo "Calling GZDoom with: \"$iwad $file\"." | tee -a "$LOG_FILE" - gzdoom -config /var/config/gzdoom/gzdoom.ini $iwad $file | tee -a "$LOG_FILE" -else - shopt -s nocasematch # Enable case-insensitive matching - if [[ "${IWAD_FILES[@]}" =~ "$filename" ]]; then - type="iwad" +# Function to search for files recursively +search_file_recursive() { + local file="$1" + local directory="$2" + local found_file="" + + # Check if the file exists in the current directory + if [[ -e "$directory/$file" ]]; then + found_file="$directory/$file" else - type="file" + # Search recursively + local lowercase_file="$(echo "$file" | tr '[:upper:]' '[:lower:]')" + found_file=$(find "$directory" -type f -iname "$lowercase_file" | head -n 1) fi - shopt -u nocasematch # Disable case-insensitive matching after use + echo "$found_file" +} - echo "Found $type: $1, loading it." | tee -a "$LOG_FILE" - gzdoom -config /var/config/gzdoom/gzdoom.ini -$type "$1" | tee -a "$LOG_FILE" +# Main script +log "[INFO] RetroDECK GZDOOM wrapper init" + +# Check if $1 is not a .doom file +if [[ "${1##*.}" != "doom" ]]; then + # Check if the file is in the IWAD list + if [[ $(is_iwad "$1") == "true" ]]; then + command="gzdoom -config /var/config/gzdoom/gzdoom.ini -iwad $1" + else + command="gzdoom -config /var/config/gzdoom/gzdoom.ini -file $1" + fi + + # Log the command + log "[INFO] Loading: \"$1\"" + log "[INFO] Executing command \"$command\"" + + # Execute the command + eval "$command" + +# Check if $1 is a .doom file +else + doom_file="$1" + log "[INFO] Found a doom file: \"$1\"" + + # Check if the .doom file exists + if [[ ! -e "$doom_file" ]]; then + log "[Error] doom file not found in \"$doom_file\"" + zenity --error --no-wrap \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK" \ + --text="File \"$doom_file\" not found. Quitting." + exit 1 + fi + + # Read the .doom file and compose the command + command="gzdoom -config /var/config/gzdoom/gzdoom.ini" + + while IFS= read -r line; do + # Search for the file recursively + found_file=$(search_file_recursive "$line" "$(dirname "$doom_file")") + + # If the file is not found, exit with an error + if [[ -z "$found_file" ]]; then + log "[ERROR] File not found in \"$line\"" + zenity --error --no-wrap \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ + --title "RetroDECK" \ + --text="File \"$doom_file\" not found. Quitting." + exit 1 + fi + + # Check if the file is an IWAD + if [[ $(is_iwad "$found_file") == "true" ]]; then + command+=" -iwad $found_file" + log "[INFO] Appending the param \"-iwad $found_file\"" + else + command+=" -file $found_file" + log "[INFO] Appending the param \"-file $found_file\"" + fi + done < "$doom_file" + + # Log the command + log "[INFO] Executing command \"$command\"" + + # Execute the command + eval "$command" fi diff --git a/emu-configs/mame/mame.ini b/emu-configs/mame/mame.ini index 1e7e0c40..99812b94 100644 --- a/emu-configs/mame/mame.ini +++ b/emu-configs/mame/mame.ini @@ -8,10 +8,10 @@ writeconfig 0 # CORE SEARCH PATH OPTIONS # homepath /var/config/mame -rompath /home/deck/retrodeck/roms/arcade +rompath RETRODECKROMSDIR hashpath /app/share/mame/hash samplepath /app/share/mame/samples -artpath $HOME/retrodeck/downloaded_media/arcade/screenshots/ +artpath RETRODECKHOMEDIR/downloaded_media/arcade/screenshots/ ctrlrpath /app/share/mame/ctrlr inipath /var/config/mame fontpath /app/bin/ @@ -27,7 +27,7 @@ swpath /app/share/mame/software cfg_directory /var/config/mame/cfg nvram_directory /var/config/mame/nvram input_directory /var/config/mame/inp -state_directory /var/config/mame/sta +state_directory RETRODECKSAVESDIR/mame-sa/states snapshot_directory RETRODECKHOMEDIR/screenshots diff_directory /var/config/mame/diff comment_directory /var/config/mame/comments diff --git a/emu-configs/mame/ui.ini b/emu-configs/mame/ui.ini index db76cbf3..5955d68a 100644 --- a/emu-configs/mame/ui.ini +++ b/emu-configs/mame/ui.ini @@ -9,7 +9,7 @@ pcbs_directory pcb flyers_directory flyers titles_directory titles ends_directory ends -marquees_directory marquees;$HOME/retrodeck/downloaded_media/arcade/marquees +marquees_directory marquees;RETRODECKHOMEDIR/downloaded_media/arcade/marquees artwork_preview_directory "artwork preview;artpreview" bosses_directory bosses logos_directory logo @@ -19,7 +19,7 @@ gameover_directory gameover howto_directory howto select_directory select icons_directory icons -covers_directory covers;$HOME/retrodeck/downloaded_media/arcade/covers +covers_directory covers;RETRODECKHOMEDIR/downloaded_media/arcade/covers ui_path ui # diff --git a/emu-configs/ppssppsdl/controls.ini b/emu-configs/ppssppsdl/controls.ini index 721182e1..cf608f65 100644 --- a/emu-configs/ppssppsdl/controls.ini +++ b/emu-configs/ppssppsdl/controls.ini @@ -18,8 +18,8 @@ An.Right = 1-40,10-4000 Analog limiter = 1-60 RapidFire = 1-113:1-48 Fast-forward = 1-113:1-157 -SpeedToggle = 1-68 -Pause = 1-111 +SpeedToggle = 1-113:1-144 +Pause = 1-113:1-41 Rewind = 1-113:1-156 Save State = 1-113:1-47 Load State = 1-113:1-29 @@ -31,4 +31,6 @@ Toggle Fullscreen = 1-113:1-66 RightAn.Up = 10-4007 RightAn.Down = 10-4006 RightAn.Left = 10-4005 -RightAn.Right = 10-4004 \ No newline at end of file +RightAn.Right = 10-4004 +Previous Slot = 1-113:1-38 +Exit App = 1-113:1-45 \ No newline at end of file diff --git a/emu-configs/ppssppsdl/ppsspp.ini b/emu-configs/ppssppsdl/ppsspp.ini index 64135e0f..e1ba7f86 100644 --- a/emu-configs/ppssppsdl/ppsspp.ini +++ b/emu-configs/ppssppsdl/ppsspp.ini @@ -12,7 +12,7 @@ Language = en_US ForceLagSync2 = False DiscordPresence = True UISound = False -AutoLoadSaveState = 0 +AutoLoadSaveState = 2 EnableCheats = False CwCheatRefreshRate = 77 CwCheatScrollPosition = 0.000000 @@ -165,6 +165,10 @@ SkipGPUReadbacks = False GpuLogProfiler = False iShowStatusFlags = 0 DisplayIntegerScale = False +VSync = False +MultiThreading = True +UberShaderVertex = True +UberShaderFragment = True [Sound] Enable = True AudioBackend = 0 @@ -332,6 +336,100 @@ Custom6Repeat = False Custom7Repeat = False Custom8Repeat = False Custom9Repeat = False +Custom10Mapping = 0x0000000000000000 +Custom10Image = 0 +Custom10Shape = 2 +Custom10Toggle = False +Custom10Repeat = False +Custom11Mapping = 0x0000000000000000 +Custom11Image = 1 +Custom11Shape = 2 +Custom11Toggle = False +Custom11Repeat = False +Custom12Mapping = 0x0000000000000000 +Custom12Image = 2 +Custom12Shape = 2 +Custom12Toggle = False +Custom12Repeat = False +Custom13Mapping = 0x0000000000000000 +Custom13Image = 3 +Custom13Shape = 2 +Custom13Toggle = False +Custom13Repeat = False +Custom14Mapping = 0x0000000000000000 +Custom14Image = 4 +Custom14Shape = 2 +Custom14Toggle = False +Custom14Repeat = False +Custom15Mapping = 0x0000000000000000 +Custom15Image = 0 +Custom15Shape = 9 +Custom15Toggle = False +Custom15Repeat = False +Custom16Mapping = 0x0000000000000000 +Custom16Image = 1 +Custom16Shape = 9 +Custom16Toggle = False +Custom16Repeat = False +Custom17Mapping = 0x0000000000000000 +Custom17Image = 2 +Custom17Shape = 9 +Custom17Toggle = False +Custom17Repeat = False +Custom18Mapping = 0x0000000000000000 +Custom18Image = 3 +Custom18Shape = 9 +Custom18Toggle = False +Custom18Repeat = False +Custom19Mapping = 0x0000000000000000 +Custom19Image = 4 +Custom19Shape = 9 +Custom19Toggle = False +Custom19Repeat = False +fcombo10X = 0.643378 +fcombo10Y = 0.581952 +comboKeyScale10 = 1.150000 +ShowComboKey10 = False +fcombo11X = 0.763295 +fcombo11Y = 0.581952 +comboKeyScale11 = 1.150000 +ShowComboKey11 = False +fcombo12X = 0.883212 +fcombo12Y = 0.581952 +comboKeyScale12 = 1.150000 +ShowComboKey12 = False +fcombo13X = 0.643378 +fcombo13Y = 0.416206 +comboKeyScale13 = 1.150000 +ShowComboKey13 = False +fcombo14X = 0.763295 +fcombo14Y = 0.416206 +comboKeyScale14 = 1.150000 +ShowComboKey14 = False +fcombo15X = 0.355579 +fcombo15Y = 0.581952 +comboKeyScale15 = 1.150000 +ShowComboKey15 = False +fcombo16X = 0.235662 +fcombo16Y = 0.581952 +comboKeyScale16 = 1.150000 +ShowComboKey16 = False +fcombo17X = 0.115746 +fcombo17Y = 0.581952 +comboKeyScale17 = 1.150000 +ShowComboKey17 = False +fcombo18X = 0.355579 +fcombo18Y = 0.416206 +comboKeyScale18 = 1.150000 +ShowComboKey18 = False +fcombo19X = 0.235662 +fcombo19Y = 0.416206 +comboKeyScale19 = 1.150000 +ShowComboKey19 = False +AllowMappingCombos = True +RapidFileInterval = 5 +AnalogGesture = False +AnalogGestureSensibility = 1.000000 [Network] EnableWlan = False EnableAdhocServer = False @@ -367,6 +465,7 @@ WlanPowerSave = False EncryptSave = True SavedataUpgradeVersion = True MemStickSize = 16 +GameLanguage = -1 [Debugger] DisasmWindowX = -1 DisasmWindowY = -1 @@ -390,6 +489,7 @@ DrawFrameGraph = False GEWindowTabsBL = 0x00000000 GEWindowTabsBR = 0x00000000 GEWindowTabsTR = 0x00000000 +SkipFuncHashMap = [Upgrade] UpgradeMessage = UpgradeVersion = @@ -516,6 +616,8 @@ VRCameraPitch = 0 VRHeadRotationScale = 5.000000 VRHeadRotationEnabled = False VRHeadRotationSmoothing = False +VRPassthrough = False +VRCanvas3DDistance = 3.000000 [Achievements] AchievementsEnable = False AchievementsChallengeMode = False diff --git a/emu-configs/vita3k/config.yml b/emu-configs/vita3k/config.yml index 5dba615d..c1114ec2 100644 --- a/emu-configs/vita3k/config.yml +++ b/emu-configs/vita3k/config.yml @@ -4,7 +4,7 @@ gdbstub: false log-active-shaders: false log-uniforms: false log-compat-warn: false -validation-layer: true +validation-layer: false pstv-mode: false show-mode: false demo-mode: false diff --git a/es-configs/es_systems.xml b/es-configs/es_systems.xml index f19c7c5f..832d37a9 100644 --- a/es-configs/es_systems.xml +++ b/es-configs/es_systems.xml @@ -511,7 +511,7 @@ doom Doom %ROMPATH%/doom - .doom .DOOM .desktop .iwad .IWAD .pk4 .PK4 .pk3 .PK3 .pwad .PWAD .sh .wad .WAD + .doom .DOOM .desktop .iwad .IWAD .pk4 .PK4 .pk3 .PK3 .pwad .PWAD .sh .wad .WAD .ipk3 .IPK3 gzdoom.sh %ROM% %EMULATOR_RETROARCH% -L %CORE_RETROARCH%/prboom_libretro.so %ROM% @@ -1129,7 +1129,7 @@ msxturbor msxturbor - + multivision Othello Multivision @@ -1329,7 +1329,7 @@ odyssey2 odyssey2 - +