summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/luaengine.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/luaengine.h')
-rw-r--r--src/emu/luaengine.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/emu/luaengine.h b/src/emu/luaengine.h
index 1ed1c82df36..bfd88b5dcc7 100644
--- a/src/emu/luaengine.h
+++ b/src/emu/luaengine.h
@@ -61,6 +61,7 @@ public:
void set_machine(running_machine *machine) { m_machine = machine; update_machine(); }
std::vector<std::string> &get_menu() { return m_menu; }
void attach_notifiers();
+ void on_frame_done();
private:
struct hook {
@@ -133,6 +134,7 @@ private:
static int l_emu_register_pause(lua_State *L);
static int l_emu_register_resume(lua_State *L);
static int l_emu_register_frame(lua_State *L);
+ static int l_emu_register_frame_done(lua_State *L);
static int l_emu_register_menu(lua_State *L);
static int register_function(lua_State *L, const char *id);
@@ -150,9 +152,13 @@ private:
int l_popmessage(lua_State *L);
int l_logerror(lua_State *L);
};
+ static UINT8 read_direct_byte(address_space &space, offs_t addr);
+ static void write_direct_byte(address_space &space, offs_t addr, UINT8 byte);
struct lua_addr_space {
template<typename T> int l_mem_read(lua_State *L);
template<typename T> int l_mem_write(lua_State *L);
+ template<typename T> int l_direct_mem_read(lua_State *L);
+ template<typename T> int l_direct_mem_write(lua_State *L);
};
static luabridge::LuaRef l_machine_get_screens(const running_machine *r);
struct lua_screen {
@@ -182,6 +188,15 @@ private:
int l_entry_value(lua_State *L);
};
+ static luabridge::LuaRef l_memory_get_banks(const memory_manager *m);
+ static luabridge::LuaRef l_memory_get_regions(const memory_manager *m);
+ static UINT8 read_region_byte(memory_region &region, offs_t addr);
+ static void write_region_byte(memory_region &region, offs_t addr, UINT8 byte);
+ struct lua_memory_region {
+ template<typename T> int l_region_read(lua_State *L);
+ template<typename T> int l_region_write(lua_State *L);
+ };
+
void resume(void *L, INT32 param);
void start();
static int luaopen_ioport(lua_State *L);