From 3e9773574e198824ca09feee471464f842d4526b Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Mon, 1 Dec 2014 22:10:04 +0100 Subject: luaengine: add emu.romname() method Signed-off-by: Luca Bruno --- src/emu/luaengine.c | 11 +++++++++++ src/emu/luaengine.h | 1 + 2 files changed, 12 insertions(+) diff --git a/src/emu/luaengine.c b/src/emu/luaengine.c index 510f29eb8bb..117ad9a4088 100644 --- a/src/emu/luaengine.c +++ b/src/emu/luaengine.c @@ -206,6 +206,16 @@ int lua_engine::l_emu_gamename(lua_State *L) return 1; } +//------------------------------------------------- +// emu_romname - returns rom base name +//------------------------------------------------- + +int lua_engine::l_emu_romname(lua_State *L) +{ + lua_pushstring(L, luaThis->machine().basename()); + return 1; +} + //------------------------------------------------- // emu_keypost - post keys to natural keyboard //------------------------------------------------- @@ -496,6 +506,7 @@ void lua_engine::initialize() luabridge::getGlobalNamespace (m_lua_state) .beginNamespace ("emu") .addCFunction ("gamename", l_emu_gamename ) + .addCFunction ("romname", l_emu_romname ) .addCFunction ("keypost", l_emu_keypost ) .addCFunction ("hook_output", l_emu_hook_output ) .addCFunction ("time", l_emu_time ) diff --git a/src/emu/luaengine.h b/src/emu/luaengine.h index ad4712d262f..d7b54210236 100644 --- a/src/emu/luaengine.h +++ b/src/emu/luaengine.h @@ -79,6 +79,7 @@ private: static int l_emu_wait(lua_State *L); static int l_emu_time(lua_State *L); static int l_emu_gamename(lua_State *L); + static int l_emu_romname(lua_State *L); static int l_emu_keypost(lua_State *L); static int l_emu_hook_output(lua_State *L); static int l_emu_exit(lua_State *L); -- cgit v1.2.3 From 08fdec96740bc8af6ed0de71426ef63057daddba Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Mon, 1 Dec 2014 22:33:55 +0100 Subject: luaengine: add emu.pause()/unpause() methods Signed-off-by: Luca Bruno --- src/emu/luaengine.c | 18 ++++++++++++++++++ src/emu/luaengine.h | 2 ++ 2 files changed, 20 insertions(+) diff --git a/src/emu/luaengine.c b/src/emu/luaengine.c index 117ad9a4088..4c27f1bf35f 100644 --- a/src/emu/luaengine.c +++ b/src/emu/luaengine.c @@ -216,6 +216,22 @@ int lua_engine::l_emu_romname(lua_State *L) return 1; } +//------------------------------------------------- +// emu_pause/emu_unpause - pause/unpause game +//------------------------------------------------- + +int lua_engine::l_emu_pause(lua_State *L) +{ + luaThis->machine().pause(); + return 0; +} + +int lua_engine::l_emu_unpause(lua_State *L) +{ + luaThis->machine().resume(); + return 0; +} + //------------------------------------------------- // emu_keypost - post keys to natural keyboard //------------------------------------------------- @@ -514,6 +530,8 @@ void lua_engine::initialize() .addCFunction ("after", l_emu_after ) .addCFunction ("exit", l_emu_exit ) .addCFunction ("start", l_emu_start ) + .addCFunction ("pause", l_emu_pause ) + .addCFunction ("unpause", l_emu_unpause ) .beginClass ("manager") .addFunction ("machine", &machine_manager::machine) .addFunction ("options", &machine_manager::options) diff --git a/src/emu/luaengine.h b/src/emu/luaengine.h index d7b54210236..e6263025f19 100644 --- a/src/emu/luaengine.h +++ b/src/emu/luaengine.h @@ -84,6 +84,8 @@ private: static int l_emu_hook_output(lua_State *L); static int l_emu_exit(lua_State *L); static int l_emu_start(lua_State *L); + static int l_emu_pause(lua_State *L); + static int l_emu_unpause(lua_State *L); void resume(void *L, INT32 param); void report_errors(int status); -- cgit v1.2.3