rlm@1: #ifndef VBA_LUA_H rlm@1: #define VBA_LUA_H rlm@1: rlm@1: #if _MSC_VER > 1000 rlm@1: #pragma once rlm@1: #endif // _MSC_VER > 1000 rlm@1: rlm@1: enum LuaCallID rlm@1: { rlm@1: LUACALL_BEFOREEMULATION, rlm@1: LUACALL_AFTEREMULATION, rlm@1: LUACALL_BEFOREEXIT, rlm@1: rlm@1: LUACALL_COUNT rlm@1: }; rlm@1: void CallRegisteredLuaFunctions(LuaCallID calltype); rlm@1: rlm@1: enum LuaMemHookType rlm@1: { rlm@1: LUAMEMHOOK_WRITE, rlm@1: LUAMEMHOOK_READ, rlm@1: LUAMEMHOOK_EXEC, rlm@1: LUAMEMHOOK_WRITE_SUB, rlm@1: LUAMEMHOOK_READ_SUB, rlm@1: LUAMEMHOOK_EXEC_SUB, rlm@1: rlm@1: LUAMEMHOOK_COUNT rlm@1: }; rlm@1: void CallRegisteredLuaMemHook(unsigned int address, int size, unsigned int value, LuaMemHookType hookType); rlm@1: rlm@1: // Just forward function declarations rlm@1: rlm@1: void VBALuaFrameBoundary(); rlm@1: int VBALoadLuaCode(const char *filename); rlm@1: int VBAReloadLuaCode(); rlm@1: void VBALuaStop(); rlm@1: int VBALuaRunning(); rlm@1: rlm@1: int VBALuaUsingJoypad(int); rlm@1: int VBALuaReadJoypad(int); rlm@1: int VBALuaSpeed(); rlm@1: bool8 VBALuaRerecordCountSkip(); rlm@1: rlm@1: void VBALuaGui(uint8 *screen, int ppl, int width, int height); rlm@1: void VBALuaClearGui(); rlm@1: rlm@1: char* VBAGetLuaScriptName(); rlm@1: rlm@1: // And some interesting REVERSE declarations! rlm@1: char *VBAGetFreezeFilename(int slot); rlm@1: rlm@1: #endif // VBA_LUA_H