diff -Nur jfbuild_src_20051009/include/editor.h jfbuild_src_20051009.new/include/editor.h --- jfbuild_src_20051009/include/editor.h 2005-10-09 15:23:02.000000000 +0200 +++ jfbuild_src_20051009.new/include/editor.h 2008-03-31 21:37:31.000000000 +0300 @@ -18,7 +18,7 @@ extern short temppicnum, tempcstat, templotag, temphitag, tempextra; extern char tempshade, temppal, tempxrepeat, tempyrepeat; -extern char somethingintab; +static char somethingintab; extern char buildkeys[NUMBUILDKEYS]; diff -Nur jfbuild_src_20051009/Makefile jfbuild_src_20051009.new/Makefile --- jfbuild_src_20051009/Makefile 2005-10-09 15:23:00.000000000 +0200 +++ jfbuild_src_20051009.new/Makefile 2008-03-31 21:37:31.000000000 +0300 @@ -27,7 +27,7 @@ # Debugging options # RELEASE - 1 = no debugging # EFENCE - 1 = compile with Electric Fence for malloc() debugging -RELEASE?=0 +RELEASE?=1 EFENCE?=0 # SDK locations - adjust to match your setup diff -Nur jfbuild_src_20051009/src/build.c jfbuild_src_20051009.new/src/build.c --- jfbuild_src_20051009/src/build.c 2005-10-09 15:23:00.000000000 +0200 +++ jfbuild_src_20051009.new/src/build.c 2008-03-31 21:37:32.000000000 +0300 @@ -86,7 +86,7 @@ short temppicnum, tempcstat, templotag, temphitag, tempextra; char tempshade, temppal, tempvis, tempxrepeat, tempyrepeat; -char somethingintab = 255; +static char somethingintab = 255; static char boardfilename[BMAX_PATH], selectedboardfilename[BMAX_PATH]; static struct _directoryitem { diff -Nur jfbuild_src_20051009/src/crc32.c jfbuild_src_20051009.new/src/crc32.c --- jfbuild_src_20051009/src/crc32.c 2005-10-09 15:23:00.000000000 +0200 +++ jfbuild_src_20051009.new/src/crc32.c 2008-03-31 21:37:32.000000000 +0300 @@ -73,16 +73,6 @@ } } - -unsigned long crc32(unsigned char *blk, unsigned long len) -{ - unsigned long crc; - - crc32init(&crc); - crc32block(&crc, blk, len); - return crc32finish(&crc); -} - void crc32init(unsigned long *crcvar) { if (!crcvar) return; diff -Nur jfbuild_src_20051009/src/engine.c jfbuild_src_20051009.new/src/engine.c --- jfbuild_src_20051009/src/engine.c 2005-10-09 15:23:00.000000000 +0200 +++ jfbuild_src_20051009.new/src/engine.c 2008-03-31 21:37:32.000000000 +0300 @@ -2376,10 +2376,11 @@ for(z=bunchfirst[bunch];z>=0;z=p2[z]) { wallnum = thewall[z]; nextsectnum = wall[wallnum].nextsector; - - if (dastat == 0) j = sector[nextsectnum].ceilingstat; - else j = sector[nextsectnum].floorstat; - + if (nextsectnum >= 0) + { + if (dastat == 0) j = sector[nextsectnum].ceilingstat; + else j = sector[nextsectnum].floorstat; + } if ((nextsectnum < 0) || (wall[wallnum].cstat&32) || ((j&1) == 0)) { if (x == -1) x = xb1[z]; diff -Nur jfbuild_src_20051009/src/glbuild.c jfbuild_src_20051009.new/src/glbuild.c --- jfbuild_src_20051009/src/glbuild.c 2005-10-09 15:23:00.000000000 +0200 +++ jfbuild_src_20051009.new/src/glbuild.c 2008-03-31 21:37:32.000000000 +0300 @@ -109,7 +109,7 @@ #ifdef _WIN32 driver = "OPENGL32.DLL"; #else - driver = "libGL.so"; + driver = "libGL.so.1"; #endif } diff -Nur jfbuild_src_20051009/src/sdlayer.c jfbuild_src_20051009.new/src/sdlayer.c --- jfbuild_src_20051009/src/sdlayer.c 2005-10-09 15:23:00.000000000 +0200 +++ jfbuild_src_20051009.new/src/sdlayer.c 2008-03-31 21:37:32.000000000 +0300 @@ -24,6 +24,10 @@ // undefine to restrict windowed resolutions to conventional sizes #define ANY_WINDOWED_SIZE +// fix for mousewheel +#define MWHEELTICKS 10 +static unsigned long mwheelup, mwheeldown; + int _buildargc = 1; char **_buildargv = NULL; extern long app_main(long argc, char *argv[]); @@ -486,8 +490,8 @@ initprintf("Initialising mouse\n"); // grab input - grabmouse(1); moustat=1; + grabmouse(1); return 0; } @@ -1363,14 +1367,22 @@ case SDL_BUTTON_LEFT: j = 0; break; case SDL_BUTTON_RIGHT: j = 1; break; case SDL_BUTTON_MIDDLE: j = 2; break; - default: j = -1; break; + default: j = ev.button.button; break; } if (j<0) break; - if (ev.button.state == SDL_PRESSED) + if (ev.button.state == SDL_PRESSED) { + if (ev.button.button == SDL_BUTTON_WHEELUP) { + mwheelup = totalclock; + } + if (ev.button.button == SDL_BUTTON_WHEELDOWN) { + mwheeldown = totalclock; + } mouseb |= (1<