You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
lizzie d1761a1331 it loads the fucker :) 2 months ago
..
cpm [cmake] Update CPMUtil (#4123) 1 month ago
maxwell-disas [tools] add separate maxwell disassembler, ir dumper, and spirv translator (#3453) 2 months ago
maxwell-ir [tools] add separate maxwell disassembler, ir dumper, and spirv translator (#3453) 2 months ago
maxwell-spirv [tools] add separate maxwell disassembler, ir dumper, and spirv translator (#3453) 2 months ago
translations [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
windows [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
README.md fixup caveats + add miniserver 1 month ago
VectorDrawable2Svg.py [android] Android 7.0 support (#2654) 10 months ago
clang-format.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
cpm-fetch-all.sh [cmake, docs, tools] update CPMUtil (#3183) 7 months ago
cpmutil.sh [cmake] Update CPMUtil (#4123) 1 month ago
cpp-lint.sh [*] basic in-house cpp linting (#4039) 2 months ago
dtrace-tool.pl [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
fuzzsettings.cpp [qt] fix various crashes due to invalid/corrupted/outdated settings (#4070) 2 months ago
fuzzsettings.sh [qt] fix various crashes due to invalid/corrupted/outdated settings (#4070) 2 months ago
gendynarm.cpp [dynarmic] cleanup duplicate code and reimpls of std::* bit stuff (#4017) 2 months ago
generate_converters.py [tools, hle/kernel] generate condensed version of svc.cpp; move svc_generator.py and generate_converters.py to tools (#2791) 9 months ago
lanczos-gen.pl [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
llvmpipe-run.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
miniserver.js it loads the fucker :) 1 month ago
optimize-assets.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
shellcheck.sh [cmake, tools, docs] Update CPMUtil (#2790) 10 months ago
stale-translations.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
svc_generator.py [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
unused-strings.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2 months ago
update-icons.sh [dist] New 2026 Saint Patrick's icon; drop named variants (#3617) 5 months ago

README.md

Tools

Tools for Eden and other subprojects. When adding new scripts please use #!/bin/sh -e or #!/usr/bin/env <interpreter> (for .py, .rb, or .perl). Keep scripts POSIX compliant (i.e not require hard bash to run, just plain old sh).

Third-Party

Binaries

  • maxwell-spirv: Converts Maxwell shaders (dumped from .ash files) into SPIR-V code (emitted into STDOUT).
  • maxwell-disas: Dumb raw Maxwell dissasembler.
  • maxwell-ir: Dump generated IR of Maxwell shaders.

Scripts

  • generate_converters.py: Generates converters for given formats of textures (C++ helper).
  • svc_generator.py: Generates the files src/core/hle/kernel/svc.cpp and src/core/hle/kernel/svc.h based off prototypes.
  • shellcheck.sh: Ensure POSIX compliance (and syntax sanity) for all tools in this directory and subdirectories.
  • llvmpipe-run.sh: Sets environment variables needed to run any command (or Eden) with llvmpipe.
  • optimize-assets.sh: Optimizes PNG assets with OptiPng.
  • update-cpm.sh: Updates CPM.cmake to the latest version.
  • update-icons.sh: Rebuild all icons (macOS, Windows, bitmaps) based on the master SVG file (dist/dev.eden_emu.eden.svg)
    • Also optimizes the master SVG
    • Requires: png2icns (libicns), ImageMagick, svgo
  • dtrace-tool.sh
  • lanczos-gen.pl: Generates constants for the Lanczos filter.
  • clang-format.sh: Runs clang-format on the entire codebase.
    • Requires: clang
  • find-unused-strings.sh: Find any unused strings in the Android app (XML -> Kotlin).
  • cpp-lint.sh: Homemade dumb C++ linter.
  • fuzzsettings.cpp: Fuzz settings files.
  • miniserver.js: Make a quick server that serves a page with the WASM on it, takes a single argument which is the path to the build directory containing both eden-cli.js and eden-cli.wasm. Run via node.js, wasmtime isn't supported.

Android

It's recommended to run these scritps after almost any Android change, as they are relatively fast and important both for APK bloat and CI.

  • unused-strings.sh: Finds unused strings in strings.xml files.
  • stale-translations.sh: Finds translated strings that aren't present in the source strings.xml file.

Translations