Commit a60d3dd1 authored by Steven Fuller's avatar Steven Fuller

miscellaneous changes that have been sitting around for a while.

parent bb4a737b
CC = gcc CC = gcc
#CC = gcc-3.0
#CFLAGS = -Wall -O6 -fomit-frame-pointer -ffast-math -funroll-loops -mpentiumpro -mcpu=pentiumpro -march=pentiumpro #CFLAGS = -Wall -O6 -fomit-frame-pointer -ffast-math -funroll-loops -mpentiumpro -mcpu=pentiumpro -march=pentiumpro
#CFLAGS = -g -Wall -O6 -fomit-frame-pointer -ffast-math -funroll-loops -mpentiumpro -mcpu=pentiumpro -march=pentiumpro #CFLAGS = -g -Wall -O6 -fomit-frame-pointer -ffast-math -funroll-loops -mpentiumpro -mcpu=pentiumpro -march=pentiumpro
CFLAGS = -g -Wall -ansi -pedantic CFLAGS = -g -Wall -ansi -pedantic -W -O2
#CFLAGS = -Os -g #CFLAGS = -Os -g
CFLAGS += `sdl-config --cflags` CFLAGS += $(shell sdl-config --cflags)
OBJS = Data.o Doors.o EnMove.o EnThink.o Intro.o Level.o \ OBJS = Data.o Doors.o EnMove.o EnThink.o Intro.o Level.o \
Missiles.o Sounds.o PlMove.o PlStuff.o PlThink.o PushWall.o \ Missiles.o Sounds.o PlMove.o PlStuff.o PlThink.o PushWall.o \
...@@ -21,21 +20,21 @@ GLOBJS = $(OBJS) $(OGLOBJS) vi_glx.o ...@@ -21,21 +20,21 @@ GLOBJS = $(OBJS) $(OGLOBJS) vi_glx.o
DOBJS = $(OBJS) $(SOFTOBJS) vi_sdl.o DOBJS = $(OBJS) $(SOFTOBJS) vi_sdl.o
LFLAGS = -lm LFLAGS = -lm
#LFLAGS = -lm /home/relnev/ElectricFence-2.1/libefence.a
#LFLAGS = -lm /home/relnev/ElectricFence-2.2.2/libefence.a -lpthread
SLFLAGS = $(LFLAGS) -lvga SLFLAGS = $(LFLAGS) -lvga
#XLFLAGS = $(LFLAGS) -L/usr/X11R6/lib -lX11 -lXext -lXxf86vm -lXxf86dga #XLFLAGS = $(LFLAGS) -L/usr/X11R6/lib -lX11 -lXext -lXxf86vm -lXxf86dga
XLFLAGS = $(LFLAGS) -L/usr/X11R6/lib -lX11 XLFLAGS = $(LFLAGS) -L/usr/X11R6/lib -lX11
GLFLAGS = $(LFLAGS) `gtk-config --libs` # -L/usr/X11R6/lib -lX11 -lXi -lXext -lgdk -lgtk GLFLAGS = $(LFLAGS) $(shell gtk-config --libs)
GLLFLAGS = $(LFLAGS) -L/usr/lib -L/usr/X11R6/lib -lX11 -lXext -lGL GLLFLAGS = $(LFLAGS) -L/usr/X11R6/lib -lX11 -lXext -lGL
DLFLAGS = $(LFLAGS) `sdl-config --libs` DLFLAGS = $(LFLAGS) $(shell sdl-config --libs)
NASM = nasm NASM = nasm
.SUFFIXES: .asm .SUFFIXES: .asm
all: swolf3d xwolf3d gwolf3d glwolf3d sdlwolf3d #all: swolf3d xwolf3d gwolf3d glwolf3d sdlwolf3d
all: xwolf3d
$(SOBJS): Sounds.h Sprites.h States.h Wolf.h burger.h wolfdef.h $(SOBJS): Sounds.h Sprites.h States.h Wolf.h burger.h wolfdef.h
$(XOBJS): Sounds.h Sprites.h States.h Wolf.h burger.h wolfdef.h $(XOBJS): Sounds.h Sprites.h States.h Wolf.h burger.h wolfdef.h
...@@ -47,10 +46,10 @@ $(DOBJS): Sounds.h Sprites.h States.h Wolf.h burger.h wolfdef.h ...@@ -47,10 +46,10 @@ $(DOBJS): Sounds.h Sprites.h States.h Wolf.h burger.h wolfdef.h
$(NASM) -f elf -o $@ $< $(NASM) -f elf -o $@ $<
vi_gtk.o: vi_gtk.c vi_gtk.o: vi_gtk.c
$(CC) -c vi_gtk.c $(CFLAGS) `gtk-config --cflags` $(CC) -c vi_gtk.c $(CFLAGS) $(shell gtk-config --cflags)
gtkimagedb.o: gtkimagedb.c gtkimagedb.h gtkimagedb.o: gtkimagedb.c gtkimagedb.h
$(CC) -c gtkimagedb.c $(CFLAGS) `gtk-config --cflags` $(CC) -c gtkimagedb.c $(CFLAGS) $(shell gtk-config --cflags)
swolf3d: $(SOBJS) swolf3d: $(SOBJS)
$(CC) -o swolf3d $(SOBJS) $(SLFLAGS) $(CC) -o swolf3d $(SOBJS) $(SLFLAGS)
......
...@@ -26,7 +26,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ...@@ -26,7 +26,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
typedef struct ResItem_t typedef struct ResItem_t
{ {
long type; LongWord type;
Word item; Word item;
Byte *dat; Byte *dat;
...@@ -69,7 +69,8 @@ static int16_t Read16M(FILE *fp) ...@@ -69,7 +69,8 @@ static int16_t Read16M(FILE *fp)
int InitResources(char *name) int InitResources(char *name)
{ {
FILE *fp; FILE *fp;
ResItem **cur = &lr, *t; ResItem **cur = &lr;
ResItem *t;
int resfork, resmap, forklen, maplen; int resfork, resmap, forklen, maplen;
int typelist, namelist, typecount; int typelist, namelist, typecount;
int datalen; int datalen;
...@@ -77,8 +78,9 @@ int InitResources(char *name) ...@@ -77,8 +78,9 @@ int InitResources(char *name)
fp = fopen(name, "rb"); fp = fopen(name, "rb");
if (fp == NULL) if (fp == NULL) {
return -1; return -1;
}
resfork = Read32M(fp); resfork = Read32M(fp);
resmap = Read32M(fp); resmap = Read32M(fp);
...@@ -104,6 +106,7 @@ int InitResources(char *name) ...@@ -104,6 +106,7 @@ int InitResources(char *name)
bak = ftell(fp); bak = ftell(fp);
fseek(fp, resmap + typelist + off, SEEK_SET); fseek(fp, resmap + typelist + off, SEEK_SET);
for (x = 0; x < count; x++) { for (x = 0; x < count; x++) {
int id; int id;
...@@ -166,8 +169,9 @@ void *LoadAResource2(Word RezNum, LongWord Type) ...@@ -166,8 +169,9 @@ void *LoadAResource2(Word RezNum, LongWord Type)
memcpy(c->buf, c->dat, c->size); memcpy(c->buf, c->dat, c->size);
} }
if (c->buf == NULL) if (c->buf == NULL) {
Quit("MALLOC FAILED?"); Quit("MALLOC FAILED?");
}
return c->buf; return c->buf;
} }
...@@ -192,18 +196,22 @@ void *FindResource(Word RezNum, LongWord Type) ...@@ -192,18 +196,22 @@ void *FindResource(Word RezNum, LongWord Type)
} else { } else {
/* DEBUG: we want a fresh copy... */ /* DEBUG: we want a fresh copy... */
fprintf(stderr, "DEBUG: Item %ld/%d already loaded!\n", Type, RezNum); fprintf(stderr, "DEBUG: Item %ld/%d already loaded!\n", Type, RezNum);
/* /*
free(c->buf); free(c->buf);
c->buf = malloc(c->size); c->buf = malloc(c->size);
*/ */
memcpy(c->buf, c->dat, c->size); memcpy(c->buf, c->dat, c->size);
} }
if (c->buf == NULL) if (c->buf == NULL) {
Quit("MALLOC FAILED?"); Quit("MALLOC FAILED?");
}
return c->buf; return c->buf;
} }
c = c->next; c = c->next;
} }
...@@ -216,8 +224,10 @@ void ReleaseAResource2(Word RezNum, LongWord Type) ...@@ -216,8 +224,10 @@ void ReleaseAResource2(Word RezNum, LongWord Type)
while (c != NULL) { while (c != NULL) {
if ( (c->type == Type) && (c->item == RezNum) ) { if ( (c->type == Type) && (c->item == RezNum) ) {
if (c->buf) if (c->buf != NULL) {
free(c->buf); free(c->buf);
}
c->buf = NULL; c->buf = NULL;
return; return;
} }
...@@ -240,12 +250,14 @@ void FreeResources() ...@@ -240,12 +250,14 @@ void FreeResources()
while (c) { while (c) {
ResItem *t = c; ResItem *t = c;
if (c->dat) if (c->dat != NULL) {
free(c->dat); free(c->dat);
}
if (c->buf)
if (c->buf != NULL) {
free(c->buf); free(c->buf);
}
c = c->next; c = c->next;
free(t); free(t);
......
...@@ -756,7 +756,6 @@ extern void IO_AttackShape(Word shape); ...@@ -756,7 +756,6 @@ extern void IO_AttackShape(Word shape);
extern void IO_DrawFace(Word face); extern void IO_DrawFace(Word face);
extern void IO_DrawStatusBar(void); extern void IO_DrawStatusBar(void);
extern void IO_ClearViewBuffer(void); extern void IO_ClearViewBuffer(void);
extern void IO_ScaleWallColumn(Word x,Word scale,Word tile,Word column);
extern void IO_DisplayViewBuffer(void); extern void IO_DisplayViewBuffer(void);
extern void IO_ScaleMaskedColumn(Word x,Word scale, unsigned short *sprite,Word column); extern void IO_ScaleMaskedColumn(Word x,Word scale, unsigned short *sprite,Word column);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment