eden/docs/user/Basics.md
lizzie f6d99e5032
[docs] initial user handbook draft (#2629)
This is the initial draft of a "User Handbook", or FAQ. Currently contains useful info on the basics, graphics, and architecture/platform info.

Archive.org OR archive.is should be used for linking external websites, especially since their content should not change. And most often than not, in a few years these could change.

Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: crueter <crueter@eden-emu.dev>
Reviewed-on: #2629
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-10-05 20:44:48 +02:00

2.4 KiB

User Handbook - The Basics

Introduction

Eden is a very complicated piece of software, and as such there are many knobs and toggles that can be configured. Most of these are invisible to normal users, however power users may be able to leverage them to their advantage.

This handbook primarily describes such knobs and toggles. Normal configuration options are described within the emulator itself and will not be covered in detail.

Requirements

The emulator is very demanding on hardware, and as such requires a decent mid-range computer/cellphone.

See the requirements page for recommended and minimum specs.

The CPU must support FMA for an optimal gameplay experience. The GPU needs to support OpenGL 4.6 (compatibility list), or Vulkan 1.1 (compatibility list).

If your GPU doesn't support or is just behind by a minor version, see Mesa environment variables below (*nix only).

User configuration

Configuration directories

Eden will store configuration files in the following directories:

  • Windows: %AppData%\Roaming.
  • Android: Data is stored internally.
  • Linux, macOS, FreeBSD, Solaris, OpenBSD: $XDG_DATA_HOME, $XDG_CACHE_HOME, $XDG_CONFIG_HOME.

If a user directory is present in the current working directory, that will override all global configuration directories and the emulator will use that instead.

Environment variables

Throughout the handbook, environment variables are mentioned. These are often either global (system wide) or local (set in a script, bound only to the current session). It's heavily recommended to use them in a local context only, as this allows you to rollback changes easily (if for example, there are regressions setting them).

The recommended way is to create a .bat file alongside the emulator .exe; contents of which could resemble something like:

set "__GL_THREADED_OPTIMIZATIONS=1"
set "SOME_OTHER_VAR=1"
eden.exe

Android doesn't have a convenient way to set environment variables.

For other platforms, the recommended method is using a shell script:

export __GL_THREADED_OPTIMIZATIONS=1
export SOME_OTHER_VAR=1
./eden

Then just running chmod +x script.sh && source script.sh.

Compatibility list

Eden doesn't mantain a compatibility list. However, EmuReady has a more fine-grained compatibility information for multiple emulators/forks as well.