Skip to content

RetroDECK v0.8.0b - Bonsai Banana

Welcome to the 0.8.0 Patch Notes that turned into a Patch Essay. This page highlights all the new features of Bonsai Banana.

Release Date: 2024-04-17

Patch Music - Bonsai Banana Swing

RetroDECK: 0.8.0b - Bonsai Banana Swing

Short summary:

Removed Yuzu and Citra
20+ more systems are available in RetroDECK.
New Engines: GZDOOM, Solarus, IkemanGO (M.U.G.E.N), OpenBOR.
New Emulators: Vita3K, Ryujinx, MAME (Standalone).
New: External Controller Layouts.
New: Steam Deck Layouts - Simple and Full.
New: Radial Menus in the Full Steam Deck Layout.
New: GZDoom parser and RetroDECK .doom file format.
New: Ponzu as an as-is Legacy AppImage Loader
Updated Everything
Tweaked all configurations
Enabled 2-4 players in all systems where possible.

1st Notice: The immediate removal of Yuzu & Citra

Both Yuzu and Citra have been removed as an option to run Switch and 3DS games, the new defaults are Ryujinx and Citra-Core in RetroArch.

Note:

If you are upgrading from an older version: This does not remove any roms, saves, bios or configurations you had. It only removes the ability to run the games via those emulators as they are no longer included.

2nd Notice: RPSC3 changes

RPCS3 Game shortcuts .desktop files are now standard.

We are moving away from show folders as files for RPCS3 as the default setting and will use .desktop files instead. This change was made so that all and not just some PS3 games will show up in the ES-DE Frontend.

You can always change it back in the ES-DE settings.

Read more here:

RPCS3 .desktop files

An issue was causing the RPCS3 saves folder not to be mapped in saves/ps3/.

We are moving the save files to the correct location with the update.


New Engine: GZDOOM

Read the guide here: GZDOOM Guide

RetroDECK: The preface of DOOM

Have you ever wanted to try to run GZDOOM with mods? Installing them is quite a daunting task for the average person and then understanding how to get them running.

Sometimes you need to access the hidden folders, have the knowledge of what configurations to edit and in some cases drag-and-drop files into the GZDOOM application itself.

We on the RetroDECK Team believe that modding, texture replacements and tinkering is a core part of the shared gaming experience.

So, we set out on a goal to improve and lower the barrier to running GZDOOM with mods.

Inspired by the previous work done by AmberELEC, we implemented a brand new and re-envisioned .doom file format and parser. We rebuilt it from the ground up and with the simple goal of making it easier for you to play DOOM in RetroDECK and hopefully offer a easier and unique experience.

We hope that the 30+ years of great game content made by the awesome DOOM community bring you as much enjoyment as it has brought us.

What is the RetroDECK .doom file?

For full details on how to get started, read here: The RetroDECK .doom file

The RetroDECK .doom file is just a textfile that allows you create your very own doom mod-pack with ease, where each line represents a file name the mod loading order.

All you need to do is:

  • Copy the games and mods somewhere into /roms/doom/.
  • Make sure the mods don't have any spaces in their names: PB Staging 9f2561c.pk3 -> PB_Staging_9f2561c.pk3
  • Create a text file
  • Copy the full filenames in order in per line in the text file.
  • Save the file as something.doom into /roms/doom/
  • Launch from ES-DE and enjoy

Example: Project Brutality

Let us say you want to create a one mod .doom file with Project Brutality and DOOM2.

We can call it:

Project Brutality.doom

The contents will look like this, except the text within ()

DOOM2.WAD        (<---- The MAP WAD)
PB_Staging_9f2561c.pk3   (<---- Project Brutality mod file)

That is, it! Just save the file and run it from RetroDECK.

I have bought DOOM (1993) or DOOM 2 on Steam how to get my IWADs?

Read more here: Get your IWADS

What about controls?

Read more here: RetroDECK GZDOOM Controls

Instead of using the standard GZDOOM controller input layout, we instead opted to redesign them to be played with with mods in mind (mods normally have more inputs than normal DOOM ever had).

The control scheme is based both on a mix of modern FPS games and the game TimeSplitter: Future Perfect for the PlayStation 2.

The main feature is that L1 and L2 are already pre-bound for various mod actions like throwing grenades or activate special abilities for Brutal Doom, Project Brutality based mods and some Doom Infinite actions.

All L1 L2 Dpad - Up Dpad - Down are mostly free to rebind to whatever the mod throws at you, read more on the link above.

Known Issues: GZDOOM & more then one Steam Input device

GZDOOM has some kind of conflict with Steam Input when you are using more than one controller.

It can cause input looping; the easiest way to solve it is to pause the game and make sure that the controller you are using is set as Player 1 else use Reorder Controllers function in Steam to make the input you want to use Player 1.

We are still investigating the cause of it.


New Engine: IkemanGO (M.U.G.E.N)

Fighting game engine that is compatible with M.U.G.E.N.

Each game is it's own standalone instance, read more here:

IkemenGO Guide

We have collected some tips and guidelines on how to convert old M.U.G.E.N games to IkemanGO:

IkemenGO: M.U.G.E.N Conversion Guidelines


New Engine: Solarus

Action RPG game engine Solarus.

Each game is it's own standalone instance, read more here:

Solarus Guide


New Engine: OpenBOR

Beat'em up game engine OpenBOR.

Each game is it's own standalone instance, read more here:

OpenBOR Guide


New Emulator: Ryujinx

Switch Emulator Ryujinx


New Emulator: Vita3k

PSVita Emulator Vita3k

Vita3K Guide


New Emulator: MAME (Standalone)

Multiple Arcade Machine Emulator (MAME)

The inclusions of MAME (Standalone) in addition of having more MAME games working, it also enables the following systems in RetroDECK:

Acorn Archimedes
Acorn Computers BBC Micro
Apple II
Apple IIGS
Bit Corporation Gamate
Coleco Adam
Daphne Arcade LaserDisc Emulator
Emerson Arcadia 2001
Fujitsu FM Town
Funtech Super A'Can
Hartung Game Master
LaserDisc Games
Texas Instruments TI-99
VTech CreatiVision
VTech V.Smile

Ponzu (Legacy AppImage Loader)

Guide: Ponzu Guide

Q: What is Ponzu?

Ponzu is in part the former Yuzu (Custom) AppImage Loader and tool that we had planned for 0.8.0b with a changed scope.

If the user has personal backups of some specific dead emulators in AppImage format, they can be injected in RetroDECK as a safe way to migrate to other solutions in the future.

Q: Should this be seen as official support for the removed emulators?

No we provide zero support, the the only official emulators we support for those systems are Ryujinx and Citra-core in RetroArch (as long as it is shipped as part of RetroArch).

Since the first day of our announcement on both Citra's and Yuzu's removal, we made it extremely clear that we will not provide any new: configurations, bug fixes, improvements, or any kind of support at all, for the these removed emulators. There is also a very substantial risk that future updates of RetroDECK will break the current temporary compatibility, this to be seen as a temporary as-is solution.

At the same moment we also updated our social rules to reflect that any type of discussion about these emulators will come with a warning first and then a ban.

The only recommended use case of Ponzu is the intended function as safe way to migrate to Ryujinx or the Citra-core (finish up, save and move).

We urge everyone to stop using these emulators.

Q: Will you be looking in into other forks of Citra & Yuzu later and add into RetroDECK?

First, this type of event makes it ripe for scammers.

We would urge all users to be extra careful and not blindly downloading solutions and any type of fan patches/tweaks for the dead emulators that we have seen circulating.

Regarding forks:

We will not investigate any forks until they have proven they are good, ethical and safe. But also vetted by the FOSS community and proven they are long lasting.


New RetroDECK Steam Input Layout: Steam Deck - Simple

This is a new layout for the Steam Deck with a lighter radial menu on the left touchpad. Some users did not want to have the full radial menu system but would rather just have something simpler.

The layout is called RetroDECK: Steam Deck - Neptune v.1b SIMPLE

And uses the Simple Radial Menu for the external controllers.


Updated RetroDECK Steam Input Layout: Steam Deck - Full

Several changes have been made to old layout

Added: Wii/GC Menu - Wii Mote Sync 1 to 4 buttons.
Added: Wii/GC Menu - New icons to Wii Mote Standing / Laying buttons.
Added: MAME Menu - Added Tilt 1 to 4 buttons.
Added: GZDoom Menu
Added: ScummVM Menu
Change: Renamed layout to RetroDECK: Steam Deck - Neptune v.1b FULL
Change: Version number standardization.
Change: MAME Menu - Changed all the bindings to reflect new MAME (Standalone) config.
Change: Based on user feedback removed the "button press" sound.
Removed: Secrets Menu

New Radial Menu: ScummVM Menu

A new ScummVM Menu allows quick access to common commands used by a substantial chunk of the ScummVM games.

The design intent is that when you are playing a ScummVM game on the Steam Deck: you can have the ScummVM Menu open on the Left Touchpad while you use the mouse on the Right Touchpad to navigate the game.

The following commands are available:

Open - O
Close - C
Fight - F
Use - U
Pick-up - P
Push/Shove - S
Pull/Yank - Y
Look-At - L
Talk To - T
Give - G
Move - M

New Radial Menu: GZDoom Menu

This menu is a tiny showcase on what is possible with radial menus, we also wanted to add other famous cheats like the Konami Code on a button but...
A bug in Steam Input prevents us from adding more cheats than the two we have added (the RetroDECK Team have reported the bug to Valve).

The following commands are available:

Get All Items (IDFA)
Get All Items + Keys (IDKFA)

New RetroDECK Steam Input Layouts: External Controllers

All controller layouts use the same one-layer radial menu with good to have hotkeys in addition to the normal button hotkeys. To access the radial menu press and hold SELECT + Move the Left Joystick and Press L3 to press the radial button.

The layouts might work on more devices

We have gotten user reports that these layouts also might work on devices that simulate certain controllers via Steam Input. One user reported that he/she installed Linux on the Lenovo Legion, and it did pick up one of the RetroDECK profiles from the start.

These devices will pick up one the layout it is mimicking if it is a DualSense or Xbox Wireless and allow hopefully the hotkeys to be used on that device.

The RetroDECK Team does not own these devices and we cannot test them ourselves, but if you discover something you can report to the RetroDECK Team on Discord or Matrix.

What does the External Controller layouts allow me to do?

First the Simple Radial menu is accessed while holding SELECT and using the Left Joystick. This allows quick access for various PC commands like ESC, F1, Enter, Right Click and more.
But also Screen Switching on dual screen systems or Change Discs.
You can activate them by pressing L3 when hovering over the command with the joystick.

The design intent is to use the button combos as the main input for the important hotkeys like saving and loading and the radial a selection good-to-have extra commands.

One other important feature is press and hold SELECT and move Right Stick and it will turn it into a Mouse and R3 becomes Left Click.

This can be extremely useful and can be used but not only limited to:

Navigate the emulator GUIs.
Close a weird pop-up window.
Move the Wii Pointer.
Play Point & Click games
Play PC mouse-based games.

Check out the simple radial menu here: Simple Radial Menu

Known Issues: External Controllers - Steam Deck

This issue have not only been observed on RetroDECK as a non-steam-game but even full games on that are on Steam.

The issue is that sometimes the emulators / engines get confused on what controller is player 1 and takes the docked Steam Deck as player 1 and not the external controller.

You can solve this by going into the Reorder Controllers interface in Steam and try switching between Player 1 and Player 2.

Known Issues: External Controllers - Linux Desktop

Linux Desktop via Steam Input is complex. There are a lot of variables and the RetroDECK Team does not have the ability to test for all of them and several bugs exist. Some variables could be:

What kind of packages / drivers you have installed.
What distro you are using.
What desktop you are using.
If you are running X11 or Wayland.
If you have a Steam Deck based Distro with Valves "Game Mode" like Bazzite.

We are trying to keep track of all the issues here and have reported several to Valve already:

RetroDECK Github Issue: 716

These are the most important current bugs:

Bug: Desktop Profiles take preset over Game Profile

Since one of the recent Steam Client updates, there is a bug that causes Steam to take the Desktop Profile instead of the Game Profile. Sometimes it even takes both inputs and sends double inputs for every action.

Possible solutions by our users and team members:

  • Try to turn off the RetroDECK's Steam Input: Select RetroDECK in Steam -> Properties -> Controller -> Disable Steam Input. Then go to Steam -> Settings -> Controller -> Desktop Profile and Apply the RetroDECK Layout under Templates for the controller you are using.
  • Going into big picture and launching RetroDECK from there.
  • Starting big picture, exiting big picture, and then launching RetroDECK from the Desktop Client.

Bug: Missing Radials in certain systems

The radial menus on certain Linux Systems are hidden behind the game window or the Steam overlay (they still work, and you can navigate them).

We thought about doing a temporary nonradial layouts for each controller to get around this bug.
But later we changed our minds as we would have even more input configs to maintain, with a risk they become permanent.


Supported Controllers

Generic Controllers - Standard Layout

This layout encompasses the vast majority of third party controllers that have all the buttons of a modern controller. They are registered as Generic in Steam Input.

Layout Name: RetroDECK: Generic - Standard v.1b

Information: The Generic - Standard

Hotkeys: Generic Standard - Hotkeys

Switch Pro

Layout Name: RetroDECK: Switch Pro v.1b

Information: Switch Pro - Hotkeys

Hotkeys: Nintendo - Hotkeys

Steam Controller

Layout Name: RetroDECK: Steam Controller - Gordon v.1b

Information: Steam Controller - Gordon

Hotkeys: Steam Controller - Hotkeys

Extra features for the Steam Controller:

Feature: Two hotkey buttons use either SELECT or L4 like on the Steam Deck.
Feature: A Mouse Mode / Joystick Mode - Switcher on R4.
It switches the Right Touchpad between Permanent Mouse or Right Joystick with the click of a button.

DualShock 3

Layout Name: RetroDECK: DualShock 3 v.1b

Information: DualShock 3

Hotkeys: Playstation - Hotkeys

Extra features in the layout:

DualShock 4

Layout Name: RetroDECK: DualShock 4 v.1b

Information: DualShock 4

Hotkeys: Playstation - Hotkeys

Extra features for the DualShock 4:

Feature: Mouse input on the touchpad.
Feature: Left click on the right side of the touchpad.
Feature: Right click on the left side of the touchpad.

DualSense

Layout Name: RetroDECK: DualSense v.1b

Information: DualSense

Hotkeys: Playstation - Hotkeys

Extra features for the DualSense:

Feature: Mouse input on the touchpad.
Feature: Left click on the right side of the touchpad.
Feature: Right click on the left side of the touchpad.

Xbox 360 Controller

Layout Name: RetroDECK: Xbox 360 v.1b

Information: Xbox 360

Hotkeys: Xbox - Hotkeys

Xbox Wireless Controller

Layout Name: RetroDECK: Xbox Wireless v.1b

Information: Xbox Wireless

Hotkeys: Xbox - Hotkeys

Framework / Configurator

RetroDECK Configurator

Added: New desktop icon.
Added: Dark Mode.
Added: "Swap A/B X/Y button" preset and compatible systems.
Added: Optional Vita3K Firmware installer.
Added: Reset commands for: GZDoom, MAME, Vita3k, Ryujinx.
Added: A new "Quick Resume" preset that toggles "save state on exit" and "load state on run" On/Off.
Added: BIOS check "expert mode" (shows all available info).
Change: Moved "Rewind" preset to Global Presets section of Configurator and added compatible systems.

RetroDECK Framework

Added: RetroDECK now knows if it is running on a real Steam Deck or other Linux desktop.
Added: Disabled "Desktop Mode" warning when not running on SteamOS.
Added: Add more systems as valid compression targets.
Added: Support injecting the RetroDECK layouts to Steam Flatpak version.
Added: A quit_retrodeck function to ease the quit in the scripts.
Added: Several minor build pipeline improvements & other backend fixes.
Added: Simplified Configurator single-file-compression process
Change: The retrodeck/logs folder is no longer hidden by default.
Fixed: Various issues when building RetroDECK locally for development.
Fixed: Some wayland related issues.
Fixed: RetroDECK full reset via CLI process.
Removed: Talk names in the manifest as they are not needed anymore as enabled by default.

Emulators / Engines / System

Updates

ES-DE to 3.0.1
All engines.
All RetroArch cores.
All emulators.

CEMU

Added: Optional Gyro via SteamDeckGyroDSU for player 1 (if you have it installed) from a separate profile.
Added: Better bindings for Player 2 to 4.
Change: Made graphical tweaks based on user feedback & internal testing.

Dolphin

Added: Better bindings for Player 1 to 4 GC & Wii.
Added: Optional Gyro via SteamDeckGyroDSU  for player 1 (if you have it installed).
Change: Made graphical tweaks based on user feedback & internal testing.
Change: Improved GC bindings.
Change: Improved & Changed Wii bindings.
Change: Improved GBA bindings.

Primehack

Added: Better bindings for Player 1.
Added: Optional Gyro via SteamDeckGyroDSU  for player 1 (if you have it installed).
Added: More custom loadable icons for Primehack.
Change: Made graphical tweaks based on user feedback & internal testing.

MelonDS

Change: Made graphical tweaks based on user feedback.

Duckstation:

Added: Reworked bindings for Player 1 to 4 via SDL.
Fixed: Memory card folder not being linked to retrodeck/saves/psx/.

PCSX2

Added: Better bindings for Player 2 to 4.
Change: Made graphical tweaks based on user feedback & internal testing.

RPCS3

Added: Better bindings for Player 2 to 4.
Change: RPCS3 Game shortcuts .desktop files are now standard.
Fixed: An issue was causing the RPCS3 saves folder not to be mapped in saves/ps3/.
Change: Made graphical tweaks based on user feedback & internal testing.

PPSSPP

Added: Extra Binds to Right Joystick (used for some romhacks that enables none existing second joystick in PSP games).
Change: Made graphical tweaks based on user feedback & internal testing.
Change: Is now running games via shortcut by default (allows easier running for more games).

RetroArch

Fixed: ScummVM-Core - A bug where the core did not find the Extras folder.
Fixed: Input mappings on controlers 2-16.
Fixed: A bug where in certain scenarios RetroArch would forget the roms folder.

Last Minute Questions

HEY YOU! RetroDECK Team! Where is the add-to-Steam Function?! ๐Ÿ‘ฉ๐Ÿ‘ฉ๐Ÿ˜ผ

With the added focus of both removing Yuzu and Citra from RetroDECK + implementing ES-DE 3.0 changes it needed to be pushed back a little.

Hopefully we can add it a minor update like 0.8.X. We got a few bugs we need to fix with the together with the BoliR developer ๐Ÿ˜ธ.

What about the Multiuser Mode?! ๐Ÿ‘ฟ

That still needed more time in the oven for the complexity of it and we will put it out in another big version.

This update is already quite big! Don't you agree?! ๐Ÿ˜ผ

We hope everyone likes the update!

We in the RetroDECK Team hope everyone in our little community likes the update. If you find any issues, please read here on how to report them (no software is free of bugs including RetroDECK):

Reporting Bugs

Thanks for your kind words and patience! โค๏ธ