diff --git a/Makefile b/Makefile index 3886cd9..ea92095 100644 --- a/Makefile +++ b/Makefile @@ -37,7 +37,7 @@ BUILD_RELEASE_DIR=release CC=gcc -m32 BASE_CFLAGS=-Dstricmp=strcasecmp -I./dumb/include/ -RELEASE_CFLAGS=$(BASE_CFLAGS) +RELEASE_CFLAGS=$(BASE_CFLAGS) -O6 -ffast-math -funroll-loops DEBUG_CFLAGS=$(BASE_CFLAGS) -g LDFLAGS=-lm -ldl XLDFLAGS=-L/usr/X11R6/lib -lX11 -lXext -lXxf86dga @@ -57,16 +57,16 @@ DO_GL_AS=$(CC) $(CFLAGS) $(GLCFLAGS) -DELF -x assembler-with-cpp -o $@ -c $< # SETUP AND BUILD ############################################################################# -TARGETS=$(BUILDDIR)/engoo.x11 +TARGETS=$(MASTER_DIR)/engoo.x11 build_debug: @-mkdir $(BUILD_DEBUG_DIR) \ - $(BUILD_DEBUG_DIR)/obj + $(BUILD_DEBUG_DIR) $(MAKE) targets BUILDDIR=$(BUILD_DEBUG_DIR) CFLAGS="$(DEBUG_CFLAGS)" build_release: @-mkdir $(BUILD_RELEASE_DIR) \ - $(BUILD_RELEASE_DIR)/obj + $(BUILD_RELEASE_DIR) $(MAKE) targets BUILDDIR=$(BUILD_RELEASE_DIR) CFLAGS="$(RELEASE_CFLAGS)" all: build_debug build_release @@ -78,562 +78,562 @@ targets: $(TARGETS) ############################################################################# X11_OBJS = \ - $(BUILDDIR)/obj/atexit.o \ - $(BUILDDIR)/obj/duhlen.o \ - $(BUILDDIR)/obj/duhtag.o \ - $(BUILDDIR)/obj/dumbfile.o \ - $(BUILDDIR)/obj/loadduh.o \ - $(BUILDDIR)/obj/makeduh.o \ - $(BUILDDIR)/obj/rawsig.o \ - $(BUILDDIR)/obj/readduh.o \ - $(BUILDDIR)/obj/register.o \ - $(BUILDDIR)/obj/rendduh.o \ - $(BUILDDIR)/obj/rendsig.o \ - $(BUILDDIR)/obj/unload.o \ - $(BUILDDIR)/obj/clickrem.o \ - $(BUILDDIR)/obj/memfile.o \ - $(BUILDDIR)/obj/resample.o \ - $(BUILDDIR)/obj/sampbuf.o \ - $(BUILDDIR)/obj/silence.o \ - $(BUILDDIR)/obj/stdfile.o \ - $(BUILDDIR)/obj/itload.o \ - $(BUILDDIR)/obj/itread.o \ - $(BUILDDIR)/obj/itload2.o \ - $(BUILDDIR)/obj/itread2.o \ - $(BUILDDIR)/obj/itrender.o \ - $(BUILDDIR)/obj/itunload.o \ - $(BUILDDIR)/obj/loads3m.o \ - $(BUILDDIR)/obj/reads3m.o \ - $(BUILDDIR)/obj/loadxm.o \ - $(BUILDDIR)/obj/readxm.o \ - $(BUILDDIR)/obj/loadmod.o \ - $(BUILDDIR)/obj/readmod.o \ - $(BUILDDIR)/obj/loads3m2.o \ - $(BUILDDIR)/obj/reads3m2.o \ - $(BUILDDIR)/obj/loadxm2.o \ - $(BUILDDIR)/obj/readxm2.o \ - $(BUILDDIR)/obj/loadmod2.o \ - $(BUILDDIR)/obj/readmod2.o \ - $(BUILDDIR)/obj/xmeffect.o \ - $(BUILDDIR)/obj/itorder.o \ - $(BUILDDIR)/obj/itmisc.o \ - $(BUILDDIR)/obj/cl_demo.o \ - $(BUILDDIR)/obj/cl_input.o \ - $(BUILDDIR)/obj/cl_main.o \ - $(BUILDDIR)/obj/cl_parse.o \ - $(BUILDDIR)/obj/cl_tent.o \ - $(BUILDDIR)/obj/chase.o \ - $(BUILDDIR)/obj/cmd.o \ - $(BUILDDIR)/obj/common.o \ - $(BUILDDIR)/obj/console.o \ - $(BUILDDIR)/obj/crc.o \ - $(BUILDDIR)/obj/cvar.o \ - $(BUILDDIR)/obj/draw.o \ - $(BUILDDIR)/obj/d_edge.o \ - $(BUILDDIR)/obj/d_fill.o \ - $(BUILDDIR)/obj/d_init.o \ - $(BUILDDIR)/obj/d_modech.o \ - $(BUILDDIR)/obj/d_part.o \ - $(BUILDDIR)/obj/d_polyse.o \ - $(BUILDDIR)/obj/d_scan.o \ - $(BUILDDIR)/obj/d_sky.o \ - $(BUILDDIR)/obj/d_sprite.o \ - $(BUILDDIR)/obj/d_surf.o \ - $(BUILDDIR)/obj/d_vars.o \ - $(BUILDDIR)/obj/d_zpoint.o \ - $(BUILDDIR)/obj/host.o \ - $(BUILDDIR)/obj/host_cmd.o \ - $(BUILDDIR)/obj/keys.o \ - $(BUILDDIR)/obj/menu.o \ - $(BUILDDIR)/obj/mathlib.o \ - $(BUILDDIR)/obj/model.o \ - $(BUILDDIR)/obj/model_common.o \ - $(BUILDDIR)/obj/net_dgrm.o \ - $(BUILDDIR)/obj/net_loop.o \ - $(BUILDDIR)/obj/net_main.o \ - $(BUILDDIR)/obj/net_vcr.o \ - $(BUILDDIR)/obj/net_udp.o \ - $(BUILDDIR)/obj/net_bsd.o \ - $(BUILDDIR)/obj/nonintel.o \ - $(BUILDDIR)/obj/pr_cmds.o \ - $(BUILDDIR)/obj/pr_edict.o \ - $(BUILDDIR)/obj/pr_exec.o \ - $(BUILDDIR)/obj/r_aclip.o \ - $(BUILDDIR)/obj/r_alias.o \ - $(BUILDDIR)/obj/r_bsp.o \ - $(BUILDDIR)/obj/r_light.o \ - $(BUILDDIR)/obj/r_draw.o \ - $(BUILDDIR)/obj/r_efrag.o \ - $(BUILDDIR)/obj/r_edge.o \ - $(BUILDDIR)/obj/r_misc.o \ - $(BUILDDIR)/obj/r_main.o \ - $(BUILDDIR)/obj/r_sky.o \ - $(BUILDDIR)/obj/r_sprite.o \ - $(BUILDDIR)/obj/r_surf.o \ - $(BUILDDIR)/obj/r_part.o \ - $(BUILDDIR)/obj/r_vars.o \ - $(BUILDDIR)/obj/screen.o \ - $(BUILDDIR)/obj/sbar.o \ - $(BUILDDIR)/obj/sv_main.o \ - $(BUILDDIR)/obj/sv_phys.o \ - $(BUILDDIR)/obj/sv_move.o \ - $(BUILDDIR)/obj/sv_user.o \ - $(BUILDDIR)/obj/zone.o \ - $(BUILDDIR)/obj/view.o \ - $(BUILDDIR)/obj/wad.o \ - $(BUILDDIR)/obj/world.o \ - $(BUILDDIR)/obj/tracker_linux.o \ - $(BUILDDIR)/obj/cd_null.o \ - $(BUILDDIR)/obj/sys_linux.o \ - $(BUILDDIR)/obj/vid_x.o \ - $(BUILDDIR)/obj/snd_dma.o \ - $(BUILDDIR)/obj/snd_mem.o \ - $(BUILDDIR)/obj/snd_mix.o \ - $(BUILDDIR)/obj/snd_linux.o \ - $(BUILDDIR)/obj/bot.o \ - $(BUILDDIR)/obj/nvs_client.o \ - $(BUILDDIR)/obj/nvs_common.o \ - $(BUILDDIR)/obj/nvs_server.o \ - $(BUILDDIR)/obj/nvs_server_data.o \ + $(BUILDDIR)/atexit.o \ + $(BUILDDIR)/duhlen.o \ + $(BUILDDIR)/duhtag.o \ + $(BUILDDIR)/dumbfile.o \ + $(BUILDDIR)/loadduh.o \ + $(BUILDDIR)/makeduh.o \ + $(BUILDDIR)/rawsig.o \ + $(BUILDDIR)/readduh.o \ + $(BUILDDIR)/register.o \ + $(BUILDDIR)/rendduh.o \ + $(BUILDDIR)/rendsig.o \ + $(BUILDDIR)/unload.o \ + $(BUILDDIR)/clickrem.o \ + $(BUILDDIR)/memfile.o \ + $(BUILDDIR)/resample.o \ + $(BUILDDIR)/sampbuf.o \ + $(BUILDDIR)/silence.o \ + $(BUILDDIR)/stdfile.o \ + $(BUILDDIR)/itload.o \ + $(BUILDDIR)/itread.o \ + $(BUILDDIR)/itload2.o \ + $(BUILDDIR)/itread2.o \ + $(BUILDDIR)/itrender.o \ + $(BUILDDIR)/itunload.o \ + $(BUILDDIR)/loads3m.o \ + $(BUILDDIR)/reads3m.o \ + $(BUILDDIR)/loadxm.o \ + $(BUILDDIR)/readxm.o \ + $(BUILDDIR)/loadmod.o \ + $(BUILDDIR)/readmod.o \ + $(BUILDDIR)/loads3m2.o \ + $(BUILDDIR)/reads3m2.o \ + $(BUILDDIR)/loadxm2.o \ + $(BUILDDIR)/readxm2.o \ + $(BUILDDIR)/loadmod2.o \ + $(BUILDDIR)/readmod2.o \ + $(BUILDDIR)/xmeffect.o \ + $(BUILDDIR)/itorder.o \ + $(BUILDDIR)/itmisc.o \ + $(BUILDDIR)/cl_demo.o \ + $(BUILDDIR)/cl_input.o \ + $(BUILDDIR)/cl_main.o \ + $(BUILDDIR)/cl_parse.o \ + $(BUILDDIR)/cl_tent.o \ + $(BUILDDIR)/chase.o \ + $(BUILDDIR)/cmd.o \ + $(BUILDDIR)/common.o \ + $(BUILDDIR)/console.o \ + $(BUILDDIR)/crc.o \ + $(BUILDDIR)/cvar.o \ + $(BUILDDIR)/draw.o \ + $(BUILDDIR)/d_edge.o \ + $(BUILDDIR)/d_fill.o \ + $(BUILDDIR)/d_init.o \ + $(BUILDDIR)/d_modech.o \ + $(BUILDDIR)/d_part.o \ + $(BUILDDIR)/d_polyse.o \ + $(BUILDDIR)/d_scan.o \ + $(BUILDDIR)/d_sky.o \ + $(BUILDDIR)/d_sprite.o \ + $(BUILDDIR)/d_surf.o \ + $(BUILDDIR)/d_vars.o \ + $(BUILDDIR)/d_zpoint.o \ + $(BUILDDIR)/host.o \ + $(BUILDDIR)/host_cmd.o \ + $(BUILDDIR)/keys.o \ + $(BUILDDIR)/menu.o \ + $(BUILDDIR)/mathlib.o \ + $(BUILDDIR)/model.o \ + $(BUILDDIR)/model_common.o \ + $(BUILDDIR)/net_dgrm.o \ + $(BUILDDIR)/net_loop.o \ + $(BUILDDIR)/net_main.o \ + $(BUILDDIR)/net_vcr.o \ + $(BUILDDIR)/net_udp.o \ + $(BUILDDIR)/net_bsd.o \ + $(BUILDDIR)/nonintel.o \ + $(BUILDDIR)/pr_cmds.o \ + $(BUILDDIR)/pr_edict.o \ + $(BUILDDIR)/pr_exec.o \ + $(BUILDDIR)/r_aclip.o \ + $(BUILDDIR)/r_alias.o \ + $(BUILDDIR)/r_bsp.o \ + $(BUILDDIR)/r_light.o \ + $(BUILDDIR)/r_draw.o \ + $(BUILDDIR)/r_efrag.o \ + $(BUILDDIR)/r_edge.o \ + $(BUILDDIR)/r_misc.o \ + $(BUILDDIR)/r_main.o \ + $(BUILDDIR)/r_sky.o \ + $(BUILDDIR)/r_sprite.o \ + $(BUILDDIR)/r_surf.o \ + $(BUILDDIR)/r_part.o \ + $(BUILDDIR)/r_vars.o \ + $(BUILDDIR)/screen.o \ + $(BUILDDIR)/sbar.o \ + $(BUILDDIR)/sv_main.o \ + $(BUILDDIR)/sv_phys.o \ + $(BUILDDIR)/sv_move.o \ + $(BUILDDIR)/sv_user.o \ + $(BUILDDIR)/zone.o \ + $(BUILDDIR)/view.o \ + $(BUILDDIR)/wad.o \ + $(BUILDDIR)/world.o \ + $(BUILDDIR)/tracker_linux.o \ + $(BUILDDIR)/cd_null.o \ + $(BUILDDIR)/sys_linux.o \ + $(BUILDDIR)/vid_x.o \ + $(BUILDDIR)/snd_dma.o \ + $(BUILDDIR)/snd_mem.o \ + $(BUILDDIR)/snd_mix.o \ + $(BUILDDIR)/snd_linux.o \ + $(BUILDDIR)/bot.o \ + $(BUILDDIR)/nvs_client.o \ + $(BUILDDIR)/nvs_common.o \ + $(BUILDDIR)/nvs_server.o \ + $(BUILDDIR)/nvs_server_data.o \ \ - $(BUILDDIR)/obj/d_draw.o \ - $(BUILDDIR)/obj/d_draw16.o \ - $(BUILDDIR)/obj/d_parta.o \ - $(BUILDDIR)/obj/d_polysa.o \ - $(BUILDDIR)/obj/d_scana.o \ - $(BUILDDIR)/obj/d_spr8.o \ - $(BUILDDIR)/obj/d_varsa.o \ - $(BUILDDIR)/obj/math.o \ - $(BUILDDIR)/obj/r_aliasa.o \ - $(BUILDDIR)/obj/r_drawa.o \ - $(BUILDDIR)/obj/r_edgea.o \ - $(BUILDDIR)/obj/r_varsa.o \ - $(BUILDDIR)/obj/surf16.o \ - $(BUILDDIR)/obj/surf8.o \ - $(BUILDDIR)/obj/surf8fst.o \ - $(BUILDDIR)/obj/worlda.o \ - $(BUILDDIR)/obj/r_aclipa.o \ - $(BUILDDIR)/obj/snd_mixa.o \ - $(BUILDDIR)/obj/sys_dosa.o + $(BUILDDIR)/d_draw.o \ + $(BUILDDIR)/d_draw16.o \ + $(BUILDDIR)/d_parta.o \ + $(BUILDDIR)/d_polysa.o \ + $(BUILDDIR)/d_scana.o \ + $(BUILDDIR)/d_spr8.o \ + $(BUILDDIR)/d_varsa.o \ + $(BUILDDIR)/math.o \ + $(BUILDDIR)/r_aliasa.o \ + $(BUILDDIR)/r_drawa.o \ + $(BUILDDIR)/r_edgea.o \ + $(BUILDDIR)/r_varsa.o \ + $(BUILDDIR)/surf16.o \ + $(BUILDDIR)/surf8.o \ + $(BUILDDIR)/surf8fst.o \ + $(BUILDDIR)/worlda.o \ + $(BUILDDIR)/r_aclipa.o \ + $(BUILDDIR)/snd_mixa.o \ + $(BUILDDIR)/sys_dosa.o -$(BUILDDIR)/engoo.x11 : $(X11_OBJS) +$(MASTER_DIR)/engoo.x11 : $(X11_OBJS) $(CC) $(CFLAGS) -o $@ $(X11_OBJS) $(XLDFLAGS) $(LDFLAGS) -$(BUILDDIR)/obj/atexit.o : $(MOUNT_DIR)/../dumb/core/atexit.c +$(BUILDDIR)/atexit.o : $(MOUNT_DIR)/../dumb/core/atexit.c $(DO_CC) -$(BUILDDIR)/obj/duhlen.o : $(MOUNT_DIR)/../dumb/core/duhlen.c +$(BUILDDIR)/duhlen.o : $(MOUNT_DIR)/../dumb/core/duhlen.c $(DO_CC) -$(BUILDDIR)/obj/duhtag.o : $(MOUNT_DIR)/../dumb/core/duhtag.c +$(BUILDDIR)/duhtag.o : $(MOUNT_DIR)/../dumb/core/duhtag.c $(DO_CC) -$(BUILDDIR)/obj/dumbfile.o : $(MOUNT_DIR)/../dumb/core/dumbfile.c +$(BUILDDIR)/dumbfile.o : $(MOUNT_DIR)/../dumb/core/dumbfile.c $(DO_CC) -$(BUILDDIR)/obj/loadduh.o : $(MOUNT_DIR)/../dumb/core/loadduh.c +$(BUILDDIR)/loadduh.o : $(MOUNT_DIR)/../dumb/core/loadduh.c $(DO_CC) -$(BUILDDIR)/obj/makeduh.o : $(MOUNT_DIR)/../dumb/core/makeduh.c +$(BUILDDIR)/makeduh.o : $(MOUNT_DIR)/../dumb/core/makeduh.c $(DO_CC) -$(BUILDDIR)/obj/rawsig.o : $(MOUNT_DIR)/../dumb/core/rawsig.c +$(BUILDDIR)/rawsig.o : $(MOUNT_DIR)/../dumb/core/rawsig.c $(DO_CC) -$(BUILDDIR)/obj/readduh.o : $(MOUNT_DIR)/../dumb/core/readduh.c +$(BUILDDIR)/readduh.o : $(MOUNT_DIR)/../dumb/core/readduh.c $(DO_CC) -$(BUILDDIR)/obj/register.o : $(MOUNT_DIR)/../dumb/core/register.c +$(BUILDDIR)/register.o : $(MOUNT_DIR)/../dumb/core/register.c $(DO_CC) -$(BUILDDIR)/obj/rendduh.o : $(MOUNT_DIR)/../dumb/core/rendduh.c +$(BUILDDIR)/rendduh.o : $(MOUNT_DIR)/../dumb/core/rendduh.c $(DO_CC) -$(BUILDDIR)/obj/rendsig.o : $(MOUNT_DIR)/../dumb/core/rendsig.c +$(BUILDDIR)/rendsig.o : $(MOUNT_DIR)/../dumb/core/rendsig.c $(DO_CC) -$(BUILDDIR)/obj/unload.o : $(MOUNT_DIR)/../dumb/core/unload.c +$(BUILDDIR)/unload.o : $(MOUNT_DIR)/../dumb/core/unload.c $(DO_CC) -$(BUILDDIR)/obj/clickrem.o : $(MOUNT_DIR)/../dumb/helpers/clickrem.c +$(BUILDDIR)/clickrem.o : $(MOUNT_DIR)/../dumb/helpers/clickrem.c $(DO_CC) -$(BUILDDIR)/obj/memfile.o : $(MOUNT_DIR)/../dumb/helpers/memfile.c +$(BUILDDIR)/memfile.o : $(MOUNT_DIR)/../dumb/helpers/memfile.c $(DO_CC) -$(BUILDDIR)/obj/resample.o : $(MOUNT_DIR)/../dumb/helpers/resample.c +$(BUILDDIR)/resample.o : $(MOUNT_DIR)/../dumb/helpers/resample.c $(DO_CC) -$(BUILDDIR)/obj/sampbuf.o : $(MOUNT_DIR)/../dumb/helpers/sampbuf.c +$(BUILDDIR)/sampbuf.o : $(MOUNT_DIR)/../dumb/helpers/sampbuf.c $(DO_CC) -$(BUILDDIR)/obj/silence.o : $(MOUNT_DIR)/../dumb/helpers/silence.c +$(BUILDDIR)/silence.o : $(MOUNT_DIR)/../dumb/helpers/silence.c $(DO_CC) -$(BUILDDIR)/obj/stdfile.o : $(MOUNT_DIR)/../dumb/helpers/stdfile.c +$(BUILDDIR)/stdfile.o : $(MOUNT_DIR)/../dumb/helpers/stdfile.c $(DO_CC) -$(BUILDDIR)/obj/itload.o : $(MOUNT_DIR)/../dumb/it/itload.c +$(BUILDDIR)/itload.o : $(MOUNT_DIR)/../dumb/it/itload.c $(DO_CC) -$(BUILDDIR)/obj/itread.o : $(MOUNT_DIR)/../dumb/it/itread.c +$(BUILDDIR)/itread.o : $(MOUNT_DIR)/../dumb/it/itread.c $(DO_CC) -$(BUILDDIR)/obj/itload2.o : $(MOUNT_DIR)/../dumb/it/itload2.c +$(BUILDDIR)/itload2.o : $(MOUNT_DIR)/../dumb/it/itload2.c $(DO_CC) -$(BUILDDIR)/obj/itread2.o : $(MOUNT_DIR)/../dumb/it/itread2.c +$(BUILDDIR)/itread2.o : $(MOUNT_DIR)/../dumb/it/itread2.c $(DO_CC) -$(BUILDDIR)/obj/itrender.o : $(MOUNT_DIR)/../dumb/it/itrender.c +$(BUILDDIR)/itrender.o : $(MOUNT_DIR)/../dumb/it/itrender.c $(DO_CC) -$(BUILDDIR)/obj/itunload.o : $(MOUNT_DIR)/../dumb/it/itunload.c +$(BUILDDIR)/itunload.o : $(MOUNT_DIR)/../dumb/it/itunload.c $(DO_CC) -$(BUILDDIR)/obj/loads3m.o : $(MOUNT_DIR)/../dumb/it/loads3m.c +$(BUILDDIR)/loads3m.o : $(MOUNT_DIR)/../dumb/it/loads3m.c $(DO_CC) -$(BUILDDIR)/obj/reads3m.o : $(MOUNT_DIR)/../dumb/it/reads3m.c +$(BUILDDIR)/reads3m.o : $(MOUNT_DIR)/../dumb/it/reads3m.c $(DO_CC) -$(BUILDDIR)/obj/loadxm.o : $(MOUNT_DIR)/../dumb/it/loadxm.c +$(BUILDDIR)/loadxm.o : $(MOUNT_DIR)/../dumb/it/loadxm.c $(DO_CC) -$(BUILDDIR)/obj/readxm.o : $(MOUNT_DIR)/../dumb/it/readxm.c +$(BUILDDIR)/readxm.o : $(MOUNT_DIR)/../dumb/it/readxm.c $(DO_CC) -$(BUILDDIR)/obj/loadmod.o : $(MOUNT_DIR)/../dumb/it/loadmod.c +$(BUILDDIR)/loadmod.o : $(MOUNT_DIR)/../dumb/it/loadmod.c $(DO_CC) -$(BUILDDIR)/obj/readmod.o : $(MOUNT_DIR)/../dumb/it/readmod.c +$(BUILDDIR)/readmod.o : $(MOUNT_DIR)/../dumb/it/readmod.c $(DO_CC) -$(BUILDDIR)/obj/loads3m2.o : $(MOUNT_DIR)/../dumb/it/loads3m2.c +$(BUILDDIR)/loads3m2.o : $(MOUNT_DIR)/../dumb/it/loads3m2.c $(DO_CC) -$(BUILDDIR)/obj/reads3m2.o : $(MOUNT_DIR)/../dumb/it/reads3m2.c +$(BUILDDIR)/reads3m2.o : $(MOUNT_DIR)/../dumb/it/reads3m2.c $(DO_CC) -$(BUILDDIR)/obj/loadxm2.o : $(MOUNT_DIR)/../dumb/it/loadxm2.c +$(BUILDDIR)/loadxm2.o : $(MOUNT_DIR)/../dumb/it/loadxm2.c $(DO_CC) -$(BUILDDIR)/obj/readxm2.o : $(MOUNT_DIR)/../dumb/it/readxm2.c +$(BUILDDIR)/readxm2.o : $(MOUNT_DIR)/../dumb/it/readxm2.c $(DO_CC) -$(BUILDDIR)/obj/loadmod2.o : $(MOUNT_DIR)/../dumb/it/loadmod2.c +$(BUILDDIR)/loadmod2.o : $(MOUNT_DIR)/../dumb/it/loadmod2.c $(DO_CC) -$(BUILDDIR)/obj/readmod2.o : $(MOUNT_DIR)/../dumb/it/readmod2.c +$(BUILDDIR)/readmod2.o : $(MOUNT_DIR)/../dumb/it/readmod2.c $(DO_CC) -$(BUILDDIR)/obj/xmeffect.o : $(MOUNT_DIR)/../dumb/it/xmeffect.c +$(BUILDDIR)/xmeffect.o : $(MOUNT_DIR)/../dumb/it/xmeffect.c $(DO_CC) -$(BUILDDIR)/obj/itorder.o : $(MOUNT_DIR)/../dumb/it/itorder.c +$(BUILDDIR)/itorder.o : $(MOUNT_DIR)/../dumb/it/itorder.c $(DO_CC) -$(BUILDDIR)/obj/itmisc.o : $(MOUNT_DIR)/../dumb/it/itmisc.c +$(BUILDDIR)/itmisc.o : $(MOUNT_DIR)/../dumb/it/itmisc.c $(DO_CC) #### -$(BUILDDIR)/obj/cl_demo.o : $(MOUNT_DIR)/cl_demo.c +$(BUILDDIR)/cl_demo.o : $(MOUNT_DIR)/cl_demo.c $(DO_X11_CC) -$(BUILDDIR)/obj/cl_input.o : $(MOUNT_DIR)/cl_input.c +$(BUILDDIR)/cl_input.o : $(MOUNT_DIR)/cl_input.c $(DO_X11_CC) -$(BUILDDIR)/obj/cl_main.o : $(MOUNT_DIR)/cl_main.c +$(BUILDDIR)/cl_main.o : $(MOUNT_DIR)/cl_main.c $(DO_X11_CC) -$(BUILDDIR)/obj/cl_parse.o : $(MOUNT_DIR)/cl_parse.c +$(BUILDDIR)/cl_parse.o : $(MOUNT_DIR)/cl_parse.c $(DO_X11_CC) -$(BUILDDIR)/obj/cl_tent.o : $(MOUNT_DIR)/cl_tent.c +$(BUILDDIR)/cl_tent.o : $(MOUNT_DIR)/cl_tent.c $(DO_X11_CC) -$(BUILDDIR)/obj/chase.o : $(MOUNT_DIR)/chase.c +$(BUILDDIR)/chase.o : $(MOUNT_DIR)/chase.c $(DO_X11_CC) -$(BUILDDIR)/obj/cmd.o : $(MOUNT_DIR)/cmd.c +$(BUILDDIR)/cmd.o : $(MOUNT_DIR)/cmd.c $(DO_X11_CC) -$(BUILDDIR)/obj/common.o : $(MOUNT_DIR)/common.c +$(BUILDDIR)/common.o : $(MOUNT_DIR)/common.c $(DO_X11_DEBUG_CC) -$(BUILDDIR)/obj/console.o : $(MOUNT_DIR)/console.c +$(BUILDDIR)/console.o : $(MOUNT_DIR)/console.c $(DO_X11_CC) -$(BUILDDIR)/obj/crc.o : $(MOUNT_DIR)/crc.c +$(BUILDDIR)/crc.o : $(MOUNT_DIR)/crc.c $(DO_X11_CC) -$(BUILDDIR)/obj/cvar.o : $(MOUNT_DIR)/cvar.c +$(BUILDDIR)/cvar.o : $(MOUNT_DIR)/cvar.c $(DO_X11_CC) -$(BUILDDIR)/obj/draw.o : $(MOUNT_DIR)/draw.c +$(BUILDDIR)/draw.o : $(MOUNT_DIR)/draw.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_edge.o : $(MOUNT_DIR)/d_edge.c +$(BUILDDIR)/d_edge.o : $(MOUNT_DIR)/d_edge.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_fill.o : $(MOUNT_DIR)/d_fill.c +$(BUILDDIR)/d_fill.o : $(MOUNT_DIR)/d_fill.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_init.o : $(MOUNT_DIR)/d_init.c +$(BUILDDIR)/d_init.o : $(MOUNT_DIR)/d_init.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_modech.o : $(MOUNT_DIR)/d_modech.c +$(BUILDDIR)/d_modech.o : $(MOUNT_DIR)/d_modech.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_part.o : $(MOUNT_DIR)/d_part.c +$(BUILDDIR)/d_part.o : $(MOUNT_DIR)/d_part.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_polyse.o : $(MOUNT_DIR)/d_polyse.c +$(BUILDDIR)/d_polyse.o : $(MOUNT_DIR)/d_polyse.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_scan.o : $(MOUNT_DIR)/d_scan.c +$(BUILDDIR)/d_scan.o : $(MOUNT_DIR)/d_scan.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_sky.o : $(MOUNT_DIR)/d_sky.c +$(BUILDDIR)/d_sky.o : $(MOUNT_DIR)/d_sky.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_sprite.o : $(MOUNT_DIR)/d_sprite.c +$(BUILDDIR)/d_sprite.o : $(MOUNT_DIR)/d_sprite.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_surf.o : $(MOUNT_DIR)/d_surf.c +$(BUILDDIR)/d_surf.o : $(MOUNT_DIR)/d_surf.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_vars.o : $(MOUNT_DIR)/d_vars.c +$(BUILDDIR)/d_vars.o : $(MOUNT_DIR)/d_vars.c $(DO_X11_CC) -$(BUILDDIR)/obj/d_zpoint.o : $(MOUNT_DIR)/d_zpoint.c +$(BUILDDIR)/d_zpoint.o : $(MOUNT_DIR)/d_zpoint.c $(DO_X11_CC) -$(BUILDDIR)/obj/host.o : $(MOUNT_DIR)/host.c +$(BUILDDIR)/host.o : $(MOUNT_DIR)/host.c $(DO_X11_CC) -$(BUILDDIR)/obj/host_cmd.o : $(MOUNT_DIR)/host_cmd.c +$(BUILDDIR)/host_cmd.o : $(MOUNT_DIR)/host_cmd.c $(DO_X11_CC) -$(BUILDDIR)/obj/keys.o : $(MOUNT_DIR)/keys.c +$(BUILDDIR)/keys.o : $(MOUNT_DIR)/keys.c $(DO_X11_CC) -$(BUILDDIR)/obj/menu.o : $(MOUNT_DIR)/menu.c +$(BUILDDIR)/menu.o : $(MOUNT_DIR)/menu.c $(DO_X11_CC) -$(BUILDDIR)/obj/mathlib.o : $(MOUNT_DIR)/mathlib.c +$(BUILDDIR)/mathlib.o : $(MOUNT_DIR)/mathlib.c $(DO_X11_CC) -$(BUILDDIR)/obj/model.o : $(MOUNT_DIR)/model.c +$(BUILDDIR)/model.o : $(MOUNT_DIR)/model.c $(DO_X11_CC) -$(BUILDDIR)/obj/model_common.o :$(MOUNT_DIR)/model_common.c +$(BUILDDIR)/model_common.o :$(MOUNT_DIR)/model_common.c $(DO_X11_CC) -$(BUILDDIR)/obj/net_dgrm.o : $(MOUNT_DIR)/net_dgrm.c +$(BUILDDIR)/net_dgrm.o : $(MOUNT_DIR)/net_dgrm.c $(DO_X11_CC) -$(BUILDDIR)/obj/net_loop.o : $(MOUNT_DIR)/net_loop.c +$(BUILDDIR)/net_loop.o : $(MOUNT_DIR)/net_loop.c $(DO_X11_CC) -$(BUILDDIR)/obj/net_main.o : $(MOUNT_DIR)/net_main.c +$(BUILDDIR)/net_main.o : $(MOUNT_DIR)/net_main.c $(DO_X11_CC) -$(BUILDDIR)/obj/net_vcr.o : $(MOUNT_DIR)/net_vcr.c +$(BUILDDIR)/net_vcr.o : $(MOUNT_DIR)/net_vcr.c $(DO_X11_CC) -$(BUILDDIR)/obj/net_udp.o : $(MOUNT_DIR)/net_udp.c +$(BUILDDIR)/net_udp.o : $(MOUNT_DIR)/net_udp.c $(DO_X11_CC) -$(BUILDDIR)/obj/net_bsd.o : $(MOUNT_DIR)/net_bsd.c +$(BUILDDIR)/net_bsd.o : $(MOUNT_DIR)/net_bsd.c $(DO_X11_CC) -$(BUILDDIR)/obj/nonintel.o : $(MOUNT_DIR)/nonintel.c +$(BUILDDIR)/nonintel.o : $(MOUNT_DIR)/nonintel.c $(DO_X11_CC) -$(BUILDDIR)/obj/pr_cmds.o : $(MOUNT_DIR)/pr_cmds.c +$(BUILDDIR)/pr_cmds.o : $(MOUNT_DIR)/pr_cmds.c $(DO_X11_CC) -$(BUILDDIR)/obj/pr_edict.o : $(MOUNT_DIR)/pr_edict.c +$(BUILDDIR)/pr_edict.o : $(MOUNT_DIR)/pr_edict.c $(DO_X11_CC) -$(BUILDDIR)/obj/pr_exec.o : $(MOUNT_DIR)/pr_exec.c +$(BUILDDIR)/pr_exec.o : $(MOUNT_DIR)/pr_exec.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_aclip.o : $(MOUNT_DIR)/r_aclip.c +$(BUILDDIR)/r_aclip.o : $(MOUNT_DIR)/r_aclip.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_alias.o : $(MOUNT_DIR)/r_alias.c +$(BUILDDIR)/r_alias.o : $(MOUNT_DIR)/r_alias.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_bsp.o : $(MOUNT_DIR)/r_bsp.c +$(BUILDDIR)/r_bsp.o : $(MOUNT_DIR)/r_bsp.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_light.o : $(MOUNT_DIR)/r_light.c +$(BUILDDIR)/r_light.o : $(MOUNT_DIR)/r_light.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_draw.o : $(MOUNT_DIR)/r_draw.c +$(BUILDDIR)/r_draw.o : $(MOUNT_DIR)/r_draw.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_efrag.o : $(MOUNT_DIR)/r_efrag.c +$(BUILDDIR)/r_efrag.o : $(MOUNT_DIR)/r_efrag.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_edge.o : $(MOUNT_DIR)/r_edge.c +$(BUILDDIR)/r_edge.o : $(MOUNT_DIR)/r_edge.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_misc.o : $(MOUNT_DIR)/r_misc.c +$(BUILDDIR)/r_misc.o : $(MOUNT_DIR)/r_misc.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_main.o : $(MOUNT_DIR)/r_main.c +$(BUILDDIR)/r_main.o : $(MOUNT_DIR)/r_main.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_sky.o : $(MOUNT_DIR)/r_sky.c +$(BUILDDIR)/r_sky.o : $(MOUNT_DIR)/r_sky.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_sprite.o : $(MOUNT_DIR)/r_sprite.c +$(BUILDDIR)/r_sprite.o : $(MOUNT_DIR)/r_sprite.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_surf.o : $(MOUNT_DIR)/r_surf.c +$(BUILDDIR)/r_surf.o : $(MOUNT_DIR)/r_surf.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_part.o : $(MOUNT_DIR)/r_part.c +$(BUILDDIR)/r_part.o : $(MOUNT_DIR)/r_part.c $(DO_X11_CC) -$(BUILDDIR)/obj/r_vars.o : $(MOUNT_DIR)/r_vars.c +$(BUILDDIR)/r_vars.o : $(MOUNT_DIR)/r_vars.c $(DO_X11_CC) -$(BUILDDIR)/obj/screen.o : $(MOUNT_DIR)/screen.c +$(BUILDDIR)/screen.o : $(MOUNT_DIR)/screen.c $(DO_X11_CC) -$(BUILDDIR)/obj/sbar.o : $(MOUNT_DIR)/sbar.c +$(BUILDDIR)/sbar.o : $(MOUNT_DIR)/sbar.c $(DO_X11_CC) -$(BUILDDIR)/obj/sv_main.o : $(MOUNT_DIR)/sv_main.c +$(BUILDDIR)/sv_main.o : $(MOUNT_DIR)/sv_main.c $(DO_X11_CC) -$(BUILDDIR)/obj/sv_phys.o : $(MOUNT_DIR)/sv_phys.c +$(BUILDDIR)/sv_phys.o : $(MOUNT_DIR)/sv_phys.c $(DO_X11_CC) -$(BUILDDIR)/obj/sv_move.o : $(MOUNT_DIR)/sv_move.c +$(BUILDDIR)/sv_move.o : $(MOUNT_DIR)/sv_move.c $(DO_X11_CC) -$(BUILDDIR)/obj/sv_user.o : $(MOUNT_DIR)/sv_user.c +$(BUILDDIR)/sv_user.o : $(MOUNT_DIR)/sv_user.c $(DO_X11_CC) -$(BUILDDIR)/obj/zone.o : $(MOUNT_DIR)/zone.c +$(BUILDDIR)/zone.o : $(MOUNT_DIR)/zone.c $(DO_X11_CC) -$(BUILDDIR)/obj/view.o : $(MOUNT_DIR)/view.c +$(BUILDDIR)/view.o : $(MOUNT_DIR)/view.c $(DO_X11_CC) -$(BUILDDIR)/obj/wad.o : $(MOUNT_DIR)/wad.c +$(BUILDDIR)/wad.o : $(MOUNT_DIR)/wad.c $(DO_X11_CC) -$(BUILDDIR)/obj/world.o : $(MOUNT_DIR)/world.c +$(BUILDDIR)/world.o : $(MOUNT_DIR)/world.c $(DO_X11_CC) -$(BUILDDIR)/obj/tracker_linux.o : $(MOUNT_DIR)/tracker_linux.c +$(BUILDDIR)/tracker_linux.o : $(MOUNT_DIR)/tracker_linux.c $(DO_X11_CC) -$(BUILDDIR)/obj/cd_null.o : $(MOUNT_DIR)/cd_null.c +$(BUILDDIR)/cd_null.o : $(MOUNT_DIR)/cd_null.c $(DO_X11_CC) -$(BUILDDIR)/obj/sys_linux.o :$(MOUNT_DIR)/sys_linux.c +$(BUILDDIR)/sys_linux.o :$(MOUNT_DIR)/sys_linux.c $(DO_X11_CC) -$(BUILDDIR)/obj/vid_x.o: $(MOUNT_DIR)/vid_x.c +$(BUILDDIR)/vid_x.o: $(MOUNT_DIR)/vid_x.c $(DO_O_CC) -$(BUILDDIR)/obj/snd_dma.o : $(MOUNT_DIR)/snd_dma.c +$(BUILDDIR)/snd_dma.o : $(MOUNT_DIR)/snd_dma.c $(DO_X11_CC) -$(BUILDDIR)/obj/snd_mem.o : $(MOUNT_DIR)/snd_mem.c +$(BUILDDIR)/snd_mem.o : $(MOUNT_DIR)/snd_mem.c $(DO_X11_CC) -$(BUILDDIR)/obj/snd_mix.o : $(MOUNT_DIR)/snd_mix.c +$(BUILDDIR)/snd_mix.o : $(MOUNT_DIR)/snd_mix.c $(DO_X11_CC) -$(BUILDDIR)/obj/snd_linux.o :$(MOUNT_DIR)/snd_linux.c +$(BUILDDIR)/snd_linux.o :$(MOUNT_DIR)/snd_linux.c $(DO_X11_CC) -$(BUILDDIR)/obj/bot.o :$(MOUNT_DIR)/bot.c +$(BUILDDIR)/bot.o :$(MOUNT_DIR)/bot.c $(DO_X11_CC) -$(BUILDDIR)/obj/nvs_client.o :$(MOUNT_DIR)/nvs_client.c +$(BUILDDIR)/nvs_client.o :$(MOUNT_DIR)/nvs_client.c $(DO_X11_CC) -$(BUILDDIR)/obj/nvs_common.o :$(MOUNT_DIR)/nvs_common.c +$(BUILDDIR)/nvs_common.o :$(MOUNT_DIR)/nvs_common.c $(DO_X11_CC) -$(BUILDDIR)/obj/nvs_server.o :$(MOUNT_DIR)/nvs_server.c +$(BUILDDIR)/nvs_server.o :$(MOUNT_DIR)/nvs_server.c $(DO_X11_CC) -$(BUILDDIR)/obj/nvs_server_data.o :$(MOUNT_DIR)/nvs_server_data.c +$(BUILDDIR)/nvs_server_data.o :$(MOUNT_DIR)/nvs_server_data.c $(DO_X11_CC) ##### -$(BUILDDIR)/obj/d_copy.o : $(MOUNT_DIR)/../asm/d_copy.s +$(BUILDDIR)/d_copy.o : $(MOUNT_DIR)/../asm/d_copy.s $(DO_AS) -$(BUILDDIR)/obj/d_draw.o : $(MOUNT_DIR)/../asm/d_draw.s +$(BUILDDIR)/d_draw.o : $(MOUNT_DIR)/../asm/d_draw.s $(DO_AS) -$(BUILDDIR)/obj/d_draw16.o : $(MOUNT_DIR)/../asm/d_draw16.s +$(BUILDDIR)/d_draw16.o : $(MOUNT_DIR)/../asm/d_draw16.s $(DO_AS) -$(BUILDDIR)/obj/d_parta.o : $(MOUNT_DIR)/../asm/d_parta.s +$(BUILDDIR)/d_parta.o : $(MOUNT_DIR)/../asm/d_parta.s $(DO_AS) -$(BUILDDIR)/obj/d_polysa.o : $(MOUNT_DIR)/../asm/d_polysa.s +$(BUILDDIR)/d_polysa.o : $(MOUNT_DIR)/../asm/d_polysa.s $(DO_AS) -$(BUILDDIR)/obj/d_scana.o : $(MOUNT_DIR)/../asm/d_scana.s +$(BUILDDIR)/d_scana.o : $(MOUNT_DIR)/../asm/d_scana.s $(DO_AS) -$(BUILDDIR)/obj/d_spr8.o : $(MOUNT_DIR)/../asm/d_spr8.s +$(BUILDDIR)/d_spr8.o : $(MOUNT_DIR)/../asm/d_spr8.s $(DO_AS) -$(BUILDDIR)/obj/d_varsa.o : $(MOUNT_DIR)/../asm/d_varsa.s +$(BUILDDIR)/d_varsa.o : $(MOUNT_DIR)/../asm/d_varsa.s $(DO_AS) -$(BUILDDIR)/obj/math.o : $(MOUNT_DIR)/../asm/math.s +$(BUILDDIR)/math.o : $(MOUNT_DIR)/../asm/math.s $(DO_AS) -$(BUILDDIR)/obj/r_aliasa.o : $(MOUNT_DIR)/../asm/r_aliasa.s +$(BUILDDIR)/r_aliasa.o : $(MOUNT_DIR)/../asm/r_aliasa.s $(DO_AS) -$(BUILDDIR)/obj/r_drawa.o : $(MOUNT_DIR)/../asm/r_drawa.s +$(BUILDDIR)/r_drawa.o : $(MOUNT_DIR)/../asm/r_drawa.s $(DO_AS) -$(BUILDDIR)/obj/r_edgea.o : $(MOUNT_DIR)/../asm/r_edgea.s +$(BUILDDIR)/r_edgea.o : $(MOUNT_DIR)/../asm/r_edgea.s $(DO_AS) -$(BUILDDIR)/obj/r_varsa.o : $(MOUNT_DIR)/../asm/r_varsa.s +$(BUILDDIR)/r_varsa.o : $(MOUNT_DIR)/../asm/r_varsa.s $(DO_AS) -$(BUILDDIR)/obj/surf16.o : $(MOUNT_DIR)/../asm/surf16.s +$(BUILDDIR)/surf16.o : $(MOUNT_DIR)/../asm/surf16.s $(DO_AS) -$(BUILDDIR)/obj/surf8.o : $(MOUNT_DIR)/../asm/surf8.s +$(BUILDDIR)/surf8.o : $(MOUNT_DIR)/../asm/surf8.s $(DO_AS) -$(BUILDDIR)/obj/surf8fst.o : $(MOUNT_DIR)/../asm/surf8fst.s +$(BUILDDIR)/surf8fst.o : $(MOUNT_DIR)/../asm/surf8fst.s $(DO_AS) -$(BUILDDIR)/obj/worlda.o : $(MOUNT_DIR)/../asm/worlda.s +$(BUILDDIR)/worlda.o : $(MOUNT_DIR)/../asm/worlda.s $(DO_AS) -$(BUILDDIR)/obj/r_aclipa.o : $(MOUNT_DIR)/../asm/r_aclipa.s +$(BUILDDIR)/r_aclipa.o : $(MOUNT_DIR)/../asm/r_aclipa.s $(DO_AS) -$(BUILDDIR)/obj/snd_mixa.o : $(MOUNT_DIR)/../asm/snd_mixa.s +$(BUILDDIR)/snd_mixa.o : $(MOUNT_DIR)/../asm/snd_mixa.s $(DO_AS) -$(BUILDDIR)/obj/sys_dosa.o : $(MOUNT_DIR)/../asm/sys_dosa.s +$(BUILDDIR)/sys_dosa.o : $(MOUNT_DIR)/../asm/sys_dosa.s $(DO_AS) ############################################################################# diff --git a/README.md b/README.md index 6d0f072..c4df849 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -Engoo -===== +Engoo X11 +========= This is a novelty engine running in software mode, aka on your CPU. This is _not_ a daily-driver Quake engine. This is featurebloat at its finest, to show off what software-rendering can do. @@ -15,8 +15,7 @@ Everything runs (including fancy water effects) except for a few things: Sound is done via OSS, not ALSA (aoss will most likely not work without raping your ears) - -Also I wouldn't bother trying to compile this with the original RELEASE ASM compiler optimsations since they seem to mess with the massive lookup table which will in return cause a segmentation fault. +Also the massive lookup table does not like ASM compiler optimisations... Also the input SUUUUUUUCKKS but that can be fixed. diff --git a/engine/bot.c b/engine/bot.c index 3d4121c..83ef90b 100644 --- a/engine/bot.c +++ b/engine/bot.c @@ -761,7 +761,6 @@ void Bot_Init (void) iMaxBotnames = 0; // id is OK as os while ((fscanf(fd, "%16[^\n]\n", cBotName[iMaxBotnames]) == 1) && !feof(fd)) { // only load 16 chars... - printf("Found botname %d...\n",iMaxBotnames); iMaxBotnames++; } diff --git a/engine/common.c b/engine/common.c index 142842b..062a347 100644 --- a/engine/common.c +++ b/engine/common.c @@ -1161,7 +1161,7 @@ void COM_InitArgv (int argc, char **argv) standard_quake = false; } - if ((COM_CheckParm ("-hipnotic")) + if ((COM_CheckParm ("-hipnotic"))) { hipnotic = true; standard_quake = false; diff --git a/engine/d_scan.c b/engine/d_scan.c index cee1621..5a5ffe0 100644 --- a/engine/d_scan.c +++ b/engine/d_scan.c @@ -20,19 +20,18 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // d_scan.c // // Portable C scan-level rasterization code, all pixel depths. +// +// TODO: Fix this mess up, some of the codes formatting is utterly broken on most editors #include "quakedef.h" #include "r_local.h" #include "d_local.h" unsigned char *r_turb_pbase, *r_turb_pdest, *r_turb_prefst;; -fixed16_t r_turb_s, r_turb_t, r_turb_sstep, r_turb_tstep; -int *r_turb_turb; -int r_turb_spancount; -// hexen II inheritance -//int ZScanCount; -//#define SCAN_SIZE 2048 -//byte scanList[SCAN_SIZE]; +fixed16_t r_turb_s, r_turb_t, r_turb_sstep, r_turb_tstep; +int *r_turb_turb; +int r_turb_spancount; + void D_DrawTurbulent8Span (void); void D_DrawTurbulent8SpanT (void); extern int fogcolr, fogcolg, fogcolb, fogthick, fogrange; // leilei - fog @@ -41,19 +40,11 @@ extern pixel_t transTable[256][256]; // for shrooms effect pixel_t waterTable[256][256]; extern float oldwateralpha; byte menumap[256][16]; // haha hack -extern pixel_t addTable[256][256]; // Additive blending effect -extern pixel_t mulTable[256][256]; // Multiply blending effect (for colormod) +extern pixel_t addTable[256][256]; // Additive blending effect +extern pixel_t mulTable[256][256]; // Multiply blending effect (for colormod) extern pixel_t ditherTable[262144][4]; -//extern pixel_t ditherTable[32768][4]; - -// leilei - turning fogmap into a static = faster by an average of a few frames -// so we do it here, we do it now, we do it forever! (or not) static byte *foggmap; -void SetFogMap (void) -{ - foggmap = (byte *)host_fogmap; -}; extern int wootel[32][32][32]; extern int reflectavailable; int gonnareflect; // well are we gonna reflect or not? @@ -62,6 +53,12 @@ extern cvar_t *r_tranquality; extern cvar_t *r_wateralpha; extern float fademap[256]; // Used in generation of certain alpha tables extern int oldwaterblend; + +void SetFogMap (void) +{ + foggmap = (byte *)host_fogmap; +} + void WaterTablgeGet (void) { float ay, ae; @@ -71,24 +68,10 @@ void WaterTablgeGet (void) ooh = (int)r_tranquality->value; - // Use these for now - ae = 0.66; - ay = 0.33; - - // or not. - - ay = r_wateralpha->value; // water surface - ae = 1 - ay; // base pixels + ae = 1 - ay; // base pixels -// newwateralpha = r_wateralpha->value; // why - //if (oldwateralpha != newwateralpha) - { -// Con_Printf ("yep"); - - - - for (l=0;l<255;l++) + for (l=0;l<255;l++) { for (c=0 ; c<255 ; c++) { @@ -109,27 +92,12 @@ void WaterTablgeGet (void) blue = host_basepal[c*3+2] *ae + ((host_basepal[l*3+2] * 0.1 * (host_basepal[c*3+2] * 0.5)) * ay); } else if (oldwaterblend == 5){ // weird alpha thing - // how it works - goes through each color row from transparent(0) to opaque (16) - // this would also be used for the future (can you say decals?) + /* how it works - goes through each color row from transparent(0) to opaque (16) + this would also be used for the future (can you say decals?) */ red = host_basepal[c*3] *(fademap[l] * ae) + (host_basepal[l*3] * (fademap[l]+0.3 * ay)); green = host_basepal[c*3+1] *(fademap[l] * ae) + (host_basepal[l*3+1] * (fademap[l]+0.3 * ay)); blue = host_basepal[c*3+2] * (fademap[l] * ae) + (host_basepal[l*3+2] * (fademap[l]+0.3 * ay)); } - /* - else if (oldwaterblend == 6){ // like above sort of - red = host_basepal[c*3] *host_basepal[l*3] + (host_basepal[l*3] * host_basepal[c*3]) / 768; - green = host_basepal[c*3+1] *host_basepal[l*3+1] + (host_basepal[l*3+1] * host_basepal[c*3+1]) / 768; - blue = host_basepal[c*3+2] *host_basepal[l*3+2]+ (host_basepal[l*3+2] * host_basepal[c*3+2]) / 768; - } - else if (oldwaterblend == 13){ // weird ass blend, black is black, but is a mix of alpha!? - - - red = host_basepal[c*3] *host_basepal[l*3] + (host_basepal[l*3] * host_basepal[c*3]) / 768; - green = host_basepal[c*3+1] *host_basepal[l*3+1] + (host_basepal[l*3+1] * host_basepal[c*3+1]) / 768; - blue = host_basepal[c*3+2] *host_basepal[l*3+2]+ (host_basepal[l*3+2] * host_basepal[c*3+2]) / 768; - - } - */ else { red = host_basepal[c*3] *ae + (host_basepal[l*3] * ay); @@ -150,14 +118,6 @@ void WaterTablgeGet (void) // fast! or i'll cry. } - } - // if (!waterTable) - // Con_Printf (".... NOT!\n"); // how are we going to fail? - // else{ -// Con_Printf ("!\n"); - - // } - } } @@ -215,7 +175,6 @@ void D_AlphaShift (void) extern void *acolormap; // FIXME: should go away - /* ============= D_WarpScreen @@ -1804,36 +1763,34 @@ D_DrawSpans8_C_Filter int kernel[2][2][2] = { { - {16384,0}, - {49152,16384} - } - , + {16384, 0}, + {49152, 16384} + }, { - {32768,49152}, - {0,32768} - } + {32768, 49152}, + {0, 32768} + } }; -int gernel[12][12][8] = +int gernel[2][11][2] = { { - {16384, 0}, - {16384, 32}, - {16384, 64}, - {16384, 128}, - {16384, 256}, - {49152, 512}, - {49152, 1024}, - {49152, 2048}, - {49152, 4096}, - {49152, 8192}, - {49152, 16384} - } - , + {16384, 0}, + {16384, 32}, + {16384, 64}, + {16384, 128}, + {16384, 256}, + {49152, 512}, + {49152, 1024}, + {49152, 2048}, + {49152, 4096}, + {49152, 8192}, + {49152, 16384} + }, { - {32768, 49152}, - {0, 32768} - } + {32768, 49152}, + {0, 32768} + } }; void D_DrawSpans8_C_Filter (espan_t *pspan) @@ -2779,60 +2736,52 @@ void D_DrawSpans16_C_Filter_64 (espan_t *pspan) //qbism- up it from 8 to 16 void D_DrawSpans16_C_Dither (espan_t *pspan) //qbism up it from 8 to 16. This + unroll = big speed gain! { - int count, spancount; - unsigned char *pbase, *pdest; - fixed16_t s, t, snext, tnext, sstep, tstep; - float sdivz, tdivz, zi, z, du, dv, spancountminus1; - float sdivzstepu, tdivzstepu, zistepu; - int n; - int forg= 0; // leilei - fog - //float forgf= 0; // leilei - alpha'ed fog - unsigned char fogg[3]; -// float fogthic; + int count, spancount; + unsigned char *pbase, *pdest; + fixed16_t s, t, snext, tnext, sstep, tstep; + float sdivz, tdivz, zi, z, du, dv, spancountminus1; + float sdivzstepu, tdivzstepu, zistepu; + int n; + int forg= 0; // leilei - fog + unsigned char fogg[3]; + unsigned short *src; -// fogthic = fogthick * 0.01; - + pbase = (unsigned char *)cacheblock; + sdivzstepu = d_sdivzstepu * 16; + tdivzstepu = d_tdivzstepu * 16; + zistepu = d_zistepu * 16; - sstep = 0; // keep compiler happy - tstep = 0; // ditto - - pbase = (unsigned char *)cacheblock; + do + { + pdest = (unsigned char *)((byte *)d_viewbuffer + + (screenwidth * pspan->v) + pspan->u); - sdivzstepu = d_sdivzstepu * 16; - tdivzstepu = d_tdivzstepu * 16; - zistepu = d_zistepu * 16; + count = pspan->count; - do - { - pdest = (unsigned char *)((byte *)d_viewbuffer + - (screenwidth * pspan->v) + pspan->u); + // calculate the initial s/z, t/z, 1/z, s, and t and clamp + du = (float)pspan->u; + dv = (float)pspan->v; - count = pspan->count; + sdivz = d_sdivzorigin + dv*d_sdivzstepv + du*d_sdivzstepu; + tdivz = d_tdivzorigin + dv*d_tdivzstepv + du*d_tdivzstepu; + zi = d_ziorigin + dv*d_zistepv + du*d_zistepu; + z = (float)0x10000 / zi; // prescale to 16.16 fixed-point - // calculate the initial s/z, t/z, 1/z, s, and t and clamp - du = (float)pspan->u; - dv = (float)pspan->v; + s = (int)(sdivz * z) + sadjust; + if (s > bbextents) + s = bbextents; + else if (s < 0) + s = 0; - sdivz = d_sdivzorigin + dv*d_sdivzstepv + du*d_sdivzstepu; - tdivz = d_tdivzorigin + dv*d_tdivzstepv + du*d_tdivzstepu; - zi = d_ziorigin + dv*d_zistepv + du*d_zistepu; - z = (float)0x10000 / zi; // prescale to 16.16 fixed-point + t = (int)(tdivz * z) + tadjust; + if (t > bbextentt) + t = bbextentt; + else if (t < 0) + t = 0; - s = (int)(sdivz * z) + sadjust; - if (s > bbextents) - s = bbextents; - else if (s < 0) - s = 0; - - t = (int)(tdivz * z) + tadjust; - if (t > bbextentt) - t = bbextentt; - else if (t < 0) - t = 0; - - do - { + do + { // calculate s and t at the far end of the span // if (count >= 16) // spancount = 16; @@ -2981,9 +2930,8 @@ void D_DrawSpans16_C_Dither (espan_t *pspan) //qbism up it from 8 to 16. This + s = snext; t = tnext; - } while (count > 0); - - } while ((pspan = pspan->pnext) != NULL); + } while (count > 0); + } while ((pspan = pspan->pnext) != NULL); } diff --git a/engine/draw.c b/engine/draw.c index d21646f..a976fbc 100644 --- a/engine/draw.c +++ b/engine/draw.c @@ -1241,8 +1241,8 @@ void MassiveLookupTablesInit (void) #ifdef _WIN32 if (erh == 53) - thepaltouse = vid_curpal; // leilei - silly experiment to try adjusted palettes as a basis - // just for recalculating the big tables to see less color clashing + thepaltouse = vid_curpal; // leilei - silly experiment to try adjusted palettes as a basis + // just for recalculating the big tables to see less color clashing else #endif thepaltouse = host_basepal; @@ -1252,13 +1252,8 @@ void MassiveLookupTablesInit (void) // if (COM_CheckParm ("-cache")) // lookupcaching = 1; // try to cache it all for future loading - -#ifdef linux - inthedos = 1; -#endif - if (inthedos) - fprintf(stderr,"\nGenerating additive table - "); - for (l=0;l<255;l++) + fprintf(stderr,"\nGenerating additive table..."); + for (l=0;l<255;l++) { for (c=0 ; c<255 ; c++) { @@ -1266,20 +1261,10 @@ void MassiveLookupTablesInit (void) green = thepaltouse[c*3+1] + thepaltouse[l*3+1]; blue = thepaltouse[c*3+2] + thepaltouse[l*3+2]; addTable[l][c] = BestColor(red,green,blue, 0, 254); - } - if (inthedos) - fprintf(stderr,"."); + } } - - // Make the Additive Lookup Table - - - - // Make the Alpha Transparency table - if (inthedos) - fprintf(stderr,"\nGenerating alpha table - "); - + fprintf(stderr,"\nGenerating alpha table..."); for (l=0;l<255;l++) { for (c=0 ; c<255 ; c++) @@ -1289,39 +1274,27 @@ void MassiveLookupTablesInit (void) blue = thepaltouse[c*3+2] *0.66 + (thepaltouse[l*3+2] * 0.33); transTable[l][c] = BestColor(red,green,blue, 0, 254); } - - if (inthedos) fprintf(stderr,"."); } - - - - if (COM_CheckParm ("-nolookups")){ nolookups = 1; - if (inthedos) - fprintf(stderr,"Color lookup tables are skipped\n"); - // hqlite = 1; // force bestcolor water - return; // we don't need your lookupation - } - if (inthedos) - fprintf(stderr,"\n---------------------\nGenerating all the lookup tables\n(If your computer is slow, this will take up to 30 seconds. Use the -nolookups \nparameter if you find this unsettling)\nYou can also skip the 18-bit generation by passing -no18\nAlternatively, you can pass -ugly for faster but ugly generation\n---------------------\n"); + fprintf(stderr,"Color lookup tables are skipped\n"); + return; + } + + fprintf(stderr,"\n\n---------------------\nGenerating all the lookup tables\n(If your computer is slow, this will take up to 30 seconds. Use the -nolookups \nparameter if you find this unsettling)\nYou can also skip the 18-bit generation by passing -no18\nAlternatively, you can pass -ugly for faster but ugly generation\n---------------------\n\n"); if (COM_CheckParm ("-ugly")){ - fprintf(stderr,"UGLY GENERAION MODE ON!\n"); + fprintf(stderr,"UGLY GENERATION MODE ON!\n"); ugly = 1;} else ugly = 0; + // Do 24bit lookup + VID_SetPalette2 (thepaltouse); - VID_SetPalette2 (thepaltouse); - { - - //printf ("da\n"); - - if (inthedos) - fprintf(stderr,"\nGenerating 15-bit lookup table - "); + fprintf(stderr,"\nGenerating 15-bit lookup table..."); for (r=0 ; r<256 ; r+=8) { for (g=0 ; g<256 ; g+=8) @@ -1331,131 +1304,85 @@ void MassiveLookupTablesInit (void) float lol = 3.6; beastcolor = BestColor (r + lol, g + lol, b + lol, 0, 254); palmap[r>>3][g>>3][b>>3] = beastcolor; -// palmap3[r>>3>>10 + g>>3>>5 + b>>3] = beastcolor; - // andrewj's crud here - { int k; - int pix = ((r >> 3) << 10) | ((g >> 3) << 5) | (b >> 3); - - int rr = r - 4; - int gg = g - 4; - int bb = b - 4; - - int col[4]; - int ity[4]; - byte *found; + // andrewj's crud here + int k; + int pix = ((r >> 3) << 10) | ((g >> 3) << 5) | (b >> 3); + int rr = r - 4; + int gg = g - 4; + int bb = b - 4; + int col[4]; + int ity[4]; + byte *found; - for (k = 0 ; k < 4 ; k++) - { - col[k] = BestColor(rr + lol, gg + lol, bb + lol, 0, 254); + for (k = 0 ; k < 4 ; k++) + { + col[k] = BestColor(rr + lol, gg + lol, bb + lol, 0, 254); - // apply error term - found = thepaltouse + col[k] * 3; - - rr += (rr - (int)found[0]); - gg += (gg - (int)found[1]); - bb += (bb - (int)found[2]); - - ity[k] = found[0] + found[1] + found[2]; - } - - // sort colors by intensity - for (rr = 0 ; rr < 4 ; rr++) - for (k = 0 ; k < 3 ; k++) - { - if (ity[k] < ity[k+1]) - { - gg = col[k] ; col[k] = col[k+1] ; col[k+1] = gg; - gg = ity[k] ; ity[k] = ity[k+1] ; ity[k+1] = gg; - } - } - - ditherTable[pix][0] = col[0]; - ditherTable[pix][3] = col[1]; - ditherTable[pix][2] = col[2]; - ditherTable[pix][1] = col[3]; - - } + // apply error term + found = thepaltouse + col[k] * 3; + rr += (rr - (int)found[0]); + gg += (gg - (int)found[1]); + bb += (bb - (int)found[2]); + ity[k] = found[0] + found[1] + found[2]; + } + // sort colors by intensity + for (rr = 0 ; rr < 4 ; rr++) + for (k = 0 ; k < 3 ; k++) + { + if (ity[k] < ity[k+1]) + { + gg = col[k] ; col[k] = col[k+1] ; col[k+1] = gg; + gg = ity[k] ; ity[k] = ity[k+1] ; ity[k+1] = gg; + } + } + ditherTable[pix][0] = col[0]; + ditherTable[pix][3] = col[1]; + ditherTable[pix][2] = col[2]; + ditherTable[pix][1] = col[3]; } } - if (inthedos) - fprintf(stderr,"."); // yep do the dot thing. it's a big 32k table so we have to } - } - if (!palmap) - if (inthedos) - - fprintf(stderr,"FAILED!\n"); - else{ - if (inthedos) - fprintf(stderr,"!\n"); - - - } - + printf(stderr,"FAILED!\n"); // Make the 18-bit lookup table here // This is a HUGE 256kb table, the biggest there is here // TODO: Option to enable this // if (r_lightquality->value){ - if (COM_CheckParm ("-no18")){ - if (inthedos) - fprintf(stderr,"\n18-bit lookup generation skipped - High quality light mode DISABLED!\n"); - } + if (COM_CheckParm ("-no18")) + fprintf(stderr,"\n18-bit lookup generation skipped - High quality light mode DISABLED!\n"); else - { -// if(!lookupcaching) // when in -cache, skip the files loading for regeneration -// fileinfo3 = COM_LoadHunkFile ("palmap2.lmp"); -// if (!fileinfo3) - { - - if (inthedos) - fprintf(stderr,"\nGenerating 18-bit lookup table - "); - for (r=0 ; r<256 ; r+=4) - { - for (g=0 ; g<256 ; g+=4) + { + fprintf(stderr,"\nGenerating 18-bit lookup table..."); + + for (r=0 ; r<256 ; r+=4) { - for (b=0 ; b<256 ; b+=4) + for (g=0 ; g<256 ; g+=4) { - if (ugly) beastcolor = FindColor (r, g, b); - else - beastcolor = BestColor (r, g, b, 0, 254); - palmap2[r>>2][g>>2][b>>2] = beastcolor; - - - + for (b=0 ; b<256 ; b+=4) + { + if (ugly) + beastcolor = FindColor (r, g, b); + else + beastcolor = BestColor (r, g, b, 0, 254); + + palmap2[r>>2][g>>2][b>>2] = beastcolor; + } } } - if (inthedos) - fprintf(stderr,"."); // yep do the dot thing. it's a big 256k table so we have to - } - - } - if (!palmap2) - if (inthedos) - fprintf(stderr,"FAILED!\n"); - else{ - if (inthedos) - fprintf(stderr,"!\n"); - + + if (!palmap2) + printf(stderr,"FAILED!\n"); } - } -// } - // what follows are 3 big 64kb lookup tables. pretty funny when you have this little 32kb - // 15to8 table up there + fprintf(stderr,"\nGenerating additive table..."); -// printf ("\nGenerating rgb color surface clamping table - "); - - // Make the Additive Lookup Table - if (inthedos) - fprintf(stderr,"\nGenerating additive table - "); - for (l=0;l<255;l++) + for (l=0;l<255;l++) { for (c=0 ; c<255 ; c++) { @@ -1465,25 +1392,16 @@ void MassiveLookupTablesInit (void) if (ugly) addTable[l][c] = FindColor(red,green,blue); else addTable[l][c] = BestColor(red,green,blue, 0, 254); - } - if (inthedos) - fprintf(stderr,"."); + } } + if (!addTable) - if (inthedos) - fprintf(stderr,"FAILED!\n"); - else{ + printf(stderr,"FAILED!\n"); - if (inthedos) - fprintf(stderr,"!\n"); - - - } - // Make the Multiply Lookup Table which doesn't work - if (inthedos) - fprintf(stderr,"\nGenerating multiply blend table - "); - for (l=0;l<255;l++) + fprintf(stderr,"\nGenerating multiply blend table..."); + + for (l=0;l<255;l++) { for (c=0 ; c<255 ; c++) { @@ -1496,32 +1414,21 @@ void MassiveLookupTablesInit (void) blue = ((thepaltouse[l*3+2] * erp * (thepaltouse[c*3+2] * ee)) * er); if (red>255) red=255; if (green>255) green=255; if (blue>255) blue=255; - if (ugly) mulTable[l][c] = FindColor(red,green,blue); - else - mulTable[l][c] = BestColor(red,green,blue, 0, 223); - } - if (inthedos) - fprintf(stderr,"."); + if (ugly) + mulTable[l][c] = FindColor(red,green,blue); + else + mulTable[l][c] = BestColor(red,green,blue, 0, 223); + } } - if (!mulTable) - if (inthedos) - fprintf(stderr,"FAILED!\n"); - else{ - if (inthedos) - fprintf(stderr,"!\n"); - -#ifdef linux - inthedos = 0; -#endif - - } + if (!mulTable) + printf(stderr,"FAILED!\n"); -// if(palmap2) - PalmapStaticized(); +// if(palmap2) + PalmapStaticized(); - // Caching lookups to disk, possibly folder unfriendly. + // TODO: Caching lookups to disk, possibly folder unfriendly. /* if (lookupcaching){ if (palmap) @@ -1537,24 +1444,19 @@ void MassiveLookupTablesInit (void) if (ditherTable) COM_WriteFile ("dithtab.lmp", ditherTable, 262144); // good lord this is huge. - }*/ + } +*/ + + int ahe; + for (ahe=0; ahe<256; ahe++) + { + if (ahe < host_fullbrights) + fbs[ahe] = 0; + else + fbs[ahe] = mulTable[ahe][6]; + } - - { - int ahe; - - for (ahe=0; ahe<256; ahe++) - { - if (ahe < host_fullbrights) - fbs[ahe] = 0; - - else - fbs[ahe] = mulTable[ahe][6]; - } - - } - - GrabColorMapRGB(); + GrabColorMapRGB(); } // mangled a bit from grabcolormap diff --git a/engine/host.c b/engine/host.c index 7586cde..34826f7 100644 --- a/engine/host.c +++ b/engine/host.c @@ -1111,7 +1111,7 @@ void VID_SetPalette2 (unsigned char *palette) FILE *f; char s[255]; float gamma = 0; - Con_Printf ("Making 8to24 lookup tables."); + Con_Printf ("Making 8to24 lookup tables..."); // // 8 8 8 encoding // @@ -1119,7 +1119,6 @@ void VID_SetPalette2 (unsigned char *palette) table = d_8to24table; for (i=0 ; i<256 ; i++) { - Con_Printf ("."); // loop an indicator r = pal[0]; g = pal[1]; b = pal[2]; @@ -1155,8 +1154,6 @@ void ColormapForceLoad (void) Sys_Error ("Couldn't load gfx/colormap.lmp"); host_colormap = fileinfo->data; - - }; @@ -1227,84 +1224,77 @@ void Palette_Init (void) #endif if(pre100 == 1){ - /* fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); - if (!fileinfo) - - Sys_Error ("Couldn't load gfx/colormap.lmp"); - */ - host_colormap = malloc(16384); - - - host_fullbrights = 256-host_colormap[16384]; // leilei - variable our fullbright counts if available + host_colormap = malloc(16384); + // leilei - variable our fullbright counts if available + host_fullbrights = 256-host_colormap[16384]; } else { - fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); - if (!fileinfo) + fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); - Sys_Error ("Couldnf't load gfx/colormap.lmp"); - host_colormap = fileinfo->data; - fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); - host_colormap_red = fileinfo->data; - fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); - host_colormap_green = fileinfo->data; - fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); - host_colormap_blue = fileinfo->data; + if (!fileinfo) + Sys_Error ("Couldnf't load gfx/colormap.lmp"); + host_colormap = fileinfo->data; + fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); + host_colormap_red = fileinfo->data; + fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); + host_colormap_green = fileinfo->data; + fileinfo = COM_LoadHunkFile ("gfx/colormap.lmp"); + host_colormap_blue = fileinfo->data; - host_fullbrights = 256-host_colormap[16384]; // leilei - variable our fullbright counts if available + // leilei - variable our fullbright counts if available + host_fullbrights = 256-host_colormap[16384]; } - if (COM_CheckParm ("-glsuck")){ + if (COM_CheckParm ("-glsuck")) + { overbrights = 0; fullbrights = 0; host_fullbrights = 255; GrabColorMap(); } - if (COM_CheckParm ("-nooverbright")){ + if (COM_CheckParm ("-nooverbright")) + { overbrights = 0; GrabColorMap(); } - if (pre100 == 1){ + if (pre100 == 1) + { overbrights = 0; fullbrights = 32; // pre 1.00 didn't have the number of brights stored. :( GrabColorMap(); } - if (COM_CheckParm ("-nofb")){ + if (COM_CheckParm ("-nofb")) + { host_fullbrights = 0; fullbrights = 0; GrabColorMap(); } - if (host_basepal != host_otherpal){ + + if (host_basepal != host_otherpal){ // Make a translation table for converting stuff that uses otherpal to our new pal translate_bsp = 1; #ifdef EGAHACK InitRemap(host_origpal); //GrabColorMapEGA(); TranslateColorMapEGA(); - #else InitRemap(host_otherpal); GrabColorMap(); #endif - } + } // Fog - - host_fogmap = malloc(16384);//fileinfo->data; - - - GrabColorMapNoFB(); - - - - MakeMy15to8(host_basepal); + host_fogmap = malloc(16384);//fileinfo->data; + GrabColorMapNoFB(); + MakeMy15to8(host_basepal); } diff --git a/engine/r_main.c b/engine/r_main.c index 1ee628d..65659dc 100644 --- a/engine/r_main.c +++ b/engine/r_main.c @@ -1983,7 +1983,7 @@ if (!reflectpass) if(!reflectpass){ // if (r_docrap) if (amilow) // 160x100 - D_CrapScreenMH (); + D_CrapScreen (); else { diff --git a/engine/r_misc.c b/engine/r_misc.c index 8278bca..5c5609c 100644 --- a/engine/r_misc.c +++ b/engine/r_misc.c @@ -483,7 +483,65 @@ void R_SetupFrame (void) if ((r_dowarp != r_dowarpold) || r_viewchanged || r_virtualmode->value || lcd_x->value || v_detail->value) { - if (r_docrap) + if (r_docrap == 1) + { + if ((vid.width <= vid.maxlowwidth) && + (vid.height <= vid.maxlowheight)) + { + + + vrect.x = 0; + vrect.y = 0; + vrect.width = vid.width; + vrect.height = vid.height; + if (reflectpass){ + R_SetVrect (&vrect, &r_refdef.vrect, 0); + R_ViewChanged (&vrect, 0, vid.aspect); + } + else + { + R_SetVrect (&vrect, &r_refdef.vrect, (sb_what_lines / scalefactoid)); + R_ViewChanged (&vrect, (sb_what_lines / scalefactoid), vid.aspect); + } + + } + else + { + w = vid.width; + h = vid.height; + + if (w > vid.maxlowwidth) + { + h *= (float)vid.maxlowwidth / w; + w = vid.maxlowwidth; + } + + if (h > vid.maxlowheight) + { + h = vid.maxlowheight; + w *= (float)vid.maxlowheight / h; + } + + vrect.x = 0; + vrect.y = 0; + vrect.width = (int)w; + vrect.height = (int)h; + + if (reflectpass) + { + R_SetVrect (&vrect, &r_refdef.vrect, (h/(float)vid.height)); + R_ViewChanged (&vrect, 0, vid.aspect * (h / w) * ((float)vid.width / (float)vid.height)); + }else{ + R_SetVrect (&vrect, &r_refdef.vrect, (int)((float)sb_lines * (h/(float)vid.height))); + R_ViewChanged (&vrect, (sb_what_lines / scalefactoid), vid.aspect * (h / w) * ((float)vid.width / (float)vid.height)); + } + // R_ViewChanged (&vrect, + // (int)((float)(sb_what_lines / scalefactoid) * (h/(float)vid.height)), + // vid.aspect * (h / w) * + // ((float)vid.width / (float)vid.height)); + } + } + else if(r_docrap > 1) { if ((vid.width <= vid.maxwarpwidth) && (vid.height <= vid.maxwarpheight)) diff --git a/engine/snd_mem.c b/engine/snd_mem.c index 0bb02f9..ee5d26f 100644 --- a/engine/snd_mem.c +++ b/engine/snd_mem.c @@ -280,15 +280,13 @@ WAV loading =============================================================================== */ +static byte *data_p; +static byte *iff_end; +static byte *last_chunk; +static byte *iff_data; +static int iff_chunk_len; -byte *data_p; -byte *iff_end; -byte *last_chunk; -byte *iff_data; -int iff_chunk_len; - - -short GetLittleShort(void) +static short GetLittleShort (void) { short val = 0; val = *data_p; @@ -297,7 +295,7 @@ short GetLittleShort(void) return val; } -int GetLittleLong(void) +static int GetLittleLong (void) { int val = 0; val = *data_p; @@ -308,35 +306,33 @@ int GetLittleLong(void) return val; } -void FindNextChunk(char *name) +static void FindNextChunk (const char *name) { while (1) { - data_p=last_chunk; - - if (data_p >= iff_end) - { // didn't find the chunk - data_p = NULL; - return; - } - - data_p += 4; - iff_chunk_len = GetLittleLong(); - if (iff_chunk_len < 0) + // Need at least 8 bytes for a chunk + if (last_chunk + 8 >= iff_end) { data_p = NULL; return; } -// if (iff_chunk_len > 1024*1024) -// Sys_Error ("FindNextChunk: %i length is past the 1 meg sanity limit", iff_chunk_len); + + data_p = last_chunk + 4; + iff_chunk_len = GetLittleLong(); + if (iff_chunk_len < 0 || iff_chunk_len > iff_end - data_p) + { + data_p = NULL; + Con_DPrintf("bad \"%s\" chunk length (%d)\n", name, iff_chunk_len); + return; + } + last_chunk = data_p + ((iff_chunk_len + 1) & ~1); data_p -= 8; - last_chunk = data_p + 8 + ( (iff_chunk_len + 1) & ~1 ); - if (!strncmp(data_p, name, 4)) + if (!strncmp((char *)data_p, name, 4)) return; } } -void FindChunk(char *name) +static void FindChunk (const char *name) { last_chunk = iff_data; FindNextChunk (name); diff --git a/engine/tracker_linux.c b/engine/tracker_linux.c index ec17375..8a99634 100644 --- a/engine/tracker_linux.c +++ b/engine/tracker_linux.c @@ -100,7 +100,7 @@ void Tracker_Play(byte track, qboolean looping) void Tracker_Stop(void) { - if(bTracker_Initialized == false) + if(bTracker_Initialized == false || playing == false) return; if(!trackmod || !sr) return; @@ -133,7 +133,6 @@ void Tracker_Resume(void) Con_Printf("Resuming %s\n", name); } - static void Tracker_f (void) { char *command; @@ -221,7 +220,7 @@ int Tracker_Init(void) void Tracker_Shutdown(void) { - Tracker_Stop(); // First stop the track - close(oss_device); // Close the device + Tracker_Stop(); // First stop the track dumb_exit(); // Kill DUMB + close(oss_device); // Close the device } diff --git a/engine/wad.c b/engine/wad.c index f380c66..85af347 100644 --- a/engine/wad.c +++ b/engine/wad.c @@ -190,7 +190,12 @@ void *W_GetLumpName (char *name) lump = W_GetLumpinfo (name); + if(lump) + //Sys_Error("Couldn't find lumpname for %s!\n"); + return (void *)(wad_base + lump->filepos); + + return NULL; } void *W_GetLumpName2 (char *name)