From 80a300ef12052612a6ed5fc9f6a3b8c846f644d0 Mon Sep 17 00:00:00 2001
From: "p.kosyh"
Date: Sat, 30 Apr 2011 05:56:30 +0000
Subject: [PATCH] bit_signed/unsigned
---
src/sdl-instead/instead.c | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/src/sdl-instead/instead.c b/src/sdl-instead/instead.c
index 2c402f4..fd05f2a 100644
--- a/src/sdl-instead/instead.c
+++ b/src/sdl-instead/instead.c
@@ -1524,6 +1524,18 @@ static int luaB_bit_add(lua_State *L) {
return 1;
}
+static int luaB_bit_unsigned(lua_State *L) {
+ unsigned int a = luaL_optnumber(L, 1, 0);
+ lua_pushnumber(L, a);
+ return 1;
+}
+
+static int luaB_bit_signed(lua_State *L) {
+ unsigned int a = luaL_optnumber(L, 1, 0);
+ lua_pushnumber(L, (int)a);
+ return 1;
+}
+
static const luaL_Reg base_funcs[] = {
{"doencfile", luaB_doencfile},
{"dofile", luaB_dofile},
@@ -1578,7 +1590,8 @@ static const luaL_Reg base_funcs[] = {
{"bit_imul", luaB_bit_imul},
{"bit_sub", luaB_bit_sub},
{"bit_add", luaB_bit_add},
-
+ {"bit_signed", luaB_bit_signed},
+ {"bit_unsigned", luaB_bit_unsigned},
{NULL, NULL}
};