Android TV compatible virtual keyboard for computer systems

Computer systems require more than a simple gamepad except for some cases like the Atari 8 bit computer line and MSX. Existing emulators include a keyboard but they don’t work in Android TV which is what most of our users have. Thereby we disabled those keyboard to avoid confusing and frustrating our users.

Currently we provide a method for the users to map the keys to the gamepad, but that requires to edit a text file and most users are not comfortable with that.  We hope that an Android TV compatible virtual keyboard will help users press any key when required as well as to easily map any key to any button in their controllers.

Status: In development 30%. Complexity: Medium.

Commodore 64 emulation

This is a computer emulator that requires some amounts of work.  But, this is a system that we wanted to have since the beginning, even it is working with PRG in our internal version, but when we reached to a point when the keyboard has to be mapped, then we decided to first implement a cross system solution to have an Android TV compatible virtual keyboard that we can use in all computer emulators.

In Development: 80%. Complexity: Medium

GameCube support

The GameCube emulation is not perfect, but it is improving lately.  We will port the GameCube emulator to PRG and will provide some pre settings for common devices like the NVidia Shield TV.

Complexity: Medium

User provided overlays

Users will be able to provide their own touchscreen overlays to PRG. The idea is that the user will point PRG to a .zip file containing the overlay definition plus the required graphics and PRG will offer it as an option for the target system.

Complexity: Low. 

User provided shaders

Users will be able to provide their own shaders to PRG.  It will follow the same principles described above for Overlays.

Complexity: Low.

Support for live backgrounds in non-RetroArch systems

Live Backgrounds are currently only available for RetroArch based systems, that leaves Atari 8 bit, Amiga, DOS and other systems without this feature. We will modify these emulators to add Live Backgrounds, and this should help enable custom shaders for them as well.

Complexity: Medium

Alternative locations for artwork

PRG will scan for artwork in separate folder structures in addition to the traditional scanning.  We will try to pick the folder layout from other systems to help users build their own artwork database with the less effort possible.

Complexity: Low.

Planned features for the Mid Term

Community provided metadata and artwork

Users will be able to upload covers, screenshots and metadata (year, developer, category, etc) for games.  First we need to populate this data as much as we can, then we will open the database to let the users add the info that they want, hopefully from inside the app.

Complexity: Medium-High.

Screenshot for most games

We are preparing methods to make easier to take screenshots and then upload them to our servers. This is something that already started, only that we set a milestone to have this solved in this time period.

Complexity: Medium

Several versions of one game under one unique entry

Some games are available in several versions, this is most noticeable in MAME where there are different versions for different regions (Japan, USA, EU) and there are also different release versions for many games (bootleg, alternate, clones, etc).

The idea is that the user will see only one entry for each game, and the version will be selectable before the game starts.

Complexity: Medium.

Subcategories for one system (CD games, homebrews, unreleased)

Some systems like the PC Engine may be considered to have subsystems, like card based games and CD based games. The same may happen with DOS and Commodore Amiga games. There are also interesting categories to filter games like homebrews, patched, unreleased, and more. The users will be able to use this subcategories as filters.

Complexity: Medium. 

Community based Collections

Some examples:

Complexity: Medium.

Amiga CD32 support

To include CD32 we will need to port a new emulator.  Porting a computer emulator is never easy because they require special treatment for the keyboard devices.  Hopefully, the Android TV virtual keyboard will be mature when we reach this point.

Complexity: Medium.

Offline mode

PRG will be able to work with limited internet connection for some – to be determined – time. While in offline mode some features will not work for obvious reasons, like artwork download or presets for MAME and computer games. This mode is defined as temporary and the online mode will be always the standard mode of operation.

Status: FROZEN.  Complexity: High.

UPDATE: Offline mode has been frozen because:

Sega Saturn emulation

This port will include some presets for common devices like the Nvidia Shield TV.  This emulator has improved a lot in 2017 so probably it will be great at the end of this year.

Complexity: Medium

Remap buttons per system / per game

Some users have reported that they would prefer to have a different button layout for some games.  This is a real problem when the emulator authors have decided to use a button layout that is different from what some users prefer. It happens in 6 button games for Sega Genesis and many MAME games.  This will let users tune the controls as they wish.

Complexity: Low

Planned features for the Long Term

ZX spectrum emulation

See above comments on Commodore 64. Another system that we wanted to have since the beginning.

Complexity: Medium

Atari ST emulation

The Atari line is not complete without the ST. 2020 will be the year for ST in PRG

Complexity: Medium