implemented a step hook and modified the makefile to call getheader.py
This commit is contained in:
parent
04f4a0d9fe
commit
85a2ba9a6e
17
Makefile
17
Makefile
@ -11,67 +11,84 @@ FLAGS_DBUG := -Wall -std=c99 -D_POSIX_C_SOURCE=200112L -pg -DX86 -DX86_SSE3 -mss
|
|||||||
COMPILER := gcc
|
COMPILER := gcc
|
||||||
LINUX_TARG := powder-64-sse2 powder-sse powder-sse2
|
LINUX_TARG := powder-64-sse2 powder-sse powder-sse2
|
||||||
WIN32_TARG := powder-sse.exe powder-sse2.exe
|
WIN32_TARG := powder-sse.exe powder-sse2.exe
|
||||||
|
PYCOMMAND := python2 getheader.py
|
||||||
|
|
||||||
powder: $(SOURCES)
|
powder: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -DINTERNAL -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64
|
$(COMPILER) -DINTERNAL -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-debug-64: $(SOURCES)
|
powder-debug-64: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m64 -o$@ $(FLAGS_DBUG) -DLIN64 $(SOURCES) -Iincludes/
|
$(COMPILER) -m64 -o$@ $(FLAGS_DBUG) -DLIN64 $(SOURCES) -Iincludes/
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-debug: $(SOURCES)
|
powder-debug: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m32 -o$@ $(FLAGS_DBUG) -DLIN32 $(SOURCES) -Iincludes/
|
$(COMPILER) -m32 -o$@ $(FLAGS_DBUG) -DLIN32 $(SOURCES) -Iincludes/
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-sse3: $(SOURCES)
|
powder-sse3: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN32
|
$(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN32
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-sse2: $(SOURCES)
|
powder-sse2: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE2) $(SOURCES) -DLIN32
|
$(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE2) $(SOURCES) -DLIN32
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-sse: $(SOURCES)
|
powder-sse: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE) $(SOURCES) -DLIN32
|
$(COMPILER) -m32 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE) $(SOURCES) -DLIN32
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-64-sse3-opengl: $(SOURCES)
|
powder-64-sse3-opengl: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64 -lGL -lGLU -DOpenGL
|
$(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64 -lGL -lGLU -DOpenGL
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-64-sse3: $(SOURCES)
|
powder-64-sse3: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64
|
$(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE3) $(SOURCES) -DLIN64
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-64-sse2: $(SOURCES)
|
powder-64-sse2: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
$(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE2) $(SOURCES) -DLIN64
|
$(COMPILER) -m64 -o$@ $(CFLAGS) $(OFLAGS) $(LFLAGS) $(MFLAGS_SSE2) $(SOURCES) -DLIN64
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
|
|
||||||
powder-icc: $(SOURCES)
|
powder-icc: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
/opt/intel/Compiler/11.1/073/bin/intel64/icc -m64 -o$@ -Iincludes/ -O2 -march=core2 -msse3 -mfpmath=sse -lSDL -lbz2 -lm -xW $(SOURCES) -std=c99 -D_POSIX_C_SOURCE=200112L
|
/opt/intel/Compiler/11.1/073/bin/intel64/icc -m64 -o$@ -Iincludes/ -O2 -march=core2 -msse3 -mfpmath=sse -lSDL -lbz2 -lm -xW $(SOURCES) -std=c99 -D_POSIX_C_SOURCE=200112L
|
||||||
|
|
||||||
powder-res.o: powder-res.rc powder.ico
|
powder-res.o: powder-res.rc powder.ico
|
||||||
|
$(PYCOMMAND)
|
||||||
i586-mingw32msvc-windres powder-res.rc powder-res.o
|
i586-mingw32msvc-windres powder-res.rc powder-res.o
|
||||||
|
|
||||||
powder-sse3.exe: $(SOURCES) powder-res.o
|
powder-sse3.exe: $(SOURCES) powder-res.o
|
||||||
|
$(PYCOMMAND)
|
||||||
i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE3) $(SOURCES) powder-res.o -lmingw32 -llibregex -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
|
i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE3) $(SOURCES) powder-res.o -lmingw32 -llibregex -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
|
||||||
strip $@
|
strip $@
|
||||||
chmod 0644 $@
|
chmod 0644 $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-sse2.exe: $(SOURCES) powder-res.o
|
powder-sse2.exe: $(SOURCES) powder-res.o
|
||||||
|
$(PYCOMMAND)
|
||||||
i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE2) $(SOURCES) powder-res.o -lmingw32 -llibregex -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
|
i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE2) $(SOURCES) powder-res.o -lmingw32 -llibregex -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
|
||||||
strip $@
|
strip $@
|
||||||
chmod 0644 $@
|
chmod 0644 $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-sse.exe: $(SOURCES) powder-res.o
|
powder-sse.exe: $(SOURCES) powder-res.o
|
||||||
|
$(PYCOMMAND)
|
||||||
i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE) $(SOURCES) powder-res.o -lmingw32 -llibregex -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
|
i586-mingw32msvc-gcc -o$@ $(CFLAGS) $(OFLAGS) $(MFLAGS_SSE) $(SOURCES) powder-res.o -lmingw32 -llibregex -lws2_32 -lSDLmain $(LFLAGS) -mwindows -DWIN32
|
||||||
strip $@
|
strip $@
|
||||||
chmod 0644 $@
|
chmod 0644 $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-x: $(SOURCES)
|
powder-x: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
gcc -o $@ $(CFLAGS) $(OFLAGS) $(LFLAGS_X) $(MFLAGS) $(SOURCES) -DMACOSX -DPIX32BGRA -arch x86_64 -framework Cocoa -framework SDL
|
gcc -o $@ $(CFLAGS) $(OFLAGS) $(LFLAGS_X) $(MFLAGS) $(SOURCES) -DMACOSX -DPIX32BGRA -arch x86_64 -framework Cocoa -framework SDL
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
powder-x-ogl: $(SOURCES)
|
powder-x-ogl: $(SOURCES)
|
||||||
|
$(PYCOMMAND)
|
||||||
gcc -o $@ $(CFLAGS) $(OFLAGS) $(LFLAGS_X) $(MFLAGS) $(SOURCES) -DOpenGL -DMACOSX -DPIX32BGRA -arch x86_64 -framework Cocoa -framework SDL -framework OpenGL
|
gcc -o $@ $(CFLAGS) $(OFLAGS) $(LFLAGS_X) $(MFLAGS) $(SOURCES) -DOpenGL -DMACOSX -DPIX32BGRA -arch x86_64 -framework Cocoa -framework SDL -framework OpenGL
|
||||||
strip $@
|
strip $@
|
||||||
mv $@ build
|
mv $@ build
|
||||||
|
@ -17,7 +17,7 @@ print args,"-I%s"%path
|
|||||||
lst=[]
|
lst=[]
|
||||||
compileall.compile_dir("./src/python", force=1)
|
compileall.compile_dir("./src/python", force=1)
|
||||||
|
|
||||||
print "\n\n\ngenerating pyconsole.h"
|
print "generating pyconsole.h"
|
||||||
|
|
||||||
fname="./src/python/tpt_console.pyc"
|
fname="./src/python/tpt_console.pyc"
|
||||||
try:
|
try:
|
||||||
|
File diff suppressed because one or more lines are too long
38
src/main.c
38
src/main.c
@ -1813,7 +1813,7 @@ int main(int argc, char *argv[])
|
|||||||
SDL_AudioSpec fmt;
|
SDL_AudioSpec fmt;
|
||||||
int username_flash = 0, username_flash_t = 1;
|
int username_flash = 0, username_flash_t = 1;
|
||||||
GSPEED = 1;
|
GSPEED = 1;
|
||||||
PyObject *pname,*pmodule,*pfunc,*pvalue,*pargs;
|
PyObject *pname,*pmodule,*pfunc,*pvalue,*pargs,*pstep;
|
||||||
|
|
||||||
/* Set 16-bit stereo audio at 22Khz */
|
/* Set 16-bit stereo audio at 22Khz */
|
||||||
fmt.freq = 22050;
|
fmt.freq = 22050;
|
||||||
@ -1840,26 +1840,28 @@ int main(int argc, char *argv[])
|
|||||||
pfunc=PyObject_GetAttrString(pmodule,"handle");//get the handler function
|
pfunc=PyObject_GetAttrString(pmodule,"handle");//get the handler function
|
||||||
if(pfunc && PyCallable_Check(pfunc))//check if it's really a function
|
if(pfunc && PyCallable_Check(pfunc))//check if it's really a function
|
||||||
{
|
{
|
||||||
//it is
|
|
||||||
printf("python console ready to go.\n");
|
printf("python console ready to go.\n");
|
||||||
/*pargs=Py_BuildValue("(s)","test");
|
|
||||||
pvalue = PyObject_CallObject(pfunc, pargs);
|
|
||||||
Py_DECREF(pargs);
|
|
||||||
pargs=NULL;
|
|
||||||
//Py_DECREF(pvalue);
|
|
||||||
//puts("a");
|
|
||||||
pvalue=NULL;*/
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//oops! mangled console.py?
|
|
||||||
printf("unable to find handle function, mangled console.py?\n");
|
printf("unable to find handle function, mangled console.py?\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pstep=PyObject_GetAttrString(pmodule,"step");//get the handler function
|
||||||
|
if(pstep && PyCallable_Check(pfunc))//check if it's really a function
|
||||||
|
{
|
||||||
|
printf("step function found.\n");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
printf("unable to find console module, missing file?\n");
|
printf("unable to find step function. ignoring.\n");
|
||||||
|
//return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("unable to find console module, missing file or mangled console.py?\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3397,6 +3399,19 @@ int main(int argc, char *argv[])
|
|||||||
hud_enable = 1;
|
hud_enable = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//execute python step hook
|
||||||
|
if(pstep!=NULL)
|
||||||
|
{
|
||||||
|
pargs=Py_BuildValue("()");
|
||||||
|
pvalue = PyObject_CallObject(pstep, pargs);
|
||||||
|
Py_DECREF(pargs);
|
||||||
|
pargs=NULL;
|
||||||
|
if(pvalue==NULL)
|
||||||
|
strcpy(console_error,"failed to execute step code.");
|
||||||
|
//Py_DECREF(pvalue);
|
||||||
|
//puts("a");
|
||||||
|
pvalue=NULL;
|
||||||
|
}
|
||||||
sdl_blit(0, 0, XRES+BARSIZE, YRES+MENUSIZE, vid_buf, XRES+BARSIZE);
|
sdl_blit(0, 0, XRES+BARSIZE, YRES+MENUSIZE, vid_buf, XRES+BARSIZE);
|
||||||
|
|
||||||
//Setting an element for the stick man
|
//Setting an element for the stick man
|
||||||
@ -3414,7 +3429,6 @@ int main(int argc, char *argv[])
|
|||||||
else
|
else
|
||||||
player2[2] = PT_DUST;
|
player2[2] = PT_DUST;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
SDL_CloseAudio();
|
SDL_CloseAudio();
|
||||||
http_done();
|
http_done();
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
import tpt
|
import tpt
|
||||||
from tpt import *
|
from tpt import *
|
||||||
from utils import *
|
|
||||||
import sys
|
import sys
|
||||||
import code
|
import code
|
||||||
import ctypes
|
import ctypes
|
||||||
@ -75,3 +74,18 @@ def _handle(txt):
|
|||||||
exec txt in handle.glob
|
exec txt in handle.glob
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
error(ex)
|
error(ex)
|
||||||
|
|
||||||
|
def step():
|
||||||
|
try:
|
||||||
|
a=handle.glob
|
||||||
|
except:
|
||||||
|
clean()
|
||||||
|
try:
|
||||||
|
_step()
|
||||||
|
except Exception as ex:
|
||||||
|
error(ex)
|
||||||
|
|
||||||
|
def _step():
|
||||||
|
#print "handling '%s'"%txt
|
||||||
|
#print "step"
|
||||||
|
toggle_pause()
|
||||||
|
Reference in New Issue
Block a user