rockbox/apps/plugins/lua
William Wilgus f7bb9e2167 Add custom action mapping to core
results of an idea I discussed in IRC

changed the way the lookup in the remap file works..

 entries consist of 3 int [action, button, prebtn]
 context look up table is at the beginning
 action_code contains the (context | CONTEXT_REMAPPED)
 button_code contains the index of the first remapped action for the matched context
 [0] CORE_CONTEXT_REMAP(ctx1) offset1=(3), count=(1)
 [1] CORE_CONTEXT_REMAP(ctx2, offset2=(5), count=(1)
 [2] sentinel, 0, 0
 [3] act0, btn, 0
 [4] sentinel 0, 0
 [5] act1, btn, 0
 [6] sentinel, 0, 0

 Note:
 last entry of each group is always the sentinel [CONTEXT_STOPSEARCHING, BUTTON_NONE, BUTTON_NONE]
 contexts must match exactly -- re-mapped contexts run before the built in w/ fall through contexts
 ie. you can't remap std_context and expect it to match std_context actions from the WPS context.

-- Done --

Code for reading core remap entries

-- Done --

import of core remap entires from disk
-- Done --

plugin to set new key mapping (the hard part)

The plugin is started and FULLY functional
you can add actions and contexts
you can change context, action, button, prebtn
delete keymap files
load keymapfiles
save user keymaps
test keymaps before applying them
loading keymaps to core still requires restart
-----------------------------------------------------------------------------------------------

Change-Id: Ib8b88c5ae91af4d540e1829de5db32669cd68203
2022-02-23 08:47:12 -05:00
..
include_lua lua add a way to filter settings on read 2021-05-19 23:29:10 -04:00
action_helper.pl
button_helper.pl
lapi.c Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
lapi.h
lauxlib.c lua Fix a few potential bugs 2021-08-13 22:44:45 -04:00
lauxlib.h lua update to 5.1.5 2018-11-11 19:42:30 -05:00
lbaselib.c lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lbitlib.c
lcode.c lua fix potential null warning 2021-08-03 11:02:15 +00:00
lcode.h
ldebug.c Lua extend error splash timeout and stop cutting off info 2019-09-06 20:19:42 -05:00
ldebug.h lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
ldo.c Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
ldo.h
ldump.c lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lfunc.c lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lfunc.h
lgc.c lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lgc.h Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
liolib.c lua update to 5.1.5 2018-11-11 19:42:30 -05:00
llex.c lua inbinary strings 2019-07-11 00:31:41 +02:00
llex.h
llimits.h
lmathlib.c lua Fix a few potential bugs 2021-08-13 22:44:45 -04:00
lmem.c
lmem.h
loadlib.c lua latebound function update 2021-05-19 23:28:35 +00:00
lobject.c lua inbinary strings 2019-07-11 00:31:41 +02:00
lobject.h lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lopcodes.c
lopcodes.h
loslib.c lua add demo scripts, atexit handler, gui_scrollbar_draw 2019-07-29 02:51:29 -05:00
lparser.c lua Fix a few potential bugs 2021-08-13 22:44:45 -04:00
lparser.h lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lstate.c Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
lstate.h Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
lstring.c Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
lstring.h lua inbinary strings 2019-07-11 00:31:41 +02:00
lstrlib.c lua update to 5.1.5 2018-11-11 19:42:30 -05:00
ltable.c Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
ltable.h
ltablib.c
ltm.c lua inbinary strings 2019-07-11 00:31:41 +02:00
ltm.h
lua.h lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lua.make lua fix yellow and add temploader 2021-05-03 23:13:25 -04:00
lua_user.c Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
lua_user.h Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
luaconf.h lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
luadir.c lua give luadir the ability to return table of attributes 2019-09-18 21:20:42 -05:00
luadir.h
lualib.h
lundump.c lua LCD (Lua Compact Debug) patch 2019-08-08 07:11:30 +02:00
lundump.h lua disable bytecode dump & undump functions 2019-07-18 14:56:00 -05:00
lvm.c lua fix crashes EGC failure to lock stack in concat 2019-08-05 21:20:30 -05:00
lvm.h
lzio.c Lua fix reader bug in lzio 2018-11-15 11:20:54 +01:00
lzio.h Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
Makefile build: Rename SHARED_LDFLAG to SHARED_LDFLAGS 2021-07-08 19:53:05 -04:00
rbdefines_helper.pl Add custom action mapping to core 2022-02-23 08:47:12 -05:00
README
rockaux.c lua rockaux.c filetol fix invalid conditional 2021-08-10 15:00:42 -04:00
rockconf.h lua Add scrollable stack traceback WIP 2020-10-03 22:09:52 +00:00
rocklib.c plugin.h & lua add playlist_insert_playlist 2021-12-05 23:10:19 -05:00
rocklib.h lua events from rockbox 2019-07-19 20:48:34 -05:00
rocklib_aux.pl lua move strip_extension and create_numbered_filename out of main binary 2019-09-28 03:15:15 +02:00
rocklib_events.c Hosted targets Fix timer cycle calculation overflow 2020-10-23 15:35:11 +00:00
rocklib_events.h lua events from rockbox 2019-07-19 20:48:34 -05:00
rocklib_img.c lua print table put_line a do_menu alternative 2021-04-20 03:30:41 +00:00
rocklib_img.h [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
rocklibc.h lua update to 5.1.5 2018-11-11 19:42:30 -05:00
rocklua.c lua add ability to pass PLUGIN_ ret vals with os.exit() + add defines 2021-10-21 22:28:05 -04:00
settings_helper.pl Lua add metadata and settings reading helper module 2019-09-07 03:10:59 +02:00
SOURCES Lua Add Emergency Garbage Collector 2019-07-28 15:17:48 +02:00
strftime.c lua strftime fix out of scope buffer 2021-08-13 07:28:39 -04:00
strpbrk.c lua misc tweaks and cleanup 2020-10-04 04:00:54 -04:00
strstr.c
strtol.c lua misc tweaks and cleanup 2020-10-04 04:00:54 -04:00
strtoul.c lua misc tweaks and cleanup 2020-10-04 04:00:54 -04:00
tlsf_helper.c code cleanup encase ;; in brackets {;;} 2021-08-13 11:51:21 +00:00

The following files are (with slight modifications for Rockbox) from dietlibc
version 0.31 which is licensed under the GPL version 2:

    gmtime.c
    strftime.c
    strpbrk.c
    strtol.c
    strtoul.c
    strstr.c