- Integrated Lua 5.4 engine (32-bit mode for embedded ARM) - Created LuaGame wrapper class implementing Game interface - Added C++ bindings exposing renderer, game state, and input to Lua - Implemented SD card loader for automatic .lua game discovery - Updated GameLauncher to support std::function for lambda captures - Made Game class members public for Lua bindings access - Added example Lua games: counter, snake, bouncing ball - Included comprehensive API documentation Games can now be written as .lua text files on SD card and loaded without recompilation. Build size: 747KB UF2, Lua VM uses ~50-80KB RAM.
46 lines
828 B
C
46 lines
828 B
C
/*
|
|
** $Id: lprefix.h $
|
|
** Definitions for Lua code that must come before any other header file
|
|
** See Copyright Notice in lua.h
|
|
*/
|
|
|
|
#ifndef lprefix_h
|
|
#define lprefix_h
|
|
|
|
|
|
/*
|
|
** Allows POSIX/XSI stuff
|
|
*/
|
|
#if !defined(LUA_USE_C89) /* { */
|
|
|
|
#if !defined(_XOPEN_SOURCE)
|
|
#define _XOPEN_SOURCE 600
|
|
#elif _XOPEN_SOURCE == 0
|
|
#undef _XOPEN_SOURCE /* use -D_XOPEN_SOURCE=0 to undefine it */
|
|
#endif
|
|
|
|
/*
|
|
** Allows manipulation of large files in gcc and some other compilers
|
|
*/
|
|
#if !defined(LUA_32BITS) && !defined(_FILE_OFFSET_BITS)
|
|
#define _LARGEFILE_SOURCE 1
|
|
#define _FILE_OFFSET_BITS 64
|
|
#endif
|
|
|
|
#endif /* } */
|
|
|
|
|
|
/*
|
|
** Windows stuff
|
|
*/
|
|
#if defined(_WIN32) /* { */
|
|
|
|
#if !defined(_CRT_SECURE_NO_WARNINGS)
|
|
#define _CRT_SECURE_NO_WARNINGS /* avoid warnings about ISO C functions */
|
|
#endif
|
|
|
|
#endif /* } */
|
|
|
|
#endif
|
|
|