diff options
| author | 2016-03-23 10:31:40 -0500 | |
|---|---|---|
| committer | 2016-03-23 10:31:40 -0500 | |
| commit | 0825bf2a2f3eedc7af1709816d0a88aab66845a8 (patch) | |
| tree | d7dd3790d398ba5ab363a3fd8576204f206a5c02 /src/emu/luaengine.cpp | |
| parent | 67339c5dfd9b4ce6ea870ea6e609fe4a78c5477f (diff) | |
luaengine: add popmessage and logerror for lua (nw)
Diffstat (limited to 'src/emu/luaengine.cpp')
| -rw-r--r-- | src/emu/luaengine.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/emu/luaengine.cpp b/src/emu/luaengine.cpp index cd55b2bde4c..7b384fa62e9 100644 --- a/src/emu/luaengine.cpp +++ b/src/emu/luaengine.cpp @@ -1390,6 +1390,22 @@ void lua_engine::attach_notifiers() machine().add_notifier(MACHINE_NOTIFY_FRAME, machine_notify_delegate(FUNC(lua_engine::on_machine_frame), this)); } +int lua_engine::lua_machine::l_popmessage(lua_State *L) +{ + running_machine *m = luabridge::Stack<running_machine *>::get(L, 1); + luaL_argcheck(L, lua_isstring(L, 2), 2, "message (string) expected"); + m->popmessage("%s", luaL_checkstring(L, 2)); + return 0; +} + +int lua_engine::lua_machine::l_logerror(lua_State *L) +{ + running_machine *m = luabridge::Stack<running_machine *>::get(L, 1); + luaL_argcheck(L, lua_isstring(L, 2), 2, "message (string) expected"); + m->logerror("[luaengine] %s\n", luaL_checkstring(L, 2)); + return 0; +} + //------------------------------------------------- // initialize - initialize lua hookup to emu engine //------------------------------------------------- @@ -1421,7 +1437,11 @@ void lua_engine::initialize() .addFunction ("machine", &machine_manager::machine) .addFunction ("options", &machine_manager::options) .endClass () - .beginClass <running_machine> ("machine") + .beginClass <lua_machine> ("lua_machine") + .addCFunction ("popmessage", &lua_machine::l_popmessage) + .addCFunction ("logerror", &lua_machine::l_logerror) + .endClass () + .deriveClass <running_machine, lua_machine> ("machine") .addFunction ("exit", &running_machine::schedule_exit) .addFunction ("hard_reset", &running_machine::schedule_hard_reset) .addFunction ("soft_reset", &running_machine::schedule_soft_reset) |
