source: SmokinGuns/ChangeLog @ a87684ed

ioq3-synchro
Last change on this file since a87684ed was ae10c00, checked in by Zack Middleton <zturtleman@…>, 10 years ago

REFACTOR [a vs an]

From /dev/humancontroller.
(cherry picked from commit f3e7012bdbe72add113c66e264b24a31853479c0)

  • Property mode set to 100644
File size: 150.8 KB
Line 
1Changes in SG 1.1
2******************
3***** CHANGES ****
4- engine source synchronized with ioQuake3 SDK rev1774
5- Added support to new autorecord demo mode where demo filename is not output to
6  the screen: set cl_autoRecordDemo to 2 to use it
7- Fixed a bug related to gatling, thanks to Barto for the reporting
8- Enhanced SDK portability
9- Added getenv trap for future use
10- Added support for chat messages area with 6 new cvars:
11  - cg_chatTime: time to keep a line in the area in seconds (default 3s)
12  - cg_chatHeight: Area height in lines (default is 3, max is 8)
13  - cg_chatWidth: Area width in chars (default is 50, max is 79)
14  - cg_chatBigText: When set area chars are just doubled in size (default to 0)
15  - cg_chatMode: integer to set the chat area mod
16    - when set to 0, the default: Chat area is disabled and chat message are
17      just displayed like in SG 1.0
18    - when set to 1: Chat area is enabled for every chat messages
19    - when set to 2: Only team chat are displayed in chat area, normal chat
20      messages are not displayed. This is like cg_teamChatsOnly in vanilla Q3.
21  - cg_chatPosition:
22    - when set to 0, the default: Chat area is put at the bottom left, just above
23      the 6th pistol ammo when player is fighting in akimbo mode
24    - when set to 1: Chat area is put at the top left, just below the normal
25      console notification area
26    - when set to 2: Chat area is put at the bottom center, just above the main
27      hud. In that case, player may need to lower cg_chatWidth if cg_BigText is
28      also set.
29- Added 'tell' server side command to authorize admins to tell privately to player
30  This command is based on the UrbanTerror 4.1 implementation, thanks guys.
31  See http://www.urbanterror.net
32- Added ui_farclip cvar to be used as farclip management facility for UI part
33- Fixed another bad prediction case when cg_boostfps is set
34- Fixed old minor OpenGL error which prevented to debug easily FBO enhancement
35- Added rotating feature to func_train
36- Added sine "pendulum style" rotation to func_rotating
37- Number of curve's subdivisions has been raised to improve visual quality
38- Added to system/graphics menu an entry for far-clipping, map Level Of Detail, and curves details
39- Now falling damage are progressive
40- Allow to customize shaders instruction "tcgen environment", now:
41        - "tcgen environment_X" use X-axis (the default, same as "tcgen environment")
42        - "tcgen environment_Y" use Y-axis
43        - "tcgen environment_Z" use Z-axis (this one could be really usefull for reflecting water)
44        - "tcgen customEnvironment ( vector ) ( normal_weight_vector )" use a custom projection vector,
45                and set custom weight for normals
46                tcgen environment == tcgen customEnvironment ( 1 0 0 ) ( 2 2 2 )
47                Interesting value for normal_weight_vector are
48                        * ( 0 0 0 ) for a skybox-like environment map
49                        * ( 2 2 2 ) for the default Q3 environment map
50                        * ( 4 4 4 ) for an environment map with more deformation
51- Limit raised for shaders:
52        - up to 5 deformVertex (was 3)
53        - up to 5 tcMod (was 4)
54        - up to 24 animMap image (was 8)
55- Added new command for admins and admin-bot:
56        - "clientid" display a table with ID, IP, GUID and name for all player
57        - "clientstatus" the same but more verbose (ping, rate, ...), client related info
58        - "playerstatus" list all players with various game related info (ID, name, Score,
59                Kill, Death, TeamKill, SelfKill, RoB, HitPoint, $money$, TeaM, Time, Muted)
60- The console now log "teamkilled" in red letter rather than "killed" when this event occurs
61- New Minilog feature, for admin-bots usage. This is a small FIFO stack (128 entries). Older entries
62        will be overwritten if not pop'ed in time. The new commands:
63                - "poponelog" pop an entry out of the minilog
64                - "poplog" pop all entries out of the minilog
65        ATM the game engine write into it the current events: MAP, CONNECT, DISCONNECT, JOIN, HIT,
66        TEAMHIT, SELFHIT, WORLDHIT, KILL, TEAMKILL, SELFKILL, WORLDKILL, ROB, SAY, SAYTEAM, SAYTELL,
67        SECRET, KICK, RENAME, CALLVOTE, WON, TIED, TEAMWON, ENDROUND, NEWROUND, TIMELIMIT, DUELLIMIT,
68        FRAGLIMIT, TEAMFRAGLIMIT, SCORELIMIT.
69- New client command "secret" (no rcon needed) that add silently an entry "SECRET" to the minilog,
70        can be usefull for registering to a third party admin-bot, ...
71- New command: "mute <client ID>", that change anything that this client try to say into "(muted)",
72        mute it twice and everything he says would be silently drop. Use "unmute <client ID>"
73        to restore his voice.
74- New command "kicknum <client ID> [reason]", a replacement for clientkick.
75        The reason is sent to the client.
76- New command "givemoney <client ID> <amount>" that give someone some gold, can be usefull for
77        third party RCON script.
78- New command "giveitem <client ID> <item classname>" that give someone some item, can be usefull for
79        third party RCON script.
80- New command "forceteamnum <client ID> <team>", same than "forceteam" except it accept a client ID
81        rather than a name, it's more reliable and more usefull for RCON script, also, it doesn't
82        allow you to do silly things, like "forceteam" does. Team can be red/lawmen (the 1st team),
83        blue/outlaws (the 2nd team), spec/spectator, or join/auto (to force auto-team).
84- Fixed bug of auto-team (dead spectators now count as part of the team)
85- New cvar g_voteMinLevelTime: you can't call a vote before this time (in seconds) has passed.
86- New cvar g_voteDelay: you have to wait this time after you called a vote to call another one.
87- New cvar g_maxVote: maximum number of vote someone could call.
88- New cvar g_maxMoney: customize the maximum money (default value: 200)
89- "/callvote kick" should not be bugged anymore, since it is converted to /kicknum internally.
90- "/callvote clientkick <client ID>" is deprecated, use "/callvote kicknum <client ID> [reason]" instead.
91- You can now use "/callvote mute <player name>" and "/callvote unmute <player name>", note that
92        unlike /mute and /unmute, it use the player's name, not the client's ID (but it is converted
93        in ID internally, so renaming wont allow one to escape).
94- Muted player cannot call a vote
95
96Changes in SG 1.1b4-20100116
97******************
98***** CHANGES ****
99- engine source synchronized with ioQuake3 SDK rev1771
100- Enhanced SDK portability
101- Player will be kicked if he is trying to rename when he was proposed to be kicked
102- Enhanced callvote command security
103- Player names are now colorized in lists like "callvote kick" list to avoid name confusion
104- Fixed a bad prediction case when cg_boostfps is set
105- Fixed simultaneous reloading bug in akimbo mode
106- Added new command 'addentity', it can be used to test misc_externalentity or any map entity
107- Added support for misc_externalmodel map entity, thanks to World Of Padman project
108- Fixed bug where having a scoped Sharps in your inventory caused double spread for the other rifles, and the gatling.
109- Added close clipping feature for mappers
110- Update & authorize servers are now served by smokin-guns.net domain, thanks to L3th4l
111- Added support to in-game lagometer setting cg_lagometer to 2
112- Enhanced Smokin'Guns motd support
113- Added SDK tool for modders
114- Fixed cvar type for cg_bob* cvars
115- Fix GLSL program loading for custom FBO effects when more than one program is loaded from files
116
117Changes in SG 1.1b3-20091210
118******************
119***** CHANGES ****
120- engine source synchronized with ioQuake3 SDK rev1754
121- Added a custom resolution
122 - Mode 19: 1280x720 (16:9 HD), suitable to provide youtube HD format video
123- support UI item to select OpenAL device from available OpenAL devices
124- support new console aspects, thanks to Conq idea. Added 5 cvars to control it:
125  - cl_consoleType: "0" classic wooden wall texture, "1" color
126  - cl_consoleRed: from 0.0 to 1.0, the red component for the color console
127  - cl_consoleGreen: from 0.0 to 1.0, the green conponent for the color console
128  - cl_consoleBlue: from 0.0 to 1.0, the blue component for the color console
129  - cl_consoleTransparency: from 0.0 to 1.0, the alpha component or transparency for any kind of console
130- support new server cvars:
131  - g_startingWeapon to set which weapon player will own at startup (default "2" for remington pistol)
132  - g_startingMoney to set how much money player will get during startup (default "20")
133  - g_bulletDamageMode to change between bullet damage mode, support values:
134    - 0: same formula than Smokin'Guns 1.0, the default
135    - 1: new advanced linear formula proposed by tequila tuable with following cvars:
136         - g_bulletDamageALDRmidrangefactor: must be between 1 and 10, default 2
137         - g_bulletDamageALDRmidpointfactor: must be between 0 and 1, default 0.66
138         - g_bulletDamageALDRminifactor: must be between 0 and 1, default 0.5
139  - g_bulletDamageAlert: the percentage from which clients will receive warning
140    because their damage was reduced. Default is "25" %. Useful with g_bulletDamageMode set to 1
141- support new values with client game cg_hitmsg cvar:
142  - cg_hitmsg can be set to the minimum percentage you want to see when being alerted
143    by server with reduced damage due to high range hit. Default is still 1, but
144    you won't receive alert lower than the server limit (see g_bulletDamageAlert)
145    And you may want to set it to 100 to disable damage reduction alerts.
146- Added FBO support with rotoscope and bloom effects, thanks to initial Gord Allott work
147  See https://bugzilla.icculus.org/show_bug.cgi?id=3422 for some details
148  Then enhanced GLSL program loading support for frambuffer (FBO) effects
149- Added support for cl_voipDefaultGain cvar, thanks to Tremfusion team
150- Fixed SDL window icon to Smokin'Guns one
151
152Changes in SG 1.1b2-20091103
153******************
154***** CHANGES ****
155- renaming can be discarded to players trying to rename themselves too often
156  if g_splitChat is activated and g_delayedRenaming is set to a delay in seconds (default=20)
157- support for showing who is the VoIP speaker and default voip gain, thanks to tremfusion team:
158  - Thanks Mercury and Amanieu
159  - Added cl_voipShowSender and cl_voipSenderPos cvar:
160    - cl_voipShowSender must be set
161    - cl_voipSenderPos can be set from 0 to 5 to choose where the sender will be shown on the screen
162  - Added cl_voipDefaultGain to help tuning voip
163- support for shooter_dynamite and shooter_molotov map entities
164- Doors won't try to move players now
165- Fix rotating door comportement when blocked
166
167Changes in SG 1.1b1-20091019
168******************
169******* NEW ******
170- Added more custom resolution, to be set using +set r_mode mode_number
171 - Mode 12: 1280x800 (wide)
172 - Mode 13: 1366x768 (wide)
173 - Mode 14: 1440x900 (wide)
174 - Mode 15: 1680x1050 (wide)
175 - Mode 16: 1920x1080 (wide)
176 - Mode 17: 1920x1200 (wide)
177 - Mode 18: 2560x1600 (wide)
178- Add DEFAULT_BASEDIR support for packagers:
179 - you have to export DEFAULT_BASEDIR from the shell before to do a make
180- Use SMOKINGUNS and SMOKINGUNS_SO define
181- Add SG_VERSION, SG_RELEASE & SG_SVN support
182- new shotgun pattern (needs "g_exp_shotgunpattern 1") more uniform, and with homogenous radial density
183- new money system (needs "g_moneyrespawn 1")
184- customize teamrole in BR by setting cvar br_teamrole to 0 (default, winner defend next round), 1 (winner are robbers next round),
185        2 (outlaws are always robbers), 3 (lawmen are always robbers) or 4 (robbers and defenders swap at every new round)
186- the player who rob the bank now get one point, this is customizable by admin through the cvar: g_robber_reward (value between 0 and 5)
187- far-clipping (with a bunch of clipping-form) support for func_static entity, come with additionnal cvar:
188        cg_farclip to turn on/off this feature (default: on), cg_farclip_value to scale it up (default: 1, value lesser than 1
189        are ignored - for cheat protection), and cg_farclip_zoomvalue for the sharp's zoom mode (default: 3, again: value
190        lesser than 1 are ignored)
191- new g_roundNoMoveTime cvar, in seconds, to force players to not move at round beginning, only buying is possible during that time
192- new TK handling cvars g_maxteamkills,g_teamkillsforgettime and g_teamkillschecktime when g_friendlyFire is set:
193 - g_maxteamkills, set to 0 disable max TK checks, otherwise defines the maximum number of supported TK by a player
194 - g_teamkillsforgettime, in seconds, defines the time after which TK count will be reset to 0 for the player
195 - g_teamkillschecktime, in seconds, defines the time during which TK will be checked at only round beginning
196- new renderer cvar to activate OpenGL texture MultiSampling: r_ext_multisample. You really need a good video card to use it.
197 - Thanks to ioQuake3 team for r_ext_multisample cvar
198- new server console commands "bigtext" and "cp" to authorize server admins to display big message. A client number can be used
199  as first argument to only display the messsage to a given client.
200- show colorized players name in players list
201- new "sendaway" command as replacement of "kick" command, it is now used for "callvote kick"
202- renaming to empty name, to 'all' or to 'allbots' is not allowed
203- renaming is now allowed only one time by minute
204- New cvars from ioQ3 updates:
205  - s_muteWhenUnfocused to mute sound when unfocused (default=0)
206  - r_allowResize to allow window resizing in windowed rendering mode (default=0), only with SDL support
207- Thanks to ioQ3, passed rcon commands are logged
208- callvote string is logged in server log
209- new "cancelvote" server side command, can only be used by admins
210- support for more crosshair
211*** CHANGES ***
212- Reloading bug fixed
213- Fix game crash during game load when using cgame binary library
214- Fix server not hitting time limit when only bots are playing (thanks to ioQ3 code engine)
215- Fix cinematic rendering with wide screens (thanks to ioQ3 code engine), intro is now visible in wide screen mode
216- Fix little freeze/lag in dm_train
217- Fix invisible "entity 0" bug near movers entities we can trigger
218- Many fixes from ioQuake3 sources
219- g_allowVote can be set to the number of seconds before a player can call again a vote
220- players name can be tagged to make sure they are unique in game
221- settings are now stored in a per-user location, instead of in the game's installation directory
222
223Changes in SG 1.0-20081231
224******************
225***** CHANGES ****
226- Updated Unix building process to support more processor kind
227- Updated Makefile to produce binary libraries for unix
228- Updated Makefile to produce sse, sse2 and smp binaries for unix
229- Updated Unix building process to keep install & build folder in the source base
230- Fix "OP_BLOCK_COPY not dword aligned" in the same way then an old ioQuake3 fix...
231
232
233Changes since sg 0.9
234******************
235*** CHANGES ***
236- Added .mak, .bat, .lnt, .vprj, .Conscript, .Makefile files from Tequila archive (Excluded a few)
237- Fixed buildvm.bat and cleanvm.bat which weren't working due to reorganization
238- Organized VC build solutions
239- Removed old VC build solutions
240- Created SSE and SSE2 build profiles for each solution
241- Added lcc compiler toolchain back
242- Added AL and unix files
243
244Changes since sg 0.9
245******************
246*** CHANGES ***
247- Copyright updated.
248- Source license header audit completed.
249- Removed .mak, .bat, .lnt, .vprj, Construct, Makefile files (Waiting for "working" sets to be comitted)
250- Removed code/macosx (Old project was for pre-XCode and the current state of code excludes Intel)
251- Removed code/unix (Waiting for "working" sets to be comitted)
252- Updated Win32 project files for Visual Studio / C++ 2008 (VC9)
253
254Changes since wq3 b2.2
255******************
256
257*** NEW ***
258- Gamename is now "smokinguns"
259- guid & pickup item and damages are now logged (Thanks, Tequila)
260- g_allowVoteKick : New server side cvar to allow or not vote kick
261
262*** CHANGES ***
263- When opening the buy menu, the buy ($$) balloon tooltip is displayed instead
264of the chat (:>...) balloon tooltip.
265- Added "cg_boostfps" cvar to slightly improve FPS, concerning flares and particles.
266- Added a menu option to disable glowing flare effects.
267It might improve FPS for low CPU machine.
268- Added "g_spritelag" to disable "red lag icon" above each laggy player.
269This icon can be particularly annoying because it shows player position to others.
270- The InGame ServerInfo menu now shows values of the server you are connected to.
271- Added "g_breakspawndelay" to change breakable respawn delay.
272By default, 45 seconds (at least) are needed.
273- Added "g_forcebreakrespawn". A breakable will respawn no matter what, even if it
274is in one player's field of vision.
275
276*** FIXED ***
277- Max OSX users should no longer have the "OP_BLOCK_COPY not dword aligned" message.
278- You can no longer pick up more knives and dynamites, when you wear a belt and when
279you already have the max ammo (10 knives or dynamites).
280- Correct colors displayed in buy menu for throwing weapons when you've got a belt (Thanks, Aerasol).
281- By killing yourself and then quitting the game, all your items were dropped twice.
282- When you died and had two same pistols, the correct ammo will be kept for the second one.
283- No possible trick to reload Peacemaker, Colt Lightning and Winchester 1866 in a faster way.
284- No weapon drop from the sky, when spectating.
285- Fix 100% CPU usage on wq_train and wq_lake, when many bots played.
286- Pistols on holster are drawn correctly.
287- If a player hold two different pistols, draw and put them in the correct hands, when third person spectating.
288- Don't "extreme speed knife stab".
289- Prevent a Q3 engine bug in rendering special player shadows, allowing anybody
290to easily locate other players, and then cheat !
291If r_stencilbits >= 4 and cg_shadows == 2, then cg_shadows will be changed to 1.
292- Possibly fix some 3D font rendering on "say:" and kill message on top right screen.
293
294Changes since b2.1
295******************
296
297In addition to these changes, all of the textures and sounds from vanilla quake 3 that WQ3 was dependant on, have been replaced.  So some things in the game will look or sound different.  This is in preparation for a standalone release, to be announced at a later date.
298
299*** NEW ***
300- The delagging code is upgraded to Unlagged 2.01, giving several benefits.
301        - more reliable hitscan delagging
302        - better player movement smoothing
303        - new client cvars: cg_delag, cg_projectileNudge, cg_optimizePrediction, cg_cmdTimeNudge, cl_timeNudge
304        - new server cvars: g_delagHitscan, g_truePing, g_unlaggedVersion
305        - should lessen the client cpu load (set cg_optimizePrediction 1)
306- Ammo counts displayed in weapons choose menu.
307- Ability to select either one of two pistols of the same kind.
308- You can now go into spectator mode and then rejoin, without losing your score.
309- Refresh rate can now be set in the System menu.
310- Added a menu option for disabling or changing the talk sound.
311
312*** CHANGES ***
313- Deathcam now turns to follow your killer, and is hopefully less buggy.
314- Try to find spawnpoints at least 700 units away from enemy players.
315- Players don't drop the ammo belt when they die, because people don't like to pick up an empty belt.
316- The ammo belt will no longer enable the player to carry more of knives, molotovs, or dynamite.
317- Capped movement speed at 75% while reloading, to allow players to knife you more easily.
318- Made altfire for pistols about 12% faster, but increase spread multiplier from 1.6 to 3.
319- When doing a refresh, the ingame browser now checks only wq3 servers, should be a lot faster.
320- If dropping a pistol in akimbo mode, switch to the remaining pistol instead of highest ranked weapon.
321- FFA is now default gametype for wq_- maps in the 'Join' menu.
322- Made the server info popup in the Join menu larger.
323- Made it possible to disengage scoped mode while reloading the Sharps.
324- Drop knives, molotovs, and dynamite with the correct amount of ammo, instead of always just one.
325- Easier to move silently down stairs.
326- Tweaked weapon pricing.  Dynamite, molotov, and knives 50% cheaper.  Winchester '97 two dollars cheaper.
327- Can now replace both pistols with lesser ones without dropping the old ones.  If you have two Peacemakers, buying two Schofields to replace them will work without having to drop the last Peacemaker.
328- If you have two pistols of the same kind and press the dropweapon key, the one with the least ammo left will be dropped, instead of always the one in your left hand.
329- Bot behavior for the various skill levels have been tweaked.
330
331*** FIXED ***
332- Esc key shouldn't get stuck anymore.
333- Firebutton dead bug should show up less frequently.
334- Weapons won't be picked up if you don't have room to carry them.
335- Gatling falls down if standing on something that breaks.
336- Can now buy ammo for deployed gatling even if you are carrying a rifle or shotgun.
337- Won't get stuck with gatling under water, because you can't deploy it under water any longer.
338- Molotow now stops burning if you submerge while carrying it.
339- Make dynamite explode under water.
340- Can no longer light a dynamite or molotov while under water.
341- Fixed players with two guns of the same kind dropping only one of them when they die.
342- Fixed bots not being able to join when the server requires a password.
343- Don't try to load custom bots that are made for vanilla q3.
344- Directional smoke now works, thanks to Spoon.
345- Dynamite and molotovs will no longer disappear if you throw them when backed up to a wall.
346- No cocking sound when switching to an empty Remington shotgun.
347- The "team" command exploit that let you respawn in BR and RTP.
348- Bots can't see through doors anymore.
349- The individual score sometimes got reset in BR and RTP.
350- Don't play "no ammo" sound when you are out of dynamites.
351- Fixed a bug with weapon changing that would cause an infinite sound loop.
352- Weapon switching sound was wrong for other players than yourself.
353
354Older ioQuake3 and Quake3 Changelog:
3552008-04-04 Various contributors
356        + Solaris fixes
357        + Replace vsprintf function in bg_lib.c with vsnprintf implementation started by Patrick Powell
358        + Compile bg_* files separately for each game module, as originally intended
359        + Write q3config_server.cfg for the server, to avoid reseting client variables
360                after running a dedicated server
361        + Split image decoders into their own files
362        + OS X build updates for most compatibility
363        + Slackbuild
364        + Detect available resolutions and offer them in the in game menus
365        + A few botlib fixes
366        + Fix poppy captured audio when recording videos
367        + Extend console logging on crash errors
368        + Merge *BSD platform definitions in q_platform.h
369        + IRIX support
370        + Remove all the old bat/sh QVM building scripts
371        + Make master server used client configurable (cl_master)
372        + Fix to QVM compilation on big endian architectures
373        + OpenBSD support
374        + Autocomplete key names
375        + Don't build client command completion on the dedicated server
376        + Don't apply colour escape chars on input fields
377        + Rewrite of the win32 dedicated console
378        + Improved Makefile startup time
379        + Build dedicated server binary on Windows
380        + Bump Q3_VERSION to 1.35
381        + Replacement of platform specific backends with a generic SDL one
382        + Merge win_net.c and unix_net.c to net_ip.c
383        + Demote input related console information to developer only so that it doesn't
384                spam the console every time input settings are changed
385        + PNG texture support
386        + Cleanup of tabulation in R_LoadImage
387        + Fixes to console scrolling
388        + New x86_64 vm that doesn't use gas
389        + Early out AABB collision optimisation
390        + Generate QVM dependicies in a better way
391        + Build process is quieter
392        + Replace horrendously long list of Makefile build rules with set of inference rules
393        + Allow CC to be overridden externally to the Makefile
394        + Move storage of console history from a cvar to a file in order to alleviate
395                security concerns
396        + Fix bug where transparent surfaces wouldn't draw over skyboxes
397        + Add input sanitising to various sound playing functions called from mods
398        + Explicitly set OpenAL distance attenuation model
399        + Increased the number of registers used for the opStack in the PPC vm from
400                12 to 16
401        + Fix endian issue in MDR loading
402        + Add cURL support for HTTP/FTP downloading
403        + Disable video command when not playing back a demo
404        + Print the SVN version string in Com_Init()
405        + OpenAL device enumeration support
406        + Fix 100% CPU usage on idle dedicated servers
407        + Windows home directory support
408        + Improve correctness of AVI files created by video command
409        + Better SDL joystick support
410        + sv_minRate
411        + [cl|sv]_packetdelay
412        + Various security fixes
413        + Fix JIT compiler code execution on NX-protected win32 OS
414        + Fix r_overBrightBits variable getting ignored on Linux
415        + cl_guid for semi-reliable server authentication
416        + Anisotropic texture filtering
417        + Video export doesn't crap out with sv_pure 1 anymore
418        + Video export doesn't crap out when writing > 2Gb files anymore
419        + Fix to a bug where servers with long uptimes (~27 days) would consume 100%
420                CPU if the running game did not set the nextmap cvar
421        + Some OSes no longer requires a vid_restart when changing r_fullscreen
422
4232006-01-24 Various contributors
424        + Persistent console history
425        + Added code to sleep a bit when q3 has no focus and sleep a lot when it's
426                minimised (SDL only)
427        + Cull excess speaker entities when using OpenAL
428        + Fix the operation of the delete key in *nix
429        + Only check the checksum on baseq3 pak0.pk3
430        + Overhaul of console autocompletion
431                - No longer does weird stuff like move the cursor inappropriately
432                - Autocomplete works with compound commands
433                - Special autocomplete on some commands e.g. \map, \demo
434                - Removed various hacks used to counter the original autocomplete code
435        + Fixed the ability to disable Ogg Vorbis
436        + s/i686/i586/ - see bug #2578
437        + Some sloppily coded mods call the Q3 sound API with NaNs -- sanitise this
438        + Removed advertising clause from BSD license as per mailing list discussion
439        + "make distclean" now does what you'd expect
440        + "make clean toolsclean" now does what "make distclean" did before
441        + GPL MD4 implementation
442
4432006-01-16 Various contributors
444        + Move code/unix/Makefile to ./Makefile
445        + x86 OS X support
446        + "quake3" shell script as shipped with 1.32 (on linux) no longer needed
447        + Ogg codec support from Joerg Dietrich
448        + Fix to the gcc4/-O0 x86 JIT compiler bug
449        + Up the defaults for zone and hunk memory since some mods (UT) have large
450                memory requirements that will have increased versus 1.32b due to some of the
451                alignment fixes
452        + Dependency generation for the .asm files
453        + Remove FS_SetRestrictions
454        + Add FS_CheckPak0 for better error messages where dumb users are involved
455        + Added cl_autoRecordDemo, which when enabled automatically records a new demo
456                on each map change
457        + Only display the g_synchronousClients warning when it's appropriate
458        + Remove custom memcpy/memset code
459        + AVI video output
460                - Uses motion jpeg codec by default
461                - Use cl_aviFrameRate to set a framerate
462                - \video [filename] to start capture
463                - \stopvideo to stop capture
464                - Audio capture is a bit ropey
465        + General Makefile improvements
466        + Support for MinGW cross compilation
467        + NetBSD support from optical
468        + x86_64 JIT bytecode compiler no longer disabled by default
469        + msvc project files updated and moved to win32/msvc
470        + Various alignment fixes
471        + Solaris (x86 and sparc) support from Vincent S. Cojot
472        + Fixed Altivec-based mesh rendering
473        + Ditch Mac OS 9 support
474        + Added a Makefile option USE_LOCAL_HEADERS which can be disabled to use system
475                headers if desired
476        + Detection of Altivec on Mac OS X
477        + SMP support with sdl_glimp.c on Mac OS X.
478        + Add "very high quality" option (patch from Pascal de Bruijn)
479        + Support for RIFF files with zero length data chunks (yes they exist, and yes,
480                they're legal)
481        + Support for ccache. If you want it, add USE_CCACHE=1 to Makefile.local
482        + Mac OS X now uses SDL backend, all Objective C removed
483        + Partial implementation of FS_Seek for files in pk3s
484        + Implementation of r_dlightBacks from Shane Isley
485        + OpenAL support, from BlackAura aka Stuart Dalton
486        + An abstract codec system, simplifying support for new formats
487        + Ignore in_dgamouse setting if dga isn't available
488        + Removed hard coded mouse acceleration in *nix input code
489        + Basically rewrote the lcc Makefile to be more sane
490        + Removed various bits of lcc that weren't built/needed
491        + General portability improvements
492        + Various variables added that aid packaging, from vapier
493        + Centralise architecture defines in q_platform.h
494        + Replaced a bunch of inline and __inline with ID_INLINE
495        + Replaced a bunch of __i386__ with id386
496        + General tidy up of asm preprocessor decisions
497        + Removed C_ONLY from the dedicated server build
498        + Removed rule to build C++ (for splines) from the Makefile
499        + General decrufting
500        + Split USE_SDL into USE_SDL_VIDEO and USE_SDL_AUDIO
501        + Various assorted bug fixes
502
5032005-10-29 Various contributors
504        + nasm syntax asm ported to gas
505        + Disabled-by-default MD4 support
506        + cons build system removed
507        + Better FreeBSD support
508        + Makefile generates dependencies
509        + Some SDL sound tweaks
510        + qvm build tools and qvms are now built with the rest of the binaries
511        + q3asm-turbo from Phaethon
512        + Moved various displaced c and h files into more appropriate places
513        + A shitload (can I say shit?) of bug fixes -- see the svn log for details
514
5152005-09-22 Tim Angus <tim@ngus.net>
516        + MinGW port
517
5182005-09-??
519        + SDL Stuff (icculus)
520        + x86_64 (ludwig von angstenheimer)
521        + patches from a cast of thousands
522
5232004-05-22 Timothee Besset <ttimo@idsoftware.com>
524        + updated the xcode project from Apple's version
525                now with the latest vm_ppc code
526
5272004-05-21 Timothee Besset <ttimo@idsoftware.com>
528        + fixed the Linux build to compile again on sid (glext.h and gcc3 warnings)
529        + 2 weeks ago, hacked up the source to compile on panther / xcode 1.1
530                several cleanups were needed, and VM support seems broke (hangs or crashes)
531        + got altivec optimisations from Apple (Kenneth Dyke)
532                merged back in
533        + looks like with the new code merge the VM support is back in and working
534
5352003-09-15 Timothee Besset <ttimo@idsoftware.com>
536        + import Q3 java master code, cleanups on monster
537
5382003-08-31 Timothee Besset <ttimo@idsoftware.com>
539        + loki_setup hell
540                https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=626
541                http://zerowing.idsoftware.com/linux/q3a/index.html#glibc
542                text mode installer in loki_setup image built on Mandrake 7.2 crashes on
543                some glibc 2.3 systems such as RH9 etc.  need to move to a different
544                version of the installer, and update old installers to keep them still
545                'installing' moving to build the setup binaries on Debian Woody systems
546                (glibc 2.2, text mode installer will no longer work on 2.1 systems) hacked
547                together a new setup, using setup tree from RTCW. would need a complete
548                revamp if a new full setup with new binaries is needed
549
5502003-07-17 Timothee Besset <ttimo@idsoftware.com>
551        + new cvsreport, testing per-module config
552
5532003-01-19 Timothee Besset <ttimo@idsoftware.com>
554        + building on both gcc 2.x and 3.x
555                added conf modules to check gcc version
556                ccache support
557
5582003-01-13 Timothee Besset <ttimo@idsoftware.com>
559        + tweaking around for gcc 3.x build
560                edit Conscript to change the compiler
561
5622002-12-16 Timothee Besset <ttimo@idsoftware.com>
563        + added pbEmit class to auth code, emit CD keys to local PB master
564
5652002-11-14 Timothee Besset <ttimo@idsoftware.com>
566  + up to latest makeself.sh
567        + add both quake3.x86 and quake3-smp.x86 to setup
568        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=573
569          console setup crash / glibc 2.3 (Debian Sid)
570                investigated, put together a workaround         
571
5722002-11-5 Timothee Besset <ttimo@idsoftware.com>
573        + Linux building both smp and non-smp again. Will have to put both in setup
574        + added in_subframe to toggle X subframe event handling
575        + reworked the timing code to be more reliable
576        + cleaned up dgamouse/in_mouse code, removed unnecessary dgamouse var
577        + made the mouse grabbing an in_nograb cvar, no longer a compile time option
578          in_nograb 1 force in_dgamouse 0 and r_fullscreen 0 (any of those two will b0rk)
579        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=565
580          mouse issues on Suze 8.1 - related to subframe event timing
581                added code chunk to detect broken X timing and disable subframe
582        + tweaked the subframe/X bug workaround to be less paranoid     
583
5842002-10-28 Timothee Besset <ttimo@idsoftware.com>
585        + no longer blocking demo recording if g_synchronous clients != 0
586                only sending out a warning (everyone does g_sync 1 ; record ; g_sync 0)
587
5882002-10-21 Timothee Besset <ttimo@idsoftware.com>
589        + building final mod sdk setups (added lcc bins, added link to q3asm-turbo in readme)
590
5912002-10-8 Timothee Besset <ttimo@idsoftware.com>
592        + quickfix cl_maxpackets > 125 brings back to 100
593
5941.32 release ---
595
5962002-10-7 Timothee Besset <ttimo@idsoftware.com>
597        + made the 'demo' command case-insensitive on extension match (it was confused by demo FOUR.DM_68)
598        + mouse wheel scrolling with in_mouse 1 + window mode was not working, fixed (DI didn't catch)
599        + removing on-the-fly pk3 build from Linux setup, using the finalized ones now
600                added 'pk3' option to cons for toggle of pk3 building
601
6022002-10-5 Timothee Besset <ttimo@idsoftware.com>
603  + updated win32 mod sdk (in win32/mod-sdk-setup)
604    added q3asm and lcc source
605    updated the .bat to build VMs
606
6072002-10-3 Timothee Besset <ttimo@idsoftware.com>
608        + linux mod sdk, wrote the bulk of the scripts
609
6102002-9-30 Timothee Besset <ttimo@idsoftware.com>
611        + ATVI Quake 3 1.32 Patch #9
612                rolling back to the way it was before, leaving 1v1 force vote exploit, the fix was worse than the bug
613                from comment on bug #9 in tracker:
614               
615                actually the fix is worse than the original bug
616
617     after the fix, voting when you are alone on the server was no longer working
618     it was kinda intended in the fix, that you would have to be at least two to pass a vote .. but
619     it is an oversight.
620
621     calling a vote in a 1v1 game against a bot fails immediately
622     (calling a vote in any situation where there's only 1 live player fails)
623
624     Say a server's running some lame custom map that you have but a friend doesn't. You can't go
625     on the server and change it to the map you want to play, so he ends up having to auto-dl it at
626     8K a second just so you can switch from it.
627
628     This particular 2 clients, vote / quit exploit would involve too many changes to fix properly.
629     I am reverting back to the old version, and leaving as WNF
630
6312002-9-29 Timothee Besset <ttimo@idsoftware.com>
632        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=50
633                added Wheel support to the DirectInput code IN_DIMouse (in_mouse 1)
634                tweaked the Wheel mouse reading for in_mouse -1 (old win32 input code)
635                        handle correctly when zDelta is > 120
636                        provide an in_logitechbug cvar to handle buggy Logitech MouseWare driver sending wheel events twice
637
6382002-9-26 Timothee Besset <ttimo@idsoftware.com>
639        + ATVI Quake 3 1.32 Patch #38
640                adding trap_SetPbClStatus, reliably checks for PB presence before enabling PB in UI
641
6422002-9-25 Timothee Besset <ttimo@idsoftware.com>
643        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=551
644                SVF_CLIENTMASK, fixed a typo
645        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=555
646                pushed cl_maxpackets upper limit to 125 (from 100) per CPMA Arqon's request
647
6482002-9-24 Timothee Besset <ttimo@idsoftware.com>
649        + ATVI Quake 3 1.32 Patch #33
650                PB reporting sv_paused cvar hacked, fixed SV_CheckPaused to use a Cvar_Set
651        + ATVI Quake 3 1.32 Patch #24
652                added [skipnotify] from RTCW, use to display in the console only, but not on client screen
653                (also fixes pb_msgprefix and pb_sv_msgprefix)
654        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=553
655                using correct error message if listen server starting as cl_punkbuster 0 sv_punkbuster 1
656        + ATVI Quake 3 1.32 Patch #35
657                text auto wrap in UI code was eating the last word if it was wrapping
658                fixed in Q3 and TA UI (this bug could have affected the server print message also)
659        + some updates to the win32 cons post-build process     
660
6612002-9-21 Timothee Besset <ttimo@idsoftware.com>
662        + adding bspc cons build script
663
6642002-9-19 Timothee Besset <ttimo@idsoftware.com>
665        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=552
666                disconnect reason is transmitted in the disconnect command and processed into com_errorMessage
667                (similar to RTCW behaviour)
668                added UI for com_errorMessage cvar in baseq3/, if client is kicked/dropped/disconnected for whatever reason
669                (this is already functional in TA)
670        + ATVI Quake 3 1.32 Patch #9
671                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)
672        + ATVI Quake 3 1.32 Patch #5
673                removed the userInfoChanged message (was a debugging leftover)
674        + ATVI Quake 3 1.32 Patch #18
675                rcon was not properly fixed yet, this only showed up for PB commands
676                changed the rcon parsing again to be more reliable
677       
6782002-9-18 Timothee Besset <ttimo@idsoftware.com>
679        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=549
680                the demo command has a list of compatible protocols, it will loop through 66 67 68
681                you can do '/demo four' and it will try four.dm_66 four.dm_67 four.dm_68
682                or you can explicitely give a '/demo demoname.dm_??'
683        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=551
684                added SVF_CLIENTMASK (0x00000002), works only with <= 32 players
685                set bitmask of players to which send entity
686
6872002-9-17 Timothee Besset <ttimo@idsoftware.com>
688        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=550
689                rcon bug fix
690        + some scons updates for win32 (post build)
691        + 1.32rc2
692
6932002-9-06 Timothee Besset <ttimo@idsoftware.com>
694        + updated completely the setup system:
695                fixed cons stuff to build setup with cons -- release setup
696                working from new setup codebase with some custom patches:
697                        https://bugzilla.icculus.org/show_bug.cgi?id=52
698                        https://bugzilla.icculus.org/show_bug.cgi?id=53
699                        checked that BSD support was still in (brandelfing and symlinks) .. will have to get tester feedback
700                bumped version to 1.32rc1       
701                TODO: update the windows .VCT (standalone setup and auto-update)
702
7032002-9-04 Timothee Besset <ttimo@idsoftware.com>
704        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=543
705                backport from RTCW 1.4 code
706                rcon commands where sent after being tokenized and rebuilt
707                that was breaking any quoting, for instance 'rcon g_motd "hooka pooka"'
708                added Cmd_Cmd() to retrieve the un-tokenized command and transmit as is on both ends
709        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=542
710                b0rked text wrapping in connect screen
711                was a missing sizeScale in q3_ui/, and a bad param in ui/
712        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=540
713                backport fix to pk3 reordering, happens when clearing the references, bad order from connection may break stuff         
714        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=527
715                TA ui/, quickfix to netSource (mod stuff, doesn't affect TA)
716        + cleaned up broken old DO_WIN32 stuff in cons scripts
717        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
718                typo in models2.shader
719        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=443
720                Linux client: sub-frame timing of key/mouse events
721        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=453
722                added mousewheel support: wheel to scroll, ctrl+wheel to scroll faster, shift+wheel to scroll history
723        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=545
724                bumped server count to 4096
725        + keep around: __asm__ __volatile__ ("int $0x03");             
726        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=516
727                moved screenshots to backend with a new RC_SCREENSHOT render command
728                fixes the r_smp 1 garbled screenshots
729
7302002-8-29 Timothee Besset <ttimo@idsoftware.com>
731        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=539
732                new VM code from Raven's Sof2
733        + cons / qvmtools build system fixes   
734        + had to get a new qe3.ico again (resource compiler error)
735                http://vasin.hypermart.net/eei.htm
736        + updated, basic testing on win32, merging back in trunk
737        + merged bug-539 branch back into trunk, officialize the new VM code
738
7392002-8-26 Timothee Besset <ttimo@idsoftware.com>
740        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=472
741                linux client: handle ctrl+space situations (could leave space locked on + space not working with ctrl on)
742        + update the build system, build q3lcc and q3asm etc. on demand
743        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=62
744                fixed invisible players/entities
745
7462002-8-23 Timothee Besset <ttimo@idsoftware.com>
747        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=536
748                fixing donedl being ignored after autodl if map_restart'ed (propagate from RTCW)
749                ignoring multiple map_restart (propagated from RTCW)
750        + reworked the server 'client text ignored' message to only trigger     when there's actually a message that doesn't get to the game VM
751
7522002-8-18 Timothee Besset <ttimo@idsoftware.com>
753        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=528
754                ydnar: reorg bits in the drawsurf sort index, push MAX_SHADERS to 2^12
755        + commented out some debug stuff in java auth server
756        + added FAQ item with Linux & BSD patch to handle broadcast on multiple interfaces
757
7582002-8-15 Timothee Besset <ttimo@idsoftware.com>
759        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=534
760                fixing rcon being broken on NT/XP with > 23 days uptime (or so)
761        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=525
762                changed the rcon buffer size to avoid overflows and dropping part of the message
763
7642002-8-14 Timothee Besset <ttimo@idsoftware.com>
765        + hacked in some experimental win32 stuff to the cons files
766                (win32 recognition and pk3 installs .. very very experimental but I needed it for win32 dev)
767        +       https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=521
768                ui/ and q3_ui/ : added text auto wrapping in the connection screen drawing (server message)
769        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=531
770                removed the MPlayer stuff from the server browsers
771        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=505
772                enabled back the ignore if protocol is != (fixes Wolf servers showing in browser)
773
7742002-8-10 Timothee Besset <ttimo@idsoftware.com>
775  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=500
776    propagated IP banning fix from RTCW
777
7782002-8-08 Timothee Besset <ttimo@idsoftware.com>
779        + propagate additional sv_lanForceRate fix from RTCW
780
7812002-8-07 Timothee Besset <ttimo@idsoftware.com>
782        + added trap_FS_Seek
783
7842002-8-05 Timothee Besset <ttimo@idsoftware.com>
785  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=50
786    fixed the DI mouse init procedure
787               
7882002-8-05 Timothee Besset <ttimo@idsoftware.com>
789        + removed sv_allowanonymous, was dummy and polluting the serverinfo
790                (sv_allowanonymous was designed to flag wether server was public or not, but that's replaced by g_needpass)
791        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=514
792                sv_strictAuth (default 1): server variable to control wether strict CDKEY auth should be performed
793                        this is required if you want reliable cl_guid on the server
794                extended the getIpAuthorize (server->auth message) syntax
795                sending the fs_game at all times (default 'baseq3'), dummy sv_allowAnonymous 0, strict auth flag
796                NOTE: 1.31 server on baseq3 sends a getIpAuthorize packet like:
797                        processing packet: getIpAuthorize -1230824753 217.128.77.195  0
798                        the auth server will mistakenly read fs_game as '0'
799        + TAGGED the master / auth source as pre-1_32
800                will need to go back to this to comment out all my debugging crap
801
8022002-8-04 Timothee Besset <ttimo@idsoftware.com>
803        + cleaned master server stuff, client was prompting master.quake3arena.com,
804                server was sending heartbeats to master3.idsoftware.com
805                both point to 192.246.40.56, unified to master.quake3arena.com
806                the MPlayer master, master.quake3world.com doesn't exist anymore, switched it to master.quake3arena.com
807
8082002-8-02 Timothee Besset <ttimo@idsoftware.com>
809        + added auth server source, reorganized
810        + auth server name / master key optionally set on command line for master and auth servers
811        + auth and master config in build system
812        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=524
813                changed default GL driver from libGL.so to libGL.so.1
814                see LSB 1.2 spec: http://www.linuxbase.org/spec/refspecs/LSB_1.2.0/gLSB/libgl.html
815        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=480
816                applying the 'no cp command' experimental fix for beta phase
817        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=462
818                backported from RTCW, fix to packet fragmenting emission
819                FIXME: there is some verbose code that we have to take out in the final version (grep for #462)
820        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=475
821                backported from RTCW, don't get dropped if the server changes map while connecting (ignore outdated cp)
822        + PROTOCOL BUMPED TO 68
823
8242002-8-01 Timothee Besset <ttimo@idsoftware.com>
825        + Linux: dedicated build was not setting up signal handler like the full client does
826        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=522
827                SplashDamage bugfix, now clearing client gentity before GAME_INIT call (instead of after)
828        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=498
829                fixed NET_AdrToString to print the port as unsigned int (for ports > 1^^15, was showing negative)
830        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=501
831                maintain IP in userinfo sent to game
832        + checking in master server source     
833
8342002-7-31 Timothee Besset <ttimo@idsoftware.com>
835        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=513
836                https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=506
837                porting fix from RTCW codebase. client re-orders its pk3s to scan in the same order than the server
838                this eliminates several 'Invalid .PK3 file referenced' situations (caused by client not referencing the same thing as server)
839        + fixed border remnants in ta ui
840        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=517
841                ERR_DROP if PB client off / server on conflict when starting local server
842        + quickfix to q3 ui / punkbuster detect in server browser
843        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=458
844                code fix, no more taunt spam
845        + cons install of PB .so files
846        + correct MOD_KAMIKAZE and MOD_JUICED in TA games.log
847
8482002-7-29 Timothee Besset <ttimo@idsoftware.com>
849        + q3 ui: completed confirmation prompts and messages (added UI_ConfirmMenu_Style & UI_Message)
850        + ta ui: backported 'conditionalopen' from RTCW (conditionalopen <cvar> <menu1> <menu2>)
851        + ta ui: confirmation prompt for punkbuster enable/disable etc.
852        + added the win32 DLLs to pb/win32/
853       
8542002-7-28 Timothee Besset <ttimo@idsoftware.com>
855        + ta ui: sv_punkbuster in StartServer menu
856        + ta ui: added cl_punkbuster in server browser
857        + view filters are in a modal dialog
858        + new files: filter.menu menus.txt (pak3.pk3 updated)
859        + fix broken link in Linux FAQ 
860
8612002-7-27 Timothee Besset <ttimo@idsoftware.com>
862        + ta ui: PB display in the browser, in its additional tab, with sorting
863
8642002-7-26 Timothee Besset <ttimo@idsoftware.com>
865        + PB UI: for baseq3/ AND missionpack/
866                q3_ui: Punkbuster: Enable/Disable in server broswer (cl_punkbuster)
867                q3_ui: PB logo, PB Yes/No in browser (TODO: validate this to be working)
868                q3_ui: added sv_punkbuster toggle in start server menu
869        + automated building of the new PK3s, unix/Conscript-pk3
870
8712002-7-25 Timothee Besset <ttimo@idsoftware.com>
872        + added PB build scripts on Linux, fixed the Linux build
873
8742002-7-12 Timothee Besset <ttimo@idsoftware.com>
875  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=511
876    fixing re.SetColor crash for widescreen displays (q3dm11)
877    was calling to the renderer while not registered
878
8792002-6-19 Timothee Besset <ttimo@idsoftware.com>
880  + r_roundImagesDown 0 + map q3dm16 -> tr_image.c ResampleTexture crash
881          buffer overflow because of resample to 2048x..
882                xian_q3dm12_leftwall4fin.jpg 1152x384
883                bumped one buffer byte p1[1024] -> byte p1[2048], added a safe check
884
8852002-6-14 Timothee Besset <ttimo@idsoftware.com>
886  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=493
887          propagate a renderer fix from RTCW. fixes a one-frame visual glitch when mod code
888                registers a shader after drawsurfaces are generated but before the frame is rendered
889
8902002-6-12 Timothee Besset <ttimo@idsoftware.com>
891  + added cons and pcons to unix/, updated the build script
892
8932002-5-24 Timothee Besset <ttimo@idsoftware.com>
894        towards a new Q3 release?
895                some bug fixes require protocol change, or mod code/mod interface change to be fixed properly
896                this is a biz decision, dunno yet if we are going to want a new protocol (probably not)
897        -> have to create a branch for the 1.31b, i.e. backwards compatible with 1.31 'Stable-1_31'
898          and put the 1.32 specific / protocol changes on trunk
899        no telling what will go in SOS in the end .. probably 1.32     
900
9012002-5-5 Timothee Besset <ttimo@idsoftware.com>
902  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=491
903          adding a sv_lanForceRate (defaults to 1) to turn on/off server forcing rate of LAN clients
904                (only affects LAN dedicated clients - dedicated 1, default behaviour forces LAN clients to 99999 rate)
905        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=470
906          fixing potential overflows with cl_cdkey (propagated from RTCW)
907        + cons-based build system (imported from Wolf, was partly written for mod tools release already)
908          building with SMP on by default
909        + better #ifdef SMP handling ('disabled at compile time' message)       
910        + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=494   
911                Q_vsnprintf for vsprintf calls in the core
912                not putting this in game code as we'd need a vsnprintf implementation in bg_lib.c
913
9142002-4-5 Timothee Besset <ttimo@idsoftware.com>
915  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=462
916    taking out the fix which was found broken and incomplete 
917
9182002-8-4  Timothee Besset <ttimo@idsoftware.com>
919  + adding NO_MOUSEGRAB define (select in the Makefile)
920
9212002-2-4  Timothee Besset <ttimo@idsoftware.com>
922  + applying Gareth's SMP patch
923  + count number of CPUs (Sys_ProcessorCount in unix_shared.c), default r_smp appropriately
924  + bumping version to 1.32
925  + if XInitThreads fails, set r_smp to zero
926
9272002-28-2  Timothee Besset <ttimo@idsoftware.com>
928  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=462
929    send potential remaining fragmented packets before sending a gamestate
930   
9312002-26-2  Timothee Besset <ttimo@idsoftware.com>
932  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=455
933  removed old libMesaVoodooGL.so loading code
934  Voodoo cards should use XF4/DRI, that load code was outdated and confusing people with broken OpenGL
935
9362002-16-1  Timothee Besset <ttimo@idsoftware.com>
937  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=441
938  adding brandelf calls to the setup building process so that our binaries run on BSD
939
9402002-1-1  Timothee Besset <ttimo@idsoftware.com>
941  + updated FAQ with BSD info (bug #441)
942  + FAQ update on CLIENT_UNKNOWN_TO_AUTH
943  + FAQ update for proper strace usage
944
9452001-12-12  Timothee Besset <ttimo@idsoftware.com>
946  + Q3 1.31 point release
947    updating build_setup.sh to new pk3 files
948    (baseq3/pak7.pk3 missionpack/pak2.pk3)
949  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=395
950    adding quake3.xpm icon, and modified the setup accordingly to put symlinks
951  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=390
952    ignoring SIGTTIN SIGTTOU
953
9542001-06-12  Timothee Besset <ttimo@idsoftware.com>
955  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=402
956    bug with full scene
957
9582001-04-12  Timothee Besset <ttimo@idsoftware.com>
959  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=398
960    cg_bobup cheat protect
961  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=399
962    fixed Setup > System > Driver info crash
963  + checked in code/spank.sh script, perform checksuming 
964       
9652001-18-09  Timothee Besset <ttimo@idsoftware.com>
966  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=371
967    propagating sound code fixes from Wolf to Q3
968       
9692001-11-08  Timothee Besset <ttimo@idsoftware.com>
970  + setup script was still broken, damn shell expansion
971    the exit code for Q3 was always zero instead of $?
972    propagating the fix to Wolf
973
9742001-11-04  Timothee Besset <ttimo@idsoftware.com>
975  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=382
976    modified challenge code for motd to be truly random
977       
9782001-10-31  Timothee Besset <ttimo@idsoftware.com>
979  Moved updated q3asm and lcc source at the toplevel, MissionPack/q3asm
980  and MissionPack/lcc
981
9822001-10-29  Timothee Besset <ttimo@idsoftware.com>
983  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=381
984    build system is now functional
985
9862001-10-21  Timothee Besset <ttimo@idsoftware.com>
987  + updated Sys_LoadDll code on linux to search in the following order:
988    #1 current directory
989    #2 fs_homepath
990    #3 fs_basepath
991    this was needed to make mod developement easier
992
9932001-10-09  Timothee Besset <ttimo@idsoftware.com>
994  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=51
995    the code to buffer the redirection was in there but disabled? (Com_Printf)
996    enabled it back
997  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=52
998    connection issues / userinfo
999    client side fix, instead of sending 'connect <userinfo>' packet
1000    we now send 'connect "<userinfo>"'
1001
10022001-10-08  Timothee Besset <ttimo@idsoftware.com>
1003  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=371
1004    added a PROT_READ to the mmap call
1005    this was needed to go around a bug in glibc i586 i686, memset doing read access
1006    since the audio_fd is opened O_RDWD this is harmless to Q3
1007
10082001-10-07  Timothee Besset <ttimo@idsoftware.com>
1009  + updating from SOS
1010    S_WriteLinearBlastStereo16 C/asm is back in snd_mix.c (Graeme)
1011    r_showtris r_shownormal cheat protections
1012  + Sys_LoadDll changes:
1013    removing -debug search when loading native dlls
1014    changing the fatal aborts when not finding native from release only to debug only (was a misfeature)
1015    used to search in cd_path which is bogus, now searching in pwd if basepath fails
1016  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=275
1017    fixed r_fullbright not being cheat protected / was a CVAR_LATCHED|CVAR_CHEAT issue
1018
10192001-09-06  Timothee Besset <ttimo@idsoftware.com>
1020  + updated from SOS, some changes to qcommon/unzip.c (statics)
1021
10222001-08-27  Timothee Besset <ttimo@idsoftware.com>
1023  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=3
1024  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).
1025
10262001-08-22  Timothee Besset <ttimo@idsoftware.com>
1027  + https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=86
1028  fixed sound bug (with Graeme hints)
1029
10302001-08-20  Timothee Besset <ttimo@idsoftware.com>
1031  + made sure Sys_Printf doesn't get into an endless loop if logfile is on
1032    fixed qconsole.log issues, +set logfile 1 +set fs_debug 1 was crashing (any OS)
1033    fixed logfile 1 / ttycon 1 issue, didn't exit properly (same endless looping)
1034    also fixes an issue reported by q3f team
1035  + changed rcon commands from Com_DPrintf to Com_Printf so that they show up in the console
1036  (with IP information)
1037
10382001-08-19  Timothee Besset <ttimo@idsoftware.com>
1039  + fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=91
1040  (autodownload toggle in q3 ui)
1041  + fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=76
1042  g_password issue
1043  + fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=93
1044  cheat protecting r_lodCurveError
1045  + wontfix https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=92
1046
10472001-08-18  Timothee Besset <ttimo@idsoftware.com>
1048  + more fixes to the 7-button mouse code (linux only)
1049  + updated faq about gamma slider
1050  + added "servers don't show up in ingame browser" to faq
1051  + added Alt+Enter toggle for fullscreen/windowed (linux)
1052
10532001-08-16  Timothee Besset <ttimo@idsoftware.com>
1054  reconfiguring CVS repository to give access to Gareth
1055  + testin gareth's access
1056
10572001-08-03  Timothee Besset <ttimo@idsoftware.com>
1058  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=85
1059  fixes in the setup code for older bash versions
1060 
10612001-08-02  Timothee Besset <ttimo@idsoftware.com>
1062  * commented out assembly implementation of S_WriteLinearBlastStereo16, using modified C implementation from Zaphod
1063    need to check performance: https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=88
1064  * finished const declarations in CG_Trace calls, was needed in pmove_t declaration and some other functions
1065    cgame/cg_local.h : CG_trace trap_CM_BoxTrace
1066    game/bg_public.h : using const in pmove_t trace functions prototypes
1067    (fixes gcc warnings: assignment from incompatible pointer type)
1068
10692001-07-26  Timothee Besset <ttimo@idsoftware.com>
1070  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=78
1071  mapped K_MOUSE4 K_MOUSE5
1072
10732001-07-23  Timothee Besset <ttimo@idsoftware.com>
1074  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=5
1075  more fixes, handling meta characters and various kinds of backspace
1076
10772001-07-22  Timothee Besset <ttimo@idsoftware.com>
1078  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=5
1079  after testing feedback, fixed more stuff:
1080    better backspace, works with putty and potentially more terminals
1081  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=51
1082  band aid fix to rcon status, incresed MAX_PUSHED_EVENTS from 256 to 1024
1083  (adds 28kb of mem requirements)
1084
10852001-07-21  Timothee Besset <ttimo@idsoftware.com>
1086  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=2
1087  using XF86 Gamma extension to set the gamma in game from the menus
1088  (previous behaviour was to set /r_gamma and restart, renderer relying on s_gammatable)
1089  restoring initial gamma on GLimp_ShutDown
1090
10912001-07-19  Timothee Besset <ttimo@idsoftware.com>
1092  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=5
1093  first usable version of dedicated console
1094  added history and completion functionality
1095  ready for some testing
1096  still some TODOs and FIXMEs:
1097    keep the currently edited line when going back from history exploration
1098    edit the current line with cursor, insert mode etc.
1099
11002001-07-18  Timothee Besset <ttimo@idsoftware.com>
1101  * starting TAB completion and history for the dedicated server (tty console)
1102  removed Sys_ConsoleOutput (unused)
1103  removing bogus nostdout variable
1104  cleanup of a big chunk of code that Bernd commented out and scheduled for deletion
1105  moved completion code from client/cl_keys.c stuff into qcommon/common.c, Field_CompleteCommand(field_t*)
1106
11072001-07-13  Timothee Besset <ttimo@idsoftware.com>
1108  * fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=8
1109  screenshots overwrites
1110  * fixed https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=31
1111  DOUBLE SIGNAL FAULT
1112
11132001-07-11  Timothee Besset <ttimo@idsoftware.com>
1114  * fix for french keybards / console toggle / bound to XK_twosuperior
1115
11162001-07-10  Timothee Besset <ttimo@idsoftware.com>
1117  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=19
1118  cleanup of the keyboard code, adding com_developer message in case XLookupString would fail
1119
11202001-07-10  Timothee Besset <ttimo@idsoftware.com>
1121  * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=33
1122  using our custom handlers for X errors, should make things more robust
1123  (X docs say some X errors are not fatal, but the default X handler exits the app anyway)
1124
11252001-07-08  Timothee Besset <ttimo@idsoftware.com>
1126        * https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=19
1127        keyboard state issues, fixed the sticking with ctrl key (thks relnev)
1128
11292001-07-07  Timothee Besset <ttimo@idsoftware.com>
1130        * closing https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=13
1131        the fixes to bug #9 solved this one too
1132        * checking in to SOS
1133
11342001-07-05  Timothee Besset <ttimo@idsoftware.com>
1135        * work on https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=9
1136        filesystem code changes:
1137        updated the documentation in files.c to the current system
1138        added correct fs_homepath fs_basepath fs_cdpath scanning to FS_SV_FOpenFileRead
1139          (fixes description.txt not found, and probably a few other linux issues)
1140
11412001-06-29  Timothee Besset <ttimo@idsoftware.com>
1142        * fixed setup issues (graphical/console)
1143        https://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=6
1144
11452001-06-26  Timothee Besset <ttimo@idsoftware.com>
1146        * bug tracker is online at https://zerowing.idsoftware.com/bugzilla
1147          authentication, use login: bugs password: b00gies
1148          for now, using it as the linux bug tracker, possible use for more OSes and programs if anyone is interested.
1149        * tweaked the graphical setup to send to bugs@idsoftware.com on errors instead of support@lokigames.com
1150         
11512001-06-19  Timothee Besset <ttimo@idsoftware.com>
1152        * fixed generated launch script /usr/local/bin/quake3, exit $* should be exit
1153
11542001-06-18  Timothee Besset <ttimo@idsoftware.com>
1155        * rebuilt 1.29f setups, released as 1.29f-beta1 'Q3 1.29f linux-i386 Jun 19 2001'
1156
11572001-06-10  Timothee Besset <ttimo@idsoftware.com>
1158        * rebuilt against PR source, packaged 1.29b setups
1159
11602001-05-25  Timothee Besset <ttimo@idsoftware.com>
1161        * graphical setup, based on Loki's setup tool (GPL)
1162
11632001-05-22  Timothee Besset <ttimo@idsoftware.com>
1164        * changed fs_basepath to fs_homepath, according to Graeme's changes (probably missed this change?)
1165          this fixes the q3key prompting at each game startup
1166
11672001-05-20  Timothee Besset <ttimo@idsoftware.com>
1168        * rebuilding 1.28b, various fixes on linux build:
1169          - SetProgramPath was renamed to Sys_SetDefaultCDPath in unix_shared.c
1170            updated unix_main.c accordingly
1171          - some prototypes in qgl.h are guarded by #ifndef GL_VERSION_1_2 (ARB extentions)
1172            those prototypes are needed by linux_glimp for importing functions and casting, added a #ifdef __linux__
1173            (not a clean solution)
1174          - game/q_shared.h
1175            little endian / big endian functions have been added
1176            gcc generates warnings about functions being unused .. inlined them
1177           - cgame/cg_marks.c
1178             // TTimo
1179             // gcc warning: might be used uninitialized
1180             float sInc = 0.0;
1181             float s = 0.0;
1182
11832001-05-15  Timothee Besset <ttimo@idsoftware.com>
1184        * fixes to linux Makefile for bspc 2.1h
1185        * various updates to 1.28b on linux
1186
11872001-05-09  Timothee Besset <ttimo@idsoftware.com>
1188
1189        * R. Duffy reverted game/bg_pmove.c PM_CheckDuck, was a merging screup on my side
1190        * updated setup to 1.27z, removed the .so from the setup distribution (they were in 1.27g because of issues)
1191          FIXME: gotta get pk3's first
1192
11932001-05-04  Timothee Besset <ttimo@idsoftware.com>
1194
1195        * fixes to gcc, building RC for 1.27s
1196
11972001-05-01  Timothee Besset <ttimo@idsoftware.com>
1198
1199        * added qcommon/huffman.c to the Makefile
1200        * gcc -Wall:
1201        commenting out
1202          CL_Netchan_Encode CL_Netchan_Decode (cl_net_chan.c)
1203          Netchan_ScramblePacket Netchan_UnScramblePacket (net_chan.c)
1204          SV_Netchan_Encode SV_Netchan_Decode (sv_net_chan.c)
1205
12062001-04-26  Timothee Besset <ttimo@idsoftware.com>
1207
1208        * fixed dedicated server crash when entering the VM_COMPILED qagame on a mod (some statics lacked initialization)
1209
12102001-04-25  Timothee Besset <ttimo@idsoftware.com>
1211
1212        * added $(Q3POBJ) to clean target (cleanup of platform-dependent objects)
1213        * more make clean improvements
1214
12152001-04-23  Timothee Besset <ttimo@idsoftware.com>
1216
1217        * cleanup the mod selection code, remove duplicates
1218        * some issues with release builds, my main developement box doesn't build stable binaries with release settings
1219          removing -fomit-frame-pointer seems to fix (there's probably a performance hit)
1220          see OMIT-FRAME-POINTER.txt
1221
12222001-04-13  Timothee Besset <ttimo@idsoftware.com>
1223
1224        * checked in a first set of merged files
1225
12262001-04-06  Timothee Besset <ttimo@idsoftware.com>
1227
1228        * merged back the core linux parts to make 1.27g linux build from the Source Safe tree again
1229
12302001-02-27  Bernd Kreimeier  <bk@lokigames.com>
1231
1232        * CVS: tag with changes as of today
1233          cvs tag id1-27j-loki01027
1234
1235        * code/qcommon/msg.c: numFields loop (SOS).
1236        * code/qcommon/files.c: ue Q_stricmp (SOS uses stricmp, was strcmp).
1237        * code/game/q_shared.h (Q3_VERSION): 1.27j. Also
1238        MAX_STRING_TOKENS upped from 256 to 1024 (SOS).
1239
1240        * code/server/sv_snapshot.c (SV_AddEntitiesVisibleFromPoint): see below.
1241        * code/game/g_public.h (SVF_NOTSINGLECLIENT): added (SOS).
1242
1243        * code/server/sv_ccmds.c: see below.
1244        * code/game/g_main.c: g_gametype cvar now userinfo (SOS).
1245
1246        * code/game/g_active.c (SendPendingPredictableEvents): new (SOS).
1247        * code/game/bg_misc.c: new SOS (sos010227)
1248
1249        * SOS: new update sos010227.
1250       
12512001-02-22  Bernd Kreimeier  <bk@lokigames.com>
1252
1253        * CVS: now in sync with last SOS and cleanup up
1254          cvs tag id1-27i-loki01022
1255       
1256        * code/ui/ui_shared.c: below.
1257        * code/ui/ui_main.c: leftover code!
1258        * code/server/sv_world.c: below.
1259        * code/server/sv_snapshot.c: below.
1260        * code/server/sv_init.c: below.
1261        * code/server/sv_game.c: below.
1262        * code/server/sv_client.c: below.
1263        * code/server/sv_ccmds.c: below.
1264        * code/server/sv_bot.c: below.
1265        * code/server/server.h: below.
1266        * code/renderer/tr_surface.c: below.
1267        * code/renderer/tr_shader.c: changed assert to early return.
1268        * code/renderer/tr_shade_calc.c: below.
1269        * code/renderer/tr_shade.c: below.
1270        * code/renderer/tr_scene.c: below.
1271        * code/renderer/tr_mesh.c: below.
1272        * code/renderer/tr_local.h: below.
1273        * code/qcommon/vm_x86.c: cleanup.
1274        * code/qcommon/vm.c: below.
1275        * code/qcommon/unzip.c: below.
1276        * code/qcommon/qcommon.h: below.
1277        * code/qcommon/files.c: below.
1278        * code/qcommon/cvar.c: cleanup.
1279
12802001-02-21  Bernd Kreimeier  <bk@lokigames.com>
1281
1282        * code/qcommon/common.c: cleanup.
1283        * code/qcommon/cm_trace.c: cleanup.
1284        * code/qcommon/cm_patch.c: cleanup.
1285        * code/qcommon/cm_public.h: cleanup.
1286        * code/game/q_shared.h: cleanup.
1287        * code/game/q_shared.c: cleanup.
1288        * code/game/q_math.c: cleanup.
1289        * code/game/g_syscalls.asm: changed (once more) floor,ceil etc.
1290        * code/game/g_spawn.c: cleanup.
1291        * code/game/g_session.c: cleanup.
1292        * code/game/g_cmds.c: cleanup.
1293        * code/game/g_client.c: cleanup.
1294        * code/game/g_arenas.c: cleanup.
1295        * code/game/bg_slidemove.c: cleanup.
1296        * code/game/bg_pmove.c (PM_CheckDuck): old call to trace?
1297        * code/game/bg_misc.c: cleanup.
1298        * code/game/be_aas.h: dead code.
1299        * code/game/ai_dmq3.c: cleanup. One clear/copy switched?
1300        * code/game/ai_dmnet.c: more //*/. Why oh why not DEBUG....
1301
1302        * code/client/snd_mix.c: below.
1303        * code/client/snd_dma.c: below.
1304        * code/client/keys.h: cleanup.
1305        TODO: #error in q3_ui/keycodes.h ?
1306
1307        * code/client/client.h: cleanup.
1308        * code/client/cl_main.c: misplaced bracket. Cleanup.
1309        * code/client/cl_keys.c: below.
1310        * code/client/cl_cin.c: below.
1311        * code/client/cl_cgame.c: cleanup.
1312        TODO: define assert for Win32 or guard my assertions.
1313
1314        * code/cgame/cg_syscalls.c: below.
1315        * code/cgame/cg_servercmds.c: below.
1316        * code/cgame/cg_players.c: cleanup.
1317
1318        * code/cgame/cg_newdraw.c: remember to diff against cg_newDraw.c
1319        in SOS (mixed case).
1320        TODO: get id to use cg_newdraw.c, and to remove cg_newDraw.c/cpp.
1321
1322        * code/cgame/cg_main.c: below.
1323        * code/cgame/cg_local.h: below.
1324        * code/cgame/cg_event.c: below.
1325        * code/cgame/cg_drawtools.c: below.
1326        * code/cgame/cg_draw.c: cleanup.
1327        * code/cgame/cg_consolecmds.c: dead code.
1328        * code/bspc/qbsp.h: below.
1329        * code/bspc/l_poly.c: below.
1330        * code/bspc/l_math.c: cleanup.
1331        * code/bspc/bspc.c: cleanup.
1332        * code/bspc/be_aas_bspc.c: cleanup.
1333        * code/bspc/aas_map.c: kept comments - merge loss at their end?
1334        * code/bspc/aas_file.c: cleanup.
1335
1336        * code/botlib/be_interface.c: this file is plain impossible. There
1337        are layers of code made dead with /* */ and the resurrected by
1338        //* or // /* or variations of this. I reverted to exact mirror
1339        image of SOS to be sure - short of removing it's too easy to mistake
1340        live code for dead one.
1341        Later: have to change 5 occurences to avoid gcc complaints about
1342        nested comment tokens.
1343        TODO: somebody please get rid of the cruft in here.
1344
1345        * code/botlib/be_ai_move.c: redundant typedef.
1346        * code/botlib/be_ai_chat.c: assertions on signed string index.
1347        Note: this is not in my ChangeLog - ouch.
1348        TODO: use  gcc -fsigned-char on all platsforms to enforce Win32
1349        TODO  behavior (PPC has a default unsigned char, Intel has not).
1350        * code/botlib/be_aas_sample.c (AAS_TraceClientBBox): one code block
1351        was placed in different location, and one FPE hack not used. I would
1352        expect that divide by zero will still occur here.
1353
1354        * code/botlib/be_aas_reach.c: below.
1355        * code/botlib/be_aas_cluster.c: cleanup.
1356        * CVS: the last tag (below) marks the version with a lot of history
1357        and additional comments. I am now bringing the codebase in sync with
1358        SOS as of yesterday, cleaning out comments, dead code and other
1359        differences to minimize a diff - in a valiant if futile attempt to
1360        roll back changes into the id codebase.
1361        Note: I ignore the $SOS$ - these are unfortunate but will change
1362        in the same awkward way at their end.
1363        Note: I stick to #if 0 instead of C comments around dead code id
1364        kept (nested comments issue). The commentary is changed to sosYYMMDD
1365        and includes the token DEAD.
1366
13672001-02-20  Bernd Kreimeier  <bk@lokigames.com>
1368
1369        * CVS: update, then tag current version as
1370         cvs tag id1-27i-loki010219
1371
1372        * SOS: patched up to sos010219.
1373
1374        * code/qcommon/cm_trace.c (CM_Trace): fabs on sphere offsets (SOS).
1375        * code/game/bg_slidemove.c (PM_StepSlideMove): stepSize vs. STEPSIZE (SOS).
1376        * code/game/bg_pmove.c (PM_CheckDuck): fix in stand up check (SOS).
1377        * code/bspc/bspc.c (main): -capsule (SOS).
1378        * code/bspc/qbsp.h: below (SOS).
1379        * code/bspc/be_aas_bspc.c (capsule_collision): added (SOS).
1380        * code/bspc/aas_map.c (CapsuleOriginDistanceFromPlane): added and used (SOS).
1381        * code/bspc/aas_file.c (AAS_WriteAASFile): removed diagnostics recently
1382        added. No matter how long you wait, they'll always get you ;-).
1383        * code/botlib/be_aas_cluster.c: enabled LogWrites, different flood (SOS).
1384
1385        * SOS: patching up to snapshot sos010219.
1386        Note: For brevity, I use as marker sosYYMMDD now instead of bkYYMMDD, to
1387        distinguish from changes not in SOS.
1388
1389        *  CVS: tagged current version before patching up with SOS.
1390         cvs tag id1-27i-loki010216-bsd
1391
13922001-02-16  Bernd Kreimeier  <bk@lokigames.com>
1393
1394        * code/server/sv_init.c: DLL_ONLY sets sv_pure to 0 and ROM.
1395        TODO: determine good sv_pure policy for DLL-only servers.
1396
1397        * code/renderer/tr_shade_calc.c: my_ftol implementation (BSD).
1398
1399        * code/unix/Makefile: FreeBSD sections.
1400        TODO: include target-specific Make-freebsd etc.,
1401        include a Make-local not in CVS for build preferences,
1402        and generally clean up this mess.
1403        * code/unix/unix_glw.h: guard #error
1404        * code/unix/linux_snd.c: soundcard.h location (BSD).
1405        * code/unix/linux_glimp.c: guard system headers.
1406        Later: added Joystick stubs.
1407        Note: linux_ etc. prefixes start to loose meaning as we
1408        re-use most of this on UNIXes anyway. I didn't use Raf's
1409        freebsd_joystick.c but instead put generic stubs here.
1410        TODO: introduce generic -DNO_JOYSTICK flag.
1411        * code/renderer/tr_local.h: my_ftol guard.
1412        * code/renderer/qgl.h: FreeBSD guards.
1413        * code/qcommon/vm_x86.c: sys/types include on FreeBSD.
1414        * code/qcommon/md4.c: Win32 pragma guard.
1415        * code/qcommon/common.c: Com_Memcpy/Memset external.
1416        * code/game/q_shared.h: added FreeBSD defines.
1417        * code/game/q_math.c (BoxOnPlaneSide): FreeBSD conditional.
1418        TODO: check whether we have/need the assembly version anyway.
1419        * code/client/snd_mix.c: use C fallback on FreeBSD.
1420        Note: all of the above changes from the original port by Rafael Barrero.
1421
1422        * CVS: tagged current version before merging FreeBSD related changes.
1423         cvs tag id1-27i-loki010215-ppc
1424
14252001-02-15  Bernd Kreimeier  <bk@lokigames.com>
1426
1427        * code/unix/Makefile: BSD related changes.
1428        * code/cgame/cg_draw.c: hacked phone jack rendering check for Debug.
1429        TODO: finish Debug, fix CG_DrawDisconnect !!!
1430
1431        * code/unix/vm_x86.c: error on compile attempts. Fight redundancy!
1432        * code/qcommon/vm_x86.c (VM_CallCompiled): dummy for linkage on PPC.
1433        Note: DLL_ONLY is the global Makefile option for DLL-only builts.
1434        Currently only executed on Linux.
1435        * code/unix/unix_main.c: *ppc postfix for DLLs. Ignored the changes
1436        to redundant code (have to remove the unused Un/LoadDll/API calls).
1437        * code/server/sv_game.c (VMA): changed macro (see below). PPC.
1438        * code/qcommon/vm.c (VM_DllSyscall): see lengthy commentary by Ryan.
1439        The existing VM code makes certain assumptions about the layout of
1440        varargs on the stack, which fall apart with call conventions that
1441        don't even put all parameters on the stack (gcc on PPC, register-rich).
1442        Using a dedicated memory area as our own stack. This should actually
1443        be the default behavior.
1444        Later: make vm_* cvars INIT/ROM for DLL_ONLY target.
1445
1446        * code/qcommon/common.c: PPC change (from Ryan Gordon).
1447
14482001-02-07  Bernd Kreimeier  <bk@lokigames.com>
1449
1450        * code/unix/unix_main.c: disabled FPE for debug for the time
1451        being (that is, until I can figure out
1452          Program received signal SIGFPE, Arithmetic exception.
1453          RB_BeginSurface (shader=0x449572e0, fogNum=0) at ..//renderer/tr_shade.c:307
1454          307 tess.shaderTime = backEnd.refdef.floatTime - tess.shader->timeOffset;
1455        without any NaN's involved.
1456        TODO: unmask other FPE's selectively (see Mike's Tribes2, no getenv though).
1457
14582001-02-06  Bernd Kreimeier  <bk@lokigames.com>
1459
1460        * SOS: up to date with todays snapshot.
1461        Note: got the date wrong, comment used was bk010205. Duh.
1462
1463        * code/server/sv_snapshot.c (SV_UpdateServerCommandsToClient): below.
1464        * code/server/sv_main.c (SV_ReplacePendingServerCommands): new (SOS).
1465        * code/server/server.h: reliableSent (SOS).
1466
1467        * code/renderer/tr_shade.c (ProjectDlightTexture): see below.
1468        * code/renderer/tr_scene.c: see below.
1469        * code/renderer/tr_public.h: see below (SOS).
1470        * code/renderer/tr_local.h: additive light support (SOS).
1471
1472        * code/qcommon/cm_trace.c (CM_Trace): new tw.sphere.use branch (SOS).
1473
1474        * code/game/g_spawn.c: notta, notq3a entities (SOS).
1475        * code/game/ai_dmq3.c: MAX_ACTIVATEAREAS search (SOS).
1476       
1477        * code/client/cl_cgame.c: see below.
1478        * code/cgame/cg_syscalls.c (trap_R_AddAdditiveLightToScene): below.
1479        * code/cgame/cg_syscalls.asm: see below (trap_R_AddAdditiveLightToScene).
1480        * code/cgame/cg_public.h: CG_R_ADDADDITIVELIGHTTOSCENE (SOS).
1481       
1482        * code/bspc/l_math.c: new VectorLengthSquared, removed rotate/matrix (SOS).
1483        * code/bspc/bspc.c (BSPC_VERSION): was 2.1e, now?
1484        * code/bspc/be_aas_bspc.c (BotImport_Trace): CM_BoxTrace sig. (SOS).
1485        * code/bspc/aas_file.c (AAS_WriteAASFile): SOS.
1486        * code/botlib/be_aas_sample.c (AAS_DeAllocAASLink): SOS.
1487
1488        * code/unix/unix_main.c (Sys_LoadDll): do not load from installdir
1489        in NDEBUG (confusing relic from old Makefile). Postfix -debug.so
1490        for debug binaries to let both builds coexist.
1491
1492        * code/unix/Makefile: updated install targets and VERSION.
1493
1494        * Win32: build from SOS snapshot.
1495        Note: Unix CR/LF in *.dsw/*.dsp fucks up MSVC++.
1496
14972001-02-02  Bernd Kreimeier  <bk@lokigames.com>
1498
1499        * SOS: all changes up to today.
1500
1501        * code/server/sv_init.c (SV_TouchCGame): added. Also memset
1502        on reallocated client data (SOS).
1503        * code/qcommon/qcommon.h: see below.
1504        * code/qcommon/cvar.c (Cvar_SetLatched): new (SOS).
1505        * code/qcommon/cm_trace.c: more sphere test fixes (SOS).
1506        Note: SOS encryption key expired and updated by MrElusive.
1507
1508        * code/qcommon/cm_patch.c (CM_TraceThroughPatchCollide):
1509        fix from MrElusive, fall through curved corner floors (q3dm17).
1510        Later: also in SOS (so is shadow FPE fix).
1511
1512        * Win32: can't get an unadulterated SOS snapshot to build.
1513        First, fix CR/LF back again (Linux client converts all).
1514         find . -name '*.ds*' -print
1515         alias dos2unix='recode ibmpc..lat1'
1516         alias unix2dos='recode lat1..ibmpc'
1517        Next, find a *.dws that works? Nope, no cigar.
1518       
15192001-02-01  Bernd Kreimeier  <bk@lokigames.com>
1520
1521        * Win32: have to update dsp/dsw/etc. files in CVS, too.
1522
1523        * CVS: tag previous version before update
1524         cvs tag id1-27h-loki010131-beta3
1525
1526        * code/game/q_math.c (Q_rsqrt): guard, #ifndef __linux__
1527        for assert (for Win32 build).
1528        TODO: assert replacement for Win32?
1529        * code/q3_ui/ui_qmenu.c: see below.
1530        * code/q3_ui/ui_players.c: see below.
1531        * code/q3_ui/ui_controls2.c: float const with f postfix
1532        Note: Win32 C4305 warning. Somebody at id has been doing
1533        a lot of these recently as well...
1534
1535        * code/cgame/cg_players.c (CG_PlayerShadow): applied fix by
1536        MrElusive, removed FPE hack (player shadows on zero mormals).
1537        Prolly in this evenings' CVS.
1538
1539        * code/server/sv_game.c: new signatures (capsule again).
1540        * code/server/server.h: new signatures (SV_Trace,ClipToEntity).
1541        * code/server/sv_bot.c: new signatures (above).
1542        * code/qcommon/cm_trace.c: a truckload of changes. Math
1543        code added before moved upwards. Capsule traces added all
1544        over the place, old box traces moved in conditional
1545        branches, functions renamed and wrapped. Eliminated some
1546        of the previous' versions deadcode to keep diffs smaller.
1547        TODO: once a point release is out and reasonably bug
1548        TODO  free, remove // bkYYMMDD annotations where SOS related.
1549
1550        * code/qcommon/cm_public.h: new signatures in prototypes.
1551        * code/qcommon/cm_patch.c: dead code re-enabled, new
1552        sections (conditional branches for spheres) added to
1553        several trace functions.
1554        * code/qcommon/cm_local.h (CAPSULE_MODEL_HANDLE): added.
1555        * code/qcommon/cm_load.c (CM_TempBoxModel): capsules.
1556
1557        * code/game/q_shared.h (Q3_VERSION): 1.27i now (new QVM traps).
1558
1559        * code/game/g_syscalls.asm: see below.
1560        * code/game/g_public.h (SVF_CAPSULE): added (SOS). Also
1561        G_ entry poiints for capsule traces.
1562
1563        * code/client/cl_cgame.c: see below.
1564        * code/cgame/cg_syscalls.c: see below.
1565        * code/cgame/cg_syscalls.asm: see below.
1566        * code/cgame/cg_public.h: new capsule trace code (SOS).
1567
15682001-01-31  Bernd Kreimeier  <bk@lokigames.com>
1569
1570        * Win32: test compile (WinCVS, MSVC++). Have to guard isnan.
1571        Note: too much shit going on....
1572
15732001-01-30  Bernd Kreimeier  <bk@lokigames.com>
1574
1575        * CVS: update for patching up (pre-1.27i).
1576
1577        * SOS: new changes (new collision detection primitives).
1578        Now Version 1.27i.
1579        TODO: start testing using DLL's (QVM code is out of sync).
1580
15812001-01-25  Bernd Kreimeier  <bk@lokigames.com>
1582
1583        * SOS: caught up till today (below).
1584        * code/qcommon/cm_trace.c: new functions added: RotatePoint,   
1585        TransposeMatrix, CreateRotationMatrix (SOS).
1586        (CM_TransformedBoxTrace): new rotation code used here.
1587
1588        * code/q3_ui/ui_demo2.c: sizeof(extension). SOS.
1589        * code/game/g_cmds.c (G_SayTo): CON_CONNECTED.
1590        * code/game/ai_main.c: HOOK added (SOS).
1591        * code/botlib/be_aas_move.c (AAS_HorizontalVelocityForJump):
1592        correct fix for FPE occuring (SOS).
1593        * code/game/ai_dmq3.c: initmove.viewoffset (SOS).
1594
1595        * code/game/q_math.c: guard asser/isnan with Q3_VM (q3asm).
1596        TODO: define Com_Error based assert macro? NDEBUG?
1597
15982001-01-24  Bernd Kreimeier  <bk@lokigames.com>
1599
1600        * code/server/sv_ccmds.c (SV_MapRestart_f): some debug.
1601        TODO: map_restart 0 disconnects external client in 1.27h?
1602
1603        * code/renderer/tr_image.c (LoadTGA): added some commentary
1604        and dead code based on fixes from GtkRadiant (Leonardo found
1605        flipped TGA's).
1606
16072001-01-23  Bernd Kreimeier  <bk@lokigames.com>
1608
1609        * BETA3: finished testing, ready to upload to id FTP.
1610        Later: neither the FreeBSD beta not the Linux Beta3
1611        uloaded. Beta2 not yet released, and clients get
1612        disconnected with Beta2 and Beta3 on SV_MapRestart_f.
1613
16142001-01-22  Bernd Kreimeier  <bk@lokigames.com>
1615
1616        * code/client/cl_main.c (CL_InitDownloads): undid yesterday (SOS).
1617        * code/botlib/be_aas_sample.c (AAS_DeAllocAASLink): guard print (SOS).
1618        * code/server/sv_client.c (SV_DirectConnect): VM_Call disconnect (SOS).
1619        * code/qcommon/files.c (FS_ListFilteredFiles): trailing slashes (SOS).
1620        * code/game/g_cmds.c (SetTeam): print change (SOS).
1621        Note: the above plus VectorClear(v1) (below) are todays SOS changes.
1622
1623        * code/cgame/cg_players.c (CG_PlayerShadow): ignore bogus
1624        (all zero) planes. This caused FPE in ProjectPointOnPlane.
1625        TODO: why does trace return zero normal planes?
1626        Note: gdb seems totally at loss with vec3_t arrays....
1627
1628        * code/botlib/be_aas_sample.c (AAS_TraceAreas): FPE.
1629        NaN in uninitialized v1 that wasn't supposed to be referred
1630        to in this branch.
1631
1632        * code/botlib/be_aas_move.c (AAS_HorizontalVelocityForJump):
1633        FPE divide by zero (zero zvel, zero t) for jump estimates.
1634
1635        * code/client/cl_main.c (CL_Frame):1856. uivm==NULL on
1636        client after server crashed.
1637        TODO: check that uivm always non-NULL for client.
1638        TODO: do setenv(FX_NO_SIGNALS) to avoid exit errors...
1639
1640        * code/unix/linux_glimp.c (GLW_SetMode): added "Indirect"
1641        Mesa token to software rendering detection. Reworded error
1642        output and added drivername.
1643        TODO: measure framerate instead?
1644
16452001-01-21  Bernd Kreimeier  <bk@lokigames.com>
1646
1647        * SOS: caught up with changes up until today.
1648
1649        * code/server/sv_init.c (SV_SetConfigstring): gentity != NULL
1650
1651        * code/server/sv_client.c: connect to "{all bots" server.
1652        * code/renderer/tr_init.c: JPEG extension on  screenshots
1653        * code/qcommon/files.c: modes based on mods, fs_basegame
1654
1655        * code/q3_ui/ui_demo2.c: dm3 extension (demo names, protocol).
1656
1657        * code/game/g_client.c: savedEvents[] removed.
1658        * code/game/bg_misc.c: event sequence fixes.
1659        * code/client/snd_dma.c (S_StopBackgroundTrack): different use.
1660        * code/client/cl_main.c: demo file handling changed (names).
1661        Also CL_InitDownloads: always next download.
1662
1663        * code/cgame/cg_servercmds.c: cg_thirdPerson.
1664        * code/cgame/cg_weapons.c: see below.
1665        Also CG_ShotgunPattern: different call (seed parameter).
1666
1667        * code/cgame/cg_main.c: see below.
1668        * code/cgame/cg_local.h: new cg_noProjectileTrail Cvar.
1669        * code/cgame/cg_effects.c (CG_BubbleTrail): early out (above).
1670
1671        * code/bspc/l_poly.c (BOGUS_RANGE): increased.
1672        * code/bspc/bspc.c: applied patch up to "2.1e"
1673
16742001-01-18  Bernd Kreimeier  <bk@lokigames.com>
1675
1676        * code/ui/ui_main.c: below.
1677        * code/q3_ui/ui_main.c: UI_HASUNIQUECDKEY comment.
1678        Note: mods have to return qfalse. See Bug #2890 in Fenris.
1679
16802001-01-17  Bernd Kreimeier  <bk@lokigames.com>
1681       
1682        * BETA2: finished testing, uploaded to id's FTP for release.
1683       
16842001-01-16  Bernd Kreimeier  <bk@lokigames.com>
1685
1686        * CVS: checking in preparation for Beta2.
1687         cvs tag id1-27h-loki010116-beta2
1688
1689        * SOS: new bspc "2.1e". No change on 1.27h.
1690
1691        * TEST: patch-up seems to work fine. No new files have been added
1692        to the linkage (i.e. the ft2/ files now added), so we might not be
1693        feature complete.
1694
1695        * code/game/g_active.c (ClientThink_real): id MISSIONPACK
1696        conditional in addition to the ones I added earlier.
1697        * code/qcommon/files.c: REJECT. Linux hack for userdir threw it off.
1698        * code/qcommon/unzip.c: REJECT. CRC-32 section removed.
1699        Later: unused tempB
1700
1701        * code/q3_ui/ui_syscalls.asm: REJECT. Start/StopBackgroundTrack.
1702        * code/ui/ui_syscalls.asm: REJECT. syscalls ids from 1.27h
1703        as of SOS (floor/ceil - will this ever get straightened out)
1704        * code/win32/win_input.c: REJECT. g_pMouse edit.
1705        * ui/menus.txt: REJECT. Replaced with 1.27h version.
1706        Note: some more due to $SOS$.
1707       
1708        * ui/: new scripts.
1709        cinematicmenu.menu, demo_quit.menu, ingame.txt, serverinfo_old.menu
1710        vid_restart.menu
1711
1712        * code/ft2/ttconfig.h: below.
1713        * code/ft2/sfconfig.h: below.
1714        * code/ft2/pstables.h: below.
1715        * code/ft2/psnames.c: below.
1716        * code/ft2/psdriver.h/c: below.
1717        * code/ft2/keys.h: below.
1718        * code/ft2/ftbbox.c: new in 1.27h
1719       
1720        * code/cgame/cg_newdraw.c: beware: cg_newDraw.c gets lost in diff easily.
1721
1722        * code/cgame/cg_rankings.c: file removed from SOS.
1723       
17242001-01-15  Bernd Kreimeier  <bk@lokigames.com>
1725
1726        * Patch-up: patching up from RC4 to 1.27h current.
1727        No changes since 010112 snapshot.
1728        ln -s sos010112/ work
1729        diff -urbB sos001204-rc4/ work > work.diff
1730        ln -s cvs-1.27g/ work
1731        patch -p0 < work.diff  > work.patch
1732        find cvs1.27g/ -name '*.rej' -print
1733
1734        * SOS: adding the remaining SOS snapshots to CVS.
1735         cvs import Quake3_sos sos001211 pr1-27g-win32-001211
1736        Note: at this point id warned about repository corruption.
1737        Watch out for the syscall stuff in particular.
1738         cvs import Quake3_sos sos010104 pr1-27g-win32-010104
1739         cvs import Quake3_sos sos010108 pr1-27h-win32-010108
1740         cvs import Quake3_sos sos010110 pr1-27h-win32-010110
1741         cvs import Quake3_sos sos010112 pr1-27h-win32-010112
1742        Note: the first 1.27h might be the public (server only)
1743        beta released, the second one was post release. Beware
1744        of source files added and removed (botlib headers, FT2).
1745        Note: why so late? Don't ask...
1746
17472001-01-08  Bernd Kreimeier  <bk@lokigames.com>
1748
1749        * SOS: id's working up to 1.27h (server side fix for
1750        Guard exploit seems to force earlier release). Updating
1751        CVS (most of the changes are debug code put in and
1752        then disabled, plus some fixes as below). Next patching
1753        up to current SOS.
1754
17552001-01-07  Bernd Kreimeier  <bk@lokigames.com>
1756
1757        * Makefile: need to rework this for multiple platforms.
1758        We also need null/null_vm.c for platforms where we don't
1759        have JIT (assembly emit).
1760
17612001-01-04  Bernd Kreimeier  <bk@lokigames.com>
1762
1763        * code/q3_ui/ui_connect.c (UI_DisplayDownloadInfo): time
1764        information for current (vs. start of download) is wrong,
1765        thus negative 1 "estimated time", as well as transfer
1766        rate just negative downloadSize. Not fixed.
1767       
1768        * code/unix/unix_main.c (Sys_ParseArgs): added.
1769        Note: for support/us, to identify builts. This is only
1770        a skeleton right now - if I ever feel the need to support
1771        more than "-v" and "--version" I'll have to flesh this out.
1772
1773        * code/unix/linux_glimp.c (signal_handler): see below.
1774        * code/unix/unix_main.c (Sys_Exit): added an abstraction
1775        layer for exit/_exit/assert/raise issues.
1776        Note: need both a better debug/backtrace handling, and
1777        have to find a way to determine why/where the alleged
1778        startup/exit errors happen...
1779
17802001-01-03  Bernd Kreimeier  <bk@lokigames.com>
1781
1782        * code/game/g_mem.c (G_Alloc): ERR_DROP initiated by
1783        addbot commands for large sv_maxclients, allegedly
1784        caused segfaults in 1.17. Not reproducible.
1785        TODO: recover more gracefully from failure to add bot?
1786
1787        * code/renderer/tr_light.c (R_LightForPoint): Tim Angus
1788        reports a crashbug with nolight maps. Also assertion in
1789        R_SetupEntityLightingGrid, might want conditional there.
1790        DONE: fixed crash on LightForPoint for nolight maps.
1791
1792        * code/qcommon/qcommon.h: NUM_SERVER_PORTS. A feature
1793        request to increase this, or make it more flexible
1794        otherwise (Fenris).
1795        TODO: id decision on more flexible NUM_SERVER_PORTS.
1796
17972001-01-02  Bernd Kreimeier  <bk@lokigames.com>
1798
1799        * code/unix/snapvector.nasm: fixed FPU bit (the current
1800        one had reserved bits off, behavior should not change).
1801        * code/qcommon/vm_x86.c: fixed symbols (below).
1802        * code/unix/ftol.nasm: FPU bits weren't correct (duh).
1803        DONE: shoot-though floor (q3dm5)
1804        DONE: cursor-in-rect off  (TA/Player model selection)
1805        Note: in gdb, "disassemble <funcname>" is your friend.
1806
1807        * code/cgame/cg_public.h:  CG_MEMSET is set to 100. In
1808        cg_syscalls.asm it's 101. If I change it I get Bad trap 100
1809        from the cgame VM code, so the 1.27g "official" VM code
1810        uses it.
1811
1812        * code/unix/linux_common.c: have to fall back to C, the
1813        current assembly is buggy...
1814        * code/unix/Makefile (linux_common.o): added.
1815        Later: also for dedicated. Less portable this way.
1816        TODO: C_ONLY for dedicated on non-i386 only?
1817
1818        * code/qcommon/common.c: do not use memcpy/memset under Linux.
1819        * code/unix/linux_common.c: added Andrew's assembly port.
1820        TODO: C_ONLY for Com_Memset/Memcpy? Conditionals are fubared.
1821
1822        * code/qcommon/vm.c (VM_Init): use Win32 defaults (do not
1823        use DLL's by default). This exposes DLL rounding errors
1824        (damage through floors), and we don't want DLL's used by
1825        default anyway.
1826        TODO: why vm_ui default of 1?
1827
1828        * code/botlib/l_precomp.c (SourceWarning): removed assert.
1829
1830        * code/game/bg_lib.c (acos): defined, but we don't actually
1831        use it except where the cg_syscalls.asm trap is used.
1832
1833        * code/game/g_public.h: missing lots of trap tokens.
1834        * code/game/g_syscalls.c: missing lots of traps.
1835        * code/game/g_syscalls.asm: more inconsistent hooks, were:
1836         equ floor                                      -111
1837         equ ceil                                       -112
1838         equ testPrintInt                               -113
1839         equ testPrintFloat                             -114
1840        now changed to match cg_syscalls.
1841        Note: fixed this in UI earlier, how did this slip through
1842        the diffs against SOS?
1843       
1844        * code/game/g_syscalls.c: no acos hook.
1845        * code/cgame/cg_syscalls.c: no acos hook.
1846        * code/cgame/cg_syscalls.asm: has acos hook as -112
1847        Note: report from Tim Angus. The acos function is in bg_lib.c
1848        which is linked only into ui (not q3_ui). That means we are
1849        using libc acos right now?
1850        Note: QVM traps are negative?
1851
1852        * BSD/Irix: tagged current CVS (not all of the below) as
1853         cvs tag id1-27g-loki010102-bsd1
1854        for BSD work (Rafael Barrero). Also be used for Irix update.
1855
18562001-01-01  Bernd Kreimeier  <bk@lokigames.com>
1857
1858        * SOS: adding the remaining SOS snapshots to CVS.
1859         cvs import Quake3_sos sos001201-rc3 pr1-27f-win32-001201-rc3
1860         cvs import Quake3_sos sos001202 pr1-27f-win32-001202
1861         cvs import Quake3_sos sos001204 pr1-27g-win32-001204-rc4
1862        This is the codebase to which the Linux branch has been patched
1863        up. I can't verify whether this is identical to the RC4 codebase
1864        as the tag doesn't work (but can check against the ZIP file..)
1865         cvs import Quake3_sos sos001211 pr1-27g-win32-001211
1866        The above snapshot contains a (post-release?) fix to ui_syscalls
1867        in ui/ and q3_ui/. This change has been used in Linux (Beta1 and
1868        above). At this point, id discouraged further use of SOS due to
1869        repository corruption on their end. No further snapshots were
1870        taken since.
1871
1872        * Fenris: since the release of the Beta1 bugs have been
1873        maintained at http://fenris.lokigames.com/. I am going to
1874        list issues here as they get fixed.
1875       
18762000-12-21  Bernd Kreimeier  <bk@lokigames.com>
1877
1878        * code/renderer/tr_font.c: graceful silence with old mods?
1879        * code/botlib/l_precomp.c (SourceWarning): graceful exit if old mod?
1880
18812000-12-20  Bernd Kreimeier  <bk@lokigames.com>
1882       
1883        * code/server/sv_ccmds.c (SV_MapRestart_f): see below.
1884        * code/qcommon/vm.c: currentVM is 0x0 in VM_ArgPtr.
1885        In VM_Call, oldVM was NULL - made conditional the
1886        reset of currentVM to oldVM.
1887
18882000-12-18  Bernd Kreimeier  <bk@lokigames.com>
1889
1890        * BETA1: closed Linux beta release. Stripped debug
1891        and release binaries, DLL's, and pak4.pk3. CVS checkin,
1892        will be tagged as
1893            cvs tag id1-27g-loki001218-beta1
1894        Later: id added a pak5.pk3 to the Win32 point release,
1895        added this to the BETA1 best.
1896
1897        * code/qcommon/vm_x86.c: C37F.
1898        * code/unix/snapvector.nasm: C37F.
1899        Note: short of any real evidence, I gamble and use max.
1900        precision (as well as default Linux precision, but NOT
1901        Win32 precision). It seems that precision change is not
1902        really an issue (despite Graeme's claim that the cursor
1903        in the menu was/is off). I also pick the roundiung behavior
1904        that is seemingly used by ANSI and gcc (but possibly not
1905        Win32 _ftol depending on build).
1906
19072000-12-15  Bernd Kreimeier  <bk@lokigames.com>
1908
1909        * code/unix/Makefile: added snapvector.o
1910        * code/unix/unix_shared.c: #if 0'ed the old snapvector code.
1911        * code/unix/snapvector.nasm (Sys_SnapVectorCW): two new
1912        assembly functions from AndrewH that explicitely set the
1913        FPU control word to convert vec3_t, to ensure cross-platform
1914        behavior for both DLL and QVM.
1915
1916        * code/unix/ftol.nasm (Q_ftolC37F): for globals.
1917
1918        * code/unix/unix_main.c: took out global FPU manipulation.
1919        For clarity this should be VM only.
1920        * code/qcommon/vm_x86.c: added prototypes for the ftol
1921        library. To select a specific behavior for the entire VM,
1922        set ftolPtr accordingly.
1923        Later: the GCC ftol function of course affect the stack
1924        (there is no "declspec naked"). The problem seems to be
1925        that the VM never handles the stack in a way compatible
1926        to regular gcc C functions. For some odd reason _ftol seems
1927        to do the right thing under Win32. All 4 control words
1928        implemented at the moment work just fine with the menus.
1929
1930        * code/unix/ftol.nasm: added a small library of "safe" qftol
1931        variations that explicitely set the control word to the
1932        relevant (4) possibilities.
1933
19342000-12-13  Bernd Kreimeier  <bk@lokigames.com>
1935
1936        * code/qcommon/vm_x86.c: an entire day spent trying to nail
1937        the ftol issues. It breaks down like this: id used to use
1938        an unsafe (no setting FPU control word) fistp. That seemingly
1939        caused subtle physics bugs which nobody cared about in 1.17.
1940        They then changed the UI code, and ran into the UI bugs:
1941        menu entries shifted to the right, fonts vanishing. Then
1942        they switched to using _ftol. Then they had to reproduce
1943        the old behavior for the physics code due to public outrage.
1944        My original port used a simple (long)float cast, which gcc
1945        seemingly compiles to code that does OR 0C00 on whatever
1946        current control word (precision unchanged). This breaks the
1947        menus. If I use the unprotected fistp instead, which should
1948        (Linux 037F default) use "nearest/even", then my menus are
1949        correct. That would mean Win32 _ftol in id's compile does
1950        the same, only that would require /qifist or some equivalent
1951        compile flag, which I can't find. Two disassemblies of _ftol
1952        I got from others showed OR 0C00 as part of the default (ANSI)
1953        behavior.
1954
19552000-12-13  Bernd Kreimeier  <bk@lokigames.com>
1956
1957        * code/game/bg_pmove.c (PmoveSingle): trap_SnapVector.
1958        The one true and single call to snap velocity.
1959        Note: bspc/map.c:void SnapVector(vec3_t normal)
1960        qcommon/cm_patch.c:void CM_SnapVector(vec3_t normal)
1961        game/q_shared.h: #define SnapVector(v) {v[0]=((int)(v[0]));...
1962
1963        * code/client/cl_cgame.c: CG_SNAPVECTOR.
1964        * code/server/sv_game.c:  G_SNAPVECTOR.
1965        Note: these go through trap_SnapVector in syscalls.
1966
1967        * code/unix/unix_shared.c (Sys_SnapVector): sticking to
1968        old Linux version for now...
1969        * code/win32/win_shared.c (Sys_SnapVector): changed.
1970        Note: Graeme points out this was changed to fix ftol
1971        artifacts?
1972        TODO: calculate errors for various ftol variants...
1973
1974        * code/qcommon/vm_x86.c: both the old fistp code (1.17)
1975        and the new qftol function apparatently work. Using the
1976        ftol.nasm code for now.
1977
1978        * code/unix/Makefile: DO_NASM and ftol.o.
1979
1980        * code/unix/ftol.nasm (qftol): created from Mike's SoF
1981        replacements, with Andrew's help to satify the VM
1982        stack/call requirements.
1983        TODO: use Q_ftol herein to replace myftol elsewhere.
1984
1985        * code/unix/unix_main.c (Sys_ConfigureFPU): SIGFPE.
1986        TODO: divide by zero in botlib. Disable this for now.
1987        Note: we can't introduce calculation differences between
1988        versions, so fixing these will have to wait.
1989
1990        * code/qcommon/vm_x86.c: two new lines in Win32 branch
1991        missing from Linux assembly in AsmCall:
1992         mov eax, dword ptr [edi]
1993         and eax, [callMask]     
1994        Added, doesn't seem to affect UI etc. bugs.
1995        Later: no FTOL_PTR, use fistp non-IEEE assembly as in old
1996        version. This seems to work for Q3 and TA, while qftol
1997        (simple cast) does not - for Win32 Graeme says the reverse
1998        is true.
1999
2000        * code/qcommon/vm_x86_old.c: used the old cvs-1.17 version.
2001        Two fixes (Hunk_Alloc, Com_Memcpy), and it works:
2002          +set vm_game 2 +set vm_ui 2 +set vm_cgame 2
2003        UI, cgame and game w/o apparent problems.
2004
20052000-12-12  Bernd Kreimeier  <bk@lokigames.com>
2006
2007        * code/unix/Makefile: cleanup of redundant flags.
2008        Removed bogus MALLOC_CHECK (note to self: export MALLOC_CHECK_=2). 
2009        Also DO_SHLIB_CC on all UI DLL's.
2010        Added and removed DEBUG_VM flag.
2011        TODO: figure out whether Zoid did UI this way intentionally.
2012        Note: this seemingly fixed the botimport problem, although
2013        most of the changes were just redundant CFLAGS removed. Given
2014        our wanker toolchain, should have been more paranoid. All
2015        DLL's can now be used w/o apparent problems.
2016
2017        * code/server/sv_main.c: gvm init.
2018        * code/server/sv_game.c: gvm assertions.
2019        * code/unix/unix_main.c (Sys_LoadDll): print vmMain
2020        Note: top no avail. There is some odd ld/gdb problem here
2021        that prevents examining globals and obfuscates part of
2022        the stack between VM_Call and lower level code, through
2023        G_InitGame. This is not just DLL's being loaded and unloaded.
2024        Wromg flags during build? The vmCvar for "bot_developer"
2025        ends up overlapping global botimport in memory, which
2026        thus zero-fills part of the function pointer table.
2027
2028        * code/server/sv_bot.c (SV_BotInitBotLib): this (by way of
2029        GetBotLibAPI) is responsible for setting botimport, which,
2030        if using the game DLL, is not properly set up. Called in
2031        SV_Init().
2032
2033        * code/game/q_shared.c: Q_strncpyz does zero padding (duh).
2034        Note: calls strncpy, which does a zero fill up to destsize.
2035        If destsize exceeds memory size, zero padding will overwrite
2036        adjacent memory. Suspicion was this happend to botimport.
2037
2038        * code/qcommon/cvar.c: possible problem in Q_strncpyz call.
2039
2040        * code/botlib/be_ai_weap.c (weaponinfo_fields): made this static.
2041        Note: it seems that the "number" string got replaced by
2042         p def.fields[0]
2043         {name = 0x40000000 "\177ELF\001\001\001", offset = 2, type = 50, ..
2044        Memory corruption?
2045
2046        * code/game/inv.h (WEAPONINDEX_GAUNTLET): defined here.
2047        * botfiles/weapons.c (Gauntlet): the baseq3/qagamei386.so parser
2048        breaks here:
2049         number                         WEAPONINDEX_GAUNTLET
2050        * code/botlib/l_precomp.c (SourceWarning): added assertion to
2051        trap botlib parsing problem..
2052
2053        * RC1: for beta test. Using my own vm/ui.qvm files in this case.
2054        TODO: Setup with nouninstall.
2055        TODO: fix game DLL/ botlib setup problem (so all DLL's work)
2056        TODO: SIGFPE
2057        TODO: profile?
2058       
2059        * code/unix/Makefile (ai_vcmd.o): added to game DLL linkage.
2060        How the fuck did this happen?
2061        DONE: "qagamei386.so: undefined symbol: BotVoiceChat_Defend"
2062
2063        * TEST:  +set vm_ui 2 (vm_x86, not interpreter). Breaks!
2064        Further: qagame had undefined, but seemingly gets reloaded
2065        second try (I hate the Linux linker).
2066        * TODO: never reload fail DLL, abort engine
2067
2068
20692000-12-11  Bernd Kreimeier  <bk@lokigames.com>
2070
2071        * TEST: recompile QVM/DLL and executable to test new UI code.
2072        The UI QVMs from the paks still do not work.
2073
2074        * SOS: changes in UI code!
2075        * code/q3_ui/ui_public.h: this file is deprecated
2076        Note: e.g. it does not contain the background track calls.
2077        * code/ui/ui_public.h: the uiImport_t enum here determines
2078        the values.
2079        * code/ui/ui_syscalls.asm: same as q3_ui now, were:
2080         equ floor                                      -111
2081         equ ceil                                       -112
2082        * code/q3_ui/ui_syscalls.asm: these are now switched, were:
2083         equ trap_S_StartBackgroundTrack                        -63
2084         equ trap_S_StopBackgroundTrack                         -64
2085        The new values match the ui/ equivalent. Also, floor (-108)
2086        and ceil (-109) are different in ui/.
2087       
2088        * CVS: going to check in this snapshot and tag it as
2089            cvs tag id1-27g-loki001209-rc4
2090        Presumed equivalent to SOS tag "1.27g RC4" (master). As I can't
2091        obtain the tagged code using SOS (neither Win32 nor Linux client)
2092        I can only guess.
2093
2094        * TEST: use my own VM code, ion baseq3/vm/*.qvm and missionpack/vm/.
2095        This works - in other words, the menu bug seems in the UI code, and
2096        is fixed in my codebase.
2097
2098        * TEST: make release.
2099        Note: I can postpone DLL specific problems. Bad performance is not
2100        as important as outright bugs. Thus the UI QVM issue is the only
2101        one that stops me from creating an RC.
2102        TODO: Q3 UI QVM code from pak file does not work (neither does TA).
2103        TODO: sound with video playback still awful. Threaded sound, I guess.
2104        TODO: ERROR: couldn't open demos/DEMO002.dm3.dm_48 (same demo001.dm3.dm_48)
2105       
2106        TODO: do not show Q3 demos in TA menu?
2107        TODO: new demos for Q3? Or at least error message?
2108       
2109        * code/game/bg_lib.c: itrinsics excluded by Q3_VM (another -O
2110        compile). Uninitialized variable.
2111        * code/unix/Makefile: -O for uninit on patched code. Also shortcuts.
2112        TODO: DC_ONLY seems an obsolete flag, used in Makefiles, not source.
2113
2114        * TEST: +set sv_pure 0 +set vm_game 1 +set vm_cgame 1 +set vm_ui 0
2115        Turns out that the pak0.pk3 UI QVM code is seemingly broken in TA
2116        and Q3, but my UI DLL is not. In reverse, the QVM game/cgame for
2117        Q3 seems to work quite well (including bots). The TA game/cgame
2118        also works, including botlib init.
2119        TODO: BotLib Init using game DLL gives:
2120        TODO:  Error: file weapons.c, line 38: unknown structure field number
2121        TODO:  Fatal: couldn't load the weapon config
2122        TODO:  Error: BotLoadMap: bot library used before being setup
2123       
2124        * TEST: checked the rc4winstlr.zip CD tree against
2125        my test install. baseq3/pak4.pl3 and missionpack/pak0.pk3
2126        are identical, but I finally recognized that there was
2127        a missionpack/pak1.pk3 not in the final install - left over
2128        from an earlier update from id. Doesn't seem to affect the
2129        DLL based runs at all.
2130        Note: I still do not have the final CD snapshot Robert
2131        promised me mid last week, they haven't even fixed the
2132        FTP account they took down. Communication with id is as
2133        abyssmal as ever.
2134
21352000-12-08  Bernd Kreimeier  <bk@lokigames.com>
2136
2137        * TEST: running with RC4 data files.
2138        TODO: "bot library used before setup" (Q3+TA)
2139        TODO: Q3 old mods wreak havoc (graceful bounce)
2140        TODO: supress "FreeType code not available" in renderer
2141        TODO: can't move in Q3
2142        TODO: items flicker in Q3
2143        TODO: no decals in Q3
2144        TODO: VM UI code still broken (Q3+TA)
2145        TODO: sound code is awful
2146        TODO: video playback inferior to earlier builds
2147
2148        * code/q3_ui/ui_local.h: prototype trap_VerifyCDKey(..)
2149        * code/game/g_active.c ( StuckInOtherClient): TA only.
2150        * code/cgame/cg_draw.c: 4x unbalanced `#endif' - from patch?
2151        * code/null/null_client.c (CL_CDKeyValidate): dummy added.
2152        * code/qcommon/common.c: Q_acos missing, changed conditionals
2153       
2154        * code/qcommon/vm_x86.c: unreacheable _asm instruction that
2155        gcc doesn't quite like... #if 0'ed for now
2156        TODO: understand _asm { mov eax,[ebx] }, fix it for gcc
2157
2158        * TEST: compile...
2159
2160        * code/ui/ui_main.c: full REJECT. Manual merge.
2161        Note: preserved debug_protocol lines, who knows what it's good for.
2162
2163        * code/qcommon/files.c: REJECT. SafeMode, demo server FS_Restart.
2164
2165        * code/client/snd_mem.c: REJECT: $SOS$.
2166        * code/client/snd_dma.c: REJECT: $SOS$.
2167        * code/client/cl_cin.c: REJECT. com_timescale, $SOS$.
2168
2169        * code/cgame/cg_draw.c: REJECT. Lots, but virtually all either
2170        float postfix (on some, not all places), or #ifndef MISSIONPACK
2171        that I had already put in during -Werror (conditional unused).
2172
2173        * code/cgame/cg_consolecmds.c: REJECT. id commented unused code
2174        that I had #if 0'ed earlier.
2175
2176        * code/game/: three REJECT for $SOS$.
2177        * code/botlib/: lots REJECT for $SOS$.
2178
2179        * Patch: patching up from demo source.
2180        ln -s sos001204-rc4 work
2181        diff -urbB sos001122-demo/ work > work.diff
2182        ln -s cvs-1.27b/ work
2183        patch -p0 < work.diff  > work.patch
2184        find cvs1.27b/ -name '*.rej' -print
2185
2186        * CVS: going to check in this snapshot and tag it as
2187            cvs tag id1-27b-loki001208-demo
2188        Then patching up to RC4, as of sos001204-rc4 (no changes since,
2189        should be equivalent to SOS tag "1.27g RC4" (raduffy), i.e. master.
2190
2191        * TEST: installed demota/ from Win32 distribution. Binary
2192        fails claiming "Corrupted pak0.pk3". Abandoned.
2193        Note: a Linux demo for Q3TA has no priority. Most important is
2194        the Q3A point release in time for Q3TA hitting shelves, followed
2195        by testing for Q3TA. The source is in CVS and tagged (see above)
2196        in case a demo matching the released files has to be provided
2197        later.
2198       
2199
22002000-12-07  Bernd Kreimeier  <bk@lokigames.com>
2201
2202        * TEST: compile and link - succeeds.
2203
2204        * code/ui/ui_main.c: UI_StopServerRefresh now uaws.
2205        New unused variables.
2206       
2207        * code/unix/unix_main.c: added  Sys_LowPhysicalMemory() stub.
2208        TODO: write Linux equivalent to GlobalMemoryStatus.
2209
2210        * code/qcommon/common.c: Com_Memset/Com_Memcpy. Neither assembly
2211        nor C versions included if not on Win32 i386.
2212        TODO: using/porting assembly?
2213
2214        * code/qcommon/files.c: unused variable.
2215        TODO: fs_scrambledProductId unused if 0 for now.
2216        Note: -DFS_MISSING for id's pak cleanup, not used.
2217
2218        * TEST: compile and link - fails.
2219
2220        * code/macosx/Client/Makefile.postamble: empty ORIG.
2221        * code/macosx/Client/Makefile.preamble: ORIG. $(BOTLIB_OBJS) added.
2222
2223        * code/server/sv_client.c: ORIG. Com_Memset.
2224        * code/renderer/tr_shader.c: ORIG. Com_Memset, CIN_Shader.
2225        * code/qcommon/vm_x86.c:  ORIG. Com_Memcpy.
2226        * code/qcommon/unzip.c: REJECT. Com_Memcpy, $SOS$.
2227        * code/qcommon/qcommon.h: ORIG. PROTOCOL 47, plus Sys_LowPhysicalMemory.
2228        * code/qcommon/md4.c: Com_Memset,Com_Memcpy (ORIG).
2229        * code/qcommon/files.c (Sys_ConcatenateFileList): REJECT.
2230        Our additons threw it off, plus $SOS$.
2231        * code/qcommon/common.c: they fixed same unused variables (REJECT).
2232
2233        * code/ui/ui_shared.c: additions (ORIG).
2234        * code/ui/ui_gameinfo.c: COM_Compress added (ORIG).
2235        * code/ui/ui_atoms.c: print statements removed (ORIG).
2236        * code/ui/ui_main.c (UI_DoServerRefresh): REJECT on comment edit...
2237
2238        * code/game/g_cmds.c (Cmd_VoiceTaunt_f): logic changed heavily. ORIG.
2239        * code/game/q_shared.h: Q3_VERSION "Q3 Team Arena Demo 1.27b"
2240        plus Com_Memset, Com_Memcpy, CIN_shader, COM_Compress.
2241        * code/game/g_main.c: Cvar change only
2242        * code/game/ai_dmq3.c: $SOS$.
2243
2244        * code/client/snd_mix.c: Com_Memset
2245        * code/client/client.h: additions (ORIG).
2246        * code/client/snd_mem.c: see below.
2247        * code/client/snd_dma.c: $SOS$ (CVS keyword).
2248
2249        * code/client/cl_cin.c: they removed unused (REJECT).
2250        * code/cgame/cg_servercmds.c: ORIG. compress, noTaunt etc.
2251        * code/cgame/cg_main.c: ORIG. Conditonal branch, COM_Compress.
2252        * code/cgame/cg_consolecmds.c: ORIG. Cvar values changed.
2253        * code/cgame/cg_draw.c (CG_DrawTeamBackground): ORIG.
2254        no reject but *.orig file created. I just mark spots were
2255        code changed after verifying the patch succeeded.
2256
2257        * code/cgame/cg_event.c: fixed reject (REJECT).
2258        * code/botlib/: all *.rej here due to SOS/CVS $Keyword$.
2259        TODO: preserve SOS comments/rev history somehow.
2260
2261        * Patch: patching up to demo source.
2262        ln -s sos001122-demo work
2263        diff -urbB sos001119/ work > work.diff
2264        ln -s cvs-1.26/ work
2265        patch -p0 < work.diff  > work.patch
2266        find cvs1.26/ -name '*.rej' -print           
2267       
2268        * CVS: going to check in this snapshot and tag it as
2269          cvs tag id1-26w-loki001207
2270        to prepare for upgrading to RC4. I have already made
2271        many more changes than I wanted to w/o getting any
2272        closer to pinpointing the problem, I might as well
2273        patch up to id's more current sources.
2274
2275        * code/botlib/be_interface.c: initialize by memset. Turns
2276        out that this fails in Export_BotLibSetup on BotSetupWeaponAI
2277        loading "weapons.c" (from the pak, presumably) with an unknown
2278        structure field number. Mismatch of datafiles vs. source again.
2279       
2280        TODO: id replaced memsets in later source.
2281        TODO: have memsets on all exports and imports.
2282
2283        * SOS: RC4 source should be tagged "1.27g RC4" (raduffy).
2284        Unfortunately the Linux client doesn't care a bit. Show
2285        History does work if from/to date differ by at least a
2286        day, and it shows the tag on code/ (only that subtree),
2287        but recursive get aborts halfway.
2288        Manual: http://www.sourcegear.com/SOS/Doc/
2289
22902000-12-06  Bernd Kreimeier  <bk@lokigames.com>
2291
2292        * TEST: accepting missing shaders now. No bots, but I can
2293        actually enter the game and play (more than can be said for
2294        classic Q3 right now).
2295        TODO: Error: BotStartFrame: bot library used before being setup
2296
2297        * code/renderer/tr_shader.c: took out assertion for now...
2298        * TEST: now missiopack/cgame loads
2299        TODO: tr_shader.c:2275: R_FindShaderByName: failed
2300        TODO: searches ui/assets/3_cursor2.TGA, has ui/assets/3_cursor3.tga
2301       
2302        * code/unix/Makefile (MPCGOBJ): ui_shared.o (duh).
2303        DONE: /cgamei386.so: undefined symbol: PC_Float_Parse
2304       
2305        * code/botlib/be_ai_goal.c: initialize campspots etc. This
2306        might or might not fix this one (didn't get back to gdb due
2307        to mouse-only navigation).
2308        DONE: 0x80d1d5b in BotFreeInfoEntities () at be_ai_goal.c:447   
2309
2310        * TEST: this time with missionpack/cgame loading... noy
2311        TODO: TA menu blocked after end of intro movie
2312        TODO: console in_mouse 1 doesn't grap pointer even on vid_start?
2313
2314        * code/cgame/cg_newdraw.c: -Werror.
2315        * code/unix/Makefile (MPCGOBJ): cg_newdraw.o was missing (duh).
2316        DONE: missionpack/cgamei386.so: undefined symbol: CG_OwnerDrawVisible"
2317
2318        * code/ui/ui_shared.c:1309 assign after bail on NULL.
2319        DONE: segfault in Item_SetFocus (item=0x0, x=0, y=0)
2320
2321        * TEST: new set of DLL's (this time hopefully correct).
2322        All baseq3/ DLL's load, as does the missionpack/ UI DLL.
2323        The menus now work in both (TA seems mouse-only on everything
2324        but "Quit"). Segfault on delayed TA "Quit" (stack fubared):
2325        #5  0x809fc28 in VM_Call (vm=0x88408a0, callnum=3) at ..//qcommon/vm.c:617
2326        #6  0x805aafc in CL_KeyEvent (key=9, down=qtrue, time=128644) cl_keys.c:1194
2327        TODO: TA menu's w/o mouse?
2328        TODO: Win32 goes submenus but does not unfold
2329        TODO: Linux does not go submenus
2330       
2331        * code/ui/ui_main.c: see below.
2332        TODO: LCC gets fits -  operands of = have illegal types
2333        TODO: 'pointer to const unsigned char' and 'pointer to const char'
2334        * code/ui/ui_shared.c: see below.
2335        * code/ui/ui_gameinfo.c: see below.
2336        * code/ui/ui_atoms.c: see below.
2337        * code/game/g_bot.c: more cruft.
2338        * code/cgame/cg_draw.c: loads of functions modified for
2339        MISSIONPACK that aren't used at all for MISSIONPACK anymore.
2340        Development relics.
2341
2342        * code/cgame/cg_consolecmds.c: -Werror.
2343        Note: due to Makefile error never ever compiled...
2344
2345        * code/unix/Makefile: fixed various dependency errors
2346        for game and ui library.
2347        TODO: create a new Makefile with patsubst and rules.
2348        TODO: why C_ONLY in the i386 dedicated server?
2349
2350        * code/unix/unix_main.c: use dlerror() excessively.
2351        Littered more unused DLL related functions with assert(0).
2352        TODO: clean up Sys_Load/UnloadDll (a real mess)
2353        TODO: remove Zoid code cruft (unused per-DLL functions)
2354       
2355        * code/game/bg_misc.c: changed G_Printf for Com_Printf.
2356        This was undefined in baseq3/uii386.so preventing loading.
2357
2358        * TEST: +set sv_pure 0 +set vm_game 0 +set vm_cgame 0 +set vm_ui 0
2359        Note: so far I used only the game DLL..  duh.
2360        UI DLL fails to load: missing G_Printf.
2361
2362        * code/unix/Makefile:  -DMALLOC_CHECK in addition to
2363        the -DZONE_DEBUG I have used since switching to calloc.
2364        Using MALLOC_CHECK=1 for now, might use 2 if something
2365        comes up.
2366
2367        * code/renderer/tr_init.c (GL_SetDefaultState): it does get
2368        called, but does not show up in the log.
2369       
2370        * TEST: tried executing a script - get bounced.
2371        TODO: is there any way to jump into a map?
2372        TODO: cl_cinematics 0 (supress all fullscreen RoQ)
2373        Next: used r_logfile 200 in Win32 (RC4) and Linux.
2374        There is a buckload of setup code seemingly not done
2375        at all in Linux? Either that, or logging is enabled
2376        with a delay in Linux.
2377
2378        * code/unix/linux_glimp.c: fixed autorepeat (H2/Fakk2 way).
2379
23802000-12-05  Bernd Kreimeier  <bk@lokigames.com>
2381
2382        * code/renderer/tr_mesh.c: added assert there.
2383        * TEST: menus and in-game drawing are just as they were with
2384        the initial SOS001119 port. In addition:
2385          R_AddMD3Surfaces: no such frame 0 to -2147483477
2386             for 'models/players/xaero/upper.md3'
2387          R_AddMD3Surfaces: no such frame -2147483477 to 171
2388          R_AddMD3Surfaces: no such frame 171 to -2147483498
2389        ad nauseam (used as my player model).
2390        Triggered: haveing a trRefEntity_t *) 0x41dbbd00 with
2391        frame = -2147483477. Might be a red herring (PRINT_DEVELOPER),
2392        ignore for now.
2393
2394        * code/ui/ui_main.c: missing return.
2395        * code/ui/ui_shared.c: excess byte in initializer (which gcc
2396        did not caught, but LCC did). Also LCC complains about
2397        missing returns, but gcc doesn't (neither says unreacheable
2398        code though). If necessary (MsVC?) guard with Q3_VM.
2399
2400        * code/q3_ui/ui_ingame.c: see below.
2401        * code/q3_ui/ui_atoms.c: voidfunc_f. LCC warns about conversion
2402        from `pointer to void' to `pointer to void function(void)'
2403        being compiler dependent. Casting NULL. Guess what, doesn't fix
2404        it either.
2405        TODO: do not use these cursed scripts to generate VM code,
2406        we do not have proper rules for LCC/q3asm, thus the files never
2407        get updated.
2408
2409        * code/unix/Makefile: for paranoia's sake recreated the 1.17
2410        compile for the UI DLL (where only q_shared/math were actually
2411        compiled as DO_SHLIB_CC.
2412        Later: switched to different gcc.
2413
2414        * STATIC: remaining problems are vmMain (same entry point for all
2415        DLL's), could use cgMain, uiMain and gMain here for HARD_LINKED.
2416        Note: I don't think id has used this in ages.
2417        Plus all the collisions in *_syscalls.c, which simply can't be
2418        fixed cheaply. None is the superset of 2 others, neither seems
2419        w/o overlap to others. Full stop.
2420
2421        * code/botlib/be_aas_move.c: see below.
2422        * code/game/ai_dmq3.c: VEC_UP/DOWN, MOVEDIR_UP/DOWN now static.
2423        See also game/g_utils.c for existing static duplicates.
2424
2425        * code/game/q_shared.h: #define stricmp strcasecmp
2426        * code/unix/Makefile:  no mo'  -Dstricmp=strcasecmp, see q_shared.h
2427        Also: no mo'  -I/usr/include/glide, no FX
2428        TODO: are we building against system GL headers? ../Mesa/?
2429
2430        * code/q3_ui/ui_atoms.c: comment on duplication
2431        * code/cgame/cg_drawtools.c: use UI/CGAME_HARD_LINKED on UI duplicates
2432        TODO: does this UI_ code in cg_drawtools/ui_atoms belong into ui_shared?
2433
2434        * code/unix/Makefile: use -DQ3_STATIC
2435        * code/game/q_shared.h (*_HARD_LINKED): trigger on Q3_STATIC
2436        Later: collision between UI and CGAME is still there. This fixed
2437        the Com_Error, Com_Printf issues though
2438
2439        * code/unix/Makefile ($(B)/q3static/ai_vcmd.o): this file was
2440        missing, hence undefined symbol.
2441        ($(B)/baseq3/game/ai_vcmd.o): same here.
2442        ($(B)/missionpack/game/ai_vcmd.o): same here.
2443
2444        * STATIC: cg_syscalls.c, g_syscalls.c and ui_syscalls.c alias.
2445        Multiply defined symbols:
2446         Com_Error, Com_Printf
2447         VEC_UP, VEC_DOWN
2448         MOVEDIR_UP, MOVEDIR_DOWN
2449         vmMain
2450         dllEntry
2451         PASSFLOAT
2452         trap_Error
2453         trap_Milliseconds
2454         trap_Argc
2455         trap_Argv
2456         trap_FS_FOpenFile
2457         trap_FS_Read
2458         trap_FS_Write
2459         trap_FS_FCloseFile
2460         trap_FS_GetFileList
2461         trap_R_RegisterModel
2462         trap_R_RegisterSkin
2463         trap_R_RegisterFont
2464         trap_R_RegisterShaderNoMip
2465         trap_R_ClearScene
2466         trap_R_AddRefEntityToScene
2467         trap_R_AddPolyToScene
2468         trap_R_AddLightToScene
2469         trap_R_RenderScene
2470         trap_R_SetColor
2471         trap_R_DrawStretchPic
2472         trap_R_ModelBounds
2473         trap_UpdateScree
2474         trap_S_StartLocalSound
2475         trap_S_RegisterSound
2476         trap_Key_IsDown
2477         trap_Key_GetCatcher
2478         trap_Key_SetCatcher
2479         trap_GetGlconfig
2480         trap_PC_AddGlobalDefine
2481         trap_PC_LoadSource
2482         trap_PC_FreeSource
2483         trap_PC_FreeSource
2484         trap_PC_ReadToken
2485         trap_PC_SourceFileAndLine
2486         trap_S_StopBackgroundTrack
2487         trap_S_StartBackgroundTrack
2488         trap_RealTime
2489         trap_CIN_PlayCinematic
2490         trap_CIN_StopCinematic
2491         trap_CIN_RunCinematic
2492         trap_CIN_DrawCinematic
2493         trap_CIN_SetExtents
2494         trap_MemoryRemaining
2495         trap_SendConsoleCommand
2496         trap_Cvar_Register
2497         trap_Cvar_Update
2498         trap_Cvar_Set
2499         trap_Cvar_VariableValue
2500         trap_Cvar_VariableStringBuffer
2501         trap_RealTime
2502         trap_SnapVector  // used in game/bg_*.c, needs conditional
2503        More aliasing between ui_atoms.c and cg_drawtools.c:
2504         UI_DrawBannerString
2505         UI_ProportionalStringWidth
2506         UI_ProportionalSizeScale
2507        Undefined symbol: ai_team.o: In function `FindHumanTeamLeader':
2508         ai_team.c:1899: undefined reference to `BotVoiceChat_Defend'
2509        Note:
2510       
2511        * code/game/g_main.c: unused.
2512        * code/game/g_arenas.c: unused.
2513        * code/game/ai_team.c: init.
2514        * code/game/ai_dmnet.c: /* in comment (odd).
2515        Note: why do these come up now but not earlier?
2516        TODO: the make dependencies might target wrong files.
2517
2518        * code/unix/Makefile (TARGETS): added q3static.
2519        Note: this is baseq3/
2520
2521        * TEST: +set r_logfile 100. It seems that the addition of
2522        code (add an assertion etc.) changes the behavio of the binary.
2523        The intro cinematics code seems to suffer first - didn't play,
2524        then played, then (another assert added) doesn't play. Watch
2525        out for (missionpack):
2526          UI_CIN_PlayCinematic
2527          SCR_PlayCinematic( mpintro.roq )
2528          trFMV::play(), playing mpintro.roq
2529        Also fails to exit cleanly: break gives
2530         #0  0x401919ee in __select ()
2531         #1  0x400bbcb8 in __DTOR_END__ ()
2532         #2  0x4004baa1 in _XSend ()
2533         #3  0x452b009f in GLXRenderFlush ()
2534         #4  0x804ce0c in _XRead ()
2535         #5  0x40680813 in ?? ()
2536        Stack is corrupted.
2537        Note: ~/.q3a/gl.log
2538        TODO: write per-frame files (see Heretic2)
2539        TODO: add Heretic2 QGL (more detail)
2540
2541        * code/unix/linux_qgl.c (QGL_EnableLogging): fixed countdown
2542        (i.e. propagated changes from win32/, see Fakk2).
2543
2544        * code/unix/linux_glimp.c: fixed QGL_EnableLogging argument
2545        to avoid cast error (always qfalse).
2546
2547        * code/unix/Makefile (DEBUG_CFLAGS): use ZONE_DEBUG.
2548
2549        * code/qcommon/common.c: replaced malloc with calloc calls.
2550
2551        * code/q3_ui/ui_local.h: have to use ui/ui_public.h
2552        * code/cgame/cg_servercmds.c: requires ../ui/menudef.h
2553
2554        * code/cgame/cg_consolecmds.c: ui/ui_shared.h is unique.
2555        * code/q3_ui/ui_public.h: make sure this won't be compiled.     
2556        * code/client/client.h: we have to include ui/ui_public.h.
2557        Note: id is obviously maintaing only the ui/ headers, so the
2558        headers in q3_ui/ are deprecated.
2559
2560        * code/renderer/tr_shader.c: added assertions (see Ryan's Fakk2
2561        problems with missing shaders).
2562
2563        * code/game/g_cmds.c: below.
2564        * code/game/ai_vcmd.c: below.
2565        * code/game/ai_team.c: below.
2566        * code/game/ai_dmnet.c: below.
2567        * code/game/ai_dmq3.c: below.
2568        * code/game/ai_chat.c: below.
2569        * code/game/ai_cmd.c: ../../ui/menudef.h (new Q3TA script directory).
2570
2571        * code/cgame/cg_newdraw.c: make sure it won't compile w/o MISSIONPACK.
2572
2573        * code/cgame/cg_servercmds.c: below.
2574        * code/cgame/cg_event.c: below.
2575        * code/cgame/cg_consolecmds.c: below.
2576        * code/client/keys.h: below.
2577        * code/client/client.h: below.
2578        * code/q3_ui/ui_local.h: include from ../q3_ui/ not ../ui/.
2579        Note: id seems to intentionally use the header from the new ui/.
2580
2581        * Makefile: checked -I$(UIDIR), there is no such. That means all
2582        files include directly, which means all (including Q3) are using
2583        the new ui/ headers.
2584
25852000-12-04  Bernd Kreimeier  <bk@lokigames.com>
2586
2587        * RC4: released as 362101115 Dec  4 11:40 TA_Q3A_RC4.zip
2588
2589        * TEST: the corrupted menu problem is back :-(. Looks like I am in
2590        for a static link next.
2591       
2592        * code/unix/Makefile (clean2): fixed (not all new OBJ covered).
2593        * code/q3_ui/ui_teamorders.c: -Werror.
2594        * code/q3_ui/ui_team.c: -Werror.
2595        * code/q3_ui/ui_qmenu.c (Bitmap_Draw): -Werror.
2596        * code/q3_ui/ui_mods.c (UI_Mods_LoadModsFromFile): unused. -Werror.
2597        * code/q3_ui/ui_controls2.c: -Werror.
2598        * code/q3_ui/ui_atoms.c: -Werror
2599        * code/null/null_client.c: -Werror.
2600        * code/unix/linux_joystick.c: -Werror.
2601        * code/unix/linux_glimp.c: -Werror.
2602        * code/unix/linux_qgl.c: -Werror.
2603        * code/unix/unix_shared.c: -Werror.
2604        * code/unix/unix_net.c: -Werror.
2605        * code/unix/linux_local.h: added missing prototypes.
2606        * code/unix/unix_main.c: -Werror. Includes linux_local.h
2607        * code/jpeg-6/jdmainct.c: see below.
2608        * code/jpeg-6/jcmainct.c: variables called "main" (*moan*)
2609        * code/jpeg-6/jcdctmgr.c (forward_DCT): -Werror.
2610        * code/botlib/l_script.c (PS_ReadLiteral): -Werror
2611        * code/botlib/l_precomp.c (PC_AddBuiltinDefines): -Werror.
2612        * code/botlib/be_interface.c: -Werror.
2613        * code/botlib/be_aas_reach.c: -Werror
2614        * code/botlib/be_aas_cluster.c: -Werror
2615        * code/game/be_aas.h: -Werror.
2616        Note: MrElusive accumulates a lot of code history in nested comments,
2617        which gcc doesn't like at all. #if 0'ed to avoid.
2618        * code/qcommon/vm_interpreted.c: -Werror.
2619        * code/qcommon/unzip.c: -Werror.
2620        * code/cgame/cg_servercmds.c: -Werror.
2621        * code/cgame/cg_main.c: -Werror.
2622        * code/cgame/cg_drawtools.c: -Werror.
2623        * code/game/bg_misc.c: -Werror.
2624        * code/game/be_ai_move.h (bot_avoidspot_s): added.
2625        * code/botlib/be_ai_move.c: removed typedef struct bot_avoidspot_s
2626        * code/client/snd_mix.c: -Werror.
2627        * code/qcommon/md4.c: -Werror.
2628        * code/qcommon/common.c: -Werror.
2629        * code/client/cl_keys.c: -Werror.
2630        * code/client/cl_cin.c: -Werror, init local variables. 
2631        * code/unix/Makefile: -Werror. need -O for -Wall for uninitialized
2632        Note: the above is the list of files that got touched during a pass
2633        with -g -O -Werror -Wall flags (in the hope of finding uninitialized
2634        memory and ambiguous statements). Most of the above are simply
2635        unused variables (or even code).
2636
2637        TEST: RC3 data files, but DLL's.
2638        TODO: TA gets stuck in initial sound, doesn't play cinematics (sometimes)
2639        TODO: Q3 intro movie looses sound after Sarge gets teleported
2640        TODO: Q3 ingame renders world, weapon, muzzleflash, hud, can shoot,
2641        TODO:  but no movement, hud background is fubared.
2642
2643        * code/cgame/cg_main.c: cg_singlePlayerActive
2644
2645        * code/q3_ui/ui_login.c: doesn't seem to be used?
2646        * code/game/g_rankings.c (G_RankRunFrame): doesn't seem to be used.
2647        * code/q3_ui/ui.sh: disabled this.
2648        * code/q3_ui/q3_ui.sh: changed include path to ../q3_ui/ (duh).
2649
2650        * code/game/game.sh: changed include path to ../q3_ui/ which
2651        is not in the Win32 batch file.
2652        * code/cgame/cg_rankings.c: this does not seem to be included.
2653        * code/cgame/cgame_ta.sh: added -DCGAME. Also added cg_syscalls.c
2654        to build (also missing in Win32).
2655
2656        * code/cgame/cgame.sh: added -DCGAME (see cgame.bat). Also
2657        changed include path to ../q3_ui/ which is not in the Win32
2658        batch file.  Also added cg_syscalls.c to build (missing in
2659        Win32).
2660
26612000-12-01  Bernd Kreimeier  <bk@lokigames.com>
2662
2663        * RC3: released as of sos001201 / Q3 1.27f
2664
2665        * code/unix/Makefile: more fixes with clean build. The
2666        changes made fix the menu rendering for Q3 but not TA.
2667        Ingame graphics still broken.
2668
2669        * code/game/game_ta.sh: created. Use game_ta.q3asm here.
2670        * code/game/game.sh: no -DMISSIONPACK
2671        * code/game/game_ta.q3asm: CR/LF, /.
2672
2673        * code/cgame/cgame_ta.sh: created. Use cgame_ta.q3asm here.
2674        * code/cgame/cgame.sh:  no -DMISSIONPACK. No cg_newdraw, ui_shared.
2675        * code/cgame/cgame.q3asm:  No cg_newdraw, ui_shared.
2676        CR/LF, /, cg_newDraw, and the output path/name.
2677       
2678        * code/q3_ui/q3_ui.q3asm: output to ui not q3_ui...
2679
2680        * code/cgame/cg_event.c: cg_singlePlayerActive used here.
2681        TODO: guard by MISSIONPACK
2682        * code/cgame/cg_local.h: named q3print_t enum. Cvar
2683        cg_singlePlayerActive for both Q3 and TA.
2684
2685
2686        * code/unix/Makefile: cleanly separate B/baseq3/ and
2687        B/missionpack/ subtrees during build. While new and old
2688        UI are in separate directories, the cgame/ and game/
2689        are shared, with conditional -DMISSIONPACK compile
2690        and different files includeds (cd_draw, cg_newdraw).
2691        That means twice the number of targets (3 DLL's, 3 QVM's,
2692        times two), and different build rules.
2693        TODO: carefully check Win32 build for (other) conditionals
2694        TODO: carefully check Win32 build for link lists
2695
2696        * CVS:  ui/, code/ui, botfiles/ and subdirectories are added.
2697        The code/macosx/ directory turned out to be a real pain that
2698        had to be edited manually, throwing out CVS/ directories in
2699        the tree that had been created by SOS as they are in id's
2700        repository:
2701          code/macosx/Client/CVS
2702          code/macosx/Client/PBUserInfo/CVS
2703          code/macosx/Client/Quake3.nib/CVS 
2704          code/macosx/Common/CVS
2705          code/macosx/DedicatedServer/CVS
2706          code/macosx/DedicatedServer/PBUserInfo/CVS 
2707        Now tagged
2708          cvs tag id1-26y-loki001119
2709        TODO: there are several new files not yet linked?
2710
2711        * ChangeLog: merged the Changelog from the bk00119 working
2712        branch (initial Q3TA port) based on sos001119 snapshot. Also
2713        merged the source tree with cvs-1.17.
2714        In the ChangeLog below  *** MISSIONPACK *** indicates work
2715        that was done on the branch (code-sos/ prefix in files).
2716        The cvs update of this will be tagged with
2717         cvs tag id1-26y-loki001119
2718        Use this tag to hunt for possible Linux fixes that got lost
2719        (i.e. got dropped by id since id000516 and were thus not in
2720        sos001119, but did not show in diff id000516 cvs1-17).
2721        New directories in CVS: botfiles/, ui/.
2722        Missing from SOS/Missionpack: SDK directories.
2723         common, lcc, libs, q3asm, q3data, q3map, q3radiant.
2724
2725
2726        * ssreport.txt: below.
2727        Note: watch for files called "ssreport.txt", that's id ChangeLog.
2728        * ui/ui_syscalls.asm: below.
2729        * q3_ui/ui_syscalls.asm: below.
2730        * game/g_syscalls.asm: below.
2731        * cgame/cg_syscalls.asm: below.
2732        * bspc/linux-i386.mak: below.
2733        * bspc/lcc.mak: below.
2734        * botlib/linux-i386.mak: below.
2735        * botlib/lcc.mak: below.
2736        * A3D/a3d_console_variables.txt: CR/LF issue (minimize diffs).
2737
2738        * CVS: the checked bk001119 work copy of the sos001119 initial
2739        checkout (completed with everything in the SOS "Missionpack"
2740        tree, i.e. botfiles/ and botfiles.* added), copied over the
2741        cvs-1.17 checkout.
2742        Note: in these cases, BEWARE ui -> q3_ui/ links, and different
2743        ChangeLogs. Also "make clean" helps.
2744
2745        * unix/unix_net.c: below.
2746        * unix/unix_main.c: below.
2747        * unix/matha.s: below.
2748        * unix/linux_qgl.c: below.
2749        * unix/linux_glimp.c: see also linux_joystick.c.
2750        * server/sv_client.c: below.
2751        * renderer/tr_surface.c: below.
2752        * renderer/qgl.h: below.
2753        * qcommon/qcommon.h: below.
2754        * qcommon/files.c: below.
2755        * qcommon/common.c: below.
2756        * q3_ui/ui_demo2.c: below.
2757        * mac/mac_net.c: below.
2758        * mac/mac_glimp2.c: below.
2759        * game/surfaceflags.h: below.
2760        * game/bg_lib.c: checked against id00516/cvs-1.17a diff.
2761        * bspc/bspc.c: TH_AASToTetrahedrons call removed since id000516.
2762        Note: our final compare of id000516 against cvs-1.17a, making sure
2763        that all these differences are in bk001119 (initial Q3TA port).
2764        If id branched the Q3TA base off before id000516 we might be screwed.
2765        Note: I do not diff against bk000520, which had some minor changes
2766        against id000516 (check VectorArrayNormalize, OTConfiguration), which
2767        seem consistent with me taking a pre-id000516 source snapshot for that
2768        working branch.
2769
27702000-11-30  Bernd Kreimeier  <bk@lokigames.com>
2771
2772        * TEST: compiled using the symbolic link ui/ -> q3_ui/.
2773        Had to undo one CVS change, regarding
2774         code/cgame/cg_syscalls.asm
2775         code/game/g_syscalls.asm
2776         code/q3_ui/ui_syscalls.asm
2777        These files are neither generated by Win32 cgame.bat
2778        nor cgame.sh (etc.), thus seemingly maintained by hand.
2779         cvs tag pr1-17-loki001130b
2780        should be used if somebody needs this 1.17 snapshot
2781        (which, remember, is post-release, with additional fixes).
2782        Later:
2783         cvs tag pr1-17-loki001130c
2784        includes the full ChangeLog (duh).
2785       
2786        * CVS: up until cvs-1.17-001130, code/ui/ contained the
2787        Q3 code for the UI QVM/DLL. In Q3TA, this code has been
2788        moved to code/q3_ui/, while at the same time the new
2789        (scripting driven) UI code for Q3TA was maintained in
2790        code/ui/. To preserve the history of code/ui/, it has been
2791        renamed to q3/ui/ in the CVSROOT.
2792        Note: this will BREAK all cvs-1.17 and before checkouts.
2793        To compile earlier versions, move or link q3_ui/ to ui/.
2794        The code has been tagged
2795          cvs tag pr1-17-loki001130
2796        after the change.
2797        DONE: remove code/*/vm/*.asm from CVSROOT
2798        Note: this includes code/*/*.asm files (from *_syscalls.c).
2799        These were originally tracked in CVS, but if we need
2800        comparison of q3asm output or QVM files we can rely
2801        on the Win32 and Linux SDK now. These files have been
2802        physically removed from CVS now, followed by
2803          cvs tag pr1-17-loki001130a
2804
28052000-11-30  Bernd Kreimeier  <bk@lokigames.com>      *** MISSIONPACK ***
2806
2807        * RC2: new ZIP file (another 360M for convenience).
2808
2809        * SOS: new CVS module, Quake3_sos. This will be used to track
2810        the unchanged SOS checkouts from id. As their repository
2811        is read-only, and there is no estimate on when changes might
2812        be backpropagated there, I will track their changes in a
2813        separate module, and update our local Quake3 module
2814        accordingly. This is effectively "tracking 3rd party"
2815        w/o import and half-automated, forced mergers - in other
2816        words, we now branch starting with our post-1.17 changes,
2817        for the benefit of moving at all.
2818        Baseline is a slightly changed PR-1.17 id000516 source dump
2819        (essentially ui/ moved to q3_ui for continuity, and CR/LF etc.).
2820         cvs import Quake3_sos id000516 pr1-17-win32
2821         cvs import Quake3_sos sos001119 pr1-26-win32
2822         cvs import Quake3_sos sos001120 pr1-26-win32-001120
2823         cvs import Quake3_sos sos001121 pr1-26-win32-001121
2824         cvs import Quake3_sos sos001122 pr1-26-win32-001122
2825         cvs import Quake3_sos sos001122-demo pr1-26-win32-demo
2826        This is about the 1.26w Team Arena Win32 demo release, give or
2827        take a couple of lines. Has Q3_VERSION "Q3 Team Arena Demo 1.27b".
2828         cvs import Quake3_sos sos001123 pr1-26-win32-001123
2829         cvs import Quake3_sos sos001126 pr1-26-win32-001126
2830        Now track id versions (see code/game/q_shared.h:Q3_VERSION)
2831         cvs import Quake3_sos sos001128 pr1-27c-win32-001128
2832        With 1.27d they switched from Demo to full version (RC1).
2833         cvs import Quake3_sos sos001129 pr1-27d-win32-001129
2834         cvs import Quake3_sos sos001130a pr1-27d-win32-001130a
2835        Now switched to 1.27e. This import is done from the SOS
2836        working directory.
2837         cvs import Quake3_sos sos001130b pr1-27e-win32-001130b
2838        Note: SoS created rwx attributes which are luckily fixed
2839        automagically during import. It is also seemingly incapable
2840        to compare files, and leave files that have not changed the
2841        hell alone. I can't do cvs update due to the $..$ tags in
2842        the original files (which CVS can't be told to ignore),
2843        so I have to do import (creating a load of vendor tagged
2844        branches), but at least cvsweb and cvs get the revisions
2845        right.
2846
2847        * code-sos/unix/Makefile: added linux_joystick
2848        * code-sos/unix/linux_local.h: match mac/ and win32/, for prototypes.
2849
2850        * code-sos/unix/linux_joystick.c: new file, code from linux_glimp.c
2851        Note: decided to separate this, as (a) we might edit/extend
2852        a lot, (b), it's not in the id tree, (c) it's not GL, (d)
2853        there might be even more oddball devices. Anything that
2854        cuts down on diffs.
2855
2856        * code-sos/unix/linux_glimp.c (Q_stristr): const return (cvs1.17).
2857        Also (XLateKey): added more keyboard mappings (ASCII on
2858        upper row digits) (cvs1.17). Added in the minimal joystick
2859        hooks (cvars, function calls). Fixed joystick cvar naming
2860        to match win32 (kept joystick_threshold).
2861        TODO: joystick stubs for dedicated?
2862
2863        * CVS: I have to move up to 1.27d (data, Win32 networking).
2864        With exception of linux_glimp.c (mostly joystick code),
2865        all cvs1.17 changes should now be in the work snapshot
2866        based on the first sos001119 we got from id. There are
2867        also some additional changes in there already, thus I'll
2868        move the (buggy) 1.26 snapshot into CVS before adding even
2869        more differences.
2870
2871
28722000-11-29  Bernd Kreimeier  <bk@lokigames.com>     *** MISSIONPACK ***
2873
2874        * RC1: TeamArena_Q3A_RC1.zip. Source has moved from
2875        Q3VERSION "Q3 Team Arena Demo 1.27c" to "Q3 1.27d" now.
2876
2877        * code-sos/qcommon/common.c: added Com_InitPushEvent(). Also
2878        increased MAX_PUSHED_EVENTS to 256.
2879        Note: this is another case of buffer memory not zero'ed.
2880        Com_EventLoop, fixed evTime to evType in debug print.
2881       
2882        * TEST: baseq3/
2883         +set sv_pure 0 +set vm_game 0 +set in_mouse 0 +set developer 2
2884        TODO: Team Arena in menu leads to RE_Shutdown(1) and locks
2885        TODO: can't play game
2886        TODO: shaders can't load *.tga, *.jpg files are there
2887        TODO: DO_CC linking for DLL's, DO_SHLIB_CC only for export?
2888        TODO: ERROR: Bad player movement angle
2889        TODO: Warning: cvar "..." given initial values: "..." and "..."
2890        TODO: TA demo ERROR: CL_ParseServerMessage: Illegible server message
2891        TODO: WARNING: Com_PushEvent overflow
2892
2893        * code-sos/qcommon/files.c: add NULL filter for our Sys_ListFiles calls.
2894        * unix/unix_shared.c (Sys_ListFiles): signature has changed,
2895        additional Sys_ListFiles argument now.
2896
2897        * code-sos/unix/unix_net.c (Sys_GetPacket): see below (readcount=0).
2898        * code-sos/unix/unix_main.c: see below (Mike's and my changes to DLL
2899        loading, my event buffer clear fixes).
2900        * code-sos/unix/linux_qgl.c (QGL_Init): see below (__FX__ guards).
2901        TODO: abstract WGL/GLX and end unfortunate QGL duplication.
2902        TODO: spice up QGL with Linux H2 full version. 
2903        * code-sos/q3_ui/ui_demo2.c: fix on demo names  - no Q_strupr(demoname).
2904        Note: in CVS this fix is in ui/ui_demo2.c. CVS is screwed by
2905        id choosing the old name for new directory...
2906        TODO: manual intervention on "ui goes q3_ui"  in CVSROOT?
2907        * renderer/qgl.h: see below (__FX__ guards).
2908        * qcommon/files.c: migrated in the 1.17cvs changes against the
2909        id000516 code dump, i.e. the (not marked - boo hiss) mkv changes.
2910        Note: all the above is based on a diff of the last id code dump
2911        pre-1.17 against our CVS, with those fixes now migrated into the
2912        sos1.26 snapshot.
2913        TODO: move in joystick code.
2914        TODO: replace XAutoRepeatOn/Off with filter (focus).
2915        TODO: DGA 2.0 and such.
2916       
2917        * code-sos/game/q_shared.c: valid compare for NULL strings
2918        * code-sos/unix/unix_main.c: QRTLD, and now using RTLD_NOW.
2919        Note: it is a bad idea to load game DLL's that are missing symbols.
2920
2921        * code-sos/ui/ui_main.c: see below.
2922        * code-sos/game/g_main.c: see below.
2923        * code-sos/q3_ui/ui_main.c: see below.
2924        * code-sos/cgame/cg_main.c: made cvarTable and cvarTableSize static. This resolved
2925        a segfault related to traversing the UI table during Init.
2926        Note: there is a segfault related to this variable being out of bounds.
2927        Different struct size in global variables possible aliasing between the
2928        DLL's.
2929       
2930        * code-sos/unix/unix_main.c (Sys_Error): assert(0), no exit in debug.
2931        * code-sos/game/q_shared.c: now aborts on NULL destination. Also DPrintf's
2932        on bogus excess copies.
2933        TODO: make all those string functions safe, at least assert.
2934        * code-sos/server/sv_init.c: comment in SV_Init
2935        // init the botlib here because we need the pre-compiler in the UI
2936        Called in qcommon/common.c:Com_Init, were CL_Init is called afterwards...
2937        * code-sos/server/sv_bot.c: the botlib_import is filled here.
2938        * code-sos/unix/unix_main.c (Sys_GetBotLibAPI): RTLD_NOW. Which is for naught,
2939        as this code is not used and has never been used. assert(0)
2940
2941        * code-sos/botlib/be_interface.c: botimport supposed to be set here.
2942        * code-sos/botlib/l_memory.c: segfault with q3_ui/ DLL.
2943        #1  0x80e23ec in GetMemory (size=35) at ..//botlib/l_memory.c:331
2944        331             ptr = botimport.GetMemory(size + sizeof(unsigned long int));
2945        as botimport is completely NULL'ed.
2946
2947        * code-sos/q3_ui/q3_ui.sh: created from ui/ui.sh 1.17
2948
2949        * code-sos/q3_ui/q3_ui.q3asm: unfubared (CR/LF, / path).
2950
2951        * code-sos/unix/Makefile: added q3_ui/ make targets (basically
2952        ui/ targets from CVS 1.17 Makefile for starters).
2953
2954        * code-sos/q3_ui/: this is the old UI code, which does not use
2955        ../ui/menus.txt (see ui/ui_main.c). In other words,
2956        the code in ui/ now has to be compiled or qvm'ed
2957        for missionpack/, but to create the necessary DLL or
2958        QVM modules for baseq3/ we need to use q3_ui/.
2959       
2960       
29612000-11-27  Bernd Kreimeier  <bk@lokigames.com>     *** MISSIONPACK ***
2962
2963        * code-sos/game/bg_lib.c: ld problem with a custom "tan(..)"
2964        TODO: loooking forward to SIGFPE on this code base.
2965       
2966        * code-sos/ui/ui_util.c: this file is empty.
2967
2968        * code-sos/ui/ui.sh: new files:
2969          ui_shared.c
2970          ui_util.c
2971        Replaced by the /ui/*.menu files:
2972         q3lcc: can't find `../ui_cdkey.c'
2973         q3lcc: can't find `../ui_ingame.c'
2974        etc.
2975
2976        * code-sos/cgame/cgame.q3asm: added cg_newdraw entry.
2977        Also added ui_shared entry.
2978        * cgame/cgame.sh: added cg_newdraw.c entry.
2979        Also added ../ui/ui_shared.c entry.
2980
2981        * code-sos/cgame/cg_newdraw.c: renamed (was cg_newDraw.c mixed case).
2982        Note: the infidels have taken over.
2983
2984        * cgame/cgame.sh: added  -DMISSIONPACK.
2985        Note: w/o, q3lcc complains
2986        ../cg_event.c:204: undeclared identifier `cg_singlePlayerActive'
2987        ../cg_event.c:204: left operand of . has incompatible type `int'
2988        which indicates that this source does not compile w/o MISSIONPACK
2989        anymore. The baseq3/pak4.pk3 file in the Q3TA snapshot archives
2990        are dated
2991             284464  11-10-00 14:02   vm/cgame.qvm
2992             463940  11-14-00 14:47   vm/qagame.qvm
2993             271596  11-14-00 14:48   vm/ui.qvm
2994        the code dump is from 11-19.
2995        Note: Make does not abort on q3lcc complains
2996
2997        * code-sos/game/game.sh: also added ai_vcmd.c entry.
2998
2999        * code-sos/ui/ui.q3asm: fubared (below). In addition, this is
3000        the only one to have a
3001         -o "/tmp/quake3/missionpack/vm/ui"
3002        line in it. Given that the other 2 QVM modules are
3003        also dependend on -DMISSIONPACK, this seems a real mess.
3004        For now using the same path as the other 3.
3005        * code-sos/cgame/cgame.q3asm: below.
3006        * code-sos/game/game.q3asm: fubared. Fixed CR/LF and \ in paths
3007        again (read by q3asm called by game.sh called by make).
3008        * unix/Makefile: updated fpor DLL/QVM.
3009        Note: also shell scripts to use q3lcc not lcc.
3010
3011       
30122000-11-27  Bernd Kreimeier  <bk@lokigames.com>
3013
3014        * code/unix/Makefile: now expects a run/ directory
3015        relative (between this, the Loki standards, and the
3016        utility code in the same repository, it's ever so
3017        slightly less dorky).
3018        TODO: fix broken copyfiles target etc.pp.
3019
3020        * code/game/bg_lib.c: turns out the changes I
3021        undid 001120 were affecting original Zoid
3022        Linux port related defines, which break VM
3023        compile. Mike fixed those (which I unfixed
3024        when referring to the latest id code that does
3025        not contain these patches). However, they
3026        duplicate ANSI libc symbols, so the guards might
3027        be wrong. The symbols are missing when compiling
3028        for VM, so I now use the existing lcc -DQ3_VM
3029        flag:
3030          //#if !defined ( _MSC_VER ) && ! defined ( __linux__ )
3031          #if defined ( Q3_VM )
3032        This will break DLL compile on non-ANSI platforms,
3033        which will have to be added to the conditional then.
3034
3035        * code/ui/ui.sh: below.
3036        * code/game/game.sh: below.
3037        * code/cgame/cgame.sh: Linux SDK installs q3lcc to
3038        avoid collisions with regular lcc pre-installs. The
3039        scripts fail with "lcc not found", but do not abort
3040        the Makefile.
3041        Note: now that VM code gets actually built, there
3042        are errors:
3043        g_main:648 ERROR: symbol vsprintf undefined
3044        bg_pmove:1221 ERROR: symbol abs undefined
3045        q_math:4309 ERROR: symbol fabs undefined
3046        q_shared:2801 ERROR: symbol tolower undefined
3047        q_shared:2862 ERROR: symbol toupper undefined
3048        ai_dmq3:208 ERROR: symbol atoi undefined
3049        ai_cmd:4951 ERROR: symbol sscanf undefined
3050
3051
30522000-11-20  Bernd Kreimeier  <bk@lokigames.com>   
3053       
3054        * TEST: test compile of pr-1.17+cvs fixes segfaults due
3055        to new baseq3/pak4.pk3
3056        Note: to self ... 1.17 is not compatible with new files.
3057        Checking into CVS next.
3058
3059        * code/: changes applied by us that are not in id's code base
3060        affect q_shared.c (NULL in Q_stricmp), files.c (FIXME fs_cdpath,
3061        Sys_ConcatenateFileList, ui_demo2.c (demo no tolower on linux).
3062        In unix/ linux_glimp.c (joystick code), qgl.h, linux_qgl.c (__FX__),
3063        unix_main.c (dlopen bug and event buffers), unix_net.c (readcount),
3064        matha.s (assembly warning).
3065
3066        * code/server/sv_client.c (SV_WriteDownloadToClient):
3067        No effective change  on FS_SV_FOpenFileRead call, they reworked
3068        autodownload some more seemingly.
3069
3070        * code/renderer/tr_surface.c: VectorArrayNormalize
3071       
3072        * code/qcommon/qcommon.h: see below.
3073        * code/qcommon/files.c: Com_ReadConfigs removed.
3074        * code/qcommon/common.c: removed Com_ReadConfigs,
3075        textual replacement of body in Com_Init.
3076
3077        * code/mac/mac_net.c: not applied (undone by id)
3078        OTConfiguration *config <> OTConfigurationRef  config
3079
3080        * code/mac/mac_glimp2.c: r_colorbits->integer > 16
3081        * code/game/surfaceflags.h (CONTENTS_BOTCLIP): added.
3082
3083        * code/game/q_shared.h: not applied (undone by id)
3084        #if defined(ppc) || defined(__ppc) || defined(__ppc__)
3085        #define idppc 1
3086        #else
3087        #define idppc 0
3088        #endif
3089
3090        * code/game/q_math.c: added another CPP line to guard
3091        BoxOnPlaneSide, removed WIN32 guard.
3092        TODO: this could be broken code guarded in all current
3093        compiles...
3094
3095        * code/game/bg_lib.c: left Q#_VM guard for typedef cmp_t
3096        Added !defined( __linux__ ) for tolower and atoi.
3097        Note: the changes above relate to the very last code update
3098        from id prior to the 6 month blackout, which were not in
3099        CVS when Michael made his updates. Needed to establish the
3100        baseline for the new patch. Source dump 1.17.00520, against
3101        SOS 1.26w-001119 version.
3102       
31032000-11-20  Bernd Kreimeier  <bk@lokigames.com>       *** MISSIONPACK ***
3104
3105        * TEST: running against the data up to TeamArena_Q3A_001109.zip
3106        Hunk_Clear: reset the hunk ok
3107        Program received signal SIGBUS, Bus error.
3108        "q3dm2", killBots==qtrue
3109        #0  CM_ClearMap () at ..//qcommon/cm_load.c:644
3110        #1  0x80884a7 in SV_Map_f () at ..//server/sv_ccmds.c:159
3111        #2  0x8072579 in Cmd_ExecuteString (text=0xbffff4b0 "spmap q3dm2") at ..//qcommon/cmd.c:591
3112        #3  0x8071dfe in Cbuf_Execute () at ..//qcommon/cmd.c:190
3113        #4  0x80763f7 in Com_Frame () at ..//qcommon/common.c:2547
3114        #5  0x8130d6b in main (argc=13, argv=0xbffff984) at ..//unix/unix_main.c:953
3115        #6  0x40100cb3 in __libc_start_main (main=0x8130bc4 <main>
3116        Not reproducible (screen stayed black).
3117       
3118        * TEST: +set developer 1, same for Win32 and Linux:
3119        Can't find gfx/misc/flare.tga
3120        Can't find gfx/misc/sun.tga
3121        Can't find gfx/misc/console02.tga
3122        Can't find vm/ui.map
3123        Can't find textures/sfx/logo512.tga
3124        Can't find gfx/colors/black.tga
3125        Can't find models/mapobjects/banner/banner5_2.md3
3126        Can't find models/mapobjects/banner/banner5_1.md3
3127        Can't find textures/sfx/firegorre2.tga
3128        Can't find textures/sfx/bolts.tga
3129        Can't find menu/art/unknownmap.tga
3130
3131        * Q3TA: after nearly 6 months, a code update from id. SOS access
3132        even. Got it to compile, link and start, but it's currently broken
3133        (menu doesn't render in full, can't get into game etc.). Need
3134        a baseline 1.17 to diff against. Last code dump was May 16, with
3135        bspc code updated May 19. Checking working directory of bk000520
3136        against CVS next (Mike's fixes never made it into id's codebase
3137        or a post 1.17 release, neither did my fixes as released in the
3138        point release version 1.17).
3139
31402000-11-19  Bernd Kreimeier  <bk@lokigames.com>       *** MISSIONPACK ***
3141
3142        * TEST: Win32 install as tested with 1.26w. quake3.x86 (Q3A game)       
3143        Warning: cvar "r_uifullscreen" given initial values: "1" and "0"
3144        Warning: cvar "r_inGameVideo" given initial values: "1" and "0"
3145        ^3WARNING: sound/feedback/hit.wav is a 8 bit wav file
3146        (on windows, sound/weapons/weapon_hover.wav is missing...)
3147        Menu only partially displayed in TA and baseq3 play, menu itself
3148        seems to work. Freetype?
3149        WARNING: Com_PushEvent overflow
3150
3151        * code-sos/game/game.sh: not in SOS, moved in from CVS snapshot.
3152
3153        * code-sos/qcommon/common.c: conditional DEDICATED to get rid off
3154        CL_ShutdownCGame/CL_ShutdownUI/CIN_CloseAllVideos.
3155        Same for UI_usesUniqueCDKey: dedicated server does not
3156        write CD key file.
3157        TODO: check whether there is an unneeded "read CD key"
3158        for dedicated server.
3159
3160        * code-sos/null/null_client.c (CL_ShutdownAll): added dummy.
3161
3162        * code-sos/unix/Makefile:  server/sv_net_chan.o for dedicated server.
3163
3164        * code-sos/null/null_snddma.c: fixed  S_RegisterSound signature.
3165
3166        * code-sos/client/snd_mix.c: snd_p, snd_linear_count, snd_out
3167        can't be static, as used by unix/snd_mixa.s.
3168
3169        * code-sos/unix/Makefile: added to the executable target:
3170           renderer/tr_font.c
3171           client/cl_net_chan.c
3172           server/sv_net_chan.c
3173        Also added a lot of jc*.c files to build, to fix unresolved
3174        symbol errors.
3175        TODO: is there unused jpeg-6/jd*.o code linked in now?
3176
3177        * code-sos/ft2/smooth.c: includes ftgrays.c, ftsmooth.c
3178       
3179        * code-sos/ft2/truetype.c: ttdriver.c, ttpload.c, ttgload.c, ttobjs.c.
3180        Also (see ftoption.h) TT_CONFIG_OPTION_BYTECODE_INTERPRETER ttinterp.c
3181       
3182        * code-sos/ft2/sfnt.c: includes ttload.c, ttcmap.c, sfobjs.c,
3183        sfdriver.c. lso (see ftoption.h)
3184        TT_CONFIG_OPTION_EMBEDDED_BITMAPS     ttsbit.c
3185        TT_CONFIG_OPTION_POSTSCRIPT_NAMES     ttpost.c
3186
3187        * code-sos/ft2/ftbase.c: includes ftcalc.c, ftobjs.c, ftstream.c,
3188        ftlist.c, ftoutln.c, ftextend.c, ftnames.c.
3189       
3190        * code-sos/ft2/autohint.c: includes ahangles.c, ahglyph.c, ahglobal.c,
3191        ahhint.c, ahmodule.c.
3192
3193        * code-sos/unix/Makefile: added ft2/ to client objects, took out
3194        ftraster.c/ftrend1.c (see below), added -DFT_FLAT_COMPILE.
3195        * ft2/ftsmooth.c: -DFT_FLAT_COMPILE required.
3196        * ft2/raster1.c: -DFT_FLAT_COMPILE required.
3197        Note: this includes ftraster.c/ftrend1.c.
3198
3199        * code-sos/qcommon/vm_x86.c: _ftol is missing, ftolPtr only defined
3200        for Win32, but used in generic code. Workaround for now.
3201        TODO: find good Linux ftol, or use old solution.
3202
3203        * SoS checkout. chown -R a+w *  recode ibmpc:lat1 */*.h */*.c
3204       
32052000-06-30  Michael Vance <briraeos@lokigames.com>
3206
3207        * misc: Spoke with Leonardo about qvm mess.
3208
3209        * ui/ui.sh: Created to build much like the ui.bat script.
3210
3211        * ui/ui.q3asm: Use linux style paths.
3212
3213        * game/game.sh: Created to build much like the game.bat script.
3214
3215        * game/game.q3asm: Use linux style paths.
3216
3217        * cgame/cgame.sh: Created to build much like the cgame.bat script.
3218
3219        * cgame/cgame.q3asm: Use linux systel paths.
3220
3221        * unix/Makefile: Use the new .sh scripts to build the QVM files.
3222
3223        * lcc/etc/linux.c: Build .asm files instead of .s files.
3224
3225        * misc: QVMs now load properly, with minor glitches that should
3226        hopefully be solvable. The new build scripts conflict with the
3227        .asm files already in CVS, as the generated byte code is slightly
3228        different in some cases.
3229       
32302000-06-29  Michael Vance <briareos@lokigames.com>
3231
3232        * lcc/makefile: Tweaked to automatically include the system
3233        compiler's header location. Added an install directory.
3234
3235        * lcc/custom.mk: Added a build directory.
3236
3237        * lcc/etc/linux.c: Numerous small tweaks to make compiling the VM
3238        code a much simpler task.
3239
3240        * q3asm/Makefile: Created.
3241
3242        * q3asm/q3asm.c: Fixed uninitialized variable in
3243        HashString(). Fixed off by one in argument parsing.
3244       
3245        * misc: Had Brian remove the Xmd.h include from glx.h so that we can
3246        build Quake3 on XFree86 4.0 systems.
3247
3248        * wine: Attempted to build with lcc.exe and q3asm.exe using wine,
3249        also did not work. This is in contrast to MikeP's .qvms, which
3250        seem to work.
3251       
32522000-06-28  Michael Vance <briareos@lokigames.com>
3253
3254        * common/files.c: Fixed Mods menu behaviour.
3255
3256        * unix/linux_qgl.c: Guarded references to fxMesa.
3257
3258        * renderer/qgl.h: Guarded references to fxMesa.
3259
3260        * ui/ui_demo2.c: Don't convert filename to uppercase.
3261       
32622000-05-07  Bernd Kreimeier  <bk@lokigames.com>
3263
3264        * common/cmdlib.c: windowism, not guarded. Added WIN32 around "ATOM a".
3265
3266        * q3map/Makefile: Linux Makefile.
3267
3268        * q3map/Makefile.irix: "makefile" in original code, Irix-only Makefile.
3269        Just fixed some redundant TAB that GNU make despises about as much as I
3270        despise GNU Make, and changed to a relative path.
3271
32722000-05-01  Bernd Kreimeier  <bk@lokigames.com>
3273
3274        * q3radiant/: updated with Q3Radiant198b3-src.zip.
3275        Tagged (globally) as q3radiant-198b3.
3276        Kept the old files
3277          3DFXCamWnd.h
3278          3DFXCamWnd.cpp
3279          MainFrm2.cpp
3280        New files
3281          Shaders.h
3282          misc/      (contributed special TGA resources, don't relly belong)
3283        Removed:
3284          pName
3285        Changed filenames to previous case:
3286         UNNAMED.MAP           -> unnamed.map
3287         RES/BMP0002.BMP       -> RES/bmp00002.bmp
3288        Changed:
3289         changelog.txt         -> ChangeLog
3290       
32912000-04-28  Bernd Kreimeier  <bk@lokigames.com>
3292
3293        * CVS: bk000425 modified sources. This replaces the unix/ directory
3294        which is not yet in id's SourceSafe. Two check-ins, due to minor
3295        changes in an attempt to nail the Voodoo3 related crashes (driver
3296        problems, not a Q3 issue). Undid some of the QFL changes for PI
3297        and the log bug fix - put back in (TODO). Also includes:
3298        * Quake3/code/botlib/be_aas_sample.c: single file update from Robert.
3299       
3300        * CVS: id000423 code dumps (two of them). Applying Loki patches.
3301        Tagged for the final version (all patches).
3302
3303        * CVS: id000422 code dump. This did not include the 1.16n fixes
3304        used for Linux, and was the first dump for the 1.17 security fix
3305        release.
3306        Note: forgot to check in the ft2/ headers themselves, but they
3307        are not used in the current codebase anyway. Are added in next
3308        dump. Also there is use of CVS/CVS-like $Keyword$ patterns in
3309        some files, and between their revisions and ours we fuck this up.
3310        Also, id ZIP files create write protected sources, have to do
3311        chmod -R a+w Quake3/ to work and overwrite files.
3312
3313        * CVS: bk000315 modified source. This version was the 1.16n release.
3314        Note: the changes applied here are not in the subsequent code dumps
3315        of id. If you want to compile the Linux version as released you
3316        have to use bk-tagged versions until the patches are merged in by
3317        Robert Duffy.
3318
3319        * CVS: id000314 engine code dump, same procedure as below, tag.
3320        Note: this version added vm/ sudirectories with assembly files
3321        for cgame, game, ui. CVS tag id000314.
3322
3323        * CVS: id000304 engine code dump. Now there is a problem, as CVS
3324        was used in the Mac sources. Do
3325          find . -name 'CVS' -exec rm -r {} \;
3326        before cvs update, then tagged:
3327         cvs -d /loki/cvsroot/ tag id000304 Quake3/
3328
3329        * CVS: checked in a source snapshot of the id00303 engine code
3330        and the id0003029 tools code. The tool sources are not fully in
3331        sync, and we have only partial source from earlier engine revisions.
3332        The engine source marks where Loki took over from Dave Kirsch.
3333        This snapshot (with all temporary and bogus files) is imported
3334        and tagged using:
3335          cvs -d /loki/cvsroot import Quake3 id000303 initial
3336
3337        Modules:
3338          code:      the Q3 engine code, including a jpeg-6/ copy
3339          common:    code shared by tools
3340          libs:      code shared by tools, inlcuding a jpeg6/ copy
3341          q3asm:     VM bytecode assembly
3342          q3data:    misc. Q3 data conversions
3343          q3map:     BSP builder
3344          q3radiant: Win32 editor, as is
3345          lcc:       C compiler for q3asm
3346
3347        The sources have not been cleaned up, and binary files have not been
3348        removed. The Q3Radiant code base might exhibit mixed case asmbiguities
3349        in the future, and future source dumps might come from SourceForge
3350        instead.
3351
33522000-04-25  Bernd Kreimeier  <bk@lokigames.com>
3353
3354        * q3code.id000425/unix/Makefile: relative path, relocatable.
3355        Note: first code merge with id, finally :-).
3356
33572000-04-24  Bernd Kreimeier  <bk@lokigames.com>
3358
3359        * q3code.bk000422/unix/matha.s: in C(BoxOnPlaneSide)
3360        the following line triggers assembler warning:
3361        "missing prefix `*' in absolute indirect address, maybe misassembled!"
3362          jmp Ljmptab(,%eax,4) 
3363       
3364
3365        * q3code.bk000422/unix/Makefile (MOUNT_DIR): rember to change.
3366        TODO: fix this bloody Makefile to be relocatable, damnit.
3367
3368        * q3code.bk000422/cgame/cg_event.c: applied JCash fix again
3369        (see EV_EVENT_BITS below). Send e-mail to verify.
3370
3371        * q3code.bk000422/renderer/tr_image.c: "../jpeg-6/jpeglib.h" again.
3372       
3373        * q3code.bk000422/: created from the id dump of today, lacking
3374        all but one of my changes (sigh). Swapped unix/ competely, takes
3375        care of 90%. Submitted all changes again to Robert...
3376
33772000-04-19  Bernd Kreimeier  <bk@lokigames.com>
3378
3379        * q3code.bk000315/unix/linux_glimp.c (GLimp_EndFrame):
3380        QGL_EnableLogging( r_logFile->value ) doesn't work?
3381
3382        * q3code.bk000315/unix/linux_qgl.c:  GLimp_LogNewFrame() is
3383        obsolete. QGL_EnableLogging was out of sync with Win32 and
3384        did not support the new framecounter decrement logic.
3385
33862000-04-03  Bernd Kreimeier  <bk@lokigames.com>
3387
3388        * q3code.bk000315/server/sv_snapshot.c: svs.nextSnapshotEntities
3389        is a signed integer unconditionally incremented, which gets
3390        negative and causes a segfaulting indexing an array. Added reset
3391        to counter. Might fail if snapshot numbers are supposed to
3392        monotonically increase.
3393
33942000-04-02  Bernd Kreimeier  <bk@lokigames.com>
3395
3396        * q3code.bk000315/client/cl_parse.c (CL_ParseServerMessage):
3397        assert(0) on Illegible message (remember to +set in_mouse 0).
3398        TODO: have to add a dump message function, it's unreadable.
3399
3400        * botlib/be_ai_goal.c (InitLevelItemHeap): loop counter -2
3401        left -2 with uninitialized next, and -1 disconnected. Removed
3402        redundant memset. There is an item alloc leak I suspect, as
3403        max_levelitems 1024 merely delayed the overflow error.
3404
34052000-04-01  Bernd Kreimeier  <bk@lokigames.com>
3406
3407        * botlib/be_ai_goal.c (InitLevelItemHeap): still segfaults.
3408        Not memsetting the entire item heap. As items are cleared
3409        on return, that leaves only memory corruption?
3410        Later: upped max_levelitems from 256 to 1024
3411        Later: client dies on connect:
3412          Error: CL_ParseServerMessage: Illegible server message 255
3413
3414
34152000-03-31  Bernd Kreimeier  <bk@lokigames.com>
3416
3417        * botlib/be_ai_goal.c: initializing global vars.
3418        Segfault in AllocLevelItem ()
3419          at /home/bk/Games/Quake3/q3code/botlib/be_ai_goal.c:364
3420        I suspect that the initial freelevelitems setting is at
3421        the end of the list and eventually exposed.
3422
3423        * cgame/cg_event.c: according to Johmn Cash:
3424         itemNum = (es->event & ~EV_EVENT_BITS) - EV_USE_ITEM0
3425        Quote: "This causes itemNum to be invalid about half the time,
3426        preventing any client side effect tied to the item from occurring."
3427       
34282000-03-06  Bernd Kreimeier  <bk@lokigames.com>
3429
3430        * qcommon/common.c: set pushEvent buffer and indices
3431        to zero in Com_Init().
3432
3433        * q3code/qcommon/qcommon.h: made SE_NONE (and for paranoia
3434        also NA_BOT) explicitely set to zero.
3435
34362000-02-27  Bernd Kreimeier  <bk@lokigames.com>
3437
3438        * unix/Makefile: added dmalloc in an attempt to get on
3439        the Z_Free bug. Futile. Despite stripping dmalloc debug
3440        token down to essentials, I get a (seemingly bogus or
3441        unrelated):
3442          debug-malloc library: dumping program, fatal error
3443          Error: possibly bad .c filename pointer (err 24)
3444
3445       
34462000-02-26  Bernd Kreimeier  <bk@lokigames.com>
3447
3448        * qcommon/common.c: various debug builts to isolate the
3449        Z_Free bug. It reproducibly happens on some machines
3450        with SE_PACKET, but the packets themselves look
3451        thoroughly corrupted.
3452
34532000-02-21  Bernd Kreimeier  <bk@lokigames.com>
3454
3455        * qcommon/common.c (Com_EventLoop): possible problem
3456        here, pointer does not get cleared.
3457
3458        * unix/linux_glimp.c (InitSig): no signal handler.
3459        * common/common.c: dump in Com_Error for debug.
3460
34612000-02-17  Bernd Kreimeier  <bk@lokigames.com>
3462
3463        * q3code: new dump from Zoid. Repeat tr_image.c fix.
3464
3465        * unix/Makefile: added client/snd_adpcm.c (linkage errors).
3466        Later: added entire JPDIR and rules, for tr_image.c.
3467        Later: had to fix fules for game/ai_*.c files.
3468        Later: removed ui/ui_quit.o (n/a)
3469        Later: took out -mpentiumpro -march=pentiumpro
3470
3471        * renderer/tr_image.c: windowism in #include path (see below).
3472         #include "..\jpeg-6\jpeglib.h"
3473
34741999-12-27  Bernd Kreimeier  <bk@lokigames.com>
3475
3476        * Alpha: tried a dedicated server compile. Segfaults in
3477        ../qcommon/files.c:1682, a paksort function doing pointer
3478        fiddling.
3479
3480        * Makefile.alpha: created.
3481        Note: want to take the SDL/Setup autoconf ASAP.
3482
3483        * unix/unix_main.c: fixed __axp__ to __alpha__, guarded
3484        _FPU_SETCW.
3485
3486        * qcommon/vm_alpha.c: dummy, created.
3487        * qcommon/vm_null.c: dummy, created.
3488
34891999-12-04  Bernd Kreimeier  <bk@lokigames.com>
3490
3491        * renderer/tr_image.c: windowism in #include path.
3492         #include "..\jpeg-6\jpeglib.h"
3493       
3494        * Revision 1.11: from Zoid by e-mail.
3495        Note: threw away my playground copy, starting with the
3496        ZIP file. Zoid's using CVS now, but we can't remote
3497        access it. Thus did the
3498         "find . -name 'CVS' -exec rm -rf {} \;"
3499        and then track it as 3rd party source by
3500       
3501
3502        * ChangeLog: created. Now starting to track Q3A source.
3503
3504--------- q3code log ---------------------------------------------
3505>>>>>>> f3e7012... REFACTOR [a vs an]
Note: See TracBrowser for help on using the repository browser.