From 1fc1e4fe1a06531017b08480f7da29ec44939e78 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 14:03:43 +0900 Subject: [PATCH 01/15] FEATURES: adding ES-DE as "emulator" --- config/retrodeck/reference_lists/features.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/config/retrodeck/reference_lists/features.json b/config/retrodeck/reference_lists/features.json index c9fe9122..76db71e6 100644 --- a/config/retrodeck/reference_lists/features.json +++ b/config/retrodeck/reference_lists/features.json @@ -1094,6 +1094,11 @@ "name": "xemu", "system": "xbox", "launch": "xemu" + }, + "es-de": { + "description": "ES-DE Emulation Frontend", + "name": "ES-DE", + "launch": "es-de" } } } From d6f1fa3a3f6b773fa0d444b1a42d30afee1f50b1 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 14:25:23 +0900 Subject: [PATCH 02/15] RESET_COMPONENT: migrated to features.json --- retrodeck.sh | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/retrodeck.sh b/retrodeck.sh index 72177781..018d9bc2 100644 --- a/retrodeck.sh +++ b/retrodeck.sh @@ -2,6 +2,16 @@ source /app/libexec/global.sh +# uses jq to extract all the emulators (components) that don't have resettable: false in the features.json and separate them with "|" +resettable_components=$(jq -r ' + [(.emulator | to_entries[]) | + select(.value.core == null and .value.resettable != false) | + .key] | sort | join("|") +' "$features") + +# uses sed to create, a, list, like, this +pretty_resettable_components=$(echo "$resettable_components" | sed 's/|/, /g') + # Arguments section for i in "$@"; do @@ -55,19 +65,15 @@ https://retrodeck.net fi ;; --reset-component*) - echo "You are about to reset one or more RetroDECK components or emulators." - echo "Available options are: es-de, retroarch, cemu, dolphin, duckstation, gzdoom, melonds, pcsx3, pico8, ppsspp, primehack, rpcs3, ryujinx, xemu, vita3k, mame, all" - read -p "Please enter the component you would like to reset: " component - component=$(echo "$component" | tr '[:upper:]' '[:lower:]') + component="$2" + if [ -z "$component" ]; then + echo "You are about to reset one or more RetroDECK components or emulators." + echo -e "Available options are:\nall, $pretty_resettable_components" + read -p "Please enter the component you would like to reset: " component + component=$(echo "$component" | tr '[:upper:]' '[:lower:]') + fi - # TODO: this is the jq to get all the resettable emulators list, generic component is missing - # jq -r ' - # [(.emulator | to_entries[]) | - # select(.value.core == null and .value.resettable != false) | - # .key] | sort | join("|") - # ' "$features" - - if [[ "$component" =~ ^(es-de|retroarch|cemu|dolphin|duckstation|gzdoom|mame|melonds|pcsx2|ppsspp|primehack|ryujinx|rpcs3|vita3k|xemu|all)$ ]]; then + if [[ "$component" =~ ^(all|$resettable_components)$ ]]; then read -p "You are about to reset $component to default settings. Enter 'y' to continue, 'n' to stop: " response if [[ $response == [yY] ]]; then prepare_component "reset" "$component" "cli" From c7edfdc8be02764ecb5e37178a2e98b7174c2ae0 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 15:59:20 +0900 Subject: [PATCH 03/15] WORKFLOW: tenative fixes for the PR builds [skip ci] --- .github/workflows/cooker-selfhosted.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index d4a675c1..9e25c4c1 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -88,8 +88,8 @@ jobs: echo "MANIFEST_VERSION=$MANIFEST_VERSION" >> $GITHUB_ENV # Determine tag based on branch type - if [[ "$BRANCH_NAME" == refs/* ]]; then - pr_number=$(echo "${{ env.BRANCH_NAME }}" | awk -F'/' '{print $3}') + if [[ "$BRANCH_NAME" == refs/pull/* ]]; then + pr_number=$(echo "$GITHUB_REF" | awk -F'/' '{print $3}') source_branch=$(curl -s "https://api.github.com/repos/RetroDECK/RetroDECK/pulls/$pr_number" | jq -r '.head.ref' | tr '/' '-') TAG="PR-$pr_number-$source_branch-${{ env.buildid }}" else @@ -154,7 +154,6 @@ jobs: uses: ncipollo/release-action@v1 with: tag: "${{env.TAG}}" - commit: ${{ github.sha }} body: | # Release Notes (Cooker) This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}. From 7b1641fb37433ddb569bd28222558faf0f4bacaa Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 16:22:26 +0900 Subject: [PATCH 04/15] WORKFLOW: tenative fixes for the PR builds + make latest tag [skip ci] --- .github/workflows/cooker-selfhosted.yml | 82 +++++++++++-------------- 1 file changed, 36 insertions(+), 46 deletions(-) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 9e25c4c1..292e0df4 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -41,7 +41,6 @@ jobs: continue-on-error: true - name: Generate a token for Rekku - if: github.repository_owner == 'RetroDECK' id: generate-rekku-token uses: actions/create-github-app-token@v1 with: @@ -53,8 +52,6 @@ jobs: - name: Clone RetroDECK repo uses: actions/checkout@v4 with: - ref: ${{ github.event.pull_request.head.ref || github.ref }} # Use the branch or commit reference from the pull request if available; otherwise, fall back to the reference from the event that triggered the workflow. - repository: ${{ github.event.pull_request.head.repo.full_name || github.repository }} # Use the repository name from the pull request if available; otherwise, use the repository name from the event that triggered the workflow. submodules: 'true' - name: "Install dependencies" @@ -67,41 +64,33 @@ jobs: 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)" + + # if the branch is coming from a PR the tag should be manually built + - name: "Generate version tag and evaluating latest tag" run: | - if [[ "$BRANCH_NAME" == 'feat/'* || "$BRANCH_NAME" == 'refs/'* ]]; then - echo "MAKE_LATEST=false" >> $GITHUB_ENV + # Source the version extractor script to get the manifest version + source automation_tools/version_extractor.sh + MANIFEST_VERSION="$(fetch_manifest_version)" + echo "MANIFEST_VERSION=$MANIFEST_VERSION" >> $GITHUB_ENV + + # Check if the event is related to a pull request + if [[ "$GITHUB_EVENT_NAME" == "pull_request" || "$GITHUB_EVENT_NAME" == "pull_request_target" ]]; then + pr_number=$(echo "$GITHUB_REF" | awk -F'/' '{print $3}') + source_branch=$(curl -s "https://api.github.com/repos/RetroDECK/RetroDECK/pulls/$pr_number" | jq -r '.head.ref') + source_branch=${source_branch//\//-} # Replace '/' with '-' in the branch name + echo "[DEBUG] source branch is: $source_branch" + echo "TAG=PR-$pr_number-$source_branch-${{ env.buildid }}" >> $GITHUB_ENV + echo "MAKE_LATEST=false" >> $GITHUB_ENV # if it's a feature branch it will not marked as "latest" cooker version else + TAG="$MANIFEST_VERSION-${{ env.buildid }}" + echo "TAG=$TAG" >> $GITHUB_ENV echo "MAKE_LATEST=true" >> $GITHUB_ENV fi - # Generate version tag based on the branch name: if the branch is coming from a PR the tag should be manually built - - name: "Generate version tag" - run: | - - # Source version extractor script and get manifest version - source automation_tools/version_extractor.sh - MANIFEST_VERSION="$(fetch_manifest_version)" - - # Set manifest version to environment variable - echo "MANIFEST_VERSION=$MANIFEST_VERSION" >> $GITHUB_ENV - - # Determine tag based on branch type - if [[ "$BRANCH_NAME" == refs/pull/* ]]; then - pr_number=$(echo "$GITHUB_REF" | awk -F'/' '{print $3}') - source_branch=$(curl -s "https://api.github.com/repos/RetroDECK/RetroDECK/pulls/$pr_number" | jq -r '.head.ref' | tr '/' '-') - TAG="PR-$pr_number-$source_branch-${{ env.buildid }}" - else - TAG="$MANIFEST_VERSION-${{ env.buildid }}" - fi - - # Set tag to environment variable - echo "TAG=$TAG" >> $GITHUB_ENV - - # Output debug information + # Output the manifest version and generated tag for debugging echo "MANIFEST_VERSION: $MANIFEST_VERSION" echo "Version TAG: $TAG" + echo "MAKE_LATEST: $MAKE_LATEST" # backing up manifest in case download fails and hashes must be recalculated - name: Manifest backup @@ -140,6 +129,10 @@ jobs: - name: Create Bundle run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh" + + - name: Set environment variable with current branch name + run: echo "GITHUB_REF_SLUG=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV + - name: Get commits since last release run: | # Get the latest release tag @@ -147,7 +140,8 @@ jobs: # Get all commits since the latest release tag COMMITS=$(git log $LATEST_TAG..HEAD --pretty=format:"- %s") # Set the output variable - echo "COMMITS=$COMMITS" >> $GITHUB_ENV + echo "::set-output name=commits::$COMMITS" + id: commits continue-on-error: true - name: Publish the flatpak in a new cooker release @@ -159,8 +153,8 @@ jobs: This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}. On branch [${{env.BRANCH_NAME}}](https://github.com/RetroDECK/RetroDECK/tree/${{env.BRANCH_NAME}}). - ## Commits since last cooker build - ${{ env.COMMITS }} + ## 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/WDc5C9YWMx) on our Discord server. @@ -171,11 +165,10 @@ jobs: allowUpdates: true makeLatest: ${{env.MAKE_LATEST}} # if it's a feat branch is not considered the latest build token: ${{ steps.generate-rekku-token.outputs.token }} - repo: ${{ github.repository_owner == 'RetroDECK' && 'Cooker' || github.repository }} # If the repo owner is RetroDECK, publish to Cooker, otherwise publish to the current fork repo + repo: Cooker continue-on-error: true - name: Rewrite Tag - if: github.repository_owner == 'RetroDECK' run: | git submodule deinit -f --all git fetch --tags @@ -198,18 +191,15 @@ jobs: path: RetroDECK-cooker.flatpak continue-on-error: true - # We never needed this in cooker - # - name: Create Artifact for flathub - # if: github.repository_owner == 'RetroDECK' - # run: | - # tar -czf ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz -C ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker . - # hash=($(sha256sum ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz)) - # echo $hash > ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.sha - # mv -f RetroDECK-Artifact-cooker.* ${{ secrets.ARTIFACT_REPO }} - # continue-on-error: true + - name: Create Artifact for flathub + run: | + tar -czf ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz -C ${GITHUB_WORKSPACE}/retrodeck-flatpak-cooker . + hash=($(sha256sum ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.tar.gz)) + echo $hash > ${GITHUB_WORKSPACE}/RetroDECK-Artifact-cooker.sha + mv -f RetroDECK-Artifact-cooker.* ${{ secrets.ARTIFACT_REPO }} + continue-on-error: true # - name: Upload RetroDECK-cooker.flatpak to Gitea Release - # if: github.repository_owner == 'RetroDECK' # run: | # # Set variables for Gitea host, organization, repository, access token, and release details # GITEA_HOST="repo.retrodeck.net" From 3ac18fe4e9d3341d53919b69350ec24ded0d9cd1 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 22:57:36 +0900 Subject: [PATCH 05/15] BIOS: migration from bios_checklist.cfg terminated --- config/retrodeck/reference_lists/bios.json | 689 ++++++++++++--------- 1 file changed, 397 insertions(+), 292 deletions(-) diff --git a/config/retrodeck/reference_lists/bios.json b/config/retrodeck/reference_lists/bios.json index 77df3c46..1a94b72e 100644 --- a/config/retrodeck/reference_lists/bios.json +++ b/config/retrodeck/reference_lists/bios.json @@ -1,329 +1,341 @@ { "bios": { "panafz1.bin": { - "hash": "f47264dd47fe30f73ab3c010015c155b", + "md5": "f47264dd47fe30f73ab3c010015c155b", "system": "3do", "description": "Panasonic FZ-1" }, "panafz10.bin": { - "hash": "51f2f43ae2f3508a14d9f56597e2d3ce", + "md5": "51f2f43ae2f3508a14d9f56597e2d3ce", "system": "3do", "description": "Panasonic FZ-10" }, "panafz10-norsa.bin": { - "hash": "1477bda80dc33731a65468c1f5bcbee9", + "md5": "1477bda80dc33731a65468c1f5bcbee9", "system": "3do", "description": "Panasonic FZ-10 [RSA Patch]" }, "panafz10e-anvil.bin": { - "hash": "a48e6746bd7edec0f40cff078f0bb19f", + "md5": "a48e6746bd7edec0f40cff078f0bb19f", "system": "3do", "description": "Panasonic FZ-10-E [Anvil]" }, "panafz10e-anvil-norsa.bin": { - "hash": "cf11bbb5a16d7af9875cca9de9a15e09", + "md5": "cf11bbb5a16d7af9875cca9de9a15e09", "system": "3do", "description": "Panasonic FZ-10-E [Anvil RSA Patch]" }, "panafz1j.bin": { - "hash": "a496cfdded3da562759be3561317b605", + "md5": "a496cfdded3da562759be3561317b605", "system": "3do", "description": "Panasonic FZ-1J" }, "panafz1j-norsa.bin": { - "hash": "f6c71de7470d16abe4f71b1444883dc8", + "md5": "f6c71de7470d16abe4f71b1444883dc8", "system": "3do", "description": "Panasonic FZ-1J [RSA Patch]" }, "goldstar.bin": { - "hash": "8639fd5e549bd6238cfee79e3e749114", + "md5": "8639fd5e549bd6238cfee79e3e749114", "system": "3do", "description": "Goldstar GDO-101M" }, "sanyotry.bin": { - "hash": "35fa1a1ebaaeea286dc5cd15487c13ea", + "md5": "35fa1a1ebaaeea286dc5cd15487c13ea", "system": "3do", "description": "Sanyo IMP-21J TRY" }, "3do_arcade_saot.bin": { - "hash": "8970fc987ab89a7f64da9f8a8c4333ff", + "md5": "8970fc987ab89a7f64da9f8a8c4333ff", "system": "3do", "description": "Shootout At Old Tucson" }, "panafz1-kanji.bin": { - "hash": "b8dc97f778a6245c58e064b0312e8281", + "md5": "b8dc97f778a6245c58e064b0312e8281", "system": "3do", "description": "Panasonic FZ-1 Kanji Font ROM", - "required" : "Required for some Japanese games. Optional otherwise" + "required": "Required for some Japanese games. Optional otherwise" }, "panafz10ja-anvil-kanji.bin": { - "hash": "428577250f43edc902ea239c50d2240d", + "md5": "428577250f43edc902ea239c50d2240d", "system": "3do", "description": "Panasonic FZ-10JA Kanji Font ROM", - "required" : "Required for some Japanese games. Optional otherwise" + "required": "Required for some Japanese games. Optional otherwise" }, "panafz1j-kanji.bin": { - "hash": "c23fb5d5e6bb1c240d02cf968972be37", + "md5": "c23fb5d5e6bb1c240d02cf968972be37", "system": "3do", "description": "Panasonic FZ-1J Kanji Font ROM", - "required" : "Required for some Japanese games. Optional otherwise" + "required": "Required for some Japanese games. Optional otherwise" }, "neogeo.zip": { - "hash": "00dad01abdbf8ea9e79ad2fe11bdb182", + "md5": "00dad01abdbf8ea9e79ad2fe11bdb182", "system": "fbneo", "description": "Neo Geo BIOS", - "required" : "required" + "required": "required" }, "neocdz.zip": { - "hash": "c733b4b7bd30fa849874d96c591c8639", + "md5": "c733b4b7bd30fa849874d96c591c8639", "system": "fbneo", "description": "Neo Geo CDZ BIOS", - "required" : "required" + "required": "required" }, "decocass.zip": { - "hash": "b7e1189b341bf6a8e270017c096d21b0", + "md5": "b7e1189b341bf6a8e270017c096d21b0", "system": "fbneo", "description": "DECO Cassette System BIOS", - "required" : "required" + "required": "required" }, "isgsm.zip": { - "hash": "4a56d56e2219c5e2b006b66a4263c01c", + "md5": "4a56d56e2219c5e2b006b66a4263c01c", "system": "fbneo", "description": "ISG Selection Master Type 2006 System BIOS", - "required" : "required" + "required": "required" }, "midssio.zip": { - "hash": "5904b0de768d1d506e766aa7e18994c1", + "md5": "5904b0de768d1d506e766aa7e18994c1", "system": "fbneo", "description": "Midway SSIO Sound Board Internal ROM", - "required" : "required" + "required": "required" }, "nmk004.zip": { - "hash": "bfacf1a68792d5348f93cf724d2f1dda", + "md5": "bfacf1a68792d5348f93cf724d2f1dda", "system": "fbneo", "description": "NMK004 Internal ROM", - "required" : "required" + "required": "required" }, "pgm.zip": { - "hash": "87cc944eef4c671aa2629a8ba48a08e0", + "md5": "87cc944eef4c671aa2629a8ba48a08e0", "system": "fbneo", "description": "PGM System BIOS", - "required" : "required" + "required": "required" }, "skns.zip": { - "hash": "3f956c4e7008804cb47cbde49bd5b908", + "md5": "3f956c4e7008804cb47cbde49bd5b908", "system": "fbneo", "description": "Super Kaneko Nova System BIOS", - "required" : "required" + "required": "required" }, "ym2608.zip": { - "hash": "79ae0d2bb1901b7e606b6dc339b79a97", + "md5": "79ae0d2bb1901b7e606b6dc339b79a97", "system": "fbneo", "description": "YM2608 Internal ROM", - "required" : "required" + "required": "required" }, "cchip.zip": { - "hash": "df6f8a3d83c028a5cb9f2f2be60773f3", + "md5": "df6f8a3d83c028a5cb9f2f2be60773f3", "system": "fbneo", "description": "C-Chip Internal ROM", - "required" : "required" + "required": "required" }, "bubsys.zip": { - "hash": "f81298afd68a1a24a49a1a2d9f087964", + "md5": "f81298afd68a1a24a49a1a2d9f087964", "system": "fbneo", "description": "Bubble System BIOS", - "required" : "required" + "required": "required" }, "namcoc69.zip": { "system": "fbneo", "description": "Namco C69 BIOS", - "required" : "required" + "required": "required" }, "namcoc70.zip": { "system": "fbneo", "description": "Namco C70 BIOS", - "required" : "required" + "required": "required" }, "namcoc75.zip": { "system": "fbneo", "description": "Namco C75 BIOS", - "required" : "required" + "required": "required" }, "coleco.zip": { "system": "fbneo", "description": "ColecoVision System BIOS", - "required" : "required" + "required": "required" }, "fdsbios.zip": { "system": "fbneo", "description": "FDS System BIOS", - "required" : "required" + "required": "required" }, "msx.zip": { "system": "fbneo", "description": "MSX1 System BIOS", - "required" : "required" + "required": "required" }, "ngp.zip": { "system": "fbneo", "description": "NeoGeo Pocket BIOS", - "required" : "required" + "required": "required" }, "spectrum.zip": { "system": "fbneo", "description": "ZX Spectrum BIOS", - "required" : "required" + "required": "required" }, "spec128.zip": { "system": "fbneo", "description": "ZX Spectrum 128 BIOS", - "required" : "required" + "required": "required" }, "spec1282a.zip": { "system": "fbneo", "description": "ZX Spectrum 128 +2a BIOS", - "required" : "required" + "required": "required" }, "channelf.zip": { "system": "fbneo", "description": "Fairchild Channel F BIOS", - "required" : "required" + "required": "required" }, "5200.rom": { - "hash": "281f20ea4320404ec820fb7ec0693b38", + "md5": "281f20ea4320404ec820fb7ec0693b38", "system": "atari5200", "description": "Atari 5200 BIOS", - "required" : "required" + "required": "required" }, "ATARIXL.ROM": { - "hash": "06daac977823773a3eea3422fd26a703", + "md5": "06daac977823773a3eea3422fd26a703", "system": "atari5200", "description": "Atari XL/XE OS BIOS ", - "required" : "required" + "required": "required" }, "ATARIBAS.ROM": { - "hash": "0bac0c6a50104045d902df4503a4c30b", + "md5": "0bac0c6a50104045d902df4503a4c30b", "system": "atari5200", "description": "BASIC interpreter BIOS ", - "required" : "required" + "required": "required" }, "ATARIOSA.ROM": { - "hash": "eb1f32f5d9f382db1bbfb8d7f9cb343a", + "md5": "eb1f32f5d9f382db1bbfb8d7f9cb343a", "system": "atari5200", "description": "atari800", - "required" : "required" + "required": "required" }, "ATARIOSB.ROM": { - "hash": "a3e8d617c95d08031fe1b20d541434b2", + "md5": "a3e8d617c95d08031fe1b20d541434b2", "system": "atari5200", "description": "BIOS for Atari 400/800 NTSC ", - "required" : "required" + "required": "required" }, "tos.img": { - "hash": "c1c57ce48e8ee4135885cee9e63a68a2", + "md5": "c1c57ce48e8ee4135885cee9e63a68a2", "system": "atarist", "description": "TOS Boot Image", - "required" : "required" + "required": "required" }, "lynxboot.img": { - "hash": "fcd403db69f54290b51035d82f835e7b", + "md5": "fcd403db69f54290b51035d82f835e7b", "system": "atarilynx", "description": "Atari Lynx Boot Image", - "required" : "required" + "required": "required" }, "o2rom.bin": { - "hash": "562d5ebf9e030a40d6fabfc2f33139fd", - "system": ["odyssey2", "videopac"], + "md5": "562d5ebf9e030a40d6fabfc2f33139fd", + "system": [ + "odyssey2", + "videopac" + ], "description": "Odyssey2 BIOS - G7000 model", - "required" : "required" + "required": "required" }, "c52.bin": { - "hash": "f1071cdb0b6b10dde94d3bc8a6146387", - "system": ["odyssey2", "videopac"], + "md5": "f1071cdb0b6b10dde94d3bc8a6146387", + "system": [ + "odyssey2", + "videopac" + ], "description": "Videopac+ French BIOS - G7000 model", - "required" : "required" + "required": "required" }, "g7400.bin": { - "hash": "c500ff71236068e0dc0d0603d265ae76", - "system": ["odyssey2", "videopac"], + "md5": "c500ff71236068e0dc0d0603d265ae76", + "system": [ + "odyssey2", + "videopac" + ], "description": "Videopac+ European BIOS - G7400 model", - "required" : "required" + "required": "required" }, "jopac.bin": { - "hash": "279008e4a0db2dc5f1c048853b033828", - "system": ["odyssey2", "videopac"], + "md5": "279008e4a0db2dc5f1c048853b033828", + "system": [ + "odyssey2", + "videopac" + ], "description": "Videopac+ French BIOS - G7400 model", - "required" : "required" + "required": "required" }, "exec.bin": { - "hash": "62e761035cb657903761800f4437b8af", + "md5": "62e761035cb657903761800f4437b8af", "system": "intellivision", "description": "Executive ROM", - "required" : "required" + "required": "required" }, "grom.bin": { - "hash": "0cd5946c6473e42e8e4c2137785e427f", + "md5": "0cd5946c6473e42e8e4c2137785e427f", "system": "intellivision", "description": "Graphics ROM", - "required" : "required" + "required": "required" }, "MSX.ROM": { - "hash": "364a1a579fe5cb8dba54519bcfcdac0d", + "md5": "364a1a579fe5cb8dba54519bcfcdac0d", "system": "msx", "description": "MSX BIOS", - "required" : "required" + "required": "required" }, "MSX2.ROM": { - "hash": "ec3a01c91f24fbddcbcab0ad301bc9ef", + "md5": "ec3a01c91f24fbddcbcab0ad301bc9ef", "system": "msx", "description": "MSX2 BIOS", - "required" : "required" + "required": "required" }, "MSX2EXT.ROM": { - "hash": "2183c2aff17cf4297bdb496de78c2e8a", + "md5": "2183c2aff17cf4297bdb496de78c2e8a", "system": "msx", "description": "MSX2 ExtROM", - "required" : "required" + "required": "required" }, "MSX2P.ROM": { - "hash": "847cc025ffae665487940ff2639540e5", + "md5": "847cc025ffae665487940ff2639540e5", "system": "msx", "description": "MSX2+ BIOS", - "required" : "required" + "required": "required" }, "MSX2PEXT.ROM": { - "hash": "7c8243c71d8f143b2531f01afa6a05dc", + "md5": "7c8243c71d8f143b2531f01afa6a05dc", "system": "msx", "description": "MSX2+ ExtROM", - "required" : "required" + "required": "required" }, "DISK.ROM": { - "hash": "80dcd1ad1a4cf65d64b7ba10504e8190", + "md5": "80dcd1ad1a4cf65d64b7ba10504e8190", "system": "msx", "description": "DiskROM/BDOS" }, "FMPAC.ROM": { - "hash": "6f69cc8b5ed761b03afd78000dfb0e19", + "md5": "6f69cc8b5ed761b03afd78000dfb0e19", "system": "msx", "description": "FMPAC BIOS" }, "MSXDOS2.ROM": { - "hash": "6418d091cd6907bbcf940324339e43bb", + "md5": "6418d091cd6907bbcf940324339e43bb", "system": "msx", "description": "MSX-DOS 2" }, "PAINTER.ROM": { - "hash": "403cdea1cbd2bb24fae506941f8f655e", + "md5": "403cdea1cbd2bb24fae506941f8f655e", "system": "msx", "description": "Yamaha Painter" }, "KANJI.ROM": { - "hash": "febe8782b466d7c3b16de6d104826b34", + "md5": "febe8782b466d7c3b16de6d104826b34", "system": "msx", "description": "Kanji Font" }, "mcpx_1.0.bin": { - "hash": "d49c52a4102f6df7bcf8d0617ac475ed", + "md5": "d49c52a4102f6df7bcf8d0617ac475ed", "system": "xbox", "description": "Used by XEMU emulator" }, @@ -340,55 +352,67 @@ "description": "Used by XEMU emulator" }, "syscard3.pce": { - "hash": "38179df8f4ac870017db21ebcbf53114", - "system": ["pcengine", "pcenginecd"], + "md5": "38179df8f4ac870017db21ebcbf53114", + "system": [ + "pcengine", + "pcenginecd" + ], "description": "Super CD-ROM2 System V3.xx", - "required" : "required" + "required": "required" }, "syscard2.pce": { - "hash": "3cdd6614a918616bfc41c862e889dd79", - "system": ["pcengine", "pcenginecd"], + "md5": "3cdd6614a918616bfc41c862e889dd79", + "system": [ + "pcengine", + "pcenginecd" + ], "description": "CD-ROM System V2.xx" }, "syscard1.pce": { - "hash": "2b7ccb3d86baa18f6402c176f3065082", - "system": ["pcengine", "pcenginecd"], + "md5": "2b7ccb3d86baa18f6402c176f3065082", + "system": [ + "pcengine", + "pcenginecd" + ], "description": "CD-ROM System V1.xx" }, "gexpress.pce": { - "hash": "6d2cb14fc3e1f65ceb135633d1694122", - "system": ["pcengine", "pcenginecd"], + "md5": "6d2cb14fc3e1f65ceb135633d1694122", + "system": [ + "pcengine", + "pcenginecd" + ], "description": "Game Express CD Card" }, "font.bmp": { - "hash": "7da1e5b7c482d4108d22a5b09631d967", + "md5": "7da1e5b7c482d4108d22a5b09631d967", "system": "pc98", "description": "Needed to display text", - "required" : "required" + "required": "required" }, "FONT.ROM": { - "hash": "2af6179d7de4893ea0b705c00e9a98d6", + "md5": "2af6179d7de4893ea0b705c00e9a98d6", "system": "pc98", "description": "Alternative font file", "required": "Required if normal font file is missing" }, "bios.rom": { - "hash": "e246140dec5124c5e404869a84caefce", + "md5": "e246140dec5124c5e404869a84caefce", "system": "pc98", "description": "BIOS file", - "required" : "required" + "required": "required" }, "itf.rom": { - "hash": "e9fc3890963b12cf15d0a2eea5815b72", + "md5": "e9fc3890963b12cf15d0a2eea5815b72", "system": "pc98", "description": "BIOS file", - "required" : "required" + "required": "required" }, "sound.rom": { - "hash": "caf90f22197aed6f14c471c21e64658d", + "md5": "caf90f22197aed6f14c471c21e64658d", "system": "pc98", "description": "BIOS file", - "required" : "required" + "required": "required" }, "bios9821.rom": { "system": "pc98", @@ -399,452 +423,533 @@ "description": "Optional BIOS file" }, "2608_BD.WAV": { - "hash": "d94546e70f17fd899be8df3544ab6cbb", + "md5": "d94546e70f17fd899be8df3544ab6cbb", "system": "pc98", "description": "YM2608 RYTHM sample" }, "2608_SD.WAV": { - "hash": "d71004351c8bbfdad53b18222c061d49", + "md5": "d71004351c8bbfdad53b18222c061d49", "system": "pc98", "description": "YM2608 RYTHM sample" }, "2608_TOP.WAV": { - "hash": "593cff6597ab9380d822b8f824fd2c28", + "md5": "593cff6597ab9380d822b8f824fd2c28", "system": "pc98", "description": "YM2608 RYTHM sample" }, "2608_HH.WAV": { - "hash": "08c54a0c1f774a5538a848a6665a34b4", + "md5": "08c54a0c1f774a5538a848a6665a34b4", "system": "pc98", "description": "YM2608 RYTHM sample" }, "2608_TOM.WAV": { - "hash": "96a4ead13f364734f79b0c58af2f0e1f", + "md5": "96a4ead13f364734f79b0c58af2f0e1f", "system": "pc98", "description": "YM2608 RYTHM sample" }, "2608_RIM.WAV": { - "hash": "465ea0768b27da404aec45dfc501404b", + "md5": "465ea0768b27da404aec45dfc501404b", "system": "pc98", "description": "YM2608 RYTHM sample" }, "n88.rom": { - "hash": "4f984e04a99d56c4cfe36115415d6eb8", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "4f984e04a99d56c4cfe36115415d6eb8", + "system": "pc88", "description": "BIOS File", - "required" : "required" + "required": "required" }, "n88n.rom": { - "hash": "2ff07b8769367321128e03924af668a0", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "2ff07b8769367321128e03924af668a0", + "system": "pc88", "description": "Required for PC-8000 series emulation. (N BASIC mode)" }, "disk.rom": { - "hash": "793f86784e5608352a5d7f03f03e0858", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "793f86784e5608352a5d7f03f03e0858", + "system": "pc88", "description": "Required for loading disk images" }, "n88knj1.rom": { - "hash": "d81c6d5d7ad1a4bbbd6ae22a01257603", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "d81c6d5d7ad1a4bbbd6ae22a01257603", + "system": "pc88", "description": "Required for viewing kanji" }, "n88_0.rom": { - "hash": "d675a2ca186c6efcd6277b835de4c7e5", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "d675a2ca186c6efcd6277b835de4c7e5", + "system": "pc88", "description": "Required for viewing kanji" }, "n88_1.rom": { - "hash": "e844534dfe5744b381444dbe61ef1b66", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "e844534dfe5744b381444dbe61ef1b66", + "system": "pc88", "description": "Optional BIOS file" }, "n88_2.rom": { - "hash": "6548fa45061274dee1ea8ae1e9e93910", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "6548fa45061274dee1ea8ae1e9e93910", + "system": "pc88", "description": "Optional BIOS file" }, "n88_3.rom": { - "hash": "fc4b76a402ba501e6ba6de4b3e8b4273", - "system": "NEC PC-8000 / PC-8800 series (QUASI88)", + "md5": "fc4b76a402ba501e6ba6de4b3e8b4273", + "system": "pc88", "description": "Optional BIOS file" }, "neocd_f.rom": { - "hash": "8834880c33164ccbe6476b559f3e37de", - "system": "Neo Geo CD", + "md5": "8834880c33164ccbe6476b559f3e37de", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Front Loader BIOS", "required": "at least one" }, "neocd_sf.rom": { - "hash": "043d76d5f0ef836500700c34faef774d", - "system": "Neo Geo CD", + "md5": "043d76d5f0ef836500700c34faef774d", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Front Loader BIOS (SMKDAN 0.7b DEC 2010)", "required": "at least one" }, "neocd_t.rom": { - "hash": "de3cf45d227ad44645b22aa83b49f450", - "system": "Neo Geo CD", + "md5": "de3cf45d227ad44645b22aa83b49f450", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Top Loader BIOS", "required": "at least one" }, "neocd_st.rom": { - "hash": "f6325a33c6d63ea4b9162a3fa8c32727", - "system": "Neo Geo CD", + "md5": "f6325a33c6d63ea4b9162a3fa8c32727", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Top Loader BIOS (SMKDAN 0.7b DEC 2010)", "required": "at least one" }, "neocd_z.rom": { - "hash": "11526d58d4c524daef7d5d677dc6b004", - "system": "Neo Geo CD", + "md5": "11526d58d4c524daef7d5d677dc6b004", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "CDZ BIOS", "required": "at least one" }, "neocd_sz.rom": { - "hash": "971ee8a36fb72da57aed01758f0a37f5", - "system": "Neo Geo CD", + "md5": "971ee8a36fb72da57aed01758f0a37f5", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "CDZ BIOS (SMKDAN 0.7b DEC 2010)", "required": "at least one" }, "front-sp1.bin": { - "hash": "5c2366f25ff92d71788468ca492ebeca", - "system": "Neo Geo CD", + "md5": "5c2366f25ff92d71788468ca492ebeca", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Front Loader BIOS (MAME)", "required": "at least one" }, "top-sp1.bin": { - "hash": "122aee210324c72e8a11116e6ef9c0d0", - "system": "Neo Geo CD", + "md5": "122aee210324c72e8a11116e6ef9c0d0", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Top Loader BIOS (MAME)", "required": "at least one" }, "neocd.bin": { - "hash": "f39572af7584cb5b3f70ae8cc848aba2", - "system": "Neo Geo CD", + "md5": "f39572af7584cb5b3f70ae8cc848aba2", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "CDZ BIOS (MAME)", "required": "at least one" }, "uni-bioscd.rom": { - "hash": "08ca8b2dba6662e8024f9e789711c6fc", - "system": "Neo Geo CD", + "md5": "08ca8b2dba6662e8024f9e789711c6fc", + "system": [ + "neogeocd", + "neogeocdjp" + ], "description": "Universe BIOS CD 3.3" }, "gb_bios.bin": { - "hash": "32fbbd84168d3482956eb3c5051637f5", - "system": "Game Boy", + "md5": "32fbbd84168d3482956eb3c5051637f5", + "system": "gb", "description": "Optional BIOS file (used to display the Nintendo logo at boot)" }, "gbc_bios.bin": { - "hash": "dbfce9db9deaa2567f6a84fde55f9680", - "system": "Game Boy Color", + "md5": "dbfce9db9deaa2567f6a84fde55f9680", + "system": "gbc", "description": "Optional BIOS file (used to display the Nintendo logo at boot)" }, "gba_bios.bin": { - "hash": "a860e8c0b6d573d191e4ec7db1b1e4f6", - "system": "Game Boy Advance", + "md5": "a860e8c0b6d573d191e4ec7db1b1e4f6", + "system": "gba", "description": "Optional BIOS file (used to display the Nintendo logo at boot)" }, "aes_keys.txt": { - "system": "Nintendo 3DS", + "system": "n3ds", "description": "Decryption keys used by Citra emulator" }, "bios7.bin": { - "hash": "df692a80a5b1bc90728bc3dfc76cd948", - "system": "Nintendo DS", - "description": "Used by MelonDS emulator (Required, see Wiki)" + "md5": "df692a80a5b1bc90728bc3dfc76cd948", + "system": "nds", + "description": "Nintendo DS arm7 bios (Required only by MelonDS Standalone)" }, "bios9.bin": { - "hash": "a392174eb3e572fed6447e956bde4b25", - "system": "Nintendo DS", - "description": "Used by MelonDS emulator (Required, see Wiki)" + "md5": "a392174eb3e572fed6447e956bde4b25", + "system": "nds", + "description": "Nintendo DS arm9 bios (Required only by MelonDS Standalone)" }, "firmware.bin": { - "hash": "e45033d9b0fa6b0de071292bba7c9d13", - "system": "Nintendo DS", - "description": "Used by MelonDS emulator (Required, see Wiki)" + "md5": "e45033d9b0fa6b0de071292bba7c9d13", + "system": "nds", + "description": "Nintendo DS firmware (Required only by MelonDS Standalone)" + }, + "biosdsi7.bin": { + "sha256": "2946281e730e71f7cafdb125f5cb60fed944ca5d610ee1e082c441b602b5f4e2", + "system": "nds", + "description": "Nintendo DSi arm7 bios (Required for DSi games)", + "required": "required" + }, + "biosdsi9.bin": { + "sha256": "47538922a8e8a8e79b922ff1203863ef5c40d9c54656a8d2c89c56ece52029ce", + "system": "nds", + "description": "Nintendo DSi arm9 bios (Required for DSi games)", + "required": "required" + }, + "dsifirmware.bin": { + "sha256": "11a150e3729bdde3ae8f5e7fc8be67d8bfbc548a1d2e523da58aa826ca0ffa99", + "system": "nds", + "description": "Nintendo DSi firmware (Required for DSi games)", + "required": "required" }, "disksys.rom": { - "hash": "ca30b50f880eb660a320674ed365ef7a", - "system": "Nintendo NES / Famicom", + "md5": "ca30b50f880eb660a320674ed365ef7a", + "system": [ + "nes", + "sfc" + ], "description": "Family Computer Disk System BIOS - Required for Family Computer Disk System emulation" }, "bios.min": { - "hash": "1e4fb124a3a886865acb574f388c803d", - "system": "Nintendo Pokemon Mini", - "description": "Pokémon Mini BIOS - Optional" + "md5": "1e4fb124a3a886865acb574f388c803d", + "system": "pokemini", + "description": "Pokémon Mini BIOS" }, "prod.keys": { - "system": "Nintendo Switch", + "system": "switch", "description": "A file for Switch emulation in Ryujinx", - "required" : "required" + "required": "required", + "path": "switch" }, "title.keys": { - "system": "Nintendo Switch", + "system": "switch", "description": "A file for Switch emulation in Ryujinx", - "required" : "required" + "required": "required", + "path": "switch" }, "pico8": { "system": "PICO-8", "description": "The PICO-8 executable", - "required" : "required" + "required": "required" }, "pico8.dat": { "system": "PICO-8", "description": "A PICO-8 system file", - "required" : "required" + "required": "required" }, "pico8_dyn": { "system": "PICO-8", "description": "A PICO-8 system file", - "required" : "required" + "required": "required" }, "bios_CD_E.bin": { - "hash": "e66fa1dc5820d254611fdcdba0662372", - "system": "Sega CD", + "md5": "e66fa1dc5820d254611fdcdba0662372", + "system": "segacd", "description": "MegaCD EU BIOS", "required": "at least one" }, "bios_CD_U.bin": { - "hash": "2efd74e3232ff260e371b99f84024f7f", - "system": "Sega CD", + "md5": "2efd74e3232ff260e371b99f84024f7f", + "system": "segacd", "description": "SegaCD US BIOS", "required": "at least one" }, "bios_CD_J.bin": { - "hash": "278a9397d192149e84e820ac621a8edd", - "system": "Sega CD", + "md5": "278a9397d192149e84e820ac621a8edd", + "system": "segacd", "description": "MegaCD JP BIOS", "required": "at least one" }, "dc_boot.bin": { - "hash": "e10c53c2f8b90bab96ead2d368858623", - "system": "Sega Dreamcast", + "md5": "e10c53c2f8b90bab96ead2d368858623", + "system": "dreamcast", "description": "Dreamcast BIOS", - "required" : "required" + "path": "dc", + "required": "required" }, "naomi.zip": { - "hash": "0ea6d3650ce4a7608a589e5df21a1f2f", - "system": "Sega Dreamcast", - "description": "Naomi BIOS" + "md5": "0ea6d3650ce4a7608a589e5df21a1f2f", + "system": "dreamcast", + "description": "Naomi BIOS", + "path": "dc" }, "naomi2.zip": { - "hash": "9b85e0de6ef359e5006c9b79a5a266b0", - "system": "Sega Dreamcast", - "description": "Naomi BIOS" + "md5": "9b85e0de6ef359e5006c9b79a5a266b0", + "system": "dreamcast", + "description": "Naomi BIOS", + "path": "dc" }, "naomi_boot.bin": { - "hash": "96cb91c4a0bedd86e5a6965cfe6c0148", - "system": "Sega Dreamcast", - "description": "Naomi BIOS" + "md5": "96cb91c4a0bedd86e5a6965cfe6c0148", + "system": "dreamcast", + "description": "Naomi BIOS", + "path": "dc" }, "hod2bios.zip": { - "hash": "629bb0552463ba116ccf23d9a468a9f0", - "system": "Sega Dreamcast", - "description": "Naomi The House of the Dead 2 BIOS" + "md5": "629bb0552463ba116ccf23d9a468a9f0", + "system": "dreamcast", + "description": "Naomi The House of the Dead 2 BIOS", + "path": "dc" }, "f355dlx.zip": { - "hash": "4b5bb177cbd760477598f85531dbe7fd", - "system": "Sega Dreamcast", - "description": "Naomi Ferrari F355 Challenge Deluxe BIOS" + "md5": "4b5bb177cbd760477598f85531dbe7fd", + "system": "dreamcast", + "description": "Naomi Ferrari F355 Challenge Deluxe BIOS", + "path": "dc" }, "f355bios.zip": { - "hash": "882f2c1cf8ec030955c48fe6aa6929ea", - "system": "Sega Dreamcast", - "description": "Naomi Ferrari F355 Challenge Twin/Deluxe BIOS" + "md5": "882f2c1cf8ec030955c48fe6aa6929ea", + "system": "dreamcast", + "description": "Naomi Ferrari F355 Challenge Twin/Deluxe BIOS", + "path": "dc" }, "airlbios.zip": { - "hash": "09ef4b8dea6cd8db2de1c13d510a6a87", - "system": "Sega Dreamcast", - "description": "Naomi Airline Pilots Deluxe BIOS" + "md5": "09ef4b8dea6cd8db2de1c13d510a6a87", + "system": "dreamcast", + "description": "Naomi Airline Pilots Deluxe BIOS", + "path": "dc" }, "awbios.zip": { - "hash": "b2f122e091da223beb824efafc3d6a36", - "system": "Sega Dreamcast", + "md5": "b2f122e091da223beb824efafc3d6a36", + "system": "arcade", "description": "Naomi Atomiswave BIOS" }, "bios.sms": { - "hash": "840481177270d5642a14ca71ee72844c", - "system": "Sega Master System / GameGear", - "description": "Master System BIOS" + "md5": "840481177270d5642a14ca71ee72844c", + "system": "mastersystem", + "description": "SEGA Master System BIOS" + }, + "bios.gg": { + "md5": "672e104c3be3a238301aceffc3b23fd6", + "system": "gamegear", + "description": "SEGA Game Gear BIOS" }, "BIOS.col": { - "hash": "2c66f5911e5b42b8ebe113403548eee7", - "system": "Sega Master System / GameGear", + "md5": "2c66f5911e5b42b8ebe113403548eee7", + "system": [ + "mastersystem", + "gamegear" + ], "description": "Colecovision BIOS" }, "sega_101.bin": { - "hash": "85ec9ca47d8f6807718151cbcca8b964", - "system": "Sega Saturn", + "md5": "85ec9ca47d8f6807718151cbcca8b964", + "system": [ + "saturn", + "saturnjp" + ], "description": "Saturn JP BIOS", "required": "at least one" }, "mpr-17933.bin": { - "hash": "3240872c70984b6cbfda1586cab68dbe", - "system": "Sega Saturn", - "description": "Saturn US.mdEU BIOS", + "md5": "3240872c70984b6cbfda1586cab68dbe", + "system": [ + "saturn", + "saturnjp" + ], + "description": "Saturn US BIOS", "required": "at least one" }, "mpr-18811-mx.ic1": { - "hash": "255113ba943c92a54facd25a10fd780c", - "system": "Sega Saturn", + "md5": "255113ba943c92a54facd25a10fd780c", + "system": [ + "saturn", + "saturnjp" + ], "description": "The King of Fighters 95 ROM Cartridge (Required for this game)" }, "mpr-19367-mx.ic1": { - "hash": "1cd19988d1d72a3e7caa0b73234c96b4", - "system": "Sega Saturn", + "md5": "1cd19988d1d72a3e7caa0b73234c96b4", + "system": [ + "saturn", + "saturnjp" + ], "description": "Ultraman: Hikari no Kyojin Densetsu ROM Cartridge (Required for this game)" }, "iplrom.dat": { - "hash": "7fd4caabac1d9169e289f0f7bbf71d8e", - "system": "Sharp X68000", + "md5": "7fd4caabac1d9169e289f0f7bbf71d8e", + "system": "x68000", "description": "X68000 BIOS", - "required" : "required" + "required": "required" }, "cgrom.dat": { - "hash": "cb0a5cfcf7247a7eab74bb2716260269", - "system": "Sharp X68000", + "md5": "cb0a5cfcf7247a7eab74bb2716260269", + "system": "x68000", "description": "Font file", - "required" : "required" + "required": "required" }, "iplrom30.dat": { - "hash": "f373003710ab4322642f527f567e020a", - "system": "Sharp X68000", + "md5": "f373003710ab4322642f527f567e020a", + "system": "x68000", "description": "X68000 BIOS 2" }, "iplromco.dat": { - "hash": "cc78d4f4900f622bd6de1aed7f52592f", - "system": "Sharp X68000", + "md5": "cc78d4f4900f622bd6de1aed7f52592f", + "system": "x68000", "description": "X68000 BIOS 3" }, "iplromxv.dat": { - "hash": "0617321daa182c3f3d6f41fd02fb3275", - "system": "Sharp X68000", + "md5": "0617321daa182c3f3d6f41fd02fb3275", + "system": "x68000", "description": "X68000 BIOS 4" }, "psxonpsp660.bin": { - "hash": "c53ca5908936d412331790f4426c6c33", - "system": "Sony PSX", + "md5": "c53ca5908936d412331790f4426c6c33", + "system": "psx", "description": "PS1 BIOS from PSP", "required": "at least one" }, "scph5500.bin": { - "hash": "8dd7d5296a650fac7319bce665a6a53c", - "system": "Sony PSX", + "md5": "8dd7d5296a650fac7319bce665a6a53c", + "system": "psx", "description": "PS1 JP BIOS", "required": "at least one" }, "scph5501.bin": { - "hash": "490f666e1afb15b7362b406ed1cea246", - "system": "Sony PSX", + "md5": "490f666e1afb15b7362b406ed1cea246", + "system": "psx", "description": "PS1 US BIOS", "required": "at least one" }, "scph5502.bin": { - "hash": "32736f17079d0b2b7024407c39bd3050", - "system": "Sony PSX", + "md5": "32736f17079d0b2b7024407c39bd3050", + "system": "psx", "description": "PS1 EU BIOS", "required": "at least one" }, "scph7001.bin": { - "hash": "1e68c231d0896b7eadcad1d7d8e76129", - "system": "Sony PSX", + "md5": "1e68c231d0896b7eadcad1d7d8e76129", + "system": "psx", "description": "PS1 BIOS", "required": "at least one" }, "scph7002.bin": { - "hash": "b9d9a0286c33dc6b7237bb13cd46fdee", - "system": "Sony PSX", + "md5": "b9d9a0286c33dc6b7237bb13cd46fdee", + "system": "psx", "description": "PS1 BIOS", "required": "at least one" }, "scph7003.bin": { - "hash": "490f666e1afb15b7362b406ed1cea246", - "system": "Sony PSX", + "md5": "490f666e1afb15b7362b406ed1cea246", + "system": "psx", "description": "PS1 BIOS", "required": "at least one" }, "scph7502.bin": { - "hash": "b9d9a0286c33dc6b7237bb13cd46fdee", - "system": "Sony PSX", + "md5": "b9d9a0286c33dc6b7237bb13cd46fdee", + "system": "psx", "description": "PS1 BIOS", "required": "at least one" }, "scph9002(7502).bin": { - "hash": "b9d9a0286c33dc6b7237bb13cd46fdee", - "system": "Sony PSX", + "md5": "b9d9a0286c33dc6b7237bb13cd46fdee", + "system": "psx", "description": "PS1 BIOS", "required": "at least one" }, "ps1_rom.bin": { - "hash": "81bbe60ba7a3d1cea1d48c14cbcc647b", - "system": "Sony PSX", + "md5": "81bbe60ba7a3d1cea1d48c14cbcc647b", + "system": "psx", "description": "PS1 BIOS", "required": "at least one" }, "ps2-0200a-20040614.bin": { - "hash": "d333558cc14561c1fdc334c75d5f37b7", - "system": "Sony PS2", + "md5": "d333558cc14561c1fdc334c75d5f37b7", + "system": "ps2", "description": "PS2 US BIOS", "required": "at least one" }, "ps2-0200e-20040614.bin": { - "hash": "dc752f160044f2ed5fc1f4964db2a095", - "system": "Sony PS2", + "md5": "dc752f160044f2ed5fc1f4964db2a095", + "system": "ps2", "description": "PS2 EU BIOS", "required": "at least one" }, "ps2-0200j-20040614.bin": { - "hash": "0eee5d1c779aa50e94edd168b4ebf42e", - "system": "Sony PS2", + "md5": "0eee5d1c779aa50e94edd168b4ebf42e", + "system": "ps2", "description": "PS2 JP BIOS", "required": "at least one" }, "128p-0.rom": { - "hash": "a249565f03b98d004ee7f019570069cd", - "system": "ZX Spectrum", + "md5": "a249565f03b98d004ee7f019570069cd", + "system": "zxspectrum", "description": "Pentagon 128K/512K/1024 ROM", - "required" : "required" + "required": "required" }, "128p-1.rom": { - "hash": "6e09e5d3c4aef166601669feaaadc01c", - "system": "ZX Spectrum", + "md5": "6e09e5d3c4aef166601669feaaadc01c", + "system": "zxspectrum", "description": "Pentagon 128K/512K/1024 ROM", - "required" : "required" + "required": "required" }, "trdos.rom": { - "hash": "0da70a5d2a0e733398e005b96b7e4ba6", - "system": "ZX Spectrum", + "md5": "0da70a5d2a0e733398e005b96b7e4ba6", + "system": "zxspectrum", "description": "Pentagon 128K/512K/1024 ROM", - "required" : "required" + "required": "required" }, "gluck.rom": { - "hash": "d5869034604dbfd2c1d54170e874fd0a", - "system": "ZX Spectrum", + "md5": "d5869034604dbfd2c1d54170e874fd0a", + "system": "zxspectrum", "description": "Pentagon 512K/1024 ROM", - "required" : "required" + "required": "required" }, "256s-0.rom": { - "hash": "b9fda5b6a747ff037365b0e2d8c4379a", - "system": "ZX Spectrum", + "md5": "b9fda5b6a747ff037365b0e2d8c4379a", + "system": "zxspectrum", "description": "Scorpion 256K ROM", - "required" : "required" + "required": "required" }, "256s-1.rom": { - "hash": "643861ad34831b255bf2eb64e8b6ecb8", - "system": "ZX Spectrum", + "md5": "643861ad34831b255bf2eb64e8b6ecb8", + "system": "zxspectrum", "description": "Scorpion 256K ROM", - "required" : "required" + "required": "required" }, "256s-2.rom": { - "hash": "d8ad507b1c915a9acfe0d73957082926", - "system": "ZX Spectrum", + "md5": "d8ad507b1c915a9acfe0d73957082926", + "system": "zxspectrum", "description": "Scorpion 256K ROM", - "required" : "required" + "required": "required" }, "256s-3.rom": { - "hash": "ce0723f9bc02f4948c15d3b3230ae831", - "system": "ZX Spectrum", + "md5": "ce0723f9bc02f4948c15d3b3230ae831", + "system": "zxspectrum", "description": "Scorpion 256K ROM", - "required" : "required" + "required": "required" } } } From 85520200621d7067a78b201174503be9faa34218 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 22:58:35 +0900 Subject: [PATCH 06/15] FEATURES: fmt [skip ci] --- .../retrodeck/reference_lists/features.json | 2187 ++++++++--------- 1 file changed, 1093 insertions(+), 1094 deletions(-) diff --git a/config/retrodeck/reference_lists/features.json b/config/retrodeck/reference_lists/features.json index 76db71e6..90014478 100644 --- a/config/retrodeck/reference_lists/features.json +++ b/config/retrodeck/reference_lists/features.json @@ -1,1105 +1,1104 @@ { - "about_links": { - "rd_changelog": { - "description": "Opens the RetroDECK change log in your default browser", - "name": "Changelog", - "url": "https://retrodeck.readthedocs.io/en/latest/wiki_rd_versions/version-history/", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" - }, - "rd_contactus": { - "description": "Opens the RetroDECK contact us section in your default browser", - "name": "Contact us", - "url": "https://github.com/XargonWan/RetroDECK", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" - }, - "rd_credits": { - "description": "Opens the RetroDECK Credits in your default browser", - "name": "Credits", - "url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" - }, - "rd_donate": { - "description": "Opens Donations page in your default browser", - "name": "Donate", - "url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" - }, - "rd_licenses": { - "description": "Opens the RetroDECK licenses in your default browser", - "name": "Licences", - "url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" - }, - "rd_web": { - "description": "Opens the RetroDECK Website in your default browser", - "name": "Website", - "url": "https://retrodeck.net/", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" - }, - "rd_wiki": { - "description": "Opens the RetroDECK Wiki in your default browser", - "name": "Wiki", - "url": "https://retrodeck.readthedocs.io/en/latest/", - "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + "about_links": { + "rd_changelog": { + "description": "Opens the RetroDECK change log in your default browser", + "name": "Changelog", + "url": "https://retrodeck.readthedocs.io/en/latest/wiki_rd_versions/version-history/", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + }, + "rd_contactus": { + "description": "Opens the RetroDECK contact us section in your default browser", + "name": "Contact us", + "url": "https://github.com/XargonWan/RetroDECK", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + }, + "rd_credits": { + "description": "Opens the RetroDECK Credits in your default browser", + "name": "Credits", + "url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + }, + "rd_donate": { + "description": "Opens Donations page in your default browser", + "name": "Donate", + "url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + }, + "rd_licenses": { + "description": "Opens the RetroDECK licenses in your default browser", + "name": "Licences", + "url": "https://retrodeck.readthedocs.io/en/latest/wiki_credits/donations-licenses/", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + }, + "rd_web": { + "description": "Opens the RetroDECK Website in your default browser", + "name": "Website", + "url": "https://retrodeck.net/", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + }, + "rd_wiki": { + "description": "Opens the RetroDECK Wiki in your default browser", + "name": "Wiki", + "url": "https://retrodeck.readthedocs.io/en/latest/", + "icon": "res://assets/icons/pixelitos/128/internet-web-browser.png" + } + }, + "finit_default_options": { + "rd_controller_profile": { + "name": "RetroDECK Steam Controller Profiles Install", + "description": "Install RetroDECK Steam Input profiles to Steam - Recommended", + "enabled": true + }, + "rpcs3_firmware": { + "name": "RPCS3 Firmware Install", + "description": "Install firmware needed for PS3 emulation", + "enabled": false + }, + "vita3k_firmware": { + "name": "Vita3K Firmware Install", + "description": "Install firmware needed for Vita3K emulation", + "enabled": false + } + }, + "splash_screens": { + "xmas": { + "start_date": "1201", + "end_date": "1231", + "start_time": "0000", + "end_time": "2359", + "filename": "rd-xmas-splash.svg" + }, + "lunar_dragon": { + "start_date": "0209", + "end_date": "0212", + "start_time": "0000", + "end_time": "2359", + "filename": "rd-lunar-dragon-splash.svg" + }, + "valentines_day": { + "start_date": "0214", + "end_date": "0214", + "start_time": "0001", + "end_time": "2359", + "filename": "rd-valentines-splash.svg" + }, + "retrodeck_birthday": { + "start_date": "0304", + "end_date": "0304", + "start_time": "0000", + "end_time": "2359", + "filename": "rd-gm-bday-splash.svg" + }, + "st_patricks_day": { + "start_date": "0317", + "end_date": "0317", + "start_time": "0000", + "end_time": "2359", + "filename": "rd-stpatricks-splash.svg" + }, + "kodomo_golden_week": { + "start_date": "0429", + "end_date": "0505", + "start_time": "0000", + "end_time": "2359", + "filename": "rd-kodomo-golden.svg" + }, + "tanabata": { + "start_date": "0707", + "end_date": "0707", + "start_time": "0000", + "end_time": "2359", + "filename": "tanabata.svg" + }, + "mountain_day": { + "start_date": "0811", + "end_date": "0811", + "start_time": "0000", + "end_time": "2359", + "filename": "placeholder.svg" + }, + "obon": { + "start_date": "0813", + "end_date": "0816", + "start_time": "0000", + "end_time": "2359", + "filename": "placeholder.svg" + } + }, + "incompatible_presets": { + "borders": "widescreen" + }, + "helper_files": { + "dolphin_mods": { + "filename": "how-to-install-dolphin-mods.txt", + "location": "$mods_folder/Dolphin" + }, + "primehack_mods": { + "filename": "how-to-install-primehack-mods.txt", + "location": "$mods_folder/Primehack" + }, + "mesen_textures": { + "filename": "how-to-install-Mesen-textures.txt", + "location": "$texture_packs_folder/RetroArch-Mesen" + }, + "ppsspp_textures": { + "filename": "how-to-install-PPSSPP-textures.txt", + "location": "$texture_packs_folder/PPSSPP" + }, + "pcsx2_textures": { + "filename": "how-to-install-PCSX2-textures.txt", + "location": "$texture_packs_folder/PCSX2" + }, + "mupen64plus_cache_textures": { + "filename": "how-to-install-Mupen64Plus-textures.txt", + "location": "$texture_packs_folder/RetroArch-Mupen64Plus/cache" + }, + "mupen64plus_hires_textures": { + "filename": "how-to-install-Mupen64Plus-textures.txt", + "location": "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" + }, + "duckstation_textures": { + "filename": "how-to-install-Duckstation-textures.txt", + "location": "$texture_packs_folder/Duckstation" + }, + "psvita_games": { + "filename": "how-to-install-psvita-games.txt", + "location": "$roms_folder/psvita" + }, + "ryujinx_firmware": { + "filename": "Install-firmware-through-Ryujinx.txt", + "location": "$bios_folder/switch/firmware" + } + }, + "compression_targets": { + "chd": [ + "3do", + "amigacd32", + "dreamcast", + "megacd", + "neogeocd", + "pcenginecd", + "pcfx", + "psp", + "psx", + "ps2", + "saturn", + "saturnjp", + "segacd", + "tg-cd" + ], + "rvz": [ + "gc", + "wii" + ], + "zip": [ + "atari2600", + "atari5200", + "atari7800", + "atari800", + "atarijaguar", + "atarilynx", + "atarist", + "gamegear", + "gb", + "gba", + "gbc", + "genesis", + "mastersystem", + "n64", + "nds", + "nes", + "ngp", + "ngpc", + "sega32x", + "sega32xjp", + "sega32xna", + "snes", + "snesna", + "tg16" + ] + }, + "zip_compressable_extensions": [ + ".32x", + ".68k", + ".NDS", + ".a26", + ".a52", + ".a78", + ".abs", + ".agb", + ".atr", + ".atx", + ".bin", + ".bml", + ".bms", + ".bs", + ".bsx", + ".cas", + ".cdm", + ".cgb", + ".cof", + ".col", + ".dim", + ".dmg", + ".dx2", + ".fds", + ".fig", + ".gb", + ".gba", + ".gbc", + ".gd3", + ".gd7", + ".gen", + ".gg", + ".ipf", + ".j64", + ".jag", + ".lnx", + ".md", + ".mdx", + ".mgd", + ".msa", + ".nds", + ".nes", + ".ngc", + ".o", + ".pce", + ".prg", + ".rom", + ".sfc", + ".sg", + ".sgb", + ".sgd", + ".smc", + ".smd", + ".sms", + ".st", + ".st", + ".stx", + ".swc", + ".unf", + ".unif", + ".xex", + ".xfd", + ".z64" + ], + "system": { + "3do": { + "name": "3DO Interactive Multiplayer" + }, + "adam": { + "name": "Coleco Adam" + }, + "amiga": { + "name": "Commodore Amiga" + }, + "amiga1200": { + "name": "Commodore Amiga 1200" + }, + "amiga600": { + "name": "Commodore Amiga 600" + }, + "amigacd32": { + "name": "Commodore Amiga CD32" + }, + "amstradcpc": { + "name": "Amstrad CPC" + }, + "apple2": { + "name": "Apple II" + }, + "apple2gs": { + "name": "Apple IIGS" + }, + "arcade": { + "name": "Arcade" + }, + "arcadia": { + "name": "Emerson Arcadia 2001" + }, + "archimedes": { + "name": "Acorn Archimedes" + }, + "arduboy": { + "name": "Arduboy Miniature Game System" + }, + "astrocde": { + "name": "Bally Astrocade" + }, + "atari2600": { + "name": "Atari 2600" + }, + "atari5200": { + "name": "Atari 5200" + }, + "atari7800": { + "name": "Atari 7800 ProSystem" + }, + "atari800": { + "name": "Atari 800" + }, + "atarijaguar": { + "name": "Atari Jaguar" + }, + "atarilynx": { + "name": "Atari Lynx" + }, + "atarist": { + "name": "Atari ST" + }, + "atarixe": { + "name": "Atari XE" + }, + "atomiswave": { + "name": "Sammy Corporation Atomiswave" + }, + "bbcmicro": { + "name": "Acorn Computers BBC Micro" + }, + "c64": { + "name": "Commodore 64" + }, + "cdimono1": { + "name": "Philips CD-i" + }, + "cdtv": { + "name": "Commodore CDTV" + }, + "chailove": { + "name": "ChaiLove Game Engine" + }, + "channelf": { + "name": "Fairchild Channel F" + }, + "colecovision": { + "name": "Coleco ColecoVision" + }, + "consolearcade": { + "name": "Console Arcade Systems" + }, + "cps": { + "name": "Capcom Play System" + }, + "cps1": { + "name": "Capcom Play System I" + }, + "cps2": { + "name": "Capcom Play System II" + }, + "cps3": { + "name": "Capcom Play System III" + }, + "crvision": { + "name": "VTech CreatiVision" + }, + "daphne": { + "name": "Daphne Arcade LaserDisc Emulator" + }, + "desktop": { + "name": "Desktop Applications" + }, + "doom": { + "name": "Doom" + }, + "dos": { + "name": "DOS (PC)" + }, + "dreamcast": { + "name": "Sega Dreamcast" + }, + "dc": { + "name": "Sega Dreamcast" + }, + "easyrpg": { + "name": "EasyRPG Game Engine" + }, + "electron": { + "name": "Acorn Electron" + }, + "emulators": { + "name": "Emulators" + }, + "famicom": { + "name": "Nintendo Family Computer" + }, + "fba": { + "name": "FinalBurn Alpha" + }, + "fbneo": { + "name": "FinalBurn Neo" + }, + "fds": { + "name": "Nintendo Famicom Disk System" + }, + "fm7": { + "name": "Fujitsu FM-7" + }, + "fmtowns": { + "name": "Fujitsu FM Towns" + }, + "gamate": { + "name": "Bit Corporation Gamate" + }, + "gameandwatch": { + "name": "Nintendo Game and Watch" + }, + "gamecom": { + "name": "Tiger Electronics Game.com" + }, + "gamegear": { + "name": "Sega Game Gear" + }, + "gg": { + "name": "Sega Game Gear" + }, + "gb": { + "name": "Nintendo Game Boy" + }, + "gba": { + "name": "Nintendo Game Boy Advance" + }, + "gbc": { + "name": "Nintendo Game Boy Color" + }, + "gc": { + "name": "Nintendo GameCube" + }, + "genesis": { + "name": "Sega Genesis" + }, + "gmaster": { + "name": "Hartung Game Master" + }, + "gx4000": { + "name": "Amstrad GX4000" + }, + "intellivision": { + "name": "Mattel Electronics Intellivision" + }, + "j2me": { + "name": "Java 2 Micro Edition (J2ME)" + }, + "laserdisc": { + "name": "LaserDisc Games" + }, + "lcdgames": { + "name": "LCD Handheld Games" + }, + "lowresnx": { + "name": "LowRes NX Fantasy Console" + }, + "lutris": { + "name": "Lutris Open Gaming Platform" + }, + "lutro": { + "name": "Lutro Game Engine" + }, + "macintosh": { + "name": "Apple Macintosh" + }, + "mame": { + "name": "Multiple Arcade Machine Emulator" + }, + "mastersystem": { + "name": "Sega Master System" + }, + "megacd": { + "name": "Sega Mega-CD" + }, + "megacdjp": { + "name": "Sega Mega-CD (Japan)" + }, + "megadrive": { + "name": "Sega Mega Drive" + }, + "megaduck": { + "name": "Creatronic Mega Duck" + }, + "mess": { + "name": "Multi Emulator Super System" + }, + "model2": { + "name": "Sega Model 2" + }, + "moto": { + "name": "Thomson MO/TO Series" + }, + "msx": { + "name": "MSX" + }, + "msx1": { + "name": "MSX1" + }, + "msx2": { + "name": "MSX2" + }, + "msxturbor": { + "name": "MSX Turbo R" + }, + "mugen": { + "name": "M.U.G.E.N Game Engine" + }, + "multivision": { + "name": "Othello Multivision" + }, + "n3ds": { + "name": "Nintendo 3DS" + }, + "n64": { + "name": "Nintendo 64" + }, + "n64dd": { + "name": "Nintendo 64DD" + }, + "naomi": { + "name": "Sega NAOMI" + }, + "naomi2": { + "name": "Sega NAOMI 2" + }, + "naomigd": { + "name": "Sega NAOMI GD-ROM" + }, + "nds": { + "name": "Nintendo DS" + }, + "neogeo": { + "name": "SNK Neo Geo" + }, + "neogeocd": { + "name": "SNK Neo Geo CD" + }, + "neogeocdjp": { + "name": "SNK Neo Geo CD (Japan)" + }, + "nes": { + "name": "Nintendo Entertainment System" + }, + "ngp": { + "name": "SNK Neo Geo Pocket" + }, + "ngpc": { + "name": "SNK Neo Geo Pocket Color" + }, + "odyssey2": { + "name": "Magnavox Odyssey 2" + }, + "openbor": { + "name": "OpenBOR Game Engine" + }, + "palm": { + "name": "Palm OS" + }, + "pc": { + "name": "IBM PC" + }, + "pc88": { + "name": "NEC PC-8800 Series" + }, + "pc98": { + "name": "NEC PC-9800 Series" + }, + "pcarcade": { + "name": "PC Arcade Systems" + }, + "pcengine": { + "name": "NEC PC Engine" + }, + "pcenginecd": { + "name": "NEC PC Engine CD" + }, + "pcfx": { + "name": "NEC PC-FX" + }, + "pico8": { + "name": "PICO-8 Fantasy Console" + }, + "plus4": { + "name": "Commodore Plus/4" + }, + "pokemini": { + "name": "Nintendo Pokémon Mini" + }, + "ports": { + "name": "Ports" + }, + "ps2": { + "name": "Sony PlayStation 2" + }, + "ps3": { + "name": "Sony PlayStation 3" + }, + "psp": { + "name": "Sony PlayStation Portable" + }, + "psvita": { + "name": "Sony PlayStation Vita" + }, + "psx": { + "name": "Sony PlayStation" + }, + "pv1000": { + "name": "Casio PV-1000" + }, + "quake": { + "name": "Quake" + }, + "satellaview": { + "name": "Nintendo Satellaview" + }, + "saturn": { + "name": "Sega Saturn" + }, + "saturnjp": { + "name": "Sega Saturn (Japan)" + }, + "scummvm": { + "name": "ScummVM Game Engine" + }, + "scv": { + "name": "Epoch Super Cassette Vision" + }, + "sega32x": { + "name": "Sega Mega Drive 32X" + }, + "sega32xjp": { + "name": "Sega Super 32X (Japan)" + }, + "sega32xna": { + "name": "Sega Genesis 32X" + }, + "segacd": { + "name": "Sega CD" + }, + "sfc": { + "name": "Nintendo SFC (Super Famicom)" + }, + "sg-1000": { + "name": "Sega SG-1000" + }, + "sgb": { + "name": "Nintendo Super Game Boy" + }, + "snes": { + "name": "Nintendo SNES (Super Nintendo)" + }, + "snesna": { + "name": "Nintendo SNES (Super Nintendo)" + }, + "solarus": { + "name": "Solarus Game Engine" + }, + "spectravideo": { + "name": "Spectravideo" + }, + "stv": { + "name": "Sega Titan Video Game System" + }, + "sufami": { + "name": "Bandai SuFami Turbo" + }, + "supergrafx": { + "name": "NEC SuperGrafx" + }, + "supervision": { + "name": "Watara Supervision" + }, + "supracan": { + "name": "Funtech Super A'Can" + }, + "switch": { + "name": "Nintendo Switch" + }, + "tg-cd": { + "name": "NEC TurboGrafx-CD" + }, + "tg16": { + "name": "NEC TurboGrafx-16" + }, + "ti99": { + "name": "Texas Instruments TI-99" + }, + "tic80": { + "name": "TIC-80 Fantasy Computer" + }, + "to8": { + "name": "Thomson TO8" + }, + "uzebox": { + "name": "Uzebox Open Source Console" + }, + "vectrex": { + "name": "GCE Vectrex" + }, + "vic20": { + "name": "Commodore VIC-20" + }, + "videopac": { + "name": "Philips Videopac G7000" + }, + "virtualboy": { + "name": "Nintendo Virtual Boy" + }, + "vsmile": { + "name": "VTech V.Smile" + }, + "wasm4": { + "name": "WASM-4 Fantasy Console" + }, + "wii": { + "name": "Nintendo Wii" + }, + "wiiu": { + "name": "Nintendo Wii U" + }, + "windows": { + "name": "Microsoft Windows" + }, + "windows3x": { + "name": "Microsoft Windows 3.x" + }, + "windows9x": { + "name": "Microsoft Windows 9x" + }, + "wonderswan": { + "name": "Bandai WonderSwan" + }, + "wonderswancolor": { + "name": "Bandai WonderSwan Color" + }, + "x1": { + "name": "Sharp X1" + }, + "x68000": { + "name": "Sharp X68000" + }, + "xbox": { + "name": "Microsoft Xbox" + }, + "zx81": { + "name": "Sinclair ZX81" + }, + "zxspectrum": { + "name": "Sinclair ZX Spectrum" + } + }, + "emulator": { + "retroarch": { + "description": "RetroArch (Multi-emulator Frontend)", + "name": "RetroArch", + "launch": "retroarch", + "properties": [ + { + "cheevos": true, + "cheevos_hardcore": true, + "quick_resume": true } - }, - "finit_default_options": { - "rd_controller_profile": { - "name": "RetroDECK Steam Controller Profiles Install", - "description": "Install RetroDECK Steam Input profiles to Steam - Recommended", - "enabled": true - }, - "rpcs3_firmware": { - "name": "RPCS3 Firmware Install", - "description": "Install firmware needed for PS3 emulation", - "enabled": false - }, - "vita3k_firmware": { - "name": "Vita3K Firmware Install", - "description": "Install firmware needed for Vita3K emulation", - "enabled": false - } - }, - "splash_screens": { - "xmas": { - "start_date": "1201", - "end_date": "1231", - "start_time": "0000", - "end_time": "2359", - "filename": "rd-xmas-splash.svg" - }, - "lunar_dragon": { - "start_date": "0209", - "end_date": "0212", - "start_time": "0000", - "end_time": "2359", - "filename": "rd-lunar-dragon-splash.svg" - }, - "valentines_day": { - "start_date": "0214", - "end_date": "0214", - "start_time": "0001", - "end_time": "2359", - "filename": "rd-valentines-splash.svg" - }, - "retrodeck_birthday": { - "start_date": "0304", - "end_date": "0304", - "start_time": "0000", - "end_time": "2359", - "filename": "rd-gm-bday-splash.svg" - }, - "st_patricks_day": { - "start_date": "0317", - "end_date": "0317", - "start_time": "0000", - "end_time": "2359", - "filename": "rd-stpatricks-splash.svg" - }, - "kodomo_golden_week": { - "start_date": "0429", - "end_date": "0505", - "start_time": "0000", - "end_time": "2359", - "filename": "rd-kodomo-golden.svg" - }, - "tanabata": { - "start_date": "0707", - "end_date": "0707", - "start_time": "0000", - "end_time": "2359", - "filename": "tanabata.svg" - }, - "mountain_day": { - "start_date": "0811", - "end_date": "0811", - "start_time": "0000", - "end_time": "2359", - "filename": "placeholder.svg" - }, - "obon": { - "start_date": "0813", - "end_date": "0816", - "start_time": "0000", - "end_time": "2359", - "filename": "placeholder.svg" - } - }, - "incompatible_presets": { - "borders": "widescreen" - }, - "helper_files": { - "dolphin_mods": { - "filename": "how-to-install-dolphin-mods.txt", - "location": "$mods_folder/Dolphin" - }, - "primehack_mods": { - "filename": "how-to-install-primehack-mods.txt", - "location": "$mods_folder/Primehack" - }, - "mesen_textures": { - "filename": "how-to-install-Mesen-textures.txt", - "location": "$texture_packs_folder/RetroArch-Mesen" - }, - "ppsspp_textures": { - "filename": "how-to-install-PPSSPP-textures.txt", - "location": "$texture_packs_folder/PPSSPP" - }, - "pcsx2_textures": { - "filename": "how-to-install-PCSX2-textures.txt", - "location": "$texture_packs_folder/PCSX2" - }, - "mupen64plus_cache_textures": { - "filename": "how-to-install-Mupen64Plus-textures.txt", - "location": "$texture_packs_folder/RetroArch-Mupen64Plus/cache" - }, - "mupen64plus_hires_textures": { - "filename": "how-to-install-Mupen64Plus-textures.txt", - "location": "$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture" - }, - "duckstation_textures": { - "filename": "how-to-install-Duckstation-textures.txt", - "location": "$texture_packs_folder/Duckstation" - }, - "psvita_games": { - "filename": "how-to-install-psvita-games.txt", - "location": "$roms_folder/psvita" - }, - "ryujinx_firmware": { - "filename": "Install-firmware-through-Ryujinx.txt", - "location": "$bios_folder/switch/firmware" - } - }, - "compression_targets": { - "chd": [ - "3do", - "amigacd32", - "dreamcast", - "megacd", - "neogeocd", - "pcenginecd", - "pcfx", - "psp", - "psx", - "ps2", - "saturn", - "saturnjp", - "segacd", - "tg-cd" ], - "rvz": [ + "cores": { + "citra_libretro": { + "description": "Nintendo 3DS Libretro Core", + "name": "Citra", + "system": "n3ds", + "properties": [ + { + "abxy_button": true + } + ] + }, + "mame_libretro": { + "description": "MAME: Multiple Arcade Machine Libretro Core", + "name": "MAME", + "system": "arcade", + "properties": [ + { + "tate_mode": true + } + ] + }, + "desmume_libretro": { + "description": "DeSmuME Nintendo DS Libretro Core", + "name": "desmume", + "system": "nds", + "properties": [ + { + "abxy_button": true + } + ] + }, + "melonds_libretro": { + "description": "MelonDS Nintendo DS Libretro Core", + "name": "melonds", + "system": "nds", + "properties": [ + { + "abxy_button": true + } + ] + }, + "swanstation_libretro": { + "name": "SwanStation", + "description": "Swanstation Libretro Core", + "system": "psx", + "properties": [ + { + "widescreen": true, + "borders": true + } + ] + }, + "picodrive_libetro": { + "name": "PicoDrive", + "description": "SEGA MS/MD/CD/32X Libretro Core", + "system": [ + "ms", + "md", + "cd", + "32x" + ], + "properties": [ + { + "widescreen": true, + "borders": true, + "rewind": true + } + ] + }, + "genesisplusgx_libetro": { + "name": "Genesis Plus GX", + "description": "SEGA MS/GG/MD/CD Libretro Core", + "system": [ + "ms", + "gg", + "mc", + "cd" + ], + "properties": [ + { + "widescreen": true, + "borders": true, + "rewind": true + } + ] + }, + "genesisplusgxwide_libetro": { + "name": "Genesis Plus GX Wide", + "description": "SEGA MS/GG/MD/CD Libretro Core for Wide Screen", + "system": [ + "ms", + "gg", + "mc", + "cd" + ], + "properties": [ + { + "widescreen": true, + "rewind": true + } + ] + }, + "mupen64plus-next_libetro": { + "name": "Mupen64Plus-Next", + "description": "Nintendo 64 Libretro Core", + "system": "n64", + "properties": [ + { + "widescreen": true, + "borders": true, + "abxy_button": true + } + ] + }, + "snes9x-current_libetro": { + "name": "Snes9x - Current", + "description": "Super Nintendo Libretro Core", + "system": "snes", + "properties": [ + { + "widescreen": true, + "borders": true, + "rewind": true, + "abxy_button": true + } + ] + }, + "gambatte_libetro": { + "name": "Gambatte", + "description": "Game Boy/Color Libretro Core", + "system": [ + "gb", + "gbc" + ], + "properties": [ + { + "borders": true, + "rewind": true, + "abxy_button": true + } + ] + }, + "mgba_libetro": { + "name": "mGBA", + "description": "Game Boy Advance Libretro Core", + "system": "gba", + "properties": [ + { + "borders": true, + "rewind": true, + "abxy_button": true + } + ] + } + } + }, + "mame": { + "description": "MAME: Multiple Arcade Machine Emulator", + "name": "MAME", + "system": [ + "arcade" + ], + "launch": "mame" + }, + "citra": { + "description": "Citra Nintendo 3DS Emulator (via Ponzu)", + "name": "Citra (via Ponzu)", + "system": "n3ds", + "ponzu": true, + "launch": "citra-qt", + "properties": [ + { + "abxy_button": true, + "ask_to_exit": true + } + ] + }, + "melonds": { + "description": "MelonDS Nintendo DS Emulator", + "name": "melonds", + "system": "nds", + "launch": "MelonDS" + }, + "pcsx2": { + "name": "pcsx2", + "description": "PCSX2 Play Station 2 Emulator", + "system": "ps2", + "launch": "pcsx2-qt", + "properties": [ + { + "ask_to_exit": true, + "cheevos": true + } + ] + }, + "duckstation": { + "name": "Duckstation", + "description": "PlayStation Emulator", + "launch": "duckstation-qt", + "system": "psx", + "properties": [ + { + "ask_to_exit": true, + "cheevos": true + } + ] + }, + "ppsspp": { + "name": "PPSSPP", + "description": "PPSSPP: PlayStation Portable Emulator", + "launch": "PPSSPPSDL", + "system": "psp", + "properties": [ + { + "cheevos": true, + "cheevos_hardcore": true + } + ] + }, + "vita3k": { + "name": "Vita3k", + "description": "Vita3K PSVita Emulator", + "system": "psvita", + "launch": "Vita3K" + }, + "rpcs3": { + "name": "RPCS3", + "description": "RPCS3 PlayStation 3 Emulator", + "system": "ps3", + "launch": "rpcs3", + "properties": [ + { + "ask_to_exit": true + } + ] + }, + "ryujinx": { + "name": "Ryujinx", + "description": "Ryujinx Nintendo Switch Emulator", + "system": "switch", + "launch": "Ryujinx.sh" + }, + "yuzu": { + "name": "Yuzu (via Ponzu)", + "description": "Yuzu Nintendo Switch Emulator (via Ponzu)", + "launch": "Yuzu", + "system": "switch", + "ponzu": true, + "abxy_button": true + }, + "dolphin": { + "name": "Dolphin", + "description": "Dolphin Wii and GameCube Emulator", + "launch": "dolphin-emu-wrapper", + "system": [ "gc", "wii" ], - "zip": [ - "atari2600", - "atari5200", - "atari7800", - "atari800", - "atarijaguar", - "atarilynx", - "atarist", - "gamegear", - "gb", - "gba", - "gbc", - "genesis", - "mastersystem", - "n64", - "nds", - "nes", - "ngp", - "ngpc", - "sega32x", - "sega32xjp", - "sega32xna", - "snes", - "snesna", - "tg16" + "properties": [ + { + "abxy_button": true, + "ask_to_exit": true, + "cheevos": true, + "cheevos_hardcore": true, + "universal_dyn_input": true + } ] }, - "zip_compressable_extensions": [ - ".32x", - ".68k", - ".NDS", - ".a26", - ".a52", - ".a78", - ".abs", - ".agb", - ".atr", - ".atx", - ".bin", - ".bml", - ".bms", - ".bs", - ".bsx", - ".cas", - ".cdm", - ".cgb", - ".cof", - ".col", - ".dim", - ".dmg", - ".dx2", - ".fds", - ".fig", - ".gb", - ".gba", - ".gbc", - ".gd3", - ".gd7", - ".gen", - ".gg", - ".ipf", - ".j64", - ".jag", - ".lnx", - ".md", - ".mdx", - ".mgd", - ".msa", - ".nds", - ".nes", - ".ngc", - ".o", - ".pce", - ".prg", - ".rom", - ".sfc", - ".sg", - ".sgb", - ".sgd", - ".smc", - ".smd", - ".sms", - ".st", - ".st", - ".stx", - ".swc", - ".unf", - ".unif", - ".xex", - ".xfd", - ".z64" - ], - "system": { - "3do": { - "name": "3DO Interactive Multiplayer" - }, - "adam": { - "name": "Coleco Adam" - }, - "amiga": { - "name": "Commodore Amiga" - }, - "amiga1200": { - "name": "Commodore Amiga 1200" - }, - "amiga600": { - "name": "Commodore Amiga 600" - }, - "amigacd32": { - "name": "Commodore Amiga CD32" - }, - "amstradcpc": { - "name": "Amstrad CPC" - }, - "apple2": { - "name": "Apple II" - }, - "apple2gs": { - "name": "Apple IIGS" - }, - "arcade": { - "name": "Arcade" - }, - "arcadia": { - "name": "Emerson Arcadia 2001" - }, - "archimedes": { - "name": "Acorn Archimedes" - }, - "arduboy": { - "name": "Arduboy Miniature Game System" - }, - "astrocde": { - "name": "Bally Astrocade" - }, - "atari2600": { - "name": "Atari 2600" - }, - "atari5200": { - "name": "Atari 5200" - }, - "atari7800": { - "name": "Atari 7800 ProSystem" - }, - "atari800": { - "name": "Atari 800" - }, - "atarijaguar": { - "name": "Atari Jaguar" - }, - "atarilynx": { - "name": "Atari Lynx" - }, - "atarist": { - "name": "Atari ST" - }, - "atarixe": { - "name": "Atari XE" - }, - "atomiswave": { - "name": "Sammy Corporation Atomiswave" - }, - "bbcmicro": { - "name": "Acorn Computers BBC Micro" - }, - "c64": { - "name": "Commodore 64" - }, - "cdimono1": { - "name": "Philips CD-i" - }, - "cdtv": { - "name": "Commodore CDTV" - }, - "chailove": { - "name": "ChaiLove Game Engine" - }, - "channelf": { - "name": "Fairchild Channel F" - }, - "colecovision": { - "name": "Coleco ColecoVision" - }, - "consolearcade": { - "name": "Console Arcade Systems" - }, - "cps": { - "name": "Capcom Play System" - }, - "cps1": { - "name": "Capcom Play System I" - }, - "cps2": { - "name": "Capcom Play System II" - }, - "cps3": { - "name": "Capcom Play System III" - }, - "crvision": { - "name": "VTech CreatiVision" - }, - "daphne": { - "name": "Daphne Arcade LaserDisc Emulator" - }, - "desktop": { - "name": "Desktop Applications" - }, - "doom": { - "name": "Doom" - }, - "dos": { - "name": "DOS (PC)" - }, - "dreamcast": { - "name": "Sega Dreamcast" - }, - "dc": { - "name": "Sega Dreamcast" - }, - "easyrpg": { - "name": "EasyRPG Game Engine" - }, - "electron": { - "name": "Acorn Electron" - }, - "emulators": { - "name": "Emulators" - }, - "famicom": { - "name": "Nintendo Family Computer" - }, - "fba": { - "name": "FinalBurn Alpha" - }, - "fbneo": { - "name": "FinalBurn Neo" - }, - "fds": { - "name": "Nintendo Famicom Disk System" - }, - "fm7": { - "name": "Fujitsu FM-7" - }, - "fmtowns": { - "name": "Fujitsu FM Towns" - }, - "gamate": { - "name": "Bit Corporation Gamate" - }, - "gameandwatch": { - "name": "Nintendo Game and Watch" - }, - "gamecom": { - "name": "Tiger Electronics Game.com" - }, - "gamegear": { - "name": "Sega Game Gear" - }, - "gg": { - "name": "Sega Game Gear" - }, - "gb": { - "name": "Nintendo Game Boy" - }, - "gba": { - "name": "Nintendo Game Boy Advance" - }, - "gbc": { - "name": "Nintendo Game Boy Color" - }, - "gc": { - "name": "Nintendo GameCube" - }, - "genesis": { - "name": "Sega Genesis" - }, - "gmaster": { - "name": "Hartung Game Master" - }, - "gx4000": { - "name": "Amstrad GX4000" - }, - "intellivision": { - "name": "Mattel Electronics Intellivision" - }, - "j2me": { - "name": "Java 2 Micro Edition (J2ME)" - }, - "laserdisc": { - "name": "LaserDisc Games" - }, - "lcdgames": { - "name": "LCD Handheld Games" - }, - "lowresnx": { - "name": "LowRes NX Fantasy Console" - }, - "lutris": { - "name": "Lutris Open Gaming Platform" - }, - "lutro": { - "name": "Lutro Game Engine" - }, - "macintosh": { - "name": "Apple Macintosh" - }, - "mame": { - "name": "Multiple Arcade Machine Emulator" - }, - "mastersystem": { - "name": "Sega Master System" - }, - "megacd": { - "name": "Sega Mega-CD" - }, - "megacdjp": { - "name": "Sega Mega-CD (Japan)" - }, - "megadrive": { - "name": "Sega Mega Drive" - }, - "megaduck": { - "name": "Creatronic Mega Duck" - }, - "mess": { - "name": "Multi Emulator Super System" - }, - "model2": { - "name": "Sega Model 2" - }, - "moto": { - "name": "Thomson MO/TO Series" - }, - "msx": { - "name": "MSX" - }, - "msx1": { - "name": "MSX1" - }, - "msx2": { - "name": "MSX2" - }, - "msxturbor": { - "name": "MSX Turbo R" - }, - "mugen": { - "name": "M.U.G.E.N Game Engine" - }, - "multivision": { - "name": "Othello Multivision" - }, - "n3ds": { - "name": "Nintendo 3DS" - }, - "n64": { - "name": "Nintendo 64" - }, - "n64dd": { - "name": "Nintendo 64DD" - }, - "naomi": { - "name": "Sega NAOMI" - }, - "naomi2": { - "name": "Sega NAOMI 2" - }, - "naomigd": { - "name": "Sega NAOMI GD-ROM" - }, - "nds": { - "name": "Nintendo DS" - }, - "neogeo": { - "name": "SNK Neo Geo" - }, - "neogeocd": { - "name": "SNK Neo Geo CD" - }, - "neogeocdjp": { - "name": "SNK Neo Geo CD (Japan)" - }, - "nes": { - "name": "Nintendo Entertainment System" - }, - "ngp": { - "name": "SNK Neo Geo Pocket" - }, - "ngpc": { - "name": "SNK Neo Geo Pocket Color" - }, - "odyssey2": { - "name": "Magnavox Odyssey 2" - }, - "openbor": { - "name": "OpenBOR Game Engine" - }, - "palm": { - "name": "Palm OS" - }, - "pc": { - "name": "IBM PC" - }, - "pc88": { - "name": "NEC PC-8800 Series" - }, - "pc98": { - "name": "NEC PC-9800 Series" - }, - "pcarcade": { - "name": "PC Arcade Systems" - }, - "pcengine": { - "name": "NEC PC Engine" - }, - "pcenginecd": { - "name": "NEC PC Engine CD" - }, - "pcfx": { - "name": "NEC PC-FX" - }, - "pico8": { - "name": "PICO-8 Fantasy Console" - }, - "plus4": { - "name": "Commodore Plus/4" - }, - "pokemini": { - "name": "Nintendo Pokémon Mini" - }, - "ports": { - "name": "Ports" - }, - "ps2": { - "name": "Sony PlayStation 2" - }, - "ps3": { - "name": "Sony PlayStation 3" - }, - "psp": { - "name": "Sony PlayStation Portable" - }, - "psvita": { - "name": "Sony PlayStation Vita" - }, - "psx": { - "name": "Sony PlayStation" - }, - "pv1000": { - "name": "Casio PV-1000" - }, - "quake": { - "name": "Quake" - }, - "satellaview": { - "name": "Nintendo Satellaview" - }, - "saturn": { - "name": "Sega Saturn" - }, - "saturnjp": { - "name": "Sega Saturn (Japan)" - }, - "scummvm": { - "name": "ScummVM Game Engine" - }, - "scv": { - "name": "Epoch Super Cassette Vision" - }, - "sega32x": { - "name": "Sega Mega Drive 32X" - }, - "sega32xjp": { - "name": "Sega Super 32X (Japan)" - }, - "sega32xna": { - "name": "Sega Genesis 32X" - }, - "segacd": { - "name": "Sega CD" - }, - "sfc": { - "name": "Nintendo SFC (Super Famicom)" - }, - "sg-1000": { - "name": "Sega SG-1000" - }, - "sgb": { - "name": "Nintendo Super Game Boy" - }, - "snes": { - "name": "Nintendo SNES (Super Nintendo)" - }, - "snesna": { - "name": "Nintendo SNES (Super Nintendo)" - }, - "solarus": { - "name": "Solarus Game Engine" - }, - "spectravideo": { - "name": "Spectravideo" - }, - "stv": { - "name": "Sega Titan Video Game System" - }, - "sufami": { - "name": "Bandai SuFami Turbo" - }, - "supergrafx": { - "name": "NEC SuperGrafx" - }, - "supervision": { - "name": "Watara Supervision" - }, - "supracan": { - "name": "Funtech Super A'Can" - }, - "switch": { - "name": "Nintendo Switch" - }, - "tg-cd": { - "name": "NEC TurboGrafx-CD" - }, - "tg16": { - "name": "NEC TurboGrafx-16" - }, - "ti99": { - "name": "Texas Instruments TI-99" - }, - "tic80": { - "name": "TIC-80 Fantasy Computer" - }, - "to8": { - "name": "Thomson TO8" - }, - "uzebox": { - "name": "Uzebox Open Source Console" - }, - "vectrex": { - "name": "GCE Vectrex" - }, - "vic20": { - "name": "Commodore VIC-20" - }, - "videopac": { - "name": "Philips Videopac G7000" - }, - "virtualboy": { - "name": "Nintendo Virtual Boy" - }, - "vsmile": { - "name": "VTech V.Smile" - }, - "wasm4": { - "name": "WASM-4 Fantasy Console" - }, - "wii": { - "name": "Nintendo Wii" - }, - "wiiu": { - "name": "Nintendo Wii U" - }, - "windows": { - "name": "Microsoft Windows" - }, - "windows3x": { - "name": "Microsoft Windows 3.x" - }, - "windows9x": { - "name": "Microsoft Windows 9x" - }, - "wonderswan": { - "name": "Bandai WonderSwan" - }, - "wonderswancolor": { - "name": "Bandai WonderSwan Color" - }, - "x1": { - "name": "Sharp X1" - }, - "x68000": { - "name": "Sharp X68000" - }, - "xbox": { - "name": "Microsoft Xbox" - }, - "zx81": { - "name": "Sinclair ZX81" - }, - "zxspectrum": { - "name": "Sinclair ZX Spectrum" - } - }, - "emulator": { - "retroarch": { - "description": "RetroArch (Multi-emulator Frontend)", - "name": "RetroArch", - "launch": "retroarch", - "properties": [ - { - "cheevos": true, - "cheevos_hardcore": true, - "quick_resume": true - } - ], - "cores": { - "citra_libretro": { - "description": "Nintendo 3DS Libretro Core", - "name": "Citra", - "system": "n3ds", - "properties": [ - { - "abxy_button": true - } - ] - }, - "mame_libretro": { - "description": "MAME: Multiple Arcade Machine Libretro Core", - "name": "MAME", - "system": "arcade", - "properties": [ - { - "tate_mode": true - } - ] - }, - "desmume_libretro": { - "description": "DeSmuME Nintendo DS Libretro Core", - "name": "desmume", - "system": "nds", - "properties": [ - { - "abxy_button": true - } - ] - }, - "melonds_libretro": { - "description": "MelonDS Nintendo DS Libretro Core", - "name": "melonds", - "system": "nds", - "properties": [ - { - "abxy_button": true - } - ] - }, - "swanstation_libretro": { - "name": "SwanStation", - "description": "Swanstation Libretro Core", - "system": "psx", - "properties": [ - { - "widescreen": true, - "borders": true - } - ] - }, - "picodrive_libetro": { - "name": "PicoDrive", - "description": "SEGA MS/MD/CD/32X Libretro Core", - "system": [ - "ms", - "md", - "cd", - "32x" - ], - "properties": [ - { - "widescreen": true, - "borders": true, - "rewind": true - } - ] - }, - "genesisplusgx_libetro": { - "name": "Genesis Plus GX", - "description": "SEGA MS/GG/MD/CD Libretro Core", - "system": [ - "ms", - "gg", - "mc", - "cd" - ], - "properties": [ - { - "widescreen": true, - "borders": true, - "rewind": true - } - ] - }, - "genesisplusgxwide_libetro": { - "name": "Genesis Plus GX Wide", - "description": "SEGA MS/GG/MD/CD Libretro Core for Wide Screen", - "system": [ - "ms", - "gg", - "mc", - "cd" - ], - "properties": [ - { - "widescreen": true, - "rewind": true - } - ] - }, - "mupen64plus-next_libetro": { - "name": "Mupen64Plus-Next", - "description": "Nintendo 64 Libretro Core", - "system": "n64", - "properties": [ - { - "widescreen": true, - "borders": true, - "abxy_button": true - } - ] - }, - "snes9x-current_libetro": { - "name": "Snes9x - Current", - "description": "Super Nintendo Libretro Core", - "system": "snes", - "properties": [ - { - "widescreen": true, - "borders": true, - "rewind": true, - "abxy_button": true - } - ] - }, - "gambatte_libetro": { - "name": "Gambatte", - "description": "Game Boy/Color Libretro Core", - "system": [ - "gb", - "gbc" - ], - "properties": [ - { - "borders": true, - "rewind": true, - "abxy_button": true - } - ] - }, - "mgba_libetro": { - "name": "mGBA", - "description": "Game Boy Advance Libretro Core", - "system": "gba", - "properties": [ - { - "borders": true, - "rewind": true, - "abxy_button": true - } - ] - } + "primehack": { + "name": "PrimeHack", + "description": "A fork of Dolphiin to enhance Metroid Prime experience", + "launch": "primehack-wrapper", + "system": [ + "wii" + ], + "properties": [ + { + "ask_to_exit": true, + "universal_dyn_input": true } - }, - "mame": { - "description": "MAME: Multiple Arcade Machine Emulator", - "name": "MAME", - "system": [ - "arcade" - ], - "launch": "mame" - }, - "citra": { - "description": "Citra Nintendo 3DS Emulator (via Ponzu)", - "name": "Citra (via Ponzu)", - "system": "n3ds", - "ponzu": true, - "launch" : "citra-qt", - "properties": [ - { - "abxy_button": true, - "ask_to_exit": true - } - ] - }, - "melonds": { - "description": "MelonDS Nintendo DS Emulator", - "name": "melonds", - "system": "nds", - "launch": "MelonDS" - }, - "pcsx2": { - "name": "pcsx2", - "description": "PCSX2 Play Station 2 Emulator", - "system": "ps2", - "launch" : "pcsx2-qt", - "properties": [ - { - "ask_to_exit": true, - "cheevos": true - } - ] - }, - "duckstation": { - "name": "Duckstation", - "description": "PlayStation Emulator", - "launch": "duckstation-qt", - "system": "psx", - "properties": [ - { - "ask_to_exit": true, - "cheevos": true - } - ] - }, - "ppsspp": { - "name": "PPSSPP", - "description": "PPSSPP: PlayStation Portable Emulator", - "launch": "PPSSPPSDL", - "system": "psp", - "properties": [ - { - "cheevos": true, - "cheevos_hardcore": true - } - ] - }, - "vita3k": { - "name": "Vita3k", - "description": "Vita3K PSVita Emulator", - "system": "psvita", - "launch": "Vita3K" - }, - "rpcs3": { - "name": "RPCS3", - "description": "RPCS3 PlayStation 3 Emulator", - "system": "ps3", - "launch": "rpcs3", - "properties": [ - { - "ask_to_exit": true - } - ] - }, - "ryujinx": { - "name": "Ryujinx", - "description": "Ryujinx Nintendo Switch Emulator", - "system": "switch", - "launch": "Ryujinx.sh" - }, - "yuzu": { - "name": "Yuzu (via Ponzu)", - "description": "Yuzu Nintendo Switch Emulator (via Ponzu)", - "launch": "Yuzu", - "system": "switch", - "ponzu": true, - "abxy_button": true - }, - "dolphin": { - "name": "Dolphin", - "description": "Dolphin Wii and GameCube Emulator", - "launch": "dolphin-emu-wrapper", - "system": [ - "gc", - "wii" - ], - "properties": [ - { - "abxy_button": true, - "ask_to_exit": true, - "cheevos": true, - "cheevos_hardcore": true, - "universal_dyn_input": true - } - ] - }, - "primehack": { - "name": "PrimeHack", - "description": "A fork of Dolphiin to enhance Metroid Prime experience", - "launch": "primehack-wrapper", - "system": [ - "wii" - ], - "properties": [ - { - "ask_to_exit": true, - "universal_dyn_input": true - } - ] - }, - "cemu": { - "description": "Wii U emulator", - "name": "Cemu", - "system": "wiiu", - "launch": "Cemu-wrapper", - "properties": [ - { - "abxy_button": true, - "multi_user_config_dir": "Cemu" - } - ] - }, - "xemu": { - "description": "xemu Xbox Emulator", - "name": "xemu", - "system": "xbox", - "launch": "xemu" - }, - "es-de": { - "description": "ES-DE Emulation Frontend", - "name": "ES-DE", - "launch": "es-de" - } + ] + }, + "cemu": { + "description": "Wii U emulator", + "name": "Cemu", + "system": "wiiu", + "launch": "Cemu-wrapper", + "properties": [ + { + "abxy_button": true, + "multi_user_config_dir": "Cemu" + } + ] + }, + "xemu": { + "description": "xemu Xbox Emulator", + "name": "xemu", + "system": "xbox", + "launch": "xemu" + }, + "es-de": { + "description": "ES-DE Emulation Frontend", + "name": "ES-DE", + "launch": "es-de" } } - +} From 0cce296ab400c7fba944cc280bad194efc9fb372 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 23:20:43 +0900 Subject: [PATCH 07/15] BIOS: added missing bioses from Batocera's list --- config/retrodeck/reference_lists/bios.json | 189 ++++++++++++++++++++- 1 file changed, 183 insertions(+), 6 deletions(-) diff --git a/config/retrodeck/reference_lists/bios.json b/config/retrodeck/reference_lists/bios.json index 1a94b72e..08b1d041 100644 --- a/config/retrodeck/reference_lists/bios.json +++ b/config/retrodeck/reference_lists/bios.json @@ -558,12 +558,9 @@ }, "top-sp1.bin": { "md5": "122aee210324c72e8a11116e6ef9c0d0", - "system": [ - "neogeocd", - "neogeocdjp" - ], - "description": "Top Loader BIOS (MAME)", - "required": "at least one" + "system": "neogeocd", + "description": "NeoGeo CD Top SP1 ROM", + "required": "required" }, "neocd.bin": { "md5": "f39572af7584cb5b3f70ae8cc848aba2", @@ -950,6 +947,186 @@ "system": "zxspectrum", "description": "Scorpion 256K ROM", "required": "required" + }, + "modplus-harp2.bin": { + "md5": "875919e2544644cd628f44b5c11db036", + "system": "macintosh", + "description": "Macintosh Plus ModPlus Harp2 ROM", + "required": "required" + }, + "rominator-20150225-hi.bin": { + "md5": "efcefe8f11c10541a503d48a07878201", + "system": "macintosh", + "description": "Macintosh Rominator High ROM", + "required": "required" + }, + "rominator-20150225-lo.bin": { + "md5": "f4b06da98500df0747a764dfbf1862b9", + "system": "macintosh", + "description": "Macintosh Rominator Low ROM", + "required": "required" + }, + "nb_fake.bin": { + "md5": "93155ac7bad0fec36837252bb1e408f2", + "system": "macintosh", + "description": "Macintosh NB Fake ROM", + "required": "required" + }, + "3410868.bin": { + "md5": "7500a6a958247ee6e092f08715f2fff8", + "system": "macintosh", + "description": "Macintosh 3410868 ROM", + "required": "required" + }, + "cmos_arthur.bin": { + "md5": "c74763f720c98e16dc3c6c421db21485", + "system": "archimedes", + "description": "Acorn Archimedes CMOS Arthur ROM", + "required": "required" + }, + "cmos_riscos2.bin": { + "md5": "6f564c8917f04594bda7385f6de61061", + "system": "archimedes", + "description": "Acorn Archimedes CMOS RISC OS 2 ROM", + "required": "required" + }, + "cmos_riscos3.bin": { + "md5": "232a302efe19278d9df6ecbc8ea3dc6c", + "system": "archimedes", + "description": "Acorn Archimedes CMOS RISC OS 3 ROM", + "required": "required" + }, + "acorn_0280,022-01_philips_8051ah-2.bin": { + "md5": "1a8617c1abe3e0729d20ce844e1e12a8", + "system": "archimedes", + "description": "Acorn Archimedes Keyboard ROM", + "required": "required" + }, + "mod_bios.bin": { + "md5": "b325543b36d37edf3fc20761f00c7a37", + "system": "apfm1000", + "description": "APF M-1000 Mod BIOS", + "required": "required" + }, + "trash-ii.bin": { + "md5": "89a7cfa5469ce24773721d65b28f8544", + "system": "apfm1000", + "description": "APF M-1000 Trash II ROM", + "required": "required" + }, + "p513bk0b.bin": { + "md5": "ebf432d3b09f694db1c62018eb2ab471", + "system": "vis", + "description": "Tandy VIS P513BK0B ROM", + "required": "required" + }, + "p513bk1b.bin": { + "md5": "758f8fec271fbf526bb22b36e88f154b", + "system": "vis", + "description": "Tandy VIS P513BK1B ROM", + "required": "required" + }, + "vsmile_v102.bin": { + "md5": "f41fcc19ebe1e90fa359cd0df6293fab", + "system": "vsmile", + "description": "VTech V.Smile v1.02 ROM", + "required": "required" + }, + "vsmile_v103.bin": { + "md5": "11e59253c578c8f16ea2375ec398e4e9", + "system": "vsmile", + "description": "VTech V.Smile v1.03 ROM", + "required": "required" + }, + "speech_eng_vsm1.bin": { + "md5": "7046c2b27f51c9a5d33b4d6103f29acf", + "system": "socrates", + "description": "VTech Socrates Speech VSM1 ROM", + "required": "required" + }, + "speech_eng_vsm2.bin": { + "md5": "6878302c362321eeee7e40d285cf7d30", + "system": "socrates", + "description": "VTech Socrates Speech VSM2 ROM", + "required": "required" + }, + "speech_eng_vsm3.bin": { + "md5": "31c29c57e3d3e6788ba5817eaaa8b17a", + "system": "socrates", + "description": "VTech Socrates Speech VSM3 ROM", + "required": "required" + }, + "b225__ins8048-11kdp_n.u5": { + "md5": "5729638bd856c475678467a353bd921c", + "system": "advision", + "description": "Entex Adventure Vision B225 ROM", + "required": "required" + }, + "b8223__cop411l-kcn_n.u8": { + "md5": "fc5e71445e4947a9d00eedbc66b13a8f", + "system": "advision", + "description": "Entex Adventure Vision B8223 ROM", + "required": "required" + }, + "gamate_bios_bit.bin": { + "md5": "b411167df6dd563111729296f4c547f6", + "system": "gamate", + "description": "Bitcorp Gamate BIOS Bit ROM", + "required": "required" + }, + "gamate_bios_umc.bin": { + "md5": "ef67993a94503c4b7798b5901c7dda52", + "system": "gamate", + "description": "Bitcorp Gamate BIOS UMC ROM", + "required": "required" + }, + "zx405037p__cdi_servo_2.1__b43t__llek9215.mc68hc705c8a_withtestrom.7201": { + "md5": "3e59b8a9a423d3ecd612a32fe4e2d748", + "system": "cdi", + "description": "Philips CD-i CDI Servo 2.1 ROM", + "required": "required" + }, + "zx405042p__cdi_slave_2.0__b43t__zzmk9213.mc68hc705c8a_withtestrom.7206": { + "md5": "3d20cf7550f1b723158b42a1fd5bac62", + "system": "cdi", + "description": "Philips CD-i CDI Slave 2.0 ROM", + "required": "required" + }, + "sp5001-a.bin": { + "md5": "689d2228b00fb59781f82af6e8ecdb78", + "system": "naomi2", + "description": "Naomi 2 SP5001-A ROM", + "required": "required" + }, + "sp5001-b.bin": { + "md5": "8373a11106c1c2fc21ac839f75ea488f", + "system": "naomi2", + "description": "Naomi 2 SP5001-B ROM", + "required": "required" + }, + "sp5002-a.bin": { + "md5": "7eecfb8e8f82b47ffab92a0c5528100e", + "system": "naomi2", + "description": "Naomi 2 SP5002-A ROM", + "required": "required" + }, + "xilinx_spartan3e_pn__xc3s250e__1.2_sv.bin": { + "md5": "083cad15e8ef6cc7b19b5bde38c83932", + "system": "naomi2", + "description": "Naomi 2 Xilinx Spartan3e ROM", + "required": "required" + }, + "ds9-3__30d5_bbin_16k.xci": { + "md5": "620739e71d74c611d5b7fc87a2b64793", + "system": "naomi2", + "description": "Naomi 2 DS9-3 ROM", + "required": "required" + }, + "53c810_sea_1.0.bin": { + "md5": "9f3e2b07202e3b6b98e2336fc14ad1f2", + "system": "naomi2", + "description": "Naomi 2 53C810 ROM", + "required": "required" } } } From c62c3c3b9cd047ad1e379df7d2bfab7a53994904 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 23:32:54 +0900 Subject: [PATCH 08/15] BIOS: removed required flaag from the ones tthat we are unsure of [skip ci] --- config/retrodeck/reference_lists/bios.json | 93 ++++++++-------------- 1 file changed, 31 insertions(+), 62 deletions(-) diff --git a/config/retrodeck/reference_lists/bios.json b/config/retrodeck/reference_lists/bios.json index 08b1d041..985fbe74 100644 --- a/config/retrodeck/reference_lists/bios.json +++ b/config/retrodeck/reference_lists/bios.json @@ -559,8 +559,7 @@ "top-sp1.bin": { "md5": "122aee210324c72e8a11116e6ef9c0d0", "system": "neogeocd", - "description": "NeoGeo CD Top SP1 ROM", - "required": "required" + "description": "NeoGeo CD Top SP1 ROM" }, "neocd.bin": { "md5": "f39572af7584cb5b3f70ae8cc848aba2", @@ -951,182 +950,152 @@ "modplus-harp2.bin": { "md5": "875919e2544644cd628f44b5c11db036", "system": "macintosh", - "description": "Macintosh Plus ModPlus Harp2 ROM", - "required": "required" + "description": "Macintosh Plus ModPlus Harp2 ROM" }, "rominator-20150225-hi.bin": { "md5": "efcefe8f11c10541a503d48a07878201", "system": "macintosh", - "description": "Macintosh Rominator High ROM", - "required": "required" + "description": "Macintosh Rominator High ROM" }, "rominator-20150225-lo.bin": { "md5": "f4b06da98500df0747a764dfbf1862b9", "system": "macintosh", - "description": "Macintosh Rominator Low ROM", - "required": "required" + "description": "Macintosh Rominator Low ROM" }, "nb_fake.bin": { "md5": "93155ac7bad0fec36837252bb1e408f2", "system": "macintosh", - "description": "Macintosh NB Fake ROM", - "required": "required" + "description": "Macintosh NB Fake ROM" }, "3410868.bin": { "md5": "7500a6a958247ee6e092f08715f2fff8", "system": "macintosh", - "description": "Macintosh 3410868 ROM", - "required": "required" + "description": "Macintosh 3410868 ROM" }, "cmos_arthur.bin": { "md5": "c74763f720c98e16dc3c6c421db21485", "system": "archimedes", - "description": "Acorn Archimedes CMOS Arthur ROM", - "required": "required" + "description": "Acorn Archimedes CMOS Arthur ROM" }, "cmos_riscos2.bin": { "md5": "6f564c8917f04594bda7385f6de61061", "system": "archimedes", - "description": "Acorn Archimedes CMOS RISC OS 2 ROM", - "required": "required" + "description": "Acorn Archimedes CMOS RISC OS 2 ROM" }, "cmos_riscos3.bin": { "md5": "232a302efe19278d9df6ecbc8ea3dc6c", "system": "archimedes", - "description": "Acorn Archimedes CMOS RISC OS 3 ROM", - "required": "required" + "description": "Acorn Archimedes CMOS RISC OS 3 ROM" }, "acorn_0280,022-01_philips_8051ah-2.bin": { "md5": "1a8617c1abe3e0729d20ce844e1e12a8", "system": "archimedes", - "description": "Acorn Archimedes Keyboard ROM", - "required": "required" + "description": "Acorn Archimedes Keyboard ROM" }, "mod_bios.bin": { "md5": "b325543b36d37edf3fc20761f00c7a37", "system": "apfm1000", - "description": "APF M-1000 Mod BIOS", - "required": "required" + "description": "APF M-1000 Mod BIOS" }, "trash-ii.bin": { "md5": "89a7cfa5469ce24773721d65b28f8544", "system": "apfm1000", - "description": "APF M-1000 Trash II ROM", - "required": "required" + "description": "APF M-1000 Trash II ROM" }, "p513bk0b.bin": { "md5": "ebf432d3b09f694db1c62018eb2ab471", "system": "vis", - "description": "Tandy VIS P513BK0B ROM", - "required": "required" + "description": "Tandy VIS P513BK0B ROM" }, "p513bk1b.bin": { "md5": "758f8fec271fbf526bb22b36e88f154b", "system": "vis", - "description": "Tandy VIS P513BK1B ROM", - "required": "required" + "description": "Tandy VIS P513BK1B ROM" }, "vsmile_v102.bin": { "md5": "f41fcc19ebe1e90fa359cd0df6293fab", "system": "vsmile", - "description": "VTech V.Smile v1.02 ROM", - "required": "required" + "description": "VTech V.Smile v1.02 ROM" }, "vsmile_v103.bin": { "md5": "11e59253c578c8f16ea2375ec398e4e9", "system": "vsmile", - "description": "VTech V.Smile v1.03 ROM", - "required": "required" + "description": "VTech V.Smile v1.03 ROM" }, "speech_eng_vsm1.bin": { "md5": "7046c2b27f51c9a5d33b4d6103f29acf", "system": "socrates", - "description": "VTech Socrates Speech VSM1 ROM", - "required": "required" + "description": "VTech Socrates Speech VSM1 ROM" }, "speech_eng_vsm2.bin": { "md5": "6878302c362321eeee7e40d285cf7d30", "system": "socrates", - "description": "VTech Socrates Speech VSM2 ROM", - "required": "required" + "description": "VTech Socrates Speech VSM2 ROM" }, "speech_eng_vsm3.bin": { "md5": "31c29c57e3d3e6788ba5817eaaa8b17a", "system": "socrates", - "description": "VTech Socrates Speech VSM3 ROM", - "required": "required" + "description": "VTech Socrates Speech VSM3 ROM" }, "b225__ins8048-11kdp_n.u5": { "md5": "5729638bd856c475678467a353bd921c", "system": "advision", - "description": "Entex Adventure Vision B225 ROM", - "required": "required" + "description": "Entex Adventure Vision B225 ROM" }, "b8223__cop411l-kcn_n.u8": { "md5": "fc5e71445e4947a9d00eedbc66b13a8f", "system": "advision", - "description": "Entex Adventure Vision B8223 ROM", - "required": "required" + "description": "Entex Adventure Vision B8223 ROM" }, "gamate_bios_bit.bin": { "md5": "b411167df6dd563111729296f4c547f6", "system": "gamate", - "description": "Bitcorp Gamate BIOS Bit ROM", - "required": "required" + "description": "Bitcorp Gamate BIOS Bit ROM" }, "gamate_bios_umc.bin": { "md5": "ef67993a94503c4b7798b5901c7dda52", "system": "gamate", - "description": "Bitcorp Gamate BIOS UMC ROM", - "required": "required" + "description": "Bitcorp Gamate BIOS UMC ROM" }, "zx405037p__cdi_servo_2.1__b43t__llek9215.mc68hc705c8a_withtestrom.7201": { "md5": "3e59b8a9a423d3ecd612a32fe4e2d748", "system": "cdi", - "description": "Philips CD-i CDI Servo 2.1 ROM", - "required": "required" + "description": "Philips CD-i CDI Servo 2.1 ROM" }, "zx405042p__cdi_slave_2.0__b43t__zzmk9213.mc68hc705c8a_withtestrom.7206": { "md5": "3d20cf7550f1b723158b42a1fd5bac62", "system": "cdi", - "description": "Philips CD-i CDI Slave 2.0 ROM", - "required": "required" + "description": "Philips CD-i CDI Slave 2.0 ROM" }, "sp5001-a.bin": { "md5": "689d2228b00fb59781f82af6e8ecdb78", "system": "naomi2", - "description": "Naomi 2 SP5001-A ROM", - "required": "required" + "description": "Naomi 2 SP5001-A ROM" }, "sp5001-b.bin": { "md5": "8373a11106c1c2fc21ac839f75ea488f", "system": "naomi2", - "description": "Naomi 2 SP5001-B ROM", - "required": "required" + "description": "Naomi 2 SP5001-B ROM" }, "sp5002-a.bin": { "md5": "7eecfb8e8f82b47ffab92a0c5528100e", "system": "naomi2", - "description": "Naomi 2 SP5002-A ROM", - "required": "required" + "description": "Naomi 2 SP5002-A ROM" }, "xilinx_spartan3e_pn__xc3s250e__1.2_sv.bin": { "md5": "083cad15e8ef6cc7b19b5bde38c83932", "system": "naomi2", - "description": "Naomi 2 Xilinx Spartan3e ROM", - "required": "required" + "description": "Naomi 2 Xilinx Spartan3e ROM" }, "ds9-3__30d5_bbin_16k.xci": { "md5": "620739e71d74c611d5b7fc87a2b64793", "system": "naomi2", - "description": "Naomi 2 DS9-3 ROM", - "required": "required" + "description": "Naomi 2 DS9-3 ROM" }, "53c810_sea_1.0.bin": { "md5": "9f3e2b07202e3b6b98e2336fc14ad1f2", "system": "naomi2", - "description": "Naomi 2 53C810 ROM", - "required": "required" + "description": "Naomi 2 53C810 ROM" } } } From 9778d198c142762e83ab262919b1a12ad339f847 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 23:40:53 +0900 Subject: [PATCH 09/15] BIOS: cleanup invalid entries [skip ci] --- config/retrodeck/reference_lists/bios.json | 158 +-------------------- 1 file changed, 6 insertions(+), 152 deletions(-) diff --git a/config/retrodeck/reference_lists/bios.json b/config/retrodeck/reference_lists/bios.json index 985fbe74..1a94b72e 100644 --- a/config/retrodeck/reference_lists/bios.json +++ b/config/retrodeck/reference_lists/bios.json @@ -558,8 +558,12 @@ }, "top-sp1.bin": { "md5": "122aee210324c72e8a11116e6ef9c0d0", - "system": "neogeocd", - "description": "NeoGeo CD Top SP1 ROM" + "system": [ + "neogeocd", + "neogeocdjp" + ], + "description": "Top Loader BIOS (MAME)", + "required": "at least one" }, "neocd.bin": { "md5": "f39572af7584cb5b3f70ae8cc848aba2", @@ -946,156 +950,6 @@ "system": "zxspectrum", "description": "Scorpion 256K ROM", "required": "required" - }, - "modplus-harp2.bin": { - "md5": "875919e2544644cd628f44b5c11db036", - "system": "macintosh", - "description": "Macintosh Plus ModPlus Harp2 ROM" - }, - "rominator-20150225-hi.bin": { - "md5": "efcefe8f11c10541a503d48a07878201", - "system": "macintosh", - "description": "Macintosh Rominator High ROM" - }, - "rominator-20150225-lo.bin": { - "md5": "f4b06da98500df0747a764dfbf1862b9", - "system": "macintosh", - "description": "Macintosh Rominator Low ROM" - }, - "nb_fake.bin": { - "md5": "93155ac7bad0fec36837252bb1e408f2", - "system": "macintosh", - "description": "Macintosh NB Fake ROM" - }, - "3410868.bin": { - "md5": "7500a6a958247ee6e092f08715f2fff8", - "system": "macintosh", - "description": "Macintosh 3410868 ROM" - }, - "cmos_arthur.bin": { - "md5": "c74763f720c98e16dc3c6c421db21485", - "system": "archimedes", - "description": "Acorn Archimedes CMOS Arthur ROM" - }, - "cmos_riscos2.bin": { - "md5": "6f564c8917f04594bda7385f6de61061", - "system": "archimedes", - "description": "Acorn Archimedes CMOS RISC OS 2 ROM" - }, - "cmos_riscos3.bin": { - "md5": "232a302efe19278d9df6ecbc8ea3dc6c", - "system": "archimedes", - "description": "Acorn Archimedes CMOS RISC OS 3 ROM" - }, - "acorn_0280,022-01_philips_8051ah-2.bin": { - "md5": "1a8617c1abe3e0729d20ce844e1e12a8", - "system": "archimedes", - "description": "Acorn Archimedes Keyboard ROM" - }, - "mod_bios.bin": { - "md5": "b325543b36d37edf3fc20761f00c7a37", - "system": "apfm1000", - "description": "APF M-1000 Mod BIOS" - }, - "trash-ii.bin": { - "md5": "89a7cfa5469ce24773721d65b28f8544", - "system": "apfm1000", - "description": "APF M-1000 Trash II ROM" - }, - "p513bk0b.bin": { - "md5": "ebf432d3b09f694db1c62018eb2ab471", - "system": "vis", - "description": "Tandy VIS P513BK0B ROM" - }, - "p513bk1b.bin": { - "md5": "758f8fec271fbf526bb22b36e88f154b", - "system": "vis", - "description": "Tandy VIS P513BK1B ROM" - }, - "vsmile_v102.bin": { - "md5": "f41fcc19ebe1e90fa359cd0df6293fab", - "system": "vsmile", - "description": "VTech V.Smile v1.02 ROM" - }, - "vsmile_v103.bin": { - "md5": "11e59253c578c8f16ea2375ec398e4e9", - "system": "vsmile", - "description": "VTech V.Smile v1.03 ROM" - }, - "speech_eng_vsm1.bin": { - "md5": "7046c2b27f51c9a5d33b4d6103f29acf", - "system": "socrates", - "description": "VTech Socrates Speech VSM1 ROM" - }, - "speech_eng_vsm2.bin": { - "md5": "6878302c362321eeee7e40d285cf7d30", - "system": "socrates", - "description": "VTech Socrates Speech VSM2 ROM" - }, - "speech_eng_vsm3.bin": { - "md5": "31c29c57e3d3e6788ba5817eaaa8b17a", - "system": "socrates", - "description": "VTech Socrates Speech VSM3 ROM" - }, - "b225__ins8048-11kdp_n.u5": { - "md5": "5729638bd856c475678467a353bd921c", - "system": "advision", - "description": "Entex Adventure Vision B225 ROM" - }, - "b8223__cop411l-kcn_n.u8": { - "md5": "fc5e71445e4947a9d00eedbc66b13a8f", - "system": "advision", - "description": "Entex Adventure Vision B8223 ROM" - }, - "gamate_bios_bit.bin": { - "md5": "b411167df6dd563111729296f4c547f6", - "system": "gamate", - "description": "Bitcorp Gamate BIOS Bit ROM" - }, - "gamate_bios_umc.bin": { - "md5": "ef67993a94503c4b7798b5901c7dda52", - "system": "gamate", - "description": "Bitcorp Gamate BIOS UMC ROM" - }, - "zx405037p__cdi_servo_2.1__b43t__llek9215.mc68hc705c8a_withtestrom.7201": { - "md5": "3e59b8a9a423d3ecd612a32fe4e2d748", - "system": "cdi", - "description": "Philips CD-i CDI Servo 2.1 ROM" - }, - "zx405042p__cdi_slave_2.0__b43t__zzmk9213.mc68hc705c8a_withtestrom.7206": { - "md5": "3d20cf7550f1b723158b42a1fd5bac62", - "system": "cdi", - "description": "Philips CD-i CDI Slave 2.0 ROM" - }, - "sp5001-a.bin": { - "md5": "689d2228b00fb59781f82af6e8ecdb78", - "system": "naomi2", - "description": "Naomi 2 SP5001-A ROM" - }, - "sp5001-b.bin": { - "md5": "8373a11106c1c2fc21ac839f75ea488f", - "system": "naomi2", - "description": "Naomi 2 SP5001-B ROM" - }, - "sp5002-a.bin": { - "md5": "7eecfb8e8f82b47ffab92a0c5528100e", - "system": "naomi2", - "description": "Naomi 2 SP5002-A ROM" - }, - "xilinx_spartan3e_pn__xc3s250e__1.2_sv.bin": { - "md5": "083cad15e8ef6cc7b19b5bde38c83932", - "system": "naomi2", - "description": "Naomi 2 Xilinx Spartan3e ROM" - }, - "ds9-3__30d5_bbin_16k.xci": { - "md5": "620739e71d74c611d5b7fc87a2b64793", - "system": "naomi2", - "description": "Naomi 2 DS9-3 ROM" - }, - "53c810_sea_1.0.bin": { - "md5": "9f3e2b07202e3b6b98e2336fc14ad1f2", - "system": "naomi2", - "description": "Naomi 2 53C810 ROM" } } } From 5fbed62f18f50a2b9ac903925ca7490b94857ed1 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 22 Aug 2024 23:44:09 +0900 Subject: [PATCH 10/15] BIOS: fixed ATARIOSB.ROM sha [skip ci] --- config/retrodeck/reference_lists/bios.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/retrodeck/reference_lists/bios.json b/config/retrodeck/reference_lists/bios.json index 1a94b72e..04cddd17 100644 --- a/config/retrodeck/reference_lists/bios.json +++ b/config/retrodeck/reference_lists/bios.json @@ -214,7 +214,7 @@ "required": "required" }, "ATARIOSB.ROM": { - "md5": "a3e8d617c95d08031fe1b20d541434b2", + "md5": "4177f386a3bac989a981d3fe3388cb6c", "system": "atari5200", "description": "BIOS for Atari 400/800 NTSC ", "required": "required" From b1c1c7d809a03853c307a00c491dbd9ae5813a6b Mon Sep 17 00:00:00 2001 From: XargonWan Date: Fri, 23 Aug 2024 09:22:52 +0900 Subject: [PATCH 11/15] WORKFLOW: tentative PR branch name fixes [skip ci] --- .github/workflows/cooker-selfhosted.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 292e0df4..445bcae9 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -62,8 +62,14 @@ jobs: - name: Get branch name id: branch_name - run: echo "BRANCH_NAME=$(echo $GITHUB_REF | sed 's|refs/heads/||')" >> $GITHUB_ENV - + run: | + if [[ "$GITHUB_EVENT_NAME" == "pull_request" || "$GITHUB_EVENT_NAME" == "pull_request_target" ]]; then + source_branch="${{ github.head_ref }}" + echo "BRANCH_NAME=$source_branch" >> $GITHUB_ENV + else + branch_name=$(echo $GITHUB_REF | sed 's|refs/heads/||') + echo "BRANCH_NAME=$branch_name" >> $GITHUB_ENV + fi # if the branch is coming from a PR the tag should be manually built - name: "Generate version tag and evaluating latest tag" From d741ecc53153eff05eb83d016fe6a0eaa4ec8ab5 Mon Sep 17 00:00:00 2001 From: MonkeyX Date: Fri, 23 Aug 2024 01:25:55 +0100 Subject: [PATCH 12/15] Cooker Godot Update (#911) * On branch cooker Changes to be committed: modified: ../config/retrodeck/reference_lists/features.json modified: configurator.sh modified: configurator/TabContainer.gd modified: configurator/assets/themes/accesible_theme.tres modified: configurator/assets/themes/modern_theme.tres modified: configurator/assets/themes/retro_theme.tres modified: configurator/main.tscn modified: configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Signal test * s * Oops Data Recovery On branch cooker Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Sliding Rekku On branch cooker Changes to be committed: modified: tools/configurator/Rekku.gd modified: tools/configurator/main.gd modified: tools/configurator/main.tscn * Using less tabs? On branch cooker Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres --------- Co-authored-by: Rekku --- tools/configurator.sh | 0 tools/configurator/Rekku.gd | 6 +- tools/configurator/TabContainer.gd | 1 + .../assets/themes/accesible_theme.tres | 12 +- .../assets/themes/modern_theme.tres | 12 +- .../assets/themes/retro_theme.tres | 12 +- tools/configurator/main.gd | 60 +- tools/configurator/main.tscn | 615 +++++++++--------- .../res/pixel_ui_theme/RetroDECKTheme.tres | 88 +-- 9 files changed, 436 insertions(+), 370 deletions(-) mode change 100644 => 100755 tools/configurator.sh diff --git a/tools/configurator.sh b/tools/configurator.sh old mode 100644 new mode 100755 diff --git a/tools/configurator/Rekku.gd b/tools/configurator/Rekku.gd index 65c79a40..03ea2fe2 100644 --- a/tools/configurator/Rekku.gd +++ b/tools/configurator/Rekku.gd @@ -3,6 +3,10 @@ extends Control func _input(event): if event.is_action_pressed("rekku_hide"): self.visible = !self.visible - + %SplitContainer.split_offset=-300 + if Input.is_action_pressed("back_button"): + %SplitContainer.split_offset=0 $".".visible=false + + diff --git a/tools/configurator/TabContainer.gd b/tools/configurator/TabContainer.gd index 083182c5..fcd98b61 100644 --- a/tools/configurator/TabContainer.gd +++ b/tools/configurator/TabContainer.gd @@ -22,6 +22,7 @@ func _ready(): set_tab_icon_max_width(5,icon_width) set_tab_icon(6, ResourceLoader.load("res://assets/icons/pixelitos/128/help-about.png")) set_tab_icon_max_width(6,icon_width) + #%TK_GRAPHICS.name="BOB" # func _input(event): if (event.is_action_pressed("next_tab")): diff --git a/tools/configurator/assets/themes/accesible_theme.tres b/tools/configurator/assets/themes/accesible_theme.tres index 64ae1dab..b0cacff0 100644 --- a/tools/configurator/assets/themes/accesible_theme.tres +++ b/tools/configurator/assets/themes/accesible_theme.tres @@ -1,6 +1,16 @@ -[gd_resource type="Theme" load_steps=2 format=3 uid="uid://co27jgr76wvcl"] +[gd_resource type="Theme" load_steps=5 format=3 uid="uid://co27jgr76wvcl"] [ext_resource type="FontFile" uid="uid://c8lbo5ljgtaaa" path="res://assets/fonts/OpenDyslexic3/OpenDyslexic3-Regular.ttf" id="1_d8f12"] +[ext_resource type="Texture2D" uid="uid://buod4n6hw4i2m" path="res://assets/icons/pixelitos/vcs-normal.svg" id="1_pvl23"] +[ext_resource type="Texture2D" uid="uid://cn0tfnnihjvy7" path="res://assets/icons/pixelitos/vcs-grey.svg" id="2_ud3yg"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ghisc"] +bg_color = Color(0.6, 0.168627, 0.6, 0.372549) [resource] default_font = ExtResource("1_d8f12") +Button/styles/focus = SubResource("StyleBoxFlat_ghisc") +CheckBox/constants/check_v_offset = 0 +CheckBox/constants/h_separation = 0 +CheckBox/icons/checked = ExtResource("1_pvl23") +CheckBox/icons/unchecked = ExtResource("2_ud3yg") diff --git a/tools/configurator/assets/themes/modern_theme.tres b/tools/configurator/assets/themes/modern_theme.tres index a5f98d5b..e0294d5c 100644 --- a/tools/configurator/assets/themes/modern_theme.tres +++ b/tools/configurator/assets/themes/modern_theme.tres @@ -1,6 +1,16 @@ -[gd_resource type="Theme" load_steps=2 format=3 uid="uid://dcyix4kssqal2"] +[gd_resource type="Theme" load_steps=5 format=3 uid="uid://dcyix4kssqal2"] +[ext_resource type="Texture2D" uid="uid://buod4n6hw4i2m" path="res://assets/icons/pixelitos/vcs-normal.svg" id="1_pvl23"] [ext_resource type="FontFile" uid="uid://1x3s2oon2g64" path="res://assets/fonts/akrobat/Akrobat-Regular.otf" id="1_qs1qb"] +[ext_resource type="Texture2D" uid="uid://cn0tfnnihjvy7" path="res://assets/icons/pixelitos/vcs-grey.svg" id="2_ud3yg"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ghisc"] +bg_color = Color(0.6, 0.168627, 0.6, 0.372549) [resource] default_font = ExtResource("1_qs1qb") +Button/styles/focus = SubResource("StyleBoxFlat_ghisc") +CheckBox/constants/check_v_offset = 0 +CheckBox/constants/h_separation = 0 +CheckBox/icons/checked = ExtResource("1_pvl23") +CheckBox/icons/unchecked = ExtResource("2_ud3yg") diff --git a/tools/configurator/assets/themes/retro_theme.tres b/tools/configurator/assets/themes/retro_theme.tres index 21a977c7..a2b0b898 100644 --- a/tools/configurator/assets/themes/retro_theme.tres +++ b/tools/configurator/assets/themes/retro_theme.tres @@ -1,6 +1,16 @@ -[gd_resource type="Theme" load_steps=2 format=3 uid="uid://3ljv5xgd4c1u"] +[gd_resource type="Theme" load_steps=5 format=3 uid="uid://3ljv5xgd4c1u"] [ext_resource type="FontFile" uid="uid://q405aelgnmvo" path="res://assets/fonts/munro/munro.ttf" id="1_kirwi"] +[ext_resource type="Texture2D" uid="uid://buod4n6hw4i2m" path="res://assets/icons/pixelitos/vcs-normal.svg" id="1_pvl23"] +[ext_resource type="Texture2D" uid="uid://cn0tfnnihjvy7" path="res://assets/icons/pixelitos/vcs-grey.svg" id="2_ud3yg"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ghisc"] +bg_color = Color(0.6, 0.168627, 0.6, 0.372549) [resource] default_font = ExtResource("1_kirwi") +Button/styles/focus = SubResource("StyleBoxFlat_ghisc") +CheckBox/constants/check_v_offset = 0 +CheckBox/constants/h_separation = 0 +CheckBox/icons/checked = ExtResource("1_pvl23") +CheckBox/icons/unchecked = ExtResource("2_ud3yg") diff --git a/tools/configurator/main.gd b/tools/configurator/main.gd index daea0209..ba963ed3 100644 --- a/tools/configurator/main.gd +++ b/tools/configurator/main.gd @@ -10,7 +10,7 @@ var log_text = "gdc_" var log_parameters: Array = ["log", "i", log_text] var log_results: Dictionary var theme_option: OptionButton -signal signal_theme_changed +#signal signal_theme_changed var custom_theme: Theme = $".".theme var log_option: OptionButton var tab_container: TabContainer @@ -105,9 +105,13 @@ func _get_nodes() -> void: func _connect_signals() -> void: #signal_theme_changed.connect(_conf_theme) theme_option.item_selected.connect(_conf_theme) - signal_theme_changed.emit(theme_option.item_selected) + #signal_theme_changed.emit(theme_option.item_selected) log_option.item_selected.connect(_load_log) - %borders.pressed.connect(_hide_show) + %borders_button.pressed.connect(_hide_show.bind(%borders_button)) + %save_button.pressed.connect(_hide_show.bind(%save_button)) + %decorations_button.pressed.connect(_hide_show_containers.bind(%decorations_button)) + %systems_button.pressed.connect(_hide_show_containers.bind(%systems_button)) + %save_resume_button.pressed.connect(_hide_show_containers.bind(%decorations_button)) func _load_log(index: int) -> void: var log_content:String @@ -124,27 +128,47 @@ func _load_log(index: int) -> void: func _play_main_animations() -> void: anim_logo.play() -func _hide_show() -> void: - if %borders.button_pressed: - %borders_grid_container.visible = true - for i in range(%borders_grid_container.get_child_count()): - var child = %borders_grid_container.get_child(i) + +func _hide_show_containers(button: Button) -> void: + match button.name: + "decorations_button": + %graphics_gridcontainer.visible = true + if button.toggle_mode: + button.toggle_mode=false + %graphics_gridcontainer.visible = false + else: + button.toggle_mode=true + "systems_button": + %systems_gridcontainer.visible = true + if button.toggle_mode: + button.toggle_mode=false + %systems_gridcontainer.visible = false + else: + button.toggle_mode=true + +func _hide_show(button: Button) -> void: + if %borders_button.button_pressed: + %borders_gridcontainer.visible = true + for i in range(%borders_gridcontainer.get_child_count()): + var child = %borders_gridcontainer.get_child(i) if child is Button: child.button_pressed=true - for i in range(%graphics_grid_container.get_child_count()): - var child = %graphics_grid_container.get_child(i) - if child is Button and child != %borders: + for i in range(%graphics_gridcontainer.get_child_count()): + var child = %graphics_gridcontainer.get_child(i) + if child is Button and child != %borders_button: child.visible=false %save_button.visible=true - elif !%borders.button_pressed: - %borders_grid_container.visible = false - for i in range(%graphics_grid_container.get_child_count()): - var child = %graphics_grid_container.get_child(i) + + if %save_button.button_pressed: + %borders_gridcontainer.visible = false + for i in range(%graphics_gridcontainer.get_child_count()): + var child = %graphics_gridcontainer.get_child(i) if child is Button: child.visible=true %save_button.visible=false func _conf_theme(index: int) -> void: + print (index) match index: 1: custom_theme = preload("res://res/pixel_ui_theme/RetroDECKTheme.tres") @@ -232,6 +256,6 @@ func combine_tkeys(): #More as a test #$Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/HBoxContainer/GridContainer/cheats.text = tr("TK_CHEATS") + " " + tr("TK_SOON") #%tate_mode.text = tr("TK_TATE") + " " + tr("TK_SOON") #%hotkey_sound.text = tr("TK_HOTKEYSOUND") + " " + tr("TK_SOON") - $Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container/cheevos_hardcore.text = tr("TK_CHEEVOSHARDCORE") + " " + tr("TK_SOON") - $Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container/saves_sync.text = tr("TK_SAVESSYNC") + " " + tr("TK_SOON") - $Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container/easter_eggs.text = tr("TK_EASTEREGGS") + " " + tr("TK_SOON") + #$Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container/cheevos_hardcore.text = tr("TK_CHEEVOSHARDCORE") + " " + tr("TK_SOON") + #$Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container/saves_sync.text = tr("TK_SAVESSYNC") + " " + tr("TK_SOON") + #$Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container/easter_eggs.text = tr("TK_EASTEREGGS") + " " + tr("TK_SOON") diff --git a/tools/configurator/main.tscn b/tools/configurator/main.tscn index 58e80a2e..b1e03c9a 100644 --- a/tools/configurator/main.tscn +++ b/tools/configurator/main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=69 format=3 uid="uid://61f6m4r1mpan"] +[gd_scene load_steps=76 format=3 uid="uid://61f6m4r1mpan"] [ext_resource type="Texture2D" uid="uid://bv6vh33cnfaw4" path="res://icon.svg" id="1_axfei"] [ext_resource type="Theme" uid="uid://hhc60cllcg47" path="res://assets/themes/default_theme.tres" id="1_if8nh"] @@ -9,6 +9,7 @@ [ext_resource type="Texture2D" uid="uid://bdj8vt3vhucq4" path="res://assets/icons/pixelitos/128/cs-display.png" id="4_jldgc"] [ext_resource type="Script" path="res://tk_about.gd" id="4_m4rto"] [ext_resource type="Script" path="res://Rekku.gd" id="4_nqqx3"] +[ext_resource type="Texture2D" uid="uid://suusabsjin6e" path="res://assets/icons/pixelitos/128/applications-graphics.png" id="4_q6hd2"] [ext_resource type="Texture2D" uid="uid://dk856hwnwsuab" path="res://assets/icons/pixelitos/128/retroarch.png" id="4_xcuib"] [ext_resource type="Texture2D" uid="uid://cvr1eijddf6nv" path="res://assets/icons/banner/gamegear.png" id="5_4d7s7"] [ext_resource type="Texture2D" uid="uid://d2lm4mfx1gt86" path="res://assets/graphics/retrodeck_base_shake0.png" id="5_7rjbt"] @@ -43,10 +44,16 @@ [ext_resource type="Texture2D" uid="uid://dtwjo7co226dw" path="res://res/flags/japan_32.png" id="10_e8mt0"] [ext_resource type="Texture2D" uid="uid://bevamv2c8knnn" path="res://assets/icons/pixelitos/128/org.citra_emu.citra.png" id="10_wbaif"] [ext_resource type="Texture2D" uid="uid://dbvjugxp84gsj" path="res://assets/icons/pixelitos/128/org.DolphinEmu.dolphin-emu.png" id="11_61sak"] +[ext_resource type="Texture2D" uid="uid://c0pbart7aj657" path="res://assets/icons/pixelitos/128/preferences-system-time.png" id="11_c3qcy"] [ext_resource type="Texture2D" uid="uid://blwtj4of6fb5y" path="res://assets/icons/pixelitos/128/spacefm.png" id="11_p6y0k"] [ext_resource type="Texture2D" uid="uid://cbwhpqip43aei" path="res://res/flags/china_32.png" id="11_ri2fv"] +[ext_resource type="Texture2D" uid="uid://b763qnm02o5bd" path="res://assets/icons/pixelitos/128/system-reboot.png" id="12_3jrmi"] [ext_resource type="Texture2D" uid="uid://dv6sym5rr1hpu" path="res://assets/icons/banner/psx.png" id="12_pp08o"] +[ext_resource type="Texture2D" uid="uid://ro1kdkjpfq3r" path="res://assets/icons/pixelitos/128/preferences-desktop-notification-bell.png" id="13_8kii4"] +[ext_resource type="Texture2D" uid="uid://dyw0ondpk6ned" path="res://assets/icons/pixelitos/128/search.png" id="14_oe3l4"] [ext_resource type="Texture2D" uid="uid://b164ihk8riiwh" path="res://assets/graphics/space_bground.png" id="15_qdvxo"] +[ext_resource type="Texture2D" uid="uid://cgh3df7ajg2c4" path="res://assets/icons/pixelitos/128/computer.png" id="17_0kr64"] +[ext_resource type="Texture2D" uid="uid://cvt2jky3bbjun" path="res://assets/icons/pixelitos/128/drive-removable-media.png" id="18_h2o3e"] [ext_resource type="Texture2D" uid="uid://dyumvh0ixwrbl" path="res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0042.png" id="30_glnve"] [ext_resource type="Texture2D" uid="uid://cn11vcrybtor4" path="res://assets/icons/kenney_input-prompts-pixel-16/Tiles/tile_0047.png" id="31_j5ri1"] [ext_resource type="Texture2D" uid="uid://cor8ep0fkqm08" path="res://res/Rekku/base.png" id="32_omdu2"] @@ -93,15 +100,6 @@ animations = [{ "speed": 12.0 }] -[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rf0rc"] -texture = ExtResource("4_2tuu4") -texture_margin_left = 6.0 -texture_margin_top = 6.0 -texture_margin_right = 6.0 -texture_margin_bottom = 6.0 -region_rect = Rect2(0, 8, 16, 16) -modulate_color = Color(0.65098, 0.403922, 0.819608, 1) - [sub_resource type="SpriteFrames" id="SpriteFrames_k7pd1"] animations = [{ "frames": [{ @@ -148,6 +146,15 @@ animations = [{ "speed": 5.0 }] +[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rf0rc"] +texture = ExtResource("4_2tuu4") +texture_margin_left = 6.0 +texture_margin_top = 6.0 +texture_margin_right = 6.0 +texture_margin_bottom = 6.0 +region_rect = Rect2(0, 8, 16, 16) +modulate_color = Color(0.65098, 0.403922, 0.819608, 1) + [node name="Control" type="Control"] layout_mode = 3 anchors_preset = 15 @@ -168,150 +175,196 @@ anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 -[node name="MarginContainer" type="MarginContainer" parent="Background"] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_right = -333.0 -offset_bottom = -61.0 -grow_horizontal = 2 -grow_vertical = 2 +[node name="SplitContainer" type="SplitContainer" parent="Background"] +unique_name_in_owner = true +layout_mode = 0 +offset_left = 1.0 +offset_top = 5.0 +offset_right = 1253.0 +offset_bottom = 724.0 -[node name="TabContainer" type="TabContainer" parent="Background/MarginContainer"] +[node name="MarginContainer" type="MarginContainer" parent="Background/SplitContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="TabContainer" type="TabContainer" parent="Background/SplitContainer/MarginContainer"] unique_name_in_owner = true layout_mode = 2 tab_alignment = 1 current_tab = 0 script = ExtResource("3_id6l4") -[node name="TK_GRAPHICS" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] +[node name="Presets" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] +unique_name_in_owner = true layout_mode = 2 script = SubResource("GDScript_203iw") metadata/_tab_index = 0 -[node name="ScrollContainer" type="ScrollContainer" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS"] +[node name="ScrollContainer" type="ScrollContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets"] layout_mode = 2 follow_focus = true -[node name="VBoxContainer" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 -[node name="decorations_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer"] -layout_mode = 2 -text = "TK_DECORATIONS" - -[node name="graphics_grid_container" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer"] +[node name="decorations_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer"] unique_name_in_owner = true layout_mode = 2 -columns = 6 +text = "DECORATIONS - Borders, Widescreen" +icon = ExtResource("4_q6hd2") -[node name="wide_screen" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] -custom_minimum_size = Vector2(125, 125) +[node name="graphics_gridcontainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +columns = 5 + +[node name="wide_screen" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 -size_flags_stretch_ratio = 0.0 tooltip_text = "TK_WSCREEN" -theme_override_constants/check_v_offset = 20 text = "TK_WSCREEN" icon = ExtResource("4_jldgc") -alignment = 1 icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="shaders" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] -custom_minimum_size = Vector2(125, 125) +[node name="shaders" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 tooltip_text = "TK_SHADERS" -theme_override_constants/check_v_offset = 20 text = "TK_SHADERS" icon = ExtResource("5_box56") -alignment = 1 icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="mods" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] -custom_minimum_size = Vector2(125, 125) +[node name="mods" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 tooltip_text = "TK_MODS" -theme_override_constants/check_v_offset = 20 text = "TK_MODS" icon = ExtResource("6_u80kq") -alignment = 1 icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="tate_mode" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] +[node name="tate_mode" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] unique_name_in_owner = true -custom_minimum_size = Vector2(125, 125) +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 tooltip_text = "TK_TATE" -theme_override_constants/check_v_offset = 20 -text = "Tate Mode" +text = "TK_TATE" icon = ExtResource("7_i14ax") -alignment = 1 icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="borders" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] +[node name="borders_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] unique_name_in_owner = true -custom_minimum_size = Vector2(125, 125) +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 tooltip_text = "TK_BORDERS" -theme_override_constants/check_v_offset = 20 text = "TK_BORDERS" icon = ExtResource("5_uiobi") -alignment = 1 icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="hotkey_sound" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] +[node name="hotkey_sound" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] unique_name_in_owner = true -custom_minimum_size = Vector2(125, 125) +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 tooltip_text = "TK_HOTKEYSOUND" text = "TK_HOTKEYSOUND" icon = ExtResource("9_qwq2k") -alignment = 1 clip_text = true icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="buttons" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] +[node name="buttons" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] unique_name_in_owner = true -custom_minimum_size = Vector2(125, 125) +custom_minimum_size = Vector2(200, 200) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 tooltip_text = "TK_BTNLAYOUT" -theme_override_constants/check_v_offset = 20 text = "TK_BTNLAYOUT" icon = ExtResource("9_d2327") -alignment = 1 +clip_text = true icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="save_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/graphics_grid_container"] +[node name="quick_resume" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +custom_minimum_size = Vector2(200, 200) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +tooltip_text = "TK_QRESUME" +text = "TK_QRESUME" +icon = ExtResource("11_c3qcy") +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true +metadata/description = "This is a test description set to this element" + +[node name="rewind" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +custom_minimum_size = Vector2(200, 200) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +tooltip_text = "TK_REWIND" +text = "TK_REWIND" +icon = ExtResource("12_3jrmi") +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true +metadata/description = "This is another, very long and convoluted, description, that I put too much commas in to make in LONGER and more SOPHISTICATED. And I did it twice!!!This is another, very long and convoluted, description, that I put too much commas in to make in LONGER and more SOPHISTICATED." + +[node name="quit_confirm" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +custom_minimum_size = Vector2(200, 200) +layout_mode = 2 +size_flags_horizontal = 0 +size_flags_vertical = 0 +tooltip_text = "TK_CONFIRMEXIT" +text = "TK_CONFIRMEXIT" +icon = ExtResource("13_8kii4") +clip_text = true +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true + +[node name="cheats" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] +unique_name_in_owner = true +custom_minimum_size = Vector2(200, 200) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +tooltip_text = "TK_CHEATS" +text = "TK_CHEATS" +icon = ExtResource("14_oe3l4") +clip_text = true +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true + +[node name="save_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/graphics_gridcontainer"] unique_name_in_owner = true visible = false custom_minimum_size = Vector2(125, 125) @@ -325,14 +378,14 @@ icon_alignment = 1 vertical_icon_alignment = 0 expand_icon = true -[node name="borders_grid_container" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer"] +[node name="borders_gridcontainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer"] unique_name_in_owner = true visible = false layout_mode = 2 theme_override_constants/h_separation = 30 columns = 4 -[node name="CheckBox5" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox5" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -340,7 +393,7 @@ size_flags_vertical = 0 icon = ExtResource("5_ja8to") expand_icon = true -[node name="CheckBox3" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox3" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -348,7 +401,7 @@ size_flags_vertical = 0 icon = ExtResource("6_mvrie") expand_icon = true -[node name="CheckBox4" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox4" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -356,7 +409,7 @@ size_flags_vertical = 0 icon = ExtResource("7_01lqn") expand_icon = true -[node name="CheckBox6" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox6" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -364,7 +417,7 @@ size_flags_vertical = 0 icon = ExtResource("7_b8xj2") expand_icon = true -[node name="CheckBox" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -372,7 +425,7 @@ size_flags_vertical = 0 icon = ExtResource("8_rvph4") expand_icon = true -[node name="CheckBox7" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox7" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -380,7 +433,7 @@ size_flags_vertical = 0 icon = ExtResource("9_s3srh") expand_icon = true -[node name="CheckBox8" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox8" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -388,7 +441,7 @@ size_flags_vertical = 0 icon = ExtResource("10_2jlmn") expand_icon = true -[node name="CheckBox9" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox9" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -396,7 +449,7 @@ size_flags_vertical = 0 icon = ExtResource("5_4d7s7") expand_icon = true -[node name="CheckBox10" type="CheckBox" parent="Background/MarginContainer/TabContainer/TK_GRAPHICS/ScrollContainer/VBoxContainer/borders_grid_container"] +[node name="CheckBox10" type="CheckBox" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/borders_gridcontainer"] custom_minimum_size = Vector2(200, 180) layout_mode = 2 size_flags_horizontal = 0 @@ -404,87 +457,22 @@ size_flags_vertical = 0 icon = ExtResource("12_pp08o") expand_icon = true -[node name="TK_SYSTEM" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] -visible = false -layout_mode = 2 -metadata/_tab_index = 1 - -[node name="ScrollContainer" type="ScrollContainer" parent="Background/MarginContainer/TabContainer/TK_SYSTEM"] -layout_mode = 2 -follow_focus = true - -[node name="VBoxContainer" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer"] -layout_mode = 2 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="controls_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer"] -layout_mode = 2 - -[node name="controls_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container"] -layout_mode = 2 -text = "TK_SYSTEM" - -[node name="controls_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container"] -layout_mode = 2 - -[node name="GridContainer3" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container"] -layout_mode = 2 -columns = 2 - -[node name="quick_resume" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -size_flags_horizontal = 3 -button_pressed = true -text = "TK_QRESUME" -metadata/description = "This is a test description set to this element" - -[node name="quick_resume_adv_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -text = "TK_ADVANCED" - -[node name="rewind" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -size_flags_horizontal = 3 -text = "TK_REWIND" -metadata/description = "This is another, very long and convoluted, description, that I put too much commas in to make in LONGER and more SOPHISTICATED. And I did it twice!!!This is another, very long and convoluted, description, that I put too much commas in to make in LONGER and more SOPHISTICATED." - -[node name="rewind_adv_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -disabled = true -text = "TK_ADVANCED" - -[node name="quit_confirm" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -size_flags_horizontal = 3 -button_pressed = true -text = "TK_CONFIRMEXIT" - -[node name="quit_confirm_adv_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -disabled = true -text = "TK_ADVANCED" - -[node name="cheats" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] +[node name="systems_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer"] unique_name_in_owner = true layout_mode = 2 -size_flags_horizontal = 3 -disabled = true -text = "TK_CHEATS, TK_SOON" +text = "SYSTEMS - Emulators, Console, Computers" +icon = ExtResource("17_0kr64") -[node name="cheats_adv_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3"] -layout_mode = 2 -disabled = true -text = "TK_ADVANCED" - -[node name="GridContainer2" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container"] +[node name="systems_gridcontainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer"] +unique_name_in_owner = true +visible = false layout_mode = 2 size_flags_vertical = 3 theme_override_constants/h_separation = 10 theme_override_constants/v_separation = 10 columns = 6 -[node name="Button3" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button3" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] layout_mode = 2 tooltip_text = "RetroARCH" theme_override_styles/focus = ExtResource("5_rjtkn") @@ -493,7 +481,7 @@ icon = ExtResource("4_xcuib") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="Button8" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button8" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] layout_mode = 2 theme_override_styles/focus = ExtResource("5_rjtkn") text = "Dolphin" @@ -501,7 +489,7 @@ icon = ExtResource("11_61sak") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="Button7" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button7" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] layout_mode = 2 tooltip_text = "CITRA" text = "RPCS3" @@ -509,7 +497,7 @@ icon = ExtResource("8_ec4gt") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="Button5" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button5" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] layout_mode = 2 tooltip_text = "PSPSSPP" theme_override_styles/focus = ExtResource("5_rjtkn") @@ -518,7 +506,7 @@ icon = ExtResource("8_akxf7") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="Button" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] layout_mode = 2 tooltip_text = "Duckstation" theme_override_styles/focus = ExtResource("5_rjtkn") @@ -527,7 +515,7 @@ icon = ExtResource("6_winpq") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="Button2" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button2" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] layout_mode = 2 tooltip_text = "Melon DS" theme_override_styles/focus = ExtResource("5_rjtkn") @@ -536,7 +524,7 @@ icon = ExtResource("7_4otos") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="Button9" type="Button" parent="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer2"] +[node name="Button9" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer/systems_gridcontainer"] visible = false layout_mode = 2 tooltip_text = "CITRA" @@ -546,163 +534,193 @@ icon = ExtResource("10_wbaif") icon_alignment = 1 vertical_icon_alignment = 0 -[node name="TK_TOOLS" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] +[node name="save_resume_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/Presets/ScrollContainer/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "FUNCTIONS - Save states, etc" +icon = ExtResource("18_h2o3e") + +[node name="TK_SYSTEM" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] +visible = false +layout_mode = 2 +metadata/_tab_index = 1 + +[node name="ScrollContainer" type="ScrollContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_SYSTEM"] +layout_mode = 2 +follow_focus = true + +[node name="VBoxContainer" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="controls_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer"] +layout_mode = 2 + +[node name="controls_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container"] +layout_mode = 2 +text = "TK_SYSTEM" + +[node name="controls_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container"] +layout_mode = 2 + +[node name="TK_TOOLS" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] visible = false layout_mode = 2 metadata/_tab_index = 2 -[node name="ScrollContainer" type="ScrollContainer" parent="Background/MarginContainer/TabContainer/TK_TOOLS"] +[node name="ScrollContainer" type="ScrollContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS"] layout_mode = 2 follow_focus = true -[node name="VBoxContainer" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer"] layout_mode = 2 size_flags_horizontal = 3 theme_override_constants/separation = 36 -[node name="scan_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer"] +[node name="scan_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="scan_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="scan_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 text = "TK_SCAN" -[node name="scan_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="scan_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 -[node name="ps3_scan" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="ps3_scan" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 disabled = true text = "TK_PS3SCAN" -[node name="scummvm_scan" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="scummvm_scan" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 disabled = true text = "TK_SCUMMVMSCAN" -[node name="multifile_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="multifile_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 text = "TK_MULTIFILE" -[node name="3ds_decrypt_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="3ds_decrypt_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 disabled = true text = "TK_3DSDECRYPT" -[node name="bios_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="bios_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 text = "TK_BIOS" -[node name="bios_button_expert" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] +[node name="bios_button_expert" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container"] layout_mode = 2 text = "TK_BIOS_EXPERT" -[node name="tools_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer"] +[node name="tools_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="tools_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] +[node name="tools_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] layout_mode = 2 text = "TK_GENTOOLS" -[node name="tools_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] +[node name="tools_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] layout_mode = 2 -[node name="emu_open_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] +[node name="emu_open_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] layout_mode = 2 text = "TK_EMUOPEN" -[node name="steamgrid_install_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] +[node name="steamgrid_install_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] layout_mode = 2 disabled = true text = "TK_GRIDINSTALL" -[node name="ps3_fw_install_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] +[node name="ps3_fw_install_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] layout_mode = 2 text = "TK_PS3FWINSTALL" -[node name="fav_steam" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] +[node name="fav_steam" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/tools_container"] layout_mode = 2 text = "TK_FAVSTEAM" -[node name="file_tools_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer"] +[node name="file_tools_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="file_tools_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] +[node name="file_tools_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] layout_mode = 2 text = "TK_FILETOOLS" -[node name="file_tools_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] +[node name="file_tools_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] layout_mode = 2 -[node name="usb_tool_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] +[node name="usb_tool_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] layout_mode = 2 disabled = true text = "TK_USBTOOL" -[node name="backup_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] +[node name="backup_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] layout_mode = 2 disabled = true text = "TK_BACKUPBTN" -[node name="compress_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] +[node name="compress_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] layout_mode = 2 disabled = true text = "TK_COMPRESSGAMES" -[node name="move_files_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] +[node name="move_files_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/file_tools_container"] layout_mode = 2 disabled = true text = "TK_MOVEFILES" -[node name="TK_NETWORK" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] +[node name="TK_NETWORK" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] visible = false layout_mode = 2 metadata/_tab_index = 3 -[node name="ScrollContainer" type="ScrollContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK"] +[node name="ScrollContainer" type="ScrollContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK"] layout_mode = 2 follow_focus = true -[node name="VBoxContainer" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer"] layout_mode = 2 size_flags_horizontal = 3 theme_override_constants/separation = 64 -[node name="cheevos_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"] +[node name="cheevos_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="cheevos" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] +[node name="cheevos" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] layout_mode = 2 text = "TK_CHEEVOS" -[node name="cheevos_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] +[node name="cheevos_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] layout_mode = 2 -[node name="cheevos_login_container" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] +[node name="cheevos_login_container" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] layout_mode = 2 theme_override_constants/h_separation = 64 columns = 2 -[node name="cheevos_username_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] +[node name="cheevos_username_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 text = "TK_CHEEVOSUNAME" -[node name="cheevos_username" type="LineEdit" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] +[node name="cheevos_username" type="LineEdit" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] custom_minimum_size = Vector2(256, 0) layout_mode = 2 size_flags_horizontal = 3 text = "username" placeholder_text = "username" -[node name="cheevos_pass_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] +[node name="cheevos_pass_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 1 text = "TK_CHEEVOSPWD" -[node name="cheevos_pass" type="LineEdit" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] +[node name="cheevos_pass" type="LineEdit" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_login_container"] layout_mode = 2 size_flags_horizontal = 3 text = "password" @@ -710,128 +728,128 @@ placeholder_text = "password" secret = true secret_character = "*" -[node name="cheevos_advanced_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] +[node name="cheevos_advanced_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container"] layout_mode = 2 -[node name="cheevos_advanced_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container"] +[node name="cheevos_advanced_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container"] layout_mode = 2 disabled = true text = "TK_ADVANCED" -[node name="cheevos_hardcore" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container"] +[node name="cheevos_hardcore" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container"] layout_mode = 2 disabled = true text = "TK_CHEEVOSHARDCORE" -[node name="cheevos_loginout_container" type="HBoxContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container"] +[node name="cheevos_loginout_container" type="HBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container"] layout_mode = 2 size_flags_horizontal = 8 theme_override_constants/separation = 10 -[node name="cheevos_trophies_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container/cheevos_loginout_container"] +[node name="cheevos_trophies_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container/cheevos_loginout_container"] layout_mode = 2 disabled = true text = "TK_CHEEVOSTROPHYBTN" -[node name="cheevos_loginout_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container/cheevos_loginout_container"] +[node name="cheevos_loginout_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/cheevos_container/cheevos_advanced_container/cheevos_loginout_container"] layout_mode = 2 text = "TK_LOGIN" -[node name="netplay_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"] +[node name="netplay_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="netplay" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container"] +[node name="netplay" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container"] layout_mode = 2 text = "TK_NETPLAY" -[node name="netplay_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container"] +[node name="netplay_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container"] layout_mode = 2 -[node name="netplay_id_container" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container"] +[node name="netplay_id_container" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container"] layout_mode = 2 theme_override_constants/h_separation = 64 columns = 2 -[node name="netplay_id_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] +[node name="netplay_id_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 5 text = "TK_NETPLAYID" -[node name="netplay_id" type="LineEdit" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] +[node name="netplay_id" type="LineEdit" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] custom_minimum_size = Vector2(256, 0) layout_mode = 2 size_flags_horizontal = 3 text = "RetroDECK" placeholder_text = "RetroDECK" -[node name="netplay_address_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] +[node name="netplay_address_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 5 text = "TK_NETPLAYADDRESS" -[node name="netplay_address" type="LineEdit" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] +[node name="netplay_address" type="LineEdit" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] layout_mode = 2 size_flags_horizontal = 3 text = "127.0.0.1" placeholder_text = "127.0.0.1" -[node name="blank_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] +[node name="blank_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 5 -[node name="netplay_connect_disconnect_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] +[node name="netplay_connect_disconnect_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/netplay_container/netplay_id_container"] layout_mode = 2 text = "TK_NETPLAYCONNECT" -[node name="data_mng_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"] +[node name="data_mng_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="data_mng_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] +[node name="data_mng_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] layout_mode = 2 text = "TK_DATAMNG" -[node name="data_mng_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] +[node name="data_mng_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] layout_mode = 2 -[node name="saves_sync" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] +[node name="saves_sync" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] layout_mode = 2 size_flags_horizontal = 3 disabled = true text = "TK_SAVESSYNC" -[node name="ftp_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] +[node name="ftp_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_NETWORK/ScrollContainer/VBoxContainer/data_mng_container"] layout_mode = 2 size_flags_horizontal = 3 disabled = true text = "TK_FTPBTN" -[node name="TK_TROUBLESHOOT" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] +[node name="TK_TROUBLESHOOT" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] visible = false layout_mode = 2 metadata/_tab_index = 4 -[node name="VBoxContainer" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT"] +[node name="VBoxContainer" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT"] layout_mode = 2 theme_override_constants/separation = 64 -[node name="troubleshoot_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer"] +[node name="troubleshoot_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer"] layout_mode = 2 -[node name="troubleshoot_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] +[node name="troubleshoot_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] layout_mode = 2 text = "TK_TROUBLESHOOTLBL" -[node name="troubleshoot_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] +[node name="troubleshoot_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] layout_mode = 2 -[node name="check_conn_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] +[node name="check_conn_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] layout_mode = 2 text = "TK_CHECKCONN" -[node name="logs_button" type="OptionButton" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] +[node name="logs_button" type="OptionButton" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/troubleshoot_container"] unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 4 @@ -847,61 +865,61 @@ popup/item_2/id = 2 popup/item_3/text = "Retroarch" popup/item_3/id = 3 -[node name="reset_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer"] +[node name="reset_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer"] layout_mode = 2 -[node name="reset_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] +[node name="reset_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] layout_mode = 2 text = "TK_RESET" -[node name="reset_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] +[node name="reset_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] layout_mode = 2 -[node name="reset_single_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] +[node name="reset_single_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] layout_mode = 2 text = "TK_RESETSINGLE" -[node name="reset_all_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] +[node name="reset_all_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] layout_mode = 2 text = "TK_RESETALL" -[node name="reset_full_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] +[node name="reset_full_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/reset_container"] layout_mode = 2 text = "TK_RESETFULL" -[node name="controls_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer"] +[node name="controls_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer"] layout_mode = 2 -[node name="controls_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] +[node name="controls_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] layout_mode = 2 text = "TK_CONTROLS" -[node name="controls_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] +[node name="controls_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] layout_mode = 2 -[node name="controller_templates_container" type="HBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] +[node name="controller_templates_container" type="HBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] layout_mode = 2 -[node name="controller_templates" type="Label" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container/controller_templates_container"] +[node name="controller_templates" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container/controller_templates_container"] layout_mode = 2 size_flags_horizontal = 3 text = "TK_STEAMCONTEMP" -[node name="controller_templater_install_button" type="Button" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container/controller_templates_container"] +[node name="controller_templater_install_button" type="Button" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container/controller_templates_container"] layout_mode = 2 size_flags_horizontal = 10 size_flags_vertical = 4 text = "TK_INSTALL" -[node name="button_layout_container" type="HBoxContainer" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] +[node name="button_layout_container" type="HBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/VBoxContainer/controls_container"] layout_mode = 2 -[node name="status_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT"] +[node name="status_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT"] unique_name_in_owner = true layout_mode = 2 text = "Status:" -[node name="status_code_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_TROUBLESHOOT/status_label"] +[node name="status_code_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_TROUBLESHOOT/status_label"] unique_name_in_owner = true layout_mode = 0 offset_left = 87.0 @@ -909,52 +927,52 @@ offset_top = 3.0 offset_right = 144.0 offset_bottom = 35.0 -[node name="TK_CONFIGURATOR" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] +[node name="Settings" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] visible = false layout_mode = 2 metadata/_tab_index = 5 -[node name="ScrollContainer" type="ScrollContainer" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR"] +[node name="ScrollContainer" type="ScrollContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings"] layout_mode = 2 follow_focus = true -[node name="VBoxContainer" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 theme_override_constants/separation = 64 -[node name="system_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer"] +[node name="system_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer"] layout_mode = 2 -[node name="system_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="system_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 text = "TK_SYSTEM" -[node name="system_separator" type="HSeparator" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="system_separator" type="HSeparator" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 -[node name="update_notification" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="update_notification" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 button_pressed = true text = "TK_UPDATENOTIF" -[node name="easter_eggs" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="easter_eggs" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 disabled = true button_pressed = true text = "TK_EASTEREGGS" -[node name="multi_user_container" type="HBoxContainer" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="multi_user_container" type="HBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 -[node name="multi_user_label" type="Label" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container/multi_user_container"] +[node name="multi_user_label" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container/multi_user_container"] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 1 text = "TK_MULTIUSR" -[node name="multi_user_option" type="OptionButton" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container/multi_user_container"] +[node name="multi_user_option" type="OptionButton" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container/multi_user_container"] layout_mode = 2 size_flags_horizontal = 10 selected = 0 @@ -965,17 +983,17 @@ popup/item_1/id = 1 popup/item_2/text = "TK_CUSTOMUSR" popup/item_2/id = 2 -[node name="menu_music" type="CheckButton" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="menu_music" type="CheckButton" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 button_pressed = true text = "TK_MUSIC" -[node name="fancy_audio_player_here_(please_no)" type="Label" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer/system_container"] +[node name="fancy_audio_player_here_(please_no)" type="Label" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer/system_container"] layout_mode = 2 size_flags_vertical = 1 text = "|| ------( )--------" -[node name="theme_optionbutton" type="OptionButton" parent="Background/MarginContainer/TabContainer/TK_CONFIGURATOR/ScrollContainer/VBoxContainer"] +[node name="theme_optionbutton" type="OptionButton" parent="Background/SplitContainer/MarginContainer/TabContainer/Settings/ScrollContainer/VBoxContainer"] unique_name_in_owner = true layout_mode = 2 selected = 0 @@ -992,20 +1010,20 @@ popup/item_3/id = 3 popup/item_4/text = "OpenDyslexic3" popup/item_4/id = 4 -[node name="TK_ABOUT" type="MarginContainer" parent="Background/MarginContainer/TabContainer"] +[node name="TK_ABOUT" type="MarginContainer" parent="Background/SplitContainer/MarginContainer/TabContainer"] visible = false layout_mode = 2 script = ExtResource("4_m4rto") metadata/_tab_index = 6 -[node name="ScrollContainer" type="ScrollContainer" parent="Background/MarginContainer/TabContainer/TK_ABOUT"] +[node name="ScrollContainer" type="ScrollContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT"] layout_mode = 2 -[node name="about_container" type="VBoxContainer" parent="Background/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer"] +[node name="about_container" type="VBoxContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer"] layout_mode = 2 alignment = 1 -[node name="rd_title" type="RichTextLabel" parent="Background/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"] +[node name="rd_title" type="RichTextLabel" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"] unique_name_in_owner = true clip_contents = false custom_minimum_size = Vector2(300, 150) @@ -1015,7 +1033,7 @@ scroll_active = false autowrap_mode = 2 tab_size = 2 -[node name="logo" type="TextureRect" parent="Background/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container/rd_title"] +[node name="logo" type="TextureRect" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container/rd_title"] custom_minimum_size = Vector2(128, 128) layout_mode = 2 offset_left = 166.0 @@ -1028,7 +1046,7 @@ texture = ExtResource("1_axfei") expand_mode = 1 stretch_mode = 4 -[node name="about_header" type="RichTextLabel" parent="Background/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"] +[node name="about_header" type="RichTextLabel" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"] clip_contents = false custom_minimum_size = Vector2(0, 40) layout_mode = 2 @@ -1037,46 +1055,26 @@ theme_override_font_sizes/normal_font_size = 23 text = "TK_ABOUTHEADER" scroll_active = false -[node name="GridContainer" type="GridContainer" parent="Background/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"] +[node name="GridContainer" type="GridContainer" parent="Background/SplitContainer/MarginContainer/TabContainer/TK_ABOUT/ScrollContainer/about_container"] unique_name_in_owner = true layout_mode = 2 theme_override_constants/h_separation = 20 theme_override_constants/v_separation = 20 columns = 5 -[node name="side_logo" type="Control" parent="Background"] -layout_mode = 1 -anchors_preset = 6 -anchor_left = 1.0 -anchor_top = 0.5 -anchor_right = 1.0 -anchor_bottom = 0.5 -offset_left = -254.0 -offset_top = -277.0 -offset_right = -14.0 -offset_bottom = -42.0 -grow_horizontal = 0 -grow_vertical = 2 - -[node name="TextureRect" type="TextureRect" parent="Background/side_logo"] -visible = false -layout_mode = 0 -offset_left = -82.0 -offset_top = -120.0 -offset_right = 247.0 -offset_bottom = 676.0 -texture = ExtResource("15_qdvxo") -expand_mode = 1 - -[node name="logo_animated" type="AnimatedSprite2D" parent="Background/side_logo"] +[node name="logo_animated" type="AnimatedSprite2D" parent="Background/SplitContainer/MarginContainer"] unique_name_in_owner = true -position = Vector2(138, 53) +visible = false +position = Vector2(1374, 104) scale = Vector2(0.28, 0.288333) sprite_frames = SubResource("SpriteFrames_lhf2y") frame = 4 frame_progress = 1.0 -[node name="rekku" type="Control" parent="Background/side_logo"] +[node name="side_logo" type="Control" parent="Background/SplitContainer"] +layout_mode = 2 + +[node name="rekku" type="Control" parent="Background/SplitContainer/side_logo"] visible = false layout_mode = 1 anchors_preset = 7 @@ -1094,32 +1092,48 @@ mouse_filter = 1 mouse_default_cursor_shape = 8 script = ExtResource("4_nqqx3") -[node name="speach_bubble" type="Panel" parent="Background/side_logo/rekku"] +[node name="rekku_sprite" type="Sprite2D" parent="Background/SplitContainer/side_logo/rekku"] +position = Vector2(530.5, -989) +scale = Vector2(0.264648, 0.302734) +texture = ExtResource("32_omdu2") + +[node name="blink_anim" type="AnimatedSprite2D" parent="Background/SplitContainer/side_logo/rekku/rekku_sprite"] +sprite_frames = SubResource("SpriteFrames_k7pd1") +animation = &"blink" +autoplay = "blink" +frame_progress = 0.188668 + +[node name="speech_anim" type="AnimatedSprite2D" parent="Background/SplitContainer/side_logo/rekku/rekku_sprite"] +sprite_frames = SubResource("SpriteFrames_l20mt") +animation = &"speech" +autoplay = "speech" + +[node name="speach_bubble" type="Panel" parent="Background/SplitContainer/side_logo/rekku"] layout_mode = 1 anchors_preset = 7 anchor_left = 0.5 anchor_top = 1.0 anchor_right = 0.5 anchor_bottom = 1.0 -offset_left = 303.0 -offset_top = -437.0 -offset_right = 638.0 -offset_bottom = -7.0 +offset_left = 395.0 +offset_top = -830.0 +offset_right = 673.0 +offset_bottom = -402.0 grow_horizontal = 2 grow_vertical = 0 theme_override_styles/panel = SubResource("StyleBoxTexture_rf0rc") -[node name="helper_text" type="RichTextLabel" parent="Background/side_logo/rekku/speach_bubble"] +[node name="helper_text" type="RichTextLabel" parent="Background/SplitContainer/side_logo/rekku"] layout_mode = 1 anchors_preset = 8 anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 -offset_left = -152.5 -offset_top = -201.0 -offset_right = 167.5 -offset_bottom = 213.0 +offset_left = 414.0 +offset_top = -815.0 +offset_right = 668.0 +offset_bottom = -420.0 grow_horizontal = 2 grow_vertical = 2 text = "Rekku: @@ -1130,23 +1144,17 @@ fit_content = true scroll_following = true script = ExtResource("5_cprkf") -[node name="rekku_sprite" type="Sprite2D" parent="Background/side_logo/rekku"] -position = Vector2(466, -653.5) -scale = Vector2(0.271484, 0.264648) -texture = ExtResource("32_omdu2") +[node name="TextureRect" type="TextureRect" parent="Background/SplitContainer/side_logo"] +visible = false +layout_mode = 0 +offset_left = -82.0 +offset_top = -120.0 +offset_right = 247.0 +offset_bottom = 676.0 +texture = ExtResource("15_qdvxo") +expand_mode = 1 -[node name="blink_anim" type="AnimatedSprite2D" parent="Background/side_logo/rekku/rekku_sprite"] -sprite_frames = SubResource("SpriteFrames_k7pd1") -animation = &"blink" -autoplay = "blink" -frame_progress = 0.188668 - -[node name="speech_anim" type="AnimatedSprite2D" parent="Background/side_logo/rekku/rekku_sprite"] -sprite_frames = SubResource("SpriteFrames_l20mt") -animation = &"speech" -autoplay = "speech" - -[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] +[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="Background"] stream = ExtResource("3_xivj6") volume_db = -11.243 @@ -1261,8 +1269,7 @@ popup/item_5/id = 5 popup/item_6/icon = ExtResource("11_ri2fv") popup/item_6/id = 6 -[connection signal="pressed" from="Background/MarginContainer/TabContainer/TK_SYSTEM/ScrollContainer/VBoxContainer/controls_container/GridContainer3/quick_resume_adv_button" to="." method="_on_quickresume_advanced_pressed"] -[connection signal="pressed" from="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container/bios_button" to="." method="_on_bios_button_pressed"] -[connection signal="pressed" from="Background/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container/bios_button_expert" to="." method="_on_bios_button_expert_pressed"] +[connection signal="pressed" from="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container/bios_button" to="." method="_on_bios_button_pressed"] +[connection signal="pressed" from="Background/SplitContainer/MarginContainer/TabContainer/TK_TOOLS/ScrollContainer/VBoxContainer/scan_container/bios_button_expert" to="." method="_on_bios_button_expert_pressed"] [connection signal="pressed" from="coltroller_guide/controller_guide_text/exit_button" to="." method="_on_exit_button_pressed"] [connection signal="item_selected" from="coltroller_guide/controller_guide_text/locale_option" to="." method="_on_locale_selected"] diff --git a/tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres b/tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres index d9ac3d3a..ce995125 100644 --- a/tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres +++ b/tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres @@ -1087,7 +1087,7 @@ cache/0/16/0/glyphs/95/uv_rect = Rect2(92, 148, 6, 1) cache/0/16/0/glyphs/95/texture_idx = 0 cache/0/16/0/kerning_overrides/16/0 = Vector2(0, 0) -[sub_resource type="Image" id="Image_cwno6"] +[sub_resource type="Image" id="Image_5erl7"] data = { "data": PackedByteArray("4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg/////////////////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4P//////////4ODg4ODg4OD//////////+Dg4ODg4ODg///////////g4ODg4ODg4A=="), "format": "Lum8", @@ -1097,9 +1097,9 @@ data = { } [sub_resource type="ImageTexture" id="447"] -image = SubResource("Image_cwno6") +image = SubResource("Image_5erl7") -[sub_resource type="Image" id="Image_78psa"] +[sub_resource type="Image" id="Image_u2s1p"] data = { "data": PackedByteArray("AAQACgARABkAHwAiACQAJAAkACQAIgAfABkAEQAKAAQACgAVACUANAA/AEYARwBIAEgARwBGAD8ANAAlABUACgARACU/d1rvVv9W/1b/Vv9W/1b/Vv9W/1rvP3cAJQARABkANFnvSP9E/0P/Q/9D/0P/Q/9D/0T/SP9Z7wA0ABkAHwA/VP9D/0P/Q/9D/0P/Q/9D/0P/Q/9D/1T/AD8AHwAiAEZS/0L/Qv9C/0L/Qv9C/0L/Qv9C/0L/Uv8ARgAiACQAR1H/QP9A/0D/QP9A/0D/QP9A/0D/QP9R/wBHACQAJABIT/8//z//P/8//z//P/8//z//P/8//0//AEgAJAAkAEhN/z7/Pv8+/z7/Pv8+/z7/Pv8+/z7/Tf8ASAAkACQAR0z/Pf89/z3/Pf89/z3/Pf89/z3/Pf9M/wBHACQAIgBGSv87/zv/O/87/zv/O/87/zv/O/87/0r/AEYAIgAfAD9J/zr/Ov86/zr/Ov86/zr/Ov86/zr/Sf8APwAfABkANEvvPf85/zn/Of85/zn/Of85/zn/Pf9L7wA0ABkAEQAlNXdK70f/Rv9G/0b/Rv9G/0b/R/9K7TV3ACUAEQAKABUAJQA0AD8ARgBHAEgASABHAEYAPwA0ACUAFQAKAAQACgARABkAHwAiACQAJAAkACQAIgAfABkAEQAKAAQ="), "format": "LumAlpha8", @@ -1109,7 +1109,7 @@ data = { } [sub_resource type="ImageTexture" id="53"] -image = SubResource("Image_78psa") +image = SubResource("Image_u2s1p") [sub_resource type="StyleBoxTexture" id="54"] content_margin_left = 6.0 @@ -1123,7 +1123,7 @@ expand_margin_right = 2.0 expand_margin_bottom = 2.0 region_rect = Rect2(0, 0, 16, 16) -[sub_resource type="Image" id="Image_6w4th"] +[sub_resource type="Image" id="Image_7jtn8"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvw5HjL85R4y/aEeMv3pHjL97R4y/e0eMv3tHjL97R4y/ekeMv2hHjL85R4y/DgAAAAAAAAAAAAAAAAAAAABHjL86R4y/dEeMvxBHjL8IR4y/CEeMvwhHjL8IR4y/CEeMvwhHjL8QR4y/dEeMvzoAAAAAAAAAAAAAAAAAAAAAR4y/aUeMvw8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvw9HjL9pAAAAAAAAAAAAAAAAAAAAAEeMv3tHjL8GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHjL8GR4y/ewAAAAAAAAAAAAAAAAAAAABHjL97R4y/CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR4y/CEeMv3sAAAAAAAAAAAAAAAAAAAAAR4y/e0eMvwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvwhHjL97AAAAAAAAAAAAAAAAAAAAAEeMv3tHjL8IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHjL8IR4y/ewAAAAAAAAAAAAAAAAAAAABHjL97R4y/CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR4y/CEeMv3sAAAAAAAAAAAAAAAAAAAAAR4y/e0eMvwYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEeMvwZHjL97AAAAAAAAAAAAAAAAAAAAAEeMv2lHjL8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHjL8OR4y/aQAAAAAAAAAAAAAAAAAAAABHjL86R4y/dUeMvw9HjL8IR4y/CEeMvwhHjL8IR4y/CEeMvwhHjL8RR4y/dEeMvzoAAAAAAAAAAAAAAAAAAAAAR4y/DkeMvzpHjL9oR4y/ekeMv3tHjL97R4y/e0eMv3tHjL96R4y/aEeMvzlHjL8OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -1133,7 +1133,7 @@ data = { } [sub_resource type="ImageTexture" id="56"] -image = SubResource("Image_6w4th") +image = SubResource("Image_7jtn8") [sub_resource type="StyleBoxTexture" id="57"] content_margin_left = 6.0 @@ -1147,7 +1147,7 @@ expand_margin_right = 2.0 expand_margin_bottom = 2.0 region_rect = Rect2(0, 0, 16, 16) -[sub_resource type="Image" id="Image_3ny84"] +[sub_resource type="Image" id="Image_vhvkw"] data = { "data": PackedByteArray("AAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABAAAAAoAAAAVAAAAJQAAADQAAAA/AAAARgAAAEcAAABIAAAASAAAAEcAAABGAAAAPwAAADQAAAAlAAAAFQAAAAoAAAARAAAAJUJAS3dfWmzvW1do/1pWZ/9aVmf/WlZn/1pWZ/9aVmf/WlZn/1tXaP9fWmzvQkBLdwAAACUAAAARAAAAGQAAADRfWmvvTUpX/0lGUv9IRVH/SEVR/0hFUf9IRVH/SEVR/0hFUf9JRlL/TUpX/19aa+8AAAA0AAAAGQAAAB8AAAA/W1dm/0lGUv9IRVH/SEVR/0hFUf9IRVH/SEVR/0hFUf9IRVH/SEVR/0lGUv9bV2b/AAAAPwAAAB8AAAAiAAAARllVZP9HRFD/R0RQ/0dEUP9HRFD/R0RQ/0dEUP9HRFD/R0RQ/0dEUP9HRFD/WVVk/wAAAEYAAAAiAAAAJAAAAEdYVGT/RkNQ/0ZDUP9GQ1D/RkNQ/0ZDUP9GQ1D/RkNQ/0ZDUP9GQ1D/RkNQ/1hUZP8AAABHAAAAJAAAACQAAABIVlNj/0VCT/9FQk//RUJP/0VCT/9FQk//RUJP/0VCT/9FQk//RUJP/0VCT/9WU2P/AAAASAAAACQAAAAkAAAASFZTYv9FQk7/RUJO/0VCTv9FQk7/RUJO/0VCTv9FQk7/RUJO/0VCTv9FQk7/VlNi/wAAAEgAAAAkAAAAJAAAAEdVUWL/REFO/0RBTv9EQU7/REFO/0RBTv9EQU7/REFO/0RBTv9EQU7/REFO/1VRYv8AAABHAAAAJAAAACIAAABGVVFg/0RBTf9EQU3/REFN/0RBTf9EQU3/REFN/0RBTf9EQU3/REFN/0RBTf9VUWD/AAAARgAAACIAAAAfAAAAP1VRYP9EQU3/Q0BM/0NATP9DQEz/Q0BM/0NATP9DQEz/Q0BM/0NATP9EQU3/VVFg/wAAAD8AAAAfAAAAGQAAADRWU2TvR0NR/0M/Tf9CP0z/Qj9M/0I/TP9CP0z/Qj9M/0I/TP9DP03/R0NR/1dTZO8AAAA0AAAAGQAAABEAAAAlPjtGd1dTY+9TUF//U09e/1NPXv9TT17/U09e/1NPXv9TT17/U1Bf/1dTY+0+O0Z3AAAAJQAAABEAAAAKAAAAFQAAACUAAAA0AAAAPwAAAEYAAABHAAAASAAAAEgAAABHAAAARgAAAD8AAAA0AAAAJQAAABUAAAAKAAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABA=="), "format": "RGBA8", @@ -1157,7 +1157,7 @@ data = { } [sub_resource type="ImageTexture" id="59"] -image = SubResource("Image_3ny84") +image = SubResource("Image_vhvkw") [sub_resource type="StyleBoxTexture" id="60"] content_margin_left = 6.0 @@ -1175,7 +1175,7 @@ expand_margin_right = 2.0 expand_margin_bottom = 2.0 region_rect = Rect2(0, 0, 16, 16) -[sub_resource type="Image" id="Image_c8ssd"] +[sub_resource type="Image" id="Image_djtfc"] data = { "data": PackedByteArray("AAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABAAAAAoAAAAVAAAAJQAAADQAAAA/AAAARgAAAEcAAABIAAAASAAAAEcAAABGAAAAPwAAADQAAAAlAAAAFQAAAAoAAAARAAAAJTw6RHdWU2HvUlBd/1FPXf9RT13/UU9d/1FPXf9RT13/UU9d/1JQXf9WU2HvPDpEdwAAACUAAAARAAAAGQAAADRWUmDvRkJO/0I+Sv9BPkn/QT5J/0E+Sf9BPkn/QT5J/0E+Sf9CPkr/RkJO/1ZSYO8AAAA0AAAAGQAAAB8AAAA/UU5b/0E+Sf9APkj/QD5I/0A+SP9APkj/QD5I/0A+SP9APkj/QD5I/0E+Sf9RTlv/AAAAPwAAAB8AAAAiAAAARk9MWf8/PUf/Pz1H/z89R/8/PUf/Pz1H/z89R/8/PUf/Pz1H/z89R/8/PUf/T0xZ/wAAAEYAAAAiAAAAJAAAAEdOSlj/PjtG/z47Rv8+O0b/PjtG/z47Rv8+O0b/PjtG/z47Rv8+O0b/PjtG/05KWP8AAABHAAAAJAAAACQAAABIS0lV/zw6RP88OkT/PDpE/zw6RP88OkT/PDpE/zw6RP88OkT/PDpE/zw6RP9LSVX/AAAASAAAACQAAAAkAAAASEpHVP87OUP/OzlD/zs5Q/87OUP/OzlD/zs5Q/87OUP/OzlD/zs5Q/87OUP/SkdU/wAAAEgAAAAkAAAAJAAAAEdJRlP/OjhC/zo4Qv86OEL/OjhC/zo4Qv86OEL/OjhC/zo4Qv86OEL/OjhC/0lGU/8AAABHAAAAJAAAACIAAABGR0VQ/zk3QP85N0D/OTdA/zk3QP85N0D/OTdA/zk3QP85N0D/OTdA/zk3QP9HRVD/AAAARgAAACIAAAAfAAAAP0dDUP84NT//ODU//zg1P/84NT//ODU//zg1P/84NT//ODU//zg1P/84NT//R0NQ/wAAAD8AAAAfAAAAGQAAADRHRFLvOjhC/zY0Pv82ND7/NjQ+/zY0Pv82ND7/NjQ+/zY0Pv82ND7/OjhC/0dEUu8AAAA0AAAAGQAAABEAAAAlMzE5d0dEUO9EQk3/REFM/0RBTP9EQUz/REFM/0RBTP9EQUz/REJN/0dEUe0zMTl3AAAAJQAAABEAAAAKAAAAFQAAACUAAAA0AAAAPwAAAEYAAABHAAAASAAAAEgAAABHAAAARgAAAD8AAAA0AAAAJQAAABUAAAAKAAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABA=="), "format": "RGBA8", @@ -1185,7 +1185,7 @@ data = { } [sub_resource type="ImageTexture" id="62"] -image = SubResource("Image_c8ssd") +image = SubResource("Image_djtfc") [sub_resource type="StyleBoxTexture" id="63"] content_margin_left = 6.0 @@ -1199,7 +1199,7 @@ expand_margin_right = 2.0 expand_margin_bottom = 2.0 region_rect = Rect2(0, 0, 16, 16) -[sub_resource type="Image" id="Image_4lf0a"] +[sub_resource type="Image" id="Image_dfxxt"] data = { "data": PackedByteArray("AAAABAAAAAoAAAARAAAAGQAAAB8AAAAiAAAAJAAAACQAAAAkAAAAJAAAACIAAAAfAAAAGQAAABEAAAAKAAAABAAAAAsAAAAWAAAAJwAAADYAAABBAAAASQAAAEoAAABLAAAASwAAAEoAAABJAAAAQQAAADYAAAAnAAAAFgAAAAsAAAATAAAAKTEvN4BGQ0/xQ0BM/0JAS/9CQEv/QkBL/0JAS/9CQEv/QkBL/0NATP9GQ0/xMS83fwAAACkAAAATAAAAHgAAAD1HRFDyOjhB/wsLDP8LCgz/CwoM/wsKDP8LCgz/CwsM/wsLDP8LCwz/OjhB/0dEUPIAAAA9AAAAHgAAACcAAABNREJO/w8OEf8PDhH/Dw4R/w8OEf8PDhH/Dw4R/w8OEf8PDhH/Dw4R/w8OEf9EQk7/AAAATQAAACcAAAAsAAAAWEZCT/8UExb/ExIW/xMSFv8UExb/ExIW/xQTFv8UExb/FBMW/xQTFv8TEhb/RkJP/wAAAFgAAAAsAAAAMgAAAF1HRVD/GBcb/xgXG/8YFxv/GBcb/xgXG/8YFxv/GBcb/xkYHP8YFxv/GBcb/0dFUP8AAABdAAAAMgAAADMAAABjSUZT/x0cIf8dHCH/HRwh/x0cIf8dHCH/HRwh/x0cIf8dHCH/HRwh/x0cIf9JRlP/AAAAYwAAADMAAAA2AAAAZkpHVP8iISf/IiEn/yIhJ/8iISf/IiEn/yIhJ/8iISf/IiEn/yIhJ/8iISf/SkdU/wAAAGYAAAA2AAAAOQAAAGlLSVX/JyYt/ycmLf8nJi3/JyYt/ycmLf8nJi3/JyYt/ygmLf8nJi3/KCYt/0tJVf8AAABpAAAAOQAAADgAAABsTkpY/y0rM/8tKzP/LSsz/y0rM/8tKzP/LSsz/y0rM/8tKzP/LSsz/y0rM/9OSlj/AAAAbAAAADgAAAA1AAAAZVBNWv8zMTr/MzE5/zMxOf8zMTn/MzE5/zMxOf8zMTn/MzE5/zMxOf8zMTr/UE1a/wAAAGUAAAA1AAAALQAAAFlVUl/8RUJN/zk3QP84N0D/OTdA/zg3QP84N0D/ODdA/zg3QP86N0H/RUJN/1VSYPwAAABZAAAALQAAACAAAABEPTpFtFZSYP1STlz/UU5b/1FOW/9RTlv/UU5b/1FOW/9RTlv/Uk5c/1ZSYP09OkW0AAAARAAAACAAAAAUAAAAKAAAAEUAAABdAAAAbgAAAHkAAAB6AAAAfAAAAHwAAAB6AAAAeQAAAG4AAABdAAAARQAAACgAAAAUAAAACAAAABQAAAAhAAAAMAAAADoAAAA/AAAAQwAAAEMAAABDAAAAQwAAAD8AAAA6AAAAMAAAACEAAAAUAAAACA=="), "format": "RGBA8", @@ -1209,7 +1209,7 @@ data = { } [sub_resource type="ImageTexture" id="65"] -image = SubResource("Image_4lf0a") +image = SubResource("Image_dfxxt") [sub_resource type="StyleBoxTexture" id="66"] content_margin_left = 6.0 @@ -1223,7 +1223,7 @@ expand_margin_right = 2.0 expand_margin_bottom = 2.0 region_rect = Rect2(0, 0, 16, 16) -[sub_resource type="Image" id="Image_l6tdu"] +[sub_resource type="Image" id="Image_cu3dl"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAADf39+IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAA4ODg/9/f34gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAODg4P/g4OD/39/fiAAAAAAAAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAADg4OD/4ODg/+Dg4P/f39+IAAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAAAAAAAAAAAAAAAAAADg4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P8AAAAAAAAAAAAAAAAAAAAA4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/AAAAAAAAAAAAAAAAAAAAAODg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -1233,9 +1233,9 @@ data = { } [sub_resource type="ImageTexture" id="425"] -image = SubResource("Image_l6tdu") +image = SubResource("Image_cu3dl") -[sub_resource type="Image" id="Image_afyw0"] +[sub_resource type="Image" id="Image_06k3s"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4MXg/+D/4P/g/+D/4P/gwwAAAAAAAAAAAAAAAAAAAADg/+D/4P/g/+D/4P/g/+D/AAAAAAAAAAAAAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P/hPAAAAAAAAAAAAAAAAAAA4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/gwwAAAADg/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/AAAAAOD/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P8AAAAA4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/wAAAADg/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/AAAAAOD/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P8AAAAA4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/wAAAADg/+D/4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/AAAAAODD4P/g/+D/4P/g/+D/4P/g/+D/4P/g/+D/38IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="), "format": "LumAlpha8", @@ -1245,9 +1245,9 @@ data = { } [sub_resource type="ImageTexture" id="427"] -image = SubResource("Image_afyw0") +image = SubResource("Image_06k3s") -[sub_resource type="Image" id="Image_vvdgo"] +[sub_resource type="Image" id="Image_g0jqc"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3hfgz+DO3hcAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3Bbh0uD+4P7g1+AZAAAAAAAAAAAAAAAAAAAAAAAA3Bbh0uD+4P7g/uD+4NfgGQAAAAAAAAAAAAAAAAAA3hfg1OD+4NHg/uD94dLg/uDU3hcAAAAAAAAAAAAAAADgzeD+4NDcFuD+4P3bFeDR4P7gzAAAAAAAAAAAAAAAAOC+4MXZFP8B4P7g/QAA2xXhyeDFAAAAAAAAAAAAAAAAAAAAAAAA/wHg/uD9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AeD+4P0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4MThwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="), "format": "LumAlpha8", @@ -1257,9 +1257,9 @@ data = { } [sub_resource type="ImageTexture" id="429"] -image = SubResource("Image_vvdgo") +image = SubResource("Image_g0jqc") -[sub_resource type="Image" id="Image_rcb5g"] +[sub_resource type="Image" id="Image_gk346"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADbB99u4Mfg8+Dz4MfebdsHAAAAAAAAAAAAAAAAAADjG+DP4P7g/uD+4P7g/uD+4M7jGwAAAAAAAAAAAADbB+DP4P7g4eBT2A3YDd9Q4Nfg/uDO2wcAAAAAAAAAAN9u4P7g4eMSAAAAAAAAAADhEeDh4P7ebAAAAAAAAAAA4Mjg/uBTAAAAAAAAAAAAAAAA3lXg/uDGAAAAAAAAAADg8uD+2A0AAAAAAAAAAAAAAADbDuD+4PEAAAAA4J7g/uD+4P7g/uCeAAAAAAAAAAAAAN0P4P7g8QAAAADoC+DU4P7g/uDU6AsAAAAAAAAAAAAA3lbg/uDGAAAAAAAA4Svg8+Dz4SsAAAAAAAAAAAAA5BPh4uD+3mwAAAAAAAAAAN9g32AAAAAAAAAAANsO3lbh4uD+4M7VBgAAAAAAAAAAAAAAAAAAAAAAAAAA4P7g/uD+4M7jGwAAAAAAAAAAAAAAAAAAAAAAAAAAAADg8uDF3mzVBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="), "format": "LumAlpha8", @@ -1269,9 +1269,9 @@ data = { } [sub_resource type="ImageTexture" id="431"] -image = SubResource("Image_rcb5g") +image = SubResource("Image_gk346") -[sub_resource type="Image" id="Image_g8khm"] +[sub_resource type="Image" id="Image_srd7s"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA39/fCN7e3mzg4ODF4ODg9ODg4PPg4ODF3t7ebePj4wkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3t7eLuDg4Njg4OD+4ODg/uDg4P7g4OD+4ODg/uDg4P7h4eHa4ODgMgAAAAAAAAAAAAAAAAAAAAAAAAAA3t7eL+Dg4PDg4OD+4ODg4eDg4FPY2NgN2NjYDd/f31Dg4ODX4ODg/uDg4PLh4eEzAAAAAAAAAAAAAAAA4+PjCeDg4Nzg4OD+4ODg4ePj4xIAAAAAAAAAAAAAAAAAAAAA4eHhEeDg4OHg4OD+4ODg3+bm5goAAAAAAAAAAN/f33fg4OD+4ODg/uDg4FMAAAAA4ODgS+Dg4OPh4eHi4ODgSQAAAADe3t5V4ODg/uDg4P7f3995AAAAAAAAAADh4eHa4ODg/uDg4P7Y2NgNAAAAAOHh4eLg4OD+4ODg/uDg4OEAAAAA29vbDuDg4P7g4OD+4eHh2gAAAAAAAAAA4ODg2+Dg4P7g4OD+2NjYDQAAAADh4eHi4ODg/uDg4P7g4ODhAAAAAN3d3Q/g4OD+4ODg/uDg4NsAAAAAAAAAAN7e3nzg4OD+4ODg/t/f31AAAAAA4ODgSeHh4eLg4ODh39/fSAAAAADe3t5W4ODg/uDg4P7g4OB7AAAAAAAAAADV1dUM4ODg4+Dg4P7g4ODX4eHhEQAAAAAAAAAAAAAAAAAAAADk5OQT4eHh4uDg4P7g4ODh1dXVDAAAAAAAAAAAAAAAAN/f3zjg4OD04ODg/uDg4OHe3t5V29vbDtvb2w7e3t5W4eHh4uDg4P7g4OD03t7eNgAAAAAAAAAAAAAAAAAAAAAAAAAA39/fN+Dg4N7g4OD+4ODg/uDg4P7g4OD+4ODg/uDg4P7g4ODd3t7eNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADm5uYK39/fcODg4MXg4ODz4ODg8+Dg4MXf399u5ubmCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -1281,7 +1281,7 @@ data = { } [sub_resource type="ImageTexture" id="433"] -image = SubResource("Image_g8khm") +image = SubResource("Image_srd7s") [sub_resource type="StyleBoxTexture" id="StyleBoxTexture_g6bu4"] texture = ExtResource("1_ak8qr") @@ -1359,7 +1359,7 @@ region = Rect2(96, 96, 16, 16) atlas = ExtResource("1_ak8qr") region = Rect2(96, 80, 16, 16) -[sub_resource type="Image" id="Image_nnsbf"] +[sub_resource type="Image" id="Image_0m0km"] data = { "data": PackedByteArray("AAAAAJiYmHlOTk4xAAAAAAAAAACNjY15Tk5OMQAAAAAAAAAAgoKCeU5OTjEAAAAAAAAAAE5OTjFOTk4cAAAAAAAAAAA4VV8AOFVfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjKy4ADhVXwAAAAAAAAAAAIGirQA4VV8AAAAAAAAAAACYmJh5Tk5OMQAAAAAAAAAAjY2NeU5OTjEAAAAAAAAAAIKCgnlOTk4xAAAAAA=="), "format": "RGBA8", @@ -1369,7 +1369,7 @@ data = { } [sub_resource type="ImageTexture" id="29"] -image = SubResource("Image_nnsbf") +image = SubResource("Image_0m0km") [sub_resource type="StyleBoxTexture" id="4"] content_margin_left = 6.0 @@ -1440,7 +1440,7 @@ bg_color = Color(0.490196, 0.490196, 0.490196, 1) corner_detail = 1 anti_aliasing = false -[sub_resource type="Image" id="Image_hyauu"] +[sub_resource type="Image" id="Image_qu6fu"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN9Y3BYAAAAAAAAAAAAAAADcFt9YAAAAAAAAAAAAAN9Y4P7g09wWAAAAAAAAAADcFuDT4P7fWAAAAAAAAAAA2xXf0uD/4NfgGQAAAADbFd/S4P/g198YAAAAAAAAAAAAANsV39Lg/+DX4BnbFd/S4P/g198YAAAAAAAAAAAAAAAAAADbFd/S4P/h2uDW4P/g198YAAAAAAAAAAAAAAAAAAAAAAAA2xXf1uD/4P/g298YAAAAAAAAAAAAAAAAAAAAAAAAAADbFd/W4P/g/+Db4BkAAAAAAAAAAAAAAAAAAAAAAADbFd/S4P/f2uDW4P/g1+AZAAAAAAAAAAAAAAAAAADbFd/S4P/g198Y2xXf0uD/4NfgGQAAAAAAAAAAAADbFd/S4P/g198YAAAAANsV39Lg/+DX4BkAAAAAAAAAAN9Y4P7g09wWAAAAAAAAAADcFuDT4P7fWAAAAAAAAAAAAADfWNwWAAAAAAAAAAAAAAAA3BbfWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="), "format": "LumAlpha8", @@ -1450,7 +1450,7 @@ data = { } [sub_resource type="ImageTexture" id="49"] -image = SubResource("Image_hyauu") +image = SubResource("Image_qu6fu") [sub_resource type="StyleBoxTexture" id="127"] content_margin_left = 4.0 @@ -2271,7 +2271,7 @@ texture_margin_right = 2.0 texture_margin_bottom = 2.0 region_rect = Rect2(72, 64, 8, 8) -[sub_resource type="Image" id="Image_47icn"] +[sub_resource type="Image" id="Image_vsf8e"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc5uqs87c4bPO3OGzztzhs87c4bPO3OGzztzhs3ObqrMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -2281,7 +2281,7 @@ data = { } [sub_resource type="ImageTexture" id="199"] -image = SubResource("Image_47icn") +image = SubResource("Image_vsf8e") [sub_resource type="StyleBoxTexture" id="200"] texture = SubResource("199") @@ -2305,7 +2305,7 @@ texture_margin_right = 2.0 texture_margin_bottom = 2.0 region_rect = Rect2(64, 64, 8, 8) -[sub_resource type="Image" id="Image_b2np4"] +[sub_resource type="Image" id="Image_58oo7"] data = { "data": PackedByteArray("/wD//wD//wD//wD/Z3qFZnqGaHuGaHuGaHuGaHuGZnqGZ3qF/wD//wD//wD//wD//wD//wD/Z3qFZnqGV1FRTEJATUNBTUNBTUNBTUNBTEJAV1FRZnqGZ3qF/wD//wD//wD/Z3qFVkxLTEJATURBTUNBTkRCTkRCTkRCTkRCTUNBTURBTEJAV1FRZ3qF/wD//wD/ZnqGTEJATEJATUNBT0VDT0VDT0VDT0VDT0VDT0VDTUNBTEJATEJAZ3uH/wD/Z3qFV1FRTEJATEJATkRCT0RDUEVEUkZEUkZEUUZFT0RDTkRCTEJATEJAV1FRZ3qFZnqGS0A/TEJATUNBT0RDUUdFUkhGU0hHU0hHUkhGUUdFT0RDTkRCTEJAS0E/Z3uHZ3uHS0E/TEJATUNBT0RDUUdFVElGVUpHVUlHVUpHUkhGUEVETUNBTEJAS0E/aHyIZ3uHSkA+S0E/TUNBT0VDUUdFVElGVUtJVk1LVElGU0lHUEZETkRCTEJAS0E/aHyIZ3uHSkE+S0E/TEJAT0VDUUdFVElGVUtJVUtJVUpHUkhGUEZETkRCTEJASkA+aHyIZ3uHSD48S0I/S0E/TkRCUEVEUUZFU0lHU0lHUkhGUEVETkRCTEJAS0E/ST89aHyIZ3uHRj08SD48SkA+TEJATkRCT0RDUEVEUEVEUEZET0VDTEJAS0A/ST89Rz07Z3uHZ3qFV1FRRz47SUA9S0E/TEJATUNBTkRCTkRCTUNBTEJAS0E/ST89Rz07V1FRaHuG/wD/Z3uHRj08Rz07SD48ST89SkA+S0E/S0E/S0A/SkA+SD48Rz47Rz07Z3uH/wD//wD/Z3qFV1FRRTw7Rz07Rz07Rz07SD48SD48Rz07Rz07Rz47Rj08V1FRZnqG/wD//wD//wD/Z3qFZ3uHV1FRRjw6Rjw6Rz47Rz47Rjw6Rjw6V1FRZ3uHaHuG/wD//wD//wD//wD//wD//wD/ZnqGZ3uHaHyIaHyIaHyIaHyIZ3uHaHuG/wD//wD//wD//wD/"), "format": "RGB8", @@ -2315,7 +2315,7 @@ data = { } [sub_resource type="ImageTexture" id="204"] -image = SubResource("Image_b2np4") +image = SubResource("Image_58oo7") [sub_resource type="StyleBoxTexture" id="205"] texture = SubResource("204") @@ -2428,7 +2428,7 @@ axis_stretch_horizontal = 2 axis_stretch_vertical = 2 region_rect = Rect2(80, 0, 16, 8) -[sub_resource type="Image" id="Image_dpx2v"] +[sub_resource type="Image" id="Image_vwdns"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P8AAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P8AAAAAAAAAAOD/4P/g/+D/4P/g/+D/4P8AAAAAAAAAAOFe4PTg/+D/4P/g/+D24WYAAAAAAAAAAAAA3yjf0uD/4P/g1+MtAAAAAAAAAAAAAAAAAADoC+Gf4Z/oCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"), "format": "LumAlpha8", @@ -2438,9 +2438,9 @@ data = { } [sub_resource type="ImageTexture" id="306"] -image = SubResource("Image_dpx2v") +image = SubResource("Image_vwdns") -[sub_resource type="Image" id="Image_ph5jy"] +[sub_resource type="Image" id="Image_8u1x6"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4P/g/+D/32AAAAAAAAAAAAAAAAAAAAAA4P/g/+D/4PThKwAAAAAAAAAAAAAAAAAA4P/g/+D/4P/g1egLAAAAAAAAAAAAAAAA4P/g/+D/4P/g/+GfAAAAAAAAAAAAAAAA4P/g/+D/4P/g/+GfAAAAAAAAAAAAAAAA4P/g/+D/4P/g1egLAAAAAAAAAAAAAAAA4P/g/+D/4PThKwAAAAAAAAAAAAAAAAAA4P/g/+D/32AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"), "format": "LumAlpha8", @@ -2450,9 +2450,9 @@ data = { } [sub_resource type="ImageTexture" id="308"] -image = SubResource("Image_ph5jy") +image = SubResource("Image_8u1x6") -[sub_resource type="Image" id="Image_nvwtr"] +[sub_resource type="Image" id="Image_naxpi"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAAAA/1n/FP8U/1kAAAAAAAAAAP9Z/xT/FP9ZAAAAAAAA/1n/FP8U/1kAAAAAAAD/Wf8U/xT/WQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="), "format": "LumAlpha8", @@ -2462,9 +2462,9 @@ data = { } [sub_resource type="ImageTexture" id="292"] -image = SubResource("Image_nvwtr") +image = SubResource("Image_naxpi") -[sub_resource type="Image" id="Image_kc456"] +[sub_resource type="Image" id="Image_ksn4y"] data = { "data": PackedByteArray("FxYabx0cIe8gHiT3IR8l9yEfJfchHyX3IR8l9yAeJPcdHCHvFxYabx0cIfAkIin/KCYt/ygmLv8oJi7/KCYu/ygmLv8oJi3/JCIp/x0cIfAgHiT5KCYt/ysqMf8sKjL/LCoy/ywqMv8sKjL/Kyox/ygmLf8gHiT5IR8l9ygmLv8sKjL/LCoy/ywqMv8sKjL/LCoy/ywqMv8oJi7/IR8l9yEfJfcoJi7/LCoy/ywqMv8sKjL/LCoy/ywqMv8sKjL/KCYu/yEfJfchHyX3KCYu/ywqMv8sKjL/LCoy/ywqMv8sKjL/LCoy/ygmLv8hHyX3IR8l9ygmLv8sKjL/LCoy/ywqMv8sKjL/LCoy/ywqMv8oJi7/IR8l9yAeJPkoJi3/Kyox/ywqMv8sKjL/LCoy/ywqMv8rKjH/KCYt/yAeJPkdHCHwJCIp/ygmLf8oJi7/KCYu/ygmLv8oJi7/KCYt/yQiKf8dHCHxFxYabx0cIfAgHiT3IR8l9yEfJfchHyX3IR8l9yAeJPcdHCHuFxYabw=="), "format": "RGBA8", @@ -2474,7 +2474,7 @@ data = { } [sub_resource type="ImageTexture" id="39"] -image = SubResource("Image_kc456") +image = SubResource("Image_ksn4y") [sub_resource type="StyleBoxTexture" id="272"] content_margin_left = 0.0 @@ -2534,7 +2534,7 @@ axis_stretch_horizontal = 2 axis_stretch_vertical = 2 region_rect = Rect2(24, 40, 8, 8) -[sub_resource type="Image" id="Image_fhcfw"] +[sub_resource type="Image" id="Image_jvlbm"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNS1kHTUtZJ01LWVBNS1lmTUtZaE1LWWhNS1loTUtZaE1LWWhNS1loWFZjarCvtYFNS1knTUtZBwAAAAAAAAAATUtZJzg3QLQgICT6Hh4i/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hx8j/4uLjf//////tra53U1LWScAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/0JCR//4+Pj//v7+/1dXWvtNS1lQAAAAAAAAAABNS1lmHh4i/yIiJ/8lJSr/JSUq/05OUv8mJiv/JSUq/yUlKv/Fxcf//////6qqq/8eHiL/TUtZZgAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/7i4uv//////X19j/yUlKv90dHf//////+3t7f8zMzj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv+NjY///////7i4uf81NTn/7e3t//////90dHf/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/Ojo+//v7+//6+vr/srK0///////Fxcf/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/yUlKv+4uLr///////7+/v/4+Pj/RUVJ/yUlKv8jIyj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv8lJSr/YWFl////////////j4+S/yUlKv8lJSr/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/JSUq/yYmK/9OTlL/Y2Nm/yoqL/8lJSr/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZZh4eIv8iIif/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8iIif/Hh4i/01LWWYAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/yMjKP8iIif/ICAk/yAgJPtNS1lQAAAAAAAAAABNS1knODZAtCAgJPseHiL/Hx8j/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hh4i/yAgJfo4NkC0TUtZJwAAAAAAAAAATUtZB01LWSdNS1lQTUtZZk1LWWhNS1loTUtZaE1LWWhNS1loTUtZaE1LWWZNS1lQTUtZJ01LWQcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -2544,9 +2544,9 @@ data = { } [sub_resource type="ImageTexture" id="334"] -image = SubResource("Image_fhcfw") +image = SubResource("Image_jvlbm") -[sub_resource type="Image" id="Image_c72em"] +[sub_resource type="Image" id="Image_pxng2"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNS1kHTUtZJ01LWVBNS1lmTUtZaE1LWWhNS1loTUtZaE1LWWhNS1loTUtZZk1LWVBNS1knTUtZBwAAAAAAAAAATUtZJzg3QLQgICT6Hh4i/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hx8j/x4eIv8gICT6ODdAtE1LWScAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/yMjKP8iIif/ICAk/yAgJPpNS1lQAAAAAAAAAABNS1lmHh4i/yIiJ/8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yIiJ/8eHiL/TUtZZgAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8jIyj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZaB8fI/8jIyj/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8jIyj/Hx8j/01LWWgAAAAAAAAAAE1LWWgfHyP/IyMo/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/IyMo/x8fI/9NS1loAAAAAAAAAABNS1loHx8j/yMjKP8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yMjKP8fHyP/TUtZaAAAAAAAAAAATUtZZh4eIv8iIif/JSUq/yUlKv8lJSr/JSUq/yUlKv8lJSr/JSUq/yUlKv8iIif/Hh4i/01LWWYAAAAAAAAAAE1LWVAgICT6ICAk/yIiJ/8jIyj/IyMo/yMjKP8jIyj/IyMo/yMjKP8iIif/ICAk/yAgJPtNS1lQAAAAAAAAAABNS1knODZAtCAgJPseHiL/Hx8j/x8fI/8fHyP/Hx8j/x8fI/8fHyP/Hh4i/yAgJfo4NkC0TUtZJwAAAAAAAAAATUtZB01LWSdNS1lQTUtZZk1LWWhNS1loTUtZaE1LWWhNS1loTUtZaE1LWWZNS1lQTUtZJ01LWQcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -2556,7 +2556,7 @@ data = { } [sub_resource type="ImageTexture" id="336"] -image = SubResource("Image_c72em") +image = SubResource("Image_pxng2") [sub_resource type="AtlasTexture" id="359"] atlas = ExtResource("1_ak8qr") @@ -2632,7 +2632,7 @@ border_width_left = 1 border_color = Color(0.2, 0.2, 0.2, 1) anti_aliasing = false -[sub_resource type="Image" id="Image_ma648"] +[sub_resource type="Image" id="Image_8h43v"] data = { "data": PackedByteArray("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIKCgnmNjY15mJiYeYGirQCMrLgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOFVfAE5OTjGCgoJ5jY2NeZiYmHlOTk4xTk5OMU5OTjE4VV8AOFVfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADhVXwBOTk4cTk5OMU5OTjFOTk4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), "format": "RGBA8", @@ -2642,7 +2642,7 @@ data = { } [sub_resource type="ImageTexture" id="111"] -image = SubResource("Image_ma648") +image = SubResource("Image_8h43v") [sub_resource type="AtlasTexture" id="20"] atlas = ExtResource("3_0m6kw") From 0e3353018b889d83df672802b5993838f37cb3bf Mon Sep 17 00:00:00 2001 From: XargonWan Date: Fri, 23 Aug 2024 23:19:56 +0900 Subject: [PATCH 13/15] WORKFLOW: tentative PR branch name fixes -fix [skip ci] --- .github/workflows/cooker-selfhosted.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml index 445bcae9..e24636bd 100644 --- a/.github/workflows/cooker-selfhosted.yml +++ b/.github/workflows/cooker-selfhosted.yml @@ -85,10 +85,10 @@ jobs: source_branch=$(curl -s "https://api.github.com/repos/RetroDECK/RetroDECK/pulls/$pr_number" | jq -r '.head.ref') source_branch=${source_branch//\//-} # Replace '/' with '-' in the branch name echo "[DEBUG] source branch is: $source_branch" - echo "TAG=PR-$pr_number-$source_branch-${{ env.buildid }}" >> $GITHUB_ENV + echo "TAG=PR-$pr_number-$(echo $source_branch-${{ env.buildid }} | sed 's/\//-/g')" >> $GITHUB_ENV echo "MAKE_LATEST=false" >> $GITHUB_ENV # if it's a feature branch it will not marked as "latest" cooker version else - TAG="$MANIFEST_VERSION-${{ env.buildid }}" + TAG="$MANIFEST_VERSION-${{ env.buildid }} | sed 's/\//-/g'" echo "TAG=$TAG" >> $GITHUB_ENV echo "MAKE_LATEST=true" >> $GITHUB_ENV fi From 573964e5b295e6fbf0b015569ada247250c070f2 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Fri, 23 Aug 2024 23:28:49 +0900 Subject: [PATCH 14/15] feat/ruffle (#904) * Feat/ruffle (#884) * CEMU: added wrapper + RPCS3 fixes * THE GREAT FOLDER MOVE (aka let's see how much things I can break in a single commit) * emu: fixed dest filename for the wrapper * Cemu: fixing wrapper installation * CEMU: fixed wrapper again [skip ci] * MANIFEST: cleanup [skip ci] * MANIFEST: cleanup [skip ci] * MANIFEST: trying to add LLVM to solve PCSX2, Duckstation issues * MANIFEST: adding llvm doesn't change the situation, removed * MANIFEST: trying to add vulkan * MANIFEST: trying to add vulkan - removed as it should be already in (and that's broken) * VULKAN: testing some libraries * Create Godot.yml * Rename main.yml to godot.yml * Update godot.yml * Update godot.yml * Update godot.yml * Update godot.yml * VULKAN: trying to add shaderc * VULKAN: trying to add shaderc - nope [skip ci] * Added logging as a function. Added github workflow to build configurator On branch feat/godot-configurator Changes to be committed: new file: .github/workflows/build-configurator.yml new file: tools/configurator/basic modified: tools/configurator/components/bios_check/bios_check.gd modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/class_functions.gd * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml modified: tools/configurator/export_presets.cfg * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/export_presets.cfg * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd * Theme and Theme Inheritance On branch feat/godot-configurator Changes to be committed: new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Bold.ttf new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Bold.ttf.import new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Regular.ttf new file: tools/configurator/assets/fonts/OpenDyslexic3/OpenDyslexic3-Regular.ttf.import new file: tools/configurator/assets/fonts/akrobat/Akrobat-Black.otf new file: tools/configurator/assets/fonts/akrobat/Akrobat-Black.otf.import new file: tools/configurator/assets/fonts/akrobat/Akrobat-Bold.otf new file: tools/configurator/assets/fonts/akrobat/Akrobat-Bold.otf.import new file: tools/configurator/assets/fonts/akrobat/Akrobat-ExtraLight.otf new file: tools/configurator/assets/fonts/akrobat/Akrobat-ExtraLight.otf.import new file: tools/configurator/assets/fonts/akrobat/Akrobat-Light.otf new file: tools/configurator/assets/fonts/akrobat/Akrobat-Light.otf.import new file: tools/configurator/assets/fonts/akrobat/Akrobat-Regular.otf new file: tools/configurator/assets/fonts/akrobat/Akrobat-Regular.otf.import new file: tools/configurator/assets/fonts/akrobat/Akrobat-SemiBold.otf new file: tools/configurator/assets/fonts/akrobat/Akrobat-SemiBold.otf.import new file: tools/configurator/assets/fonts/akrobat/akrobat-extrabold-webfont.ttf new file: tools/configurator/assets/fonts/akrobat/akrobat-extrabold-webfont.ttf.import new file: tools/configurator/assets/fonts/munro/munro-narrow.ttf new file: tools/configurator/assets/fonts/munro/munro-narrow.ttf.import new file: tools/configurator/assets/fonts/munro/munro-small.ttf new file: tools/configurator/assets/fonts/munro/munro-small.ttf.import new file: tools/configurator/assets/fonts/munro/munro.ttf new file: tools/configurator/assets/fonts/munro/munro.ttf.import new file: tools/configurator/assets/graphics/Rekku/Rekku-test.xcf new file: tools/configurator/assets/graphics/Rekku/base.png new file: tools/configurator/assets/graphics/Rekku/base.png.import new file: tools/configurator/assets/graphics/Rekku/blink1.png new file: tools/configurator/assets/graphics/Rekku/blink1.png.import new file: tools/configurator/assets/graphics/Rekku/blink2.png new file: tools/configurator/assets/graphics/Rekku/blink2.png.import new file: tools/configurator/assets/graphics/Rekku/eyes-open.png new file: tools/configurator/assets/graphics/Rekku/eyes-open.png.import new file: tools/configurator/assets/graphics/Rekku/mouth-A.png new file: tools/configurator/assets/graphics/Rekku/mouth-A.png.import new file: tools/configurator/assets/graphics/Rekku/mouth-O.png new file: tools/configurator/assets/graphics/Rekku/mouth-O.png.import new file: tools/configurator/assets/graphics/Rekku/mouth-base.png new file: tools/configurator/assets/graphics/Rekku/mouth-base.png.import new file: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png new file: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png.import new file: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png new file: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png.import new file: tools/configurator/assets/graphics/Rekku/rekku-idle.png new file: tools/configurator/assets/graphics/Rekku/rekku-idle.png.import new file: tools/configurator/assets/graphics/Rekku/rekku-speak1.png new file: tools/configurator/assets/graphics/Rekku/rekku-speak1.png.import new file: tools/configurator/assets/graphics/Rekku/rekku-speak2.png new file: tools/configurator/assets/graphics/Rekku/rekku-speak2.png.import new file: tools/configurator/assets/graphics/retrodeck.png new file: tools/configurator/assets/graphics/retrodeck.png.import new file: tools/configurator/assets/themes/accesible_theme.tres new file: tools/configurator/assets/themes/default_theme.tres new file: tools/configurator/assets/themes/modern_theme.tres new file: tools/configurator/assets/themes/retro_theme.tres modified: tools/configurator/components/bios_check/bios_check.gd modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/components/popup.gd * Added Emulator Select and Pick options. On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Rekku and Logo animations On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres Untracked files: tools/configurator/assets/graphics/retrodeck_base.png tools/configurator/assets/graphics/retrodeck_base.png.import tools/configurator/assets/graphics/retrodeck_base_anim.png tools/configurator/assets/graphics/retrodeck_base_anim.png.import tools/configurator/assets/graphics/retrodeck_base_anim.xcf tools/configurator/assets/graphics/retrodeck_base_shake0.png tools/configurator/assets/graphics/retrodeck_base_shake0.png.import tools/configurator/assets/graphics/retrodeck_base_shake1.png tools/configurator/assets/graphics/retrodeck_base_shake1.png.import tools/configurator/assets/graphics/retrodeck_base_shake2.png tools/configurator/assets/graphics/retrodeck_base_shake2.png.import tools/configurator/assets/graphics/retrodeck_base_shake3.png tools/configurator/assets/graphics/retrodeck_base_shake3.png.import tools/configurator/assets/graphics/retrodeck_base_shake4.png tools/configurator/assets/graphics/retrodeck_base_shake4.png.import tools/configurator/rekku_animated.tscn * Add Wobble! On branch feat/godot-configurator Changes to be committed: new file: tools/configurator/assets/graphics/retrodeck_base.png new file: tools/configurator/assets/graphics/retrodeck_base.png.import new file: tools/configurator/assets/graphics/retrodeck_base_anim.png new file: tools/configurator/assets/graphics/retrodeck_base_anim.png.import new file: tools/configurator/assets/graphics/retrodeck_base_anim.xcf new file: tools/configurator/assets/graphics/retrodeck_base_shake0.png new file: tools/configurator/assets/graphics/retrodeck_base_shake0.png.import new file: tools/configurator/assets/graphics/retrodeck_base_shake1.png new file: tools/configurator/assets/graphics/retrodeck_base_shake1.png.import new file: tools/configurator/assets/graphics/retrodeck_base_shake2.png new file: tools/configurator/assets/graphics/retrodeck_base_shake2.png.import new file: tools/configurator/assets/graphics/retrodeck_base_shake3.png new file: tools/configurator/assets/graphics/retrodeck_base_shake3.png.import new file: tools/configurator/assets/graphics/retrodeck_base_shake4.png new file: tools/configurator/assets/graphics/retrodeck_base_shake4.png.import new file: tools/configurator/rekku_animated.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/components/bios_check/bios_check.gd modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * ES-DE: testing out the new compact menu * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.tscn * ES-DE: testing out the new compact menu - newer build * Add change data for about us section via a csv On branch feat/godot-configurator Changes to be committed: new file: tools/configurator/assets/data_lists/tk_about.Description.translation new file: tools/configurator/assets/data_lists/tk_about.URL.translation new file: tools/configurator/assets/data_lists/tk_about.csv new file: tools/configurator/assets/data_lists/tk_about.csv.import modified: tools/configurator/emu_list.yml modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/class_functions.gd new file: tools/configurator/tk_about.gd * On branch feat/godot-configurator Changes to be committed: deleted: configurator/assets/data_lists/tk_about.Description.translation deleted: configurator/assets/data_lists/tk_about.URL.translation deleted: configurator/assets/data_lists/tk_about.csv.import new file: configurator/export/configurator.console.exe new file: configurator/export/configurator.exe new file: configurator/export/configurator.pck new file: configurator/export/configurator.sh new file: configurator/export/configurator.x86_64 renamed: configurator/assets/data_lists/tk_about.csv -> configurator/export/tk_about.txt modified: configurator/export_presets.cfg modified: configurator/tk_about.gd new file: configurator/tk_about.txt * Improved parsing of files for pulling out data On branch feat/godot-configurator Changes to be committed: modified: main.gd modified: res/pixel_ui_theme/RetroDECKTheme.tres modified: scripts/class_functions.gd modified: tk_about.gd modified: tk_about.txt * ES-DE: testing out the new compact menu - newer build 2 * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/components/bios_check/bios_check.gd new file: tools/configurator/data_list.json new file: tools/configurator/data_list.yml modified: tools/configurator/main.gd modified: tools/configurator/project.godot modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/class_functions.gd modified: tools/configurator/tk_about.gd * Adding json support and supporting class On branch feat/godot-configurator Changes to be committed: deleted: tools/configurator/basic new file: tools/configurator/data.json modified: tools/configurator/data_list.json modified: tools/configurator/main.gd modified: tools/configurator/project.godot modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres new file: tools/configurator/scripts/app_data.gd modified: tools/configurator/scripts/class_functions.gd new file: tools/configurator/scripts/data_handler.gd new file: tools/configurator/scripts/emulator.gd new file: tools/configurator/scripts/emulator_option.gd new file: tools/configurator/scripts/emulator_property.gd new file: tools/configurator/scripts/link.gd new file: tools/configurator/scripts/save_manager.gd * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/data_list.json modified: tools/configurator/export/configurator.pck deleted: tools/configurator/export/tk_about.txt modified: tools/configurator/main.gd modified: tools/configurator/project.godot modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/data_handler.gd modified: tools/configurator/scripts/emulator_property.gd modified: tools/configurator/tk_about.gd tools/configurator/export/data_list.json * On branch feat/godot-configurator Changes to be committed: new file: tools/configurator/export/data_list.json * Now includes modify json. Need cleaning up! On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/data_list.json modified: tools/configurator/export/configurator.pck modified: tools/configurator/main.gd modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/data_handler.gd * ES-DE: testing out the new compact menu - newer build 3 * Manifest: renaming es-de module to stick with the repo name for updating purposes * ES-DE: updated module with new artifact URL and SHA256 [skip ci] * Revert "ES-DE: updated module with new artifact URL and SHA256 [skip ci]" This reverts commit b85ad1573d6af60e765bc6183c8f2e24ae04e6e7. * If this breaks to gzdoom is ok * If this breaks to gzdoom is ok - fix * Migrated to the new latest links * MAME: frixed url * PCSX2: updated to 2.1.55 * Tidying up On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/project.godot modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/data_handler.gd deleted: tools/configurator/scripts/save_manager.gd * On branch feat/godot-configurator Changes to be committed: deleted: tools/configurator/data.json modified: tools/configurator/main.gd modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres modified: tools/configurator/scripts/data_handler.gd * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/scripts/data_handler.gd modified: tools/configurator/tk_about.gd * On branch feat/godot-configurator Changes to be committed: deleted: tools/configurator/assets/graphics/Rekku/Rekku-test.xcf deleted: tools/configurator/assets/graphics/Rekku/base.png deleted: tools/configurator/assets/graphics/Rekku/base.png.import deleted: tools/configurator/assets/graphics/Rekku/blink1.png deleted: tools/configurator/assets/graphics/Rekku/blink1.png.import deleted: tools/configurator/assets/graphics/Rekku/blink2.png deleted: tools/configurator/assets/graphics/Rekku/blink2.png.import deleted: tools/configurator/assets/graphics/Rekku/eyes-open.png deleted: tools/configurator/assets/graphics/Rekku/eyes-open.png.import deleted: tools/configurator/assets/graphics/Rekku/mouth-A.png deleted: tools/configurator/assets/graphics/Rekku/mouth-A.png.import deleted: tools/configurator/assets/graphics/Rekku/mouth-O.png deleted: tools/configurator/assets/graphics/Rekku/mouth-O.png.import deleted: tools/configurator/assets/graphics/Rekku/mouth-base.png deleted: tools/configurator/assets/graphics/Rekku/mouth-base.png.import deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-down.png.import deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png deleted: tools/configurator/assets/graphics/Rekku/rekku-blink-up.png.import deleted: tools/configurator/assets/graphics/Rekku/rekku-idle.png deleted: tools/configurator/assets/graphics/Rekku/rekku-idle.png.import deleted: tools/configurator/assets/graphics/Rekku/rekku-speak1.png deleted: tools/configurator/assets/graphics/Rekku/rekku-speak1.png.import deleted: tools/configurator/assets/graphics/Rekku/rekku-speak2.png deleted: tools/configurator/assets/graphics/Rekku/rekku-speak2.png.import * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/export_presets.cfg modified: tools/configurator/main.gd * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/components/bios_check/bios_check.gd modified: tools/configurator/main.tscn * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/components/bios_check/bios_check.gd new file: tools/configurator/components/logs.tscn new file: tools/configurator/components/logs/logs_popup_content.tscn modified: tools/configurator/components/popup.tscn modified: tools/configurator/data_list.json deleted: tools/configurator/export/data_list.json modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Trying a new workflow * Trying a new workflow - fix * Trying a new workflow - fix 2 * Reverting workfolw edits * WORKFLOW: targetting the old repo for the release * WORKFLOW: updated some actions to a newever version to avoid deprecation at the end of the year * MISSING_LIBS: trying to fetch libshaderc * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/components/logs.tscn renamed: tools/configurator/components/logs/logs_popup_content.tscn -> tools/configurator/components/logs_view/logs_popup_content.tscn new file: tools/configurator/components/logs_view/view_log.gd modified: tools/configurator/components/popup.gd modified: tools/configurator/components/popup.tscn modified: tools/configurator/data_list.json modified: tools/configurator/main.gd modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres new file: tools/configurator/retrodeck.json modified: tools/configurator/scripts/class_functions.gd modified: tools/configurator/scripts/data_handler.gd modified: tools/configurator/tk_about.gd * On branch feat/godot-configurator Changes to be committed: deleted: tools/configurator/components/logs.tscn modified: tools/configurator/components/logs_view/logs_popup_content.tscn deleted: tools/configurator/components/logs_view/view_log.gd modified: tools/configurator/components/popup.tscn modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml modified: net.retrodeck.retrodeck.yml modified: tools/configurator/export_presets.cfg modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * MANIFEST: removng a newline * Please enter the commit message for your changes. Lines starting with '#' will be ignored, and an empty message aborts the commit. On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: net.retrodeck.retrodeck.yml new file: tools/configurator/assets/icons/128/app.xemu.xemu.png new file: tools/configurator/assets/icons/128/app.xemu.xemu.png.import new file: tools/configurator/assets/icons/128/duckstation-nogui.png new file: tools/configurator/assets/icons/128/duckstation-nogui.png.import new file: tools/configurator/assets/icons/128/duckstation.png new file: tools/configurator/assets/icons/128/duckstation.png.import new file: tools/configurator/assets/icons/128/net.kuribo64.melonDS.png new file: tools/configurator/assets/icons/128/net.kuribo64.melonDS.png.import new file: tools/configurator/assets/icons/128/net.pcsx2.PCSX2.png new file: tools/configurator/assets/icons/128/net.pcsx2.PCSX2.png.import new file: tools/configurator/assets/icons/128/net.retrodeck.retrodeck.png new file: tools/configurator/assets/icons/128/net.retrodeck.retrodeck.png.import new file: tools/configurator/assets/icons/128/net.rpcs3.RPCS3.png new file: tools/configurator/assets/icons/128/net.rpcs3.RPCS3.png.import new file: tools/configurator/assets/icons/128/org.DolphinEmu.dolphin-emu.png new file: tools/configurator/assets/icons/128/org.DolphinEmu.dolphin-emu.png.import new file: tools/configurator/assets/icons/128/org.citra_emu.citra.png new file: tools/configurator/assets/icons/128/org.citra_emu.citra.png.import new file: tools/configurator/assets/icons/128/org.mamedev.MAME.png new file: tools/configurator/assets/icons/128/org.mamedev.MAME.png.import new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP.png new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP.png.import new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP_.png new file: tools/configurator/assets/icons/128/org.ppsspp.PPSSPP_.png.import new file: tools/configurator/assets/icons/128/org.ryujinx.Ryujinx.png new file: tools/configurator/assets/icons/128/org.ryujinx.Ryujinx.png.import new file: tools/configurator/assets/icons/128/org.zdoom.GZDoom.png new file: tools/configurator/assets/icons/128/org.zdoom.GZDoom.png.import new file: tools/configurator/assets/icons/128/retroarch.png new file: tools/configurator/assets/icons/128/retroarch.png.import new file: tools/configurator/assets/icons/16/app.xemu.xemu.png new file: tools/configurator/assets/icons/16/app.xemu.xemu.png.import new file: tools/configurator/assets/icons/16/duckstation-nogui.png new file: tools/configurator/assets/icons/16/duckstation-nogui.png.import new file: tools/configurator/assets/icons/16/duckstation.png new file: tools/configurator/assets/icons/16/duckstation.png.import new file: tools/configurator/assets/icons/16/net.pcsx2.PCSX2.png new file: tools/configurator/assets/icons/16/net.pcsx2.PCSX2.png.import new file: tools/configurator/assets/icons/16/net.retrodeck.retrodeck.png new file: tools/configurator/assets/icons/16/net.retrodeck.retrodeck.png.import new file: tools/configurator/assets/icons/16/net.rpcs3.RPCS3.png new file: tools/configurator/assets/icons/16/net.rpcs3.RPCS3.png.import new file: tools/configurator/assets/icons/16/org.DolphinEmu.dolphin-emu.png new file: tools/configurator/assets/icons/16/org.DolphinEmu.dolphin-emu.png.import new file: tools/configurator/assets/icons/16/org.gnome.Yelp.png new file: tools/configurator/assets/icons/16/org.gnome.Yelp.png.import new file: tools/configurator/assets/icons/16/org.mamedev.MAME.png new file: tools/configurator/assets/icons/16/org.mamedev.MAME.png.import new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP.png new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP.png.import new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP_.png new file: tools/configurator/assets/icons/16/org.ppsspp.PPSSPP_.png.import new file: tools/configurator/assets/icons/16/org.ryujinx.Ryujinx.png new file: tools/configurator/assets/icons/16/org.ryujinx.Ryujinx.png.import new file: tools/configurator/assets/icons/16/org.xfce.session.png new file: tools/configurator/assets/icons/16/org.xfce.session.png.import new file: tools/configurator/assets/icons/16/org.zdoom.GZDoom.png new file: tools/configurator/assets/icons/16/org.zdoom.GZDoom.png.import new file: tools/configurator/assets/icons/16/retroarch.png new file: tools/configurator/assets/icons/16/retroarch.png.import new file: tools/configurator/assets/icons/16/security-medium.png new file: tools/configurator/assets/icons/16/security-medium.png.import new file: tools/configurator/assets/icons/32/retroarch.png new file: tools/configurator/assets/icons/32/retroarch.png.import new file: tools/configurator/assets/icons/dolphin-emu (1).svg new file: tools/configurator/assets/icons/dolphin-emu (1).svg.import new file: tools/configurator/assets/icons/dolphin-emu (2).svg new file: tools/configurator/assets/icons/dolphin-emu (2).svg.import new file: tools/configurator/assets/icons/dolphin-emu.svg new file: tools/configurator/assets/icons/dolphin-emu.svg.import new file: tools/configurator/assets/icons/retroarch (1).svg new file: tools/configurator/assets/icons/retroarch (1).svg.import new file: tools/configurator/assets/icons/retroarch (2).svg new file: tools/configurator/assets/icons/retroarch (2).svg.import new file: tools/configurator/assets/icons/retroarch.svg new file: tools/configurator/assets/icons/retroarch.svg.import new file: tools/configurator/assets/icons/retroarch2.svg new file: tools/configurator/assets/icons/retroarch2.svg.import new file: tools/configurator/assets/icons/retroarch_invert.svg new file: tools/configurator/assets/icons/retroarch_invert.svg.import modified: tools/configurator/main.gd modified: tools/configurator/main.tscn modified: tools/configurator/project.godot modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Icons! * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/project.godot * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/main.gd * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/export/configurator.pck * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-configurator.yml * On branch feat/godot-configurator Changes to be committed: new file: .github/workflows/buid-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/buid-gdc.yml * On branch feat/godot-configurator Changes to be committed: deleted: .github/workflows/buid-gdc.yml Untracked files: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: new file: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * Create gd-test.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * modified: ../../.github/workflows/build-gdc.yml modified: data_list.json * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * modified: data_list.json modified: export_presets.cfg modified: res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * Changes to be committed: modified: ../../.github/workflows/build-gdc.yml deleted: ../../.github/workflows/godot.yml * On branch feat/godot-configurator Changes to be committed: deleted: ../../.github/workflows/gd-test.yml * Create test.yml * Delete .github/workflows/test.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: new file: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-configurator.yml modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: export_presets.cfg modified: res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml deleted: .github/workflows/go-simple.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/export_presets.cfg * On branch feat/godot-configurator Changes to be committed: modified: tools/configurator/export_presets.cfg * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: deleted: ../../.github/workflows/build-configurator.yml modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * modified: main.tscn modified: res/pixel_ui_theme/RetroDECKTheme.tres * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml modified: ../../net.retrodeck.retrodeck.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: ../../.github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml modified: net.retrodeck.retrodeck.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch feat/godot-configurator Changes to be committed: modified: .github/workflows/build-gdc.yml modified: net.retrodeck.retrodeck.yml * On branch feat/godot-configurator Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/godot-configurator Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch cooker Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch cooker Changes to be committed: modified: net.retrodeck.retrodeck.yml * GoDot Configurator install - Easy Mode ;) On branch cooker Changes to be committed: modified: net.retrodeck.retrodeck.yml modified: tools/configurator/data_list.json deleted: tools/configurator/export/configurator.console.exe deleted: tools/configurator/export/configurator.pck deleted: tools/configurator/export/configurator.sh deleted: tools/configurator/export/configurator.x86_64 renamed: tools/configurator/export/configurator.exe -> tools/configurator/export/godot_configurator.x86_64 modified: tools/configurator/export_presets.cfg modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * Embeded file test On branch cooker Changes to be committed: modified: .github/workflows/build-gdc.yml modified: tools/configurator/export_presets.cfg modified: tools/configurator/project.godot modified: tools/configurator/res/pixel_ui_theme/RetroDECKTheme.tres * On branch cooker Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch cooker Changes to be committed: modified: .github/workflows/build-gdc.yml * On branch cooker Changes to be committed: renamed: .github/workflows/build-gdc.yml -> .github/workflows/build-configurator.yml * On branch cooker Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch cooker Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch cooker Changes to be committed: modified: automation_tools/automation_task_list.cfg modified: net.retrodeck.retrodeck.yml * On branch cooker Changes to be committed: modified: automation_tools/automation_task_list.cfg * On branch cooker Changes to be committed: modified: automation_tools/automation_task_list.cfg * Test new ruffle maninfest On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * Tidying up a bit On branch cooker Changes to be committed: modified: automation_tools/automation_task_list.cfg deleted: tools/configurator/export/configurator.console.exe deleted: tools/configurator/export/configurator.exe deleted: tools/configurator/export/configurator.pck deleted: tools/configurator/export/configurator.sh deleted: tools/configurator/export/configurator.x86_64 deleted: tools/configurator/export/godot_configurator.x86_64 * On branch cooker Changes to be committed: modified: tools/configurator/export_presets.cfg modified: tools/configurator/project.godot * On branch cooker Changes to be committed: modified: automation_tools/automation_task_list.cfg modified: tools/configurator/data_list.json * Delete RetroDECK-cooker.flatpak.sha * Delete .github/workflows/build-configurator.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * Ruffle to cooker On branch feat/ruffle2.0 Changes to be committed: modified: net.retrodeck.retrodeck.yml * Triggering build * Triggering build * Triggering build * Triggering build * Triggering build * Triggering build * Triggering build * Triggering build --------- Co-authored-by: XargonWan Co-authored-by: GitHub Actions * RUFFLE: standaardized wrapper deployment * RUFFLE: added ruffle and flash system to features.json * PREPARE_COMPONENT: adding ruffle --------- Co-authored-by: MonkeyX Co-authored-by: GitHub Actions --- config/retrodeck/reference_lists/features.json | 6 ++++++ config/ruffle/ruffle-rdwrapper.sh | 16 ++++++++++++++++ functions/prepare_component.sh | 18 ++++++++++++++++++ net.retrodeck.retrodeck.yml | 18 ++++++++++++++++++ tools/configurator/data_list.json | 2 +- 5 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 config/ruffle/ruffle-rdwrapper.sh diff --git a/config/retrodeck/reference_lists/features.json b/config/retrodeck/reference_lists/features.json index 90014478..576fc38c 100644 --- a/config/retrodeck/reference_lists/features.json +++ b/config/retrodeck/reference_lists/features.json @@ -972,6 +972,12 @@ } ] }, + "ruffle": { + "description": "Flash Games emulator", + "name" : "Ruffle", + "system" : "flash", + "launch": "ruffle-rd-wrapper.sh" + }, "melonds": { "description": "MelonDS Nintendo DS Emulator", "name": "melonds", diff --git a/config/ruffle/ruffle-rdwrapper.sh b/config/ruffle/ruffle-rdwrapper.sh new file mode 100644 index 00000000..37ba0d89 --- /dev/null +++ b/config/ruffle/ruffle-rdwrapper.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +source /app/libexec/global.sh + +create_dir "$saves_folder/ruffle" + +static_invoke="--config /var/data/ruffle \ + --save-directory "$saves_folder/ruffle" \ + --fullscreen" + +#Check if Steam Deck in Desktop Mode +if [[ $(check_desktop_mode) == "true" ]]; then + ruffle --graphics vulkan $static_invoke "$@" +else + ruffle --graphics gl --no-gui $static_invoke "$@" +fi \ No newline at end of file diff --git a/functions/prepare_component.sh b/functions/prepare_component.sh index 137a5bbe..ac3e47b9 100644 --- a/functions/prepare_component.sh +++ b/functions/prepare_component.sh @@ -857,6 +857,24 @@ prepare_component() { sed -i 's#RETRODECKSAVESDIR#'$saves_folder'#g' "/var/config/gzdoom/gzdoom.ini" # This is an unfortunate one-off because set_setting_value does not currently support JSON fi + if [[ "$component" =~ ^(ruffle|all)$ ]]; then + component_found="true" + log i "----------------------" + log i "Prepearing Ruffle" + log i "----------------------" + + rm -rf "/var/config/ruffle" + + # Ruffle creates a directory with the full rom paths in it, so this is necessary + # TODO: be aware of this when multi user support will be integrated for this component + dir_prep "$saves_folder/flash" "/var/data/ruffle/SharedObjects/localhost/$roms_folder/flash" + + if [[ "$action" == "postmove" ]]; then # Run only post-move commands + dir_prep "$saves_folder/flash" "/var/data/ruffle/SharedObjects/localhost/$roms_folder/flash" + fi + + fi + if [[ $component_found == "false" ]]; then log e "Supplied component $component not found, not resetting" fi diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index b095d7e1..acda1f52 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -549,6 +549,20 @@ modules: url: https://github.com/RetroDECK/RetroDECK-theme commit: 975c41cac99d150b6ae86a1dfd19988058c69aad + # RUFFLE - START + # https://github.com/ruffle-rs/ruffle/releases + - name: ruffle + buildsystem: simple + build-commands: + - | + cp -p ruffle "${FLATPAK_DEST}/bin/" + chmod +x "${FLATPAK_DEST}/bin/ruffle" + sources: + - type: archive + strip-components: 0 + url: https://github.com/ruffle-rs/ruffle/releases/download/nightly-2024-08-09/ruffle-nightly-2024_08_09-linux-x86_64.tar.gz + sha256: d2c4c77d8426da6df8dc8b2a57565c151146464a8eec605d5faa68a297d8cad6 + - name: fetch-missing-libs buildsystem: simple build-commands: @@ -644,6 +658,10 @@ modules: - cp config/gzdoom/gzdoom.sh ${FLATPAK_DEST}/bin/gzdoom.sh - chmod +x ${FLATPAK_DEST}/bin/gzdoom.sh + # RUFFLE wrapper + - cp config/ruffle/ruffle-rdwrapper.sh "${FLATPAK_DEST}/bin/ruffle-rdwrapper.sh" + - chmod +x "${FLATPAK_DEST}/bin/ruffle-rdwrapper.sh" + sources: - type: git url: THISREPO diff --git a/tools/configurator/data_list.json b/tools/configurator/data_list.json index a671ea71..9f8a400d 100644 --- a/tools/configurator/data_list.json +++ b/tools/configurator/data_list.json @@ -405,4 +405,4 @@ ] } } -} \ No newline at end of file +} From 3258d2d824c93f59054c6cfee54eccf6046b3fdb Mon Sep 17 00:00:00 2001 From: XargonWan Date: Fri, 23 Aug 2024 23:31:41 +0900 Subject: [PATCH 15/15] RUFFLE: adding post-update reset command in order to init it [skip ci] --- functions/post_update.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/functions/post_update.sh b/functions/post_update.sh index 146a8d10..d5c72f5d 100644 --- a/functions/post_update.sh +++ b/functions/post_update.sh @@ -378,6 +378,7 @@ post_update() { # Placeholder for version 0.9.0b set_setting_value "$raconf" "libretro_info_path" "/var/config/retroarch/cores" "retroarch" + prepare_component "reset" "ruffle" # TODO: check this # rm /var/config/emulationstation/.emulationstation # remving the old symlink to .emulationstation as it might be not needed anymore