Quake-III-Arena

Quake III Arena GPL Source Release
Log | Files | Refs

ChangeLog (125203B)


      1 TODO: the Mac port seems stable, but outputs a bunch of warnings..
      2 	
      3 2004-05-22
      4 - updated the xcode project from Apple's version
      5   now with the latest vm_ppc code
      6 	
      7 2004-05-21 Timothee Besset <ttimo@idsoftware.com>
      8 - fixed the Linux build to compile again on sid (glext.h and gcc3 warnings)
      9 - 2 weeks ago, hacked up the source to compile on panther / xcode 1.1
     10   several cleanups were needed, and VM support seems broke (hangs or crashes)
     11 - got altivec optimisations from Apple (Kenneth Dyke)
     12   merged back in
     13 - looks like with the new code merge the VM support is back in and working
     14 	
     15 2003-09-15 Timothee Besset <ttimo@idsoftware.com>
     16 - import Q3 java master code, cleanups on monster
     17 
     18 2003-08-31 Timothee Besset <ttimo@idsoftware.com>
     19 + loki_setup hell
     20   https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=626
     21   http://zerowing.idsoftware.com/linux/q3a/index.html#glibc
     22   text mode installer in loki_setup image built on Mandrake 7.2 crashes on some glibc 2.3 systems such as RH9 etc.
     23   need to move to a different version of the installer, and update old installers to keep them still 'installing'
     24   moving to build the setup binaries on Debian Woody systems (glibc 2.2, text mode installer will no longer work on 2.1 systems)
     25   hacked together a new setup, using setup tree from RTCW. would need a complete revamp if a new full setup with new binaries is needed
     26 
     27 2003-07-17 Timothee Besset <ttimo@idsoftware.com>
     28 	+ new cvsreport, testing per-module config
     29 
     30 2003-01-19 Timothee Besset <ttimo@idsoftware.com>
     31 	+ building on both gcc 2.x and 3.x
     32 		added conf modules to check gcc version
     33 		ccache support
     34 
     35 2003-01-13 Timothee Besset <ttimo@idsoftware.com>
     36 	+ tweaking around for gcc 3.x build
     37 		edit Conscript to change the compiler
     38 
     39 2002-12-16 Timothee Besset <ttimo@idsoftware.com>
     40 	+ added pbEmit class to auth code, emit CD keys to local PB master
     41 
     42 2002-11-14 Timothee Besset <ttimo@idsoftware.com>
     43   + up to latest makeself.sh
     44 	+ add both quake3.x86 and quake3-smp.x86 to setup
     45 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=573
     46 	  console setup crash / glibc 2.3 (Debian Sid)
     47 		investigated, put together a workaround		
     48 
     49 2002-11-5 Timothee Besset <ttimo@idsoftware.com>
     50 	+ Linux building both smp and non-smp again. Will have to put both in setup
     51 	+ added in_subframe to toggle X subframe event handling
     52 	+ reworked the timing code to be more reliable
     53 	+ cleaned up dgamouse/in_mouse code, removed unnecessary dgamouse var
     54 	+ made the mouse grabbing an in_nograb cvar, no longer a compile time option
     55 	  in_nograb 1 force in_dgamouse 0 and r_fullscreen 0 (any of those two will b0rk)
     56 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=565
     57 	  mouse issues on Suze 8.1 - related to subframe event timing
     58 		added code chunk to detect broken X timing and disable subframe
     59 	+ tweaked the subframe/X bug workaround to be less paranoid	
     60 
     61 2002-10-28 Timothee Besset <ttimo@idsoftware.com>
     62 	+ no longer blocking demo recording if g_synchronous clients != 0
     63 		only sending out a warning (everyone does g_sync 1 ; record ; g_sync 0)
     64 
     65 2002-10-21 Timothee Besset <ttimo@idsoftware.com>
     66 	+ building final mod sdk setups (added lcc bins, added link to q3asm-turbo in readme)
     67 
     68 2002-10-8 Timothee Besset <ttimo@idsoftware.com>
     69 	+ quickfix cl_maxpackets > 125 brings back to 100
     70 
     71 1.32 release ---
     72 
     73 2002-10-7 Timothee Besset <ttimo@idsoftware.com>
     74 	+ made the 'demo' command case-insensitive on extension match (it was confused by demo FOUR.DM_68)
     75 	+ mouse wheel scrolling with in_mouse 1 + window mode was not working, fixed (DI didn't catch)
     76 	+ removing on-the-fly pk3 build from Linux setup, using the finalized ones now
     77 		added 'pk3' option to cons for toggle of pk3 building
     78 
     79 2002-10-5 Timothee Besset <ttimo@idsoftware.com>
     80   + updated win32 mod sdk (in win32/mod-sdk-setup)
     81     added q3asm and lcc source
     82     updated the .bat to build VMs
     83 
     84 2002-10-3 Timothee Besset <ttimo@idsoftware.com>
     85 	+ linux mod sdk, wrote the bulk of the scripts
     86 
     87 2002-9-30 Timothee Besset <ttimo@idsoftware.com>
     88 	+ ATVI Quake 3 1.32 Patch #9
     89 		rolling back to the way it was before, leaving 1v1 force vote exploit, the fix was worse than the bug
     90 		from comment on bug #9 in tracker:
     91 		
     92 		actually the fix is worse than the original bug
     93 
     94      after the fix, voting when you are alone on the server was no longer working
     95      it was kinda intended in the fix, that you would have to be at least two to pass a vote .. but
     96      it is an oversight.
     97 
     98      calling a vote in a 1v1 game against a bot fails immediately
     99      (calling a vote in any situation where there's only 1 live player fails)
    100 
    101      Say a server's running some lame custom map that you have but a friend doesn't. You can't go
    102      on the server and change it to the map you want to play, so he ends up having to auto-dl it at
    103      8K a second just so you can switch from it.
    104 
    105      This particular 2 clients, vote / quit exploit would involve too many changes to fix properly.
    106      I am reverting back to the old version, and leaving as WNF 
    107 
    108 2002-9-29 Timothee Besset <ttimo@idsoftware.com>
    109 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=50
    110 		added Wheel support to the DirectInput code IN_DIMouse (in_mouse 1)
    111 		tweaked the Wheel mouse reading for in_mouse -1 (old win32 input code)
    112 			handle correctly when zDelta is > 120
    113 			provide a in_logitechbug cvar to handle buggy Logitech MouseWare driver sending wheel events twice
    114 
    115 2002-9-26 Timothee Besset <ttimo@idsoftware.com>
    116 	+ ATVI Quake 3 1.32 Patch #38
    117 		adding trap_SetPbClStatus, reliably checks for PB presence before enabling PB in UI
    118 
    119 2002-9-25 Timothee Besset <ttimo@idsoftware.com>
    120 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=551
    121 		SVF_CLIENTMASK, fixed a typo
    122 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=555
    123 		pushed cl_maxpackets upper limit to 125 (from 100) per CPMA Arqon's request
    124 
    125 2002-9-24 Timothee Besset <ttimo@idsoftware.com>
    126 	+ ATVI Quake 3 1.32 Patch #33
    127 		PB reporting sv_paused cvar hacked, fixed SV_CheckPaused to use a Cvar_Set
    128 	+ ATVI Quake 3 1.32 Patch #24
    129 		added [skipnotify] from RTCW, use to display in the console only, but not on client screen
    130 		(also fixes pb_msgprefix and pb_sv_msgprefix)
    131 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=553
    132 		using correct error message if listen server starting as cl_punkbuster 0 sv_punkbuster 1
    133 	+ ATVI Quake 3 1.32 Patch #35
    134 		text auto wrap in UI code was eating the last word if it was wrapping
    135 		fixed in Q3 and TA UI (this bug could have affected the server print message also)
    136 	+ some updates to the win32 cons post-build process	
    137 
    138 2002-9-21 Timothee Besset <ttimo@idsoftware.com>
    139 	+ adding bspc cons build script
    140 
    141 2002-9-19 Timothee Besset <ttimo@idsoftware.com>
    142 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=552
    143 		disconnect reason is transmitted in the disconnect command and processed into com_errorMessage
    144 		(similar to RTCW behaviour)
    145 		added UI for com_errorMessage cvar in baseq3/, if client is kicked/dropped/disconnected for whatever reason
    146 		(this is already functional in TA)
    147 	+ ATVI Quake 3 1.32 Patch #9
    148 		failing vote if there's only one voting client (fixes exploit on 2-player server where one player votes then disconnects, forcing vote to pass)
    149 	+ ATVI Quake 3 1.32 Patch #5
    150 		removed the userInfoChanged message (was a debugging leftover)
    151 	+ ATVI Quake 3 1.32 Patch #18
    152 		rcon was not properly fixed yet, this only showed up for PB commands
    153 		changed the rcon parsing again to be more reliable
    154 	
    155 2002-9-18 Timothee Besset <ttimo@idsoftware.com>
    156 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=549
    157 		the demo command has a list of compatible protocols, it will loop through 66 67 68
    158 		you can do '/demo four' and it will try four.dm_66 four.dm_67 four.dm_68
    159 		or you can explicitely give a '/demo demoname.dm_??'
    160 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=551
    161 		added SVF_CLIENTMASK (0x00000002), works only with <= 32 players
    162 		set bitmask of players to which send entity
    163 
    164 2002-9-17 Timothee Besset <ttimo@idsoftware.com>
    165 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=550
    166 		rcon bug fix
    167 	+ some scons updates for win32 (post build)
    168 	+ 1.32rc2
    169 
    170 2002-9-06 Timothee Besset <ttimo@idsoftware.com>
    171 	+ updated completely the setup system:
    172 		fixed cons stuff to build setup with cons -- release setup
    173 		working from new setup codebase with some custom patches:
    174 			https://bugzilla.icculus.org/show_bug.cgi?id=52
    175 			https://bugzilla.icculus.org/show_bug.cgi?id=53
    176 			checked that BSD support was still in (brandelfing and symlinks) .. will have to get tester feedback
    177 		bumped version to 1.32rc1	
    178 		TODO: update the windows .VCT (standalone setup and auto-update)
    179 
    180 2002-9-04 Timothee Besset <ttimo@idsoftware.com>
    181 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=543
    182 		backport from RTCW 1.4 code
    183 		rcon commands where sent after being tokenized and rebuilt
    184 		that was breaking any quoting, for instance 'rcon g_motd "hooka pooka"'
    185 		added Cmd_Cmd() to retrieve the un-tokenized command and transmit as is on both ends
    186 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=542
    187 		b0rked text wrapping in connect screen
    188 		was a missing sizeScale in q3_ui/, and a bad param in ui/
    189 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=540
    190 		backport fix to pk3 reordering, happens when clearing the references, bad order from connection may break stuff		
    191 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=527
    192 		TA ui/, quickfix to netSource (mod stuff, doesn't affect TA)
    193 	+ cleaned up broken old DO_WIN32 stuff in cons scripts
    194 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
    195 		typo in models2.shader
    196 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=443
    197 		Linux client: sub-frame timing of key/mouse events
    198 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=453
    199 		added mousewheel support: wheel to scroll, ctrl+wheel to scroll faster, shift+wheel to scroll history
    200 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=545
    201 		bumped server count to 4096
    202 	+ keep around: __asm__ __volatile__ ("int $0x03");		
    203 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=516
    204 		moved screenshots to backend with a new RC_SCREENSHOT render command
    205 		fixes the r_smp 1 garbled screenshots
    206 
    207 2002-8-29 Timothee Besset <ttimo@idsoftware.com>
    208 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=539
    209 		new VM code from Raven's Sof2
    210 	+ cons / qvmtools build system fixes	
    211 	+ had to get a new qe3.ico again (resource compiler error)
    212 		http://vasin.hypermart.net/eei.htm
    213 	+ updated, basic testing on win32, merging back in trunk
    214 	+ merged bug-539 branch back into trunk, officialize the new VM code
    215 
    216 2002-8-26 Timothee Besset <ttimo@idsoftware.com>
    217 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=472
    218 		linux client: handle ctrl+space situations (could leave space locked on + space not working with ctrl on)
    219 	+ update the build system, build q3lcc and q3asm etc. on demand
    220 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=62
    221 		fixed invisible players/entities
    222 
    223 2002-8-23 Timothee Besset <ttimo@idsoftware.com>
    224 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=536
    225 		fixing donedl being ignored after autodl if map_restart'ed (propagate from RTCW)
    226 		ignoring multiple map_restart (propagated from RTCW)
    227 	+ reworked the server 'client text ignored' message to only trigger	when there's actually a message that doesn't get to the game VM
    228 
    229 2002-8-18 Timothee Besset <ttimo@idsoftware.com>
    230 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=528
    231 		ydnar: reorg bits in the drawsurf sort index, push MAX_SHADERS to 2^12
    232 	+ commented out some debug stuff in java auth server
    233 	+ added FAQ item with Linux & BSD patch to handle broadcast on multiple interfaces
    234 
    235 2002-8-15 Timothee Besset <ttimo@idsoftware.com>
    236 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=534
    237 		fixing rcon being broken on NT/XP with > 23 days uptime (or so)
    238 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=525
    239 		changed the rcon buffer size to avoid overflows and dropping part of the message
    240 
    241 2002-8-14 Timothee Besset <ttimo@idsoftware.com>
    242 	+ hacked in some experimental win32 stuff to the cons files
    243 		(win32 recognition and pk3 installs .. very very experimental but I needed it for win32 dev)
    244 	+	https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=521
    245 		ui/ and q3_ui/ : added text auto wrapping in the connection screen drawing (server message)
    246 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=531
    247 		removed the MPlayer stuff from the server browsers
    248 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=505
    249 		enabled back the ignore if protocol is != (fixes Wolf servers showing in browser)
    250 
    251 2002-8-10 Timothee Besset <ttimo@idsoftware.com>
    252   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=500
    253     propagated IP banning fix from RTCW
    254 
    255 2002-8-08 Timothee Besset <ttimo@idsoftware.com>
    256 	+ propagate additional sv_lanForceRate fix from RTCW
    257 
    258 2002-8-07 Timothee Besset <ttimo@idsoftware.com>
    259 	+ added trap_FS_Seek
    260 
    261 2002-8-05 Timothee Besset <ttimo@idsoftware.com>
    262   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=50
    263     fixed the DI mouse init procedure
    264 		
    265 2002-8-05 Timothee Besset <ttimo@idsoftware.com>
    266 	+ removed sv_allowanonymous, was dummy and polluting the serverinfo
    267 		(sv_allowanonymous was designed to flag wether server was public or not, but that's replaced by g_needpass)
    268 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=514
    269 		sv_strictAuth (default 1): server variable to control wether strict CDKEY auth should be performed
    270 			this is required if you want reliable cl_guid on the server
    271 		extended the getIpAuthorize (server->auth message) syntax
    272 		sending the fs_game at all times (default 'baseq3'), dummy sv_allowAnonymous 0, strict auth flag
    273 		NOTE: 1.31 server on baseq3 sends a getIpAuthorize packet like:
    274 			processing packet: getIpAuthorize -1230824753 217.128.77.195  0
    275 			the auth server will mistakenly read fs_game as '0'
    276 	+ TAGGED the master / auth source as pre-1_32
    277 		will need to go back to this to comment out all my debugging crap
    278 
    279 2002-8-04 Timothee Besset <ttimo@idsoftware.com>
    280 	+ cleaned master server stuff, client was prompting master.quake3arena.com, 
    281 		server was sending heartbeats to master3.idsoftware.com
    282 		both point to 192.246.40.56, unified to master.quake3arena.com
    283 		the MPlayer master, master.quake3world.com doesn't exist anymore, switched it to master.quake3arena.com
    284 
    285 2002-8-02 Timothee Besset <ttimo@idsoftware.com>
    286 	+ added auth server source, reorganized
    287 	+ auth server name / master key optionally set on command line for master and auth servers
    288 	+ auth and master config in build system
    289 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=524
    290 		changed default GL driver from libGL.so to libGL.so.1
    291 		see LSB 1.2 spec: http://www.linuxbase.org/spec/refspecs/LSB_1.2.0/gLSB/libgl.html
    292 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=480
    293 		applying the 'no cp command' experimental fix for beta phase
    294 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=462
    295 		backported from RTCW, fix to packet fragmenting emission
    296 		FIXME: there is some verbose code that we have to take out in the final version (grep for #462)
    297 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=475
    298 		backported from RTCW, don't get dropped if the server changes map while connecting (ignore outdated cp)
    299 	+ PROTOCOL BUMPED TO 68	
    300 
    301 2002-8-01 Timothee Besset <ttimo@idsoftware.com>
    302 	+ Linux: dedicated build was not setting up signal handler like the full client does
    303 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=522
    304 		SplashDamage bugfix, now clearing client gentity before GAME_INIT call (instead of after)
    305 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=498
    306 		fixed NET_AdrToString to print the port as unsigned int (for ports > 1^^15, was showing negative)
    307 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=501
    308 		maintain IP in userinfo sent to game
    309 	+ checking in master server source	
    310 
    311 2002-7-31 Timothee Besset <ttimo@idsoftware.com>
    312 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=513
    313 		https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=506
    314 		porting fix from RTCW codebase. client re-orders it's pk3s to scan in the same order than the server
    315 		this eliminates several 'Invalid .PK3 file referenced' situations (caused by client not referencing the same thing as server)
    316 	+ fixed border remnants in ta ui
    317 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=517
    318 		ERR_DROP if PB client off / server on conflict when starting local server
    319 	+ quickfix to q3 ui / punkbuster detect in server browser
    320 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=458
    321 		code fix, no more taunt spam
    322 	+ cons install of PB .so files
    323 	+ correct MOD_KAMIKAZE and MOD_JUICED in TA games.log
    324 
    325 2002-7-29 Timothee Besset <ttimo@idsoftware.com>
    326 	+ q3 ui: completed confirmation prompts and messages (added UI_ConfirmMenu_Style & UI_Message)
    327 	+ ta ui: backported 'conditionalopen' from RTCW (conditionalopen <cvar> <menu1> <menu2>)
    328 	+ ta ui: confirmation prompt for punkbuster enable/disable etc.
    329 	+ added the win32 DLLs to pb/win32/
    330 	
    331 2002-7-28 Timothee Besset <ttimo@idsoftware.com>
    332 	+ ta ui: sv_punkbuster in StartServer menu
    333 	+ ta ui: added cl_punkbuster in server browser
    334 	+ view filters are in a modal dialog
    335 	+ new files: filter.menu menus.txt (pak3.pk3 updated)
    336 	+ fix broken link in Linux FAQ	
    337 
    338 2002-7-27 Timothee Besset <ttimo@idsoftware.com>
    339 	+ ta ui: PB display in the browser, in it's additional tab, with sorting
    340 
    341 2002-7-26 Timothee Besset <ttimo@idsoftware.com>
    342 	+ PB UI: for baseq3/ AND missionpack/
    343 		q3_ui: Punkbuster: Enable/Disable in server broswer (cl_punkbuster)
    344 		q3_ui: PB logo, PB Yes/No in browser (TODO: validate this to be working)
    345 		q3_ui: added sv_punkbuster toggle in start server menu
    346 	+ automated building of the new PK3s, unix/Conscript-pk3
    347 
    348 2002-7-25 Timothee Besset <ttimo@idsoftware.com>
    349 	+ added PB build scripts on Linux, fixed the Linux build
    350 
    351 2002-7-12 Timothee Besset <ttimo@idsoftware.com>
    352   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=511
    353     fixing re.SetColor crash for widescreen displays (q3dm11)
    354     was calling to the renderer while not registered
    355 
    356 2002-6-19 Timothee Besset <ttimo@idsoftware.com>
    357   + r_roundImagesDown 0 + map q3dm16 -> tr_image.c ResampleTexture crash
    358 	  buffer overflow because of resample to 2048x..
    359 		xian_q3dm12_leftwall4fin.jpg 1152x384
    360 		bumped one buffer byte p1[1024] -> byte p1[2048], added a safe check
    361 
    362 2002-6-14 Timothee Besset <ttimo@idsoftware.com>
    363   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=493
    364 	  propagate a renderer fix from RTCW. fixes a one-frame visual glitch when mod code 
    365 		registers a shader after drawsurfaces are generated but before the frame is rendered
    366 
    367 2002-6-12 Timothee Besset <ttimo@idsoftware.com>
    368   + added cons and pcons to unix/, updated the build script
    369 
    370 2002-5-24 Timothee Besset <ttimo@idsoftware.com>
    371 	towards a new Q3 release?
    372 		some bug fixes require protocol change, or mod code/mod interface change to be fixed properly
    373 		this is a biz decision, dunno yet if we are going to want a new protocol (probably not)
    374 	-> have to create a branch for the 1.31b, i.e. backwards compatible with 1.31 'Stable-1_31'
    375 	  and put the 1.32 specific / protocol changes on trunk
    376 	no telling what will go in SOS in the end .. probably 1.32	
    377 
    378 2002-5-5 Timothee Besset <ttimo@idsoftware.com>
    379   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=491
    380 	  adding a sv_lanForceRate (defaults to 1) to turn on/off server forcing rate of LAN clients
    381 		(only affects LAN dedicated clients - dedicated 1, default behaviour forces LAN clients to 99999 rate)
    382 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=470
    383 	  fixing potential overflows with cl_cdkey (propagated from RTCW)
    384 	+ cons-based build system (imported from Wolf, was partly written for mod tools release already)
    385 	  building with SMP on by default
    386 	+ better #ifdef SMP handling ('disabled at compile time' message)	
    387 	+ https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=494	  
    388 		Q_vsnprintf for vsprintf calls in the core
    389 		not putting this in game code as we'd need a vsnprintf implementation in bg_lib.c
    390 
    391 2002-4-5 Timothee Besset <ttimo@idsoftware.com>
    392   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=462
    393     taking out the fix which was found broken and incomplete  
    394 
    395 2002-8-4  Timothee Besset <ttimo@idsoftware.com>
    396   + adding NO_MOUSEGRAB define (select in the Makefile)
    397 
    398 2002-2-4  Timothee Besset <ttimo@idsoftware.com>
    399   + applying Gareth's SMP patch
    400   + count number of CPUs (Sys_ProcessorCount in unix_shared.c), default r_smp appropriately
    401   + bumping version to 1.32
    402   + if XInitThreads fails, set r_smp to zero
    403 
    404 2002-28-2  Timothee Besset <ttimo@idsoftware.com>
    405   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=462
    406     send potential remaining fragmented packets before sending a gamestate
    407     
    408 2002-26-2  Timothee Besset <ttimo@idsoftware.com>
    409   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=455
    410   removed old libMesaVoodooGL.so loading code
    411   Voodoo cards should use XF4/DRI, that load code was outdated and confusing people with broken OpenGL
    412 
    413 2002-16-1  Timothee Besset <ttimo@idsoftware.com>
    414   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=441
    415   adding brandelf calls to the setup building process so that our binaries run on BSD
    416 
    417 2002-1-1  Timothee Besset <ttimo@idsoftware.com>
    418   + updated FAQ with BSD info (bug #441)
    419   + FAQ update on CLIENT_UNKNOWN_TO_AUTH
    420   + FAQ update for proper strace usage
    421 
    422 2001-12-12  Timothee Besset <ttimo@idsoftware.com>
    423   + Q3 1.31 point release
    424     updating build_setup.sh to new pk3 files
    425     (baseq3/pak7.pk3 missionpack/pak2.pk3)
    426   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=395
    427     adding quake3.xpm icon, and modified the setup accordingly to put symlinks
    428   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=390
    429     ignoring SIGTTIN SIGTTOU
    430 
    431 2001-06-12  Timothee Besset <ttimo@idsoftware.com>
    432   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=402
    433     bug with full scene
    434 
    435 2001-04-12  Timothee Besset <ttimo@idsoftware.com>
    436   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=398
    437     cg_bobup cheat protect
    438   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=399
    439     fixed Setup > System > Driver info crash
    440   + checked in code/spank.sh script, perform checksuming  
    441 	
    442 2001-18-09  Timothee Besset <ttimo@idsoftware.com>
    443   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=371
    444     propagating sound code fixes from Wolf to Q3
    445 	
    446 2001-11-08  Timothee Besset <ttimo@idsoftware.com>
    447   + setup script was still broken, damn shell expansion
    448     the exit code for Q3 was always zero instead of $?
    449     propagating the fix to Wolf
    450 
    451 2001-11-04  Timothee Besset <ttimo@idsoftware.com>
    452   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=382
    453     modified challenge code for motd to be truly random
    454 	
    455 2001-10-31  Timothee Besset <ttimo@idsoftware.com>
    456   Moved updated q3asm and lcc source at the toplevel, MissionPack/q3asm
    457   and MissionPack/lcc
    458 
    459 2001-10-29  Timothee Besset <ttimo@idsoftware.com>
    460   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=381
    461     build system is now functional
    462 
    463 2001-10-21  Timothee Besset <ttimo@idsoftware.com>
    464   + updated Sys_LoadDll code on linux to search in the following order:
    465     #1 current directory
    466     #2 fs_homepath
    467     #3 fs_basepath
    468     this was needed to make mod developement easier
    469 
    470 2001-10-09  Timothee Besset <ttimo@idsoftware.com>
    471   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=51
    472     the code to buffer the redirection was in there but disabled? (Com_Printf)
    473     enabled it back
    474   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=52
    475     connection issues / userinfo
    476     client side fix, instead of sending 'connect <userinfo>' packet
    477     we now send 'connect "<userinfo>"'
    478 
    479 2001-10-08  Timothee Besset <ttimo@idsoftware.com>
    480   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=371
    481     added a PROT_READ to the mmap call
    482     this was needed to go around a bug in glibc i586 i686, memset doing read access
    483     since the audio_fd is opened O_RDWD this is harmless to Q3
    484 
    485 2001-10-07  Timothee Besset <ttimo@idsoftware.com>
    486   + updating from SOS
    487     S_WriteLinearBlastStereo16 C/asm is back in snd_mix.c (Graeme)
    488     r_showtris r_shownormal cheat protections
    489   + Sys_LoadDll changes:
    490     removing -debug search when loading native dlls
    491     changing the fatal aborts when not finding native from release only to debug only (was a misfeature)
    492     used to search in cd_path which is bogus, now searching in pwd if basepath fails
    493   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=275
    494     fixed r_fullbright not being cheat protected / was a CVAR_LATCHED|CVAR_CHEAT issue
    495 
    496 2001-09-06  Timothee Besset <ttimo@idsoftware.com>
    497   + updated from SOS, some changes to qcommon/unzip.c (statics)
    498 
    499 2001-08-27  Timothee Besset <ttimo@idsoftware.com>
    500   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=3
    501   Added some code in CL_InitDownloads to use FS_ComparePaks and print out information about server-referenced paks that are missing on the client. It is a first step, allows to get precise information about what can cause a connection to fail (typically when the user is sent back to the main screen).
    502 
    503 2001-08-22  Timothee Besset <ttimo@idsoftware.com>
    504   + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=86
    505   fixed sound bug (with Graeme hints)
    506 
    507 2001-08-20  Timothee Besset <ttimo@idsoftware.com>
    508   + made sure Sys_Printf doesn't get into an endless loop if logfile is on
    509     fixed qconsole.log issues, +set logfile 1 +set fs_debug 1 was crashing (any OS)
    510     fixed logfile 1 / ttycon 1 issue, didn't exit properly (same endless looping)
    511     also fixes an issue reported by q3f team
    512   + changed rcon commands from Com_DPrintf to Com_Printf so that they show up in the console
    513   (with IP information)
    514 
    515 2001-08-19  Timothee Besset <ttimo@idsoftware.com>
    516   + fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=91
    517   (autodownload toggle in q3 ui)
    518   + fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=76
    519   g_password issue
    520   + fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=93
    521   cheat protecting r_lodCurveError
    522   + wontfix https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=92
    523 
    524 2001-08-18  Timothee Besset <ttimo@idsoftware.com>
    525   + more fixes to the 7-button mouse code (linux only)
    526   + updated faq about gamma slider
    527   + added "servers don't show up in ingame browser" to faq
    528   + added Alt+Enter toggle for fullscreen/windowed (linux)
    529 
    530 2001-08-16  Timothee Besset <ttimo@idsoftware.com>
    531   reconfiguring CVS repository to give access to Gareth
    532   + testin gareth's access
    533 
    534 2001-08-03  Timothee Besset <ttimo@idsoftware.com>
    535   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=85
    536   fixes in the setup code for older bash versions
    537   
    538 2001-08-02  Timothee Besset <ttimo@idsoftware.com>
    539   * commented out assembly implementation of S_WriteLinearBlastStereo16, using modified C implementation from Zaphod
    540     need to check performance: https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=88
    541   * finished const declarations in CG_Trace calls, was needed in pmove_t declaration and some other functions
    542     cgame/cg_local.h : CG_trace trap_CM_BoxTrace
    543     game/bg_public.h : using const in pmove_t trace functions prototypes
    544     (fixes gcc warnings: assignment from incompatible pointer type)
    545 
    546 2001-07-26  Timothee Besset <ttimo@idsoftware.com>
    547   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=78
    548   mapped K_MOUSE4 K_MOUSE5
    549 
    550 2001-07-23  Timothee Besset <ttimo@idsoftware.com>
    551   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=5
    552   more fixes, handling meta characters and various kinds of backspace
    553 
    554 2001-07-22  Timothee Besset <ttimo@idsoftware.com>
    555   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=5
    556   after testing feedback, fixed more stuff:
    557     better backspace, works with putty and potentially more terminals
    558   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=51
    559   band aid fix to rcon status, incresed MAX_PUSHED_EVENTS from 256 to 1024
    560   (adds 28kb of mem requirements)
    561 
    562 2001-07-21  Timothee Besset <ttimo@idsoftware.com>
    563   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=2
    564   using XF86 Gamma extension to set the gamma in game from the menus
    565   (previous behaviour was to set /r_gamma and restart, renderer relying on s_gammatable)
    566   restoring initial gamma on GLimp_ShutDown
    567 
    568 2001-07-19  Timothee Besset <ttimo@idsoftware.com>
    569   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=5
    570   first usable version of dedicated console
    571   added history and completion functionality
    572   ready for some testing
    573   still some TODOs and FIXMEs:
    574     keep the currently edited line when going back from history exploration
    575     edit the current line with cursor, insert mode etc.
    576 
    577 2001-07-18  Timothee Besset <ttimo@idsoftware.com>
    578   * starting TAB completion and history for the dedicated server (tty console)
    579   removed Sys_ConsoleOutput (unused)
    580   removing bogus nostdout variable
    581   cleanup of a big chunk of code that Bernd commented out and scheduled for deletion
    582   moved completion code from client/cl_keys.c stuff into qcommon/common.c, Field_CompleteCommand(field_t*)
    583 
    584 2001-07-13  Timothee Besset <ttimo@idsoftware.com>
    585   * fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=8
    586   screenshots overwrites
    587   * fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=31
    588   DOUBLE SIGNAL FAULT
    589 
    590 2001-07-11  Timothee Besset <ttimo@idsoftware.com>
    591   * fix for french keybards / console toggle / bound to XK_twosuperior
    592 
    593 2001-07-10  Timothee Besset <ttimo@idsoftware.com>
    594   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=19
    595   cleanup of the keyboard code, adding com_developer message in case XLookupString would fail
    596 
    597 2001-07-10  Timothee Besset <ttimo@idsoftware.com>
    598   * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=33
    599   using our custom handlers for X errors, should make things more robust
    600   (X docs say some X errors are not fatal, but the default X handler exits the app anyway)
    601 
    602 2001-07-08  Timothee Besset <ttimo@idsoftware.com>
    603 	* https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=19
    604 	keyboard state issues, fixed the sticking with ctrl key (thks relnev)
    605 
    606 2001-07-07  Timothee Besset <ttimo@idsoftware.com>
    607 	* closing https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=13
    608 	the fixes to bug #9 solved this one too
    609 	* checking in to SOS
    610 
    611 2001-07-05  Timothee Besset <ttimo@idsoftware.com>
    612 	* work on https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=9
    613 	filesystem code changes:
    614 	updated the documentation in files.c to the current system
    615 	added correct fs_homepath fs_basepath fs_cdpath scanning to FS_SV_FOpenFileRead
    616 	  (fixes description.txt not found, and probably a few other linux issues)
    617 
    618 2001-06-29  Timothee Besset <ttimo@idsoftware.com>
    619 	* fixed setup issues (graphical/console)
    620 	https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=6
    621 
    622 2001-06-26  Timothee Besset <ttimo@idsoftware.com>
    623 	* bug tracker is online at https://zerowing.idsoftware.com/bugzilla
    624 	  authentication, use login: bugs password: b00gies
    625 	  for now, using it as the linux bug tracker, possible use for more OSes and programs if anyone is interested.
    626 	* tweaked the graphical setup to send to bugs@idsoftware.com on errors instead of support@lokigames.com
    627 	  
    628 2001-06-19  Timothee Besset <ttimo@idsoftware.com>
    629         * fixed generated launch script /usr/local/bin/quake3, exit $* should be exit
    630 
    631 2001-06-18  Timothee Besset <ttimo@idsoftware.com>
    632         * rebuilt 1.29f setups, released as 1.29f-beta1 'Q3 1.29f linux-i386 Jun 19 2001'
    633 
    634 2001-06-10  Timothee Besset <ttimo@idsoftware.com>
    635 	* rebuilt against PR source, packaged 1.29b setups
    636 
    637 2001-05-25  Timothee Besset <ttimo@idsoftware.com>
    638 	* graphical setup, based on Loki's setup tool (GPL)
    639 
    640 2001-05-22  Timothee Besset <ttimo@idsoftware.com>
    641 	* changed fs_basepath to fs_homepath, according to Graeme's changes (probably missed this change?)
    642 	  this fixes the q3key prompting at each game startup
    643 
    644 2001-05-20  Timothee Besset <ttimo@idsoftware.com>
    645 	* rebuilding 1.28b, various fixes on linux build:
    646 	  - SetProgramPath was renamed to Sys_SetDefaultCDPath in unix_shared.c
    647 	    updated unix_main.c accordingly
    648 	  - some prototypes in qgl.h are guarded by #ifndef GL_VERSION_1_2 (ARB extentions)
    649 	    those prototypes are needed by linux_glimp for importing functions and casting, added a #ifdef __linux__
    650 	    (not a clean solution)
    651 	  - game/q_shared.h
    652 	    little endian / big endian functions have been added
    653 	    gcc generates warnings about functions being unused .. inlined them
    654 	   - cgame/cg_marks.c
    655 	     // TTimo
    656 	     // gcc warning: might be used uninitialized
    657 	     float sInc = 0.0;
    658              float s = 0.0;
    659 
    660 2001-05-15  Timothee Besset <ttimo@idsoftware.com>
    661 	* fixes to linux Makefile for bspc 2.1h
    662 	* various updates to 1.28b on linux
    663 
    664 2001-05-09  Timothee Besset <ttimo@idsoftware.com>
    665 
    666 	* R. Duffy reverted game/bg_pmove.c PM_CheckDuck, was a merging screup on my side
    667 	* updated setup to 1.27z, removed the .so from the setup distribution (they were in 1.27g because of issues)
    668 	  FIXME: gotta get pk3's first
    669 
    670 2001-05-04  Timothee Besset <ttimo@idsoftware.com>
    671 
    672 	* fixes to gcc, building RC for 1.27s
    673 
    674 2001-05-01  Timothee Besset <ttimo@idsoftware.com>
    675 
    676 	* added qcommon/huffman.c to the Makefile
    677 	* gcc -Wall:
    678 	commenting out 
    679 	  CL_Netchan_Encode CL_Netchan_Decode (cl_net_chan.c)
    680 	  Netchan_ScramblePacket Netchan_UnScramblePacket (net_chan.c)
    681 	  SV_Netchan_Encode SV_Netchan_Decode (sv_net_chan.c)
    682 
    683 2001-04-26  Timothee Besset <ttimo@idsoftware.com>
    684 
    685 	* fixed dedicated server crash when entering the VM_COMPILED qagame on a mod (some statics lacked initialization)
    686 
    687 2001-04-25  Timothee Besset <ttimo@idsoftware.com>
    688 
    689 	* added $(Q3POBJ) to clean target (cleanup of platform-dependent objects)
    690 	* more make clean improvements
    691 
    692 2001-04-23  Timothee Besset <ttimo@idsoftware.com>
    693 
    694 	* cleanup the mod selection code, remove duplicates
    695 	* some issues with release builds, my main developement box doesn't build stable binaries with release settings
    696 	  removing -fomit-frame-pointer seems to fix (there's probably a performance hit)
    697 	  see OMIT-FRAME-POINTER.txt
    698 
    699 2001-04-13  Timothee Besset <ttimo@idsoftware.com>
    700 
    701 	* checked in a first set of merged files
    702 
    703 2001-04-06  Timothee Besset <ttimo@idsoftware.com>
    704 
    705 	* merged back the core linux parts to make 1.27g linux build from the Source Safe tree again
    706 
    707 2001-02-27  Bernd Kreimeier  <bk@lokigames.com>
    708 
    709 	* CVS: tag with changes as of today
    710 	  cvs tag id1-27j-loki01027
    711 
    712 	* code/qcommon/msg.c: numFields loop (SOS).
    713 	* code/qcommon/files.c: ue Q_stricmp (SOS uses stricmp, was strcmp).
    714 	* code/game/q_shared.h (Q3_VERSION): 1.27j. Also
    715 	MAX_STRING_TOKENS upped from 256 to 1024 (SOS).
    716 
    717 	* code/server/sv_snapshot.c (SV_AddEntitiesVisibleFromPoint): see below.
    718 	* code/game/g_public.h (SVF_NOTSINGLECLIENT): added (SOS).
    719 
    720 	* code/server/sv_ccmds.c: see below.
    721 	* code/game/g_main.c: g_gametype cvar now userinfo (SOS).
    722 
    723 	* code/game/g_active.c (SendPendingPredictableEvents): new (SOS).
    724 	* code/game/bg_misc.c: new SOS (sos010227)
    725 
    726 	* SOS: new update sos010227.
    727 	
    728 2001-02-22  Bernd Kreimeier  <bk@lokigames.com>
    729 
    730 	* CVS: now in sync with last SOS and cleanup up
    731  	  cvs tag id1-27i-loki01022
    732 	
    733 	* code/ui/ui_shared.c: below.
    734 	* code/ui/ui_main.c: leftover code!
    735 	* code/server/sv_world.c: below.
    736 	* code/server/sv_snapshot.c: below.
    737 	* code/server/sv_init.c: below.
    738 	* code/server/sv_game.c: below.
    739 	* code/server/sv_client.c: below.
    740 	* code/server/sv_ccmds.c: below.
    741 	* code/server/sv_bot.c: below.
    742 	* code/server/server.h: below.
    743 	* code/renderer/tr_surface.c: below. 
    744 	* code/renderer/tr_shader.c: changed assert to early return.
    745 	* code/renderer/tr_shade_calc.c: below.
    746 	* code/renderer/tr_shade.c: below.
    747 	* code/renderer/tr_scene.c: below.
    748 	* code/renderer/tr_mesh.c: below.
    749 	* code/renderer/tr_local.h: below.
    750 	* code/qcommon/vm_x86.c: cleanup.
    751 	* code/qcommon/vm.c: below.
    752 	* code/qcommon/unzip.c: below.
    753 	* code/qcommon/qcommon.h: below.
    754 	* code/qcommon/files.c: below.
    755 	* code/qcommon/cvar.c: cleanup.
    756 
    757 2001-02-21  Bernd Kreimeier  <bk@lokigames.com>
    758 
    759 	* code/qcommon/common.c: cleanup.
    760 	* code/qcommon/cm_trace.c: cleanup.
    761 	* code/qcommon/cm_patch.c: cleanup.
    762 	* code/qcommon/cm_public.h: cleanup.
    763 	* code/game/q_shared.h: cleanup.
    764 	* code/game/q_shared.c: cleanup.
    765 	* code/game/q_math.c: cleanup.
    766 	* code/game/g_syscalls.asm: changed (once more) floor,ceil etc.
    767 	* code/game/g_spawn.c: cleanup.
    768 	* code/game/g_session.c: cleanup.
    769 	* code/game/g_cmds.c: cleanup.
    770 	* code/game/g_client.c: cleanup.
    771 	* code/game/g_arenas.c: cleanup.
    772 	* code/game/bg_slidemove.c: cleanup.
    773 	* code/game/bg_pmove.c (PM_CheckDuck): old call to trace?
    774 	* code/game/bg_misc.c: cleanup.
    775 	* code/game/be_aas.h: dead code.
    776 	* code/game/ai_dmq3.c: cleanup. One clear/copy switched?
    777 	* code/game/ai_dmnet.c: more //*/. Why oh why not DEBUG....
    778 
    779 	* code/client/snd_mix.c: below.
    780 	* code/client/snd_dma.c: below.
    781 	* code/client/keys.h: cleanup.
    782 	TODO: #error in q3_ui/keycodes.h ?
    783 
    784 	* code/client/client.h: cleanup.
    785 	* code/client/cl_main.c: misplaced bracket. Cleanup.
    786 	* code/client/cl_keys.c: below.
    787 	* code/client/cl_cin.c: below.
    788 	* code/client/cl_cgame.c: cleanup.
    789 	TODO: define assert for Win32 or guard my assertions.
    790 
    791 	* code/cgame/cg_syscalls.c: below.
    792 	* code/cgame/cg_servercmds.c: below.
    793 	* code/cgame/cg_players.c: cleanup.
    794 
    795 	* code/cgame/cg_newdraw.c: remember to diff against cg_newDraw.c
    796 	in SOS (mixed case).
    797 	TODO: get id to use cg_newdraw.c, and to remove cg_newDraw.c/cpp.
    798 
    799 	* code/cgame/cg_main.c: below.
    800 	* code/cgame/cg_local.h: below.
    801 	* code/cgame/cg_event.c: below.
    802 	* code/cgame/cg_drawtools.c: below.
    803 	* code/cgame/cg_draw.c: cleanup.
    804 	* code/cgame/cg_consolecmds.c: dead code.
    805 	* code/bspc/qbsp.h: below.
    806 	* code/bspc/l_poly.c: below. 
    807 	* code/bspc/l_math.c: cleanup.
    808 	* code/bspc/bspc.c: cleanup.
    809 	* code/bspc/be_aas_bspc.c: cleanup. 
    810 	* code/bspc/aas_map.c: kept comments - merge loss at their end?
    811 	* code/bspc/aas_file.c: cleanup. 
    812 
    813 	* code/botlib/be_interface.c: this file is plain impossible. There
    814 	are layers of code made dead with /* */ and the resurrected by
    815 	//* or // /* or variations of this. I reverted to exact mirror
    816 	image of SOS to be sure - short of removing it's too easy to mistake 
    817 	live code for dead one.
    818 	Later: have to change 5 occurences to avoid gcc complaints about
    819 	nested comment tokens.
    820 	TODO: somebody please get rid of the cruft in here.
    821 
    822 	* code/botlib/be_ai_move.c: redundant typedef.
    823 	* code/botlib/be_ai_chat.c: assertions on signed string index.
    824 	Note: this is not in my ChangeLog - ouch.
    825 	TODO: use  gcc -fsigned-char on all platsforms to enforce Win32
    826 	TODO  behavior (PPC has a default unsigned char, Intel has not).
    827 	* code/botlib/be_aas_sample.c (AAS_TraceClientBBox): one code block
    828 	was placed in different location, and one FPE hack not used. I would
    829 	expect that divide by zero will still occur here.
    830 
    831 	* code/botlib/be_aas_reach.c: below. 
    832 	* code/botlib/be_aas_cluster.c: cleanup. 
    833 	* CVS: the last tag (below) marks the version with a lot of history
    834 	and additional comments. I am now bringing the codebase in sync with
    835 	SOS as of yesterday, cleaning out comments, dead code and other
    836 	differences to minimize a diff - in a valiant if futile attempt to
    837 	roll back changes into the id codebase.
    838 	Note: I ignore the $SOS$ - these are unfortunate but will change
    839 	in the same awkward way at their end.
    840 	Note: I stick to #if 0 instead of C comments around dead code id
    841 	kept (nested comments issue). The commentary is changed to sosYYMMDD
    842 	and includes the token DEAD.
    843 
    844 2001-02-20  Bernd Kreimeier  <bk@lokigames.com>
    845 
    846 	* CVS: update, then tag current version as
    847 	 cvs tag id1-27i-loki010219
    848 
    849 	* SOS: patched up to sos010219.
    850 
    851 	* code/qcommon/cm_trace.c (CM_Trace): fabs on sphere offsets (SOS).
    852 	* code/game/bg_slidemove.c (PM_StepSlideMove): stepSize vs. STEPSIZE (SOS).
    853 	* code/game/bg_pmove.c (PM_CheckDuck): fix in stand up check (SOS).
    854 	* code/bspc/bspc.c (main): -capsule (SOS).
    855 	* code/bspc/qbsp.h: below (SOS).
    856 	* code/bspc/be_aas_bspc.c (capsule_collision): added (SOS).
    857 	* code/bspc/aas_map.c (CapsuleOriginDistanceFromPlane): added and used (SOS).
    858 	* code/bspc/aas_file.c (AAS_WriteAASFile): removed diagnostics recently
    859 	added. No matter how long you wait, they'll always get you ;-).
    860 	* code/botlib/be_aas_cluster.c: enabled LogWrites, different flood (SOS).
    861 
    862 	* SOS: patching up to snapshot sos010219. 
    863 	Note: For brevity, I use as marker sosYYMMDD now instead of bkYYMMDD, to 
    864 	distinguish from changes not in SOS.
    865 
    866 	*  CVS: tagged current version before patching up with SOS.
    867          cvs tag id1-27i-loki010216-bsd
    868 
    869 2001-02-16  Bernd Kreimeier  <bk@lokigames.com>
    870 
    871 	* code/server/sv_init.c: DLL_ONLY sets sv_pure to 0 and ROM.
    872 	TODO: determine good sv_pure policy for DLL-only servers.
    873 
    874 	* code/renderer/tr_shade_calc.c: my_ftol implementation (BSD).
    875 
    876 	* code/unix/Makefile: FreeBSD sections.
    877 	TODO: include target-specific Make-freebsd etc.,
    878 	include a Make-local not in CVS for build preferences,
    879 	and generally clean up this mess.
    880 	* code/unix/unix_glw.h: guard #error
    881 	* code/unix/linux_snd.c: soundcard.h location (BSD).
    882 	* code/unix/linux_glimp.c: guard system headers.
    883 	Later: added Joystick stubs.
    884 	Note: linux_ etc. prefixes start to loose meaning as we
    885 	re-use most of this on UNIXes anyway. I didn't use Raf's
    886 	freebsd_joystick.c but instead put generic stubs here.
    887 	TODO: introduce generic -DNO_JOYSTICK flag.
    888 	* code/renderer/tr_local.h: my_ftol guard.
    889 	* code/renderer/qgl.h: FreeBSD guards.
    890 	* code/qcommon/vm_x86.c: sys/types include on FreeBSD.
    891 	* code/qcommon/md4.c: Win32 pragma guard.
    892 	* code/qcommon/common.c: Com_Memcpy/Memset external.
    893 	* code/game/q_shared.h: added FreeBSD defines. 
    894 	* code/game/q_math.c (BoxOnPlaneSide): FreeBSD conditional.
    895 	TODO: check whether we have/need the assembly version anyway.
    896 	* code/client/snd_mix.c: use C fallback on FreeBSD.
    897 	Note: all of the above changes from the original port by Rafael Barrero.
    898 
    899 	* CVS: tagged current version before merging FreeBSD related changes.
    900          cvs tag id1-27i-loki010215-ppc
    901 
    902 2001-02-15  Bernd Kreimeier  <bk@lokigames.com>
    903 
    904 	* code/unix/Makefile: BSD related changes.
    905 	* code/cgame/cg_draw.c: hacked phone jack rendering check for Debug.
    906 	TODO: finish Debug, fix CG_DrawDisconnect !!!
    907 
    908 	* code/unix/vm_x86.c: error on compile attempts. Fight redundancy!
    909 	* code/qcommon/vm_x86.c (VM_CallCompiled): dummy for linkage on PPC.
    910 	Note: DLL_ONLY is the global Makefile option for DLL-only builts.
    911 	Currently only executed on Linux.
    912 	* code/unix/unix_main.c: *ppc postfix for DLLs. Ignored the changes
    913 	to redundant code (have to remove the unused Un/LoadDll/API calls).
    914 	* code/server/sv_game.c (VMA): changed macro (see below). PPC.
    915 	* code/qcommon/vm.c (VM_DllSyscall): see lengthy commentary by Ryan.
    916 	The existing VM code makes certain assumptions about the layout of
    917 	varargs on the stack, which fall apart with call conventions that
    918 	don't even put all parameters on the stack (gcc on PPC, register-rich).
    919 	Using a dedicated memory area as our own stack. This should actually
    920 	be the default behavior.
    921 	Later: make vm_* cvars INIT/ROM for DLL_ONLY target.
    922 
    923 	* code/qcommon/common.c: PPC change (from Ryan Gordon).
    924 
    925 2001-02-07  Bernd Kreimeier  <bk@lokigames.com>
    926 
    927 	* code/unix/unix_main.c: disabled FPE for debug for the time
    928 	being (that is, until I can figure out
    929           Program received signal SIGFPE, Arithmetic exception.
    930           RB_BeginSurface (shader=0x449572e0, fogNum=0) at ..//renderer/tr_shade.c:307
    931           307 tess.shaderTime = backEnd.refdef.floatTime - tess.shader->timeOffset;
    932         without any NaN's involved.
    933 	TODO: unmask other FPE's selectively (see Mike's Tribes2, no getenv though).
    934 
    935 2001-02-06  Bernd Kreimeier  <bk@lokigames.com>
    936 
    937 	* SOS: up to date with todays snapshot.
    938 	Note: got the date wrong, comment used was bk010205. Duh.
    939 
    940 	* code/server/sv_snapshot.c (SV_UpdateServerCommandsToClient): below. 
    941 	* code/server/sv_main.c (SV_ReplacePendingServerCommands): new (SOS).
    942 	* code/server/server.h: reliableSent (SOS).
    943 
    944 	* code/renderer/tr_shade.c (ProjectDlightTexture): see below.
    945 	* code/renderer/tr_scene.c: see below.
    946 	* code/renderer/tr_public.h: see below (SOS).
    947 	* code/renderer/tr_local.h: additive light support (SOS).
    948 
    949 	* code/qcommon/cm_trace.c (CM_Trace): new tw.sphere.use branch (SOS).
    950 
    951 	* code/game/g_spawn.c: notta, notq3a entities (SOS).
    952 	* code/game/ai_dmq3.c: MAX_ACTIVATEAREAS search (SOS).
    953 	
    954 	* code/client/cl_cgame.c: see below.
    955 	* code/cgame/cg_syscalls.c (trap_R_AddAdditiveLightToScene): below.
    956 	* code/cgame/cg_syscalls.asm: see below (trap_R_AddAdditiveLightToScene).
    957 	* code/cgame/cg_public.h: CG_R_ADDADDITIVELIGHTTOSCENE (SOS).
    958 	
    959 	* code/bspc/l_math.c: new VectorLengthSquared, removed rotate/matrix (SOS).
    960 	* code/bspc/bspc.c (BSPC_VERSION): was 2.1e, now?
    961 	* code/bspc/be_aas_bspc.c (BotImport_Trace): CM_BoxTrace sig. (SOS).
    962 	* code/bspc/aas_file.c (AAS_WriteAASFile): SOS.
    963 	* code/botlib/be_aas_sample.c (AAS_DeAllocAASLink): SOS.
    964 
    965 	* code/unix/unix_main.c (Sys_LoadDll): do not load from installdir
    966 	in NDEBUG (confusing relic from old Makefile). Postfix -debug.so
    967 	for debug binaries to let both builds coexist.
    968 
    969 	* code/unix/Makefile: updated install targets and VERSION.
    970 
    971 	* Win32: build from SOS snapshot.
    972 	Note: Unix CR/LF in *.dsw/*.dsp fucks up MSVC++.
    973 
    974 2001-02-02  Bernd Kreimeier  <bk@lokigames.com>
    975 
    976 	* SOS: all changes up to today.
    977 
    978 	* code/server/sv_init.c (SV_TouchCGame): added. Also memset
    979 	on reallocated client data (SOS).
    980 	* code/qcommon/qcommon.h: see below.
    981 	* code/qcommon/cvar.c (Cvar_SetLatched): new (SOS).
    982 	* code/qcommon/cm_trace.c: more sphere test fixes (SOS).
    983 	Note: SOS encryption key expired and updated by MrElusive.
    984 
    985 	* code/qcommon/cm_patch.c (CM_TraceThroughPatchCollide): 
    986 	fix from MrElusive, fall through curved corner floors (q3dm17).
    987 	Later: also in SOS (so is shadow FPE fix).
    988 
    989 	* Win32: can't get an unadulterated SOS snapshot to build.
    990 	First, fix CR/LF back again (Linux client converts all).
    991 	 find . -name '*.ds*' -print
    992 	 alias dos2unix='recode ibmpc..lat1' 
    993 	 alias unix2dos='recode lat1..ibmpc'
    994         Next, find a *.dws that works? Nope, no cigar.
    995 	
    996 2001-02-01  Bernd Kreimeier  <bk@lokigames.com>
    997 
    998 	* Win32: have to update dsp/dsw/etc. files in CVS, too.
    999 
   1000 	* CVS: tag previous version before update
   1001          cvs tag id1-27h-loki010131-beta3
   1002 
   1003 	* code/game/q_math.c (Q_rsqrt): guard, #ifndef __linux__ 
   1004 	for assert (for Win32 build).
   1005 	TODO: assert replacement for Win32?
   1006 	* code/q3_ui/ui_qmenu.c: see below.
   1007 	* code/q3_ui/ui_players.c: see below.
   1008 	* code/q3_ui/ui_controls2.c: float const with f postfix
   1009 	Note: Win32 C4305 warning. Somebody at id has been doing
   1010 	a lot of these recently as well...
   1011 
   1012 	* code/cgame/cg_players.c (CG_PlayerShadow): applied fix by 
   1013 	MrElusive, removed FPE hack (player shadows on zero mormals).
   1014 	Prolly in this evenings' CVS.
   1015 
   1016 	* code/server/sv_game.c: new signatures (capsule again).
   1017 	* code/server/server.h: new signatures (SV_Trace,ClipToEntity).
   1018 	* code/server/sv_bot.c: new signatures (above).
   1019 	* code/qcommon/cm_trace.c: a truckload of changes. Math
   1020 	code added before moved upwards. Capsule traces added all
   1021 	over the place, old box traces moved in conditional
   1022 	branches, functions renamed and wrapped. Eliminated some
   1023 	of the previous' versions deadcode to keep diffs smaller.
   1024 	TODO: once a point release is out and reasonably bug
   1025 	TODO  free, remove // bkYYMMDD annotations where SOS related.
   1026 
   1027 	* code/qcommon/cm_public.h: new signatures in prototypes.
   1028 	* code/qcommon/cm_patch.c: dead code re-enabled, new
   1029 	sections (conditional branches for spheres) added to 
   1030 	several trace functions.
   1031 	* code/qcommon/cm_local.h (CAPSULE_MODEL_HANDLE): added.
   1032 	* code/qcommon/cm_load.c (CM_TempBoxModel): capsules.
   1033 
   1034 	* code/game/q_shared.h (Q3_VERSION): 1.27i now (new QVM traps).
   1035 
   1036 	* code/game/g_syscalls.asm: see below.
   1037 	* code/game/g_public.h (SVF_CAPSULE): added (SOS). Also
   1038 	G_ entry poiints for capsule traces.
   1039 
   1040 	* code/client/cl_cgame.c: see below.
   1041 	* code/cgame/cg_syscalls.c: see below.
   1042 	* code/cgame/cg_syscalls.asm: see below.
   1043 	* code/cgame/cg_public.h: new capsule trace code (SOS).
   1044 
   1045 2001-01-31  Bernd Kreimeier  <bk@lokigames.com>
   1046 
   1047 	* Win32: test compile (WinCVS, MSVC++). Have to guard isnan.
   1048 	Note: too much shit going on....
   1049 
   1050 2001-01-30  Bernd Kreimeier  <bk@lokigames.com>
   1051 
   1052 	* CVS: update for patching up (pre-1.27i).
   1053 
   1054 	* SOS: new changes (new collision detection primitives).
   1055 	Now Version 1.27i. 
   1056 	TODO: start testing using DLL's (QVM code is out of sync).
   1057 
   1058 2001-01-25  Bernd Kreimeier  <bk@lokigames.com>
   1059 
   1060 	* SOS: caught up till today (below).
   1061 	* code/qcommon/cm_trace.c: new functions added: RotatePoint,	
   1062 	TransposeMatrix, CreateRotationMatrix (SOS).
   1063 	(CM_TransformedBoxTrace): new rotation code used here.
   1064 
   1065 	* code/q3_ui/ui_demo2.c: sizeof(extension). SOS.
   1066 	* code/game/g_cmds.c (G_SayTo): CON_CONNECTED.
   1067 	* code/game/ai_main.c: HOOK added (SOS).
   1068 	* code/botlib/be_aas_move.c (AAS_HorizontalVelocityForJump): 
   1069 	correct fix for FPE occuring (SOS).
   1070 	* code/game/ai_dmq3.c: initmove.viewoffset (SOS).
   1071 
   1072 	* code/game/q_math.c: guard asser/isnan with Q3_VM (q3asm).
   1073 	TODO: define Com_Error based assert macro? NDEBUG?
   1074 
   1075 2001-01-24  Bernd Kreimeier  <bk@lokigames.com>
   1076 
   1077 	* code/server/sv_ccmds.c (SV_MapRestart_f): some debug.
   1078 	TODO: map_restart 0 disconnects external client in 1.27h?
   1079 
   1080 	* code/renderer/tr_image.c (LoadTGA): added some commentary 
   1081 	and dead code based on fixes from GtkRadiant (Leonardo found
   1082 	flipped TGA's).
   1083 
   1084 2001-01-23  Bernd Kreimeier  <bk@lokigames.com>
   1085 
   1086 	* BETA3: finished testing, ready to upload to id FTP.
   1087 	Later: neither the FreeBSD beta not the Linux Beta3
   1088 	uloaded. Beta2 not yet released, and clients get
   1089 	disconnected with Beta2 and Beta3 on SV_MapRestart_f.
   1090 
   1091 2001-01-22  Bernd Kreimeier  <bk@lokigames.com>
   1092 
   1093 	* code/client/cl_main.c (CL_InitDownloads): undid yesterday (SOS).
   1094 	* code/botlib/be_aas_sample.c (AAS_DeAllocAASLink): guard print (SOS).
   1095 	* code/server/sv_client.c (SV_DirectConnect): VM_Call disconnect (SOS).
   1096 	* code/qcommon/files.c (FS_ListFilteredFiles): trailing slashes (SOS).
   1097 	* code/game/g_cmds.c (SetTeam): print change (SOS).
   1098 	Note: the above plus VectorClear(v1) (below) are todays SOS changes.
   1099 
   1100 	* code/cgame/cg_players.c (CG_PlayerShadow): ignore bogus 
   1101 	(all zero) planes. This caused FPE in ProjectPointOnPlane.
   1102 	TODO: why does trace return zero normal planes?
   1103 	Note: gdb seems totally at loss with vec3_t arrays....
   1104 
   1105 	* code/botlib/be_aas_sample.c (AAS_TraceAreas): FPE.
   1106 	NaN in uninitialized v1 that wasn't supposed to be referred 
   1107 	to in this branch. 
   1108 
   1109 	* code/botlib/be_aas_move.c (AAS_HorizontalVelocityForJump): 
   1110 	FPE divide by zero (zero zvel, zero t) for jump estimates.
   1111 
   1112 	* code/client/cl_main.c (CL_Frame):1856. uivm==NULL on
   1113 	client after server crashed.
   1114 	TODO: check that uivm always non-NULL for client.
   1115 	TODO: do setenv(FX_NO_SIGNALS) to avoid exit errors...
   1116 
   1117 	* code/unix/linux_glimp.c (GLW_SetMode): added "Indirect"
   1118 	Mesa token to software rendering detection. Reworded error
   1119 	output and added drivername.
   1120 	TODO: measure framerate instead?
   1121 
   1122 2001-01-21  Bernd Kreimeier  <bk@lokigames.com>
   1123 
   1124 	* SOS: caught up with changes up until today. 
   1125 
   1126 	* code/server/sv_init.c (SV_SetConfigstring): gentity != NULL 
   1127 
   1128 	* code/server/sv_client.c: connect to "{all bots" server.
   1129 	* code/renderer/tr_init.c: JPEG extension on  screenshots
   1130 	* code/qcommon/files.c: modes based on mods, fs_basegame
   1131 
   1132 	* code/q3_ui/ui_demo2.c: dm3 extension (demo names, protocol).
   1133 
   1134 	* code/game/g_client.c: savedEvents[] removed.
   1135 	* code/game/bg_misc.c: event sequence fixes.
   1136 	* code/client/snd_dma.c (S_StopBackgroundTrack): different use.	
   1137 	* code/client/cl_main.c: demo file handling changed (names).
   1138 	Also CL_InitDownloads: always next download.
   1139 
   1140 	* code/cgame/cg_servercmds.c: cg_thirdPerson.
   1141 	* code/cgame/cg_weapons.c: see below.
   1142 	Also CG_ShotgunPattern: different call (seed parameter).
   1143 
   1144 	* code/cgame/cg_main.c: see below.
   1145 	* code/cgame/cg_local.h: new cg_noProjectileTrail Cvar.
   1146 	* code/cgame/cg_effects.c (CG_BubbleTrail): early out (above).
   1147 
   1148 	* code/bspc/l_poly.c (BOGUS_RANGE): increased.
   1149 	* code/bspc/bspc.c: applied patch up to "2.1e"
   1150 
   1151 2001-01-18  Bernd Kreimeier  <bk@lokigames.com>
   1152 
   1153 	* code/ui/ui_main.c: below.
   1154 	* code/q3_ui/ui_main.c: UI_HASUNIQUECDKEY comment.
   1155 	Note: mods have to return qfalse. See Bug #2890 in Fenris.
   1156 
   1157 2001-01-17  Bernd Kreimeier  <bk@lokigames.com>
   1158 	
   1159 	* BETA2: finished testing, uploaded to id's FTP for release.
   1160 	
   1161 2001-01-16  Bernd Kreimeier  <bk@lokigames.com>
   1162 
   1163 	* CVS: checking in preparation for Beta2.
   1164          cvs tag id1-27h-loki010116-beta2
   1165 
   1166 	* SOS: new bspc "2.1e". No change on 1.27h.
   1167 
   1168 	* TEST: patch-up seems to work fine. No new files have been added
   1169 	to the linkage (i.e. the ft2/ files now added), so we might not be
   1170 	feature complete.
   1171 
   1172 	* code/game/g_active.c (ClientThink_real): id MISSIONPACK
   1173 	conditional in addition to the ones I added earlier.
   1174 	* code/qcommon/files.c: REJECT. Linux hack for userdir threw it off.
   1175 	* code/qcommon/unzip.c: REJECT. CRC-32 section removed.
   1176 	Later: unused tempB
   1177 
   1178 	* code/q3_ui/ui_syscalls.asm: REJECT. Start/StopBackgroundTrack.
   1179 	* code/ui/ui_syscalls.asm: REJECT. syscalls ids from 1.27h 
   1180 	as of SOS (floor/ceil - will this ever get straightened out)
   1181 	* code/win32/win_input.c: REJECT. g_pMouse edit.
   1182 	* ui/menus.txt: REJECT. Replaced with 1.27h version.
   1183         Note: some more due to $SOS$.
   1184 	
   1185 	* ui/: new scripts.
   1186 	cinematicmenu.menu, demo_quit.menu, ingame.txt, serverinfo_old.menu
   1187         vid_restart.menu
   1188 
   1189 	* code/ft2/ttconfig.h: below.
   1190 	* code/ft2/sfconfig.h: below.
   1191 	* code/ft2/pstables.h: below.
   1192 	* code/ft2/psnames.c: below.
   1193 	* code/ft2/psdriver.h/c: below. 
   1194 	* code/ft2/keys.h: below. 
   1195 	* code/ft2/ftbbox.c: new in 1.27h
   1196 	
   1197 	* code/cgame/cg_newdraw.c: beware: cg_newDraw.c gets lost in diff easily.
   1198 
   1199 	* code/cgame/cg_rankings.c: file removed from SOS.
   1200 	
   1201 2001-01-15  Bernd Kreimeier  <bk@lokigames.com>
   1202 
   1203 	* Patch-up: patching up from RC4 to 1.27h current.
   1204 	No changes since 010112 snapshot.
   1205 	ln -s sos010112/ work
   1206  	diff -urbB sos001204-rc4/ work > work.diff
   1207  	ln -s cvs-1.27g/ work
   1208  	patch -p0 < work.diff  > work.patch
   1209  	find cvs1.27g/ -name '*.rej' -print
   1210 
   1211 	* SOS: adding the remaining SOS snapshots to CVS.
   1212          cvs import Quake3_sos sos001211 pr1-27g-win32-001211
   1213 	Note: at this point id warned about repository corruption.
   1214 	Watch out for the syscall stuff in particular.
   1215 	 cvs import Quake3_sos sos010104 pr1-27g-win32-010104
   1216 	 cvs import Quake3_sos sos010108 pr1-27h-win32-010108
   1217          cvs import Quake3_sos sos010110 pr1-27h-win32-010110
   1218 	 cvs import Quake3_sos sos010112 pr1-27h-win32-010112
   1219 	Note: the first 1.27h might be the public (server only) 
   1220 	beta released, the second one was post release. Beware
   1221 	of source files added and removed (botlib headers, FT2).
   1222 	Note: why so late? Don't ask...
   1223 
   1224 2001-01-08  Bernd Kreimeier  <bk@lokigames.com>
   1225 
   1226 	* SOS: id's working up to 1.27h (server side fix for
   1227 	Guard exploit seems to force earlier release). Updating
   1228 	CVS (most of the changes are debug code put in and
   1229 	then disabled, plus some fixes as below). Next patching
   1230 	up to current SOS.
   1231 
   1232 2001-01-07  Bernd Kreimeier  <bk@lokigames.com>
   1233 
   1234 	* Makefile: need to rework this for multiple platforms.
   1235 	We also need null/null_vm.c for platforms where we don't
   1236 	have JIT (assembly emit).
   1237 
   1238 2001-01-04  Bernd Kreimeier  <bk@lokigames.com>
   1239 
   1240 	* code/q3_ui/ui_connect.c (UI_DisplayDownloadInfo): time
   1241 	information for current (vs. start of download) is wrong,
   1242 	thus negative 1 "estimated time", as well as transfer
   1243 	rate just negative downloadSize. Not fixed.
   1244 	
   1245 	* code/unix/unix_main.c (Sys_ParseArgs): added.
   1246 	Note: for support/us, to identify builts. This is only
   1247 	a skeleton right now - if I ever feel the need to support
   1248 	more than "-v" and "--version" I'll have to flesh this out.
   1249 
   1250 	* code/unix/linux_glimp.c (signal_handler): see below.
   1251 	* code/unix/unix_main.c (Sys_Exit): added an abstraction
   1252 	layer for exit/_exit/assert/raise issues.
   1253 	Note: need both a better debug/backtrace handling, and
   1254 	have to find a way to determine why/where the alleged
   1255 	startup/exit errors happen...
   1256 
   1257 2001-01-03  Bernd Kreimeier  <bk@lokigames.com>
   1258 
   1259 	* code/game/g_mem.c (G_Alloc): ERR_DROP initiated by
   1260 	addbot commands for large sv_maxclients, allegedly
   1261 	caused segfaults in 1.17. Not reproducible.
   1262 	TODO: recover more gracefully from failure to add bot?
   1263 
   1264 	* code/renderer/tr_light.c (R_LightForPoint): Tim Angus
   1265 	reports a crashbug with nolight maps. Also assertion in
   1266 	R_SetupEntityLightingGrid, might want conditional there.
   1267 	DONE: fixed crash on LightForPoint for nolight maps.
   1268 
   1269 	* code/qcommon/qcommon.h: NUM_SERVER_PORTS. A feature 
   1270 	request to increase this, or make it more flexible
   1271 	otherwise (Fenris).
   1272 	TODO: id decision on more flexible NUM_SERVER_PORTS.
   1273 
   1274 2001-01-02  Bernd Kreimeier  <bk@lokigames.com>
   1275 
   1276 	* code/unix/snapvector.nasm: fixed FPU bit (the current
   1277 	one had reserved bits off, behavior should not change).
   1278 	* code/qcommon/vm_x86.c: fixed symbols (below).
   1279 	* code/unix/ftol.nasm: FPU bits weren't correct (duh).
   1280 	DONE: shoot-though floor (q3dm5)
   1281 	DONE: cursor-in-rect off  (TA/Player model selection)
   1282 	Note: in gdb, "disassemble <funcname>" is your friend.
   1283 
   1284 	* code/cgame/cg_public.h:  CG_MEMSET is set to 100. In
   1285 	cg_syscalls.asm it's 101. If I change it I get Bad trap 100
   1286 	from the cgame VM code, so the 1.27g "official" VM code
   1287 	uses it.
   1288 
   1289 	* code/unix/linux_common.c: have to fall back to C, the
   1290 	current assembly is buggy...
   1291 	* code/unix/Makefile (linux_common.o): added.
   1292 	Later: also for dedicated. Less portable this way.
   1293 	TODO: C_ONLY for dedicated on non-i386 only?
   1294 
   1295 	* code/qcommon/common.c: do not use memcpy/memset under Linux.
   1296 	* code/unix/linux_common.c: added Andrew's assembly port.
   1297 	TODO: C_ONLY for Com_Memset/Memcpy? Conditionals are fubared.
   1298 
   1299 	* code/qcommon/vm.c (VM_Init): use Win32 defaults (do not
   1300 	use DLL's by default). This exposes DLL rounding errors
   1301 	(damage through floors), and we don't want DLL's used by
   1302 	default anyway.
   1303 	TODO: why vm_ui default of 1?
   1304 
   1305 	* code/botlib/l_precomp.c (SourceWarning): removed assert.
   1306 
   1307 	* code/game/bg_lib.c (acos): defined, but we don't actually
   1308 	use it except where the cg_syscalls.asm trap is used.
   1309 
   1310 	* code/game/g_public.h: missing lots of trap tokens.
   1311 	* code/game/g_syscalls.c: missing lots of traps.
   1312 	* code/game/g_syscalls.asm: more inconsistent hooks, were:
   1313 	 equ floor					-111
   1314          equ ceil					-112
   1315 	 equ testPrintInt			        -113
   1316          equ testPrintFloat			        -114
   1317 	now changed to match cg_syscalls.
   1318 	Note: fixed this in UI earlier, how did this slip through 
   1319 	the diffs against SOS?
   1320 	
   1321 	* code/game/g_syscalls.c: no acos hook.
   1322 	* code/cgame/cg_syscalls.c: no acos hook.
   1323 	* code/cgame/cg_syscalls.asm: has acos hook as -112
   1324 	Note: report from Tim Angus. The acos function is in bg_lib.c
   1325 	which is linked only into ui (not q3_ui). That means we are
   1326 	using libc acos right now?
   1327 	Note: QVM traps are negative?
   1328 
   1329 	* BSD/Irix: tagged current CVS (not all of the below) as
   1330 	 cvs tag id1-27g-loki010102-bsd1
   1331 	for BSD work (Rafael Barrero). Also be used for Irix update.
   1332 
   1333 2001-01-01  Bernd Kreimeier  <bk@lokigames.com>
   1334 
   1335 	* SOS: adding the remaining SOS snapshots to CVS.
   1336          cvs import Quake3_sos sos001201-rc3 pr1-27f-win32-001201-rc3
   1337          cvs import Quake3_sos sos001202 pr1-27f-win32-001202
   1338          cvs import Quake3_sos sos001204 pr1-27g-win32-001204-rc4
   1339 	This is the codebase to which the Linux branch has been patched
   1340 	up. I can't verify whether this is identical to the RC4 codebase
   1341 	as the tag doesn't work (but can check against the ZIP file..)
   1342 	 cvs import Quake3_sos sos001211 pr1-27g-win32-001211
   1343 	The above snapshot contains a (post-release?) fix to ui_syscalls
   1344 	in ui/ and q3_ui/. This change has been used in Linux (Beta1 and
   1345 	above). At this point, id discouraged further use of SOS due to
   1346 	repository corruption on their end. No further snapshots were
   1347 	taken since.
   1348 
   1349 	* Fenris: since the release of the Beta1 bugs have been
   1350 	maintained at http://fenris.lokigames.com/. I am going to
   1351 	list issues here as they get fixed.
   1352 	
   1353 2000-12-21  Bernd Kreimeier  <bk@lokigames.com>
   1354 
   1355 	* code/renderer/tr_font.c: graceful silence with old mods?
   1356 	* code/botlib/l_precomp.c (SourceWarning): graceful exit if old mod?
   1357 
   1358 2000-12-20  Bernd Kreimeier  <bk@lokigames.com>
   1359 	
   1360 	* code/server/sv_ccmds.c (SV_MapRestart_f): see below.
   1361 	* code/qcommon/vm.c: currentVM is 0x0 in VM_ArgPtr.
   1362 	In VM_Call, oldVM was NULL - made conditional the
   1363 	reset of currentVM to oldVM.
   1364 
   1365 2000-12-18  Bernd Kreimeier  <bk@lokigames.com>
   1366 
   1367 	* BETA1: closed Linux beta release. Stripped debug
   1368 	and release binaries, DLL's, and pak4.pk3. CVS checkin,
   1369 	will be tagged as 
   1370             cvs tag id1-27g-loki001218-beta1
   1371 	Later: id added a pak5.pk3 to the Win32 point release,
   1372 	added this to the BETA1 best.
   1373 
   1374 	* code/qcommon/vm_x86.c: C37F.
   1375 	* code/unix/snapvector.nasm: C37F.
   1376 	Note: short of any real evidence, I gamble and use max. 
   1377 	precision (as well as default Linux precision, but NOT 
   1378 	Win32 precision). It seems that precision change is not 
   1379 	really an issue (despite Graeme's claim that the cursor
   1380 	in the menu was/is off). I also pick the roundiung behavior
   1381 	that is seemingly used by ANSI and gcc (but possibly not
   1382 	Win32 _ftol depending on build).
   1383 
   1384 2000-12-15  Bernd Kreimeier  <bk@lokigames.com>
   1385 
   1386 	* code/unix/Makefile: added snapvector.o
   1387 	* code/unix/unix_shared.c: #if 0'ed the old snapvector code.
   1388 	* code/unix/snapvector.nasm (Sys_SnapVectorCW): two new
   1389 	assembly functions from AndrewH that explicitely set the 
   1390 	FPU control word to convert vec3_t, to ensure cross-platform 
   1391 	behavior for both DLL and QVM.
   1392 
   1393 	* code/unix/ftol.nasm (Q_ftolC37F): for globals. 
   1394 
   1395 	* code/unix/unix_main.c: took out global FPU manipulation.
   1396 	For clarity this should be VM only.
   1397 	* code/qcommon/vm_x86.c: added prototypes for the ftol
   1398 	library. To select a specific behavior for the entire VM,
   1399 	set ftolPtr accordingly.
   1400 	Later: the GCC ftol function of course affect the stack
   1401 	(there is no "declspec naked"). The problem seems to be 
   1402 	that the VM never handles the stack in a way compatible 
   1403 	to regular gcc C functions. For some odd reason _ftol seems 
   1404 	to do the right thing under Win32. All 4 control words 
   1405 	implemented at the moment work just fine with the menus.
   1406 
   1407 	* code/unix/ftol.nasm: added a small library of "safe" qftol
   1408 	variations that explicitely set the control word to the
   1409 	relevant (4) possibilities.
   1410 
   1411 2000-12-13  Bernd Kreimeier  <bk@lokigames.com>
   1412 
   1413 	* code/qcommon/vm_x86.c: an entire day spent trying to nail
   1414 	the ftol issues. It breaks down like this: id used to use
   1415 	an unsafe (no setting FPU control word) fistp. That seemingly
   1416 	caused subtle physics bugs which nobody cared about in 1.17.
   1417 	They then changed the UI code, and ran into the UI bugs:
   1418 	menu entries shifted to the right, fonts vanishing. Then
   1419 	they switched to using _ftol. Then they had to reproduce 
   1420 	the old behavior for the physics code due to public outrage.
   1421 	My original port used a simple (long)float cast, which gcc
   1422 	seemingly compiles to code that does OR 0C00 on whatever
   1423 	current control word (precision unchanged). This breaks the
   1424 	menus. If I use the unprotected fistp instead, which should
   1425 	(Linux 037F default) use "nearest/even", then my menus are
   1426 	correct. That would mean Win32 _ftol in id's compile does
   1427 	the same, only that would require /qifist or some equivalent
   1428 	compile flag, which I can't find. Two disassemblies of _ftol
   1429 	I got from others showed OR 0C00 as part of the default (ANSI)
   1430 	behavior.
   1431 
   1432 2000-12-13  Bernd Kreimeier  <bk@lokigames.com>
   1433 
   1434 	* code/game/bg_pmove.c (PmoveSingle): trap_SnapVector.
   1435 	The one true and single call to snap velocity.
   1436 	Note: bspc/map.c:void SnapVector(vec3_t normal)
   1437         qcommon/cm_patch.c:void CM_SnapVector(vec3_t normal)
   1438 	game/q_shared.h: #define SnapVector(v) {v[0]=((int)(v[0]));...
   1439 
   1440 	* code/client/cl_cgame.c: CG_SNAPVECTOR. 
   1441 	* code/server/sv_game.c:  G_SNAPVECTOR.
   1442 	Note: these go through trap_SnapVector in syscalls.
   1443 
   1444 	* code/unix/unix_shared.c (Sys_SnapVector): sticking to
   1445 	old Linux version for now...
   1446 	* code/win32/win_shared.c (Sys_SnapVector): changed.
   1447 	Note: Graeme points out this was changed to fix ftol
   1448 	artifacts?
   1449 	TODO: calculate errors for various ftol variants...
   1450 
   1451 	* code/qcommon/vm_x86.c: both the old fistp code (1.17)
   1452 	and the new qftol function apparatently work. Using the
   1453 	ftol.nasm code for now.
   1454 
   1455 	* code/unix/Makefile: DO_NASM and ftol.o. 
   1456 
   1457 	* code/unix/ftol.nasm (qftol): created from Mike's SoF
   1458 	replacements, with Andrew's help to satify the VM
   1459 	stack/call requirements.
   1460 	TODO: use Q_ftol herein to replace myftol elsewhere.
   1461 
   1462 	* code/unix/unix_main.c (Sys_ConfigureFPU): SIGFPE. 
   1463 	TODO: divide by zero in botlib. Disable this for now.
   1464 	Note: we can't introduce calculation differences between
   1465 	versions, so fixing these will have to wait.
   1466 
   1467 	* code/qcommon/vm_x86.c: two new lines in Win32 branch 
   1468 	missing from Linux assembly in AsmCall:
   1469 	 mov eax, dword ptr [edi] 
   1470 	 and eax, [callMask]      
   1471         Added, doesn't seem to affect UI etc. bugs.
   1472 	Later: no FTOL_PTR, use fistp non-IEEE assembly as in old
   1473 	version. This seems to work for Q3 and TA, while qftol 
   1474 	(simple cast) does not - for Win32 Graeme says the reverse 
   1475 	is true.
   1476 
   1477 	* code/qcommon/vm_x86_old.c: used the old cvs-1.17 version.
   1478 	Two fixes (Hunk_Alloc, Com_Memcpy), and it works:
   1479 	  +set vm_game 2 +set vm_ui 2 +set vm_cgame 2 
   1480         UI, cgame and game w/o apparent problems.
   1481 
   1482 2000-12-12  Bernd Kreimeier  <bk@lokigames.com>
   1483 
   1484 	* code/unix/Makefile: cleanup of redundant flags.
   1485 	Removed bogus MALLOC_CHECK (note to self: export MALLOC_CHECK_=2).  
   1486 	Also DO_SHLIB_CC on all UI DLL's.
   1487 	Added and removed DEBUG_VM flag.
   1488 	TODO: figure out whether Zoid did UI this way intentionally.
   1489 	Note: this seemingly fixed the botimport problem, although
   1490 	most of the changes were just redundant CFLAGS removed. Given
   1491 	our wanker toolchain, should have been more paranoid. All
   1492 	DLL's can now be used w/o apparent problems.
   1493 
   1494 	* code/server/sv_main.c: gvm init.
   1495 	* code/server/sv_game.c: gvm assertions.
   1496 	* code/unix/unix_main.c (Sys_LoadDll): print vmMain
   1497 	Note: top no avail. There is some odd ld/gdb problem here
   1498 	that prevents examining globals and obfuscates part of
   1499 	the stack between VM_Call and lower level code, through
   1500 	G_InitGame. This is not just DLL's being loaded and unloaded.
   1501 	Wromg flags during build? The vmCvar for "bot_developer"
   1502 	ends up overlapping global botimport in memory, which
   1503 	thus zero-fills part of the function pointer table.
   1504 
   1505 	* code/server/sv_bot.c (SV_BotInitBotLib): this (by way of
   1506 	GetBotLibAPI) is responsible for setting botimport, which,
   1507 	if using the game DLL, is not properly set up. Called in
   1508 	SV_Init().
   1509 
   1510 	* code/game/q_shared.c: Q_strncpyz does zero padding (duh).
   1511 	Note: calls strncpy, which does a zero fill up to destsize.
   1512 	If destsize exceeds memory size, zero padding will overwrite
   1513 	adjacent memory. Suspicion was this happend to botimport.
   1514 
   1515 	* code/qcommon/cvar.c: possible problem in Q_strncpyz call.
   1516 
   1517 	* code/botlib/be_ai_weap.c (weaponinfo_fields): made this static.
   1518 	Note: it seems that the "number" string got replaced by
   1519 	 p def.fields[0]
   1520          {name = 0x40000000 "\177ELF\001\001\001", offset = 2, type = 50, ..
   1521         Memory corruption?
   1522 
   1523 	* code/game/inv.h (WEAPONINDEX_GAUNTLET): defined here. 
   1524 	* botfiles/weapons.c (Gauntlet): the baseq3/qagamei386.so parser
   1525 	breaks here:
   1526 	 number				WEAPONINDEX_GAUNTLET
   1527 	* code/botlib/l_precomp.c (SourceWarning): added assertion to
   1528 	trap botlib parsing problem..
   1529 
   1530 	* RC1: for beta test. Using my own vm/ui.qvm files in this case.
   1531 	TODO: Setup with nouninstall.
   1532 	TODO: fix game DLL/ botlib setup problem (so all DLL's work)
   1533 	TODO: SIGFPE
   1534 	TODO: profile?
   1535 	
   1536 	* code/unix/Makefile (ai_vcmd.o): added to game DLL linkage. 
   1537 	How the fuck did this happen?
   1538 	DONE: "qagamei386.so: undefined symbol: BotVoiceChat_Defend"
   1539 
   1540 	* TEST:  +set vm_ui 2 (vm_x86, not interpreter). Breaks!
   1541 	Further: qagame had undefined, but seemingly gets reloaded 
   1542 	second try (I hate the Linux linker).
   1543 	* TODO: never reload fail DLL, abort engine
   1544 
   1545 
   1546 2000-12-11  Bernd Kreimeier  <bk@lokigames.com>
   1547 
   1548 	* TEST: recompile QVM/DLL and executable to test new UI code.
   1549 	The UI QVMs from the paks still do not work.
   1550 
   1551 	* SOS: changes in UI code!
   1552 	* code/q3_ui/ui_public.h: this file is deprecated
   1553 	Note: e.g. it does not contain the background track calls.
   1554 	* code/ui/ui_public.h: the uiImport_t enum here determines
   1555 	the values.
   1556 	* code/ui/ui_syscalls.asm: same as q3_ui now, were:
   1557          equ floor					-111
   1558 	 equ ceil					-112
   1559 	* code/q3_ui/ui_syscalls.asm: these are now switched, were:
   1560 	 equ trap_S_StartBackgroundTrack			-63
   1561          equ trap_S_StopBackgroundTrack				-64
   1562 	The new values match the ui/ equivalent. Also, floor (-108) 
   1563 	and ceil (-109) are different in ui/.
   1564 	
   1565 	* CVS: going to check in this snapshot and tag it as
   1566 	    cvs tag id1-27g-loki001209-rc4
   1567 	Presumed equivalent to SOS tag "1.27g RC4" (master). As I can't
   1568 	obtain the tagged code using SOS (neither Win32 nor Linux client)
   1569 	I can only guess.
   1570 
   1571 	* TEST: use my own VM code, ion baseq3/vm/*.qvm and missionpack/vm/.
   1572 	This works - in other words, the menu bug seems in the UI code, and
   1573 	is fixed in my codebase.
   1574 
   1575 	* TEST: make release. 
   1576 	Note: I can postpone DLL specific problems. Bad performance is not
   1577 	as important as outright bugs. Thus the UI QVM issue is the only
   1578 	one that stops me from creating an RC.
   1579 	TODO: Q3 UI QVM code from pak file does not work (neither does TA).
   1580 	TODO: sound with video playback still awful. Threaded sound, I guess.
   1581 	TODO: ERROR: couldn't open demos/DEMO002.dm3.dm_48 (same demo001.dm3.dm_48)
   1582 	
   1583 	TODO: do not show Q3 demos in TA menu?
   1584 	TODO: new demos for Q3? Or at least error message?
   1585 	
   1586 	* code/game/bg_lib.c: itrinsics excluded by Q3_VM (another -O
   1587 	compile). Uninitialized variable.
   1588 	* code/unix/Makefile: -O for uninit on patched code. Also shortcuts. 
   1589 	TODO: DC_ONLY seems an obsolete flag, used in Makefiles, not source.
   1590 
   1591 	* TEST: +set sv_pure 0 +set vm_game 1 +set vm_cgame 1 +set vm_ui 0
   1592 	Turns out that the pak0.pk3 UI QVM code is seemingly broken in TA
   1593 	and Q3, but my UI DLL is not. In reverse, the QVM game/cgame for
   1594 	Q3 seems to work quite well (including bots). The TA game/cgame
   1595 	also works, including botlib init.
   1596 	TODO: BotLib Init using game DLL gives: 
   1597 	TODO:  Error: file weapons.c, line 38: unknown structure field number
   1598         TODO:  Fatal: couldn't load the weapon config
   1599         TODO:  Error: BotLoadMap: bot library used before being setup
   1600 	
   1601 	* TEST: checked the rc4winstlr.zip CD tree against
   1602 	my test install. baseq3/pak4.pl3 and missionpack/pak0.pk3
   1603 	are identical, but I finally recognized that there was
   1604 	a missionpack/pak1.pk3 not in the final install - left over 
   1605 	from an earlier update from id. Doesn't seem to affect the
   1606 	DLL based runs at all.
   1607 	Note: I still do not have the final CD snapshot Robert
   1608 	promised me mid last week, they haven't even fixed the
   1609 	FTP account they took down. Communication with id is as
   1610 	abyssmal as ever. 
   1611 
   1612 2000-12-08  Bernd Kreimeier  <bk@lokigames.com>
   1613 
   1614 	* TEST: running with RC4 data files.
   1615 	TODO: "bot library used before setup" (Q3+TA)
   1616 	TODO: Q3 old mods wreak havoc (graceful bounce)
   1617 	TODO: supress "FreeType code not available" in renderer
   1618 	TODO: can't move in Q3
   1619 	TODO: items flicker in Q3
   1620 	TODO: no decals in Q3
   1621 	TODO: VM UI code still broken (Q3+TA)
   1622 	TODO: sound code is awful
   1623 	TODO: video playback inferior to earlier builds
   1624 
   1625 	* code/q3_ui/ui_local.h: prototype trap_VerifyCDKey(..)
   1626 	* code/game/g_active.c ( StuckInOtherClient): TA only.
   1627 	* code/cgame/cg_draw.c: 4x unbalanced `#endif' - from patch?
   1628 	* code/null/null_client.c (CL_CDKeyValidate): dummy added.
   1629 	* code/qcommon/common.c: Q_acos missing, changed conditionals
   1630 	
   1631 	* code/qcommon/vm_x86.c: unreacheable _asm instruction that
   1632 	gcc doesn't quite like... #if 0'ed for now
   1633  	TODO: understand _asm { mov eax,[ebx] }, fix it for gcc
   1634 
   1635 	* TEST: compile...
   1636 
   1637 	* code/ui/ui_main.c: full REJECT. Manual merge.
   1638 	Note: preserved debug_protocol lines, who knows what it's good for.
   1639 
   1640 	* code/qcommon/files.c: REJECT. SafeMode, demo server FS_Restart.
   1641 
   1642 	* code/client/snd_mem.c: REJECT: $SOS$.
   1643 	* code/client/snd_dma.c: REJECT: $SOS$.
   1644 	* code/client/cl_cin.c: REJECT. com_timescale, $SOS$.
   1645 
   1646 	* code/cgame/cg_draw.c: REJECT. Lots, but virtually all either
   1647 	float postfix (on some, not all places), or #ifndef MISSIONPACK
   1648 	that I had already put in during -Werror (conditional unused).
   1649 
   1650 	* code/cgame/cg_consolecmds.c: REJECT. id commented unused code
   1651 	that I had #if 0'ed earlier.
   1652 
   1653 	* code/game/: three REJECT for $SOS$.
   1654 	* code/botlib/: lots REJECT for $SOS$.
   1655 
   1656 	* Patch: patching up from demo source.
   1657 	ln -s sos001204-rc4 work
   1658  	diff -urbB sos001122-demo/ work > work.diff
   1659  	ln -s cvs-1.27b/ work
   1660  	patch -p0 < work.diff  > work.patch
   1661  	find cvs1.27b/ -name '*.rej' -print
   1662 
   1663 	* CVS: going to check in this snapshot and tag it as
   1664 	    cvs tag id1-27b-loki001208-demo
   1665 	Then patching up to RC4, as of sos001204-rc4 (no changes since,
   1666 	should be equivalent to SOS tag "1.27g RC4" (raduffy), i.e. master.
   1667 
   1668 	* TEST: installed demota/ from Win32 distribution. Binary
   1669 	fails claiming "Corrupted pak0.pk3". Abandoned.
   1670 	Note: a Linux demo for Q3TA has no priority. Most important is
   1671 	the Q3A point release in time for Q3TA hitting shelves, followed
   1672 	by testing for Q3TA. The source is in CVS and tagged (see above)
   1673 	in case a demo matching the released files has to be provided
   1674 	later.
   1675 	
   1676 
   1677 2000-12-07  Bernd Kreimeier  <bk@lokigames.com>
   1678 
   1679 	* TEST: compile and link - succeeds.
   1680 
   1681 	* code/ui/ui_main.c: UI_StopServerRefresh now uaws. 
   1682 	New unused variables.
   1683 	
   1684 	* code/unix/unix_main.c: added  Sys_LowPhysicalMemory() stub.
   1685 	TODO: write Linux equivalent to GlobalMemoryStatus.
   1686 
   1687 	* code/qcommon/common.c: Com_Memset/Com_Memcpy. Neither assembly 
   1688 	nor C versions included if not on Win32 i386. 
   1689 	TODO: using/porting assembly?
   1690 
   1691 	* code/qcommon/files.c: unused variable.
   1692 	TODO: fs_scrambledProductId unused if 0 for now.
   1693 	Note: -DFS_MISSING for id's pak cleanup, not used.
   1694 
   1695 	* TEST: compile and link - fails.
   1696 
   1697 	* code/macosx/Client/Makefile.postamble: empty ORIG.
   1698 	* code/macosx/Client/Makefile.preamble: ORIG. $(BOTLIB_OBJS) added.
   1699 
   1700 	* code/server/sv_client.c: ORIG. Com_Memset.
   1701 	* code/renderer/tr_shader.c: ORIG. Com_Memset, CIN_Shader.
   1702 	* code/qcommon/vm_x86.c:  ORIG. Com_Memcpy. 
   1703 	* code/qcommon/unzip.c: REJECT. Com_Memcpy, $SOS$. 
   1704 	* code/qcommon/qcommon.h: ORIG. PROTOCOL 47, plus Sys_LowPhysicalMemory.
   1705 	* code/qcommon/md4.c: Com_Memset,Com_Memcpy (ORIG).
   1706 	* code/qcommon/files.c (Sys_ConcatenateFileList): REJECT.
   1707 	Our additons threw it off, plus $SOS$. 
   1708 	* code/qcommon/common.c: they fixed same unused variables (REJECT).
   1709 
   1710 	* code/ui/ui_shared.c: additions (ORIG).
   1711 	* code/ui/ui_gameinfo.c: COM_Compress added (ORIG).
   1712 	* code/ui/ui_atoms.c: print statements removed (ORIG).
   1713 	* code/ui/ui_main.c (UI_DoServerRefresh): REJECT on comment edit... 
   1714 
   1715 	* code/game/g_cmds.c (Cmd_VoiceTaunt_f): logic changed heavily. ORIG.
   1716 	* code/game/q_shared.h: Q3_VERSION "Q3 Team Arena Demo 1.27b"
   1717 	plus Com_Memset, Com_Memcpy, CIN_shader, COM_Compress.
   1718 	* code/game/g_main.c: Cvar change only
   1719 	* code/game/ai_dmq3.c: $SOS$.
   1720 
   1721 	* code/client/snd_mix.c: Com_Memset
   1722 	* code/client/client.h: additions (ORIG).
   1723 	* code/client/snd_mem.c: see below.
   1724 	* code/client/snd_dma.c: $SOS$ (CVS keyword).
   1725 
   1726 	* code/client/cl_cin.c: they removed unused (REJECT).
   1727 	* code/cgame/cg_servercmds.c: ORIG. compress, noTaunt etc.
   1728 	* code/cgame/cg_main.c: ORIG. Conditonal branch, COM_Compress.
   1729 	* code/cgame/cg_consolecmds.c: ORIG. Cvar values changed.
   1730 	* code/cgame/cg_draw.c (CG_DrawTeamBackground): ORIG. 
   1731 	no reject but *.orig file created. I just mark spots were 
   1732 	code changed after verifying the patch succeeded.
   1733 
   1734 	* code/cgame/cg_event.c: fixed reject (REJECT).
   1735 	* code/botlib/: all *.rej here due to SOS/CVS $Keyword$.
   1736 	TODO: preserve SOS comments/rev history somehow.
   1737 
   1738 	* Patch: patching up to demo source.
   1739 	ln -s sos001122-demo work
   1740  	diff -urbB sos001119/ work > work.diff
   1741  	ln -s cvs-1.26/ work
   1742  	patch -p0 < work.diff  > work.patch
   1743  	find cvs1.26/ -name '*.rej' -print           
   1744 	
   1745 	* CVS: going to check in this snapshot and tag it as
   1746 	  cvs tag id1-26w-loki001207
   1747 	to prepare for upgrading to RC4. I have already made
   1748 	many more changes than I wanted to w/o getting any 
   1749 	closer to pinpointing the problem, I might as well
   1750 	patch up to id's more current sources.
   1751 
   1752 	* code/botlib/be_interface.c: initialize by memset. Turns
   1753 	out that this fails in Export_BotLibSetup on BotSetupWeaponAI
   1754 	loading "weapons.c" (from the pak, presumably) with an unknown
   1755 	structure field number. Mismatch of datafiles vs. source again.
   1756 	
   1757 	TODO: id replaced memsets in later source.
   1758 	TODO: have memsets on all exports and imports.
   1759 
   1760 	* SOS: RC4 source should be tagged "1.27g RC4" (raduffy).
   1761 	Unfortunately the Linux client doesn't care a bit. Show
   1762 	History does work if from/to date differ by at least a
   1763 	day, and it shows the tag on code/ (only that subtree),
   1764 	but recursive get aborts halfway.
   1765 	Manual: http://www.sourcegear.com/SOS/Doc/
   1766 
   1767 2000-12-06  Bernd Kreimeier  <bk@lokigames.com>
   1768 
   1769 	* TEST: accepting missing shaders now. No bots, but I can
   1770 	actually enter the game and play (more than can be said for
   1771 	classic Q3 right now).
   1772 	TODO: Error: BotStartFrame: bot library used before being setup
   1773 
   1774 	* code/renderer/tr_shader.c: took out assertion for now...
   1775 	* TEST: now missiopack/cgame loads
   1776 	TODO: tr_shader.c:2275: R_FindShaderByName: failed 
   1777 	TODO: searches ui/assets/3_cursor2.TGA, has ui/assets/3_cursor3.tga
   1778 	
   1779 	* code/unix/Makefile (MPCGOBJ): ui_shared.o (duh).
   1780 	DONE: /cgamei386.so: undefined symbol: PC_Float_Parse
   1781 	
   1782 	* code/botlib/be_ai_goal.c: initialize campspots etc. This
   1783 	might or might not fix this one (didn't get back to gdb due
   1784 	to mouse-only navigation).
   1785 	DONE: 0x80d1d5b in BotFreeInfoEntities () at be_ai_goal.c:447	
   1786 
   1787 	* TEST: this time with missionpack/cgame loading... noy
   1788 	TODO: TA menu blocked after end of intro movie
   1789 	TODO: console in_mouse 1 doesn't grap pointer even on vid_start?
   1790 
   1791 	* code/cgame/cg_newdraw.c: -Werror.
   1792 	* code/unix/Makefile (MPCGOBJ): cg_newdraw.o was missing (duh).
   1793 	DONE: missionpack/cgamei386.so: undefined symbol: CG_OwnerDrawVisible"
   1794 
   1795 	* code/ui/ui_shared.c:1309 assign after bail on NULL.
   1796 	DONE: segfault in Item_SetFocus (item=0x0, x=0, y=0)
   1797 
   1798 	* TEST: new set of DLL's (this time hopefully correct).
   1799 	All baseq3/ DLL's load, as does the missionpack/ UI DLL.
   1800 	The menus now work in both (TA seems mouse-only on everything 
   1801 	but "Quit"). Segfault on delayed TA "Quit" (stack fubared):
   1802 	#5  0x809fc28 in VM_Call (vm=0x88408a0, callnum=3) at ..//qcommon/vm.c:617
   1803 	#6  0x805aafc in CL_KeyEvent (key=9, down=qtrue, time=128644) cl_keys.c:1194
   1804 	TODO: TA menu's w/o mouse? 
   1805 	TODO: Win32 goes submenus but does not unfold
   1806 	TODO: Linux does not go submenus
   1807 	
   1808 	* code/ui/ui_main.c: see below. 
   1809 	TODO: LCC gets fits -  operands of = have illegal types 
   1810 	TODO: 'pointer to const unsigned char' and 'pointer to const char'
   1811 	* code/ui/ui_shared.c: see below.
   1812 	* code/ui/ui_gameinfo.c: see below.
   1813 	* code/ui/ui_atoms.c: see below.
   1814 	* code/game/g_bot.c: more cruft.
   1815 	* code/cgame/cg_draw.c: loads of functions modified for
   1816 	MISSIONPACK that aren't used at all for MISSIONPACK anymore.
   1817 	Development relics.
   1818 
   1819 	* code/cgame/cg_consolecmds.c: -Werror.
   1820 	Note: due to Makefile error never ever compiled...
   1821 
   1822 	* code/unix/Makefile: fixed various dependency errors
   1823 	for game and ui library.
   1824 	TODO: create a new Makefile with patsubst and rules.
   1825 	TODO: why C_ONLY in the i386 dedicated server?
   1826 
   1827 	* code/unix/unix_main.c: use dlerror() excessively.
   1828 	Littered more unused DLL related functions with assert(0).
   1829 	TODO: clean up Sys_Load/UnloadDll (a real mess)
   1830 	TODO: remove Zoid code cruft (unused per-DLL functions)
   1831 	
   1832 	* code/game/bg_misc.c: changed G_Printf for Com_Printf.
   1833 	This was undefined in baseq3/uii386.so preventing loading.
   1834 
   1835 	* TEST: +set sv_pure 0 +set vm_game 0 +set vm_cgame 0 +set vm_ui 0
   1836 	Note: so far I used only the game DLL..  duh.
   1837 	UI DLL fails to load: missing G_Printf.
   1838 
   1839 	* code/unix/Makefile:  -DMALLOC_CHECK in addition to
   1840 	the -DZONE_DEBUG I have used since switching to calloc.
   1841 	Using MALLOC_CHECK=1 for now, might use 2 if something
   1842 	comes up.
   1843 
   1844 	* code/renderer/tr_init.c (GL_SetDefaultState): it does get 
   1845 	called, but does not show up in the log.
   1846 	
   1847 	* TEST: tried executing a script - get bounced.
   1848 	TODO: is there any way to jump into a map?
   1849 	TODO: cl_cinematics 0 (supress all fullscreen RoQ)
   1850 	Next: used r_logfile 200 in Win32 (RC4) and Linux.
   1851 	There is a buckload of setup code seemingly not done
   1852 	at all in Linux? Either that, or logging is enabled
   1853 	with a delay in Linux.
   1854 
   1855 	* code/unix/linux_glimp.c: fixed autorepeat (H2/Fakk2 way). 
   1856 
   1857 2000-12-05  Bernd Kreimeier  <bk@lokigames.com>
   1858 
   1859 	* code/renderer/tr_mesh.c: added assert there.
   1860 	* TEST: menus and in-game drawing are just as they were with 
   1861 	the initial SOS001119 port. In addition:
   1862 	  R_AddMD3Surfaces: no such frame 0 to -2147483477 
   1863 	     for 'models/players/xaero/upper.md3'
   1864           R_AddMD3Surfaces: no such frame -2147483477 to 171 
   1865 	  R_AddMD3Surfaces: no such frame 171 to -2147483498
   1866         ad nauseam (used as my player model).
   1867 	Triggered: haveing a trRefEntity_t *) 0x41dbbd00 with 
   1868 	frame = -2147483477. Might be a red herring (PRINT_DEVELOPER), 
   1869 	ignore for now.
   1870 
   1871 	* code/ui/ui_main.c: missing return.
   1872 	* code/ui/ui_shared.c: excess byte in initializer (which gcc
   1873 	did not caught, but LCC did). Also LCC complains about
   1874 	missing returns, but gcc doesn't (neither says unreacheable
   1875 	code though). If necessary (MsVC?) guard with Q3_VM.
   1876 
   1877 	* code/q3_ui/ui_ingame.c: see below.
   1878 	* code/q3_ui/ui_atoms.c: voidfunc_f. LCC warns about conversion 
   1879 	from `pointer to void' to `pointer to void function(void)' 
   1880 	being compiler dependent. Casting NULL. Guess what, doesn't fix 
   1881 	it either.
   1882 	TODO: do not use these cursed scripts to generate VM code,
   1883 	we do not have proper rules for LCC/q3asm, thus the files never
   1884 	get updated.
   1885 
   1886 	* code/unix/Makefile: for paranoia's sake recreated the 1.17
   1887 	compile for the UI DLL (where only q_shared/math were actually
   1888 	compiled as DO_SHLIB_CC.
   1889 	Later: switched to different gcc. 
   1890 
   1891 	* STATIC: remaining problems are vmMain (same entry point for all
   1892 	DLL's), could use cgMain, uiMain and gMain here for HARD_LINKED. 
   1893 	Note: I don't think id has used this in ages.
   1894 	Plus all the collisions in *_syscalls.c, which simply can't be
   1895 	fixed cheaply. None is the superset of 2 others, neither seems
   1896 	w/o overlap to others. Full stop.
   1897 
   1898 	* code/botlib/be_aas_move.c: see below.
   1899 	* code/game/ai_dmq3.c: VEC_UP/DOWN, MOVEDIR_UP/DOWN now static.
   1900 	See also game/g_utils.c for existing static duplicates.
   1901 
   1902 	* code/game/q_shared.h: #define stricmp strcasecmp 
   1903 	* code/unix/Makefile:  no mo'  -Dstricmp=strcasecmp, see q_shared.h
   1904 	Also: no mo'  -I/usr/include/glide, no FX
   1905 	TODO: are we building against system GL headers? ../Mesa/?
   1906 
   1907 	* code/q3_ui/ui_atoms.c: comment on duplication
   1908 	* code/cgame/cg_drawtools.c: use UI/CGAME_HARD_LINKED on UI duplicates 
   1909 	TODO: does this UI_ code in cg_drawtools/ui_atoms belong into ui_shared?
   1910 
   1911 	* code/unix/Makefile: use -DQ3_STATIC 
   1912 	* code/game/q_shared.h (*_HARD_LINKED): trigger on Q3_STATIC 
   1913 	Later: collision between UI and CGAME is still there. This fixed
   1914 	the Com_Error, Com_Printf issues though
   1915 
   1916 	* code/unix/Makefile ($(B)/q3static/ai_vcmd.o): this file was
   1917 	missing, hence undefined symbol.
   1918 	($(B)/baseq3/game/ai_vcmd.o): same here.
   1919 	($(B)/missionpack/game/ai_vcmd.o): same here.
   1920 
   1921 	* STATIC: cg_syscalls.c, g_syscalls.c and ui_syscalls.c alias.
   1922 	Multiply defined symbols:
   1923 	 Com_Error, Com_Printf
   1924          VEC_UP, VEC_DOWN
   1925 	 MOVEDIR_UP, MOVEDIR_DOWN
   1926 	 vmMain
   1927 	 dllEntry
   1928 	 PASSFLOAT
   1929 	 trap_Error
   1930 	 trap_Milliseconds
   1931 	 trap_Argc
   1932 	 trap_Argv
   1933          trap_FS_FOpenFile
   1934 	 trap_FS_Read
   1935 	 trap_FS_Write
   1936          trap_FS_FCloseFile
   1937          trap_FS_GetFileList
   1938 	 trap_R_RegisterModel
   1939 	 trap_R_RegisterSkin
   1940 	 trap_R_RegisterFont
   1941 	 trap_R_RegisterShaderNoMip
   1942 	 trap_R_ClearScene
   1943 	 trap_R_AddRefEntityToScene
   1944 	 trap_R_AddPolyToScene
   1945          trap_R_AddLightToScene
   1946 	 trap_R_RenderScene
   1947 	 trap_R_SetColor
   1948          trap_R_DrawStretchPic
   1949 	 trap_R_ModelBounds
   1950 	 trap_UpdateScree
   1951          trap_S_StartLocalSound
   1952 	 trap_S_RegisterSound
   1953 	 trap_Key_IsDown
   1954 	 trap_Key_GetCatcher
   1955 	 trap_Key_SetCatcher
   1956 	 trap_GetGlconfig
   1957          trap_PC_AddGlobalDefine
   1958 	 trap_PC_LoadSource
   1959 	 trap_PC_FreeSource
   1960 	 trap_PC_FreeSource
   1961 	 trap_PC_ReadToken
   1962 	 trap_PC_SourceFileAndLine
   1963 	 trap_S_StopBackgroundTrack
   1964 	 trap_S_StartBackgroundTrack
   1965 	 trap_RealTime
   1966 	 trap_CIN_PlayCinematic
   1967 	 trap_CIN_StopCinematic
   1968 	 trap_CIN_RunCinematic
   1969 	 trap_CIN_DrawCinematic
   1970          trap_CIN_SetExtents
   1971 	 trap_MemoryRemaining
   1972          trap_SendConsoleCommand
   1973 	 trap_Cvar_Register
   1974 	 trap_Cvar_Update
   1975          trap_Cvar_Set
   1976   	 trap_Cvar_VariableValue
   1977          trap_Cvar_VariableStringBuffer
   1978 	 trap_RealTime
   1979 	 trap_SnapVector  // used in game/bg_*.c, needs conditional
   1980 	More aliasing between ui_atoms.c and cg_drawtools.c:
   1981          UI_DrawBannerString
   1982          UI_ProportionalStringWidth
   1983 	 UI_ProportionalSizeScale
   1984         Undefined symbol: ai_team.o: In function `FindHumanTeamLeader':
   1985          ai_team.c:1899: undefined reference to `BotVoiceChat_Defend'
   1986 	Note: 
   1987 	
   1988 	* code/game/g_main.c: unused.
   1989 	* code/game/g_arenas.c: unused.
   1990 	* code/game/ai_team.c: init.
   1991 	* code/game/ai_dmnet.c: /* in comment (odd).
   1992 	Note: why do these come up now but not earlier?
   1993 	TODO: the make dependencies might target wrong files.
   1994 
   1995 	* code/unix/Makefile (TARGETS): added q3static.
   1996 	Note: this is baseq3/
   1997 
   1998 	* TEST: +set r_logfile 100. It seems that the addition of
   1999 	code (add an assertion etc.) changes the behavio of the binary.
   2000 	The intro cinematics code seems to suffer first - didn't play,
   2001 	then played, then (another assert added) doesn't play. Watch
   2002 	out for (missionpack):
   2003 	  UI_CIN_PlayCinematic
   2004           SCR_PlayCinematic( mpintro.roq )
   2005           trFMV::play(), playing mpintro.roq
   2006 	Also fails to exit cleanly: break gives
   2007 	 #0  0x401919ee in __select ()
   2008          #1  0x400bbcb8 in __DTOR_END__ ()
   2009          #2  0x4004baa1 in _XSend ()
   2010          #3  0x452b009f in GLXRenderFlush ()
   2011          #4  0x804ce0c in _XRead ()
   2012          #5  0x40680813 in ?? ()
   2013 	Stack is corrupted.
   2014         Note: ~/.q3a/gl.log
   2015 	TODO: write per-frame files (see Heretic2)
   2016 	TODO: add Heretic2 QGL (more detail)
   2017 
   2018 	* code/unix/linux_qgl.c (QGL_EnableLogging): fixed countdown
   2019 	(i.e. propagated changes from win32/, see Fakk2).
   2020 
   2021 	* code/unix/linux_glimp.c: fixed QGL_EnableLogging argument
   2022 	to avoid cast error (always qfalse).
   2023 
   2024 	* code/unix/Makefile (DEBUG_CFLAGS): use ZONE_DEBUG.
   2025 
   2026 	* code/qcommon/common.c: replaced malloc with calloc calls.
   2027 
   2028 	* code/q3_ui/ui_local.h: have to use ui/ui_public.h
   2029 	* code/cgame/cg_servercmds.c: requires ../ui/menudef.h
   2030 
   2031 	* code/cgame/cg_consolecmds.c: ui/ui_shared.h is unique.
   2032 	* code/q3_ui/ui_public.h: make sure this won't be compiled.	
   2033 	* code/client/client.h: we have to include ui/ui_public.h.
   2034 	Note: id is obviously maintaing only the ui/ headers, so the
   2035 	headers in q3_ui/ are deprecated.
   2036 
   2037 	* code/renderer/tr_shader.c: added assertions (see Ryan's Fakk2
   2038 	problems with missing shaders).
   2039 
   2040 	* code/game/g_cmds.c: below.
   2041 	* code/game/ai_vcmd.c: below.
   2042 	* code/game/ai_team.c: below.
   2043 	* code/game/ai_dmnet.c: below.
   2044 	* code/game/ai_dmq3.c: below.
   2045 	* code/game/ai_chat.c: below.
   2046 	* code/game/ai_cmd.c: ../../ui/menudef.h (new Q3TA script directory).
   2047 
   2048 	* code/cgame/cg_newdraw.c: make sure it won't compile w/o MISSIONPACK.
   2049 
   2050 	* code/cgame/cg_servercmds.c: below.
   2051 	* code/cgame/cg_event.c: below.
   2052 	* code/cgame/cg_consolecmds.c: below.
   2053 	* code/client/keys.h: below.
   2054 	* code/client/client.h: below.
   2055 	* code/q3_ui/ui_local.h: include from ../q3_ui/ not ../ui/.
   2056 	Note: id seems to intentionally use the header from the new ui/.
   2057 
   2058 	* Makefile: checked -I$(UIDIR), there is no such. That means all
   2059 	files include directly, which means all (including Q3) are using
   2060 	the new ui/ headers.
   2061 
   2062 2000-12-04  Bernd Kreimeier  <bk@lokigames.com> 
   2063 
   2064 	* RC4: released as 362101115 Dec  4 11:40 TA_Q3A_RC4.zip
   2065 
   2066 	* TEST: the corrupted menu problem is back :-(. Looks like I am in
   2067 	for a static link next.
   2068 	
   2069 	* code/unix/Makefile (clean2): fixed (not all new OBJ covered).
   2070 	* code/q3_ui/ui_teamorders.c: -Werror.
   2071 	* code/q3_ui/ui_team.c: -Werror. 
   2072 	* code/q3_ui/ui_qmenu.c (Bitmap_Draw): -Werror. 
   2073 	* code/q3_ui/ui_mods.c (UI_Mods_LoadModsFromFile): unused. -Werror.
   2074 	* code/q3_ui/ui_controls2.c: -Werror.
   2075 	* code/q3_ui/ui_atoms.c: -Werror
   2076 	* code/null/null_client.c: -Werror.
   2077 	* code/unix/linux_joystick.c: -Werror.
   2078 	* code/unix/linux_glimp.c: -Werror. 
   2079 	* code/unix/linux_qgl.c: -Werror. 
   2080 	* code/unix/unix_shared.c: -Werror. 
   2081 	* code/unix/unix_net.c: -Werror.
   2082 	* code/unix/linux_local.h: added missing prototypes.
   2083 	* code/unix/unix_main.c: -Werror. Includes linux_local.h
   2084 	* code/jpeg-6/jdmainct.c: see below.
   2085 	* code/jpeg-6/jcmainct.c: variables called "main" (*moan*) 
   2086 	* code/jpeg-6/jcdctmgr.c (forward_DCT): -Werror.
   2087 	* code/botlib/l_script.c (PS_ReadLiteral): -Werror
   2088 	* code/botlib/l_precomp.c (PC_AddBuiltinDefines): -Werror.
   2089 	* code/botlib/be_interface.c: -Werror.
   2090 	* code/botlib/be_aas_reach.c: -Werror
   2091 	* code/botlib/be_aas_cluster.c: -Werror 
   2092 	* code/game/be_aas.h: -Werror. 
   2093 	Note: MrElusive accumulates a lot of code history in nested comments,
   2094 	which gcc doesn't like at all. #if 0'ed to avoid.
   2095 	* code/qcommon/vm_interpreted.c: -Werror.
   2096 	* code/qcommon/unzip.c: -Werror.
   2097 	* code/cgame/cg_servercmds.c: -Werror.
   2098 	* code/cgame/cg_main.c: -Werror.
   2099 	* code/cgame/cg_drawtools.c: -Werror.
   2100 	* code/game/bg_misc.c: -Werror.
   2101 	* code/game/be_ai_move.h (bot_avoidspot_s): added.
   2102 	* code/botlib/be_ai_move.c: removed typedef struct bot_avoidspot_s
   2103 	* code/client/snd_mix.c: -Werror.
   2104 	* code/qcommon/md4.c: -Werror.
   2105 	* code/qcommon/common.c: -Werror.
   2106 	* code/client/cl_keys.c: -Werror.
   2107 	* code/client/cl_cin.c: -Werror, init local variables.	
   2108 	* code/unix/Makefile: -Werror. need -O for -Wall for uninitialized
   2109 	Note: the above is the list of files that got touched during a pass
   2110 	with -g -O -Werror -Wall flags (in the hope of finding uninitialized
   2111 	memory and ambiguous statements). Most of the above are simply
   2112 	unused variables (or even code).
   2113 
   2114 	TEST: RC3 data files, but DLL's.
   2115 	TODO: TA gets stuck in initial sound, doesn't play cinematics (sometimes)
   2116 	TODO: Q3 intro movie looses sound after Sarge gets teleported
   2117 	TODO: Q3 ingame renders world, weapon, muzzleflash, hud, can shoot,
   2118 	TODO:  but no movement, hud background is fubared. 
   2119 
   2120 	* code/cgame/cg_main.c: cg_singlePlayerActive
   2121 
   2122 	* code/q3_ui/ui_login.c: doesn't seem to be used?
   2123 	* code/game/g_rankings.c (G_RankRunFrame): doesn't seem to be used.
   2124 	* code/q3_ui/ui.sh: disabled this. 
   2125 	* code/q3_ui/q3_ui.sh: changed include path to ../q3_ui/ (duh).
   2126 
   2127 	* code/game/game.sh: changed include path to ../q3_ui/ which 
   2128 	is not in the Win32 batch file. 
   2129 	* code/cgame/cg_rankings.c: this does not seem to be included. 
   2130 	* code/cgame/cgame_ta.sh: added -DCGAME. Also added cg_syscalls.c
   2131 	to build (also missing in Win32).
   2132 
   2133 	* code/cgame/cgame.sh: added -DCGAME (see cgame.bat). Also
   2134 	changed include path to ../q3_ui/ which is not in the Win32
   2135 	batch file.  Also added cg_syscalls.c to build (missing in 
   2136 	Win32).
   2137 
   2138 2000-12-01  Bernd Kreimeier  <bk@lokigames.com>
   2139 
   2140 	* RC3: released as of sos001201 / Q3 1.27f
   2141 
   2142 	* code/unix/Makefile: more fixes with clean build. The
   2143 	changes made fix the menu rendering for Q3 but not TA.
   2144 	Ingame graphics still broken. 
   2145 
   2146 	* code/game/game_ta.sh: created. Use game_ta.q3asm here.
   2147 	* code/game/game.sh: no -DMISSIONPACK 
   2148 	* code/game/game_ta.q3asm: CR/LF, /.
   2149 
   2150 	* code/cgame/cgame_ta.sh: created. Use cgame_ta.q3asm here.
   2151 	* code/cgame/cgame.sh:  no -DMISSIONPACK. No cg_newdraw, ui_shared.
   2152 	* code/cgame/cgame.q3asm:  No cg_newdraw, ui_shared.
   2153 	CR/LF, /, cg_newDraw, and the output path/name.
   2154 	
   2155 	* code/q3_ui/q3_ui.q3asm: output to ui not q3_ui...
   2156 
   2157 	* code/cgame/cg_event.c: cg_singlePlayerActive used here.
   2158 	TODO: guard by MISSIONPACK
   2159 	* code/cgame/cg_local.h: named q3print_t enum. Cvar
   2160 	cg_singlePlayerActive for both Q3 and TA.
   2161 
   2162 
   2163 	* code/unix/Makefile: cleanly separate B/baseq3/ and
   2164 	B/missionpack/ subtrees during build. While new and old
   2165 	UI are in separate directories, the cgame/ and game/
   2166 	are shared, with conditional -DMISSIONPACK compile
   2167 	and different files includeds (cd_draw, cg_newdraw).
   2168 	That means twice the number of targets (3 DLL's, 3 QVM's,
   2169 	times two), and different build rules.
   2170 	TODO: carefully check Win32 build for (other) conditionals
   2171 	TODO: carefully check Win32 build for link lists
   2172 
   2173 	* CVS:  ui/, code/ui, botfiles/ and subdirectories are added.
   2174 	The code/macosx/ directory turned out to be a real pain that
   2175 	had to be edited manually, throwing out CVS/ directories in
   2176 	the tree that had been created by SOS as they are in id's
   2177 	repository:
   2178 	  code/macosx/Client/CVS
   2179 	  code/macosx/Client/PBUserInfo/CVS 
   2180 	  code/macosx/Client/Quake3.nib/CVS  
   2181 	  code/macosx/Common/CVS
   2182 	  code/macosx/DedicatedServer/CVS
   2183 	  code/macosx/DedicatedServer/PBUserInfo/CVS  
   2184 	Now tagged
   2185 	  cvs tag id1-26y-loki001119
   2186 	TODO: there are several new files not yet linked?
   2187 
   2188 	* ChangeLog: merged the Changelog from the bk00119 working
   2189 	branch (initial Q3TA port) based on sos001119 snapshot. Also
   2190 	merged the source tree with cvs-1.17.
   2191 	In the ChangeLog below  *** MISSIONPACK *** indicates work
   2192 	that was done on the branch (code-sos/ prefix in files).
   2193 	The cvs update of this will be tagged with
   2194 	 cvs tag id1-26y-loki001119
   2195 	Use this tag to hunt for possible Linux fixes that got lost
   2196 	(i.e. got dropped by id since id000516 and were thus not in
   2197 	sos001119, but did not show in diff id000516 cvs1-17).
   2198 	New directories in CVS: botfiles/, ui/.
   2199 	Missing from SOS/Missionpack: SDK directories.
   2200 	 common, lcc, libs, q3asm, q3data, q3map, q3radiant.
   2201 
   2202 
   2203 	* ssreport.txt: below.
   2204         Note: watch for files called "ssreport.txt", that's id ChangeLog.
   2205 	* ui/ui_syscalls.asm: below.
   2206 	* q3_ui/ui_syscalls.asm: below.
   2207 	* game/g_syscalls.asm: below.
   2208 	* cgame/cg_syscalls.asm: below.
   2209 	* bspc/linux-i386.mak: below.
   2210 	* bspc/lcc.mak: below.
   2211 	* botlib/linux-i386.mak: below.
   2212 	* botlib/lcc.mak: below.
   2213 	* A3D/a3d_console_variables.txt: CR/LF issue (minimize diffs).
   2214 
   2215 	* CVS: the checked bk001119 work copy of the sos001119 initial
   2216 	checkout (completed with everything in the SOS "Missionpack"
   2217 	tree, i.e. botfiles/ and botfiles.* added), copied over the
   2218 	cvs-1.17 checkout.
   2219 	Note: in these cases, BEWARE ui -> q3_ui/ links, and different
   2220 	ChangeLogs. Also "make clean" helps.
   2221 
   2222 	* unix/unix_net.c: below. 
   2223 	* unix/unix_main.c: below. 
   2224 	* unix/matha.s: below.
   2225 	* unix/linux_qgl.c: below.
   2226 	* unix/linux_glimp.c: see also linux_joystick.c.
   2227 	* server/sv_client.c: below.
   2228 	* renderer/tr_surface.c: below.
   2229 	* renderer/qgl.h: below.
   2230 	* qcommon/qcommon.h: below.
   2231 	* qcommon/files.c: below.
   2232 	* qcommon/common.c: below.
   2233 	* q3_ui/ui_demo2.c: below.
   2234 	* mac/mac_net.c: below.
   2235 	* mac/mac_glimp2.c: below.
   2236 	* game/surfaceflags.h: below.
   2237 	* game/bg_lib.c: checked against id00516/cvs-1.17a diff.
   2238 	* bspc/bspc.c: TH_AASToTetrahedrons call removed since id000516.
   2239 	Note: our final compare of id000516 against cvs-1.17a, making sure
   2240 	that all these differences are in bk001119 (initial Q3TA port).
   2241 	If id branched the Q3TA base off before id000516 we might be screwed.
   2242 	Note: I do not diff against bk000520, which had some minor changes
   2243 	against id000516 (check VectorArrayNormalize, OTConfiguration), which
   2244 	seem consistent with me taking a pre-id000516 source snapshot for that
   2245 	working branch.
   2246 
   2247 2000-11-30  Bernd Kreimeier  <bk@lokigames.com>
   2248 
   2249 	* TEST: compiled using the symbolic link ui/ -> q3_ui/.
   2250 	Had to undo one CVS change, regarding
   2251 	 code/cgame/cg_syscalls.asm
   2252 	 code/game/g_syscalls.asm
   2253 	 code/q3_ui/ui_syscalls.asm
   2254 	These files are neither generated by Win32 cgame.bat
   2255 	nor cgame.sh (etc.), thus seemingly maintained by hand.
   2256 	 cvs tag pr1-17-loki001130b
   2257 	should be used if somebody needs this 1.17 snapshot
   2258 	(which, remember, is post-release, with additional fixes).
   2259 	Later:
   2260 	 cvs tag pr1-17-loki001130c
   2261         includes the full ChangeLog (duh).
   2262 	
   2263 	* CVS: up until cvs-1.17-001130, code/ui/ contained the
   2264 	Q3 code for the UI QVM/DLL. In Q3TA, this code has been
   2265 	moved to code/q3_ui/, while at the same time the new
   2266 	(scripting driven) UI code for Q3TA was maintained in
   2267 	code/ui/. To preserve the history of code/ui/, it has been
   2268 	renamed to q3/ui/ in the CVSROOT.
   2269 	Note: this will BREAK all cvs-1.17 and before checkouts.
   2270 	To compile earlier versions, move or link q3_ui/ to ui/.
   2271 	The code has been tagged
   2272 	  cvs tag pr1-17-loki001130
   2273         after the change.
   2274 	DONE: remove code/*/vm/*.asm from CVSROOT
   2275 	Note: this includes code/*/*.asm files (from *_syscalls.c).
   2276 	These were originally tracked in CVS, but if we need 
   2277 	comparison of q3asm output or QVM files we can rely
   2278 	on the Win32 and Linux SDK now. These files have been
   2279 	physically removed from CVS now, followed by
   2280 	  cvs tag pr1-17-loki001130a
   2281 
   2282 2000-11-30  Bernd Kreimeier  <bk@lokigames.com>      *** MISSIONPACK ***
   2283 
   2284 	* RC2: new ZIP file (another 360M for convenience).
   2285 
   2286 	* SOS: new CVS module, Quake3_sos. This will be used to track
   2287 	the unchanged SOS checkouts from id. As their repository
   2288 	is read-only, and there is no estimate on when changes might
   2289 	be backpropagated there, I will track their changes in a
   2290 	separate module, and update our local Quake3 module 
   2291 	accordingly. This is effectively "tracking 3rd party"
   2292 	w/o import and half-automated, forced mergers - in other
   2293 	words, we now branch starting with our post-1.17 changes,
   2294 	for the benefit of moving at all.
   2295 	Baseline is a slightly changed PR-1.17 id000516 source dump
   2296 	(essentially ui/ moved to q3_ui for continuity, and CR/LF etc.).
   2297 	 cvs import Quake3_sos id000516 pr1-17-win32
   2298 	 cvs import Quake3_sos sos001119 pr1-26-win32
   2299 	 cvs import Quake3_sos sos001120 pr1-26-win32-001120
   2300          cvs import Quake3_sos sos001121 pr1-26-win32-001121
   2301          cvs import Quake3_sos sos001122 pr1-26-win32-001122
   2302          cvs import Quake3_sos sos001122-demo pr1-26-win32-demo
   2303         This is about the 1.26w Team Arena Win32 demo release, give or
   2304 	take a couple of lines. Has Q3_VERSION "Q3 Team Arena Demo 1.27b".
   2305 	 cvs import Quake3_sos sos001123 pr1-26-win32-001123
   2306          cvs import Quake3_sos sos001126 pr1-26-win32-001126
   2307         Now track id versions (see code/game/q_shared.h:Q3_VERSION)
   2308 	 cvs import Quake3_sos sos001128 pr1-27c-win32-001128
   2309 	With 1.27d they switched from Demo to full version (RC1).
   2310 	 cvs import Quake3_sos sos001129 pr1-27d-win32-001129
   2311          cvs import Quake3_sos sos001130a pr1-27d-win32-001130a
   2312         Now switched to 1.27e. This import is done from the SOS
   2313 	working directory.
   2314 	 cvs import Quake3_sos sos001130b pr1-27e-win32-001130b
   2315 	Note: SoS created rwx attributes which are luckily fixed
   2316 	automagically during import. It is also seemingly incapable
   2317 	to compare files, and leave files that have not changed the
   2318 	hell alone. I can't do cvs update due to the $..$ tags in
   2319 	the original files (which CVS can't be told to ignore), 
   2320 	so I have to do import (creating a load of vendor tagged 
   2321 	branches), but at least cvsweb and cvs get the revisions
   2322 	right.
   2323 
   2324 	* code-sos/unix/Makefile: added linux_joystick
   2325 	* code-sos/unix/linux_local.h: match mac/ and win32/, for prototypes.
   2326 
   2327 	* code-sos/unix/linux_joystick.c: new file, code from linux_glimp.c
   2328 	Note: decided to separate this, as (a) we might edit/extend
   2329 	a lot, (b), it's not in the id tree, (c) it's not GL, (d)
   2330 	there might be even more oddball devices. Anything that
   2331 	cuts down on diffs.
   2332 
   2333 	* code-sos/unix/linux_glimp.c (Q_stristr): const return (cvs1.17).
   2334 	Also (XLateKey): added more keyboard mappings (ASCII on
   2335 	upper row digits) (cvs1.17). Added in the minimal joystick
   2336 	hooks (cvars, function calls). Fixed joystick cvar naming
   2337 	to match win32 (kept joystick_threshold). 
   2338 	TODO: joystick stubs for dedicated?
   2339 
   2340 	* CVS: I have to move up to 1.27d (data, Win32 networking).
   2341 	With exception of linux_glimp.c (mostly joystick code), 
   2342 	all cvs1.17 changes should now be in the work snapshot 
   2343 	based on the first sos001119 we got from id. There are
   2344 	also some additional changes in there already, thus I'll
   2345 	move the (buggy) 1.26 snapshot into CVS before adding even
   2346 	more differences.
   2347 
   2348 
   2349 2000-11-29  Bernd Kreimeier  <bk@lokigames.com>     *** MISSIONPACK ***
   2350 
   2351 	* RC1: TeamArena_Q3A_RC1.zip. Source has moved from
   2352 	Q3VERSION "Q3 Team Arena Demo 1.27c" to "Q3 1.27d" now.
   2353 
   2354 	* code-sos/qcommon/common.c: added Com_InitPushEvent(). Also
   2355 	increased MAX_PUSHED_EVENTS to 256.
   2356 	Note: this is another case of buffer memory not zero'ed.
   2357 	Com_EventLoop, fixed evTime to evType in debug print.
   2358 	
   2359 	* TEST: baseq3/
   2360 	 +set sv_pure 0 +set vm_game 0 +set in_mouse 0 +set developer 2
   2361         TODO: Team Arena in menu leads to RE_Shutdown(1) and locks
   2362 	TODO: can't play game
   2363 	TODO: shaders can't load *.tga, *.jpg files are there
   2364 	TODO: DO_CC linking for DLL's, DO_SHLIB_CC only for export?
   2365 	TODO: ERROR: Bad player movement angle
   2366         TODO: Warning: cvar "..." given initial values: "..." and "..."
   2367  	TODO: TA demo ERROR: CL_ParseServerMessage: Illegible server message
   2368         TODO: WARNING: Com_PushEvent overflow
   2369 
   2370 	* code-sos/qcommon/files.c: add NULL filter for our Sys_ListFiles calls.
   2371 	* unix/unix_shared.c (Sys_ListFiles): signature has changed, 
   2372 	additional Sys_ListFiles argument now.
   2373 
   2374 	* code-sos/unix/unix_net.c (Sys_GetPacket): see below (readcount=0).
   2375 	* code-sos/unix/unix_main.c: see below (Mike's and my changes to DLL
   2376 	loading, my event buffer clear fixes).
   2377 	* code-sos/unix/linux_qgl.c (QGL_Init): see below (__FX__ guards).
   2378 	TODO: abstract WGL/GLX and end unfortunate QGL duplication.
   2379 	TODO: spice up QGL with Linux H2 full version.	
   2380 	* code-sos/q3_ui/ui_demo2.c: fix on demo names  - no Q_strupr(demoname).
   2381 	Note: in CVS this fix is in ui/ui_demo2.c. CVS is screwed by
   2382 	id choosing the old name for new directory...
   2383 	TODO: manual intervention on "ui goes q3_ui"  in CVSROOT?
   2384 	* renderer/qgl.h: see below (__FX__ guards).
   2385 	* qcommon/files.c: migrated in the 1.17cvs changes against the
   2386 	id000516 code dump, i.e. the (not marked - boo hiss) mkv changes.
   2387 	Note: all the above is based on a diff of the last id code dump
   2388 	pre-1.17 against our CVS, with those fixes now migrated into the
   2389 	sos1.26 snapshot.
   2390 	TODO: move in joystick code.
   2391 	TODO: replace XAutoRepeatOn/Off with filter (focus).
   2392 	TODO: DGA 2.0 and such.
   2393 	
   2394 	* code-sos/game/q_shared.c: valid compare for NULL strings
   2395 	* code-sos/unix/unix_main.c: QRTLD, and now using RTLD_NOW.
   2396 	Note: it is a bad idea to load game DLL's that are missing symbols.
   2397 
   2398 	* code-sos/ui/ui_main.c: see below.
   2399 	* code-sos/game/g_main.c: see below.
   2400 	* code-sos/q3_ui/ui_main.c: see below.
   2401 	* code-sos/cgame/cg_main.c: made cvarTable and cvarTableSize static. This resolved
   2402 	a segfault related to traversing the UI table during Init.
   2403 	Note: there is a segfault related to this variable being out of bounds. 
   2404 	Different struct size in global variables possible aliasing between the 
   2405 	DLL's.
   2406 	
   2407 	* code-sos/unix/unix_main.c (Sys_Error): assert(0), no exit in debug.
   2408 	* code-sos/game/q_shared.c: now aborts on NULL destination. Also DPrintf's
   2409 	on bogus excess copies.
   2410 	TODO: make all those string functions safe, at least assert.
   2411 	* code-sos/server/sv_init.c: comment in SV_Init
   2412 	// init the botlib here because we need the pre-compiler in the UI
   2413 	Called in qcommon/common.c:Com_Init, were CL_Init is called afterwards...
   2414 	* code-sos/server/sv_bot.c: the botlib_import is filled here.
   2415 	* code-sos/unix/unix_main.c (Sys_GetBotLibAPI): RTLD_NOW. Which is for naught,
   2416 	as this code is not used and has never been used. assert(0)
   2417 
   2418 	* code-sos/botlib/be_interface.c: botimport supposed to be set here.
   2419 	* code-sos/botlib/l_memory.c: segfault with q3_ui/ DLL.
   2420         #1  0x80e23ec in GetMemory (size=35) at ..//botlib/l_memory.c:331
   2421         331             ptr = botimport.GetMemory(size + sizeof(unsigned long int));
   2422 	as botimport is completely NULL'ed.
   2423 
   2424 	* code-sos/q3_ui/q3_ui.sh: created from ui/ui.sh 1.17 
   2425 
   2426 	* code-sos/q3_ui/q3_ui.q3asm: unfubared (CR/LF, / path).
   2427 
   2428 	* code-sos/unix/Makefile: added q3_ui/ make targets (basically
   2429 	ui/ targets from CVS 1.17 Makefile for starters).
   2430 
   2431 	* code-sos/q3_ui/: this is the old UI code, which does not use
   2432 	../ui/menus.txt (see ui/ui_main.c). In other words,
   2433 	the code in ui/ now has to be compiled or qvm'ed 
   2434 	for missionpack/, but to create the necessary DLL or
   2435 	QVM modules for baseq3/ we need to use q3_ui/. 
   2436 	
   2437 	
   2438 2000-11-27  Bernd Kreimeier  <bk@lokigames.com>     *** MISSIONPACK ***
   2439 
   2440 	* code-sos/game/bg_lib.c: ld problem with a custom "tan(..)"
   2441 	TODO: loooking forward to SIGFPE on this code base.
   2442 	
   2443 	* code-sos/ui/ui_util.c: this file is empty.
   2444 
   2445 	* code-sos/ui/ui.sh: new files:
   2446 	  ui_shared.c
   2447 	  ui_util.c
   2448 	Replaced by the /ui/*.menu files:
   2449 	 q3lcc: can't find `../ui_cdkey.c'
   2450 	 q3lcc: can't find `../ui_ingame.c'
   2451 	etc.
   2452 
   2453 	* code-sos/cgame/cgame.q3asm: added cg_newdraw entry.
   2454 	Also added ui_shared entry.
   2455 	* cgame/cgame.sh: added cg_newdraw.c entry.
   2456 	Also added ../ui/ui_shared.c entry.
   2457 
   2458 	* code-sos/cgame/cg_newdraw.c: renamed (was cg_newDraw.c mixed case).
   2459 	Note: the infidels have taken over.
   2460 
   2461 	* cgame/cgame.sh: added  -DMISSIONPACK.
   2462 	Note: w/o, q3lcc complains
   2463 	../cg_event.c:204: undeclared identifier `cg_singlePlayerActive'
   2464         ../cg_event.c:204: left operand of . has incompatible type `int'
   2465         which indicates that this source does not compile w/o MISSIONPACK
   2466 	anymore. The baseq3/pak4.pk3 file in the Q3TA snapshot archives
   2467 	are dated
   2468 	     284464  11-10-00 14:02   vm/cgame.qvm
   2469              463940  11-14-00 14:47   vm/qagame.qvm
   2470              271596  11-14-00 14:48   vm/ui.qvm
   2471 	the code dump is from 11-19. 
   2472 	Note: Make does not abort on q3lcc complains
   2473 
   2474 	* code-sos/game/game.sh: also added ai_vcmd.c entry.
   2475 
   2476 	* code-sos/ui/ui.q3asm: fubared (below). In addition, this is 
   2477 	the only one to have a 
   2478 	 -o "/tmp/quake3/missionpack/vm/ui"
   2479 	line in it. Given that the other 2 QVM modules are
   2480 	also dependend on -DMISSIONPACK, this seems a real mess.
   2481 	For now using the same path as the other 3.
   2482 	* code-sos/cgame/cgame.q3asm: below.
   2483 	* code-sos/game/game.q3asm: fubared. Fixed CR/LF and \ in paths
   2484 	again (read by q3asm called by game.sh called by make).
   2485 	* unix/Makefile: updated fpor DLL/QVM.
   2486 	Note: also shell scripts to use q3lcc not lcc.
   2487 
   2488 	
   2489 2000-11-27  Bernd Kreimeier  <bk@lokigames.com>
   2490 
   2491 	* code/unix/Makefile: now expects a run/ directory
   2492 	relative (between this, the Loki standards, and the
   2493 	utility code in the same repository, it's ever so
   2494 	slightly less dorky).
   2495 	TODO: fix broken copyfiles target etc.pp.
   2496 
   2497 	* code/game/bg_lib.c: turns out the changes I
   2498 	undid 001120 were affecting original Zoid
   2499 	Linux port related defines, which break VM
   2500 	compile. Mike fixed those (which I unfixed
   2501 	when referring to the latest id code that does
   2502 	not contain these patches). However, they
   2503 	duplicate ANSI libc symbols, so the guards might
   2504 	be wrong. The symbols are missing when compiling
   2505 	for VM, so I now use the existing lcc -DQ3_VM
   2506 	flag:
   2507 	  //#if !defined ( _MSC_VER ) && ! defined ( __linux__ )
   2508           #if defined ( Q3_VM )
   2509 	This will break DLL compile on non-ANSI platforms,
   2510 	which will have to be added to the conditional then.
   2511 
   2512 	* code/ui/ui.sh: below. 
   2513 	* code/game/game.sh: below. 
   2514 	* code/cgame/cgame.sh: Linux SDK installs q3lcc to
   2515 	avoid collisions with regular lcc pre-installs. The
   2516 	scripts fail with "lcc not found", but do not abort 
   2517 	the Makefile.
   2518 	Note: now that VM code gets actually built, there
   2519 	are errors:
   2520 	g_main:648 ERROR: symbol vsprintf undefined
   2521         bg_pmove:1221 ERROR: symbol abs undefined
   2522         q_math:4309 ERROR: symbol fabs undefined
   2523         q_shared:2801 ERROR: symbol tolower undefined
   2524         q_shared:2862 ERROR: symbol toupper undefined
   2525         ai_dmq3:208 ERROR: symbol atoi undefined
   2526         ai_cmd:4951 ERROR: symbol sscanf undefined
   2527 
   2528 
   2529 2000-11-20  Bernd Kreimeier  <bk@lokigames.com>   
   2530 	
   2531 	* TEST: test compile of pr-1.17+cvs fixes segfaults due 
   2532 	to new baseq3/pak4.pk3
   2533 	Note: to self ... 1.17 is not compatible with new files.
   2534 	Checking into CVS next.
   2535 
   2536 	* code/: changes applied by us that are not in id's code base
   2537 	affect q_shared.c (NULL in Q_stricmp), files.c (FIXME fs_cdpath,
   2538 	Sys_ConcatenateFileList, ui_demo2.c (demo no tolower on linux).
   2539 	In unix/ linux_glimp.c (joystick code), qgl.h, linux_qgl.c (__FX__),
   2540         unix_main.c (dlopen bug and event buffers), unix_net.c (readcount),
   2541 	matha.s (assembly warning).
   2542 
   2543 	* code/server/sv_client.c (SV_WriteDownloadToClient): 
   2544 	No effective change  on FS_SV_FOpenFileRead call, they reworked 
   2545 	autodownload some more seemingly.
   2546 
   2547 	* code/renderer/tr_surface.c: VectorArrayNormalize
   2548 	
   2549 	* code/qcommon/qcommon.h: see below.
   2550 	* code/qcommon/files.c: Com_ReadConfigs removed.
   2551 	* code/qcommon/common.c: removed Com_ReadConfigs, 
   2552 	textual replacement of body in Com_Init.
   2553 
   2554 	* code/mac/mac_net.c: not applied (undone by id)
   2555 	OTConfiguration *config <> OTConfigurationRef  config
   2556 
   2557 	* code/mac/mac_glimp2.c: r_colorbits->integer > 16
   2558 	* code/game/surfaceflags.h (CONTENTS_BOTCLIP): added.
   2559 
   2560 	* code/game/q_shared.h: not applied (undone by id)
   2561 	#if defined(ppc) || defined(__ppc) || defined(__ppc__) 
   2562         #define idppc 1 
   2563 	#else 
   2564         #define idppc 0 
   2565         #endif 
   2566 
   2567 	* code/game/q_math.c: added another CPP line to guard
   2568 	BoxOnPlaneSide, removed WIN32 guard. 
   2569 	TODO: this could be broken code guarded in all current
   2570 	compiles...
   2571 
   2572 	* code/game/bg_lib.c: left Q#_VM guard for typedef cmp_t
   2573 	Added !defined( __linux__ ) for tolower and atoi.
   2574 	Note: the changes above relate to the very last code update
   2575 	from id prior to the 6 month blackout, which were not in
   2576 	CVS when Michael made his updates. Needed to establish the
   2577 	baseline for the new patch. Source dump 1.17.00520, against
   2578 	SOS 1.26w-001119 version.
   2579 	
   2580 2000-11-20  Bernd Kreimeier  <bk@lokigames.com>       *** MISSIONPACK ***
   2581 
   2582 	* TEST: running against the data up to TeamArena_Q3A_001109.zip
   2583 	Hunk_Clear: reset the hunk ok
   2584         Program received signal SIGBUS, Bus error.
   2585         "q3dm2", killBots==qtrue
   2586 	#0  CM_ClearMap () at ..//qcommon/cm_load.c:644
   2587         #1  0x80884a7 in SV_Map_f () at ..//server/sv_ccmds.c:159
   2588         #2  0x8072579 in Cmd_ExecuteString (text=0xbffff4b0 "spmap q3dm2") at ..//qcommon/cmd.c:591
   2589         #3  0x8071dfe in Cbuf_Execute () at ..//qcommon/cmd.c:190
   2590         #4  0x80763f7 in Com_Frame () at ..//qcommon/common.c:2547
   2591         #5  0x8130d6b in main (argc=13, argv=0xbffff984) at ..//unix/unix_main.c:953
   2592         #6  0x40100cb3 in __libc_start_main (main=0x8130bc4 <main>
   2593 	Not reproducible (screen stayed black).
   2594 	
   2595 	* TEST: +set developer 1, same for Win32 and Linux:
   2596 	Can't find gfx/misc/flare.tga
   2597         Can't find gfx/misc/sun.tga
   2598         Can't find gfx/misc/console02.tga
   2599 	Can't find vm/ui.map
   2600 	Can't find textures/sfx/logo512.tga
   2601         Can't find gfx/colors/black.tga
   2602         Can't find models/mapobjects/banner/banner5_2.md3
   2603         Can't find models/mapobjects/banner/banner5_1.md3
   2604         Can't find textures/sfx/firegorre2.tga
   2605         Can't find textures/sfx/bolts.tga
   2606 	Can't find menu/art/unknownmap.tga
   2607 
   2608 	* Q3TA: after nearly 6 months, a code update from id. SOS access 
   2609 	even. Got it to compile, link and start, but its currently broken
   2610 	(menu doesn't render in full, can't get into game etc.). Need
   2611 	a baseline 1.17 to diff against. Last code dump was May 16, with 
   2612 	bspc code updated May 19. Checking working directory of bk000520
   2613 	against CVS next (Mike's fixes never made it into id's codebase
   2614 	or a post 1.17 release, neither did my fixes as released in the
   2615 	point release version 1.17).
   2616 
   2617 2000-11-19  Bernd Kreimeier  <bk@lokigames.com>       *** MISSIONPACK ***
   2618 
   2619 	* TEST: Win32 install as tested with 1.26w. quake3.x86 (Q3A game)	
   2620 	Warning: cvar "r_uifullscreen" given initial values: "1" and "0"
   2621         Warning: cvar "r_inGameVideo" given initial values: "1" and "0"
   2622         ^3WARNING: sound/feedback/hit.wav is a 8 bit wav file
   2623 	(on windows, sound/weapons/weapon_hover.wav is missing...)
   2624 	Menu only partially displayed in TA and baseq3 play, menu itself
   2625 	seems to work. Freetype?
   2626 	WARNING: Com_PushEvent overflow
   2627 
   2628 	* code-sos/game/game.sh: not in SOS, moved in from CVS snapshot.
   2629 
   2630 	* code-sos/qcommon/common.c: conditional DEDICATED to get rid off 
   2631 	CL_ShutdownCGame/CL_ShutdownUI/CIN_CloseAllVideos.
   2632 	Same for UI_usesUniqueCDKey: dedicated server does not
   2633 	write CD key file.
   2634 	TODO: check whether there is an unneeded "read CD key"
   2635 	for dedicated server.
   2636 
   2637 	* code-sos/null/null_client.c (CL_ShutdownAll): added dummy.
   2638 
   2639 	* code-sos/unix/Makefile:  server/sv_net_chan.o for dedicated server.
   2640 
   2641 	* code-sos/null/null_snddma.c: fixed  S_RegisterSound signature.
   2642 
   2643 	* code-sos/client/snd_mix.c: snd_p, snd_linear_count, snd_out
   2644 	can't be static, as used by unix/snd_mixa.s.
   2645 
   2646 	* code-sos/unix/Makefile: added to the executable target:
   2647 	   renderer/tr_font.c
   2648 	   client/cl_net_chan.c
   2649 	   server/sv_net_chan.c 
   2650 	Also added a lot of jc*.c files to build, to fix unresolved
   2651 	symbol errors.
   2652 	TODO: is there unused jpeg-6/jd*.o code linked in now?
   2653 
   2654 	* code-sos/ft2/smooth.c: includes ftgrays.c, ftsmooth.c
   2655 	
   2656 	* code-sos/ft2/truetype.c: ttdriver.c, ttpload.c, ttgload.c, ttobjs.c.
   2657         Also (see ftoption.h) TT_CONFIG_OPTION_BYTECODE_INTERPRETER ttinterp.c
   2658 	
   2659 	* code-sos/ft2/sfnt.c: includes ttload.c, ttcmap.c, sfobjs.c,
   2660 	sfdriver.c. lso (see ftoption.h)
   2661         TT_CONFIG_OPTION_EMBEDDED_BITMAPS     ttsbit.c
   2662         TT_CONFIG_OPTION_POSTSCRIPT_NAMES     ttpost.c
   2663 
   2664 	* code-sos/ft2/ftbase.c: includes ftcalc.c, ftobjs.c, ftstream.c,
   2665 	ftlist.c, ftoutln.c, ftextend.c, ftnames.c.
   2666 	
   2667 	* code-sos/ft2/autohint.c: includes ahangles.c, ahglyph.c, ahglobal.c,
   2668 	ahhint.c, ahmodule.c.
   2669 
   2670 	* code-sos/unix/Makefile: added ft2/ to client objects, took out
   2671 	ftraster.c/ftrend1.c (see below), added -DFT_FLAT_COMPILE.
   2672 	* ft2/ftsmooth.c: -DFT_FLAT_COMPILE required.
   2673 	* ft2/raster1.c: -DFT_FLAT_COMPILE required.
   2674 	Note: this includes ftraster.c/ftrend1.c.
   2675 
   2676 	* code-sos/qcommon/vm_x86.c: _ftol is missing, ftolPtr only defined
   2677 	for Win32, but used in generic code. Workaround for now.
   2678 	TODO: find good Linux ftol, or use old solution. 
   2679 
   2680 	* SoS checkout. chown -R a+w *  recode ibmpc:lat1 */*.h */*.c
   2681 	
   2682 2000-06-30  Michael Vance <briraeos@lokigames.com>
   2683 
   2684 	* misc: Spoke with Leonardo about qvm mess.
   2685 
   2686 	* ui/ui.sh: Created to build much like the ui.bat script.
   2687 
   2688 	* ui/ui.q3asm: Use linux style paths.
   2689 
   2690 	* game/game.sh: Created to build much like the game.bat script.
   2691 
   2692 	* game/game.q3asm: Use linux style paths.
   2693 
   2694 	* cgame/cgame.sh: Created to build much like the cgame.bat script.
   2695 
   2696 	* cgame/cgame.q3asm: Use linux systel paths.
   2697 
   2698 	* unix/Makefile: Use the new .sh scripts to build the QVM files.
   2699 
   2700 	* lcc/etc/linux.c: Build .asm files instead of .s files.
   2701 
   2702 	* misc: QVMs now load properly, with minor glitches that should
   2703 	hopefully be solvable. The new build scripts conflict with the
   2704 	.asm files already in CVS, as the generated byte code is slightly
   2705 	different in some cases.
   2706 	
   2707 2000-06-29  Michael Vance <briareos@lokigames.com>
   2708 
   2709 	* lcc/makefile: Tweaked to automatically include the system
   2710 	compiler's header location. Added an install directory.
   2711 
   2712 	* lcc/custom.mk: Added a build directory.
   2713 
   2714 	* lcc/etc/linux.c: Numerous small tweaks to make compiling the VM
   2715 	code a much simpler task.
   2716 
   2717 	* q3asm/Makefile: Created.
   2718 
   2719 	* q3asm/q3asm.c: Fixed uninitialized variable in
   2720 	HashString(). Fixed off by one in argument parsing.
   2721 	
   2722 	* misc: Had Brian remove the Xmd.h include from glx.h so that we can
   2723 	build Quake3 on XFree86 4.0 systems.
   2724 
   2725 	* wine: Attempted to build with lcc.exe and q3asm.exe using wine,
   2726 	also did not work. This is in contrast to MikeP's .qvms, which
   2727 	seem to work.
   2728 	
   2729 2000-06-28  Michael Vance <briareos@lokigames.com>
   2730 
   2731 	* common/files.c: Fixed Mods menu behaviour.
   2732 
   2733 	* unix/linux_qgl.c: Guarded references to fxMesa.
   2734 
   2735 	* renderer/qgl.h: Guarded references to fxMesa.
   2736 
   2737 	* ui/ui_demo2.c: Don't convert filename to uppercase.
   2738 	
   2739 2000-05-07  Bernd Kreimeier  <bk@lokigames.com>
   2740 
   2741 	* common/cmdlib.c: windowism, not guarded. Added WIN32 around "ATOM a".
   2742 
   2743 	* q3map/Makefile: Linux Makefile. 
   2744 
   2745 	* q3map/Makefile.irix: "makefile" in original code, Irix-only Makefile. 
   2746 	Just fixed some redundant TAB that GNU make despises about as much as I 
   2747 	despise GNU Make, and changed to a relative path.
   2748 
   2749 2000-05-01  Bernd Kreimeier  <bk@lokigames.com>
   2750 
   2751 	* q3radiant/: updated with Q3Radiant198b3-src.zip. 
   2752 	Tagged (globally) as q3radiant-198b3.
   2753 	Kept the old files 
   2754 	  3DFXCamWnd.h
   2755 	  3DFXCamWnd.cpp
   2756           MainFrm2.cpp
   2757         New files
   2758           Shaders.h
   2759           misc/      (contributed special TGA resources, don't relly belong)
   2760         Removed:
   2761 	  pName
   2762         Changed filenames to previous case:
   2763          UNNAMED.MAP           -> unnamed.map
   2764          RES/BMP0002.BMP       -> RES/bmp00002.bmp
   2765 	Changed:
   2766          changelog.txt         -> ChangeLog
   2767 	
   2768 2000-04-28  Bernd Kreimeier  <bk@lokigames.com>
   2769 
   2770 	* CVS: bk000425 modified sources. This replaces the unix/ directory
   2771 	which is not yet in id's SourceSafe. Two check-ins, due to minor
   2772 	changes in an attempt to nail the Voodoo3 related crashes (driver
   2773 	problems, not a Q3 issue). Undid some of the QFL changes for PI
   2774 	and the log bug fix - put back in (TODO). Also includes:
   2775 	* Quake3/code/botlib/be_aas_sample.c: single file update from Robert.
   2776 	
   2777 	* CVS: id000423 code dumps (two of them). Applying Loki patches.
   2778 	Tagged for the final version (all patches).
   2779 
   2780 	* CVS: id000422 code dump. This did not include the 1.16n fixes
   2781 	used for Linux, and was the first dump for the 1.17 security fix
   2782 	release.
   2783 	Note: forgot to check in the ft2/ headers themselves, but they
   2784 	are not used in the current codebase anyway. Are added in next
   2785 	dump. Also there is use of CVS/CVS-like $Keyword$ patterns in
   2786 	some files, and between their revisions and ours we fuck this up.
   2787 	Also, id ZIP files create write protected sources, have to do
   2788 	chmod -R a+w Quake3/ to work and overwrite files.
   2789 
   2790 	* CVS: bk000315 modified source. This version was the 1.16n release.
   2791 	Note: the changes applied here are not in the subsequent code dumps
   2792 	of id. If you want to compile the Linux version as released you
   2793 	have to use bk-tagged versions until the patches are merged in by
   2794 	Robert Duffy.
   2795 
   2796 	* CVS: id000314 engine code dump, same procedure as below, tag.
   2797 	Note: this version added vm/ sudirectories with assembly files
   2798 	for cgame, game, ui. CVS tag id000314.
   2799 
   2800 	* CVS: id000304 engine code dump. Now there is a problem, as CVS
   2801 	was used in the Mac sources. Do
   2802 	  find . -name 'CVS' -exec rm -r {} \;
   2803         before cvs update, then tagged:
   2804 	 cvs -d /loki/cvsroot/ tag id000304 Quake3/
   2805 
   2806 	* CVS: checked in a source snapshot of the id00303 engine code
   2807 	and the id0003029 tools code. The tool sources are not fully in 
   2808 	sync, and we have only partial source from earlier engine revisions.
   2809         The engine source marks where Loki took over from Dave Kirsch.
   2810         This snapshot (with all temporary and bogus files) is imported
   2811         and tagged using:
   2812           cvs -d /loki/cvsroot import Quake3 id000303 initial
   2813 
   2814         Modules:
   2815           code:      the Q3 engine code, including a jpeg-6/ copy
   2816           common:    code shared by tools
   2817           libs:      code shared by tools, inlcuding a jpeg6/ copy
   2818           q3asm:     VM bytecode assembly 
   2819           q3data:    misc. Q3 data conversions
   2820           q3map:     BSP builder
   2821           q3radiant: Win32 editor, as is
   2822           lcc:       C compiler for q3asm
   2823 
   2824         The sources have not been cleaned up, and binary files have not been
   2825 	removed. The Q3Radiant code base might exhibit mixed case asmbiguities
   2826 	in the future, and future source dumps might come from SourceForge
   2827 	instead.
   2828 
   2829 2000-04-25  Bernd Kreimeier  <bk@lokigames.com>
   2830 
   2831 	* q3code.id000425/unix/Makefile: relative path, relocatable.
   2832 	Note: first code merge with id, finally :-).
   2833 
   2834 2000-04-24  Bernd Kreimeier  <bk@lokigames.com>
   2835 
   2836 	* q3code.bk000422/unix/matha.s: in C(BoxOnPlaneSide)
   2837 	the following line triggers assembler warning: 
   2838 	"missing prefix `*' in absolute indirect address, maybe misassembled!"
   2839 	  jmp Ljmptab(,%eax,4)  
   2840 	
   2841 
   2842 	* q3code.bk000422/unix/Makefile (MOUNT_DIR): rember to change.
   2843 	TODO: fix this bloody Makefile to be relocatable, damnit.
   2844 
   2845 	* q3code.bk000422/cgame/cg_event.c: applied JCash fix again
   2846 	(see EV_EVENT_BITS below). Send e-mail to verify.
   2847 
   2848 	* q3code.bk000422/renderer/tr_image.c: "../jpeg-6/jpeglib.h" again.
   2849 	
   2850 	* q3code.bk000422/: created from the id dump of today, lacking
   2851 	all but one of my changes (sigh). Swapped unix/ competely, takes
   2852 	care of 90%. Submitted all changes again to Robert...
   2853 
   2854 2000-04-19  Bernd Kreimeier  <bk@lokigames.com>
   2855 
   2856 	* q3code.bk000315/unix/linux_glimp.c (GLimp_EndFrame): 
   2857 	QGL_EnableLogging( r_logFile->value ) doesn't work?
   2858 
   2859 	* q3code.bk000315/unix/linux_qgl.c:  GLimp_LogNewFrame() is 
   2860 	obsolete. QGL_EnableLogging was out of sync with Win32 and
   2861 	did not support the new framecounter decrement logic.
   2862 
   2863 2000-04-03  Bernd Kreimeier  <bk@lokigames.com>
   2864 
   2865 	* q3code.bk000315/server/sv_snapshot.c: svs.nextSnapshotEntities
   2866 	is a signed integer unconditionally incremented, which gets
   2867 	negative and causes a segfaulting indexing an array. Added reset
   2868 	to counter. Might fail if snapshot numbers are supposed to
   2869 	monotonically increase.
   2870 
   2871 2000-04-02  Bernd Kreimeier  <bk@lokigames.com>
   2872 
   2873 	* q3code.bk000315/client/cl_parse.c (CL_ParseServerMessage): 
   2874 	assert(0) on Illegible message (remember to +set in_mouse 0).
   2875 	TODO: have to add a dump message function, it's unreadable.
   2876 
   2877 	* botlib/be_ai_goal.c (InitLevelItemHeap): loop counter -2
   2878 	left -2 with uninitialized next, and -1 disconnected. Removed
   2879 	redundant memset. There is an item alloc leak I suspect, as
   2880 	max_levelitems 1024 merely delayed the overflow error.
   2881 
   2882 2000-04-01  Bernd Kreimeier  <bk@lokigames.com>
   2883 
   2884 	* botlib/be_ai_goal.c (InitLevelItemHeap): still segfaults.
   2885 	Not memsetting the entire item heap. As items are cleared
   2886 	on return, that leaves only memory corruption?
   2887 	Later: upped max_levelitems from 256 to 1024
   2888 	Later: client dies on connect:
   2889 	  Error: CL_ParseServerMessage: Illegible server message 255
   2890 
   2891 
   2892 2000-03-31  Bernd Kreimeier  <bk@lokigames.com>
   2893 
   2894 	* botlib/be_ai_goal.c: initializing global vars.
   2895 	Segfault in AllocLevelItem () 
   2896 	  at /home/bk/Games/Quake3/q3code/botlib/be_ai_goal.c:364
   2897         I suspect that the initial freelevelitems setting is at
   2898 	the end of the list and eventually exposed.
   2899 
   2900 	* cgame/cg_event.c: according to Johmn Cash: 
   2901 	 itemNum = (es->event & ~EV_EVENT_BITS) - EV_USE_ITEM0
   2902         Quote: "This causes itemNum to be invalid about half the time, 
   2903 	preventing any client side effect tied to the item from occurring."
   2904 	
   2905 2000-03-06  Bernd Kreimeier  <bk@lokigames.com>
   2906 
   2907 	* qcommon/common.c: set pushEvent buffer and indices
   2908 	to zero in Com_Init().
   2909 
   2910 	* q3code/qcommon/qcommon.h: made SE_NONE (and for paranoia
   2911 	also NA_BOT) explicitely set to zero.
   2912 
   2913 2000-02-27  Bernd Kreimeier  <bk@lokigames.com>
   2914 
   2915 	* unix/Makefile: added dmalloc in an attempt to get on
   2916 	the Z_Free bug. Futile. Despite stripping dmalloc debug
   2917 	token down to essentials, I get a (seemingly bogus or
   2918 	unrelated):
   2919 	  debug-malloc library: dumping program, fatal error
   2920           Error: possibly bad .c filename pointer (err 24)
   2921 
   2922 	
   2923 2000-02-26  Bernd Kreimeier  <bk@lokigames.com>
   2924 
   2925 	* qcommon/common.c: various debug builts to isolate the
   2926 	Z_Free bug. It reproducibly happens on some machines
   2927 	with SE_PACKET, but the packets themselves look
   2928 	thoroughly corrupted.
   2929 
   2930 2000-02-21  Bernd Kreimeier  <bk@lokigames.com>
   2931 
   2932 	* qcommon/common.c (Com_EventLoop): possible problem
   2933 	here, pointer does not get cleared.
   2934 
   2935 	* unix/linux_glimp.c (InitSig): no signal handler.
   2936 	* common/common.c: dump in Com_Error for debug.
   2937 
   2938 2000-02-17  Bernd Kreimeier  <bk@lokigames.com>
   2939 
   2940 	* q3code: new dump from Zoid. Repeat tr_image.c fix.
   2941 
   2942 	* unix/Makefile: added client/snd_adpcm.c (linkage errors).
   2943 	Later: added entire JPDIR and rules, for tr_image.c. 
   2944 	Later: had to fix fules for game/ai_*.c files.
   2945 	Later: removed ui/ui_quit.o (n/a)
   2946 	Later: took out -mpentiumpro -march=pentiumpro 
   2947 
   2948 	* renderer/tr_image.c: windowism in #include path (see below).
   2949          #include "..\jpeg-6\jpeglib.h"
   2950 
   2951 1999-12-27  Bernd Kreimeier  <bk@lokigames.com>
   2952 
   2953 	* Alpha: tried a dedicated server compile. Segfaults in
   2954 	../qcommon/files.c:1682, a paksort function doing pointer
   2955 	fiddling.
   2956 
   2957 	* Makefile.alpha: created.
   2958 	Note: want to take the SDL/Setup autoconf ASAP.
   2959 
   2960 	* unix/unix_main.c: fixed __axp__ to __alpha__, guarded
   2961 	_FPU_SETCW.
   2962 
   2963 	* qcommon/vm_alpha.c: dummy, created.
   2964 	* qcommon/vm_null.c: dummy, created.
   2965 
   2966 1999-12-04  Bernd Kreimeier  <bk@lokigames.com>
   2967 
   2968 	* renderer/tr_image.c: windowism in #include path.
   2969          #include "..\jpeg-6\jpeglib.h"
   2970 	
   2971 	* Revision 1.11: from Zoid by e-mail.
   2972 	Note: threw away my playground copy, starting with the
   2973 	ZIP file. Zoid's using CVS now, but we can't remote
   2974 	access it. Thus did the
   2975 	 "find . -name 'CVS' -exec rm -rf {} \;"
   2976 	and then track it as 3rd party source by
   2977 	
   2978 
   2979 	* ChangeLog: created. Now starting to track Q3A source.
   2980 
   2981 --------- q3code log ---------------------------------------------