FunKey Wiki Knowledge Center

From The FunKey Wiki
Translate this page; This page contains changes which are not marked for translation.
Other languages:

Easily navigable via the index of questions on the wiki's main page, the Knowledge Center is the FunKey Wiki's central repository of information related to both the FunKey S and the wiki itself. In addition to the information available here, the FunKey S documentation includes several tutorials for FunKey S configuration, all of which also being navigable via the tutorial section of the wiki's main page.

If your question has not yet been answered below, you may ask it here by entering your question into the text box below and selecting the "New section" button. This will automatically create a new section on this page's talk page in which you may further specify which question or problem you are seeking an answer to. When you are finished entering the details of your question, select the "Save changes" button below the input field. If you wish to be notified when your question has been answered, you are encouraged to first log in and subsequently sign your post with ~~~~. If you are not logged in or have notifications disabled, be sure to return to this page's talk page periodically to see if your question has been answered.

For a more immediate reply to your question, it is suggested that you ask it on the FunKey Community Discord Server instead.

<inputbox> type=commenttitle page=Talk:FunKey Wiki Knowledge Center break=no </inputbox>

Information regarding FunKey Wiki translation, FunKey S suggestions, and FunKey S documentation can be found at the following pages:


FAQ

What is the purpose of this wiki?

The purpose of this wiki is to serve as a database of information related to the FunKey S. This includes information about the FunKey S hardware, firmware, compatible homebrew games, and third-party software released for the device. As the FunKey Wiki is run by the community independently of the FunKey Team, there may at times be erroneous or inconsistent information listed. If there is a piece of information that you are unsure or have further questions about, you are encouraged to contact the FunKey Team directly. If you see information that you know is incorrect, you may leave a message on the talk page of the wiki admin, who will fix the error as soon as possible.

From left to right: Atomic Purple, Original Purple, Retro Grey
The FunKey S product packaging
System buttons
FN shortcuts

What is the FunKey S?

From left to right: Atomic Purple, Original Purple, Retro Grey

The FunKey S is a foldable portable emulation device that is designed to fit onto a keychain. Through emulators on its FunKey-OS operating system, the FunKey S can emulate a wide variety of systems, including the Sega Genesis, PlayStation, and Game Boy Advance. Greatly resembling the larger Game Boy Advance SP, the FunKey S is currently sold in three colors: Original Purple, Retro Grey, and Atomic Purple. While the device includes a 32 gigabyte MicroSD card by default to store system firmware and any software the user wishes to install onto their device, this can be swapped out by the user with MicroSD cards up to the two terabyte limit of the MicroSDXC standard. To facilitate attaching the device to a keychain, the FunKey S has a metallic needle built into the bottom left corner of the device around which an included keychain lanyard is tied.

What is included with the FunKey S?

The FunKey S product packaging

Included with the FunKey S is a 32 gigabyte MicroSD card to store the device's firmware and added software, a Micro-USB cable to charge and transfer files to the device, a keychain lanyard to attach the device to a keychain, a user manual, and four sets of extra buttons (red, blue, yellow, and green) that can be used by the user to customize their device.

What buttons does the FunKey S have?

System buttons
FN shortcuts

The system has thirteen buttons built into it: four directional buttons, four action buttons, two shoulder buttons, a START button, and two system buttons: Menu and Fn. Centered at the top of the control panel, the Menu button serves two purposes: a short press activates the system menu, allowing the user to modify settings or return to the main menu, while a long press turns the system on or off. Sharing a button with SELECT, the Fn (Function) input extends the system's limited button count via the use of button combinations. In conjunction with the shoulder buttons, Fn activates the L2 and R2 trigger inputs of the PlayStation, while its use with the directional and action buttons grants access to the volume, brightness, zoom, aspect ratio, and screenshot shortcuts. While this functionality does in rare cases override button combinations used by games, each such case can be solved by the device's per-game or per-console button remapping capabilities. In addition to the white or grey buttons installed by default, packaged with the FunKey S are green, blue, red, and yellow button sets that the user may use to further personalize their device.

Which systems can the FunKey S emulate?

The currently officially supported systems are the NES, Master System, TurboGrafx-16/PC Engine, Sega Genesis/Sega Mega Drive (along with its Sega 32X and Sega CD add-ons), Game Boy, Atari Lynx, Game Gear, SNES, PlayStation, Game Boy Color, Neo Geo Pocket, WonderSwan, and Game Boy Advance. While the official NES and TurboGrafx-16 emulators have functional support for the Famicom Disk System and TurboGrafx-CD add-ons, respectively, when additional BIOS files are added, as this support is not yet officially implemented, some features, such as Famicom Disk System disk side swapping, are not supported.

While awaiting future firmware updates, third-party emulators can be used to emulate officially unsupported systems via the Gmenu2x launcher. Such systems currently include Arcade, Atari 2600, ColecoVision, Commodore 64, Neo Geo, Pokémon Mini, SG-1000, and Virtual Boy. While a native port of Super Mario 64 to the FunKey S was made possible by that game's decompilation, general Nintendo 64 emulation is currently not, and likely will not be, possible.

What software is pre-installed onto the FunKey S?

The FunKey S runs FunKey-OS, a purpose-made open source Linux distribution. Launchable from one of the device's two application launchers, the device's seven default emulators enable the emulation of twelve consoles out of the box, with Game Boy Advance and improved PlayStation emulation requiring the addition of BIOS files by the user. While the list of consoles emulated out of the box is expected to grow with future firmware updates, third-party emulators can also be used to give the device additional emulation capabilities. While the device includes 61 homebrew games to help demonstrate its functionality, users may also add their own games and box art to the device's emulated system folders to expand their FunKey S game catalogue. Should the need arise, users can edit or delete any file on the device via Commander, the included file management application, without the need to connect the FunKey S to a computer. As FunKey-OS is open source, the files used to build it are publicly available on the FunKey Team's GitHub page.

Why are there no commercial games included with the FunKey S?

As the unlicensed distribution of copyrighted games in any circumstance is illegal piracy, the FunKey S only comes with freely-distributable homebrew games hand-picked for their quality. This means that users seeking to emulate copyrighted games on the device must extract their own game backups and transfer them to the device's console folders. Alternatively, many games originally released in a physical format are now available digitally on platforms such as Steam, with the ROMs of those games often extractable for personal use in external emulators such as those of the FunKey S. A list of such games is available on this page of the FunKey Wiki.

Which games are included on the FunKey S?

System Game Total
NES / Famicom Blockage Cowlitz Gamers 1st Adventure Cowlitz Gamers 2nd Adventure Dúshlán 11
Inversion Lan Master Lunar Limit Nomolos: Storming the Catsle
Ralph 4 Streemerz The Legends of Owlia
Master System Lander 2 Lucky Penguin Minesweeper The Speccies 2 4
TG-16 / PC Engine Bug Hunt Reflectron Santalantean UWOL: Quest for Money 4
Genesis / Mega Drive 2048 Megamindtris Misplaced Old Towers 6
Omega Blast YAZZIE
Game Boy Dangan GB Into the Blue Retroid Snake 5
The Bouncing Ball
Atari Lynx Assembloids Eye of the Beholder Lynx Quest Silas Adventure 5
Xump: The Final Run
Game Gear Dangerous Demolition Fire Track GG Nibbles Wing Warriors 4
SNES / SFC Frog NES MazemaM DX Super Boss Gaiden 3
Game Boy Color Drymouth Klondike Perplex DX Tyrian 2000 4
NGP / NGPC Columns Diamond Run! Dynamate Gears of Fate 5
Puzzle Gems
Game Boy Advance Anguna: Warriors of Virtue Another World Broken Circle Codename Hacker 10
Metal Warrior 4: Agents of Metal Motocross Challenge Reaxion Sudoku Micro
Tetrigram World Reborn
Overall Total
61

Where can I find additional software for the FunKey S?

While users can put ROM backups of their own physical and digital commercial games onto the FunKey S, there is also much freeware and commercial software that can be legally acquired and used on the device. As the system's operating system is both well-documented and open source, third-party developers have released dozens of natively-running original and ported programs for the device that are not limited by the bottleneck of an emulator. In terms of emulatable software, however, the FunKey Wiki also maintains lists of hundreds of freeware and commercial games, as well as several dozen utilities and public domain e-books.

How many games can fit on the FunKey S?

As the game library file sizes of all the cartridge-based consoles emulated on the FunKey S add up to only 13.4 GB, a user could, in theory, have thousands of games on their FunKey S without needing to upgrade its 32 gigabyte MicroSD card (with 27.8 gigabytes of this being accessible with the factory configuration). Since CD-based games (PlayStation, Sega CD, TurboGrafx-CD) have significantly larger file sizes than cartridge-based games, only fifty to sixty CD-based games could fit on the FunKey S before a larger MicroSD card would be needed. While 27.8 gigabytes of available storage is more than enough to fit the game libraries of most users, any user with more than fifty CD-based games should check the total file size of their game library to see whether or not they require a larger MicroSD card. The chart below documents the average game file sizes for each of the thirteen consoles that the FunKey S officially emulates, with several file size totals corresponding to theoretical game libraries that have the same number of games from each system. As illustrated by the proportions listed below, the number of games a user can fit onto their FunKey S is directly related to number of CD-based games present in their game library. For instance, the average PlayStation game takes up the same amount of space as approximately 2,566 NES games, 2,277 Master System games, 1,395 TurboGrafx-16 games, 433 Sega Genesis games, 2,740 Game Boy games, 2,667 Atari Lynx games, 1,717 Game Gear games, 363 SNES games, 414 Game Boy Color games, 368 Neo Geo Pocket games, 313 WonderSwan games, or 78 Game Boy Advance games.

System Avg. ROM Size Proportion Number of Games Each
NES / Famicom 220.85 KB 0.04% 15
(195 overall)
30
(390 overall)
45
(585 overall)
Sega Master System 248.90 KB 0.04%
TG-16 / PC Engine 406.29 KB 0.07%
Genesis / Mega Drive 1.31 MB 0.22%
Game Boy 206.78 KB 0.04%
Atari Lynx 212.50 KB 0.04%
Game Gear 329.97 KB 0.06%
SNES / Super Famicom 1.56 MB 0.27%
PlayStation 566.67 MB 97.17%
Game Boy Color 1.37 MB 0.23%
NGP / NGPC 1.54 MB 0.26%
WS / WSC 1.81 MB 0.31%
Game Boy Advance 7.31 MB 1.25%
Total 583.20 MB 100.00% 8.75 GB 17.50 GB 26.24 GB

Is multiplayer possible on the FunKey S?

As neither link cables nor additional controllers can be connected to the FunKey S, multiplayer modes that require these features are not playable on the device. However, multiplayer modes that are implemented in a hotseat manner (one controller with one system) are playable on the FunKey S. While the majority of games that implement this mode do so using a "pass-and-play" method where players take turns (usually turn-based sports, strategy, and tabletop games), several instead have two players use the same controller simultaneously. Users interested in seeing which games emulatable on the FunKey S use hotseat multiplayer may view the wiki's comprehensive list of such games.

Where can I find game box art?

Users searching for box art specifically for their FunKey S game collection can make use of the wiki's database of resized game art, all of which having resolutions matching, at their respective aspect ratios, the 240x240 resolution of the FunKey S for maximal efficiency. As this database does not currently include box art for Master System, Atari Lynx, Game Gear, Neo Geo Pocket, or WonderSwan games, Libretro's GitHub page of thumbnail repositories should be used to acquire their box art instead. Should you wish to automatically download box art for your entire game collection at once, the Skraper program can be used instead. Since the image representing a game on the FunKey S is the image in the file directory that shares a name with that game, users may use any JPG or PNG format images to represent games on the FunKey S.

Where can I find Gmenu2x wallpapers?

To complement the set of default Gmenu2x wallpapers, the FunKey Wiki maintains a database of minimalist FunKey S wallpapers here. Users may also use any 240-pixel square PNG format image as a Gmenu2x wallpaper on their FunKey S. Once acquired, Gmenu2x wallpapers should be put in the /mnt/FunKey/.gmenu2x/skins/240x240/Default/Wallpapers location of the FunKey S file system. If you don't see the .gmenu2x folder, your computer's Unix-based operating system is hiding hidden folders. To enable the viewing of such folders on MacOS, use the Shift+Cmd+Period key combination. To do so on ChromeOS, click the three-dot icon at the top-right of the Files application and select the Show hidden folders option.

What are the technical specifications of the FunKey S?

Dimensions (folded)

1.67 x 1.75 x 0.54 inches

42.5 x 44.5 x 13.8 mm

Dimensions (unfolded)

2.99 x 1.75 x 0.40 inches

75.9 x 44.5 x 10.1 mm

Display & Resolution

1.54 in / 39.1 mm LCD IPS

240x240 @ 220.2 PPI / 8.67 px/mm

Weight

1 ounce / 30 grams

Operating system

FunKey-OS (Linux distribution)

Processor

ARM Cortex-A7 @ 1.2 GHz

RAM

64 MB DDR2

Refresh rate

50 hz (FPS)

Storage (MicroSD)

32 GB (expandable to 2 TB)

Audio

∅10 mm mono at 500 mW

Battery

410 mAh lithium-ion

Ports

Micro-USB and MicroSD

Dimensions (folded)

1.67 x 1.75 x 0.54 inches

42.5 x 44.5 x 13.8 mm

Dimensions (unfolded)

2.99 x 1.75 x 0.40 inches

75.9 x 44.5 x 10.1 mm

Display & Resolution

1.54 in / 39.1 mm LCD IPS

240x240 @ 220.2 PPI / 8.67 px/mm

Weight

1 ounce / 30 grams

Operating system

FunKey-OS (Linux distribution)

Processor

ARM Cortex-A7 @ 1.2 GHz

RAM

64 MB DDR2

Refresh rate

50 hz (FPS)

Storage (MicroSD)

32 GB (expandable to 2 TB)

Audio

∅10 mm mono at 500 mW

Battery

410 mAh lithium-ion

Ports

Micro-USB and MicroSD

Where can I find FunKey S device schematics and 3D files?

The FunKey Team has FunKey S schematics, STL files, and a project STEP file for the device's shell components available on Grabcad. Schematics for the device's electrical components are available on the FunKey Team's GitHub page. The device is under the open hardware license which gives anyone the right to study, modify, distribute, make, and sell the design or hardware based on that design.

How long does the FunKey S battery last?

On a sixty minute full charge, the FunKey S has a median battery life of two hours. Since the device's battery life is impacted by CPU usage and brightness and audio levels, there can be significant deviation from the median by roughly thirty minutes in either direction. In practice, this means that low-intensity emulation such as that of the Game Boy will result in above-average battery life, while high-intensity emulation such as that of the PlayStation will result in below-average battery life.

Whether in use or not, the device charges when connected via Micro-USB to a portable battery or outlet, which is indicated by a blue LED that subsequently remains on until charging finishes or is interrupted. The device's current charge level is indicated by the battery icon at the top right corner of the default RetroFE menu or at the bottom right of the alternate Gmenu2x menu, with a red low-charge icon appearing in the top right corner of the screen should the device run low on charge during gameplay. If the device runs out of charge, an autosave of the game currently being played is generated prior to shutdown and returned to when the system is recharged and reopened.

Does the FunKey S support RTC (real-time clock) functionality?

The FunKey S supports the RTC functionalities used by Game Boy Color and Game Boy Advance games, such as Harvest Moon GBC, Pokemon Crystal, and Pokemon Emerald. It does this by siphoning an extremely small amount of charge from the device's battery, allowing games that employ the feature to keep track of time. RTC functionality is still preserved even if the FunKey S is turned off or runs out of charge, as there is a buffer of charge reserved for such an instance. To best make use of the RTC feature, it is recommended that users rely solely on in-game saves for games with RTC functionality, as save states and autosaves can affect the RTC timing of games.

Can FunKey S save game data be transferred?

While FunKey S autosave save files (.quicksave) are entirely incompatible with external emulators, FunKey S emulator save state files (.000, .001, etc.) other than those of the PlayStation are compatible with matching emulators on other platforms, such as the PC version of FCEUX in the case of NES games. Additionally, for games that support them, the transfer of in-game saves is an alternative option that is generally compatible with a wider range of emulators. Note, however, that a third-party emulator having an in-game save file format with a matching file extension does not guarantee that it will be listed below, as other factors, such as expected save file size, can impact in-game save file format compatibility between emulators. As battery-based in-game saving did not become commonplace until the 1990s, games for earlier systems emulated by the FunKey S, such as the Nintendo Entertainment System, Master System, TurboGrafx-16, and Sega Genesis, often do not support this type of saving, with many, such as all Atari Lynx games with an in-game save feature, using password-based saves instead. For several dozen NES and Genesis games, however, SRAM ROM hacks can be used to add in-game saving to games that did not originally have it, often replacing more tedious password-based saving systems. Due to an inaccuracy in the Master System emulation of the PicoDrive emulator, however, all in-game, battery-based saves of Master System games are incompatible with the FunKey S.

When a game does support battery-based in-game saving, however, an in-game save file is generated for it the first time it attempts to save data, with the extension of this file depending on the system the game is for. A table containing the corresponding in-game save file extension for each officially emulated system with in-game save file support, as well as the storage locations of these files and the third-party emulators compatible with them, is listed below. Transferring an in-game save file onto or off of the FunKey S is done by simply moving the file in question into or out of the folder in which in-game saves are stored for that game's system; usually the same folder as the game itself. Note that PlayStation MCD files, placed in the memcards folder within the PlayStation folder of the FunKey S, should be named card#.mcd, with the hashtag symbol replaced by the first number starting from one that isn't already used by an existing MCD file.

In regards to SNES save files, if you don't see the .snes96_snapshots folder in your computer's filesystem, its Unix-based operating system is hiding hidden folders. To enable the viewing of such folders on MacOS, use the Shift+Cmd+Period key combination. To do so on ChromeOS, click the three-dot icon at the top-right of the Files application and select the Show hidden folders option. Note that as in-game save files generated by the Mednafen emulator include a string of characters between the game name and file extension, such save files must be renamed to remove the string of characters (ex. .9d599a43d2c69738f3562f58aeff8828) before they can be detected by emulators other than Mednafen. For the FunKey S, this applies to the TurboGrafx-16, Game Gear, Neo Geo Pocket, and WonderSwan systems. If you find that a third-party emulator compatible with any in-game saves generated by the emulators of the FunKey S is not listed below, feel free to add it yourself or inform a wiki editor.

System FunKey-Generated In-Game Save File Compatible Third-Party Emulators
Format Stored Location On-Device Off-Device
NES / Famicom SAV /mnt/NES FCEUmm (SDL Retro)
Mednafen
FCEUX
Mesen
Nestopia UE
TurboGrafx-16 / PC Engine SAV /mnt/PCE-TurboGrafx N/A Mednafen
Genesis / Mega Drive / 32X SRM /mnt/Sega Genesis Genesis Plus GX (SDL Retro; does not emulate 32X add-on; SRM → SAV) Fusion
PicoDrive
Sega CD / Mega-CD BRM /mnt/Sega Genesis Genesis Plus GX (SDL Retro) Fusion
PicoDrive
Game Boy
Game Boy Color
SAV /mnt/Game Boy
/mnt/Game Boy Color
Gambatte
Gearboy
(SDL Retro)
mGBA (SDL Retro)
BGB
gnuboy
mGBA
SameBoy
VBA
VBA-M
Game Gear SAV /mnt/Game Gear Genesis Plus GX (SDL Retro)
SMS Plus GX (SDL Retro / Standalone)
Fusion (SAV → SGM)
Mednafen
SNES / Super Famicom SRM /mnt/FunKey/.snes96_snapshots Snes9x 1.6 (SDL Retro; SRM → SAV)
Snes9x 2005 (SDL Retro; SRM → SAV)
Snes9x 2010 (SDL Retro; SRM → SAV)
bsnes
Mesen-S
Snes9x
ZSNES
PlayStation MCD /mnt/PS1/memcards PCSX-ReARMed Ultimate PCSX-ReARMed
Neo Geo Pocket / Neo Geo Pocket Color FLASH /mnt/Neo Geo Pocket N/A Mednafen
WonderSwan / WonderSwan Color SAV /mnt/WonderSwan SwanEmu (SAV → WSC.EPS) Mednafen
Game Boy Advance SAV /mnt/Game Boy Advance gpSP (SDL Retro)
mGBA (SDL Retro)
VBA Next (SAV → GBA.EPS)
mGBA
VBA
VBA-M

Can ROM hacks be used on the FunKey S?

As ROM hacks are simply modified ROMs, in most cases they will work in the emulators of the FunKey S without issue. Cases in which ROM hacks may glitch or crash include several Game Boy Advance ROM hacks due to the nine percent incompatibility rate of the default GBA emulator, as well as ROM hacks developed for use in specific emulators. A list of compatible ROM hacks recommended by the editors of the FunKey Wiki is available here.

Can the FunKey S be used as an external storage device?

While the primary purpose of the FunKey S is the ability to use emulated and natively-running games and applications, it can also be used as an external storage device. While the slow transfer speed of its Micro-USB port and four gigabyte file size limit of its FAT32 file system make it less ideal for general file storage than most USB keys, SD cards, and external hard drives, the FunKey S having an operating system gives it the additional ability to interact with its stored files. While such capabilities come primarily from the included Commander file management application, which can be used to view image files, view and edit text files, and move, rename, or delete any stored file, additional applications can be installed to give the device additional capabilities, such as video playback and Linux terminal access. As an external storage device, the FunKey S is also able to stream media files at qualities higher than it can stream itself to televisions, radios, and other media players with such functionality. Users wishing to transfer files to the FunKey S faster than the device's Micro-USB port is capable of can alternatively open their device, remove the MicroSD card, and transfer files to the card directly.

Can cheats be used on the FunKey S?

While the FunKey S does not have officially implemented cheat support, with sufficient emulator and/or game configuration, several systems can have cheat support implemented by the user.

As the default NES emulator, FCEUX, is able to make use of the Game Genie's cheat code system, it is the simplest way to use cheats in NES games on the FunKey S. To enable the functionality, begin by renaming an NES Game Genie ROM file to gg.rom and placing it in the /mnt/FunKey/.fceux location of the FunKey S file system. If you don't see the .fceux folder, your computer's Unix-based operating system is hiding hidden folders. To enable the viewing of such folders on MacOS, use the Shift+Cmd+Period key combination. To do so on ChromeOS, click the three-dot icon at the top-right of the Files application and select the Show hidden folders option. Next, open the fceux.cfg file also located in that folder in a text editor and replace the thirteenth line, SDL.GameGenie = 0, with SDL.GameGenie = 1. The next time an NES game is launched with the New Game option via the default NES emulator, the Game Genie password menu will appear, allowing up to three Game Genie codes to be entered for the game in question. As Game Genie codes are entered before a game begins, keep in mind that FunKey S autosaves cannot be loaded while the setting is enabled. Therefore, to use Game Genie codes with pre-existing save data, ensure ahead of time that your game(s) are saved via in-game saves or emulator save states. To disable the Game Genie setting and re-enable the device's autosave feature for NES games, simply undo the modification made to the fceux.cfg file.

To enable cheats in Game Boy Advance games, Game Shark codes must be patched into each game ahead of time, and are enabled by the user each time the game is started using the New Game option. Begin by downloading, extracting, and launching the GBAATM – Rebirth application for Windows, MacOS, or Linux. After selecting a game to patch and an output file name and location, go to the CheatCodes tab of the application and add any Codebreaker/GameShark SP/Xploder format codes that you wish, such as those listed here. When retrieving codes, see if a Master Code is listed for the game as well, as some games require such a code to be loaded before any other cheat codes can be used. Should there be multiple Codebreaker/GameShark SP/Xploder format Master Codes, either use the one made by the same people who made the cheat codes that you're using or test several until you find one that works. Codes should be added two lines at a time, with a code's name entered on the first line and its alphanumerical string entered on the second. Note that a game's Master Code, if present, should always be the first code listed, with the name Master entered on the first line and all segments of the comparatively long alphanumerical string combined on the second line. Once all desired codes are entered, press the Patch Game! button below the text box to patch the codes into the selected game. Should the patching process be successful, a message indicating so will appear in the application's second text box and the patched game will appear in the chosen file location. Lastly, add the modified ROM to the GBA folder of the FunKey S as per usual. When starting the game with the New Game option, a cheat code menu will appear in-game to allow you to choose which of the added codes you wish to use with the game. After you've finished selecting codes with the A button, press START to launch the game.

Can the FunKey S inputs be remapped?

Via the use of KEY files, the inputs of all systems and games emulated by the FunKey S can be remapped by the user. This includes system shortcut inputs, some of which users may wish to relocate or disable should they not be commonly used or interfere with gameplay. When a KEY file is used, it modifies the inputs set by the system's default input mapping file, available for download here. This file defines via the use of the MAP function which shortcut (such as brightness up) or input (such as KEY_R) is associated with which button (such as START) or button combination (such as FN+UP). As all inputs are already predefined by this file, only inputs being modified should be included in KEY files.

In addition to its regular input mapping functionality, the MAP function is also used to overwrite previous mappings with new ones. To do this, following the word MAP the button or button combination and input or shortcut be remapped should be defined, seperated by the function TO KEY if remapping inputs or zoom or aspect ratio shortcuts, or TO COMMAND if remapping any other shortcut. Should the user wish to create a KEY file that switches the A and B inputs, for instance, all that would be needed would be MAP A TO KEY KEY_B on the first line and MAP B TO KEY KEY_A on the second. Note the formatting of the inputs; KEY_A and KEY_B. All inputs, as well as the zoom in, zoom out, and aspect ratio shortcuts, are defined in KEY files by KEY_ followed by a letter. Should remapping occur without the input of the secondary button swapped to the first button (whether due to that input being moved to an empty slot such as FN+START or simply overwritten and not replaced), the UNMAP function should first be used to remove the original mapping so that the input is not mapped to two buttons simultaneously. For instance, should a user wish to remove the aspect ratio shortcut and move the snapshot shortcut to its place, the KEY file for doing so would simply have UNMAP FN+UP on the first line and MAP FN+DOWN TO COMMAND snapshot on the second. In creating KEY files, note that due to a glitch with the formatting of such files, games with apostrophes in their title currently must be renamed to have KEY file support (such as renaming Kirby's Dream Land.gb to Kirbys Dream Land.gb). For additional KEY file examples, consult the FunKey Wiki's list of pre-configured KEY files.

To supplement the above-listed default input mapping file, a table detailing the associations between emulated system inputs and system inputs, as well as the default mapping of those inputs to the device's buttons, is listed below. Note that while the lack of X, Y, and Z mapping capabilities for the Sega Genesis and Mega Drive does not result in any game incompatibilities, the lack of Y1, Y2, Y3, and Y4 mapping capabilities for the WonderSwan and WonderSwan Color means that vertical games for that system are currently incompatible with the FunKey S. Following that table is another table that lists the same information for the device's shortcuts.

Input UP DOWN LEFT RIGHT A B X Y L R FN+L FN+R FN START
KEY file button letter ⇨ U D L R A B X Y M N V O K S
⇩ System ⇩
NES / Famicom & GB & GBC UP DOWN LEFT RIGHT A B A N/A SELECT START
Sega Master System UP DOWN LEFT RIGHT 2 1 N/A PAUSE
TurboGrafx-16 / PC Engine UP DOWN LEFT RIGHT I II N/A SELECT RUN
Genesis / Mega Drive / CD / 32X UP DOWN LEFT RIGHT C B N/A A N/A START
Atari Lynx UP DOWN LEFT RIGHT A B OPTION 1 OPTION 2 N/A PAUSE
Game Gear UP DOWN LEFT RIGHT 1 2 N/A PAUSE
SNES / Super Famicom UP DOWN LEFT RIGHT A B X Y L R N/A SELECT START
PlayStation UP DOWN LEFT RIGHT L R L2 R2 SELECT START
Neo Geo Pocket / Neo Geo Pocket Color UP DOWN LEFT RIGHT A B A N/A OPTIONS
WonderSwan / WonderSwan Color X1 X3 X4 X2 A B N/A START
Game Boy Advance UP DOWN LEFT RIGHT A B A L R N/A SELECT START
Zoom Brightness Volume Screenshot Change Aspect Ratio View System Resource Usage
In Out Increase Decrease Raise Lower
Button combination FN+RIGHT FN+LEFT FN+X FN+B FN+A FN+Y FN+UP FN+DOWN FN+L+R
KEY file button letter/command name I J brightness up brightness down volume up volume down snapshot H system_stats toggle

Why does the FunKey S need emulated system BIOS files?

Emulators function using either low-level emulation (LLE) or high-level emulation (HLE), with the former directly emulating the processes of the original system and the latter merely simulating them. While both methods are commonly used and have distinct benefits, the truer 'emulation' of LLE means emulators that use this method require the system ROM of the original hardware to function. This ROM, known as the BIOS, performs system-critical tasks for many systems, with neither the original hardware nor an LLE emulator of that hardware being functional without the associated BIOS file. In the case of the FunKey S, while the majority of its emulated systems do not require BIOS files, there are two that do: the PlayStation and Game Boy Advance. While some PlayStation games can be emulated without a BIOS file and alternate, albeit slower, Game Boy Advance emulators that don't require BIOS files are available, to properly emulate either system using the default emulators a BIOS file for each is required. As with video game ROMs, BIOS files are protected by copyright restrictions and thus also cannot be legally distributed with the FunKey S. Users may extract BIOS files from PlayStation and Game Boy Advance units that they own and add them to the FunKey S emulators for those systems to improve functionality for the former and enable functionality for the latter. Additionally, while Sega Genesis and TurboGrafx-16 games do not require the presence of BIOS files to be accurately emulated, games for their respective add-ons, the Sega CD and TurboGrafx-CD, do. A tutorial for adding emulator BIOS files to the FunKey S can be found here.

Why doesn't the FunKey S have more than 64 megabytes of RAM?

The FunKey S has 64 megabytes of RAM due to that being the amount built into its system on a chip (SoC), the Allwinner V3s. While several handheld emulation systems with similar capabilities to the FunKey S include several times more RAM than it, the lightweight Linux distribution used by the FunKey S, in addition to its carefully chosen and optimized collection of emulators, allows it to emulate games at relatively high levels of accuracy while using comparatively little RAM. The inclusion of additional RAM in the FunKey S would not result in improved performance or additional emulation capabilities.

Why doesn't the FunKey S have a 60 FPS refresh rate?

The FunKey S display refreshes at a maximum rate of 50 FPS due to that being the most data the device's processor can send to the display's internal graphics memory each second. If this were not a limitation, the display would otherwise have a maximum refresh rate of 120 FPS. As NTSC games are still emulated at 60 FPS, however, ten frames are dropped each second rather than gameplay being slowed down to match the differing frame rate. As this issue was anticipated during the designing of the FunKey S, however, several software and hardware techniques were implemented to avoid screen tearing between the remaining 50 frames of NTSC games.

In 2023, a custom version of the Funkey firmware was released which fixes the framerate cap, allowing for 60fps gameplay.

Why doesn't the FunKey S have USB-C and auxiliary (headphone jack) ports?

The small form factor of the FunKey S made the use of Micro-USB instead of USB-C necessary and left no room for an auxiliary port for use with headphones or external speakers. While the Micro-USB standard supports the output of video and audio data signals by a host device, the limited space inside the device also made adding this functionality to the FunKey S not possible. Despite this, the FunKey Wiki lists such hardware suggestions at the wiki's Suggestion Center, as there is a chance that they could be implemented in future FunKey Team devices.

Are there any games that aren't emulated properly on the FunKey S?

While the average emulation quality of its default emulators is relatively high, the FunKey S cannot emulate several games out of the box for a variety of reasons. These include incompatible controls, unemulated specialty hardware, and emulation imperfections, among others. A list of all the games known to be incompatible with the device's default emulators is located here. Many of these games, however, can still be played via one of the several third-party emulators available for the device. This includes multi-disk PlayStation games, which while not fully-playable in the default version of PCSX-ReARMed, are fully-playable in the third-party version that has disk-swapping functionality enabled. As an illustration of the device's capabilities, a table of estimated compatibility rates for each officially emulated system has been compiled below. For the purposes of these counts, a game is counted as incompatible if it cannot be played to completion using solely the FunKey S. As wiki contributors have conducted extensive research and game testing to find incompatible games, all compatibility rates listed here are believed to be accurate or very near accurate. In cases where all of a system's incompatibilities are due to unemulated hardware, that system's compatibility rate is italicized. While the emulation of Famicom Disk System and TurboGrafx-CD games on the FunKey S is functional via the addition of their respective BIOS files, as this functionality has not yet been fully-implemented into FunKey-OS, the compatibility rates of those console add-ons are excluded from the table below. As homebrew games can have varying compatibility with the systems they are developed for, their compatibility is also not reflected in the table below. Note that due to its extensive game library, the PlayStation's Licensed Games figure is simply an estimate calculated by the wiki editors, though should be accurate to within roughly one hundred games in either direction.

System Licensed Games Known Incompatibilities Estimated Compatibility Rate
NES / Famicom 1421 9 99.37%
Sega Master System 360 14 96.11%
TurboGrafx-16 / PC Engine 413 0 100%
Genesis / Mega Drive / CD / 32X 1123 0 100%
Game Boy 1046 6 99.43%
Atari Lynx 76 0 100%
Game Gear 364 18 95.05%
SNES / Super Famicom 1757 31 98.24%
PlayStation 4750 102 97.85%
Game Boy Color 915 10 98.91%
Neo Geo Pocket / Neo Geo Pocket Color 92 0 100%
WonderSwan / WonderSwan Color 199 5 97.49%
Game Boy Advance 1536 139 90.95%
Total 14052 334 97.62%

Which emulators does the FunKey S use?

Listed in the table below are the emulators included by default with the FunKey S, with the systems they emulate and their accepted ROM file extensions listed on the right. Other than Game Boy, Game Boy Color, TurboGrafx-CD, Sega CD, and PlayStation games, all of the file formats are also detected if stored in ZIP archives. For a list of the in-game save file formats generated for each of the emulated systems, consult the save data section above.

Emulator System / File Extension(s)
FCEUX NES / Famicom Famicom Disk System
NES FDS
gnuboy Game Boy Game Boy Color
GB GBC
gpSP Game Boy Advance
GBA
Mednafen TurboGrafx-16 / PC Engine SuperGrafx TurboGrafx-CD Game Gear Atari Lynx Neo Geo Pocket
PCE SGX BIN/CUE GG LNX NGP
Neo Geo Pocket Color WonderSwan WonderSwan Color
NGC WS WSC
PCSX-ReARMed PlayStation
BIN/CUE PBP
PicoDrive Sega Master System Sega Genesis / Mega Drive Sega 32X
BIN SMS BIN MD SMD 32X
Sega CD
BIN/CUE CSO/MP3 CHD
PocketSNES SNES
SFC SMC

How do I combine a PlayStation game's multiple BIN files into a single BIN file?

As all of a PlayStation game's BIN files are listed in the FunKey S game list, to minimize the time is takes to scroll through one's game library, each game should only have one BIN file. If your PlayStation game has multiple BIN files across multiple disks, follow these instructions. If these BIN files are all for one disk, to merge them you will first need to download IsoBuster. Once this is done, open the program and select Open Image File, indicated by an icon of a folder containing a blue downwards arrow. Navigating to and selecting the CUE file of the game in question will make a CD icon appear in the IsoBuster interface, which you then right click, selecting the Raw .bin option under the Extract CD <Image> category. After you save the BIN and CUE files, place these new files into the PS1 folder of the FunKey S.

How do I combine files from multiple PlayStation disks into a single ROM file?

If the files from multiple disks of a PlayStation game are added to the FunKey S, they will all appear in the game list, complicating game library navigation and disk transferring. To merge all of these files into a single PBP file, you will need both the PSX2PSP application and the copyrighted BASE.PBP file, which must be added to the Files folder of that application. Once this is done, open the application with the Clasic mode shortcut and select the Options button at the bottom left. This will open a page with various application settings, of which you should change the Compression level to 1 (worst) and the toc setting to CUE File. Once this is done, save the setting modifications to return to the main program interface. From here, press the three dot icon next to ISO/PBP File 1 - No file selected at the top left and select the BIN file of the first disk. Repeat this process for each subsequent disk by selecting the arrow icon to the left of the aforementioned three dot icon, selecting each disk number in turn. Once this process is complete, select the folder on your system where you wish the PBP file to be saved to and press the Convert button at the bottom of the program window. Once the conversion process is finished, navigate to the completed EBOOT.PBP file, rename it, and place it into the PS1 folder of the FunKey S.

Is the FunKey S legal?

As it is the improper acquisition of ROMs, and not emulation itself, that is illegal to varying degrees around the world, the FunKey S remains entirely legal. While the device does come bundled with several dozen freeware games to give it basic out-of-box functionality, it includes neither commercial games nor the copyrighted PlayStation and Game Boy Advance BIOS files. While some users may choose to put illegally-acquired ROMs on their devices, both the FunKey Team and the editors of this wiki encourage users to look through the FunKey Wiki's lists of hundreds of legally-acquirable game ROMs, both freeware and commercial.

Where can I buy a FunKey S?

The FunKey S is currently available for pre-order on the FunKey Project store page. While the device itself costs €65 (~US$77), additional shipping and taxation costs will make the total cost higher. The amount these additional costs add up to depends on an order's country of destination, with shipping fees for most users being between €7 (~US$8.25) and €10 (~US$11.75) and value-added tax rates ranging from €12.41 to €19.71 per device only charged to European Union customers. For French and non-EU customers, an order's per-unit shipping fee can be lowered by buying multiple devices at once, with the lowest per-unit fee applied to orders containing five or more devices. A comprehensive list of shipping fees for each country the FunKey S ships to can be found here.

Where can I get accessories for the FunKey S?

Although the FunKey Team is not currently selling any accessories for the FunKey S aside from what is included with it, the editors of this wiki have compiled a list of products that can be used in conjunction with the FunKey S, including adapters, power banks, cables, pouches, and keychain decorations. To match the FunKey S keychain aesthetic, research has been conducted to ensure that all listed accessories do not exceed size or weight levels that would make putting them on a keychain inconvenient. While the editors of this wiki have conducted extensive research to confirm that all products listed are compatible and legitimate, neither the editors nor the FunKey Team are responsible for the reliability of third-party products. Therefore, prior to making any purchase, users should verify that a listed product adequately meets their needs.

Can I develop software for the FunKey S?

As both the hardware specifications and operating system of the FunKey S are open source and documented on the FunKey Team's GitHub page, users are able and encouraged to develop their own software for the device. To facilitate this, an SDK has been created and made available for FunKey-OS software development. Additionally, a development guide is available on the documentation page of the FunKey website. The FunKey Wiki maintains a database of all third-party software developed for the FunKey S, so developers who wish to create an article for their program or add it to one of the lists can either edit the wiki themselves or ask a wiki editor to do so for them.

Who is the FunKey Team?

Based in the city of Bordeaux in southwestern France, the FunKey Team is comprised of four people: Vincent, Michel, David, and Killian. Founded by Vincent and Michel in 2017 as a joint effort to create the group's first system, the Keymu, the FunKey Team subsequently expanded to include David and Killian to develop and commercially release the FunKey S as an improved version of the Keymu.

How can I contact the FunKey Team?

While the FunKey Team's numerous social media pages are represented with the icons at the top of this page, they can be contacted directly via the contact page of their website. If you wish to email them, questions regarding the FunKey S can be sent to their support email address, while other inquiries can be sent to their contact email address.

Where is the FunKey S manufactured?

FunKey S production is contracted out by the FunKey Team to a manufacturing facility in Shenzhen, China. After all components arrive and are assembled at that facility, the devices are shipped directly by a nearby shipping firm to international customers.

Where can I find FunKey S news updates?

In addition to the email newsletter on their website, the FunKey Team posts regular updates about the FunKey S on their Kickstarter page. Recent news updates are regularly reformatted and posted on the main page of the FunKey Wiki, with summaries of past news updates available in the The FunKey Times . Users wishing to discuss recent news updates are recommended to join the FunKey Community Discord Server.

Who edits The FunKey Wiki?

The FunKey Wiki is a community-managed database of FunKey S information, operated and edited independently of the FunKey Team. Currently, the Administrator of and primary contributor to the FunKey Wiki is CoolieCoolster, but anyone is free to contribute to the improvement of the wiki!

Who runs the FunKey Community Discord Server?

As with the FunKey Wiki, the FunKey Community Discord Server is run independently of the FunKey Team by community volunteers. While some moderation does occur to ensure that the server remains a productive forum for FunKey S discussion, users are free to share their FunKey S complements and criticisms alike.

How can I edit The FunKey Wiki?

Since The FunKey Wiki uses the MediaWiki wiki engine, the same markdown format that is used to edit other MediaWiki wikis such as Wikipedia is also used here. If you wish to learn the MediaWiki markdown format, MediaWiki has several tutorials on their website in addition to a Discord server where users can ask questions, but if you have any specific questions about editing or templates used on the FunKey Wiki, you may also ask the FunKey Wiki admin.

How can I translate The FunKey Wiki?

Users who are fluent in a language other than English are encouraged to translate one or more of the wiki's pages into that language to improve the helpfulness of the wiki. To translate any page marked for translation, select the Translate text above the list of the available languages at the top of that page. If a page has already been translated into a language that you speak fluently, you are free to analyze and improve the translation. If you have translated a page but are unsure on how to implement the translation, feel free to ask the FunKey Wiki admin for assistance. For more information about translating on the FunKey Wiki, visit the Translation Center.

What platform does The FunKey Wiki run on?

The FunKey Wiki is powered by MediaWiki, an open-source wiki engine that is used by many wikis, including Wikipedia. The FunKey Wiki is hosted by Miraheze, a non-profit wiki farm that hosts thousands of wikis ad-free at no charge. If you wish to support the hosting of The FunKey Wiki or create a wiki of your own, visit their website!