MAME: merged cooker-0.8.0b + updated manifest

This commit is contained in:
XargonWan 2023-10-11 17:15:30 +02:00
commit 9f89f1eb38
861 changed files with 37932 additions and 5161 deletions

View file

@ -1,13 +1,16 @@
name: cooker-selfhosted name: "Build cooker"
on: on:
push: push:
branches: branches:
- cooker* - cooker*
- feat*
paths: paths:
- '.github/workflows/**' - '.github/workflows/**'
- 'automation_tools/**'
- 'emu-configs/**' - 'emu-configs/**'
- 'es-configs/**' - 'es-configs/**'
- 'functions/**'
- 'rd-submodules/**' - 'rd-submodules/**'
- '*.sh' - '*.sh'
- 'net.retrodeck.retrodeck.yml' - 'net.retrodeck.retrodeck.yml'
@ -29,36 +32,50 @@ jobs:
- name: Remove stuck mounts - name: Remove stuck mounts
run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
continue-on-error: true continue-on-error: true
- name: Clone RetroDECK repo
uses: actions/checkout@v3
with:
submodules: 'true'
- name: Generate build ID - name: "Install dependencies"
id: generating_buildid run: "automation_tools/install_dependencies.sh"
run: echo "##[set-output name=build-id;]$(echo "$( git rev-parse --short HEAD )")"
- uses: actions/checkout@v3
- name: Initialize environment - name: Generate cooker build ID
run: | run: |
git pull word1=$(shuf -n 1 ${GITHUB_WORKSPACE}/automation_tools/codename_wordlist.txt)
git submodule init capitalized_word1="$(tr '[:lower:]' '[:upper:]' <<< ${word1:0:1})${word1:1}"
git submodule update word2=$(shuf -n 1 ${GITHUB_WORKSPACE}/automation_tools/codename_wordlist.txt)
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2 capitalized_word2="$(tr '[:lower:]' '[:upper:]' <<< ${word2:0:1})${word2:1}"
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo result=$capitalized_word1$capitalized_word2
flatpak install --user -y --noninteractive \ echo $result > ${GITHUB_WORKSPACE}/buildid
org.kde.Sdk//6.3 \ echo "buildid=$result" >> $GITHUB_ENV
org.kde.Platform//6.3 \ echo "VersionID is $result"
org.freedesktop.Platform.ffmpeg-full/x86_64/22.08 \
io.qt.qtwebengine.BaseApp/x86_64/6.3 \ - name: Run pre-build automation tasks
org.freedesktop.Sdk.Extension.llvm13 \ run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
org.freedesktop.Sdk.Extension.dotnet6/x86_64/22.08 \
runtime/org.freedesktop.Platform.ffmpeg-full/x86_64/22.08 - name: "Adding flatpak portal for automated updates (cooker only)"
/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh # Run pre-build automation tasks 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.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: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
- name: Build flatpak - name: Build flatpak
run: | run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh"
git config --global protocol.file.allow always
mkdir -vp ${GITHUB_WORKSPACE}/local
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
flatpak-builder --user --force-clean --install-deps-from=flathub --install-deps-from=flathub-beta --repo=${GITHUB_WORKSPACE}/local ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker net.retrodeck.retrodeck.yml
- name: Create Artifact for flathub - name: Create Artifact for flathub
run: | run: |
@ -69,36 +86,64 @@ jobs:
continue-on-error: true continue-on-error: true
- name: Create Bundle - name: Create Bundle
run: | run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh"
flatpak build-bundle ${GITHUB_WORKSPACE}/local RetroDECK.flatpak net.retrodeck.retrodeck
- name: Set environment variable with current branch name - name: Set environment variable with current branch name
run: echo "GITHUB_REF_SLUG=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV 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 - name: Publish the flatpak in a new cooker release
uses: ncipollo/release-action@v1 uses: ncipollo/release-action@v1
with: with:
tag: "${{ env.GITHUB_REF_SLUG }}-${{ steps.generating_buildid.outputs.build-id }}" tag: "${{env.BRANCH_NAME}}-${{ env.buildid }}"
body: | body: |
# Release Notes (Cooker) # Release Notes (Cooker)
This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}. 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. 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. Please DO NOT open issues or ask support on this build.
artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz" artifacts: "RetroDECK-cooker.flatpak,RetroDECK-Artifact.tar.gz"
allowUpdates: true allowUpdates: true
#prerelease: true makeLatest: ${{env.MAKE_LATEST}} # if it's a feat branch is not considered the latest build
makeLatest: true
#draft: true
token: ${{ secrets.TRIGGER_BUILD_TOKEN }} token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
repo: RetroDECK-cooker repo: RetroDECK-cooker
continue-on-error: true continue-on-error: true
# In case it cannot publish the release at least it's providing the flatpak file for creating a manual release # In case it cannot publish the release at least it's providing the flatpak file for creating a manual release
- name: Upload RetroDECK.flatpak - name: Upload RetroDECK-cooker.flatpak
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: retrodeck-flatpak name: retrodeck-flatpak
path: RetroDECK.flatpak path: RetroDECK-cooker.flatpak
continue-on-error: true continue-on-error: true

View file

@ -1,5 +1,5 @@
name: PUSH-main-flathub name: "Push main on Flathub"
on: on:
workflow_dispatch: workflow_dispatch:
@ -9,6 +9,7 @@ jobs:
Pushing_main_into_flathub: Pushing_main_into_flathub:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Pushing - name: Pushing
shell: bash shell: bash
run: | run: |
@ -47,17 +48,35 @@ jobs:
# Copying only a few files as the others are cloned by git in retrodeck.sh # Copying only a few files as the others are cloned by git in retrodeck.sh
cd $gits_folder/RetroDECK cd $gits_folder/RetroDECK
cp -rf \ cp -rf \
'flathub.json' \
'LICENSE' \ 'LICENSE' \
'flathub.yml' \
'README.md' \ 'README.md' \
$gits_folder/flathub/ $gits_folder/flathub/
cd $gits_folder/flathub cd $gits_folder/flathub
ls -lah ls -lah
# manipulating manifest # Creating the manifest for flathub
mv flathub.yml net.retrodeck.retrodeck.yml manifest='net.retrodeck.retrodeck.yml'
sed -n '/cleanup/q;p' $gits_folder/RetroDECK/net.retrodeck.retrodeck.yml > $manifest
sed -i '/^[[:space:]]*#/d' $manifest
sed -i 's/[[:space:]]*#.*$//' $manifest
cat << EOF >> $manifest
modules:
- name: retrodeck
buildsystem: simple
build-commands:
- cp -rn files/* /app
sources:
- type: archive
url: https://artifacts.retrodeck.net/artifacts/RetroDECK-Artifact.tar.gz
sha256: __SHA__
EOF
cat << EOF >> flathub.json
{
"only-arches": ["x86_64"]
}
EOF
# Getting latest release name # Getting latest release name
# version=$(\ # version=$(\

View file

@ -1,9 +1,19 @@
name: main-selfhosted name: "Build main"
on: on:
push: push:
branches: branches:
- main - main
paths:
- '.github/workflows/**'
- 'automation_tools/**'
- 'emu-configs/**'
- 'es-configs/**'
- 'functions/**'
- 'rd-submodules/**'
- '*.sh'
- 'net.retrodeck.retrodeck.yml'
- 'net.retrodeck.retrodeck.appdata.xml'
pull_request: pull_request:
branches: branches:
- main - main
@ -22,35 +32,43 @@ jobs:
run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/* run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
continue-on-error: true continue-on-error: true
- name: Generate build ID - name: Clone RetroDECK repo
id: generating_buildid uses: actions/checkout@v3
run: echo "##[set-output name=build-id;]$(echo "$( git rev-parse --short HEAD )")" with:
submodules: 'true'
- uses: actions/checkout@v3
- name: Initialize enviornment - name: "Install dependencies"
run: | run: "automation_tools/install_dependencies.sh"
git pull
git submodule init - name: Run pre-build automation tasks
git submodule update run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
sudo apt install -y flatpak flatpak-builder p7zip-full xmlstarlet bzip2
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo - name: Read manifest content
flatpak install --user -y --noninteractive \ id: read_manifest
org.kde.Sdk//6.3 \ run: echo "::set-output name=file_content::$(cat net.retrodeck.retrodeck.yml)"
org.kde.Platform//6.3 \
org.freedesktop.Platform.ffmpeg-full/x86_64/22.08 \ # - name: "Updating release notes in appdata"
io.qt.qtwebengine.BaseApp/x86_64/6.3 \ # run: "automation_tools/appdata_management.sh"
org.freedesktop.Sdk.Extension.llvm13 \
org.freedesktop.Sdk.Extension.dotnet6/x86_64/22.08 \ - name: Check versions (main only)
runtime/org.freedesktop.Platform.ffmpeg-full/x86_64/22.08 id: check_version_string
/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh # Run pre-build automation tasks run: "automation_tools/main_version_checker.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.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: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
- name: Build flatpak - name: Build flatpak
run: | run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh"
git config --global protocol.file.allow always
mkdir -vp ${GITHUB_WORKSPACE}/local
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
flatpak-builder --user --force-clean --install-deps-from=flathub --install-deps-from=flathub-beta --repo=${GITHUB_WORKSPACE}/local ${GITHUB_WORKSPACE}/retrodeck-flatpak-main net.retrodeck.retrodeck.yml
- name: Create Artifact for flathub - name: Create Artifact for flathub
run: | run: |
@ -61,8 +79,7 @@ jobs:
continue-on-error: true continue-on-error: true
- name: Create Bundle - name: Create Bundle
run: | run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh"
flatpak build-bundle ${GITHUB_WORKSPACE}/local RetroDECK.flatpak net.retrodeck.retrodeck
- name: Getting version info - name: Getting version info
id: version id: version
@ -84,7 +101,6 @@ jobs:
bodyFile: "body.md" bodyFile: "body.md"
artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz" artifacts: "RetroDECK.flatpak,RetroDECK-Artifact.tar.gz"
allowUpdates: true allowUpdates: true
#prerelease: true
makeLatest: true makeLatest: true
token: ${{ secrets.TRIGGER_BUILD_TOKEN }} token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
repo: RetroDECK repo: RetroDECK

View file

@ -0,0 +1,34 @@
name: Update-ReadTheDocs
on:
gollum
# push:
# branches:
# - main
# paths:
# - 'wiki-rtd'
# pull_request:
# branches:
# - main
# paths:
# - 'wiki-rtd'
# workflow_dispatch:
jobs:
Job1_-_Building_P1:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Update ReadTheDocs wiki-rtd
id: wiki-rtd-update
run: |
git checkout https://github.com/XargonWan/RetroDECK.wiki-rtd.git tmp/wiki-rtd
cp -rf tmp/wiki-rtd/* wiki-rtd
rm wiki-rtd/index.md
mv wiki-rtd/Home.md wiki-rtd/index.md
git commit -m "Updating wiki-rtd"
git push

57
.github/workflows/submodule-update.yml vendored Normal file
View file

@ -0,0 +1,57 @@
name: Sunday Submodule Update
on:
# At 4:00 (CET)
schedule:
- cron: '0 2 * * 0'
workflow_dispatch:
jobs:
update_submodules:
name: Update submodules and create PR
runs-on: ubuntu-latest
steps:
- name: Checkout repo with submodules
uses: actions/checkout@v2
with:
token: ${{ secrets.REPO_TOKEN }}
submodules: recursive
- name: Fetch all remote branches
run: git fetch --all
- name: List cooker branches by date
id: list_branches
run: |
BRANCHES=$(git for-each-ref --sort=-committerdate refs/remotes/origin/cooker* --format='%(refname)') echo “::set-output name=branches::$BRANCHES”
- name: Select target branch
id: select_branch
run: |
TARGET_BRANCH=(echo{{ steps.list_branches.outputs.branches }} | head -n 1)
echo “::set-output name=target_branch::$TARGET_BRANCH”
git checkout $TARGET_BRANCH
echo "Working on $TARGET_BRANCH"
- name: Update submodules with command
run: git submodule update --remote --merge --recursive
- name: Configure Git credentials
run: |
git config --global user.name 'GitHub bot'
git config --global user.email 'bot@noreply.github.com'
- name: Commit and push changes
run: |
git commit -am "Sunday submodule update"
git push origin HEAD:submodule-update
- name: Create PR
uses: repo-sync/pull-request@v2
with:
github_token: ${{ secrets.REPO_TOKEN }}
pr_title: "Sunday submodule update"
pr_body: "This PR updates the submodules to the latest commit on their remote repositories."
source_branch: "submodule-update"
destination_branch: "cooker*"

4
.gitignore vendored
View file

@ -13,5 +13,7 @@ Thumbs.db
.flatpak-builder/ .flatpak-builder/
retrodeck-flatpak-cooker/ retrodeck-flatpak-cooker/
retrodeck-flatpak/ retrodeck-flatpak/
bakcup backup
.old .old
tmp
.godot

3
.gitmodules vendored
View file

@ -4,3 +4,6 @@
[submodule "rd-submodules/shared-modules"] [submodule "rd-submodules/shared-modules"]
path = rd-submodules/shared-modules path = rd-submodules/shared-modules
url = https://github.com/flathub/shared-modules.git url = https://github.com/flathub/shared-modules.git
[submodule "rd-submodules/ryujinx"]
path = rd-submodules/ryujinx
url = https://github.com/flathub/org.ryujinx.Ryujinx

31
.readthedocs.yaml Normal file
View file

@ -0,0 +1,31 @@
# 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

View file

@ -6,16 +6,11 @@
![Flathub](https://img.shields.io/flathub/v/net.retrodeck.retrodeck) ![Flathub](https://img.shields.io/flathub/v/net.retrodeck.retrodeck)
![Discord](https://img.shields.io/discord/951662718102962256?label=discord) ![Discord](https://img.shields.io/discord/951662718102962256?label=discord)
![GitHub](https://img.shields.io/github/license/XargonWan/RetroDECK) ![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)
# RetroDECK
**RetroDECK** brings an environment to catalog and play your retro games directly from SteamOS and it's tailored specifically for the **Steam Deck**. # RetroDECK on your device!
It's inspired by embedded emulation systems like AmberELEC, EmuELEC, CoreELEC, Lakka, and Batocera.
Powered by [EmulationStation Desktop Edition](https://es-de.org), which uses RetroArch and other standalone emulators to allow you to import and play your favorite retro (and even not-so-retro) games in a tidy environment without flooding your Steam library.
Visit our [website](https://retrodeck.net) and Join our [Discord](https://discord.gg/Dz3szYsP8g)!
<p float="center"> <p float="center">
<img src="https://github.com/XargonWan/RetroDECK/blob/main/res/screenshots/screen03.jpeg?raw=true" alt="screenshot" width="300"/> <img src="https://github.com/XargonWan/RetroDECK/blob/main/res/screenshots/screen03.jpeg?raw=true" alt="screenshot" width="300"/>
<img src="https://github.com/XargonWan/RetroDECK/blob/main/res/screenshots/screen04.jpeg?raw=true" alt="screenshot" width="300"/><br/> <img src="https://github.com/XargonWan/RetroDECK/blob/main/res/screenshots/screen04.jpeg?raw=true" alt="screenshot" width="300"/><br/>
@ -24,22 +19,60 @@ Visit our [website](https://retrodeck.net) and Join our [Discord](https://discor
</p> </p>
<br/> <br/>
## What does it mean to be "tailored for the Steam Deck"? ## What is RetroDECK?
It means that all the configurations are ready to go and tweaked to get the best graphics and performance on the Deck without having the hassle of choosing, installing and configuring tons of emulators: just put your games in the roms folder, provide your own bioses and start your games. RetroDECK is a [EmulationStation Desktop Edition](https://es-de.org) powered 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 a tidy contained flatpak sandbox environment. It's inspired by embedded emulation systems like AmberELEC, EmuELEC, CoreELEC, Lakka, and Batocera.
## Do I have to partition my disk to install it? You can also check out our: [Flathub Page](https://flathub.org/apps/net.retrodeck.retrodeck)<br/>
No partitioning or formatting is required. RetroDECK (differently from AmberELEC, Batocera and others) comes as a flatpak: just install it as any other application and launch it from your desktop or Steam library. You still retain the ability to return to SteamOS by pressing the Steam button or opening the Quick Access menu while using RetroDECK.
## Is it available on Windows? ## What devices/systems does RetroDECK support:
No, RetroDECK doesn't support Windows, but the project is fully open source so you can port it if you wish. As an alternative, [Retrobat](http://www.retrobat.ovh/) offers similar functionality (but may not be compatible with RetroDECK's rom paths).
## How can I install it? ### Steam Deck
Just install it from Discover store.<br/>
However if you want to test the cooker version you can follow the [Installation instructions](https://github.com/XargonWan/RetroDECK/wiki/How-to:-Getting-started) on the Wiki
## Can I help? Supported from the start and RetroDECK is tailored to the Steam Deck during the beta period. The goal is that all the configurations are ready out-of-the-box and optimized towards the Steam Deck.
Of course, any help is appreciated, and not only by programming, just check out our [Discord](https://discord.gg/Dz3szYsP8g)!
<br/><br/><br/> ### Linux Desktop
Technically it is working, but the user experience might not be that great it could contain desktop specific bugs and other issues.
You will also need to manually configure the input to match your desktop and might need to tweak more settings. If you want to try it make sure that your distribution has flatpak support (else you will need to install it).<br>
We will start to have a bigger desktop focus after the beta period is over.
### Other SteamOS or Linux handheld gaming devices with flatpak support
We do plan to support other SteamOS based devices in the future. But during the BETA we are focusing on the Steam Deck.<br/>
You can get it to run on other Linux based devices it is not just as seamless as we want it to be and does not live up to our higher standards.<br/>
You will need to manually configure the input to match your device and might need to tweak more settings if you try it on a none Steam Deck device. There might also be some hardware specific bugs.
###### *The Steam Deck logo is a registered trademark of Valve Corporation. This project is in no way officially affiliated with Valve.<br/>All trademarks, logos and brand names are the property of their respective owners. All company, product and service names used in this project are for identification purposes only. Use of these names, trademarks and brands does not imply endorsement.* ## Do you have any plans for other systems?
RetroDECK does not have plans to support Windows, macOS, Android, or iOS.<br>For similar functionality on Windows you could explore [Retrobat](https://www.retrobat.org/) as an alternative.
## How do I install RetroDECK?
Read and follow the guide here: [Installation instructions](https://github.com/XargonWan/RetroDECK/wiki/How-to:-Getting-started) on the Wiki
## The RetroDECK community:
[Website](https://retrodeck.net) <br/>
[Wiki](https://github.com/XargonWan/RetroDECK/wiki) <br/>
[Discord](https://discord.gg/Dz3szYsP8g)<br/>
[Lemmy](https://lemmy.zip/c/retrodeck)<br/>
[Subreddit](https://www.reddit.com/r/retrodeck)
# Short FAQ
Please read the [Wiki](https://github.com/XargonWan/RetroDECK/wiki) for even more information.
## Do I have to partition or format my disk/sdcard to install it?
No, partitioning or formatting is not needed at all. RetroDECK (differently from AmberELEC, Batocera and others) comes as a flatpak. Just install it as any other application and launch it from your desktop and/or Steam library.
## Can I contribute to the project?
Yes! Everybody is welcome to contribute in any way possible if it is personal time or funds, just check out our [Discord](https://discord.gg/Dz3szYsP8g)!
- Do you know how to code and want to contribute? Please join the development team!
- Maybe you know graphics, art or UI & UX design? Join the discussion!
- You can just help by helping others in the support or guide people on various social media and communication platforms.
- You can also help by just finding and testing the best configurations for the emulators and the roms.
- Or just help us by doing bug reports on all the issues you find (please check old issues first before submitting a new one).
- By joining the ✨-new-helpers-start-here channel on [Discord](https://discord.gg/Mv3GZnwrE8) and keeping an eye on the [issues](https://github.com/XargonWan/RetroDECK/issues) tab as well as the [Roadmap](https://github.com/XargonWan/RetroDECK/milestones) tab, you can be up to speed on the latest developments on RetroDECK.
- We have a [Patreon](https://www.patreon.com/RetroDECK) page if you want to help us keep our build servers running or just buy us a beverage
###### The Steam Deck logo is a registered trademark of Valve Corporation. This project is in no way officially affiliated with Valve.<br/>
###### All trademarks, logos and brand names are the property of their respective owners. All company, product and service names used in this project are for identification purposes only. Use of these names, trademarks and brands does not imply endorsement.

View file

@ -0,0 +1,94 @@
#!/bin/bash
# THIS SCRIPT IS BROKEN HENCE DISABLED FTM
# This script is getting the latest release notes from the wiki and add them to the appdata
source automation_tools/version_extractor.sh
# Fetch appdata version
appdata_version=$(fetch_appdata_version)
echo -e "Appdata:\t\t$appdata_version"
# Defining manifest file location
appdata_file="net.retrodeck.retrodeck.appdata.xml"
# Check if release with appdata_version already exists
if grep -q "version=\"$appdata_version\"" "$appdata_file"; then
echo "Deleting existing release version $appdata_version..."
# Remove the existing release entry
sed -i "/<release version=\"$appdata_version\"/,/<\/release>/d" "$appdata_file"
fi
echo "Adding new release version $appdata_version..."
# Get today's date in the required format (YYYY-MM-DD)
today_date=$(date +"%Y-%m-%d")
echo "Today is $today_date"
# Construct the release snippet
release_snippet="\
<releases>
<release version=\"$appdata_version\" date=\"$today_date\">
<url>https://github.com/XargonWan/RetroDECK/releases/tag/$appdata_version</url>
<description>
RELEASE_NOTES_PLACEHOLDER
</description>
</release>"
# Read the entire content of the XML file
xml_content=$(cat "$appdata_file")
# Replace RELEASE_NOTES_PLACEHOLDER with the actual release notes
# TODO
git clone https://github.com/XargonWan/RetroDECK.wiki.git /tmp/wiki
# Path to the markdown file
wiki="/tmp/wiki/Version-history:-Patch-Notes.md"
# Read the markdown file until the first occurrence of "---"
latest_version_notes=""
while IFS= read -r line; do
if [ "$line" = "---" ]; then
break
fi
latest_version_notes+="$line\n"
done < "$wiki"
# Extract the version number
version_number="${latest_version_notes#*# RetroDECK }" # Remove text before "# RetroDECK "
version_number="${version_number%% -*}" # Remove text after " - "
# Extract sections from the latest version notes
sections=$(echo "$latest_version_notes" | awk '/##/ { print; }')
# Create a formatted section list
section_list=""
current_section=""
while IFS= read -r line; do
if [[ "$line" == "##"* ]]; then
if [ -n "$current_section" ]; then
section_list+="</ul>"
fi
section_name="${line##*# }"
section_list+="<p>${section_name}</p><ul>"
elif [[ "$line" == "- "* ]]; then
entry="${line#*- }"
section_list+="<li>${entry}</li>"
fi
done <<< "$sections"
if [ -n "$current_section" ]; then
section_list+="</ul>"
fi
# Replace RELEASE_NOTES_PLACEHOLDER with the actual release notes
release_description="${release_snippet/RELEASE_NOTES_PLACEHOLDER/$section_list}"
# Append the new release snippet to the content
modified_xml_content="${xml_content/<releases>/$release_description}"
# Overwrite the original XML file with the modified content
echo "$modified_xml_content" > "$appdata_file"
# Format the XML file
#xmlstarlet fo --omit-decl "$appdata_file"

View file

@ -1,5 +1,12 @@
# The proper format for this file is # The proper format for this file is
# ACTION^PLACEHOLDERTEXT^URL^REPO(Optional) # ACTION^PLACEHOLDERTEXT^URL^REPO(Optional)
hash^DOOMSHAPLACEHOLDER^https://buildbot.libretro.com/assets/cores/DOOM/Doom%20%28Shareware%29.zip # hash^DOOMSHAPLACEHOLDER^https://buildbot.libretro.com/assets/cores/DOOM/Doom%20%28Shareware%29.zip
hash^VITASHAPLACEHOLDER^https://github.com/Vita3K/Vita3K/releases/download/continuous/ubuntu-latest.zip hash^VITASHAPLACEHOLDER^https://github.com/Vita3K/Vita3K/releases/download/continuous/ubuntu-latest.zip
hash^DUCKSTATIONSHAPLACEHOLDER^https://github.com/stenzek/duckstation/releases/download/preview/DuckStation-x64.AppImage hash^DUCKSTATIONSHAPLACEHOLDER^https://github.com/stenzek/duckstation/releases/download/preview/DuckStation-x64.AppImage
hash^SAMEDUCKSHAPLACEHOLDER^https://buildbot.libretro.com/nightly/linux/x86_64/latest/sameduck_libretro.so.zip
hash^PPSSPPBIOSHASHPLACEHOLDER^https://github.com/hrydgard/ppsspp/archive/refs/heads/master.zip
hash^MSXBIOSHASHPLACEHOLDER^http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip
hash^XEMUHDDHASHPLACEHOLDER^https://github.com/mborgerson/xemu-hdd-image/releases/latest/download/xbox_hdd.qcow2.zip
latestcommit^UNIVERSALDYNAMICINPUTCOMMITPLACEHOLDER^https://github.com/Venomalia/UniversalDynamicInput^main
outside_info^VERSIONPLACEHOLDER^${GITHUB_WORKSPACE}/buildid
branch^THISBRANCH

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,7 @@
#!/bin/bash
# COOKER ONLY
# This script is adding the update portal (permission) to the cooker flatpak.
# This is ran by the cooker pipeline.
sed -i '/finish-args:/a \ \ - --talk-name=org.freedesktop.Flatpak' net.retrodeck.retrodeck.yml

View file

@ -0,0 +1,5 @@
#!/bin/bash
# This is building the bundle RetroDECK.flatpak after the download and build steps are done
flatpak build-bundle ${GITHUB_WORKSPACE}/local RetroDECK-cooker.flatpak net.retrodeck.retrodeck

View file

@ -0,0 +1,14 @@
#!/bin/bash
# This script is downloading the needed files to prepare the manifest build
git config --global protocol.file.allow always
mkdir -vp ${GITHUB_WORKSPACE}/local
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
flatpak-builder --user --force-clean \
--install-deps-from=flathub \
--install-deps-from=flathub-beta \
--repo=${GITHUB_WORKSPACE}/local \
--download-only \
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
net.retrodeck.retrodeck.yml

View file

@ -0,0 +1,14 @@
#!/bin/bash
# This script is building the flatpak is the needed files are already downloaded
git config --global protocol.file.allow always
mkdir -vp ${GITHUB_WORKSPACE}/local
mkdir -vp ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker
flatpak-builder --user --force-clean \
--install-deps-from=flathub \
--install-deps-from=flathub-beta \
--repo=${GITHUB_WORKSPACE}/local \
--disable-download \
${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker \
net.retrodeck.retrodeck.yml

View file

@ -1,5 +1,7 @@
#!/bin/bash #!/bin/bash
# WARNING: DANGEROUS! Don't use this script lightly
git submodule deinit --all git submodule deinit --all
rm rd-submodules/retroarch rm rd-submodules/retroarch
git rm -rf --cached rd-submodules/retroarch git rm -rf --cached rd-submodules/retroarch

View file

@ -0,0 +1,5 @@
#!/bin/bash
# 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

View file

@ -0,0 +1,63 @@
#!/bin/bash
# This script is used to check that the versions are correct and stopping the pipeline if something is wrong.
# This is designed to be run on the main pipeline to check that everything is in order before building RetroDECK.
source automation_tools/version_extractor.sh
# Set the file paths
appdata="net.retrodeck.retrodeck.appdata.xml"
manifest="net.retrodeck.retrodeck.yml"
manifest_content=$(cat "$manifest")
compare_versions() {
local manifest_version_cleaned=$(echo "$1" | sed 's/[a-zA-Z]//g')
local appdata_version_cleaned=$(echo "$2" | sed 's/[a-zA-Z]//g')
if [[ "$manifest_version_cleaned" == "$appdata_version_cleaned" ]]; then
return 0 # Versions are equal
fi
local IFS=.
local manifest_parts=($manifest_version_cleaned)
local appdata_parts=($appdata_version_cleaned)
for ((i=0; i<${#manifest_parts[@]}; i++)); do
if ((manifest_parts[i] > appdata_parts[i])); then
return 1 # Manifest version is greater
elif ((manifest_parts[i] < appdata_parts[i])); then
return 2 # Appdata version is greater
fi
done
return 0 # Versions are equal
}
repo_version=$(fetch_repo_version)
echo -e "Online repository:\t$repo_version"
manifest_version=$(fetch_manifest_version)
echo -e "Manifest:\t\t$manifest_version"
appdata_version=$(fetch_appdata_version)
echo -e "Appdata:\t\t$appdata_version"
# Additional checks
if [[ "$manifest_version" == "main" || "$manifest_version" == "THISBRANCH" ]]; then
echo "Manifest version cannot be 'main' or 'THISBRANCH'. Please fix it."
exit 1
fi
if [[ "$appdata_version" != "$manifest_version" ]]; then
echo "Appdata version is not equal to manifest version. Please fix it."
exit 1
fi
compare_versions "$repo_version" "$manifest_version"
result=$?
if [ "$result" -eq 1 ]; then
echo "Repository version is less than manifest version. Please fix it."
exit 1
fi
echo "All checks passed. Well done!"

19
automation_tools/pre_build_automation.sh Normal file → Executable file
View file

@ -15,6 +15,7 @@
rd_manifest=${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml rd_manifest=${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml
automation_task_list=${GITHUB_WORKSPACE}/automation_tools/automation_task_list.cfg automation_task_list=${GITHUB_WORKSPACE}/automation_tools/automation_task_list.cfg
current_branch=$(git rev-parse --abbrev-ref HEAD)
echo "Manifest location: $rd_manifest" echo "Manifest location: $rd_manifest"
echo "Automation task list location: $automation_task_list" echo "Automation task list location: $automation_task_list"
@ -23,10 +24,17 @@ echo "Task list contents:"
cat "$automation_task_list" cat "$automation_task_list"
echo echo
# Update all collected information
while IFS="^" read -r action placeholder url branch while IFS="^" read -r action placeholder url branch
do do
if [[ ! $action == "#"* ]] && [[ ! -z "$action" ]]; then if [[ ! $action == "#"* ]] && [[ ! -z "$action" ]]; then
if [[ "$action" == "hash" ]]; then if [[ "$action" == "branch" ]]; then
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
echo echo
echo "Placeholder text: $placeholder" echo "Placeholder text: $placeholder"
echo "URL to hash: $url" echo "URL to hash: $url"
@ -53,6 +61,15 @@ do
appimagehash=$(curl -sL "$appimageurl" | sha256sum | cut -d ' ' -f1) appimagehash=$(curl -sL "$appimageurl" | sha256sum | cut -d ' ' -f1)
echo "AppImage hash found: $appimagehash" echo "AppImage hash found: $appimagehash"
/bin/sed -i 's^'"HASHFOR$placeholder"'^'"$appimagehash"'^' $rd_manifest /bin/sed -i 's^'"HASHFOR$placeholder"'^'"$appimagehash"'^' $rd_manifest
elif [[ "$action" == "outside_info" ]]; then
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: $(cat $url)"
echo
/bin/sed -i 's^'"$placeholder"'^'"$(cat $url)"'^' $rd_manifest
fi fi
fi fi
done < "$automation_task_list" done < "$automation_task_list"

View file

@ -0,0 +1,34 @@
#!/bin/bash
# This script is intended to gather version information from various sources:
# RetroDECK repository
# Appdata.xml file
# Manifest YAML file
# It consists of three functions, each responsible for retrieving a specific version-related data.
appdata="net.retrodeck.retrodeck.appdata.xml"
manifest="net.retrodeck.retrodeck.yml"
manifest_content=$(cat "$manifest")
fetch_repo_version(){
# Getting latest RetroDECK release info
LATEST_RELEASE=$(curl -s "https://api.github.com/repos/XargonWan/RetroDECK/releases/latest")
# Extracting tag name from the latest release
repo_version=$(echo "$LATEST_RELEASE" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
# Printing results
echo "$repo_version"
}
fetch_appdata_version(){
# Extract the version from the net.retrodeck.retrodeck.appdata.xml file
appdata_version=$(grep -oPm1 "(?<=<release version=\")[^\"]+" "$appdata")
echo "$appdata_version"
}
fetch_manifest_version(){
# Use awk to extract the value of the first iteration of VERSION variable
manifest_version=$(echo "$manifest_content" | awk '/VERSION=/ && !/#/ { sub(/.*VERSION=/, ""); sub(/#.*/, ""); print; exit }')
# Trim leading and trailing whitespace
manifest_version=$(echo "$manifest_version" | awk '{$1=$1;print}')
echo "$manifest_version"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

View file

@ -18,7 +18,7 @@ EnableWideScreenPatches = false
EnableNoInterlacingPatches = false EnableNoInterlacingPatches = false
EnableRecordingTools = true EnableRecordingTools = true
EnableGameFixes = true EnableGameFixes = true
SaveStateOnShutdown = true SaveStateOnShutdown = false
ConsoleToStdio = false ConsoleToStdio = false
HostFs = false HostFs = false
PatchBios = false PatchBios = false
@ -334,6 +334,7 @@ ToggleVideoCapture = Keyboard/Control & Keyboard/V
IncreaseUpscaleMultiplier = Keyboard/Control & Keyboard/U IncreaseUpscaleMultiplier = Keyboard/Control & Keyboard/U
DecreaseUpscaleMultiplier = Keyboard/Control & Keyboard/Y DecreaseUpscaleMultiplier = Keyboard/Control & Keyboard/Y
CycleAspectRatio = Keyboard/Control & Keyboard/W CycleAspectRatio = Keyboard/Control & Keyboard/W
ShutdownVM = Keyboard/Control & Keyboard/Q
ResetVM = Keyboard/Control & Keyboard/R ResetVM = Keyboard/Control & Keyboard/R
@ -445,4 +446,12 @@ PressureModifier = 0.500000
[GameList] [GameList]
RecursivePaths = RETRODECKHOMEDIR/roms/ps2 RecursivePaths = RETRODECKHOMEDIR/roms/ps2
[Achievements]
Enabled = false
ChallengeMode = false
Username =
Token =
LoginTimestamp =

View file

@ -375,7 +375,7 @@ Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq=Ctrl+2
Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq\default=false Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq\default=false
Shortcuts\Main%20Window\Exit%20Citra\Context=1 Shortcuts\Main%20Window\Exit%20Citra\Context=1
Shortcuts\Main%20Window\Exit%20Citra\Context\default=true Shortcuts\Main%20Window\Exit%20Citra\Context\default=true
Shortcuts\Main%20Window\Exit%20Citra\KeySeq=Ctrl+Esc Shortcuts\Main%20Window\Exit%20Citra\KeySeq=Ctrl+Q
Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=false Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=false
Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1 Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1
Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true
@ -395,7 +395,7 @@ Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq=Ctrl+1
Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq\default=false Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq\default=false
Shortcuts\Main%20Window\Load%20Amiibo\Context=3 Shortcuts\Main%20Window\Load%20Amiibo\Context=3
Shortcuts\Main%20Window\Load%20Amiibo\Context\default=true Shortcuts\Main%20Window\Load%20Amiibo\Context\default=true
Shortcuts\Main%20Window\Load%20Amiibo\KeySeq=Ctrl+M Shortcuts\Main%20Window\Load%20Amiibo\KeySeq=Alt+M
Shortcuts\Main%20Window\Load%20Amiibo\KeySeq\default=false Shortcuts\Main%20Window\Load%20Amiibo\KeySeq\default=false
Shortcuts\Main%20Window\Load%20File\Context=1 Shortcuts\Main%20Window\Load%20File\Context=1
Shortcuts\Main%20Window\Load%20File\Context\default=false Shortcuts\Main%20Window\Load%20File\Context\default=false
@ -451,7 +451,7 @@ Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq=
Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq\default=false Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq\default=false
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context=1 Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context=1
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context\default=true Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context\default=true
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq=Alt+0 Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq=Ctrl+L
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq\default=false Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq\default=false
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1 Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=true Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=true
@ -474,16 +474,16 @@ Updater\update_on_close=false
Updater\update_on_close\default=true Updater\update_on_close\default=true
calloutFlags=1 calloutFlags=1
calloutFlags\default=false calloutFlags\default=false
confirmClose=true confirmClose=false
confirmClose\default=true confirmClose\default=false
displayTitleBars=true displayTitleBars=true
displayTitleBars\default=true displayTitleBars\default=true
enable_discord_presence=true enable_discord_presence=true
enable_discord_presence\default=true enable_discord_presence\default=true
firstStart=false firstStart=false
firstStart\default=false firstStart\default=false
fullscreen=false fullscreen=true
fullscreen\default=true fullscreen\default=false
hideInactiveMouse=false hideInactiveMouse=false
hideInactiveMouse\default=true hideInactiveMouse\default=true
pauseWhenInBackground=false pauseWhenInBackground=false
@ -532,4 +532,4 @@ citra_username=RetroDECK
enable_telemetry=false enable_telemetry=false
enable_telemetry\default=false enable_telemetry\default=false
web_api_url=https://api.citra-emu.org web_api_url=https://api.citra-emu.org
web_api_url\default=true web_api_url\default=true

View file

@ -1,10 +1,12 @@
[Audio] [Audio]
audio_emulation=0
audio_emulation\default=true
enable_audio_stretching=true enable_audio_stretching=true
enable_audio_stretching\default=true enable_audio_stretching\default=true
enable_dsp_lle=false input_device=auto
enable_dsp_lle\default=true input_device\default=true
enable_dsp_lle_multithread=false input_type=0
enable_dsp_lle_multithread\default=true input_type\default=true
mic_input_device=Default mic_input_device=Default
mic_input_device\default=true mic_input_device\default=true
mic_input_type=0 mic_input_type=0
@ -13,6 +15,8 @@ output_device=auto
output_device\default=true output_device\default=true
output_engine=auto output_engine=auto
output_engine\default=true output_engine\default=true
output_type=0
output_type\default=true
volume=@Variant(\0\0\0\x87?\x80\0\0) volume=@Variant(\0\0\0\x87?\x80\0\0)
volume\default=true volume\default=true
@ -178,6 +182,8 @@ LLE\NWM=false
LLE\NWM\default=true LLE\NWM\default=true
LLE\PDN=false LLE\PDN=false
LLE\PDN\default=true LLE\PDN\default=true
LLE\PLGLDR=false
LLE\PLGLDR\default=true
LLE\PM=false LLE\PM=false
LLE\PM\default=true LLE\PM\default=true
LLE\PS=false LLE\PS=false
@ -197,10 +203,14 @@ LLE\SSL\default=true
gdbstub_port=24689 gdbstub_port=24689
gdbstub_port\default=true gdbstub_port\default=true
record_frame_times=false record_frame_times=false
renderer_debug=false
renderer_debug\default=true
use_gdbstub=false use_gdbstub=false
use_gdbstub\default=true use_gdbstub\default=true
[Layout] [Layout]
anaglyph_shader_name=dubois (builtin)
anaglyph_shader_name\default=true
custom_bottom_bottom=480 custom_bottom_bottom=480
custom_bottom_bottom\default=true custom_bottom_bottom\default=true
custom_bottom_left=40 custom_bottom_left=40
@ -211,6 +221,8 @@ custom_bottom_top=240
custom_bottom_top\default=true custom_bottom_top\default=true
custom_layout=false custom_layout=false
custom_layout\default=true custom_layout\default=true
custom_second_layer_opacity=100
custom_second_layer_opacity\default=true
custom_top_bottom=240 custom_top_bottom=240
custom_top_bottom\default=true custom_top_bottom\default=true
custom_top_left=0 custom_top_left=0
@ -246,18 +258,18 @@ bg_red=0
bg_red\default=true bg_red\default=true
frame_limit=100 frame_limit=100
frame_limit\default=true frame_limit\default=true
frame_limit_alternate=200 graphics_api=1
frame_limit_alternate\default=true graphics_api\default=true
resolution_factor=1 resolution_factor=1
resolution_factor\default=true resolution_factor\default=true
shaders_accurate_mul=true shaders_accurate_mul=true
shaders_accurate_mul\default=true shaders_accurate_mul\default=true
texture_filter_name=none texture_filter=0
texture_filter_name\default=true texture_filter\default=true
texture_filter_name=Linear (Default)
texture_filter_name\default=false
use_disk_shader_cache=true use_disk_shader_cache=true
use_disk_shader_cache\default=true use_disk_shader_cache\default=true
use_frame_limit_alternate=false
use_frame_limit_alternate\default=true
use_hw_renderer=true use_hw_renderer=true
use_hw_renderer\default=true use_hw_renderer\default=true
use_hw_shader=true use_hw_shader=true
@ -268,12 +280,16 @@ use_vsync_new=true
use_vsync_new\default=true use_vsync_new\default=true
[System] [System]
allow_plugin_loader=true
allow_plugin_loader\default=true
init_clock=0 init_clock=0
init_clock\default=true init_clock\default=true
init_time=946681277 init_time=946681277
init_time\default=true init_time\default=true
is_new_3ds=true is_new_3ds=true
is_new_3ds\default=true is_new_3ds\default=true
plugin_loader=false
plugin_loader\default=true
region_value=-1 region_value=-1
region_value\default=true region_value\default=true
@ -332,7 +348,7 @@ Paths\moviePlaybackPath=
Paths\movieRecordPath= Paths\movieRecordPath=
Paths\recentFiles=@Invalid() Paths\recentFiles=@Invalid()
Paths\romsPath= Paths\romsPath=
Paths\screenshotPath= Paths\screenshotPath=RETRODECKHOMEDIR/screenshots
Paths\symbolsPath= Paths\symbolsPath=
Paths\videoDumpingPath= Paths\videoDumpingPath=
Shortcuts\Main%20Window\Advance%20Frame\Context=2 Shortcuts\Main%20Window\Advance%20Frame\Context=2
@ -347,6 +363,10 @@ Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context=1
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=F4 Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=F4
Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=true Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Decrease%203D%20Factor\Context=1
Shortcuts\Main%20Window\Decrease%203D%20Factor\Context\default=false
Shortcuts\Main%20Window\Decrease%203D%20Factor\KeySeq=
Shortcuts\Main%20Window\Decrease%203D%20Factor\KeySeq\default=false
Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context=2 Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context=2
Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context\default=true Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context\default=true
Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq=- Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq=-
@ -357,12 +377,16 @@ Shortcuts\Main%20Window\Exit%20Citra\KeySeq=Ctrl+Q
Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=true Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=true
Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1 Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1
Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true
Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=Esc Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=
Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=true
Shortcuts\Main%20Window\Fullscreen\Context=1 Shortcuts\Main%20Window\Fullscreen\Context=1
Shortcuts\Main%20Window\Fullscreen\Context\default=true Shortcuts\Main%20Window\Fullscreen\Context\default=true
Shortcuts\Main%20Window\Fullscreen\KeySeq=F11 Shortcuts\Main%20Window\Fullscreen\KeySeq=F11
Shortcuts\Main%20Window\Fullscreen\KeySeq\default=true Shortcuts\Main%20Window\Fullscreen\KeySeq\default=true
Shortcuts\Main%20Window\Increase%203D%20Factor\Context=1
Shortcuts\Main%20Window\Increase%203D%20Factor\Context\default=false
Shortcuts\Main%20Window\Increase%203D%20Factor\KeySeq=
Shortcuts\Main%20Window\Increase%203D%20Factor\KeySeq\default=false
Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context=2 Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context=2
Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context\default=true Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context\default=true
Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq=+ Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq=+
@ -402,19 +426,27 @@ Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Swap%20Screens\Context=1 Shortcuts\Main%20Window\Swap%20Screens\Context=1
Shortcuts\Main%20Window\Swap%20Screens\Context\default=true Shortcuts\Main%20Window\Swap%20Screens\Context\default=true
Shortcuts\Main%20Window\Swap%20Screens\KeySeq=F9 Shortcuts\Main%20Window\Swap%20Screens\KeySeq=F9
Shortcuts\Main%20Window\Swap%20Screens\KeySeq\default=true Shortcuts\Main%20Window\Swap%20Screens\KeySeq\default=false
Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\Context=2 Shortcuts\Main%20Window\Toggle%203D\Context=1
Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\Context\default=true Shortcuts\Main%20Window\Toggle%203D\Context\default=false
Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\KeySeq=Ctrl+Z Shortcuts\Main%20Window\Toggle%203D\KeySeq=
Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\KeySeq\default=true Shortcuts\Main%20Window\Toggle%203D\KeySeq\default=false
Shortcuts\Main%20Window\Toggle%20Custom%20Textures\Context=2
Shortcuts\Main%20Window\Toggle%20Custom%20Textures\Context\default=true
Shortcuts\Main%20Window\Toggle%20Custom%20Textures\KeySeq=Ctrl+Z
Shortcuts\Main%20Window\Toggle%20Custom%20Textures\KeySeq\default=false
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context=1 Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context=1
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context\default=true Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context\default=true
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq=Ctrl+F Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq=Ctrl+F
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context=2 Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context=1
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context\default=true Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context\default=true
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq=Ctrl+A Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq=Ctrl+A
Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\Context=1
Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\Context\default=true
Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq=
Shortcuts\Main%20Window\Toggle%20Per-Game%20Speed\KeySeq\default=false
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context=1 Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context=1
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context\default=true Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context\default=true
Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq=F10 Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq=F10
@ -468,6 +500,8 @@ theme=default
theme\default=true theme\default=true
[Utility] [Utility]
async_custom_loading=true
async_custom_loading\default=true
custom_textures=false custom_textures=false
custom_textures\default=true custom_textures\default=true
dump_textures=false dump_textures=false

View file

@ -9,8 +9,8 @@ Square = 1-29,10-191
Triangle = 1-47,10-188 Triangle = 1-47,10-188
Start = 1-62,10-197 Start = 1-62,10-197
Select = 1-66,10-196 Select = 1-66,10-196
L = 1-45,10-194 L = 1-45,10-193
R = 1-51,10-195 R = 1-51,10-192
An.Up = 1-37,10-4003 An.Up = 1-37,10-4003
An.Down = 1-39,10-4002 An.Down = 1-39,10-4002
An.Left = 1-38,10-4001 An.Left = 1-38,10-4001

View file

@ -286,6 +286,10 @@ gambatte_gb_link_network_server_ip_9 = "0"
gambatte_gb_palette_pixelshift_1 = "PixelShift 01 - Arctic Green" gambatte_gb_palette_pixelshift_1 = "PixelShift 01 - Arctic Green"
gambatte_gb_palette_twb64_1 = "TWB64 001 - Aqours Blue" gambatte_gb_palette_twb64_1 = "TWB64 001 - Aqours Blue"
gambatte_gb_palette_twb64_2 = "TWB64 101 - 765PRO Pink" gambatte_gb_palette_twb64_2 = "TWB64 101 - 765PRO Pink"
gambatte_gb_input_player1_l = "nul"
gambatte_gb_input_player1_l_btn = "nul"
gambatte_gb_input_player1_r = "nul"
gambatte_gb_input_player1_r_btn = "nul"
gambatte_gbc_color_correction = "GBC only" gambatte_gbc_color_correction = "GBC only"
gambatte_gbc_color_correction_mode = "accurate" gambatte_gbc_color_correction_mode = "accurate"
gambatte_gbc_frontlight_position = "central" gambatte_gbc_frontlight_position = "central"

View file

@ -3071,7 +3071,7 @@ savestates_in_content_dir = "false"
scan_without_core_match = "false" scan_without_core_match = "false"
screen_brightness = "100" screen_brightness = "100"
screen_orientation = "0" screen_orientation = "0"
screenshot_directory = ":\screenshots" screenshot_directory = "RETRODECKHOMEDIR/screenshots"
screenshots_in_content_dir = "false" screenshots_in_content_dir = "false"
settings_show_accessibility = "true" settings_show_accessibility = "true"
settings_show_achievements = "true" settings_show_achievements = "true"

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,974 @@
"controller_mappings"
{
"version" "3"
"revision" "60"
"title" "RetroDECK: Official Layout - Steam Controller"
"description" "RetroDECK: Steam Controller"
"creator" ""
"progenitor" ""
"url" ""
"export_type" ""
"controller_type" "controller_steamcontroller_gordon"
"controller_caps" "2179063"
"major_revision" "0"
"minor_revision" "0"
"Timestamp" "-952722512"
"actions"
{
"Default"
{
"title" "RetroDECK - Set"
"legacy_set" "1"
}
"Preset_1000001"
{
"title" "Global Hotkeys - Set"
"legacy_set" "1"
}
}
"action_layers"
{
}
"group"
{
"id" "0"
"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" "1"
"mode" "dpad"
"name" ""
"description" ""
"inputs"
{
"dpad_north"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button dpad_up, , "
}
"settings"
{
"haptic_intensity" "0"
}
}
}
"disabled_activators"
{
}
}
"dpad_south"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button dpad_down, , "
}
"settings"
{
"haptic_intensity" "0"
}
}
}
"disabled_activators"
{
}
}
"dpad_east"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button dpad_right, , "
}
"settings"
{
"haptic_intensity" "0"
}
}
}
"disabled_activators"
{
}
}
"dpad_west"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button dpad_left, , "
}
"settings"
{
"haptic_intensity" "0"
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "2"
"mode" "joystick_move"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button JOYSTICK_RIGHT, , "
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "3"
"mode" "joystick_move"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button JOYSTICK_LEFT, , "
}
"settings"
{
"haptic_intensity" "2"
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "4"
"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" "5"
"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" "6"
"mode" "joystick_move"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button JOYSTICK_RIGHT, , "
}
"settings"
{
"haptic_intensity" "2"
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "11"
"mode" "four_buttons"
"name" ""
"description" ""
"inputs"
{
"button_a"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Pause / Resume, , "
"binding" "key_press P, Pause / Resume, , "
}
}
}
"disabled_activators"
{
}
}
"button_b"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Take Screenshot, , "
"binding" "key_press X, Take Screenshot, , "
}
}
}
"disabled_activators"
{
}
}
"button_x"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Fullscreen Toggle, , "
"binding" "key_press RETURN, Fullscreen Toggle, , "
}
}
}
"disabled_activators"
{
}
}
"button_y"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Open Menu, , "
"binding" "key_press M, Open Menu, , "
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "12"
"mode" "dpad"
"name" ""
"description" ""
"inputs"
{
"dpad_north"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Increase Emulation Speed, , "
"binding" "key_press 1, Increase Emulation Speed, , "
}
}
}
"disabled_activators"
{
}
}
"dpad_south"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Decrease Emulation Speed, , "
"binding" "key_press 2, Decrease Emulation Speed, , "
}
}
}
"disabled_activators"
{
}
}
"dpad_east"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Next State Slot, , "
"binding" "key_press K, Next State Slot, , "
}
}
}
"disabled_activators"
{
}
}
"dpad_west"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Previous State Slot, , "
"binding" "key_press J, Previous State Slot, , "
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "13"
"mode" "joystick_move"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button JOYSTICK_RIGHT, , "
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "14"
"mode" "joystick_move"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button JOYSTICK_LEFT, , "
}
"settings"
{
"haptic_intensity" "2"
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "15"
"mode" "trigger"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Decrease Emulation Speed, , "
"binding" "key_press KEYPAD_DASH, Decrease Emulation Speed, , "
}
"settings"
{
"haptic_intensity" "2"
}
}
}
"disabled_activators"
{
}
}
}
"settings"
{
"output_trigger" "1"
}
}
"group"
{
"id" "16"
"mode" "trigger"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Increase Emulation Speed, , "
"binding" "key_press KEYPAD_PLUS, Increase Emulation Speed, , "
}
"settings"
{
"haptic_intensity" "2"
}
}
}
"disabled_activators"
{
}
}
}
"settings"
{
"output_trigger" "2"
}
}
"group"
{
"id" "19"
"mode" "absolute_mouse"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "mouse_button LEFT, , "
}
"settings"
{
"haptic_intensity" "1"
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "20"
"mode" "absolute_mouse"
"name" ""
"description" ""
"inputs"
{
"click"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "mouse_button LEFT, , "
}
"settings"
{
"haptic_intensity" "1"
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "23"
"mode" "absolute_mouse"
"name" ""
"description" ""
"inputs"
{
}
"gameactions"
{
}
}
"group"
{
"id" "7"
"mode" "switches"
"name" ""
"description" "#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 JOYSTICK_LEFT, , "
}
}
}
"disabled_activators"
{
}
}
"button_back_right"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "xinput_button JOYSTICK_RIGHT, , "
}
}
}
"disabled_activators"
{
}
}
}
}
"group"
{
"id" "10"
"mode" "switches"
"name" ""
"description" ""
"inputs"
{
"button_escape"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Quit Emulator, , "
"binding" "key_press Q, Quit Emulator, , "
}
}
}
"disabled_activators"
{
}
}
"button_menu"
{
"activators"
{
"release"
{
"bindings"
{
"binding" "controller_action CHANGE_PRESET 1 0 1, , "
}
}
"Full_Press"
{
"bindings"
{
"binding" "xinput_button SELECT, , "
}
}
}
"disabled_activators"
{
}
}
"left_bumper"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Load State, , "
"binding" "key_press A, Load State, , "
}
}
}
"disabled_activators"
{
}
}
"right_bumper"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Save State, , "
"binding" "key_press S, Save State, , "
}
}
}
"disabled_activators"
{
}
}
"button_back_left"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press LEFT_CONTROL, Swap Screens, , "
"binding" "key_press TAB, Swap Screens, , "
}
}
}
"disabled_activators"
{
}
}
"button_back_right"
{
"activators"
{
"Full_Press"
{
"bindings"
{
"binding" "key_press ESCAPE, Escape, , "
}
}
}
"disabled_activators"
{
}
}
}
}
"preset"
{
"id" "0"
"name" "Default"
"group_source_bindings"
{
"7" "switch active"
"0" "button_diamond active"
"1" "left_trackpad active"
"2" "right_trackpad inactive"
"6" "right_trackpad inactive"
"19" "right_trackpad active"
"3" "joystick active"
"4" "left_trigger active"
"5" "right_trigger active"
"23" "gyro inactive"
}
}
"preset"
{
"id" "1"
"name" "Preset_1000001"
"group_source_bindings"
{
"10" "switch active"
"11" "button_diamond active"
"12" "left_trackpad active"
"13" "right_trackpad inactive"
"20" "right_trackpad active"
"14" "joystick active"
"15" "left_trigger active"
"16" "right_trigger active"
}
}
"settings"
{
"left_trackpad_mode" "0"
"right_trackpad_mode" "0"
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,28 @@
The ~/retrodeck/texture_packs/duckstaiton/ represents the /duckstation/textures/ folder in Duckstation.
Note:
Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
Note:
TITLEID is different for every game.
Enable Custom Textures
- Open up Duckstation inside RetroDECK Configurator by pressing Open Emulator - Duckstation.
- Go to Settings -> Advanced -> Tweaks/Hacks
- Enable VRAM Write Texture Replacement and set it to On.
- Preload Texture Replacements and set it to On.
How do I add texture packs?
Requirements: Texture pack files
NOTE: On the Steam Deck this could be easier to do in Desktop Mode.
Texture folder directly
- Extract any texture pack files from compressed .zip or any other format into folders.
- Go into ~/retrodeck/texture_packs/duckstation/. The folders are all named by TITLEID.
- Move textures into the right ~/retrodeck/texture_packs/duckstation/<TITLEID> folder.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/Duckstation%3A-Texture-Packs
The RetroDECK Team

View file

@ -0,0 +1,32 @@
RetroArch - NES - Mesen
The texture_packs/RetroArch-Mesen/ represents /retroarch/system/HdPacks/ folder.
Note:
Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
Enable Texture Packs in the Mesen core for certain games
From the RetroArch Quick Menu
- Go to Core Options -> Enable HD Packs set to On
- Then save the current configuration for that game under Core Options -> Manage Core Options -> Save Game Options
How do I add texture packs that can be used by the Mesen Core?
NOTE: On the Steam Deck this could be easier to do in Desktop Mode.
- All texture packs go into the texture_packs/RetroArch-Mesen/ folder.
- The texture pack have to be extracted from .zip or other compressed format into a folder.
- The name of the folder must be the same name as that of the rom file the texture pack is for.
Example:
You want apply a texture pack to a game called ScaryCastle USA.nes and you have downloaded the ScaryCastle TexturePACK HD.zip.
- Extract the ScaryCastle TexturePACK HD.zip
- Move the extracted ScaryCastle TexturePACK HD folder into texture_packs/RetroArch-Mesen/
- Rename the ScaryCastle TexturePACK HD folder so it has the same name as the rom ScaryCastle USA without the .nes file extension.
- Start up RetroDECK and select the ScaryCastle nes games.
NOTE: On the Steam Deck go into GameMode first, then launch RetroDECK.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mesen%3A-Texture-Packs
The RetroDECK Team

View file

@ -0,0 +1,30 @@
RetroArch - N64 - Mupen64Plus-Next
The directory 'texture_packs/RetroArch-Mupen64Plus/' corresponds to the '/retroarch/system/Mupen64plus/' folder.
Please note that some texture packs may be designed for a specific version or region of the game. Ensure you have the correct ROM and textures for it.
To enable Texture Packs in the Mupen64Plus-Next core for certain games, follow these steps:
1. Open the RetroArch Quick Menu.
2. Navigate to Core Options -> GLideN64.
3. Set 'Use High-Res Textures', 'Cache Textures', 'Use High-Res Full Alpha Channel', and 'Use Hi-Res Storage' to On.
4. Save the current configuration for that game under Core Options -> Manage Core Options -> Save Game Options.
Optionally, you can set 'Use High-Res Texture Cache Compression' to On to compress uncompressed HD Textures into .hts files.
To add texture packs that can be used by the Mupen64Plus-Next Core:
Note: On the Steam Deck, this could be easier to do in Desktop Mode.
1. All texture packs go into the 'texture_packs//RetroArch-Mupen64Plus/hires_texture/' or 'texture_packs/RetroArch-Mupen64Plus/cache/' folder.
2. The texture pack must be extracted from .zip or other compressed format into a folder.
For compressed textures stored in .hts files, place them in the 'texture_packs/RetroArch-Mupen64Plus/cache/' folder.
For uncompressed textures stored in loose folders or files, place them in the 'texture_packs/RetroArch-Mupen64Plus/hires_texture/' folder.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mupen64Plus-Next%3A-Texture-Packs
The RetroDECK Team

View file

@ -0,0 +1,26 @@
PCSX2 - Playstation 2
The directory '~/retrodeck/texture_packs/PCSX2/' corresponds to the '/PCSX2/textures/' folder in PCSX2.
Please note that some texture packs may be designed for a specific version or region of a game. Ensure you have the correct game and textures for it.
Also, keep in mind that 'TITLEID' is different for every game.
To enable Custom Textures, follow these steps:
1. Open up PCSX2 inside RetroDECK Configurator by pressing 'Open Emulator' - 'PCSX2'.
2. Press 'Settings' -> 'Graphics'.
3. Set 'Load Textures' and 'Async Texture Loading' to On.
To add texture packs, you'll need the texture pack files. On the Steam Deck, this could be easier to do in Desktop Mode.
For direct texture folder:
1. Extract any texture pack files from compressed .zip or any other format into folders.
2. Go into '~/retrodeck/texture_packs/PCSX2/'. The folders are all named by 'TITLEID'.
3. Move textures into the correct '~/retrodeck/texture_packs/PCSX2/<TITLEID>' folder.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/PCSX2%3A-Texture-Packs
The RetroDECK Team

View file

@ -0,0 +1,26 @@
PPSSPP - PSP
The directory '~/retrodeck/texture_packs/ppsspp/' corresponds to the '/PSP/TEXTURES/' folder in PPSSPP.
Please note that some texture packs may be designed for a specific version or region of the game. Ensure you have the correct ROM and textures for it.
Also, keep in mind that 'TITLEID' is different for every game.
To enable Custom Textures, follow these steps:
1. Open up PPSSPP inside RetroDECK Configurator by pressing 'Open Emulator' - 'PPSSPP'.
2. Press 'Settings' -> 'Tools' -> 'Developer Tools'.
3. Set 'Replace Textures' to On.
To add texture packs, you'll need the texture pack files. On the Steam Deck, this could be easier to do in Desktop Mode.
For adding textures:
1. Extract any texture pack files from compressed .zip or any other format into folders.
2. Go into '~/retrodeck/texture_packs/ppsspp/'. The folders are all named by 'TITLEID'.
3. Paste the textures into the correct '~/retrodeck/texture_packs/ppsspp/<TITLEID>' folder.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/PPSSPP%3A-Texture-Packs
The RetroDECK Team

View file

@ -0,0 +1,19 @@
There are two ways of adding mods into Citra
From Citra
- Extract any mod from compressed .zip or any other format to folders.
- Open up Citra inside RetroDECK Configurator by pressing Open Emulator - Citra.
- Right click on the game you want to add mods into.
- Click on Open Mods Location.
- Paste the mod files inside that directory, each folder is stored by the TITLLEID of the game.
- Quit Citra
From the mod folder directly
- Extract any mod files from compressed .zip or any other format into folders.
- Go into ~/retrodeck/mods/citra/. The folders are all named by TITLEID.
- Past the mods into the right ~/retrodeck/mods/yuzu/<TITLEID> folder.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/Citra%3A-Mods#citra---3ds
The RetroDECK Team

View file

@ -0,0 +1,16 @@
There is the possibility to provide custom emutlators provided by the user.
At the moment the only one available is Yuzu.
Place your custom Yuzu files (AppImage and such) in the custom/yuzu folder without any other subfolders, like in the example:
retrodeck/customs/yuzu/yuzu*.AppImage
WARNINGS on custom emulators:
- Custom emulators are self managed: means that RetroDECK Team is not supporting nor troubleshooting them.
- Custom emulators could potentially break other included emulators configs: use them at your own risk.
- Remember to make the binary executable, otherwise they won't be launched.
- Hotkeys might not be working if not configured by the users.
Related wiki article can be found here:
---
The RetroDECK Team

View file

@ -0,0 +1,19 @@
Prerequisites
- Open up Dolphin inside RetroDECK Configurator by pressing Open Emulator - Dolphin.
- Press Options -> Graphic Settings
- Enable Graphics Mods and set it to On.
Installation
- Extract any mod files from compressed .zip or any other format into folders.
- Go into mods folders, they contain folders that are all named by GAME_ID. ~/retrodeck/mods/dolphin/.
- Move the mods into the right folder: ~/retrodeck/mods/dolphin/<GAME_ID>
Notes:
- The ~/retrodeck/mods/dolphin/ that represents the /load/GraphicMods folder.
- Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
- GAME_ID is different for every game.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
The RetroDECK Team

View file

@ -0,0 +1,19 @@
Prerequisites
- Open up Primehack inside RetroDECK Configurator by pressing Open Emulator - Primehack.
- Press Options -> Graphic Settings
- Enable Graphics Mods and set it to On.
Installation
- Extract any mod files from compressed .zip or any other format into folders.
- Go into mods folders, they contain folders that are all named by GAME_ID. ~/retrodeck/mods/primehack/.
- Move the mods into the right folder: ~/retrodeck/mods/primehack/<GAME_ID>
Notes:
- The ~/retrodeck/mods/primehack/ that represents the /load/GraphicMods folder.
- Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
- GAME_ID is different for every game.
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
The RetroDECK Team

View file

@ -0,0 +1,25 @@
There are two ways of adding mods into Yuzu
From Yuzu directly
- Extract any mod files from compressed .zip or any other format to folders.
- Open up Yuzu inside RetroDECK Configurator by pressing Open Emulator - Yuzu.
- Right click on the game you want to add mods into.
- Click on Open Mod Data Destination.
- Paste the mod folders inside that directory.
- Right clicking on the game and selecting Properties.
- Enable the mods you want to enable by pressing the checkboxes in the Add-Ons tab and press OK.
- Quit Yuzu
From the mods/yuzu folder
- Extract any mod files from compressed .zip or any other format into folders.
- Go into ~/retrodeck/mods/yuzu/ and file the right folder for the game you want to add mods to. The folders are all named by TITLEID.
- Move those folders into ~/retrodeck/mods/yuzu/<TITLEID>
- Open up Yuzu inside RetroDECK Configurator by pressing Open Emulator - Yuzu.
- Right clicking on the game and selecting Properties.
- Enable the mods you want to enable by pressing the checkboxes in the Add-Ons tab and press OK.
- Quit Yuzu
Related wiki article can be found here:
https://github.com/XargonWan/RetroDECK/wiki/Yuzu%3A-Mods
The RetroDECK Team

View file

@ -0,0 +1,9 @@
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

View file

@ -0,0 +1,4 @@
config_file_format^dolphin
target_file^$dolphinconf
defaults_file^$emuconfigs/dolphin/Dolphin.ini
change^ask_to_exit^ConfirmStop^True^Interface

View file

@ -0,0 +1,10 @@
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

View file

@ -0,0 +1,11 @@
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 <action>^<preset name (as defined in retrodeck.cfg)>^<setting name>^<setting value when enabled>^<setting section in emulator config file, if there is one>
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
OTHER NOTES:
- The name of the presets configuration file for any given system MUST be <system name>_presets.cfg
- The <system name> is whatever name is given to this system in retrodeck.cfg, it is not tied to the actual emulator name.
- The name given to the system in retrodeck.cfg will be translated to a "nice looking" format for user dialogs through the file at emu-configs/defaults/retrodeck/reference_lists/pretty_system_names.cfg but will be used internally as-is

View file

@ -0,0 +1,14 @@
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

View file

@ -0,0 +1,14 @@
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

View file

@ -0,0 +1,14 @@
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

View file

@ -0,0 +1,8 @@
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

View file

@ -0,0 +1,13 @@
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

View file

@ -0,0 +1,8 @@
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

View file

@ -0,0 +1,10 @@
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

View file

@ -0,0 +1,4 @@
config_file_format^ppsspp
target_file^$ppssppconf
defaults_file^$emuconfigs/PCSX2/PCSX2.ini
change^savestate_auto_load^AutoLoadSaveState^2^General

View file

@ -0,0 +1,4 @@
config_file_format^primehack
target_file^$primehackconf
defaults_file^$emuconfigs/primehack/Dolphin.ini
change^ask_to_exit^ConfirmStop^True^Interface

View file

@ -0,0 +1,8 @@
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

View file

@ -0,0 +1,4 @@
input_player1_btn_a = "0"
input_player1_btn_b = "8"
input_player1_btn_x = "1"
input_player1_btn_y = "9"

View file

@ -0,0 +1,4 @@
input_player1_btn_a = "0"
input_player1_btn_b = "8"
input_player1_btn_x = "1"
input_player1_btn_y = "9"

View file

@ -0,0 +1,4 @@
input_player1_btn_a = "0"
input_player1_btn_b = "8"
input_player1_btn_x = "1"
input_player1_btn_y = "9"

View file

@ -0,0 +1,4 @@
input_player1_btn_a = "0"
input_player1_btn_b = "8"
input_player1_btn_x = "1"
input_player1_btn_y = "9"

View file

@ -0,0 +1,4 @@
input_player1_btn_a = "0"
input_player1_btn_b = "8"
input_player1_btn_x = "1"
input_player1_btn_y = "9"

View file

@ -0,0 +1,4 @@
input_player1_btn_a = "0"
input_player1_btn_b = "8"
input_player1_btn_x = "1"
input_player1_btn_y = "9"

View file

@ -0,0 +1,9 @@
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

View file

@ -0,0 +1,9 @@
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

View file

@ -0,0 +1,9 @@
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

View file

@ -0,0 +1,2 @@
false^RPCS3 Firmware Install^Install firmware needed for PS3 emulation^rpcs3_firmware
false^RetroDECK Controller Profile^Install custom RetroDECK controller profile^rd_controller_profile

View file

@ -2,4 +2,20 @@
# FILE NAME^DESTINATION # FILE NAME^DESTINATION
# The destination can be an internal variable name like $roms_folder if needed # The destination can be an internal variable name like $roms_folder if needed
# The FILE name can have spaces in it, but the DESTINATION cannot, even in variable form # The FILE name can have spaces in it, but the DESTINATION cannot, even in variable form
RetroDECK Example Readme.txt^$rdhome
# mods
how-to-install-citra-mods.txt^$mods_folder/Citra
how-to-install-dolphin-mods.txt^$mods_folder/Dolphin
how-to-install-primehack-mods.txt^$mods_folder/Primehack
how-to-install-yuzu-mods.txt^$mods_folder/Yuzu
# textures
how-to-install-Mesen-textures.txt^$texture_packs_folder/RetroArch-Mesen
how-to-install-PPSSPP-textures.txt^$texture_packs_folder/PPSSPP
how-to-install-PCSX2-textures.txt^$texture_packs_folder/PCSX2
how-to-install-Mupen64Plus-textures.txt^$texture_packs_folder/RetroArch-Mupen64Plus/cache
how-to-install-Mupen64Plus-textures.txt^$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture
how-to-install-Duckstation-textures.txt^$texture_packs_folder/Duckstation
# customs
how-to-install-custom-emulators.txt^$rdhome/customs

View file

@ -0,0 +1,2 @@
borders:widescreen
widescreen:borders

View file

@ -0,0 +1,17 @@
citra^Citra (Nintendo 3DS Standalone Emulator)
dolphin^Dolphin (GameCube / Wii Standalone Emulator)
duckstation^Duckstation (Sony Playstation Standalone Emulator)
gb^Nintendo GameBoy
gba^Nintendo GameBoy Advance
gbc^Nintendo GameBoy Color
genesis^Sega Genesis/Master System
gg^Sega GameGear
n64^Nintendo 64
pcsx2^PCSX2 (Sony Playstation 2 Standalone Emulator)
ppsspp^PPSSPP (Sony PSP Standalone Emulator)
primehack^Primehack (Metroid Prime Standalone Emulator)
psx_ra^Sony Playstation (RetroArch Core)
retroarch^RetroArch (Multi-emulator Frontend)
ryujinx^Ryujinx (Nintendo Switch Standalone Emulator)
snes^Nintendo Super Nintendo
yuzu^Yuzu (Nintendo Switch Standalone Emulator)

View file

@ -0,0 +1,71 @@
Credits & The Team
This is the page where we try to introduce the team and thank everyone who have contributed to the project so far.
If you feel you have contributed to the project but lacks mention, please contact us on discord!
The Team
XargonWan
RetroDECK project founder and also one of the founding members of AmberELEC
IceNine451
Creator of the RetroDECK configurator and various awesome features.
Lazorne
Community management/outreach, testing, documentation, feature suggestions and some design.
dottormac
Beta Tester
LX32
Junior code contributor, Beta Tester
Collaborators
Leon Styhre
Maker of EmulationStation Desktop Edition
anthonycaccese
Theme creator for ES-DE and AmberELEC
Additional credits
RavenKilit
Former Beta Tester and AmberELEC contributor
MorGuux
Made the RetroDECK steamdb graphics for the old logo
Pixelguin
Made the new logo and steamdb graphics
teotwaki
Generous cloud hosting sponsor
Niroku / Atari
Helps with community management, is also part of Batocera
Gabeboii
Webmaster
Draco
Former server admiistrator and code consultant
ItzSelenux
Maker of pixelitos
Kenny.nl
The Kenny.nl project provides several free game assets under open licenses.
Special Thanks
We want give special thanks to:
Our Patreons that keeps the build servers running and provide feedback.
All related emulation projects, such as Batocera and AmberELEC where we are taking our inspiration.
All people that have put both time and money into emulation projects.
All the users who help others with support, guidance and good spirit.
All the users who help with testing and reporting issues.
All the community creators who creates various art and assets for the community.
You are the ones that makes this project possible.

View file

@ -18,6 +18,7 @@ sdcard=/run/media/mmcblk0p1
[options] [options]
power_user_warning=true power_user_warning=true
desktop_mode_warning=true desktop_mode_warning=true
low_space_warning=true
update_check=false update_check=false
update_repo=RetroDECK update_repo=RetroDECK
update_ignore= update_ignore=
@ -27,14 +28,54 @@ ask_default_user=true
default_user= default_user=
developer_options=false developer_options=false
[cheevos]
duckstation=false
pcsx2=false
retroarch=false
[cheevos_hardcore]
duckstation=false
pcsx2=false
retroarch=false
[borders] [borders]
snes=false gb=true
genesis=false gba=true
gb=false gbc=true
gba=false genesis=true
gg=true
n64=true
psx_ra=true
snes=true
[widescreen] [widescreen]
snes=false
genesis=false genesis=false
n64=false
psx_ra=false
snes=false
[nintendo_button_layout]
citra=false
gb=false gb=false
gba=false gba=false
gbc=false
n64=false
snes=false
yuzu=false
[savestate_auto_load]
ppsspp=true
retroarch=true
[savestate_auto_save]
duckstation=true
pcsx2=true
retroarch=true
[ask_to_exit]
citra=false
dolphin=false
duckstation=false
pcsx2=false
primehack=false
yuzu=false

View file

@ -63,6 +63,10 @@ enable_accurate_vibrations=false
enable_accurate_vibrations\default=true enable_accurate_vibrations\default=true
enable_ir_sensor=false enable_ir_sensor=false
enable_ir_sensor\default=true enable_ir_sensor\default=true
enable_joycon_driver=true
enable_joycon_driver\default=true
enable_procon_driver=false
enable_procon_driver\default=true
enable_raw_input=false enable_raw_input=false
enable_raw_input\default=true enable_raw_input\default=true
enable_ring_controller=true enable_ring_controller=true
@ -721,6 +725,8 @@ player_9_vibration_enabled=true
player_9_vibration_enabled\default=true player_9_vibration_enabled\default=true
player_9_vibration_strength=100 player_9_vibration_strength=100
player_9_vibration_strength\default=true player_9_vibration_strength\default=true
random_amiibo_id=false
random_amiibo_id\default=true
ring_controller="modifier_scale:0.050000,modifier:toggle$00$1code$00$1engine$0keyboard,right:toggle$00$1code$068$1engine$0keyboard,left:toggle$00$1code$065$1engine$0keyboard,down:toggle$00$1code$00$1engine$0keyboard,up:toggle$00$1code$00$1engine$0keyboard,engine:analog_from_button" ring_controller="modifier_scale:0.050000,modifier:toggle$00$1code$00$1engine$0keyboard,right:toggle$00$1code$068$1engine$0keyboard,left:toggle$00$1code$065$1engine$0keyboard,down:toggle$00$1code$00$1engine$0keyboard,up:toggle$00$1code$00$1engine$0keyboard,engine:analog_from_button"
ring_controller\default=true ring_controller\default=true
tas_enable=false tas_enable=false
@ -755,6 +761,8 @@ use_extended_memory_layout=false
use_extended_memory_layout\default=true use_extended_memory_layout\default=true
use_multi_core=true use_multi_core=true
use_multi_core\default=true use_multi_core\default=true
use_unsafe_extended_memory_layout=false
use_unsafe_extended_memory_layout\default=true
[Cpu] [Cpu]
cpu_accuracy=0 cpu_accuracy=0
@ -775,6 +783,8 @@ cpuopt_fastmem=true
cpuopt_fastmem\default=true cpuopt_fastmem\default=true
cpuopt_fastmem_exclusives=true cpuopt_fastmem_exclusives=true
cpuopt_fastmem_exclusives\default=true cpuopt_fastmem_exclusives\default=true
cpuopt_ignore_memory_aborts=true
cpuopt_ignore_memory_aborts\default=true
cpuopt_misc_ir=true cpuopt_misc_ir=true
cpuopt_misc_ir\default=true cpuopt_misc_ir\default=true
cpuopt_page_tables=true cpuopt_page_tables=true
@ -821,6 +831,8 @@ use_virtual_sd\default=true
[Debugging] [Debugging]
create_crash_dumps=false create_crash_dumps=false
create_crash_dumps\default=true create_crash_dumps\default=true
disable_macro_hle=false
disable_macro_hle\default=true
disable_macro_jit=false disable_macro_jit=false
disable_macro_jit\default=true disable_macro_jit\default=true
dump_exefs=false dump_exefs=false
@ -864,7 +876,7 @@ ip\default=true
ip_ban_list\size=0 ip_ban_list\size=0
max_player=8 max_player=8
max_player\default=true max_player\default=true
nickname= nickname=RetroDECK
nickname\default=true nickname\default=true
port=24872 port=24872
port\default=true port\default=true
@ -885,6 +897,12 @@ anti_aliasing=0
anti_aliasing\default=true anti_aliasing\default=true
aspect_ratio=0 aspect_ratio=0
aspect_ratio\default=true aspect_ratio\default=true
astc_recompression=0
astc_recompression\default=true
async_astc=false
async_astc\default=true
async_presentation=false
async_presentation\default=true
backend=1 backend=1
backend\default=true backend\default=true
bg_blue=0 bg_blue=0
@ -897,8 +915,12 @@ debug=false
debug\default=true debug\default=true
disable_shader_loop_safety_checks=false disable_shader_loop_safety_checks=false
disable_shader_loop_safety_checks\default=true disable_shader_loop_safety_checks\default=true
fps_cap=1000 enable_compute_pipelines=false
fps_cap\default=true enable_compute_pipelines\default=true
force_max_clock=false
force_max_clock\default=true
fsr_sharpening_slider=25
fsr_sharpening_slider\default=true
fullscreen_mode=1 fullscreen_mode=1
fullscreen_mode\default=true fullscreen_mode\default=true
gpu_accuracy=1 gpu_accuracy=1
@ -929,15 +951,19 @@ use_fast_gpu_time=true
use_fast_gpu_time\default=true use_fast_gpu_time\default=true
use_pessimistic_flushes=false use_pessimistic_flushes=false
use_pessimistic_flushes\default=true use_pessimistic_flushes\default=true
use_speed_limit=true use_reactive_flushing=true
use_speed_limit\default=true use_reactive_flushing\default=true
use_vsync=true use_video_framerate=false
use_video_framerate\default=true
use_vsync=2
use_vsync\default=true use_vsync\default=true
use_vulkan_driver_pipeline_cache=true
use_vulkan_driver_pipeline_cache\default=true
vulkan_device=0 vulkan_device=0
vulkan_device\default=true vulkan_device\default=true
[Services] [Services]
network_interface=None network_interface=wlan0
network_interface\default=false network_interface\default=false
[System] [System]
@ -947,6 +973,7 @@ custom_rtc=0
custom_rtc\default=true custom_rtc\default=true
custom_rtc_enabled=false custom_rtc_enabled=false
custom_rtc_enabled\default=true custom_rtc_enabled\default=true
device_name=RetroDECK
language_index=1 language_index=1
language_index\default=true language_index\default=true
region_index=1 region_index=1
@ -1011,139 +1038,183 @@ Paths\romsPath=
Paths\symbolsPath= Paths\symbolsPath=
Screenshots\enable_screenshot_save_as=true Screenshots\enable_screenshot_save_as=true
Screenshots\enable_screenshot_save_as\default=true Screenshots\enable_screenshot_save_as\default=true
Screenshots\screenshot_path=/home/deck/.var/app/org.yuzu_emu.yuzu/data/yuzu/screenshots Screenshots\screenshot_path=RETRODECKHOMEDIR/screenshots
Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context=1 Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context=1
Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context\default=true Shortcuts\Main%20Window\Audio%20Mute\Unmute\Context\default=true
Shortcuts\Main%20Window\Audio%20Mute\Unmute\Controller_KeySeq=Home+Dpad_Right Shortcuts\Main%20Window\Audio%20Mute\Unmute\Controller_KeySeq=Home+Dpad_Right
Shortcuts\Main%20Window\Audio%20Mute\Unmute\Controller_KeySeq\default=true Shortcuts\Main%20Window\Audio%20Mute\Unmute\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Audio%20Mute\Unmute\KeySeq=Ctrl+M Shortcuts\Main%20Window\Audio%20Mute\Unmute\KeySeq=Ctrl+M
Shortcuts\Main%20Window\Audio%20Mute\Unmute\KeySeq\default=true Shortcuts\Main%20Window\Audio%20Mute\Unmute\KeySeq\default=true
Shortcuts\Main%20Window\Audio%20Mute\Unmute\Repeat=false
Shortcuts\Main%20Window\Audio%20Mute\Unmute\Repeat\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Down\Context=2 Shortcuts\Main%20Window\Audio%20Volume%20Down\Context=2
Shortcuts\Main%20Window\Audio%20Volume%20Down\Context\default=true Shortcuts\Main%20Window\Audio%20Volume%20Down\Context\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Down\Controller_KeySeq=Home+Dpad_Down Shortcuts\Main%20Window\Audio%20Volume%20Down\Controller_KeySeq=Home+Dpad_Down
Shortcuts\Main%20Window\Audio%20Volume%20Down\Controller_KeySeq\default=true Shortcuts\Main%20Window\Audio%20Volume%20Down\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Down\KeySeq=- Shortcuts\Main%20Window\Audio%20Volume%20Down\KeySeq=-
Shortcuts\Main%20Window\Audio%20Volume%20Down\KeySeq\default=true Shortcuts\Main%20Window\Audio%20Volume%20Down\KeySeq\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Down\Repeat=true
Shortcuts\Main%20Window\Audio%20Volume%20Down\Repeat\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Up\Context=2 Shortcuts\Main%20Window\Audio%20Volume%20Up\Context=2
Shortcuts\Main%20Window\Audio%20Volume%20Up\Context\default=true Shortcuts\Main%20Window\Audio%20Volume%20Up\Context\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Up\Controller_KeySeq=Home+Dpad_Up Shortcuts\Main%20Window\Audio%20Volume%20Up\Controller_KeySeq=Home+Dpad_Up
Shortcuts\Main%20Window\Audio%20Volume%20Up\Controller_KeySeq\default=true Shortcuts\Main%20Window\Audio%20Volume%20Up\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Up\KeySeq="=" Shortcuts\Main%20Window\Audio%20Volume%20Up\KeySeq="="
Shortcuts\Main%20Window\Audio%20Volume%20Up\KeySeq\default=true Shortcuts\Main%20Window\Audio%20Volume%20Up\KeySeq\default=true
Shortcuts\Main%20Window\Audio%20Volume%20Up\Repeat=true
Shortcuts\Main%20Window\Audio%20Volume%20Up\Repeat\default=true
Shortcuts\Main%20Window\Capture%20Screenshot\Context=3 Shortcuts\Main%20Window\Capture%20Screenshot\Context=3
Shortcuts\Main%20Window\Capture%20Screenshot\Context\default=true Shortcuts\Main%20Window\Capture%20Screenshot\Context\default=true
Shortcuts\Main%20Window\Capture%20Screenshot\Controller_KeySeq=Screenshot Shortcuts\Main%20Window\Capture%20Screenshot\Controller_KeySeq=Screenshot
Shortcuts\Main%20Window\Capture%20Screenshot\Controller_KeySeq\default=true Shortcuts\Main%20Window\Capture%20Screenshot\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq=Ctrl+P Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq=Ctrl+P
Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq\default=true Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq\default=true
Shortcuts\Main%20Window\Capture%20Screenshot\Repeat=false
Shortcuts\Main%20Window\Capture%20Screenshot\Repeat\default=true
Shortcuts\Main%20Window\Change%20Adapting%20Filter\Context=2 Shortcuts\Main%20Window\Change%20Adapting%20Filter\Context=2
Shortcuts\Main%20Window\Change%20Adapting%20Filter\Context\default=true Shortcuts\Main%20Window\Change%20Adapting%20Filter\Context\default=true
Shortcuts\Main%20Window\Change%20Adapting%20Filter\Controller_KeySeq=Home+L Shortcuts\Main%20Window\Change%20Adapting%20Filter\Controller_KeySeq=Home+L
Shortcuts\Main%20Window\Change%20Adapting%20Filter\Controller_KeySeq\default=true Shortcuts\Main%20Window\Change%20Adapting%20Filter\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Change%20Adapting%20Filter\KeySeq=F8 Shortcuts\Main%20Window\Change%20Adapting%20Filter\KeySeq=F8
Shortcuts\Main%20Window\Change%20Adapting%20Filter\KeySeq\default=true Shortcuts\Main%20Window\Change%20Adapting%20Filter\KeySeq\default=true
Shortcuts\Main%20Window\Change%20Adapting%20Filter\Repeat=false
Shortcuts\Main%20Window\Change%20Adapting%20Filter\Repeat\default=true
Shortcuts\Main%20Window\Change%20Docked%20Mode\Context=2 Shortcuts\Main%20Window\Change%20Docked%20Mode\Context=2
Shortcuts\Main%20Window\Change%20Docked%20Mode\Context\default=true Shortcuts\Main%20Window\Change%20Docked%20Mode\Context\default=true
Shortcuts\Main%20Window\Change%20Docked%20Mode\Controller_KeySeq=Home+X Shortcuts\Main%20Window\Change%20Docked%20Mode\Controller_KeySeq=Home+X
Shortcuts\Main%20Window\Change%20Docked%20Mode\Controller_KeySeq\default=true Shortcuts\Main%20Window\Change%20Docked%20Mode\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Change%20Docked%20Mode\KeySeq=F10 Shortcuts\Main%20Window\Change%20Docked%20Mode\KeySeq=F10
Shortcuts\Main%20Window\Change%20Docked%20Mode\KeySeq\default=true Shortcuts\Main%20Window\Change%20Docked%20Mode\KeySeq\default=true
Shortcuts\Main%20Window\Change%20Docked%20Mode\Repeat=false
Shortcuts\Main%20Window\Change%20Docked%20Mode\Repeat\default=true
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Context=2 Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Context=2
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Context\default=true Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Context\default=true
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Controller_KeySeq=Home+R Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Controller_KeySeq=Home+R
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Controller_KeySeq\default=true Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\KeySeq=F9 Shortcuts\Main%20Window\Change%20GPU%20Accuracy\KeySeq=F9
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\KeySeq\default=true Shortcuts\Main%20Window\Change%20GPU%20Accuracy\KeySeq\default=true
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Repeat=false
Shortcuts\Main%20Window\Change%20GPU%20Accuracy\Repeat\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context=1 Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context=1
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Controller_KeySeq=Home+Plus Shortcuts\Main%20Window\Continue\Pause%20Emulation\Controller_KeySeq=Home+Plus
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Controller_KeySeq\default=true Shortcuts\Main%20Window\Continue\Pause%20Emulation\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=F4 Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=F4
Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=true Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Repeat=false
Shortcuts\Main%20Window\Continue\Pause%20Emulation\Repeat\default=true
Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1 Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1
Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true
Shortcuts\Main%20Window\Exit%20Fullscreen\Controller_KeySeq= Shortcuts\Main%20Window\Exit%20Fullscreen\Controller_KeySeq=
Shortcuts\Main%20Window\Exit%20Fullscreen\Controller_KeySeq\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=Esc Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=
Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=true Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=false
Shortcuts\Main%20Window\Exit%20Fullscreen\Repeat=false
Shortcuts\Main%20Window\Exit%20Fullscreen\Repeat\default=true
Shortcuts\Main%20Window\Exit%20yuzu\Context=1 Shortcuts\Main%20Window\Exit%20yuzu\Context=1
Shortcuts\Main%20Window\Exit%20yuzu\Context\default=true Shortcuts\Main%20Window\Exit%20yuzu\Context\default=true
Shortcuts\Main%20Window\Exit%20yuzu\Controller_KeySeq=Home+Minus Shortcuts\Main%20Window\Exit%20yuzu\Controller_KeySeq=Home+Minus
Shortcuts\Main%20Window\Exit%20yuzu\Controller_KeySeq\default=true Shortcuts\Main%20Window\Exit%20yuzu\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Exit%20yuzu\KeySeq=Ctrl+Q Shortcuts\Main%20Window\Exit%20yuzu\KeySeq=Ctrl+Q
Shortcuts\Main%20Window\Exit%20yuzu\KeySeq\default=true Shortcuts\Main%20Window\Exit%20yuzu\KeySeq\default=true
Shortcuts\Main%20Window\Exit%20yuzu\Repeat=false
Shortcuts\Main%20Window\Exit%20yuzu\Repeat\default=true
Shortcuts\Main%20Window\Fullscreen\Context=1 Shortcuts\Main%20Window\Fullscreen\Context=1
Shortcuts\Main%20Window\Fullscreen\Context\default=true Shortcuts\Main%20Window\Fullscreen\Context\default=true
Shortcuts\Main%20Window\Fullscreen\Controller_KeySeq=Home+B Shortcuts\Main%20Window\Fullscreen\Controller_KeySeq=Home+B
Shortcuts\Main%20Window\Fullscreen\Controller_KeySeq\default=true Shortcuts\Main%20Window\Fullscreen\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Fullscreen\KeySeq=F11 Shortcuts\Main%20Window\Fullscreen\KeySeq=F11
Shortcuts\Main%20Window\Fullscreen\KeySeq\default=true Shortcuts\Main%20Window\Fullscreen\KeySeq\default=true
Shortcuts\Main%20Window\Fullscreen\Repeat=false
Shortcuts\Main%20Window\Fullscreen\Repeat\default=true
Shortcuts\Main%20Window\Load%20File\Context=3 Shortcuts\Main%20Window\Load%20File\Context=3
Shortcuts\Main%20Window\Load%20File\Context\default=true Shortcuts\Main%20Window\Load%20File\Context\default=true
Shortcuts\Main%20Window\Load%20File\Controller_KeySeq= Shortcuts\Main%20Window\Load%20File\Controller_KeySeq=
Shortcuts\Main%20Window\Load%20File\Controller_KeySeq\default=true Shortcuts\Main%20Window\Load%20File\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Load%20File\KeySeq=Ctrl+O Shortcuts\Main%20Window\Load%20File\KeySeq=Ctrl+O
Shortcuts\Main%20Window\Load%20File\KeySeq\default=true Shortcuts\Main%20Window\Load%20File\KeySeq\default=true
Shortcuts\Main%20Window\Load%20File\Repeat=false
Shortcuts\Main%20Window\Load%20File\Repeat\default=true
Shortcuts\Main%20Window\Load\Remove%20Amiibo\Context=3 Shortcuts\Main%20Window\Load\Remove%20Amiibo\Context=3
Shortcuts\Main%20Window\Load\Remove%20Amiibo\Context\default=true Shortcuts\Main%20Window\Load\Remove%20Amiibo\Context\default=true
Shortcuts\Main%20Window\Load\Remove%20Amiibo\Controller_KeySeq=Home+A Shortcuts\Main%20Window\Load\Remove%20Amiibo\Controller_KeySeq=Home+A
Shortcuts\Main%20Window\Load\Remove%20Amiibo\Controller_KeySeq\default=true Shortcuts\Main%20Window\Load\Remove%20Amiibo\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Load\Remove%20Amiibo\KeySeq=F2 Shortcuts\Main%20Window\Load\Remove%20Amiibo\KeySeq=F2
Shortcuts\Main%20Window\Load\Remove%20Amiibo\KeySeq\default=true Shortcuts\Main%20Window\Load\Remove%20Amiibo\KeySeq\default=true
Shortcuts\Main%20Window\Load\Remove%20Amiibo\Repeat=false
Shortcuts\Main%20Window\Load\Remove%20Amiibo\Repeat\default=true
Shortcuts\Main%20Window\Restart%20Emulation\Context=1 Shortcuts\Main%20Window\Restart%20Emulation\Context=1
Shortcuts\Main%20Window\Restart%20Emulation\Context\default=true Shortcuts\Main%20Window\Restart%20Emulation\Context\default=true
Shortcuts\Main%20Window\Restart%20Emulation\Controller_KeySeq= Shortcuts\Main%20Window\Restart%20Emulation\Controller_KeySeq=
Shortcuts\Main%20Window\Restart%20Emulation\Controller_KeySeq\default=true Shortcuts\Main%20Window\Restart%20Emulation\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Restart%20Emulation\KeySeq=F6 Shortcuts\Main%20Window\Restart%20Emulation\KeySeq=F6
Shortcuts\Main%20Window\Restart%20Emulation\KeySeq\default=true Shortcuts\Main%20Window\Restart%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Restart%20Emulation\Repeat=false
Shortcuts\Main%20Window\Restart%20Emulation\Repeat\default=true
Shortcuts\Main%20Window\Stop%20Emulation\Context=1 Shortcuts\Main%20Window\Stop%20Emulation\Context=1
Shortcuts\Main%20Window\Stop%20Emulation\Context\default=true Shortcuts\Main%20Window\Stop%20Emulation\Context\default=true
Shortcuts\Main%20Window\Stop%20Emulation\Controller_KeySeq= Shortcuts\Main%20Window\Stop%20Emulation\Controller_KeySeq=
Shortcuts\Main%20Window\Stop%20Emulation\Controller_KeySeq\default=true Shortcuts\Main%20Window\Stop%20Emulation\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Stop%20Emulation\KeySeq=F5 Shortcuts\Main%20Window\Stop%20Emulation\KeySeq=F5
Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=true Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=true
Shortcuts\Main%20Window\Stop%20Emulation\Repeat=false
Shortcuts\Main%20Window\Stop%20Emulation\Repeat\default=true
Shortcuts\Main%20Window\TAS%20Record\Context=2 Shortcuts\Main%20Window\TAS%20Record\Context=2
Shortcuts\Main%20Window\TAS%20Record\Context\default=true Shortcuts\Main%20Window\TAS%20Record\Context\default=true
Shortcuts\Main%20Window\TAS%20Record\Controller_KeySeq= Shortcuts\Main%20Window\TAS%20Record\Controller_KeySeq=
Shortcuts\Main%20Window\TAS%20Record\Controller_KeySeq\default=true Shortcuts\Main%20Window\TAS%20Record\Controller_KeySeq\default=true
Shortcuts\Main%20Window\TAS%20Record\KeySeq=Ctrl+F7 Shortcuts\Main%20Window\TAS%20Record\KeySeq=Ctrl+F7
Shortcuts\Main%20Window\TAS%20Record\KeySeq\default=true Shortcuts\Main%20Window\TAS%20Record\KeySeq\default=true
Shortcuts\Main%20Window\TAS%20Record\Repeat=false
Shortcuts\Main%20Window\TAS%20Record\Repeat\default=true
Shortcuts\Main%20Window\TAS%20Reset\Context=2 Shortcuts\Main%20Window\TAS%20Reset\Context=2
Shortcuts\Main%20Window\TAS%20Reset\Context\default=true Shortcuts\Main%20Window\TAS%20Reset\Context\default=true
Shortcuts\Main%20Window\TAS%20Reset\Controller_KeySeq= Shortcuts\Main%20Window\TAS%20Reset\Controller_KeySeq=
Shortcuts\Main%20Window\TAS%20Reset\Controller_KeySeq\default=true Shortcuts\Main%20Window\TAS%20Reset\Controller_KeySeq\default=true
Shortcuts\Main%20Window\TAS%20Reset\KeySeq=Ctrl+F6 Shortcuts\Main%20Window\TAS%20Reset\KeySeq=Ctrl+F6
Shortcuts\Main%20Window\TAS%20Reset\KeySeq\default=true Shortcuts\Main%20Window\TAS%20Reset\KeySeq\default=true
Shortcuts\Main%20Window\TAS%20Reset\Repeat=false
Shortcuts\Main%20Window\TAS%20Reset\Repeat\default=true
Shortcuts\Main%20Window\TAS%20Start\Stop\Context=2 Shortcuts\Main%20Window\TAS%20Start\Stop\Context=2
Shortcuts\Main%20Window\TAS%20Start\Stop\Context\default=true Shortcuts\Main%20Window\TAS%20Start\Stop\Context\default=true
Shortcuts\Main%20Window\TAS%20Start\Stop\Controller_KeySeq= Shortcuts\Main%20Window\TAS%20Start\Stop\Controller_KeySeq=
Shortcuts\Main%20Window\TAS%20Start\Stop\Controller_KeySeq\default=true Shortcuts\Main%20Window\TAS%20Start\Stop\Controller_KeySeq\default=true
Shortcuts\Main%20Window\TAS%20Start\Stop\KeySeq=Ctrl+F5 Shortcuts\Main%20Window\TAS%20Start\Stop\KeySeq=Ctrl+F5
Shortcuts\Main%20Window\TAS%20Start\Stop\KeySeq\default=true Shortcuts\Main%20Window\TAS%20Start\Stop\KeySeq\default=true
Shortcuts\Main%20Window\TAS%20Start\Stop\Repeat=false
Shortcuts\Main%20Window\TAS%20Start\Stop\Repeat\default=true
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context=1 Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context=1
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context\default=true Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context\default=true
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Controller_KeySeq= Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Controller_KeySeq=
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Controller_KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq=Ctrl+F Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq=Ctrl+F
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Repeat=false
Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Repeat\default=true
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Context=2 Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Context=2
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Context\default=true Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Context\default=true
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Controller_KeySeq=Home+Y Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Controller_KeySeq=Home+Y
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Controller_KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\KeySeq=Ctrl+U Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\KeySeq=Ctrl+U
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Repeat=false
Shortcuts\Main%20Window\Toggle%20Framerate%20Limit\Repeat\default=true
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Context=2 Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Context=2
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Context\default=true Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Context\default=true
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Controller_KeySeq= Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Controller_KeySeq=
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Controller_KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\KeySeq=Ctrl+F9 Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\KeySeq=Ctrl+F9
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Repeat=false
Shortcuts\Main%20Window\Toggle%20Mouse%20Panning\Repeat\default=true
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1 Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=true Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=true
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Controller_KeySeq= Shortcuts\Main%20Window\Toggle%20Status%20Bar\Controller_KeySeq=
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Controller_KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Status%20Bar\Controller_KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq=Ctrl+S Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq=Ctrl+S
Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq\default=true Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq\default=true
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Repeat=false
Shortcuts\Main%20Window\Toggle%20Status%20Bar\Repeat\default=true
UIGameList\cache_game_list=true UIGameList\cache_game_list=true
UIGameList\cache_game_list\default=true UIGameList\cache_game_list\default=true
UIGameList\favorites\size=0 UIGameList\favorites\size=0

View file

@ -20,6 +20,8 @@ AudioStretchMaxLatency = 80
DPL2Decoder = False DPL2Decoder = False
DPL2Quality = 2 DPL2Quality = 2
DSPHLE = True DSPHLE = True
WiiSDCardAllowWrites = True
WiiSDCardEnableFolderSync = False
[Display] [Display]
Fullscreen = True Fullscreen = True
DisableScreenSaver = True DisableScreenSaver = True
@ -49,7 +51,7 @@ DSPThread = True
Backend = Pulse Backend = Pulse
EnableJIT = False EnableJIT = False
[Interface] [Interface]
ConfirmStop = True ConfirmStop = False
CursorVisibility = 0 CursorVisibility = 0
OnScreenDisplayMessages = True OnScreenDisplayMessages = True
PauseOnFocusLost = True PauseOnFocusLost = True

View file

@ -4,8 +4,7 @@ General/Change Disc = @(Ctrl+D)
General/Toggle Pause = @(Ctrl+P) General/Toggle Pause = @(Ctrl+P)
General/Reset = @(Ctrl+R) General/Reset = @(Ctrl+R)
General/Take Screenshot = @(Ctrl+X) General/Take Screenshot = @(Ctrl+X)
General/Exit = @(Ctrl+Escape) General/Exit = @(Ctrl+Q)
General/Control NetPlay Golf Mode = @(Alt+G)
Emulation Speed/Decrease Emulation Speed = @(Ctrl+`2`) Emulation Speed/Decrease Emulation Speed = @(Ctrl+`2`)
Emulation Speed/Increase Emulation Speed = @(Ctrl+`1`) Emulation Speed/Increase Emulation Speed = @(Ctrl+`1`)
Emulation Speed/Disable Emulation Speed Limit = @(Ctrl+`0`) Emulation Speed/Disable Emulation Speed Limit = @(Ctrl+`0`)
@ -19,4 +18,7 @@ Load State/Load from Selected Slot = @(Ctrl+A)
Other State Hotkeys/Undo Load State = @(Ctrl+`8`) Other State Hotkeys/Undo Load State = @(Ctrl+`8`)
Other State Hotkeys/Undo Save State = @(Ctrl+`9`) Other State Hotkeys/Undo Save State = @(Ctrl+`9`)
Other State Hotkeys/Increase Selected State Slot = @(Ctrl+K) Other State Hotkeys/Increase Selected State Slot = @(Ctrl+K)
Other State Hotkeys/Decrease Selected State Slot = @(Ctrl+J) 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)

View file

@ -0,0 +1,90 @@
[Wiimote1]
Device = evdev/0/Microsoft X-Box 360 pad 0
Tilt/Modifier/Range = 50.0
Nunchuk/Stick/Modifier/Range = 50.0
Nunchuk/Tilt/Modifier/Range = 50.0
Classic/Left Stick/Modifier/Range = 50.0
Classic/Right Stick/Modifier/Range = 50.0
Guitar/Stick/Modifier/Range = 50.0
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/B = EAST
Buttons/1 = WEST
Buttons/2 = NORTH
Buttons/- = SELECT
Buttons/+ = START
Buttons/Home = THUMBR
D-Pad/Up = `Axis 7-`
D-Pad/Down = `Axis 7+`
D-Pad/Left = `Axis 6-`
D-Pad/Right = `Axis 6+`
Extension = Nunchuk
Rumble/Motor = Strong
Nunchuk/Stick/Up = `Axis 1-`
Nunchuk/Stick/Down = `Axis 1+`
Nunchuk/Stick/Left = `Axis 0-`
Nunchuk/Stick/Right = `Axis 0+`
Nunchuk/Buttons/C = TL
Nunchuk/Buttons/Z = `Full Axis 2+`
IR/Auto-Hide = True
Hotkeys/Sideways Toggle = `XInput2/0/Virtual core pointer:Alt`&`XInput2/0/Virtual core pointer:X`
Hotkeys/Upright Toggle = `XInput2/0/Virtual core pointer:Alt_L`&`XInput2/0/Virtual core pointer:Z`
Source = 1
IR/Up = `XInput2/0/Virtual core pointer:Cursor Y-`
IR/Down = `XInput2/0/Virtual core pointer:Cursor Y+`
IR/Left = `XInput2/0/Virtual core pointer:Cursor X-`
IR/Right = `XInput2/0/Virtual core pointer:Cursor X+`
Shake/X = `Full Axis 5+`
Shake/Y = `Full Axis 5+`
Shake/Z = `Full Axis 5+`
[Wiimote2]
Device = XInput2/0/Virtual core pointer
Tilt/Modifier/Range = 50.0
Nunchuk/Stick/Modifier/Range = 50.0
Nunchuk/Tilt/Modifier/Range = 50.0
Classic/Left Stick/Modifier/Range = 50.0
Classic/Right Stick/Modifier/Range = 50.0
Guitar/Stick/Modifier/Range = 50.0
Drums/Stick/Modifier/Range = 50.0
Turntable/Stick/Modifier/Range = 50.0
uDraw/Stylus/Modifier/Range = 50.0
Drawsome/Stylus/Modifier/Range = 50.0
[Wiimote3]
Device = XInput2/0/Virtual core pointer
Tilt/Modifier/Range = 50.0
Nunchuk/Stick/Modifier/Range = 50.0
Nunchuk/Tilt/Modifier/Range = 50.0
Classic/Left Stick/Modifier/Range = 50.0
Classic/Right Stick/Modifier/Range = 50.0
Guitar/Stick/Modifier/Range = 50.0
Drums/Stick/Modifier/Range = 50.0
Turntable/Stick/Modifier/Range = 50.0
uDraw/Stylus/Modifier/Range = 50.0
Drawsome/Stylus/Modifier/Range = 50.0
[Wiimote4]
Device = XInput2/0/Virtual core pointer
Tilt/Modifier/Range = 50.0
Nunchuk/Stick/Modifier/Range = 50.0
Nunchuk/Tilt/Modifier/Range = 50.0
Classic/Left Stick/Modifier/Range = 50.0
Classic/Right Stick/Modifier/Range = 50.0
Guitar/Stick/Modifier/Range = 50.0
Drums/Stick/Modifier/Range = 50.0
Turntable/Stick/Modifier/Range = 50.0
uDraw/Stylus/Modifier/Range = 50.0
Drawsome/Stylus/Modifier/Range = 50.0
[BalanceBoard]
Device = XInput2/0/Virtual core pointer
Tilt/Modifier/Range = 50.0
Nunchuk/Stick/Modifier/Range = 50.0
Nunchuk/Tilt/Modifier/Range = 50.0
Classic/Left Stick/Modifier/Range = 50.0
Classic/Right Stick/Modifier/Range = 50.0
Guitar/Stick/Modifier/Range = 50.0
Drums/Stick/Modifier/Range = 50.0
Turntable/Stick/Modifier/Range = 50.0
uDraw/Stylus/Modifier/Range = 50.0
Drawsome/Stylus/Modifier/Range = 50.0

View file

@ -10,8 +10,8 @@ StartPaused = false
StartFullscreen = false StartFullscreen = false
PauseOnFocusLoss = true PauseOnFocusLoss = true
PauseOnMenu = true PauseOnMenu = true
SaveStateOnExit = true SaveStateOnExit = false
ConfirmPowerOff = true ConfirmPowerOff = false
LoadDevicesFromSaveStates = true LoadDevicesFromSaveStates = true
ApplyGameSettings = true ApplyGameSettings = true
AutoLoadCheats = true AutoLoadCheats = true
@ -92,7 +92,7 @@ ShowEnhancements = false
Fullscreen = false Fullscreen = false
VSync = false VSync = false
DisplayAllFrames = false DisplayAllFrames = false
PostProcessChain = PostProcessChain =
MaxFPS = 0.000000 MaxFPS = 0.000000
InternalResolutionScreenshots = false InternalResolutionScreenshots = false
@ -119,9 +119,9 @@ DumpOnBoot = false
[BIOS] [BIOS]
SearchDirectory = RETRODECKHOMEDIR/bios SearchDirectory = RETRODECKHOMEDIR/bios
PathNTSCU = PathNTSCU =
PathNTSCJ = PathNTSCJ =
PathPAL = PathPAL =
PatchTTYEnable = false PatchTTYEnable = false
PatchFastBoot = false PatchFastBoot = false
@ -182,9 +182,9 @@ Type = None
Card1Type = PerGameTitle Card1Type = PerGameTitle
Card2Type = None Card2Type = None
UsePlaylistTitle = true UsePlaylistTitle = true
Card1Path = /var/data/duckstation/memcards/shared_card_1.mcd Card1Path = RETRODECKHOMEDIR/saves/psx/duckstation/memcards/shared_card_1.mcd
Card2Path = /var/data/duckstation/memcards/shared_card_2.mcd Card2Path = RETRODECKHOMEDIR/saves/psx/duckstation/memcards/shared_card_2.mcd
Directory = /var/data/duckstation/memcards Directory = RETRODECKHOMEDIR/saves/psx/duckstation/memcards
[ControllerPorts] [ControllerPorts]
@ -193,7 +193,7 @@ MultitapMode = Disabled
[Logging] [Logging]
LogLevel = Info LogLevel = Info
LogFilter = LogFilter =
LogToConsole = true LogToConsole = true
LogToDebug = false LogToDebug = false
LogToWindow = false LogToWindow = false
@ -220,34 +220,44 @@ GPUMaxRunAhead = 128
[Hotkeys] [Hotkeys]
OpenQuickMenu = Keyboard/Control+M OpenQuickMenu = Keyboard/Control & Keyboard/M
FastForward = Keyboard/Control+Keypad+Plus FastForward = Keyboard/Control & Keyboard/Plus
ToggleTurbo = Keyboard/Control+T ToggleTurbo = Keyboard/Control & Keyboard/T
ToggleFullscreen = Keyboard/Control+Return ToggleFullscreen = Keyboard/Control & Keyboard/Return
TogglePause = Keyboard/Control+P TogglePause = Keyboard/Control & Keyboard/P
Screenshot = Keyboard/Control+X Screenshot = Keyboard/Control & Keyboard/X
Reset = Keyboard/Control+R Reset = Keyboard/Control & Keyboard/R
ChangeDisc = Keyboard/Control+D ChangeDisc = Keyboard/Control & Keyboard/D
Rewind = Keyboard/Control+Keypad+Minus Rewind = Keyboard/Control & Keyboard/Minus
ToggleCheats = Keyboard/Control+C ToggleCheats = Keyboard/Control & Keyboard/C
IncreaseEmulationSpeed = Keyboard/Control+1 IncreaseEmulationSpeed = Keyboard/Control & Keyboard/1
DecreaseEmulationSpeed = Keyboard/Control+2 DecreaseEmulationSpeed = Keyboard/Control & Keyboard/2
ResetEmulationSpeed = Keyboard/Control+3 ResetEmulationSpeed = Keyboard/Control & Keyboard/3
IncreaseResolutionScale = Keyboard/Control+U IncreaseResolutionScale = Keyboard/Control & Keyboard/U
DecreaseResolutionScale = Keyboard/Control+Y DecreaseResolutionScale = Keyboard/Control & Keyboard/Y
ToggleWidescreen = Keyboard/Control+W ToggleWidescreen = Keyboard/Control & Keyboard/W
LoadSelectedSaveState = Keyboard/Control+A LoadSelectedSaveState = Keyboard/Control & Keyboard/A
SaveSelectedSaveState = Keyboard/Control+S SaveSelectedSaveState = Keyboard/Control & Keyboard/S
SelectPreviousSaveStateSlot = Keyboard/Control+J SelectPreviousSaveStateSlot = Keyboard/Control & Keyboard/J
SelectNextSaveStateSlot = Keyboard/Control+K SelectNextSaveStateSlot = Keyboard/Control & Keyboard/K
UndoLoadState = Keyboard/Control+9 PowerOff = Keyboard/Control & Keyboard/Q
UndoLoadState = Keyboard/Control & Keyboard/9
[Cheevos] [Cheevos]
Enabled = true Enabled = false
TestMode = false TestMode = false
UnofficialTestMode = false UnofficialTestMode = false
UseFirstDiscFromPlaylist = true UseFirstDiscFromPlaylist = true
RichPresence = true
ChallengeMode = false
Leaderboards = true
Notifications = true
SoundEffects = true
PrimedIndicators = true
Username =
Token =
LoginTimestamp =
[UI] [UI]
@ -256,4 +266,4 @@ MainWindowState = AAAA/wAAAAD9AAAAAAAAAyAAAAI9AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAg
[GameList] [GameList]
RecursivePaths = RETRODECKHOMEDIR/roms/psx RecursivePaths = RETRODECKHOMEDIR/roms/psx

View file

@ -0,0 +1,53 @@
<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
<system name="default">
<input>
<port type="P1_JOYSTICK_UP">
<newseq type="standard">
JOYCODE_1_HAT1UP
</newseq>
</port>
<port type="P1_SELECT">
<newseq type="standard">
JOYCODE_1_SELECT
</newseq>
</port>
<port type="UI_MENU">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_M
</newseq>
</port>
<port type="UI_PAUSE">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_P
</newseq>
</port>
<port type="UI_REWIND_SINGLE">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_MINUSPAD
</newseq>
</port>
<port type="UI_SAVE_STATE">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_S
</newseq>
</port>
<port type="UI_LOAD_STATE">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_A
</newseq>
</port>
<port type="UI_FAST_FORWARD">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_PLUSPAD
</newseq>
</port>
<port type="UI_SNAPSHOT">
<newseq type="standard">
KEYCODE_LCONTROL KEYCODE_X
</newseq>
</port>
</input>
</system>
</mameconfig>

411
emu-configs/mame/mame.ini Normal file
View file

@ -0,0 +1,411 @@
#
# CORE CONFIGURATION OPTIONS
#
readconfig 1
writeconfig 0
#
# CORE SEARCH PATH OPTIONS
#
homepath /var/config/mame
rompath /home/deck/retrodeck/roms/arcade
hashpath /app/share/mame/hash
samplepath /app/share/mame/samples
artpath $HOME/retrodeck/downloaded_media/arcade/screenshots/
ctrlrpath /app/share/mame/ctrlr
inipath /var/config/mame
fontpath /app/bin/
cheatpath /app/share/mame/cheat
crosshairpath /app/share/mame/crosshair
pluginspath /app/share/mame/plugins
languagepath /app/share/mame/language
swpath /app/share/mame/software
#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory /var/config/mame/cfg
nvram_directory /var/config/mame/nvram
input_directory /var/config/mame/inp
state_directory /var/config/mame/sta
snapshot_directory RETRODECKHOMEDIR/screenshots
diff_directory /var/config/mame/diff
comment_directory /var/config/mame/comments
share_directory /var/config/mame/share
#
# CORE STATE/PLAYBACK OPTIONS
#
state
autosave 0
rewind 0
rewind_capacity 100
playback
record
exit_after_playback 0
mngwrite
aviwrite
wavwrite
snapname %g/%i
snapsize auto
snapview auto
snapbilinear 1
statename %g
burnin 0
#
# CORE PERFORMANCE OPTIONS
#
autoframeskip 0
frameskip 0
seconds_to_run 0
throttle 1
sleep 1
speed 1.0
refreshspeed 0
lowlatency 0
#
# CORE RENDER OPTIONS
#
keepaspect 1
unevenstretch 1
unevenstretchx 0
unevenstretchy 0
autostretchxy 0
intoverscan 0
intscalex 0
intscaley 0
#
# CORE ROTATION OPTIONS
#
rotate 1
ror 0
rol 0
autoror 0
autorol 0
flipx 0
flipy 0
#
# CORE ARTWORK OPTIONS
#
artwork_crop 0
fallback_artwork
override_artwork
#
# CORE SCREEN OPTIONS
#
brightness 1.0
contrast 1.0
gamma 1.0
pause_brightness 0.65
effect none
#
# CORE VECTOR OPTIONS
#
beam_width_min 1.0
beam_width_max 1.0
beam_dot_size 1.0
beam_intensity_weight 0
flicker 0
#
# CORE SOUND OPTIONS
#
samplerate 48000
samples 1
volume 0
compressor 1
speaker_report 0
#
# CORE INPUT OPTIONS
#
coin_lockout 1
ctrlr
mouse 0
joystick 1
lightgun 0
multikeyboard 0
multimouse 0
steadykey 0
ui_active 0
offscreen_reload 0
joystick_map auto
joystick_deadzone 0.15
joystick_saturation 0.85
joystick_threshold 0.3
natural 0
joystick_contradictory 0
coin_impulse 0
#
# CORE INPUT AUTOMATIC ENABLE OPTIONS
#
paddle_device keyboard
adstick_device keyboard
pedal_device keyboard
dial_device keyboard
trackball_device keyboard
lightgun_device keyboard
positional_device keyboard
mouse_device mouse
#
# CORE DEBUGGING OPTIONS
#
verbose 0
log 0
oslog 0
debug 0
update_in_pause 0
debugscript
debuglog 0
#
# CORE COMM OPTIONS
#
comm_localhost 0.0.0.0
comm_localport 15112
comm_remotehost 127.0.0.1
comm_remoteport 15112
comm_framesync 0
#
# CORE MISC OPTIONS
#
drc 1
drc_use_c 0
drc_log_uml 0
drc_log_native 0
bios
cheat 0
skip_gameinfo 1
uifont default
ui cabinet
ramsize
confirm_quit 0
ui_mouse 1
language
nvram_save 1
#
# SCRIPTING OPTIONS
#
autoboot_command
autoboot_delay 0
autoboot_script
console 0
plugins 1
plugin
noplugin
#
# HTTP SERVER OPTIONS
#
http 0
http_port 8080
http_root web
#
# OSD INPUT MAPPING OPTIONS
#
uimodekey auto
controller_map none
background_input 0
#
# OSD FONT OPTIONS
#
uifontprovider auto
#
# OSD OUTPUT OPTIONS
#
output auto
#
# OSD INPUT OPTIONS
#
keyboardprovider auto
mouseprovider auto
lightgunprovider auto
joystickprovider auto
#
# OSD DEBUGGING OPTIONS
#
debugger auto
debugger_port 23946
debugger_font auto
debugger_font_size 0
watchdog 0
#
# OSD PERFORMANCE OPTIONS
#
numprocessors auto
bench 0
#
# OSD VIDEO OPTIONS
#
video opengl
numscreens 1
window 0
maximize 1
waitvsync 0
syncrefresh 0
monitorprovider auto
#
# OSD PER-WINDOW VIDEO OPTIONS
#
screen auto
aspect auto
resolution auto
view auto
screen0 auto
aspect0 auto
resolution0 auto
view0 auto
screen1 auto
aspect1 auto
resolution1 auto
view1 auto
screen2 auto
aspect2 auto
resolution2 auto
view2 auto
screen3 auto
aspect3 auto
resolution3 auto
view3 auto
#
# OSD FULL SCREEN OPTIONS
#
switchres 0
#
# OSD ACCELERATED VIDEO OPTIONS
#
filter 1
prescale 1
#
# OpenGL-SPECIFIC OPTIONS
#
gl_forcepow2texture 0
gl_notexturerect 0
gl_vbo 1
gl_pbo 1
gl_glsl 0
gl_glsl_filter 1
glsl_shader_mame0 none
glsl_shader_mame1 none
glsl_shader_mame2 none
glsl_shader_mame3 none
glsl_shader_mame4 none
glsl_shader_mame5 none
glsl_shader_mame6 none
glsl_shader_mame7 none
glsl_shader_mame8 none
glsl_shader_mame9 none
glsl_shader_screen0 none
glsl_shader_screen1 none
glsl_shader_screen2 none
glsl_shader_screen3 none
glsl_shader_screen4 none
glsl_shader_screen5 none
glsl_shader_screen6 none
glsl_shader_screen7 none
glsl_shader_screen8 none
glsl_shader_screen9 none
#
# OSD SOUND OPTIONS
#
sound auto
audio_latency 2
#
# PORTAUDIO OPTIONS
#
pa_api none
pa_device none
pa_latency 0
#
# OSD MIDI OPTIONS
#
midiprovider auto
#
# OSD EMULATED NETWORKING OPTIONS
#
networkprovider auto
#
# BGFX POST-PROCESSING OPTIONS
#
bgfx_path bgfx
bgfx_backend auto
bgfx_debug 0
bgfx_screen_chains
bgfx_shadow_mask slot-mask.png
bgfx_lut lut-default.png
bgfx_avi_name auto
#
# SDL PERFORMANCE OPTIONS
#
sdlvideofps 0
#
# SDL VIDEO OPTIONS
#
centerh 1
centerv 1
scalemode none
#
# SDL FULL SCREEN OPTIONS
#
useallheads 0
attach_window
#
# SDL KEYBOARD MAPPING
#
keymap 0
keymap_file keymap.dat
#
# SDL JOYSTICK MAPPING
#
sixaxis 0
#
# SDL LIGHTGUN MAPPING
#
lightgun_index1 auto
lightgun_index2 auto
lightgun_index3 auto
lightgun_index4 auto
lightgun_index5 auto
lightgun_index6 auto
lightgun_index7 auto
lightgun_index8 auto
#
# SDL LOW-LEVEL DRIVER OPTIONS
#
videodriver auto
renderdriver auto
audiodriver auto
gl_lib auto

70
emu-configs/mame/ui.ini Normal file
View file

@ -0,0 +1,70 @@
#
# UI SEARCH PATH OPTIONS
#
historypath history;dats;.
categorypath folders
cabinets_directory cabinets;cabdevs
cpanels_directory cpanel
pcbs_directory pcb
flyers_directory flyers
titles_directory titles
ends_directory ends
marquees_directory marquees;$HOME/retrodeck/downloaded_media/arcade/marquees
artwork_preview_directory "artwork preview;artpreview"
bosses_directory bosses
logos_directory logo
scores_directory scores
versus_directory versus
gameover_directory gameover
howto_directory howto
select_directory select
icons_directory icons
covers_directory covers;$HOME/retrodeck/downloaded_media/arcade/covers
ui_path ui
#
# UI MISC OPTIONS
#
system_names
skip_warnings 1
unthrottle_mute 0
#
# UI OPTIONS
#
infos_text_size 0.75
font_rows 30
ui_border_color ffffffff
ui_bg_color ef101030
ui_clone_color ff808080
ui_dipsw_color ffffff00
ui_gfxviewer_color ef101030
ui_mousedown_bg_color b0606000
ui_mousedown_color ffffff80
ui_mouseover_bg_color 70404000
ui_mouseover_color ffffff80
ui_selected_bg_color ef808000
ui_selected_color ffffff00
ui_slider_color ffffffff
ui_subitem_color ffffffff
ui_text_bg_color ef000000
ui_text_color ffffffff
ui_unavail_color ff404040
#
# SYSTEM/SOFTWARE SELECTION MENU OPTIONS
#
hide_main_panel 0
use_background 1
skip_biosmenu 0
skip_partsmenu 0
remember_last 0
last_used_filter Available
system_right_panel image
software_right_panel image
system_right_image cover
software_right_image snap
enlarge_snaps 1
forced4x3 1
info_audit_enabled 0
hide_romless 1

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