diff --git a/polymer/build/Makefile b/polymer/build/Makefile index d63ef074d..f57d57305 100644 --- a/polymer/build/Makefile +++ b/polymer/build/Makefile @@ -55,7 +55,7 @@ asm=nasm # ifneq ($(RELEASE),0) # Debugging disabled - debug=-fomit-frame-pointer -ftree-vectorize -finline-small-functions -fpredictive-commoning -funswitch-loops -O$(OPTLEVEL) + debug=-fomit-frame-pointer -funswitch-loops -O$(OPTLEVEL) else # Debugging enabled debug=-ggdb -O0 -DDEBUGGINGAIDS -DNOSDLPARACHUTE @@ -67,6 +67,22 @@ AS=nasm RC=windres AR=ar RANLIB=ranlib + +GCC_MAJOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f1) +GCC_MINOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f2) + +ifeq (4,$(GCC_MAJOR)) + debug += -ftree-vectorize + ifneq (0,$(GCC_MINOR)) + ifneq (1,$(GCC_MINOR)) + ifneq (2,$(GCC_MINOR)) + # this should only enable for 4.3.0 and later + debug += -finline-small-functions -fpredictive-commoning + endif + endif + endif +endif + OURCFLAGS=$(debug) -W -Wall -Wimplicit -Wno-char-subscripts \ -funsigned-char -fno-strict-aliasing -DNO_GCC_BUILTINS \ -DKSFORBUILD -I$(INC) diff --git a/polymer/build/src/build.c b/polymer/build/src/build.c index 396681171..0f60b281d 100644 --- a/polymer/build/src/build.c +++ b/polymer/build/src/build.c @@ -4489,7 +4489,7 @@ CANCEL: //tsprite[m].picnum = sprite[i].sectnum; //tsprite[m].owner = sprite[i].statnum; - j = insertsprite(tsprite[m].picnum+(numsectors-MAXSECTORS),tsprite[m].owner); + j = insertsprite(spriteext[m].mdanimcur+(numsectors-MAXSECTORS),spriteext[m].angoff); Bmemcpy(&sprite[j],&sprite[m],sizeof(spritetype)); //sprite[j].sectnum = tsprite[m].picnum+(numsectors-MAXSECTORS); //sprite[j].statnum = tsprite[m].owner; diff --git a/polymer/eduke32/Makefile b/polymer/eduke32/Makefile index f212ba86c..1cedc293c 100644 --- a/polymer/eduke32/Makefile +++ b/polymer/eduke32/Makefile @@ -36,7 +36,7 @@ o=o ifneq (0,$(RELEASE)) # Debugging disabled - debug=-fomit-frame-pointer -ftree-vectorize -finline-small-functions -fpredictive-commoning -funswitch-loops -O$(OPTLEVEL) + debug=-fomit-frame-pointer -funswitch-loops -O$(OPTLEVEL) else # Debugging enabled debug=-ggdb -O0 -DDEBUGGINGAIDS @@ -45,6 +45,20 @@ endif CC=gcc CXX=g++ +GCC_MAJOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f1) +GCC_MINOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f2) + +ifeq (4,$(GCC_MAJOR)) + debug += -ftree-vectorize + ifneq (0,$(GCC_MINOR)) + ifneq (1,$(GCC_MINOR)) + ifneq (2,$(GCC_MINOR)) + debug += -finline-small-functions -fpredictive-commoning + endif + endif + endif +endif + OURCFLAGS=$(debug) -W -Wall -Wimplicit -Werror-implicit-function-declaration \ -funsigned-char -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT \ -I$(INC) -I$(EINC) -I$(SRC)/jmact -I$(SRC)/jaudiolib @@ -139,6 +153,7 @@ ifeq ($(PLATFORM),LINUX) OURCFLAGS += -fno-pic NASMFLAGS += -f elf LIBS += -lvorbisfile -lvorbis -logg + USE_OPENAL = 0 endif ifeq ($(PLATFORM),DARWIN) diff --git a/polymer/eduke32/source/game.c b/polymer/eduke32/source/game.c index 218754232..ce9db9a35 100644 --- a/polymer/eduke32/source/game.c +++ b/polymer/eduke32/source/game.c @@ -3799,8 +3799,8 @@ void displayrest(int smoothratio) if (map[(ud.volume_number*MAXLEVELS) + ud.level_number].name != NULL) { if (currentboardfilename[0] != 0 && ud.volume_number == 0 && ud.level_number == 7) - menutext_(160,75,(sintable[(totalclock<<5)&2047]>>11),0,currentboardfilename,bits); - else menutext_(160,75,(sintable[(totalclock<<5)&2047]>>11),0,map[(ud.volume_number*MAXLEVELS) + ud.level_number].name,bits); + menutext_(160,75,-leveltexttime+22/*(sintable[(totalclock<<5)&2047]>>11)*/,0,currentboardfilename,bits); + else menutext_(160,75,-leveltexttime+22/*(sintable[(totalclock<<5)&2047]>>11)*/,0,map[(ud.volume_number*MAXLEVELS) + ud.level_number].name,bits); } } @@ -4049,6 +4049,7 @@ void drawbackground(void) else rotatesprite(320<<15,200<<15,65536L,0,GetGameVarID(g_iReturnVarID, -1, -1),bpp==8?16:8,0,2+8+64,0,0,xdim-1,ydim-1); return; } + y2 = scale(ydim,200-scale(tilesizy[BOTTOMSTATUSBAR],ud.statusbarscale,100),200); if (ud.screen_size > 8) @@ -4073,6 +4074,18 @@ void drawbackground(void) rotatesprite(x<<16,y<<16,65536L,0,dapicnum,8,0,8+16+64+128,0,windowy2,xdim-1,y2-1); } + // this is better than the HOM + if (getrendermode() == 3 && (ud.camerahoriz > 230 || ud.camerahoriz < -50)) + { + for (y=0; y<(ydim>>2); y+=tilesizy[dapicnum]) + for (x=0; x= 8 && ud.statusbarmode == 0) { @@ -4318,7 +4331,8 @@ void displayrooms(int snum,int smoothratio) if (pub > 0 || getrendermode() >= 3) // JBF 20040101: redraw background always { - if (ud.screen_size > 8 || (ud.screen_size == 8 && ud.statusbarscale<100)) drawbackground(); + if (getrendermode() >= 3 || ud.screen_size > 8 || (ud.screen_size == 8 && ud.statusbarscale<100)) + drawbackground(); pub = 0; } @@ -13013,6 +13027,7 @@ FRAGBONUS: } if (playerbest > 0) for (ii=playerbest/(26*60), ij=1; ii>9; ii/=10, ij++) ; clockpad = max(clockpad,ij); + clockpad += 2; } while (1) diff --git a/polymer/eduke32/source/menus.c b/polymer/eduke32/source/menus.c index 6b0961e1d..7392dc7a2 100644 --- a/polymer/eduke32/source/menus.c +++ b/polymer/eduke32/source/menus.c @@ -667,20 +667,21 @@ void menus(void) case 20000: x = probe(326,190,0,1); - mgametext(160,50-8,"YOU ARE PLAYING THE SHAREWARE",0,2+8+16); - mgametext(160,59-8,"VERSION OF DUKE NUKEM 3D. WHILE",0,2+8+16); - mgametext(160,68-8,"THIS VERSION IS REALLY COOL, YOU",0,2+8+16); - mgametext(160,77-8,"ARE MISSING OVER 75%% OF THE TOTAL",0,2+8+16); - mgametext(160,86-8,"GAME, ALONG WITH OTHER GREAT EXTRAS",0,2+8+16); - mgametext(160,95-8,"AND GAMES, WHICH YOU'LL GET WHEN",0,2+8+16); - mgametext(160,104-8,"YOU ORDER THE COMPLETE VERSION AND",0,2+8+16); - mgametext(160,113-8,"GET THE FINAL TWO EPISODES.",0,2+8+16); + mgametext(160,41-8,"YOU ARE PLAYING THE SHAREWARE",0,2+8+16); + mgametext(160,50-8,"VERSION OF DUKE NUKEM 3D. WHILE",0,2+8+16); + mgametext(160,59-8,"THIS VERSION IS REALLY COOL, YOU",0,2+8+16); + mgametext(160,68-8,"ARE MISSING OVER 75%% OF THE TOTAL",0,2+8+16); + mgametext(160,77-8,"GAME, ALONG WITH OTHER GREAT EXTRAS",0,2+8+16); + mgametext(160,86-8,"AND GAMES, WHICH YOU'LL GET WHEN",0,2+8+16); + mgametext(160,95-8,"YOU ORDER THE COMPLETE VERSION AND",0,2+8+16); + mgametext(160,104-8,"GET THE FINAL THREE EPISODES.",0,2+8+16); - mgametext(160,113+8,"PLEASE READ THE 'HOW TO ORDER' ITEM",0,2+8+16); - mgametext(160,122+8,"ON THE MAIN MENU IF YOU WISH TO",0,2+8+16); - mgametext(160,131+8,"UPGRADE TO THE FULL REGISTERED",0,2+8+16); - mgametext(160,140+8,"VERSION OF DUKE NUKEM 3D.",0,2+8+16); - mgametext(160,149+16,"PRESS ANY KEY...",0,2+8+16); + mgametext(160,104+8,"PLEASE READ THE 'HOW TO ORDER' ITEM",0,2+8+16); + mgametext(160,113+8,"ON THE MAIN MENU OR VISIT",0,2+8+16); + mgametext(160,122+8,"HTTP://WWW.BUY3DREALMS.COM",0,2+8+16); + mgametext(160,131+8,"TO UPGRADE TO THE FULL REGISTERED",0,2+8+16); + mgametext(160,139+8,"VERSION OF DUKE NUKEM 3D.",0,2+8+16); + mgametext(160,148+16,"PRESS ANY KEY...",0,2+8+16); if (x >= -1) cmenu(100); break;