summaryrefslogtreecommitdiffstats
path: root/plugins/inputmacro/init.lua
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2021-11-04 09:55:26 +1100
committer Vas Crabb <vas@vastheman.com>2021-11-04 09:55:26 +1100
commit8c6cb643e3d38251ae3c4f8b18a1ccd58020a707 (patch)
tree79b599cfd0f2d64fcfe868b3630f294aa904e01e /plugins/inputmacro/init.lua
parente44d51c21fe2248a33ab8c760e1ac52c6f70d6fb (diff)
plugins: Simplify logic in autofire and inputmacro plugins to try and avoid leaking state across sessions.
Diffstat (limited to 'plugins/inputmacro/init.lua')
-rw-r--r--plugins/inputmacro/init.lua14
1 files changed, 6 insertions, 8 deletions
diff --git a/plugins/inputmacro/init.lua b/plugins/inputmacro/init.lua
index 4897abee1f5..2d24e7a5a69 100644
--- a/plugins/inputmacro/init.lua
+++ b/plugins/inputmacro/init.lua
@@ -30,7 +30,6 @@ function inputmacro.startplugin()
]]
local macros = { }
local active_inputs = { }
- local shortname
local menu
local input
@@ -99,12 +98,11 @@ function inputmacro.startplugin()
end
local function start()
+ menu = nil
+ active_inputs = { }
input = manager.machine.input
- if shortname ~= emu.romname() then
- local persister = require('inputmacro/inputmacro_persist')
- macros = persister.load_settings()
- shortname = emu.romname()
- end
+ local persister = require('inputmacro/inputmacro_persist')
+ macros = persister.load_settings()
end
local function stop()
@@ -124,8 +122,8 @@ function inputmacro.startplugin()
return menu:populate()
end
- emu.register_frame_done(process_frame)
- emu.register_start(start)
+ emu.register_frame(process_frame)
+ emu.register_prestart(start)
emu.register_stop(stop)
emu.register_menu(menu_callback, menu_populate, _p('plugin-inputmacro', 'Input Macros'))
end