Readd lua files from pcejin and fix VS2005/2008 compile error "lstate.h - include file not found". lstate.h is an internal header file of Lua, but TAS emulators refer it for some advanced implementation (for instance, error handling); sideeffect: Lua library has become a static library.
Note: we can import more files from desmume and some other TAS emulator projects if they're needed.
This commit is contained in:
parent
3bdf15ec1c
commit
10aa7e32d8
|
@ -0,0 +1,128 @@
|
||||||
|
/*
|
||||||
|
** $Id: llimits.h,v 1.69.1.1 2007/12/27 13:02:25 roberto Exp $
|
||||||
|
** Limits, basic types, and some other `installation-dependent' definitions
|
||||||
|
** See Copyright Notice in lua.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef llimits_h
|
||||||
|
#define llimits_h
|
||||||
|
|
||||||
|
|
||||||
|
#include <limits.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
|
||||||
|
#include "lua.h"
|
||||||
|
|
||||||
|
|
||||||
|
typedef LUAI_UINT32 lu_int32;
|
||||||
|
|
||||||
|
typedef LUAI_UMEM lu_mem;
|
||||||
|
|
||||||
|
typedef LUAI_MEM l_mem;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* chars used as small naturals (so that `char' is reserved for characters) */
|
||||||
|
typedef unsigned char lu_byte;
|
||||||
|
|
||||||
|
|
||||||
|
#define MAX_SIZET ((size_t)(~(size_t)0)-2)
|
||||||
|
|
||||||
|
#define MAX_LUMEM ((lu_mem)(~(lu_mem)0)-2)
|
||||||
|
|
||||||
|
|
||||||
|
#define MAX_INT (INT_MAX-2) /* maximum value of an int (-2 for safety) */
|
||||||
|
|
||||||
|
/*
|
||||||
|
** conversion of pointer to integer
|
||||||
|
** this is for hashing only; there is no problem if the integer
|
||||||
|
** cannot hold the whole pointer value
|
||||||
|
*/
|
||||||
|
#define IntPoint(p) ((unsigned int)(lu_mem)(p))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* type to ensure maximum alignment */
|
||||||
|
typedef LUAI_USER_ALIGNMENT_T L_Umaxalign;
|
||||||
|
|
||||||
|
|
||||||
|
/* result of a `usual argument conversion' over lua_Number */
|
||||||
|
typedef LUAI_UACNUMBER l_uacNumber;
|
||||||
|
|
||||||
|
|
||||||
|
/* internal assertions for in-house debugging */
|
||||||
|
#ifdef lua_assert
|
||||||
|
|
||||||
|
#define check_exp(c,e) (lua_assert(c), (e))
|
||||||
|
#define api_check(l,e) lua_assert(e)
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#define lua_assert(c) ((void)0)
|
||||||
|
#define check_exp(c,e) (e)
|
||||||
|
#define api_check luai_apicheck
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef UNUSED
|
||||||
|
#define UNUSED(x) ((void)(x)) /* to avoid warnings */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef cast
|
||||||
|
#define cast(t, exp) ((t)(exp))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define cast_byte(i) cast(lu_byte, (i))
|
||||||
|
#define cast_num(i) cast(lua_Number, (i))
|
||||||
|
#define cast_int(i) cast(int, (i))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** type for virtual-machine instructions
|
||||||
|
** must be an unsigned with (at least) 4 bytes (see details in lopcodes.h)
|
||||||
|
*/
|
||||||
|
typedef lu_int32 Instruction;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* maximum stack for a Lua function */
|
||||||
|
#define MAXSTACK 250
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* minimum size for the string table (must be power of 2) */
|
||||||
|
#ifndef MINSTRTABSIZE
|
||||||
|
#define MINSTRTABSIZE 32
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* minimum size for string buffer */
|
||||||
|
#ifndef LUA_MINBUFFER
|
||||||
|
#define LUA_MINBUFFER 32
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef lua_lock
|
||||||
|
#define lua_lock(L) ((void) 0)
|
||||||
|
#define lua_unlock(L) ((void) 0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef luai_threadyield
|
||||||
|
#define luai_threadyield(L) {lua_unlock(L); lua_lock(L);}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** macro to control inclusion of some hard tests on stack reallocation
|
||||||
|
*/
|
||||||
|
#ifndef HARDSTACKTESTS
|
||||||
|
#define condhardstacktests(x) ((void)0)
|
||||||
|
#else
|
||||||
|
#define condhardstacktests(x) x
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
** $Id: lmem.h,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $
|
||||||
|
** Interface to Memory Manager
|
||||||
|
** See Copyright Notice in lua.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef lmem_h
|
||||||
|
#define lmem_h
|
||||||
|
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
#include "llimits.h"
|
||||||
|
#include "lua.h"
|
||||||
|
|
||||||
|
#define MEMERRMSG "not enough memory"
|
||||||
|
|
||||||
|
|
||||||
|
#define luaM_reallocv(L,b,on,n,e) \
|
||||||
|
((cast(size_t, (n)+1) <= MAX_SIZET/(e)) ? /* +1 to avoid warnings */ \
|
||||||
|
luaM_realloc_(L, (b), (on)*(e), (n)*(e)) : \
|
||||||
|
luaM_toobig(L))
|
||||||
|
|
||||||
|
#define luaM_freemem(L, b, s) luaM_realloc_(L, (b), (s), 0)
|
||||||
|
#define luaM_free(L, b) luaM_realloc_(L, (b), sizeof(*(b)), 0)
|
||||||
|
#define luaM_freearray(L, b, n, t) luaM_reallocv(L, (b), n, 0, sizeof(t))
|
||||||
|
|
||||||
|
#define luaM_malloc(L,t) luaM_realloc_(L, NULL, 0, (t))
|
||||||
|
#define luaM_new(L,t) cast(t *, luaM_malloc(L, sizeof(t)))
|
||||||
|
#define luaM_newvector(L,n,t) \
|
||||||
|
cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t)))
|
||||||
|
|
||||||
|
#define luaM_growvector(L,v,nelems,size,t,limit,e) \
|
||||||
|
if ((nelems)+1 > (size)) \
|
||||||
|
((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e)))
|
||||||
|
|
||||||
|
#define luaM_reallocvector(L, v,oldn,n,t) \
|
||||||
|
((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t))))
|
||||||
|
|
||||||
|
|
||||||
|
LUAI_FUNC void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize,
|
||||||
|
size_t size);
|
||||||
|
LUAI_FUNC void *luaM_toobig (lua_State *L);
|
||||||
|
LUAI_FUNC void *luaM_growaux_ (lua_State *L, void *block, int *size,
|
||||||
|
size_t size_elem, int limit,
|
||||||
|
const char *errormsg);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
|
@ -0,0 +1,381 @@
|
||||||
|
/*
|
||||||
|
** $Id: lobject.h,v 2.20.1.2 2008/08/06 13:29:48 roberto Exp $
|
||||||
|
** Type definitions for Lua objects
|
||||||
|
** See Copyright Notice in lua.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef lobject_h
|
||||||
|
#define lobject_h
|
||||||
|
|
||||||
|
|
||||||
|
#include <stdarg.h>
|
||||||
|
|
||||||
|
|
||||||
|
#include "llimits.h"
|
||||||
|
#include "lua.h"
|
||||||
|
|
||||||
|
|
||||||
|
/* tags for values visible from Lua */
|
||||||
|
#define LAST_TAG LUA_TTHREAD
|
||||||
|
|
||||||
|
#define NUM_TAGS (LAST_TAG+1)
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Extra tags for non-values
|
||||||
|
*/
|
||||||
|
#define LUA_TPROTO (LAST_TAG+1)
|
||||||
|
#define LUA_TUPVAL (LAST_TAG+2)
|
||||||
|
#define LUA_TDEADKEY (LAST_TAG+3)
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Union of all collectable objects
|
||||||
|
*/
|
||||||
|
typedef union GCObject GCObject;
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Common Header for all collectable objects (in macro form, to be
|
||||||
|
** included in other objects)
|
||||||
|
*/
|
||||||
|
#define CommonHeader GCObject *next; lu_byte tt; lu_byte marked
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Common header in struct form
|
||||||
|
*/
|
||||||
|
typedef struct GCheader {
|
||||||
|
CommonHeader;
|
||||||
|
} GCheader;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Union of all Lua values
|
||||||
|
*/
|
||||||
|
typedef union {
|
||||||
|
GCObject *gc;
|
||||||
|
void *p;
|
||||||
|
lua_Number n;
|
||||||
|
int b;
|
||||||
|
} Value;
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Tagged Values
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define TValuefields Value value; int tt
|
||||||
|
|
||||||
|
typedef struct lua_TValue {
|
||||||
|
TValuefields;
|
||||||
|
} TValue;
|
||||||
|
|
||||||
|
|
||||||
|
/* Macros to test type */
|
||||||
|
#define ttisnil(o) (ttype(o) == LUA_TNIL)
|
||||||
|
#define ttisnumber(o) (ttype(o) == LUA_TNUMBER)
|
||||||
|
#define ttisstring(o) (ttype(o) == LUA_TSTRING)
|
||||||
|
#define ttistable(o) (ttype(o) == LUA_TTABLE)
|
||||||
|
#define ttisfunction(o) (ttype(o) == LUA_TFUNCTION)
|
||||||
|
#define ttisboolean(o) (ttype(o) == LUA_TBOOLEAN)
|
||||||
|
#define ttisuserdata(o) (ttype(o) == LUA_TUSERDATA)
|
||||||
|
#define ttisthread(o) (ttype(o) == LUA_TTHREAD)
|
||||||
|
#define ttislightuserdata(o) (ttype(o) == LUA_TLIGHTUSERDATA)
|
||||||
|
|
||||||
|
/* Macros to access values */
|
||||||
|
#define ttype(o) ((o)->tt)
|
||||||
|
#define gcvalue(o) check_exp(iscollectable(o), (o)->value.gc)
|
||||||
|
#define pvalue(o) check_exp(ttislightuserdata(o), (o)->value.p)
|
||||||
|
#define nvalue(o) check_exp(ttisnumber(o), (o)->value.n)
|
||||||
|
#define rawtsvalue(o) check_exp(ttisstring(o), &(o)->value.gc->ts)
|
||||||
|
#define tsvalue(o) (&rawtsvalue(o)->tsv)
|
||||||
|
#define rawuvalue(o) check_exp(ttisuserdata(o), &(o)->value.gc->u)
|
||||||
|
#define uvalue(o) (&rawuvalue(o)->uv)
|
||||||
|
#define clvalue(o) check_exp(ttisfunction(o), &(o)->value.gc->cl)
|
||||||
|
#define hvalue(o) check_exp(ttistable(o), &(o)->value.gc->h)
|
||||||
|
#define bvalue(o) check_exp(ttisboolean(o), (o)->value.b)
|
||||||
|
#define thvalue(o) check_exp(ttisthread(o), &(o)->value.gc->th)
|
||||||
|
|
||||||
|
#define l_isfalse(o) (ttisnil(o) || (ttisboolean(o) && bvalue(o) == 0))
|
||||||
|
|
||||||
|
/*
|
||||||
|
** for internal debug only
|
||||||
|
*/
|
||||||
|
#define checkconsistency(obj) \
|
||||||
|
lua_assert(!iscollectable(obj) || (ttype(obj) == (obj)->value.gc->gch.tt))
|
||||||
|
|
||||||
|
#define checkliveness(g,obj) \
|
||||||
|
lua_assert(!iscollectable(obj) || \
|
||||||
|
((ttype(obj) == (obj)->value.gc->gch.tt) && !isdead(g, (obj)->value.gc)))
|
||||||
|
|
||||||
|
|
||||||
|
/* Macros to set values */
|
||||||
|
#define setnilvalue(obj) ((obj)->tt=LUA_TNIL)
|
||||||
|
|
||||||
|
#define setnvalue(obj,x) \
|
||||||
|
{ TValue *i_o=(obj); i_o->value.n=(x); i_o->tt=LUA_TNUMBER; }
|
||||||
|
|
||||||
|
#define setpvalue(obj,x) \
|
||||||
|
{ TValue *i_o=(obj); i_o->value.p=(x); i_o->tt=LUA_TLIGHTUSERDATA; }
|
||||||
|
|
||||||
|
#define setbvalue(obj,x) \
|
||||||
|
{ TValue *i_o=(obj); i_o->value.b=(x); i_o->tt=LUA_TBOOLEAN; }
|
||||||
|
|
||||||
|
#define setsvalue(L,obj,x) \
|
||||||
|
{ TValue *i_o=(obj); \
|
||||||
|
i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TSTRING; \
|
||||||
|
checkliveness(G(L),i_o); }
|
||||||
|
|
||||||
|
#define setuvalue(L,obj,x) \
|
||||||
|
{ TValue *i_o=(obj); \
|
||||||
|
i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TUSERDATA; \
|
||||||
|
checkliveness(G(L),i_o); }
|
||||||
|
|
||||||
|
#define setthvalue(L,obj,x) \
|
||||||
|
{ TValue *i_o=(obj); \
|
||||||
|
i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TTHREAD; \
|
||||||
|
checkliveness(G(L),i_o); }
|
||||||
|
|
||||||
|
#define setclvalue(L,obj,x) \
|
||||||
|
{ TValue *i_o=(obj); \
|
||||||
|
i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TFUNCTION; \
|
||||||
|
checkliveness(G(L),i_o); }
|
||||||
|
|
||||||
|
#define sethvalue(L,obj,x) \
|
||||||
|
{ TValue *i_o=(obj); \
|
||||||
|
i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TTABLE; \
|
||||||
|
checkliveness(G(L),i_o); }
|
||||||
|
|
||||||
|
#define setptvalue(L,obj,x) \
|
||||||
|
{ TValue *i_o=(obj); \
|
||||||
|
i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TPROTO; \
|
||||||
|
checkliveness(G(L),i_o); }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define setobj(L,obj1,obj2) \
|
||||||
|
{ const TValue *o2=(obj2); TValue *o1=(obj1); \
|
||||||
|
o1->value = o2->value; o1->tt=o2->tt; \
|
||||||
|
checkliveness(G(L),o1); }
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** different types of sets, according to destination
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* from stack to (same) stack */
|
||||||
|
#define setobjs2s setobj
|
||||||
|
/* to stack (not from same stack) */
|
||||||
|
#define setobj2s setobj
|
||||||
|
#define setsvalue2s setsvalue
|
||||||
|
#define sethvalue2s sethvalue
|
||||||
|
#define setptvalue2s setptvalue
|
||||||
|
/* from table to same table */
|
||||||
|
#define setobjt2t setobj
|
||||||
|
/* to table */
|
||||||
|
#define setobj2t setobj
|
||||||
|
/* to new object */
|
||||||
|
#define setobj2n setobj
|
||||||
|
#define setsvalue2n setsvalue
|
||||||
|
|
||||||
|
#define setttype(obj, tt) (ttype(obj) = (tt))
|
||||||
|
|
||||||
|
|
||||||
|
#define iscollectable(o) (ttype(o) >= LUA_TSTRING)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
typedef TValue *StkId; /* index to stack elements */
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** String headers for string table
|
||||||
|
*/
|
||||||
|
typedef union TString {
|
||||||
|
L_Umaxalign dummy; /* ensures maximum alignment for strings */
|
||||||
|
struct {
|
||||||
|
CommonHeader;
|
||||||
|
lu_byte reserved;
|
||||||
|
unsigned int hash;
|
||||||
|
size_t len;
|
||||||
|
} tsv;
|
||||||
|
} TString;
|
||||||
|
|
||||||
|
|
||||||
|
#define getstr(ts) cast(const char *, (ts) + 1)
|
||||||
|
#define svalue(o) getstr(rawtsvalue(o))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
typedef union Udata {
|
||||||
|
L_Umaxalign dummy; /* ensures maximum alignment for `local' udata */
|
||||||
|
struct {
|
||||||
|
CommonHeader;
|
||||||
|
struct Table *metatable;
|
||||||
|
struct Table *env;
|
||||||
|
size_t len;
|
||||||
|
} uv;
|
||||||
|
} Udata;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Function Prototypes
|
||||||
|
*/
|
||||||
|
typedef struct Proto {
|
||||||
|
CommonHeader;
|
||||||
|
TValue *k; /* constants used by the function */
|
||||||
|
Instruction *code;
|
||||||
|
struct Proto **p; /* functions defined inside the function */
|
||||||
|
int *lineinfo; /* map from opcodes to source lines */
|
||||||
|
struct LocVar *locvars; /* information about local variables */
|
||||||
|
TString **upvalues; /* upvalue names */
|
||||||
|
TString *source;
|
||||||
|
int sizeupvalues;
|
||||||
|
int sizek; /* size of `k' */
|
||||||
|
int sizecode;
|
||||||
|
int sizelineinfo;
|
||||||
|
int sizep; /* size of `p' */
|
||||||
|
int sizelocvars;
|
||||||
|
int linedefined;
|
||||||
|
int lastlinedefined;
|
||||||
|
GCObject *gclist;
|
||||||
|
lu_byte nups; /* number of upvalues */
|
||||||
|
lu_byte numparams;
|
||||||
|
lu_byte is_vararg;
|
||||||
|
lu_byte maxstacksize;
|
||||||
|
} Proto;
|
||||||
|
|
||||||
|
|
||||||
|
/* masks for new-style vararg */
|
||||||
|
#define VARARG_HASARG 1
|
||||||
|
#define VARARG_ISVARARG 2
|
||||||
|
#define VARARG_NEEDSARG 4
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct LocVar {
|
||||||
|
TString *varname;
|
||||||
|
int startpc; /* first point where variable is active */
|
||||||
|
int endpc; /* first point where variable is dead */
|
||||||
|
} LocVar;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Upvalues
|
||||||
|
*/
|
||||||
|
|
||||||
|
typedef struct UpVal {
|
||||||
|
CommonHeader;
|
||||||
|
TValue *v; /* points to stack or to its own value */
|
||||||
|
union {
|
||||||
|
TValue value; /* the value (when closed) */
|
||||||
|
struct { /* double linked list (when open) */
|
||||||
|
struct UpVal *prev;
|
||||||
|
struct UpVal *next;
|
||||||
|
} l;
|
||||||
|
} u;
|
||||||
|
} UpVal;
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Closures
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define ClosureHeader \
|
||||||
|
CommonHeader; lu_byte isC; lu_byte nupvalues; GCObject *gclist; \
|
||||||
|
struct Table *env
|
||||||
|
|
||||||
|
typedef struct CClosure {
|
||||||
|
ClosureHeader;
|
||||||
|
lua_CFunction f;
|
||||||
|
TValue upvalue[1];
|
||||||
|
} CClosure;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct LClosure {
|
||||||
|
ClosureHeader;
|
||||||
|
struct Proto *p;
|
||||||
|
UpVal *upvals[1];
|
||||||
|
} LClosure;
|
||||||
|
|
||||||
|
|
||||||
|
typedef union Closure {
|
||||||
|
CClosure c;
|
||||||
|
LClosure l;
|
||||||
|
} Closure;
|
||||||
|
|
||||||
|
|
||||||
|
#define iscfunction(o) (ttype(o) == LUA_TFUNCTION && clvalue(o)->c.isC)
|
||||||
|
#define isLfunction(o) (ttype(o) == LUA_TFUNCTION && !clvalue(o)->c.isC)
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Tables
|
||||||
|
*/
|
||||||
|
|
||||||
|
typedef union TKey {
|
||||||
|
struct {
|
||||||
|
TValuefields;
|
||||||
|
struct Node *next; /* for chaining */
|
||||||
|
} nk;
|
||||||
|
TValue tvk;
|
||||||
|
} TKey;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct Node {
|
||||||
|
TValue i_val;
|
||||||
|
TKey i_key;
|
||||||
|
} Node;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct Table {
|
||||||
|
CommonHeader;
|
||||||
|
lu_byte flags; /* 1<<p means tagmethod(p) is not present */
|
||||||
|
lu_byte lsizenode; /* log2 of size of `node' array */
|
||||||
|
struct Table *metatable;
|
||||||
|
TValue *array; /* array part */
|
||||||
|
Node *node;
|
||||||
|
Node *lastfree; /* any free position is before this position */
|
||||||
|
GCObject *gclist;
|
||||||
|
int sizearray; /* size of `array' array */
|
||||||
|
} Table;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** `module' operation for hashing (size is always a power of 2)
|
||||||
|
*/
|
||||||
|
#define lmod(s,size) \
|
||||||
|
(check_exp((size&(size-1))==0, (cast(int, (s) & ((size)-1)))))
|
||||||
|
|
||||||
|
|
||||||
|
#define twoto(x) (1<<(x))
|
||||||
|
#define sizenode(t) (twoto((t)->lsizenode))
|
||||||
|
|
||||||
|
|
||||||
|
#define luaO_nilobject (&luaO_nilobject_)
|
||||||
|
|
||||||
|
LUAI_DATA const TValue luaO_nilobject_;
|
||||||
|
|
||||||
|
#define ceillog2(x) (luaO_log2((x)-1) + 1)
|
||||||
|
|
||||||
|
LUAI_FUNC int luaO_log2 (unsigned int x);
|
||||||
|
LUAI_FUNC int luaO_int2fb (unsigned int x);
|
||||||
|
LUAI_FUNC int luaO_fb2int (int x);
|
||||||
|
LUAI_FUNC int luaO_rawequalObj (const TValue *t1, const TValue *t2);
|
||||||
|
LUAI_FUNC int luaO_str2d (const char *s, lua_Number *result);
|
||||||
|
LUAI_FUNC const char *luaO_pushvfstring (lua_State *L, const char *fmt,
|
||||||
|
va_list argp);
|
||||||
|
LUAI_FUNC const char *luaO_pushfstring (lua_State *L, const char *fmt, ...);
|
||||||
|
LUAI_FUNC void luaO_chunkid (char *out, const char *source, size_t len);
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
|
@ -0,0 +1,169 @@
|
||||||
|
/*
|
||||||
|
** $Id: lstate.h,v 2.24.1.2 2008/01/03 15:20:39 roberto Exp $
|
||||||
|
** Global State
|
||||||
|
** See Copyright Notice in lua.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef lstate_h
|
||||||
|
#define lstate_h
|
||||||
|
|
||||||
|
#include "lua.h"
|
||||||
|
|
||||||
|
#include "lobject.h"
|
||||||
|
#include "ltm.h"
|
||||||
|
#include "lzio.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
struct lua_longjmp; /* defined in ldo.c */
|
||||||
|
|
||||||
|
|
||||||
|
/* table of globals */
|
||||||
|
#define gt(L) (&L->l_gt)
|
||||||
|
|
||||||
|
/* registry */
|
||||||
|
#define registry(L) (&G(L)->l_registry)
|
||||||
|
|
||||||
|
|
||||||
|
/* extra stack space to handle TM calls and some other extras */
|
||||||
|
#define EXTRA_STACK 5
|
||||||
|
|
||||||
|
|
||||||
|
#define BASIC_CI_SIZE 8
|
||||||
|
|
||||||
|
#define BASIC_STACK_SIZE (2*LUA_MINSTACK)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct stringtable {
|
||||||
|
GCObject **hash;
|
||||||
|
lu_int32 nuse; /* number of elements */
|
||||||
|
int size;
|
||||||
|
} stringtable;
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** informations about a call
|
||||||
|
*/
|
||||||
|
typedef struct CallInfo {
|
||||||
|
StkId base; /* base for this function */
|
||||||
|
StkId func; /* function index in the stack */
|
||||||
|
StkId top; /* top for this function */
|
||||||
|
const Instruction *savedpc;
|
||||||
|
int nresults; /* expected number of results from this function */
|
||||||
|
int tailcalls; /* number of tail calls lost under this entry */
|
||||||
|
} CallInfo;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define curr_func(L) (clvalue(L->ci->func))
|
||||||
|
#define ci_func(ci) (clvalue((ci)->func))
|
||||||
|
#define f_isLua(ci) (!ci_func(ci)->c.isC)
|
||||||
|
#define isLua(ci) (ttisfunction((ci)->func) && f_isLua(ci))
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** `global state', shared by all threads of this state
|
||||||
|
*/
|
||||||
|
typedef struct global_State {
|
||||||
|
stringtable strt; /* hash table for strings */
|
||||||
|
lua_Alloc frealloc; /* function to reallocate memory */
|
||||||
|
void *ud; /* auxiliary data to `frealloc' */
|
||||||
|
lu_byte currentwhite;
|
||||||
|
lu_byte gcstate; /* state of garbage collector */
|
||||||
|
int sweepstrgc; /* position of sweep in `strt' */
|
||||||
|
GCObject *rootgc; /* list of all collectable objects */
|
||||||
|
GCObject **sweepgc; /* position of sweep in `rootgc' */
|
||||||
|
GCObject *gray; /* list of gray objects */
|
||||||
|
GCObject *grayagain; /* list of objects to be traversed atomically */
|
||||||
|
GCObject *weak; /* list of weak tables (to be cleared) */
|
||||||
|
GCObject *tmudata; /* last element of list of userdata to be GC */
|
||||||
|
Mbuffer buff; /* temporary buffer for string concatentation */
|
||||||
|
lu_mem GCthreshold;
|
||||||
|
lu_mem totalbytes; /* number of bytes currently allocated */
|
||||||
|
lu_mem estimate; /* an estimate of number of bytes actually in use */
|
||||||
|
lu_mem gcdept; /* how much GC is `behind schedule' */
|
||||||
|
int gcpause; /* size of pause between successive GCs */
|
||||||
|
int gcstepmul; /* GC `granularity' */
|
||||||
|
lua_CFunction panic; /* to be called in unprotected errors */
|
||||||
|
TValue l_registry;
|
||||||
|
struct lua_State *mainthread;
|
||||||
|
UpVal uvhead; /* head of double-linked list of all open upvalues */
|
||||||
|
struct Table *mt[NUM_TAGS]; /* metatables for basic types */
|
||||||
|
TString *tmname[TM_N]; /* array with tag-method names */
|
||||||
|
} global_State;
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** `per thread' state
|
||||||
|
*/
|
||||||
|
struct lua_State {
|
||||||
|
CommonHeader;
|
||||||
|
lu_byte status;
|
||||||
|
StkId top; /* first free slot in the stack */
|
||||||
|
StkId base; /* base of current function */
|
||||||
|
global_State *l_G;
|
||||||
|
CallInfo *ci; /* call info for current function */
|
||||||
|
const Instruction *savedpc; /* `savedpc' of current function */
|
||||||
|
StkId stack_last; /* last free slot in the stack */
|
||||||
|
StkId stack; /* stack base */
|
||||||
|
CallInfo *end_ci; /* points after end of ci array*/
|
||||||
|
CallInfo *base_ci; /* array of CallInfo's */
|
||||||
|
int stacksize;
|
||||||
|
int size_ci; /* size of array `base_ci' */
|
||||||
|
unsigned short nCcalls; /* number of nested C calls */
|
||||||
|
unsigned short baseCcalls; /* nested C calls when resuming coroutine */
|
||||||
|
lu_byte hookmask;
|
||||||
|
lu_byte allowhook;
|
||||||
|
int basehookcount;
|
||||||
|
int hookcount;
|
||||||
|
lua_Hook hook;
|
||||||
|
TValue l_gt; /* table of globals */
|
||||||
|
TValue env; /* temporary place for environments */
|
||||||
|
GCObject *openupval; /* list of open upvalues in this stack */
|
||||||
|
GCObject *gclist;
|
||||||
|
struct lua_longjmp *errorJmp; /* current error recover point */
|
||||||
|
ptrdiff_t errfunc; /* current error handling function (stack index) */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#define G(L) (L->l_G)
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
** Union of all collectable objects
|
||||||
|
*/
|
||||||
|
union GCObject {
|
||||||
|
GCheader gch;
|
||||||
|
union TString ts;
|
||||||
|
union Udata u;
|
||||||
|
union Closure cl;
|
||||||
|
struct Table h;
|
||||||
|
struct Proto p;
|
||||||
|
struct UpVal uv;
|
||||||
|
struct lua_State th; /* thread */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* macros to convert a GCObject into a specific value */
|
||||||
|
#define rawgco2ts(o) check_exp((o)->gch.tt == LUA_TSTRING, &((o)->ts))
|
||||||
|
#define gco2ts(o) (&rawgco2ts(o)->tsv)
|
||||||
|
#define rawgco2u(o) check_exp((o)->gch.tt == LUA_TUSERDATA, &((o)->u))
|
||||||
|
#define gco2u(o) (&rawgco2u(o)->uv)
|
||||||
|
#define gco2cl(o) check_exp((o)->gch.tt == LUA_TFUNCTION, &((o)->cl))
|
||||||
|
#define gco2h(o) check_exp((o)->gch.tt == LUA_TTABLE, &((o)->h))
|
||||||
|
#define gco2p(o) check_exp((o)->gch.tt == LUA_TPROTO, &((o)->p))
|
||||||
|
#define gco2uv(o) check_exp((o)->gch.tt == LUA_TUPVAL, &((o)->uv))
|
||||||
|
#define ngcotouv(o) \
|
||||||
|
check_exp((o) == NULL || (o)->gch.tt == LUA_TUPVAL, &((o)->uv))
|
||||||
|
#define gco2th(o) check_exp((o)->gch.tt == LUA_TTHREAD, &((o)->th))
|
||||||
|
|
||||||
|
/* macro to convert any Lua object into a GCObject */
|
||||||
|
#define obj2gco(v) (cast(GCObject *, (v)))
|
||||||
|
|
||||||
|
|
||||||
|
LUAI_FUNC lua_State *luaE_newthread (lua_State *L);
|
||||||
|
LUAI_FUNC void luaE_freethread (lua_State *L, lua_State *L1);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
/*
|
||||||
|
** $Id: ltm.h,v 2.6.1.1 2007/12/27 13:02:25 roberto Exp $
|
||||||
|
** Tag methods
|
||||||
|
** See Copyright Notice in lua.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef ltm_h
|
||||||
|
#define ltm_h
|
||||||
|
|
||||||
|
|
||||||
|
#include "lobject.h"
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* WARNING: if you change the order of this enumeration,
|
||||||
|
* grep "ORDER TM"
|
||||||
|
*/
|
||||||
|
typedef enum {
|
||||||
|
TM_INDEX,
|
||||||
|
TM_NEWINDEX,
|
||||||
|
TM_GC,
|
||||||
|
TM_MODE,
|
||||||
|
TM_EQ, /* last tag method with `fast' access */
|
||||||
|
TM_ADD,
|
||||||
|
TM_SUB,
|
||||||
|
TM_MUL,
|
||||||
|
TM_DIV,
|
||||||
|
TM_MOD,
|
||||||
|
TM_POW,
|
||||||
|
TM_UNM,
|
||||||
|
TM_LEN,
|
||||||
|
TM_LT,
|
||||||
|
TM_LE,
|
||||||
|
TM_CONCAT,
|
||||||
|
TM_CALL,
|
||||||
|
TM_N /* number of elements in the enum */
|
||||||
|
} TMS;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define gfasttm(g,et,e) ((et) == NULL ? NULL : \
|
||||||
|
((et)->flags & (1u<<(e))) ? NULL : luaT_gettm(et, e, (g)->tmname[e]))
|
||||||
|
|
||||||
|
#define fasttm(l,et,e) gfasttm(G(l), et, e)
|
||||||
|
|
||||||
|
LUAI_DATA const char *const luaT_typenames[];
|
||||||
|
|
||||||
|
|
||||||
|
LUAI_FUNC const TValue *luaT_gettm (Table *events, TMS event, TString *ename);
|
||||||
|
LUAI_FUNC const TValue *luaT_gettmbyobj (lua_State *L, const TValue *o,
|
||||||
|
TMS event);
|
||||||
|
LUAI_FUNC void luaT_init (lua_State *L);
|
||||||
|
|
||||||
|
#endif
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
** $Id: lua.h,v 1.218.1.4 2008/01/03 15:41:15 roberto Exp $
|
** $Id: lua.h,v 1.218.1.5 2008/08/06 13:30:12 roberto Exp $
|
||||||
** Lua - An Extensible Extension Language
|
** Lua - An Extensible Extension Language
|
||||||
** Lua.org, PUC-Rio, Brazil (http://www.lua.org)
|
** Lua.org, PUC-Rio, Brazil (http://www.lua.org)
|
||||||
** See Copyright Notice at the end of this file
|
** See Copyright Notice at the end of this file
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
|
|
||||||
#define LUA_VERSION "Lua 5.1"
|
#define LUA_VERSION "Lua 5.1"
|
||||||
#define LUA_RELEASE "Lua 5.1.3"
|
#define LUA_RELEASE "Lua 5.1.4"
|
||||||
#define LUA_VERSION_NUM 501
|
#define LUA_VERSION_NUM 501
|
||||||
#define LUA_COPYRIGHT "Copyright (C) 1994-2008 Lua.org, PUC-Rio"
|
#define LUA_COPYRIGHT "Copyright (C) 1994-2008 Lua.org, PUC-Rio"
|
||||||
#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo & W. Celes"
|
#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo & W. Celes"
|
||||||
|
@ -108,7 +108,7 @@ typedef LUA_INTEGER lua_Integer;
|
||||||
** state manipulation
|
** state manipulation
|
||||||
*/
|
*/
|
||||||
LUA_API lua_State *(lua_newstate) (lua_Alloc f, void *ud);
|
LUA_API lua_State *(lua_newstate) (lua_Alloc f, void *ud);
|
||||||
LUA_API void (lua_close) (lua_State *L);
|
LUA_API void lua_close (lua_State *L);
|
||||||
LUA_API lua_State *(lua_newthread) (lua_State *L);
|
LUA_API lua_State *(lua_newthread) (lua_State *L);
|
||||||
|
|
||||||
LUA_API lua_CFunction (lua_atpanic) (lua_State *L, lua_CFunction panicf);
|
LUA_API lua_CFunction (lua_atpanic) (lua_State *L, lua_CFunction panicf);
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
** $Id: luaconf.h,v 1.82.1.6 2008/01/18 17:07:48 roberto Exp $
|
** $Id: luaconf.h,v 1.82.1.7 2008/02/11 16:25:08 roberto Exp $
|
||||||
** Configuration file for Lua
|
** Configuration file for Lua
|
||||||
** See Copyright Notice in lua.h
|
** See Copyright Notice in lua.h
|
||||||
*/
|
*/
|
||||||
|
@ -161,7 +161,9 @@
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#define LUA_API extern
|
//#define LUA_API extern
|
||||||
|
//desmume: dont want this junk
|
||||||
|
#define LUA_API
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -440,10 +442,10 @@
|
||||||
@* can use.
|
@* can use.
|
||||||
** CHANGE it if you need lots of (Lua) stack space for your C
|
** CHANGE it if you need lots of (Lua) stack space for your C
|
||||||
** functions. This limit is arbitrary; its only purpose is to stop C
|
** functions. This limit is arbitrary; its only purpose is to stop C
|
||||||
** functions to consume unlimited stack space.
|
** functions to consume unlimited stack space. (must be smaller than
|
||||||
|
** -LUA_REGISTRYINDEX)
|
||||||
*/
|
*/
|
||||||
#define LUAI_MCS_AUX ((int)(INT_MAX / (4*sizeof(LUA_NUMBER))))
|
#define LUAI_MAXCSTACK 8000
|
||||||
#define LUAI_MAXCSTACK (LUAI_MCS_AUX > SHRT_MAX ? SHRT_MAX : LUAI_MCS_AUX)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,67 @@
|
||||||
|
/*
|
||||||
|
** $Id: lzio.h,v 1.21.1.1 2007/12/27 13:02:25 roberto Exp $
|
||||||
|
** Buffered streams
|
||||||
|
** See Copyright Notice in lua.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef lzio_h
|
||||||
|
#define lzio_h
|
||||||
|
|
||||||
|
#include "lua.h"
|
||||||
|
|
||||||
|
#include "lmem.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define EOZ (-1) /* end of stream */
|
||||||
|
|
||||||
|
typedef struct Zio ZIO;
|
||||||
|
|
||||||
|
#define char2int(c) cast(int, cast(unsigned char, (c)))
|
||||||
|
|
||||||
|
#define zgetc(z) (((z)->n--)>0 ? char2int(*(z)->p++) : luaZ_fill(z))
|
||||||
|
|
||||||
|
typedef struct Mbuffer {
|
||||||
|
char *buffer;
|
||||||
|
size_t n;
|
||||||
|
size_t buffsize;
|
||||||
|
} Mbuffer;
|
||||||
|
|
||||||
|
#define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0)
|
||||||
|
|
||||||
|
#define luaZ_buffer(buff) ((buff)->buffer)
|
||||||
|
#define luaZ_sizebuffer(buff) ((buff)->buffsize)
|
||||||
|
#define luaZ_bufflen(buff) ((buff)->n)
|
||||||
|
|
||||||
|
#define luaZ_resetbuffer(buff) ((buff)->n = 0)
|
||||||
|
|
||||||
|
|
||||||
|
#define luaZ_resizebuffer(L, buff, size) \
|
||||||
|
(luaM_reallocvector(L, (buff)->buffer, (buff)->buffsize, size, char), \
|
||||||
|
(buff)->buffsize = size)
|
||||||
|
|
||||||
|
#define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0)
|
||||||
|
|
||||||
|
|
||||||
|
LUAI_FUNC char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n);
|
||||||
|
LUAI_FUNC void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader,
|
||||||
|
void *data);
|
||||||
|
LUAI_FUNC size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */
|
||||||
|
LUAI_FUNC int luaZ_lookahead (ZIO *z);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* --------- Private Part ------------------ */
|
||||||
|
|
||||||
|
struct Zio {
|
||||||
|
size_t n; /* bytes still unread */
|
||||||
|
const char *p; /* current position in buffer */
|
||||||
|
lua_Reader reader;
|
||||||
|
void* data; /* additional data */
|
||||||
|
lua_State *L; /* Lua state (for reader) */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
LUAI_FUNC int luaZ_fill (ZIO *z);
|
||||||
|
|
||||||
|
#endif
|
|
@ -16,14 +16,6 @@
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
extern "C"
|
|
||||||
{
|
|
||||||
#include <lua.h>
|
|
||||||
#include <lauxlib.h>
|
|
||||||
#include <lualib.h>
|
|
||||||
#include <lstate.h>
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "types.h"
|
#include "types.h"
|
||||||
#include "fceu.h"
|
#include "fceu.h"
|
||||||
#include "video.h"
|
#include "video.h"
|
||||||
|
@ -42,6 +34,14 @@ extern "C"
|
||||||
#include "drivers/win/common.h"
|
#include "drivers/win/common.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
#include <lua.h>
|
||||||
|
#include <lauxlib.h>
|
||||||
|
#include <lualib.h>
|
||||||
|
#include <lstate.h>
|
||||||
|
}
|
||||||
|
|
||||||
#ifndef TRUE
|
#ifndef TRUE
|
||||||
#define TRUE 1
|
#define TRUE 1
|
||||||
#define FALSE 0
|
#define FALSE 0
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -45,7 +45,7 @@
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;LUA_BUILD_AS_DLL;HAS_vsnprintf;_S9XLUA_H"
|
PreprocessorDefinitions="WIN32;_DEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;HAS_vsnprintf;_S9XLUA_H"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
|
@ -68,9 +68,9 @@
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua5.1.lib"
|
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua-5.1.4-x86.lib"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
DelayLoadDLLs="lua5.1.dll"
|
DelayLoadDLLs=""
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
SubSystem="1"
|
SubSystem="1"
|
||||||
EntryPointSymbol="mainCRTStartup"
|
EntryPointSymbol="mainCRTStartup"
|
||||||
|
@ -218,7 +218,7 @@
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="true"
|
OmitFramePointers="true"
|
||||||
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;LUA_BUILD_AS_DLL;HAS_vsnprintf;_S9XLUA_H"
|
PreprocessorDefinitions="WIN32;NDEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;HAS_vsnprintf;_S9XLUA_H"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
UsePrecompiledHeader="0"
|
UsePrecompiledHeader="0"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
|
@ -237,9 +237,9 @@
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua5.1.lib"
|
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua-5.1.4-x86.lib"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
DelayLoadDLLs="lua5.1.dll"
|
DelayLoadDLLs=""
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
SubSystem="2"
|
SubSystem="2"
|
||||||
OptimizeReferences="2"
|
OptimizeReferences="2"
|
||||||
|
|
|
@ -46,7 +46,7 @@
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;LUA_BUILD_AS_DLL;HAS_vsnprintf;_S9XLUA_H"
|
PreprocessorDefinitions="WIN32;_DEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;HAS_vsnprintf;_S9XLUA_H"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
|
@ -69,9 +69,9 @@
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua5.1.lib"
|
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua-5.1.4-x86.lib"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
DelayLoadDLLs="lua5.1.dll"
|
DelayLoadDLLs=""
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
SubSystem="1"
|
SubSystem="1"
|
||||||
EntryPointSymbol="mainCRTStartup"
|
EntryPointSymbol="mainCRTStartup"
|
||||||
|
@ -216,7 +216,7 @@
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="true"
|
OmitFramePointers="true"
|
||||||
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
AdditionalIncludeDirectories="../src/drivers/win/zlib;../src/drivers/win/directx;../src;../src/drivers/win/lua/include;userconfig;defaultconfig"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;LUA_BUILD_AS_DLL;HAS_vsnprintf;_S9XLUA_H"
|
PreprocessorDefinitions="WIN32;NDEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;_USE_32BIT_TIME_T;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;HAS_vsnprintf;_S9XLUA_H"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
UsePrecompiledHeader="0"
|
UsePrecompiledHeader="0"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
|
@ -235,9 +235,9 @@
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua5.1.lib"
|
AdditionalDependencies="delayimp.lib Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib lua/lua-5.1.4-x86.lib"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
DelayLoadDLLs="lua5.1.dll"
|
DelayLoadDLLs=""
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
SubSystem="2"
|
SubSystem="2"
|
||||||
OptimizeReferences="2"
|
OptimizeReferences="2"
|
||||||
|
|
Loading…
Reference in New Issue