From fa986e15069be7b05fb07566c6e7d91383f5d990 Mon Sep 17 00:00:00 2001 From: Vincent-FK Date: Thu, 12 Nov 2020 20:17:52 +0100 Subject: [PATCH] added funkey_gpio_mapping.conf from last commit and added email address in Free games's copyright text --- .../etc/funkey_gpio_mapping.conf | 66 ++++++++++++++++++ .../usr/local/share/mnt_freware_games.zip | Bin 21667440 -> 21667789 bytes 2 files changed, 66 insertions(+) create mode 100644 FunKey/board/funkey/rootfs-overlay/etc/funkey_gpio_mapping.conf diff --git a/FunKey/board/funkey/rootfs-overlay/etc/funkey_gpio_mapping.conf b/FunKey/board/funkey/rootfs-overlay/etc/funkey_gpio_mapping.conf new file mode 100644 index 0000000..11a4e43 --- /dev/null +++ b/FunKey/board/funkey/rootfs-overlay/etc/funkey_gpio_mapping.conf @@ -0,0 +1,66 @@ +################################## +# Funkey GPIO keymap config file # +################################## +# Format: +# +# - First all GPIO Pin numbers must be declared (integers separated by commas) +# By default, pins are declared active high, to declare them active low, add char '*' +# Example: 0,1,2,3,4,6,7,10*,11,12,13,14,15 +# +# - Then the mapping can be done as follows (one line per mapping): +# Pin_number[+Pin_number...], type_mapping, value, str_help_name_pin, str_help_fct_pin +# +# args: * Pin_number is the pin number concerned by the maping, +# add +Pin_number for multiple touch mapping (not limited in nb of pins) +# * type_mapping can be KEYBOARD or SHELL_COMMAND +# * value is : +# if type_mapping==KEYBOARD: the keycode from /usr/include/linux/input.h] +# if type_mapping==SHELL_COMMAND: the shell command to exec +# * str_help_name_pin is a sweet name for the pin (ex: PB5) +# * str_help_fct_pin is an help str to indicate the function of this mapping + + + +################################### +# Pins declaration: +0,1,2,3,4,6,7,10*,11,12,13,14,15 + + +################################### +# Mapping: +#7, KEYBOARD, KEY_F, KEY_F, Fn +#7+6, KEYBOARD, KEY_K, KEY_K, Select +7, KEYBOARD, KEY_K, KEY_K, Select +6, KEYBOARD, KEY_S, KEY_S, Start +3, KEYBOARD, KEY_U, KEY_U, Up +7+3, KEYBOARD, KEY_P, KEY_P, Quick Save +4, KEYBOARD, KEY_L, KEY_L, Left +7+4, KEYBOARD, KEY_J, KEY_J, Aspect ratio factor -- +1, KEYBOARD, KEY_D, KEY_D, Down +7+1, KEYBOARD, KEY_H, KEY_H, Aspect ratio mode change +0, KEYBOARD, KEY_R, KEY_R, Right +7+0, KEYBOARD, KEY_I, KEY_I, Aspect ratio factor ++ +15, KEYBOARD, KEY_N, KEY_N, R1 +7+15, KEYBOARD, KEY_O, KEY_O, R2 +2, KEYBOARD, KEY_M, KEY_M, L1 +7+2, KEYBOARD, KEY_V, KEY_V, L2 +12, KEYBOARD, KEY_A, KEY_A, A +14, KEYBOARD, KEY_B, KEY_B, B +13, KEYBOARD, KEY_Y, KEY_Y, Y +11, KEYBOARD, KEY_X, KEY_X, X + +7+12, SHELL_COMMAND, quick_action_volume_up, Fn+Y, Volume++ +7+13, SHELL_COMMAND, quick_action_volume_down, Fn+A, Volume-- +7+11, SHELL_COMMAND, quick_action_bright_up, Fn+B, Brightness++ +7+14, SHELL_COMMAND, quick_action_bright_down, Fn+X, Brightness-- +10, SHELL_COMMAND, sched_shutdown 1 & signal_usr1_to_emulators, N_OE, Quick save and Poweroff because of N_OE +7+15+2, SHELL_COMMAND, display_notif_system_stats, Fn+L1+L2, display system cpu and ram usage + +#7+12, KEYBOARD, KEY_G, KEY_G, Brightness++ +#7+14, KEYBOARD, KEY_E, KEY_E, Volume-- +#7+13, KEYBOARD, KEY_W, KEY_W, Brightness-- +#7+11, KEYBOARD, KEY_C, KEY_C, Volume++ +#10, KEYBOARD, KEY_T, KEY_T, Should Poweroff because N_OE_received +#7+15, KEYBOARD, KEY_Q, 7+11, Launch menu + + diff --git a/FunKey/board/funkey/rootfs-overlay/usr/local/share/mnt_freware_games.zip b/FunKey/board/funkey/rootfs-overlay/usr/local/share/mnt_freware_games.zip index 800f0b69391f337f50fa19dd1feb41d715c4eb6b..c806e85debee6046064c8f5370455cc0cea8d76d 100644 GIT binary patch delta 12088 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 Gi2gs&jjyBt