Documentation: - Add Xbox to list of consoles - Add bios to info table - Added Nintendo / Sega / Sony where appropriate - Alphabetized the list - RetroAchievements crashes games if the user has not verified the account - Can we add recursive rom parsing tips somewhere? Infrastructure: - All functions now on separate files Tools: - CHDMAN: handle rvz files. New: - download xbox hdd from xemu site. User only needs to provide files in bios after this. - Update powertools - Fix yuzu path - add xmlstarlet binary from arch repository - added changedisc hotkey for duckstation - added changedisc hotkey for duckstation steam input - migrate to Yuzu AppImage - Added storage folder in Emulation rpcs3, xemu, yuzu are using this for the large blob storage - cemu.xml won't be reset on update - Add system names to Emulator selector in expert mode - widescreen is not enabled by default. - expert mode tools requiring a password will prompt again if wrong. if the user is wrong both times, the features will be disabled. - Dolphin wiimote input is now mouse based instead of joystick based, but i left in the joystick too. It will also use gyro for shake / tilt if you have SteamDeckGyroDSU. - Dolphin load textures and precache is now on by default. - Dolphin Auto Change disc is now on by default. - Dolphin cursor is now hidden by default. - PCSX2 vsync is now on by default. Fixes: - Cemu xml changes removed the gamepath and use xmlstarlet to add the entry. In the case the user has an existing xml file, we will just add our path to the entries. - Update duckstation config quickmenu to esc, so steam + left arrow works Added roms path use native aspect ratio and fullscreen so the top and bottom bars are gone. Add Duckstation SteamInput - PCSX2 Steam Input Update remove m and n keys on full trigger press - fixed widescreen selection - fixed emulator selection - fixed config reset selection - fixed uninstall script Co-authored-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com> Co-authored-by: Rodrigo <rodrigosedano@me.com> Co-authored-by: Witherking25 <witherking@withertech.com>
16 KiB
EmuDeck
EmuDeck is a collection of scripts that allows you to autoconfigure your Steam Deck, it creates your roms directory structure and downloads all of the needed Emulators for you along with the best configurations for each of them. EmuDeck works great with Steam Rom Manager or with EmulationStation DE
** If you are a dev please read till the bottom **
There are two ways of using EmuDeck:
Using Steam Rom Manager
This option gives you all your games presented with their box arts as if they were a regular Steam Game. EmuDeck has preloaded configurations for Steam Rom Manager for the following systems:
System | Emulator | Roms format | File Required in the base of Emulation/bios (or special consideration) |
---|---|---|---|
Atari 2600 | Retroarch Stella core | .7z .a26 .bin .zip | |
Atari Lynx | Retroarch Beetle Lynx core | .7z .lnx .bin .zip | |
Final Burn Neo | Retroarch Fbn core | .zip .7z | Bioses will be searched through 3 folders : * the folder of the current romset * the Emulation/bios/fbneo/ * the Emulation/bios/ |
Mame 2003 Plus | Retroarch Mame 2003 Plus core | .zip | |
Mame 2010 | Retroarch Mame 2010 core | .zip | |
Mame Current | Retroarch Mame Current core | .zip | |
Microsoft Xbox | Xemu | .iso (xiso formatted) | Emulation/bios: mcpx_1.0.bin modified retail "COMPLEX 4627" BIOS Emulation/saves/xemu: xbox_hdd.qcow2 |
Neo Geo Pocket & Color | Retroarch Beetle NeoPop | .7z .ngp .ngc .bin .zip | |
Nintendo 3DS | Citra | .3ds .3dsx .app .axf .cii .cxi .elf .cia(FOR INSTALL ONLY) | Title keys required for encrypted rom types |
Nintendo 64 | Retroarch Mupen64plus-Next | .7z .bin .n64 .ndd .u1 .v64 .z64 .zip | |
Nintendo DS | Retroarch melonDS core | .7z .nds .zip | bios7.bin bios9.bin firmware.bin |
Nintendo GameBoy | Retroarch Gambatte core | .7z .gb .dmg .zip | |
Nintendo GameBoy Advance | Retroarch mGBA core | .7z .gba .zip | |
Nintendo GameBoy Color | Retroarch Gambatte core | .7z .gb .gbc .dmg .zip | |
Nintendo GameCube | Dolphin Standalone | .ciso .dol .elf .gcm .gcz .iso .nkit.iso .rvz .wad .wia .wbfs | |
Nintendo NES | Retroarch Nestopia core | .7z .nes .fds .unf .unif .zip | |
Nintendo PrimeHack | PrimeHack (Metroid Prime specific) | .ciso .dol .elf .gcm .gcz .iso .json .nkit.iso .rvz .wad .wia .wbfs | |
Nintendo Switch | Yuzu | .kp .nca .nro .nso .nsp .xci | Title keys required for encrypted rom types firmware installation with valid mii data required for some games |
Nintendo Wii | Dolphin Standalone | .ciso .dol .elf .gcm .gcz .iso .json .nkit.iso .rvz .wad .wia .wbfs | |
Nintendo Wii U | Cemu | .rpx .wud .wux .elf .iso .wad | Title keys required for encrypted rom types |
Sega 32X | Retroarch PicoDrive core | .7z .32x .bin .zip | |
Sega CD | Retroarch Genesis Plus GX core | .7z .32x .cue .chd .iso .zip | bios_CD_E.bin bios_CD_U.bin bios_CD_J.bin |
Sega Dreamcast | Retroarch FlyCast Core | .7z .cdi .chd .cue .gdi | dc/dc_boot.bin |
Sega Game Gear | Retroarch Genesis Plus GX core | .7z .gg .zip | |
Sega Genesis / Mega Drive | Retroarch Genesis Plus GX core | .7z .gen .md .smd .zip | |
Sega Genesis Widescreen | Retroarch Genesis Plus GX Wide core | .7z .gen .md .smd .zip | |
Sega Master System | Retroarch Genesis Plus GX core | .7z .gen .sms .zip | |
Sega Saturn | Retroarch Yabause core | .7z .cue .iso .chd .zip | sega_101.bin mpr-17933.bin |
Sony Playstation | DuckStation Standalone Retroarch Beetle HW |
.cue .chd .ecm .iso .m3u .mds .pbp | scph5500.bin scph5501.bin scph5502.bin |
Sony Playstation 2 | RPCSX2 | .bin .chd .cso .dump .gz .img .iso .mdf .nrg | Bios files are required. Here is an example set: SCPH-70004_BIOS_V12_EUR_200.BIN SCPH-70004_BIOS_V12_EUR_200.EROM SCPH-70004_BIOS_V12_EUR_200.ROM1 SCPH-70004_BIOS_V12_EUR_200.ROM2 |
Sony Playstation 3 | RPCS3 | /PS3_GAME/USRDIR/eboot.bin | Firmware installation in the Emulator is required. |
Sony Playstation Portable | PPSSPP Standalone PPSSPP Retroarch core |
.7z .elf .cso .iso .pbp .prx | The retroarch core requires ppsspp.zip in the bios folder. You can obtain it from within RetroArch's downloader. Standalone PPSSPP does not require anything special. |
Super Nintendo | Retroarch Snes9x Current core | .7z .bs .fig .sfc .smc .swx .zip | |
Super Nintendo Widescreen | Retroarch bsnes hd beta Current core | .7z .bs .fig .sfc .smc .swx .zip | |
Wonderswan & Color | Retroarch Beetle Cygne core | .7z .pc2 .ws .wsc .zip |
Using EmulationStation DE
EmuDeck configures EmulationStation DE to use the same rom folders that EmuDeck creates for you and it even downloads all the emulators and cores the ES-DE needs, all configurations that EmuDeck installs are carried over when using EmulationStation DE. For a comprehensive list of all the systems that ESDE supports go to ES-DE
Hotkeys
We try to use the same hotkeys for every emulator but some of them have their own different hotkeys, shown here:
Hotkey | RetroArch | Dolphin | Citra * | Cemu * | Yuzu | PCSX2 * | RPCS3 |
---|---|---|---|---|---|---|---|
Menu | L3 + R3 | - | - | - | - | - | - |
Exit | Select + Start | Select + Start | R5 | Select + Start | Select + Start | STEAM Button | STEAM Button |
Pause/Unpause Emulation | Select + A | Select + A | - | - | Select + A | - | |
Fast Forward | Select + R2 | Select | - | - | Select + R2 | Select + R4 | - |
Load State | Select + L1 | Select + L1 | - | - | - | Select + L1 | - |
Save State | Select + R1 | Select + R1 | - | - | - | Select + R1 | - |
Full Screen | - | - | L4 | - | - | - | - |
Swap Screens | - | - | R4 | R4 | - | - | - |
Toggle Layout | - | - | L5 | - | - | - | - |
Note that Nintendo-oriented emulators refer to "A" in the emulated sense (physical Steam Deck "B") * You need to activate Steam Input to get those hotkeys to work https://www.emudeck.com/#steam_input
Developers, developers, developers.
If you wanna help us improve EmuDeck we are open to accept your PR! Just keep in mind this simple guide:
- Think EmuDeck is for everybody, tech savvy and regular users, so everything has to be properly explained, use Easy mode for unattended automatic stuff.
- User input is non recommended, everything should be done with no mouse or keyboard input. If input is a must then you have to code your feature only on expert mode.
- Things using sudo are a big no no, there are exceptions but always try to find a way of prevent using sudo.
- Every Emulator added has to be included on this readme file, have a SRM profile and follow the AmberElec hotkey mapping ( just check the previous table)
- Always do your PR to the dev branch.