diff --git a/ANDROID.md b/ANDROID.md index 2c2e4abd6..cf55a3b44 100644 --- a/ANDROID.md +++ b/ANDROID.md @@ -6,7 +6,35 @@ Table of contents: [[_TOC_]] -## Emulation on Android +## First startup + +When you first start ES-DE you will be greeted by a welcome screen, this is part of the _configurator_, the ES-DE onboarding interface. The configurator is easy to use and will guide you through the necessary setup steps. + +As a first step you need to give ES-DE the required storage access permission or it will not be able to function. Just enable the setting and the configurator will proceed to the next step. Next you will need to define a application data directory where your settings, scraped media, custom collections and so on will be stored. By default this will be placed in the _ES-DE_ directory in the root of your device's internal storage, and this directory will be created for you automatically. + +After this step you need to select a ROMs directory where your game files will be stored, by default this will be named _ROMs_ and will be located in the root of you device's internal storage. You can however choose to place this on an SD card if you want to, just change the path using the Android file selector GUI. If you do change the path to the SD card you will however need to manually create the ROMs directory as well as to delete the empty directory that was created for you on the built-in storage. + +The next step is optional, and it's whether to create the game systems directory structure inside your ROMs folder. Performing this will also create _systeminfo.txt_ files in each system directory. These files contain information about the system such as what file extensions and emulators that are supported. They are not mandatory for the app to function, they are only there for your convenience. In general it's recommended to create the system directories, although you could remove the ones you don't need afterwards for a slightly faster app startup speed. + +This is basically the onboarding process, and ES-DE should now start up. Just be aware that you need to place at least one game with a supported file extension in the ROMs directory tree or ES-DE will only shown an information dialog about missing games. + +Also note that ES-DE does not install any emulators, you need to install those separately. There is more information about that topic later in this document. + +If you need to re-run the configurator for some reason then the easiest way is to go into the Android Apps setting screen and revoke the storage access permissions under _Special app access_. This will make the configurator run automatically next time you start ES-DE. Another way to force it to start is to clear the app's storage under _Storage & cache_ but this is normally not recommended as it also deletes all the themes you have downloaded using the theme downloader. A third option would be to rename either the ES-DE or ROMs directory as this will also trigger the configurator on next app startup. + +## Touch input overlay + +By default the touch input overlay will be enabled which makes it possible to use ES-DE without a controller or physical keyboard by overlaying virtual buttons on top of the ES-DE interface. If you are using a device which has a built-in controller you may however want to disable this feature. That is done via the _Enable touch overlay_ option in the _Input device settings_ menu on the main menu. Just be aware that disabling this option on a device where you have no other input method than touch will lock you out of the application. + +If you accidentally disable the touch overlay you can force the configurator to run as explained in the previous section above, this will always reset the touch overlay setting. Another option would of course be to temporarily plug in a controller or keyboard to enable the setting via its menu entry. A third option would be to manually edit the es_settings.xml file in the ES-DE application data directory. The setting you are after is named _InputTouchOverlay_ which should be changed from _false_ to _true_. + +Apart from this there are numerous options for the touch overlay, like the ability to change its size, opacity and fade-out time. Setting the fade-out to zero will make it permanently visible. + +## Retention of files and data + +Almost all files saved and used by ES-DE are kept in the shared storage on either the device's built-in storage or on the SD card. This means that uninstalling the ES-DE app will not remove any of that data. The only thing that will be deleted are themes that have been downloaded using the built-in theme downloader, as it's not possible to store these in the ES-DE application data directory for technical reasons. + +## Emulation on Android in general There are some challenges with emulation on Android. Some emulators on the Google Play store have not been updated for a long time, or like in the case with RetroArch they are crippled to comply with Google's rules and policies. And some emulators are not available on the Play store at all. For these reasons you will need to sideload some manually downloaded APKs for a good emulation setup. There is a section later in this document describing the best place to get hold of each supported emulator. @@ -62,6 +90,8 @@ The following devices have been tested and do **not** experience either of these * Google Pixel 4a (Android 13) * Google Pixel Tablet (Android 14) +There are also some issues with sound quality on the Odin 2, such as large fluctuations in volume where some sounds are quite loud and some are quite silent. There are also some strange aliasing effects when playing samples rapidly. + ## Known problems In addition to the issues specific to the Ayn Odin 2 there are a couple of other problems that will hopefully be resolved in the near future: @@ -396,7 +426,7 @@ The **@** symbol indicates that the emulator is _deprecated_ and will be removed | megadrive | Sega Mega Drive | Genesis Plus GX | Genesis Plus GX Wide,
PicoDrive,
MD.emu **(Standalone)** | No | Single archive or ROM file | | megadrivejp | Sega Mega Drive [Japan] | Genesis Plus GX | Genesis Plus GX Wide,
PicoDrive,
MD.emu **(Standalone)** | No | Single archive or ROM file | | megaduck | Creatronic Mega Duck | SameDuck | | No | Single archive or ROM file | -| mess | Multi Emulator Super System | MESS 2015 | | | | +| mess | Multi Emulator Super System | Multi (MESS) | | | | | model2 | Sega Model 2 | MAME - Current | | Yes | | | model3 | Sega Model 3 | _Placeholder_ | | | | | moto | Thomson MO/TO Series | Theodore | | | | @@ -411,8 +441,8 @@ The **@** symbol indicates that the emulator is _deprecated_ and will be removed | naomigd | Sega NAOMI GD-ROM | Flycast | Flycast **(Standalone)** | Yes | Single archive file + .chd file in subdirectory if GD-ROM game | | n3ds | Nintendo 3DS | Citra | Citra **(Standalone)** [Play store version or Nightly],
Citra Canary **(Standalone)**,
Citra MMJ **(Standalone)** | No | Single ROM file | | n64 | Nintendo 64 | Mupen64Plus-Next | M64Plus FZ **(Standalone)**,
ParaLLEl N64 | No | Single archive or ROM file | -| n64dd | Nintendo 64DD | Mupen64Plus-Next | ParaLLEl N64 | Yes | | -| nds | Nintendo DS | melonDS DS | melonDS @,
melonDS **(Standalone)**,
DeSmuME,
DeSmuME 2015,
DraStic **(Standalone)** | No | Single archive or ROM file | +| n64dd | Nintendo 64DD | Mupen64Plus-Next | M64Plus FZ **(Standalone)**,
ParaLLEl N64 | Yes | | +| nds | Nintendo DS | melonDS DS | melonDS **(Standalone)**,
DeSmuME,
DeSmuME 2015,
DraStic **(Standalone)** | No | Single archive or ROM file | | neogeo | SNK Neo Geo | FinalBurn Neo | NEO.emu **(Standalone)**,
MAME4droid 2024 **(Standalone)**,
MAME4droid **(Standalone)** | Yes | Single archive or ROM file | | neogeocd | SNK Neo Geo CD | NeoCD | FinalBurn Neo | Yes | | | neogeocdjp | SNK Neo Geo CD [Japan] | NeoCD | FinalBurn Neo | Yes | |