eden-miror/tools
2026-06-16 00:47:57 +00:00
..
cpm [externals] UCRT64 support (#4035) 2026-06-09 21:41:50 +02:00
maxwell-disas [tools] add separate maxwell disassembler, ir dumper, and spirv translator (#3453) 2026-05-24 01:05:07 +02:00
maxwell-ir [tools] add separate maxwell disassembler, ir dumper, and spirv translator (#3453) 2026-05-24 01:05:07 +02:00
maxwell-spirv [tools] add separate maxwell disassembler, ir dumper, and spirv translator (#3453) 2026-05-24 01:05:07 +02:00
translations [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
windows [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
clang-format.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
cpm-fetch-all.sh [cmake, docs, tools] update CPMUtil (#3183) 2025-12-31 17:16:46 +01:00
cpmutil.sh [cmake, tools] update CPMUtil and add support for CPMUtil bundled Qt, module updates, cleanups (#3289) 2026-01-14 19:29:13 +01:00
cpp-lint.sh [*] basic in-house cpp linting (#4039) 2026-06-04 05:49:07 +02:00
dtrace-tool.pl [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
fuzzsettings.cpp [qt] fix various crashes due to invalid/corrupted/outdated settings (#4070) 2026-06-14 20:48:24 +02:00
fuzzsettings.sh [qt] fix various crashes due to invalid/corrupted/outdated settings (#4070) 2026-06-14 20:48:24 +02:00
gendynarm.cpp [dynarmic] cleanup duplicate code and reimpls of std::* bit stuff (#4017) 2026-05-31 04:18:12 +02:00
generate_converters.py [tools, hle/kernel] generate condensed version of svc.cpp; move svc_generator.py and generate_converters.py to tools (#2791) 2025-11-07 17:00:53 +01:00
lanczos-gen.pl [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
llvmpipe-run.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
miniserver.js emscripten friendly sdl loop 2026-06-16 00:47:57 +00:00
optimize-assets.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
README.md fixup caveats + add miniserver 2026-06-16 00:47:57 +00:00
shellcheck.sh [cmake, tools, docs] Update CPMUtil (#2790) 2025-10-20 03:43:15 +02:00
stale-translations.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
svc_generator.py [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
unused-strings.sh [tools] refactor, use #!/bin/sh, update license files (#3998) 2026-05-22 21:15:31 +02:00
update-icons.sh [dist] New 2026 Saint Patrick's icon; drop named variants (#3617) 2026-02-23 19:54:48 +01:00
VectorDrawable2Svg.py [android] Android 7.0 support (#2654) 2025-10-14 20:47:17 +02:00

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