D1X-Rebirth Changelog 20081119 -------- main/game.c: Actually demand ANY valid key to abort the Death sequence 20081118 -------- main/console.c: When printing Gamelog, make sure canvas is NULL main/newmenu.c, main/multi.c, main/game.c, ui/inputbox.c, ui/menubar.c, arch/sdl/event.c, arch/sdl/key.c, arch/include/key.h: Yet another UNICODE overhaul - Using seperate buffer for UNICODE chars and only use it in key_ascii() while still using keysyms for the rest of the program so we do not screw up readings by key values altered by modifers - possibly still room to optimize main/game.c: Fixed cheats! main/automap.c: Changed keys for Automap Viewing Distance to F9/F10 - Minus/Equal is not Layout independent 20081115 -------- arch/sdl/digi_audio.c: include/error.h, main/console.c, main/inferno.c: Added other SDL_(Un)LockAudio statements to protect the audio_mixcallback function - making that hopefully stable on multicores; Resetting warn_func at quit_request so we do not accidently show any menu; Open gamelog.txt unbuffered 20081114 -------- include/args.h, include/3d.h, include/rle.h, include/rbaudio.h, main/text.c, main/text.h, main/bm.c, main/gamefont.c, main/inferno.c, main/bm.c, main/bmread.c, main/piggy.c, main/render.c, main/render.h, main/songs.c, main/gameseq.c, main/gamerend.c, main/netdrv.c, main/endlevel.c, main/endlevel.h, main/terrain.c, main/terrain.h, main/polyobj.c, main/polyobj.h, main/game.c, main/gauges.c, main/texmerge.c, main/mission.c, main/mission.h, misc/args.c, 2d/rle.c, 3d/setup.c, SConstruct, D1X.make, arch/linux/alsadigi.c, arch/ogl/gr.c, arch/sdl/digi_mixer.c, arch/sdl/joy.c, arch/sdl/init.c, arch/sdl/rbaudio.c, arch/sdl/gr.c, arch/sdl/key.c, arch/sdl/digi_audio.c, arch/include/mouse.h: Using a clean flow for closing game data at the end of main() instead of using atexit; Now only use atexit for SDL stuff, error, mem, console (and editor which we do later); Small Cleanup 20081110 -------- main/credits.c, main/inferno.c, main/menu.c, main/newmenu.c: Small Cleanup: Using timer_delay for credits timer as timer_delay2 would respect VSync and change speed of the Credits scrolling; Cleaned that Start/Join Netgame cases up a bit; Removed the excessive use of atexit in newmenu... more to come misc/error.c: When Error() is called, set Function_mode to FMODE_EXIT... basically to prevent the messagebox would try to render the game in background if the Error would happen while mission loading 20081109 -------- include/args.h, main/inferno.c, main/gamefont.c, main/menu.c, main/game.c, main/gauges.c, main/gauges.h, misc/args.c, d1x.ini, arch/ogl/ogl.c, arch/ogl/gr.c: Always keep aspect scaling (lowest scalar of width and height) for fonts, lines, dots, spheres, reticle and non-Cockpit-/Statusbar-related HUD-elements; Moved the Cockpit alpha decoding to gauges.c and created a seperate bitmap for the alpha fields and create subbitmaps from this one - more memory but this way we do not modify the cockpit bitmap itself 20081107 -------- arch/sdl/key.c: Only read UNICODE values from 31 to 254 to make sure we do not read any non-printable characters and prefer the keysym that way; Added left and right Command Key for MAC Keyboards 20081103 -------- misc/args.c: Fixed Typo main/ai.c, main/collide.c: Made move_towards_segment_center() use move_towards_vector() instead of just changing object position suddenly - smoother; Changed back the robot:controlcen collision back to original - the AI just relies to often on no-damage collisions, especially when our segment suddenly is a controlcen 20081101 -------- main/config.c, main/menu.c, main/newmenu.c, main/piggy.c: Fixed possible overflows in Jukebox Path; Menu GUI improvements: Correct inputbox scaling for font widths, a little performance boost when determinating string-part to show in inputbox, make it possible to flip over from first/last menu entry to last/first even if it's a ScrollBox, Scrolling via Maousebutton now works with delay; Made reading for Piggy data always break up in loops when reached end of file instead of provoking possible error if *data-count < max-data-count* arch/sdl/key.c: Make sure that if we use UNICODE, we always take non-control type chars and - as we only want lowercase letters - convert chars if shift is pressed arch/ogl/ogl.c. main/game.c: I always forget glLineWidth takes previous setting if arg is <1; Made the decodebuffer for cockpit static as the bitmap data pointer points to it 20081031 -------- arch/include/key.h, arch/sdl/key.c, main/game.c, main/kmatrix.c, main/multi.c, main/multi.h, main/newmenu.c, main/scores.c, ui/inputbox.c, main/menubar.c: Always use printable UNICODE characters for the key_handler and included routine to assign key symbols to UNICODE so we get an equivalent of a Key-Released state which we need for the Keyboard buffer; Removed the shifted_ascii_value field from key_props and stored all usable characters in seperate rows; Improves Text input and makes keyboard mapping independent from keyboard layout without breaking any compability arch/ogl/ogl.c: Make glLinewidth depend on screen height, not width (for Widescreen monitors) (commit came with last revision, sorry) 20081030 -------- INSTALL.txt, README.txt: Docs update: Infos about Jukebox over SDL_mixer, SDL_mixer is not experimental anymore, yet another .de->.com change d1x.ini, main/inferno.c: Show debug help screen options in release build as well as some might be actually useful for players main/menu.c: Add a messagebox informing to restart the game if either VSync or 4x Multisampling has been (de)selected 20081029 -------- 2d/font.c, main/gamefont.c, main/gamefont.h, main/menu.c: Scale fonts by float values and filter them if texture filtering is on; Another fix for the code flow in change_res() as the check for minimal custom resolution always failed main/collide.c: Yet another check for collide sounds as FixedStep is not necessarily true if the actual collision happens main/newmenu.c: Cast LINE_SPACING to integer for menu Scrollbox usages - fixing scrolling issues with non-integer-scaled font sizes 20081028 -------- arch/ogl.c, include/gr.h, main/game.c, main/gauges.c, main/gauges.h, main/newmenu.c: Removed hack for Cockpit-window transparencies and added function to decode and add alpha to the bitmap directly (now works in non-OGL as well); Using sub-bitmaps for Cockpit-windows and menu backgrounds; Cleaned old bkg stuff from menu GUI main/game.c, main/manu.c, main/newmenu.c: Fixes for my last revisions: More reliable check for cockpit_decode_alpha, more reliable check is newmenu sub-bitmap needs to be re-created, call gr_set_mode() in change_res() with correct Game_screen_mode INSTALL.txt, README.txt: Docs update: We moved from www.dxx-rebirth.de to www.dxx-rebirth.com! arch/sdl/gr.c, arch/ogl/gr.c, arch/ogl/ogl.c, include/args.h, main/game.c, main/inferno.c, main/menu.c, main/playsave.c, main/playsave.h, misc/args.c: Cleanup: Renderstats; Made PRShot a non-OpenGL-related feature and added to Misc Options; Added command for SDL_ASYNCBLIT to command-line args 20081023 -------- main/multi.c, main/network.c: Fixed handling for multi_quit_game; Always keep setting -1 for ping table entry of current player so just not to use any previous entry 20081022 -------- main/menu.c, main/netdrv_udp.c, main/netdrv_udp.h: Removing reset of Game_screen_mode while change_res Fullscreen toggle (wtf is the point?); Adding a third valid state for UDP peers so we can get more order in handshaking process - should fix problem when two clients join (and shake) simultaniously 20081021 -------- iff/iff.c, main/inferno.c: Fix some gcc 4.0 warnings (-wall flag) 20081020 -------- main/menu.c: resolution 1440x960 to 1440x900 - typo d1x.ini, include/args.h, main/inferno.c, main/menu.c, main/netdrv_udp.c, main/network.c, misc/args.c: Readded -ip_hostaddr optional to the value stored in descent.cfg for automated program starts or whatever; Fix by Locate: Correctly close UDP sockets on Win32; Fix by Locate: Ability to select Secret levels on Multiplayer in D1X again which was broken in r619 20081019 -------- arch/sdl/gr.c, arch/ogl/gr.c, include/gr.h, main/game.c, main/menu.c, main/newmenu.c: Setting Fullscreen toggle setting the GameCfg value at each change, not only in change_res(); Do not allow the toggle while playing since ALT-GR+ENTER could be used as game-keys; Reorganized Resolutions menu to automatically calculate aspect ratio for preset resolutions and making custom fields exclusive 20081016 -------- main/credits.h, main/newmenu.c, main/newmenu.h, main/menu.c, main/playsave.c, main/playsave.h, main/titles.c, main/lighting.c, main/lighting.h, main/wall.c, main/render.c, main/newdemo.c, main/newdemo.h, main/gameseq.c, main/scores.c, main/endlevel.c, main/laser.c, main/game.c, main/kconfig.c, main/kconfig.h, main/credits.c, arch/sdl/mouse.c, arch/include/joy.h: Giving credits function ability to use custom creditfile (again); Made laser-offset for laser exclusive so Prox mines won't go tru doors; Preventing cycling tru cockpit modes while dead, but allowing to load a state; Implemented D2X' lighting code to D1X (faster, better, sexier - weeee); Try to hop over some errors regarding walls/doors in levels instead of using -1 indexes for arrays; Made the briefing text ptr a bit more failsafe in case the file is corrupt/non-standard; Made scores use the menu screen even in GAME OVER; Fixed bug in neighbour fields of Weapon Keys table; Added the Weapon Keys stuff to TABLE_CREATION; Fixed bug where D2X did not recall applied resolution in the resolutions menu; Simpler check to create DEMO_DIR; Seperated X/Y sensitivity for mouse and joystick; Flush controls when Automap toggles so keypress won't deactivate it again; Made FrameCount in Demos aligned to the Dropframe condition; Added KEy to ttoggle playback text off; Gracefully exit demo code if demo is corrupt; Removed that new percent counter because many old demos seem to have corrupted last frames; Closing endlevel data file if IFF error so the mission still can be freed; Fixed Cruising for keyboard which was not aligned to FPS correctly; Used mouse delta scaling in kconfig.c instead of mouse.c to not screw up when delta is requested in non-ingame situations - it actually belongs to the controls IMHO; Now support up to 8 joysticks; Changed some leftover malloc's to d_malloc and free to d_free 20081004 -------- d1x-rebirth.xcodeproj, arch/carbon/conf.h, tracker/client/tracker_client.c: Keep Xcode project up-to-date, look in 'SDL' directory for SDL.h main/paging.c: Page in overriding robot textures, like D2X-Rebirth 20081001 -------- main/physics.c: Update object segment after object position interpolation. This is always done in DEBUG, but not in RELEASE, where further movement would break at segment check 20080930 -------- main/console.c, main/collide.c, main/mglobal.c, main/multi.c, main/inferno.c, main/physics.c, main/aipath.c, main/render.c, main/fuelcen.c, main/ai.c, main/game.c, main/game.h, SConstruct, d1x.ini, maths/vecmat.c, arch/sdl/timer.c, arch/sdl/mouse.c, arch/sdl/digi.c, arch/sdl/digi_audio.c, arch/include/mouse.h: Added new function to calculate common timesteps; Increased MAXIMUM_FPS to 200 for release and 1000 for debug; Used fixed sim_time for do_physics_sim and Interpolating to ensure collisions stay accurate at high FPS; New code and faster code for dot products by The_Lion; Disabled Nice-FPS and common Frame-Loop if VSync is active; More accurate delta timer for mouse (consider overhead); Added SDL_(Un)LockAudio for old SDL Audio interface; General support for up to 16 mouse buttons; Code cleanup; Made some AI movement and Player shaking FPS-independent 20080818 -------- misc/dl_list.c, include/dl_list.h: Added dl_size(dl_list const *) and some minor const correctness. tracker/Protocol.txt: More thought on tracker protocol. tracker/{server/tracker_server.c, client/tracker_client.c}: More work on tracker code base. 20080812 -------- tracker/Protocol.txt: More thought on tracker protocol. tracker/{server/tracker_server.c, client/tracker_client.c}: More work on tracker code base. 20080810 -------- include/tracker/{tracker.h, Protocol.txt, client/tracker_client.c, server/tracker_server.c}: More work on tracker. SConstruct: Added PROGRAM_NAME to list of CPPDEFINES. Needed for tracker protocol's useragent submission. 20080727 -------- 2d/pcx.c: Fixed a compiler warning main/newdemo.c: Added some notes regarding a compiler warning raised here 20080726 -------- main/{console.c, wall.h, powerup.h, robot.h}: Fixed harmless warnings on no new line at end of source main/{config.c, config.h, menu.c, include/tracker/tracker.h, tracker/client/tracker_client.c: Added beginnings of game tracker feature. Available only in debug mode for now. SConstruct: Cleaned up build system a bit with prettier build messages, added a feature or two, and included tracker source 20080726 -------- d1x-rebirth.xcodeproj, main/netpkt.c, main/netpkt.h: Make network endian code more consistent with D2X, use PUT/GET_INTEL macros more, remove redundant no_cpp_precomp macro 20080720 -------- include/netdrv.h, main/netdrv_udp.c, main/netdrv_udp.h, main/netdrv.c, arch/linux/netdrv_ipx.c, arch/linux/netdrv_kali.c, arch/win32/netdrv_ipx.c: Fixed IPX default socket (typo); Using function pointer for IPX-based sockets instead of globals 20080715 -------- 2d/pcx.c, include/pcx.h, main/game.c, main/titles.c, main/titles.h: Add BALDGUY cheat for Mac data (see if anyone finds it ;-) ) 20080701 -------- arch/carbon/conf.h, D1X.make, d1x-Info.plist, d1xgl-Info.plist, d1x-rebirth.xcodeproj, English.lproj/InfoPlist.strings: Increment version number for Mac, update MPW makefile, ensure Get Info strings copy to bundle, use correct Mac OS X SDKs include/strutil.h, misc/strutil.c: Add snprintf for Mac OS 9 main/songs.c: Make sure the right audio CD track is played when starting a level include/physfsx.h, main/config.c: No using chdir for Mac OS 9 - it doesn't have it 20080617 -------- main/songs.c: start at track 1 and continue playing audio CD if it's not the original Mac one (this is how it worked before) 20080615 -------- main/gameseq.c, main/mission.c, main/newdemo.c, main/scores.c: Fixed scores write (wasn't PhysFS); Fixed PLAYING_BUILTING_MISSION in D1X; Better call for DoJasonInterpolate in demo code (hopefully) arch/sdl/digi_mixer.c, arch/sdl/rbaudio.c, include/inferno.h, include/rbaudio.h, main/game.c, main/songs.c: tidy up music keys, ALT-SHIFT-F9 ejects audio CDs 20080612 -------- README.txt, main/collide.c, main/multi.c, main/netdrv_udp.c, main/network.c, main/state.c: Improved Player relay for Endlevel status; Fixed leaving when UDP hosts leaves; Fixed multi_frame_calling while demos since demos can be Game_mode & GM_MULTI; Re-added lost collision fix between robots and reactor; Made state_defaut_item static so selected state slot stays selected arch/sdl/digi_mixer.c: Setting GameArg.SndNoSound to true if SDL_mixer init fails 20080605 -------- INSTALL.txt, arch/sdl/digi_mixer.c, arch/sdl/jukebox.c: Small doc update; Improved SDL_mixer / Jukebox handling if no resource (sound) is available 20080604 -------- main/newmenu.c, main/network.c, main/menu.c, main/menu.h, main/playsave.c, main/titles.c, main/kmatrix.c, main/scores.c, main/game.c, main/gauges.c, main/kconfig.c, main/credits.c, arch/sdl/digi_mixer_music.c, arch/sdl/jukebox.c, arch/include/jukebox.h: Generally increasing Menu rendering from 20 to 50 FPS; Allowed Fullscreen toggle in Pause menu and correctly releasing mouse; Fixed broken Death sequence timer; Fixed incorrect data offset for UDP player relay; Fixed crash in Multiplayer summary; Reworked player loading a little bit, making sure kconfig controls are all set; Some small Status bar correction; Implemented real Pause/Reume for Jukebox via SDL_mixer 20080602 -------- main/inferno.c: Added d1xrdata.zip for custom data arch/sdl/jukebox.c: Only stop music at jukebox_stop() if MIDI jukebox_loaded - otherwise user can stop Jukebox with keys but not start it again 20080601 -------- include/args.h, main/inferno.c, main/hud.c, main/game.c, main/gamecntl.c, misc/args.c, d2x.ini, README.txt, arch/sdl/digi_mixer.c, arch/sdl/digi_mixer_music.c, arch/sdl/digi_audio.c, arch/win32/include/hmpfile.h, arch/win32/hmpfile.c: Using Windows code to play HMP files on Windows build; Fixed Jukebox keys in help screen; Allow -noredundancy in Singleplayer; Fixed processing of Console keys if Console is not active; Added Multiplayer hints to README; Made INI wrapping safer and more accurate 20080528 -------- arch/sdl/rbaudio.c, main/songs.c: allow an audio CD to be played if it's inserted after D1X is launched, hopefully find the first audio CD if multiple CDs are inserted 20080525 -------- arch/sdl/digi_mixer.c, arch/sdl/jukebox.c, main/kconfig.c, main/morph.h: Set sound distance to 0 for HUD sound taunts; Making Jukebox not crash if -nosound is enabled (should stop Jukebox since no digi system enabled); Lowered mouse axis speed a bit again; Increasing MAX_VECS to 5000 20080524 -------- arch/sdl/jukebox.c, arch/sdl/rbaudio.c, d1x-rebirth.xcodeproj, include/rbaudio.h, main/automap.c, main/config.c, main/config.h, main/credits.c, main/game.c, main/kconfig.c, main/kmatrix.c, main/menu.c, main/network.c, main/newmenu.c, main/scores.c, main/songs.c, main/songs.h, SConstruct: Add audio CD support to D1X, fix associated bugs 20080522 -------- main/menu.c: Added a new set of preset resolutions 20080521 -------- arch/ogl/gr.c, arch/sdl/mouse.c, main/game.h: Implmented filtered mouse delta reading SConstruct, INSTALL.txt, README.txt: Updated docs 20080520 -------- main/kconfig.c: Decreasing divisor for mouse axis reading - making mouse sensitivity practically much higher 20080519 -------- main/mission.c, main/mission.h: Added support for another registered D1 HOG with different patching order... damn you PARALLAX! d1x.ini, arch/sdl/digi_mixer.c, include/args.h, main/gamefont.c, main/inferno.c, misc/args.c: Added -nomusic ability for SDL_mixer API; Added -gl_fontfixwidth to scale fonts with fixed aspect on widescreen resolutions, scaled to height 20080518 -------- include/physfsx.h, main/config.c: set "Jukebox" as the default jukebox path, for Mac OS 9 look for d1x.ini outside the app bundle main/game.c, main/songs.c: Reworked keys for song changing a bit; Added Song control keys to help menu 20080516 -------- main/multi.c, main/multibot.c, main/netpkt.c, main/network.c: fix remaining endian bugs in network code, now it works on the Mac d1x.ini, include/args.h, main/config.c, main/config.h, main/inferno.c, main/menu.c, misc/args.c: remember the last IP address entered for UDP instead of parsing -ip_hostaddr 20080510 -------- main/playsave.c: use atoi instead of sscanf for plx reading, so the setting for showing the reticle is read properly on big endian computers 20080508 -------- main/newmenu.c, main/render.c, arch/sdl/key.c, arch/include/key.h: Some code improvements and small fixes 20080507 -------- include/args.h, main/newmenu.c, main/multi.c, main/multi.h, main/inferno.c, main/menu.c, main/netdrv_udp.c, main/game.c, misc/args.c, d1x.ini, ui/inputbox.c, ui/menubar.c, arch/sdl/digi_mixer.c, arch/sdl/jukebox.c, arch/sdl/key.c, arch/include/jukebox.h, arch/include/key.h: Return unicode characters in key_to_ascii for non-EN keyboard layouts; Fixed sound menu issue if not compiled with SDL_mixer; switched -ip_norelay to -ip_relay since it's not tested enough; Renamed jukebox_free() to jukebox_unload() to stay with naming-convention 20080502 -------- include/args.h, main/inferno.c, main/menu.c, main/songs.c, main/config.c, main/config.h, main/game.c, misc/args.c, SConstruct, d1x.ini, arch/ogl/gr.c, arch/sdl/digi_mixer.c, arch/sdl/digi_mixer_music.c, arch/sdl/jukebox.c, arch/win32/hmpfile.c, arch/include/jukebox.h: Extended Jukebox capabilities for looping and continous playing and added jukebox_free() which allows calling jukebox_load() being able to load a new directory; Added Jukebox options to sound options menu; Removed loop hack for Windows MIDI playback; SDL_mixer implementation can now be used for Windows build as well 20080427 -------- main/console.c: make sure it doesn't try to write to gamelog.txt after it's closed 20080424 -------- arch/sdl/digi_mixer.c, D1X.make, iff/iff.c, include/args.h, include/ogl_init.h, include/u_dpmi.h, main/ai.c, main/bmread.c, main/config.h, main/game.c, main/gamesave.c, main/gameseq.c, main/hash.c, main/inferno.c, main/menu.c, main/newdemo.c, main/newmenu.c, main/piggy.c, main/playsave.c, main/playsave.h, main/state.c, main/titles.c, misc/args.c, texmap/tmapppc.a: get it to work for Mac OS 9 20080422 -------- arch/ogl/gr.c, arch/sdl/gr.c, include/gr.h, main/config.c, main/config.h, main/menu.c: Added function gr_set_attributes to change Options like Texture Filtering and SDL_GL attributes while runtime (if supported); Added 4x Multisample support 20080421 -------- main/console.c, main/custom.c, main/inferno.c, main/menu.c, main/gamesave.c, main/config.c, main/config.h, main/game.c, misc/args.c, d1x.ini, arch/ogl/gr.c, arch/sdl/timer.c, arch/win32/netdrv_ipx.c: Reworked timer_delay2() and calc_frame_time() to be more accurate and CPU-friendly; -nicefps replayced by -nonicefps to disable sleeping for calc_frame_time; Implemented VSync via SDL; Fixed compilation issues; Code cleanup main/console.c: Hack to force DOS-style newlines for _WIN32 in gamelog.txt 20080419 -------- include/ogl_init.h, include/gr.h, include/strutil.h, include/internal.h, main/network.c, main/menu.c, main/game.c, d1x-rebirth.xcodeproj/project.pbxproj, SConstruct, arch/ogl/ogl.c, arch/ogl/gr.c, arch/sdl/joy.c, arch/sdl/gr.c, arch/carbon/conf.h: Made joy_flush also resetting button state; Improved glReticle; Implemented Fallback resolution if SDL may fail; Code cleanup 20080414 -------- main/network.c: fix network bug where it got confused about the Function_mode and gave up 20080413 -------- include/args.h, main/newmenu.c, main/collide.h, main/network.c, main/multi.c, main/multi.h, main/inferno.c, main/menu.c, main/menu.h, main/playsave.c, main/playsave.h, main/object.c, main/hud.c, main/weapon.c, main/hostage.c, main/newdemo.c, main/config.c, main/gameseq.c, main/endlevel.c, main/ai.h, main/game.c, main/gauges.c, main/game.h, main/kconfig.c, main/kconfig.h, misc/args.c, d1x.ini, arch/ogl/ogl.c, arch/ogl/gr.c, arch/sdl/joy.c, arch/include/joy.h: Added structure for values saved in PLR/PLX files; Added most common command-line options to options menu main/laser.c, main/menu.c, main/playsave.c: Reverted homers turn_radius again to respect higher difficulty levels; Added PRShot to menus; Fixed typo in OglAlphaEffects saving main/cntrlcen.c, main/collide.c, main/hudmsg.h, main/object.c, main/physics.c: Fixing collision bugs; Cleaning hudmsg.h; Solving death sequence timer without GameTime and removed another global 20080408 -------- d1x-rebirth.xcodeproj, include/cfile.h, main/bmread.c, main/inferno.c, main/newmenu.c, misc/error.c, ui/gadget.c, ui/window.c: show a messagebox if there's an error and graphics are initialised, update Xcode project 20080406 -------- d1x.ini, SConstruct, main/config.c, main/config.h, main/console.c, main/console.h + various: Implemented Console-style game logging system to print graphics, to stdout and gamelog.txt; Added structure to keep values for descent.cfg; Added aspect and Texture Filtering to descent.cfg; Removed mono code - printing important stuff over console; Removed some obsolete or very common defines; Code cleanup and small fixes 20080402 -------- main/automap.c, main/gamefont.c, main/gamefont.h, main/inferno.c, main/inferno.h: fix up the Mac data automap layout 20080331 -------- main/songs.c: fix divide by 0 bug when there is no music available 20080330 -------- main/piggy.c: add support for Mac demo sounds 20080327 -------- d1x-rebirth.xcodeproj, main/bmread.c, main/piggy.c: add support for Mac sounds (converted to RAW format), update Xcode project 20080325 -------- include/loadgl.h, main/credits.c, main/gameseq.c, main/inferno.c, main/inferno.h, main/kmatrix.c, main/menu.h, main/mglobal.c, main/newmenu.c, main/playsave.c, main/titles.c: Added definitions for OpenGL fucntions which might not be included in system headers; Use more HiRes content from dxx.zip; Removed briefings palette hacks; Menu right border shadow was too wide; Corrected reading for some PLX content which seemed not to work on all archs 20080323 -------- arch/sdl/digi.c, arch/sdl/digi.h, arch/sdl/digi_mixer.c, arch/sdl/digi_mixer.h, arch/sdl/digi_mixer_music.c, arch/sdl/digi_mixer_music.h, include/strutil.h, main/songs.c, misc/strutil.c: detect the number of songs actually available if no descent.sng file (max 22) SConstruct, main/game.c, main/gameseq.c, main/kconfig.c, main/laser.c, main/menu.c, main/newmenu.c, main/playsave.c, main/powerup.c, main/weapon.c: Implemented D2X code for wepaon cycling and reordering; Added lock status for mouse axis weapon cycling because of scaled mouse delta; Due to player feedback (any my opinion) making homer turn rate smaller to make them a bit harder to dodge; Preventing write of player data while Demo playback; Small code cleanup and corrections 20080322 -------- d1x-rebirth.xcodeproj, INSTALL.txt, SConstruct: make compile instructions clearer for Windows and Mac users, for Mac OS X don't use Sharepath when using SConstruct, handle warnings differently in Xcode main/gamefont.c, main/mission.h: scale Mac fonts correctly 20080321 -------- 2d/palette.c, arch/ogl/gr.c, arch/ogl/ogl.c, arch/sdl/gr.c, include/gr.h, include/palette.h, main/automap.c, main/automap.h, main/credits.c, main/endlevel.c, main/game.c, main/gameseq.c, main/inferno.c, main/kconfig.c, main/kmatrix.c, main/menu.c, main/network.c, main/newmenu.c, main/paging.c, main/scores.c, main/switch.c, main/titles.c, ui/window.c: Simplification of palette code; Properly screen clearing in SDL-only build when palette changes; Removed obsolete functions like gr_update (replaced by gr_flip), gr_palette_fade_in/out, gr_palette_clear; Added functionality to render Automap while menu display as well; Improved blocking of some controls code while Automap active; Fixed some compiler warnings include/physfsx.h: allow d1x.ini to stay with the binary for *NIX systems, with Mac OS 9 don't put user-created files inside the .app bundle 20080316 -------- 2d/bitblt.c, 2d/rle.c, arch/ogl/ogl.c, include/gr.h, include/rle.h, main/game.c, main/gauges.c, main/gauges.h, main/inferno.c, main/piggy.c, main/piggy.h, main/titles.c: add support for Mac pigfile (which doesn't include sounds yet) 20080314 -------- main/network.c: add prototype for show_game_stats to remove warning d1x-rebirth.xcodeproj: update sourcefile list in Mac Xcode project file 20080313 -------- main/render.c: fix potential bug where show_reticle parameters mismatch 20080308 -------- main/aipath.c, main/collide.c, main/fvi.c, main/game.c, main/gauges.c, main/mission.c, main/netdrv.c, main/newdemo.c, main/newdemo.h, main/newmenu.c, main/object.c: Fixed some memory issues; Fixed some HUD element alignment; Only send NetDrv packets if NetDrvInstalled is true; Fixed demo glitches; Actually using Game_mode in demos to make Newdemo_game_mode hacking obsolete main/game.c: Handle Multi message input before HandleDeathKey to chat while dead 20080228 -------- 2d/font.c, arch/ogl/gr.c, arch/ogl/ogl.c, main/game.c, main/game.h, main/gameseq.c, main/gauges.c, main/hud.c, main/mission.c, main/network.c, main/newmenu.c, main/paging.c, main/state.c: Fixed wrong font width spacing, -gl_prshot, mission loading, null-terminatinon in several menus, cockpit glitch; Improved gl_reticle, -noredundancy; Some code cleanup 20080224 -------- main/newdemo.c: make sure the right error message is shown if it can't open a demo include/args.h, include/gr.h, main/newmenu.c, main/newmenu.h, main/network.c, main/multi.c, main/inferno.c, main/gamefont.c, main/menu.c, main/gamefont.h, main/netdrv_udp.c, main/playsave.c, main/titles.c, main/kmatrix.c, main/controls.c, main/paging.c, main/hud.c, main/state.c, main/reorder.c, main/slew.c, main/gameseq.c, main/scores.c, main/automap.c, main/game.c, main/gauges.c, main/game.h, main/kconfig.c, main/credits.c, misc/args.c, 2d/font.c, SConstruct, d1x.ini, arch/ogl/ogl.c, arch/ogl/gr.c, arch/sdl/gr.c: Reworked fonts routines - makes easier to expand and scale correctly; Reworked menus with better border scaling, improved rendering and cleanups; Improved font priniting ingame, better alignment; Reworked Netgame list; Real Doublebuffering in SDL-mode; Removed old and unused sources main/playsave: Fixed error in writing PLR-file since PHYSFS_close returns non-zero in success instead of zero like fclose 20080221 -------- main/inferno.c, main/newmenu.c, main/titles.c: add support for Macintosh splash screens and menu backgrounds in descent.hog, but not fonts (yet) 20080217 -------- d1x-rebirth.xcodeproj, main/game.c, main/newmenu.c: get SDL Video build to work again misc/hmp2mid.c: don't try and free mid_track_buf if it isn't allocated, if midi conversion doesn't work 20080213 -------- main/piggy.c, main/piggy.h: fix undefined function warning with piggy_read_sounds (whoops) iff/iff.c: remove redundant iff functions 20080212 -------- main/endlevel.c: make sure a briefing isn't interpreted as an endlevel sequence file, preventing an in-game warning 20080211 -------- d1x-rebirth.xcodeproj, include/strutil.h, main/bm.c, main/bm.h, main/bmread.c, main/digiobj.c, main/inferno.c, main/piggy.c, main/piggy.h, main/polyobj.c, main/songs.c, main/text.c, main/text.h, misc/strutil.c, SConstruct: support PC shareware files in full version build, make game data loading code easier to follow 20080129 -------- SConstruct, arch/include/digi_audio.h, arch/include/digi_mixer.h, arch/include/digi_mixer_music.h, arch/include/event.h, arch/include/joy.h, arch/include/joystick.h, arch/include/jukebox.h, arch/include/key.h, arch/include/mouse.h, arch/linux/include/music.h, arch/ogl/gr.c, arch/ogl/ogl.c, arch/ogl/sdlgl.c, arch/sdl/mouse.c, include/internal.h, include/loadgl.h, include/ogl_init.h, main/kconfig.c: Cleanung up arch/ a little bit; Added mouse delta time interval for more more accurate reading at high FPS SConstruct, main/netdrv_udp.c, main/netdrv_udp.h, main/newmenu.c: Renaming udp.* to netdrv_udp.c to fit naming convention; Small menu ui fixes 20080126 -------- arch/sdl/digi_mixer_music.c: allow custom MIDI in add-on hogs to be used without caching everything 20080125 -------- main/collide.c, main/custom.c, main/kconfig.h, main/newdemo.c, main/powerup.c: Fixed small compiling issues 20080124 -------- INSTALL.txt, main/game.c, main/mission.h, main/network.c: Updated Docs - Data files must be lowercase; Fixed small Multiplayer issues 20080123 -------- d1x.ini, INSTALL.txt, SConstruct, 2d/font.c, 2d/canvas.c, 2d/bitmap.c, 2d/rle.c, 2d/pcx.c, arch/linux/hmiplay.c, arch/ogl/ogl.c, arch/ogl/gr.c, arch/sdl/digi_mixer_music.c, arch/sdl/joy.c, arch/sdl/include/digi_mixer_music.h, arch/sdl/jukebox.c, arch/sdl/gr.c, arch/win32/hmpfile.c, editor/macro.c, editor/medsel.c, editor/med.c, editor/autosave.c, iff/iff.c, include/args.h, include/hmp2mid.h, include/pstypes.h, include/ignorecase.h, include/cfile.h, include/error.h, include/strio.h, include/u_mem.h, include/physfsx.h, main/gameseg.c, main/custom.c, main/newmenu.c, main/fvi.c, main/text.c, main/network.c, main/text.h, main/multi.c, main/multi.h, main/inferno.c, main/gamefont.c, main/menu.c, main/inferno.h, main/playsave.c, main/titles.c, main/titles.h, main/bmread.c, main/piggy.c, main/render.c, main/state.c, main/gamesave.c, main/newdemo.c, main/config.c, main/gameseq.c, main/hash.c, main/gameseq.h, main/altsound.c, main/ai.c, main/scores.c, main/endlevel.c, main/terrain.c, main/polyobj.c, main/game.c, main/mission.c, main/mission.h, main/credits.c, mem/mem.c, misc/ignorecase.c, misc/hmp2mid.c, misc/strio.c, misc/error.c, misc/dl_list.c, misc/args.c, ui/radio.c, ui/menu.c, ui/window.c, ui/inputbox.c, ui/keypad.c, ui/file.c, ui/checkbox.c, ui/menubar.c, ui/lfile.c, ui/gadget.c: Implemented PhysFS support; Implemended D2X memory functions; Code cleanups 2d/clip.h, 2d/line.c: fix name conflict 'FSCALE' on Mac OS X d1x-rebirth.xcodeproj: add Xcode 2.2 project for Mac OS X 20080113 -------- main/network.c: fix typo causing compiler error on bigendian computers 2d/font.c, 2d/pcx.c, 3d/interp.c, cfile/cfile.c, include/cfile.h, include/pstypes.h, main/bm.c, main/cntrlcen.c, main/cntrlcen.h, main/custom.c, main/custom.h, main/effects.c, main/effects.h, main/fuelcen.c, main/fuelcen.h, main/gamemine.c, main/gamesave.c, main/loadrl2.c, main/newdemo.c, main/piggy.c, main/piggy.h, main/playsave.c, main/polyobj.c, main/powerup.c, main/powerup.h, main/robot.c, main/robot.h, main/scores.c, main/switch.c, main/switch.h, main/vclip.c, main/vclip.h, main/wall.c, main/wall.h, main/weapon.c, main/weapon.h: complete bigendian support, without touching network code 2d/font.c: make special characters print for platforms where a char is signed by default arch/ogl/gr.c, arch/ogl/include/ogl_init.h, arch/ogl/sdlgl.c, include/args.h, main/args.c, main/inferno.c, main/menu.c, main/newdemo.c: Removed SDL Gammaramp code (obsolete); Improvements on Demo code include/pstypes.h, include/strutil.h, main/fuelcen.c, main/fuelcen.h, main/gamemine.c, main/gamesave.c, main/gamesave.h, main/gameseq.h, main/inferno.h, main/loadrdl.h, main/loadrl2.c, misc/strutil.c, SConstruct: merge loadrl2.c into gamemine.c and gamesave.c 20080110 -------- arch/sdl/jukebox.c, arch/sdl/include/jukebox.h, arch/sdl/digi_mixer_music.c; fixed looping jukebox music when it shouldn't (at end of level) 20080108 -------- SConstruct, 2d/font.c, include/args.h, include/byteswap.h, include/netdrv.h, main/args.c, main/gameseq.c, main/gameseg.c, main/menu.c, main/multi.c, main/multi.h, main/multibot.c, main/netdrv.c, main/netlist.c, main/netpkt.c, main/netpkt.h, main/network.c, main/network.h, main/newdemo.c, main/object.h, main/udp.c: Added BigEndian-related multiplayer/network code (unfinished); Re-Added IPX Socket option to Host menu for IPX games; Removed ForceVersionCheck global - conditions with driver->type; Merged netmisc.* and netpkt.*; Handling host disconnect for UDP games in network.c main/menu.c, main/newmenu.c, main/newmenu.h: Safe timer rollover in menu idle-demo function; Reintroduced menu shortcuts; Implemented support for menu scrolling if nitems > 15 20080103 -------- 2d/bitmap.c, 2d/font.c, arch/carbon/conf.h, arch/ogl/gr.c, arch/ogl/include/ogl_init.h, arch/sdl/digi_mixer_music.c, arch/sdl/include/music.h, arch/sdl/jukebox.c, iff/iff.c, include/d_glob.h, include/d_io.h, include/error.h, include/pstypes.h, include/strutil.h, include/u_mem.h, main/args.c, main/game.c, main/gameseq.c, main/inferno.c, main/newdemo.c, misc/d_glob.c, misc/strutil.c, SConstruct, texmap/scanline.c: get D1X to build for Mac OS X, conditionals for Mac OS 9 20080102 -------- 2d/ibitblt.c, 2d/palette.c, arch/linux/joystick.c, arch/linux/linuxnet.c, arch/sdl/digi.c, arch/sdl/digi_audio.c, arch/sdl/digi_mixer.c, arch/sdl/include/joy.h, arch/sdl/include/key.h, arch/sdl/include/mouse.h, arch/sdl/joydefs.c, arch/win32/include/joy.h, arch/win32/include/mouse.h, arch/win32/winnet.c, cfile/cfile.c, include/compare.h, include/gr.h, include/iff.h, include/ipx_drv.h, include/maths.h, include/pstypes.h, include/rle.h, include/timer.h, include/u_dpmi.h, main/altsound.c, main/bm.c, main/bmread.c, main/config.c, main/console.c, main/credits.c, main/custom.c, main/d_conv.c, main/digi.h, main/gameseg.h, main/ipx_drv.c, main/kconfig.c, main/kconfig.h, main/kmatrix.c, main/loadrdl.h, main/multi.c, main/netlist.c, main/netmisc.c, main/netpkt.c, main/network.c, main/newmenu.c, main/object.h, main/piggy.c, main/scores.c, main/segment.h, main/songs.c, main/titles.c, mem/mem.c, ui/button.c, ui/checkbox.c, ui/file.c, ui/gadget.c, ui/icon.c, ui/inputbox.c, ui/keypad.c, ui/keypress.c, ui/keytrap.c, ui/lfile.c, ui/listbox.c, ui/menu.c, ui/menubar.c, ui/message.c, ui/mouse.c, ui/popup.c, ui/radio.c, ui/scroll.c, ui/ui.c, ui/uidraw.c, ui/userbox.c, ui/window.c: rename types.h to pstypes.h to avoid name conflict with Mac OS 9's MrC (it doesn't respect the difference between project and system headers) SConstruct, arch/linux/netdrv_ipx.c, arch/linux/netdrv_kali.c, arch/ogl/ogl_init.h, arch/win32/netdrv_ipx.c, main/inferno.c, main/menu.c, main/mission.h, main/netdrv.c, main/netdrv.h, main/netlist.c, main/netpkt.c main/netpkt.h, main/network.c, main/udp.c, main/udp.h: Cleaned/Rewritten/Renamed lower level network layer to make it (look) less IPX-oriented 20080101 -------- arch/carbon/conf.h, arch/carbon/descent.r, arch/carbon/SDL_main.c, arch/cocoa/d1x-rebirth.icns, arch/cocoa/SDLMain.h, arch/cocoa/SDLMain.m, arch/cocoa/tool_bundle.py, d1x-Info.plist, d1xgl-Info.plist, English.lproj/InfoPlist.strings: add Mac source files 20071229 -------- arch/sdl/digi.c, main/ai.c, main/game.h, main/gameseq.c, main/inferno.c, main/laser.c, main/laser.h, main/menu.c, main/multi.c, main/multi.h, main/multibot.c, main/multibot.h, main/object.c, main/object.h, main/physics.c, main/titles.c, main/wall.c: Code cleanup - old/unused/obsolete multiplayer code and more 20071223 -------- include/ipx.h, main/credits.c, main/inferno.c, main/laser.c, main/network.c, main/network.h, main/piggy.c, main/powerup.c: Fixed compiler error because of removed header file; Removed struct network_d1xplayer_info - obsolete; Allocated memory for all sequence_packet's; Moved piggy_close() and sdl_close() to end of main() - replacing atexit; Rendering credits with timer_delay2 at constant 25FPS and save CPU; Fixed -playermessages 20071217 -------- d1x.ini, SConstruct, arch/linux/ipx_bsd.c, arch/linux/ipx_kali.c, arch/linux/linuxnet.c, arch/win32/ipx_win.c, arch/win32/winnet.c, include/args.h, include/ipx_drv.h, main/args.c, main/inferno.c, main/ipx_drv.c, main/kconfig.c, main/menu.c, main/netlist.c, main/network.c, main/network.h, main/scores.c, main/udp.c, main/udp.h: Implemented new UDP/IP interface with Server-Relay (for firewalled users) and IPv6 compability; Fixed memory issues; If arguments -gl_mipmap and -gl_trilinear used both, always select -gl_trilinear 20071124 -------- main/hud.c: Fixed new redundancy HUD messages check - made it more strictly 20071123 -------- main/aipath.c, main/fireball.c, main/titles.c: Fixed some memory problems; Adjusted timer_delay2 for robot briefings 20071121 -------- arch/sdl/key.c, arch/sdl/timer.c, include/timer.h, main/game.c, main/kconfig.c, main/kmatrix.c, main/netlist.c, main/newmenu.c, main/scores.c, main/titles.c: Introduced timer_delay2 as replacement for timer_delay to sleep according to given FPS rate considering calc time between frames 20071106 -------- main/config.c, main/game.c, main/game.h, main/menu.c, main/newdemo.c: Correctly saving Reverse Stereo setting; Added Demo playback help keys; aligned Demo recording to 20 frames per second to save lots of hard drive space 20071105 -------- arch/sdl/jukebox.c: Fixed crash on absent or invalid jukebox directory 20071101 -------- main/collide.c: Data types correction 20071031 -------- d1x.ini, SConstruct, arch/linux/linuxnet.c, arch/ogl/gr.c, arch/win32/winnet.c, include/args.h, main/args.c, main/collide.c, main/game.c, main/hudmsg.c, main/inferno.c, main/kconfig.c, main/laser.c, main/menu.c, main/multi.c, main/multi.h, main/multipow.h, main/netlist.c, main/network.c, main/state.c, main/state.h: Improvements for -gl_prshot; Improved show_netgame_info(); Removed obsolete multisave code; Removed mekh stuff and wide cleanings in whole multi code; Incremented MULTI_PROTO_D1X_VER (for version checks in the future if needed); Renamed 'D1X-only game' to 'Version Check' main/songs.c: Implemented Hack for broken descent.sng produced by patching descent.hog v1.0 to v1.5 20071029 -------- main/credits.c, main/newmenu.c: Memory stuff 20071028 -------- arch/ogl/ogl.c, include/args.h, main/args.c, main/collide.c, main/fuelcen.c, main/game.c, main/gameseq.c, main/gauges.c, main/hud.c, main/inferno.c, main/laser.c, main/mglobal.c, main/network.c, main/powerup.c: Fixed problems with GameTime wraparound - delay sounds, cloak, invulnerability, ping; Added debug key to Reset GameTime for testing; Removed -gl_vidmem; Cheat-code cleanup; Some HUD message redundancy main/hud.c: For HUD messages redundancy check, compare all messages and check if message already printed and is a typical "ALREADY HAVE" message - waste them if so 20071018 -------- d1x.ini, 2d/bitblt.c, 2d/box.c, 2d/rle.c, arch/ogl/gr.c, arch/ogl/ogl.c, include/args.h, include/rle.h, main/args.c, main/game.c, main/gauges.c, main/inferno.c, main/menu.c: Small fixes; Code cleanup; Implemented PR-Screenshot feature 20071014 -------- arch/sdl/digi_audio.c, arch/sdl/digi_mixer.c, arch/sdl/digi_mixer_music.c, arch/sdl/jukebox.c, include/args.h, main/args.c, main/game.h, main/inferno.c: Set SOUND_BUFFER_SIZE for SDL_mixer to 1024 to minimize delay; Removed MIDI-existance check and store all music to Music/ subdirectory of writedir - keeps clean if user has tons of levels; Added SDL_mixer command-line help output; Implemented new way to read command-line args main/game.c: Reworked Pause-screen 20071012 -------- main/ip_base.cpp: Fixed port deformation while sending handshake main/inferno.c: Fixed some command-line options SConstruct: micro version now specified as the "micro" scons flag 20071008 -------- main/game.c, main/inferno.c, main/object.c, main/playsave.c: Improvements for Cockpit mode save; Fixed -pilot switch 20071007 -------- main/collide.c, main/laser.c: Changed collision handling between robots and controlcen; Aligned constant sounds to GameTime; Using turn radius of 0x0024*F1_0 for all homing objects while not aligning smart blobs to movement vector main/newdemo.c: Reset Rear_view at beginning and end of demo playback 20071006 -------- arch/ogl/ogl.c, main/game.c, main/gauges.c, main/gauges.h: Not rendering additional transparency cockpit display anymore to ensure compability with custom cockpits; Improved overlay functions for cockpit elements d1x.ini, include/args.h, main/args.c, main/inferno.c, main/playsave.c: Readded -notitles switch; Removed use of tempfile for PLX writing 20071001 -------- main/game.c, main/kconfig.c, main/titles.c: Added line_scpacing in netgame info screen for every not-connected player to keep strings below player table in fixed position; Fixed memleak in kconfig code; Fixed show_title_screen function to cycle correctly 3 seconds or until broken by keypress 20070930 -------- SConstruct, arch/sdl/digi_audio.c: Moved Windows midi functions to digi_audio_* functions 20070929 -------- INSTALL.txt, README.txt, SConstruct, arch/sdl/digi_audio.c, arch/sdl/event.c, arch/sdl/gr.c, arch/sdl/joy.c, arch/sdl/key.c, main/config.c, main/game.c, main/kconfig.c, main/menu.c, main/newmenu.c, main/scores.c: Updated docs; Removed GP2X support since I won't support this device anymore 20070928 -------- d1x.ini, include/args.h, main/args.c, main/gameseq.c, main/inferno.c, main/multi.c, main/newmenu.c, main/playsave.c: main/state.c: Implemented -use_players_dir 20070927 -------- main/game.c: Removed line_spacing for not connected players in Netgame info screen 20070926 -------- main/SConstruct, main/game.c, main/gauges.c, main/multi.c, main/network.c, main/network.h, main/nncoms.c: Small fixes for new netgame info screen; Doing PING routines D2X-way while trying to keep compability to other D1X versions 20070924 -------- main/newmenu.c: Removed key shortcuts for menus 20070921 -------- most files: executable flag removed main/digi.h: restored previous value of SOUND_MAX_VOLUME 20070920 -------- d1x.ini, SConstruct, include/args.h, main/newmenu.c, main/network.c, main/text.h, main/network.h, main/multi.h, main/inferno.c, main/netlist.c, main/game.c, main/ipx_drv.c, main/args.c: Code-cleanup; Implemented new multi profile feature main/titles.c: Removed briefing text shadows code 20070918 -------- SConstruct, main/inferno.c, main/digi.h, arch/sdl/include/digi_audio.h, arch/sdl/include/digi_mixer_music.h, arch/sdl/include/digi_mixer.h, arch/sdl/jukebox.c, arch/sdl/digi.c, arch/sdl/digi_mixer.c, arch/sdl/digi_mixer_music.c, arch/sdl/digi_audio.c : huge refactoring of sound system using function pointers, to allow sound backend selection at runtime and provide a common interface (digi.c) include/args.h, main/args.c : handle SDL_mixer-specific args include/hmp2mid.h, misc/hmp2mid.c : moved hmp2mid to misc/, for better organisation and consistency between D1X and D2X 20070913 -------- Sconstruct, main/game.c, main/inferno.c, main/mlticntl.c, main/mprofile.c, main/multi.c, main/network.c, main/network.h: Code Re-formatting; Preventing Redundancy in Restricted-game joining and leaving players (packet redundancy); Removed Network master menu (and mlticntl code) due to compatibility to older games; Using D2X code for restricted games; Expanded Game-help screen 20070908 -------- main/command.c, main/game.c, main/gauges.c, main/multi.c, main/multiver.c, main/network.c, /main/network.h: Added complex netgame information screen (key PAUSE), Removed ping commands because ping handled in new screen 20070905 -------- d1x.ini, 2d/font.c, include/args.h, main/args.c, main/command.c, main/game.c, main/gameseq.c, main/gameseq.h, main/inferno.c, main/multi.c: Removed handicapping remnants, Removed -msgcolorlevel, color names in Multi-messages to Player- or Team-color 20070903 -------- 2d/font.c, main/multi.c: Fixed embedded color strings 20070831 -------- main/game.c, main/gauges.c: HUD alignment improvements 20070830 -------- d1x.ini, include/args.h, main/args.c, main/gauges.c, main/inferno.c: Added command-line option to disable reticle 20070829 -------- main/titles.c: Use right palette after briefings end to make sure nothing gets messed up main/physics.c: Apply BUMP_HACK on walls only 20070828 -------- d1x.ini, 2d/bitblt.c, include/args.h, main/args.c, main/automap.c, main/credits.c, main/inferno.c, main/newmenu.c, main/piggy.c, main/titles.c: Fixed some mem-leaks; Made show_fullscr() use ogl_ubitmapm_cs(); Removed use of glScissor for menus - using Blitting; Code cleanup SConstruct, arch/ogl/gr.c: If sdl_only=1 do not use Assembly code by default because of poor portability - switch asm=1 necessary now; Removed final remnants of glScissor 20070826 -------- main/game.c, main/multi.c: Improved CPU cycles sleeping for -nicefps - moved out of main frame calc loop and taking care of 10ms timer inaccuracy main/hud.c: Preventing redundancy of doubled messages correctly 20070821 -------- main/ip_base.h, main/ipclient.h: Fixed some compiler warnings 20070809 -------- d1x.ini, include/args.h, main/args.c, main/inferno.c, main/menu.c: Added -ip_hostaddr argument to specify a host IP address via command-line/INI main/gameseq.c, main/menu.c: Fixes and improvements on -ip_hostaddr; Fixed paltte bug in SDL build main/ipbase.cpp, main/ipbase.h, main/ipclient.cpp, main/ipclient.h, main/multi.c: Some debugging-related cleanups, Fixed memleak 20070808 -------- main/config.c, main/game.c, main/gameseq.c, main/menu.c, main/polyobj.c, main/titles.c, main/titles.h: Set default value for Game_screen_mode which is necessary if there's no config file yet; Made resolution switching more failsafe by not allowing resolutions below 320x200; Cleaned up briefings code (I hope so) main/game.c, main/menu.c: Fixed excessive use of set_screen_mode; Menu fixes 20070727 -------- d1x.ini, main/config.c, main/inferno.c, main/game.c, main/game.h, main/gameseq.c, main/menu.c, main/playsave.c: Cleanup in Config- and PLX-code; Saving Resolution in Config file so it will apply directly at game-init; Removed seperated resolution mode for menus, SCREEN_MENU now always uses Game_screen_mode; Last FindArg cleanups 20070723 -------- arch/ogl/gr.c, arch/ogl/include/ogl_init.h, arch/ogl/ogl.c, arch/sdl/gr.c, include/args.h, main/args.c, main/inferno.c: FindArg cleanup - GL-Debug and SDL arguments 20070722 -------- include/args.h, main/network.c, main/network.h, main/multi.h, main/inferno.c, main/menu.c, main/mprofile.c, main/automap.c, main/game.c, main/ipx_drv.c, main/game.h, main/args.c, arch/linux/linuxnet.c, arch/win32/winnet.c: Code cleanup and small fixes main/multi.h, main/state.c: Removed -multisave argument, deactivated feature as default (multi.h define) - broken, not sure if it's worth to fix arch/linux/hmiplay.c, arch/ogl/sdlgl.c, include/args.h, main/altsound.c, main/args.c, main/digi.h, main/digiobj.c, main/inferno.c, main/ipserver.cpp, main/piggy.c, main/polyobj.c: Even more FindArg cleanups 20070718 -------- SCsonstruct, arch/ogl/gr.c, arch/ogl/include/ogl_init.h, arch/ogl/ogl.c, include/args.h, include/gr.h, include/ipx_drv.h, main/args.c, main/game.c, main/inferno.c, main/ipx_drv.c, main/menu.c, main/piggy.c, main/render.c, main/text.c: Cleaned up more FindArg's - general Debug Options; Cleanups main/cntrlcen.c, main/controls.c, main/game.c, main/gameseq.c, main/inferno.c, main/m_inspak.c, main/multi.c, main/multi.h, main/netlist.c, main/network.c, main/object.c, main/physics.c, main/physics.h: FindArg cleanup; Removed remnants of Observer-mode include/args.h, main/args.c, main/bmread.c, main/inferno.c, main/piggy.c, main/render.c, mem/mem.c: Cleanups 20070716 -------- d1x.ini, arch/ogl/gr.c, arch/ogl/ogl.c, arch/ogl/include/ogl_init.h, arch/sdl/gr.c, include/args.h, include/gr.h, main/args.c, main/automap.c, main/game.c, main/gamefont.c, main/gauges.c, main/inferno.c, main/menu.c, main/newmenu.c: Cleaned up more FindArg's - (most important) OpenGL Options main/automap.c, main/game.c: Fixing duplicated gr_toggle_fullscreen() main/fuelcen.c, main/game.c, main/game.h, main/laser.c: Removed unused RealFrameTime; Removed FPS-dependent Homing-tracking code d1x.ini, 2d/font.c, include/args.h, main/args.c, main/ban.c, main/game.c, main/hud.c, main/inferno.c, main/inferno.h, main/ip_base.cpp, main/ipclient.cpp, main/ipx_drv.c, main/menu.c, main/network.c: Cleaned up more FindArg's - Networking Options; Some fixes 20070715 -------- Sconstruct, d1x.ini, arch/win32/midi.c, include/args.h, main/args.c, main/inferno.c: Cleaned up more FindArg's - Sound Options arch/sdl/gr.c, arch/ogl/gr.c, include/args.h, main/automap.c, main/automap.h, main/collide.c, main/collide.h, main/game.c, main/gamefont.c, main/gauges.c, main/gauges.h, main/hud.c, main/inferno.c, main/kconfig.c, main/netlist.c, main/newmenu.c, main/powerup.c, main/scores.c, main/weapon.c: Cleaned up more FindArg's - Graphics Options 20070714 -------- SConstruct, main/game.c, main/inferno.c: removed old CD-Play code SConstruct, d1x.ini, arch/sdl/init.c, arch/sdl/joy.c, include/args.h, main/args.c, main/config.c, main/game.c, main/game.h, main/gauges.c, main/hud.c, main/inferno.c, main/kconfig.c, main/kmatrix.c, main/laser.c, main/menu.c, main/multi.c, main/newdemo.c, main/newdemo.h, main/piggy.c, main/titles.c: Placing FindArg calls to seperated function, putting variables to a struct - frist step, not finished, yet; Large code cleanup 20070629 -------- main/playsave.c, main/titles.c: fixing playerfile size detection, using gr_flip() with title screens 20070628 -------- main/game.c, main/newdemo.c: fixing compiler warning, handle *SOUND_TO_OBJ events correctly in demo playback 20070616 -------- main/newmenu.c: adjusted size of Inputbox 20070615 -------- SConstruct, arch/sdl/digi.c: complete removal of hmiplay-code usage main/text.c: fixed memleak 2d/bitblt.c, arch/ogl/ogl.c, arch/ogl/include/ogl_init.h, main/game.c, main/newmenu.c: small code cleanup; improved texture caching in menus to save RAM 20070614 -------- main/polyobj.c, main/render.c: using size_t when it comes to integer to pointer conversions d1x.ini, main/game.c, main/gauges.c, main/hud.c, main/inferno.c, main/kconfig.c, main/menu.c, main/playsave.c, main/radar.c: fixed axis direction for vertical and sideways thrust time; fixed y-Offset for mouse selection in kconfig_sub; removed (useless) Shrink/Grow window feature to clean code a bit; saving Cockpit mode in PLX file; improved grabmouse so mouse is always released in non-SCREEN_GAME modes 20070611 -------- SConstruct, 2d/font.c, arch/linux/hmiplay.c, arch/linux/init.c, arch/linux/ipx_bsd.c, arch/linux/ukali.c, arch/win32/init.c, include/ipx_drv.h, main/fvi.c, main/inferno.c, main/ipx_drv.c, main/gameseq.c, main/m_inspak.c, main/multibot.c, main/multi.c, main/multi.h, main/multiver.c, main/netpkt.h, main/newmenu.c, main/nncoms.c, main/render.c, main/state.c: fixed a bunch of compiler warnings SConstruct, arch/sdl/mouse.c, arch/sdl/include/mouse.h, arch/win32/include/mouse.h, arch/ogl/gr.c, editor/ksegsize.c, editor/segment.c, editor/seguvs.c, ui/mouse.c, include/types.h, main/gamesave.c, main/netlist.c, main/network.c, main/newdemo.c: fixed more compiler warnings 20070610 -------- 2d/bitblt.c, 2d/font.c, 2/rle.c, arch/ogl/gr.c, arch/ogl/ogl.c, arch/ogl/include/ogl_init.h, include/gr.h, include/rle.h, main/game.c, main/gauges.c, main/titles.c: introduced new bitmap flag to draw cockpit bitmap with transparency; draw transparent cockpit bitmap over gauges to make it more pixel-correct; code cleanups 20070601 -------- main/menu.c, main/netlist.c, main/network.c, main/newmenu.c: improved pixel-correct (almost) scaling of menus; new Netgame info screen which can show up necessary game rules 20070530 -------- SConstruct, arch/ogl/gr.c, ui/window.c: Added conditions to add compiler/linker flags from user's environemnt if they have any set; make sure gl functions are not called before OpenGL is initialised, when fullscreen switching; use new 3 argument mouse_get_delta to avoid compiler errors 20070516 -------- main/game.c, main/inferno.c, main/newmenu.c: free grabbed mouse in Demo Playback; improved Player-files deletion 20070514 -------- SConstruct, arch/sdl/init.c, arch/sdl/joydefs.c, arch/sdl/mouse.c, arch/sdl/include/mouse.h, main/game.c, main/inferno.c, main/kconfig.c, main/kconfig.h, main/newmenu.c, main/newmenu.h, main/playsave.c, main/text.h: Added config field to map a Mouse Axis/Wheel to cycle Primary and Secondary weapons; lots of controls-related code cleaning main/laser.c: fixed speeding bug in homing system main/game.c: make sure Game_window_w/h is always set to a valid value in every cockpit mode 20070510 -------- main/inferno.c: read -pilot arg with and without filename extension 20070509 -------- arch/ogl/gr.c, arch/sdl/gr.c, main/game.c, main/newmenu.c: update viewing values at Fullscreen Toggle; added Fullscreen Toggle to Menus and Demo Playback 20070503 -------- CHANGELOG.txt, COPYING.txt, INSTALL.txt, README.txt: updated docs SConstruct: Version-Tag 0.52 20070502 -------- main/game.c, main/gauges.c: resolved some overlapping HUD elements main/args.c: improved INI-File parsing main/game.c: rev432 revisited - do not send multi De-Cloak packet in Demo Playback 20070421 -------- main/hud.c: prevent string placeholders in HUD Messages which may crash the game 20070420 -------- main/laser.c: made smart blobs easier to dodge main/kconfig.c: increased offset to detect movement on Joystick axis for mapping function 20070415 -------- main/multi.c: forbid % to read into multi messages to not mess up the string 20070414 -------- main/kconfig.c, main/kmatrix.c, main/newmenu.c, main/scores.c, main/titles.c: introducing kconfig_sub_draw_table() making it possible to redraw configuration tables with OGL swapping and clearing; increased timer_delay for menus and briefings to save more CPU usage 20070412 -------- main/game.c, main/gameseq.c, main/reorder.c: removed some code from Weapon Ordering which broke primary cycling main/game.c: introduced do_weapon_stuff() to abstract code from ReadControls() 20070407 -------- main/newmenu.c: hide cursor after newmenu_get_filename() 20070406 -------- SConstruct: some help correction 20070405 -------- main/game.c, main/game.h, main/gameseq.c, main/gauges.c, main/inferno.c, main/menu.c, main/playsave.c: remove final remains of VR_current_page and VR_use_paging, resolution variable cleanup - remove VR_screen_mode and VR_render_width/height (Game_screen_mode is the actual resolution put in an int, not an index) SConstruct: BINARY_SUBDIR should be bin/, not games/ 20070404 -------- main/newdemo.c, main/newmenu.c: clear HUD-Messages if a Demo starts so old messages do not appear; also set gr_palette_load() in nm_draw_background1 so palette resets if Demo-playback is cancelled d1x.ini, main/inferno.c, main/menu.c, main/newdemo.c: improved Autodemo-feature - less code, activate AFTER pilot is selected to make sure resolution and player-file operations do not mess up main/inferno.c, main/game.c: compile-time fix for demo stuff; close menu with boxed message 20070401 -------- main/newmenu.c: moved gr_palette_load() in nm_draw_background so it always does apply and resets step-ups properly main/game.h, main/gauges.c, main/menu.c: remove 'extern int last_drawn_cockpit[2]' since it's now a single int (not an array), fixing memory corruption (whoops!!) main/automap.c: merge and move automap border drawing code to draw_automap, so it could be used to draw the automap again just before showing a dialog box 20070331 -------- main/menu.c: improved Error-handling for loading missions d1x.ini, main/game.c, main/inferno.c: a switch to disable timer_delay in calc_frame_time - may be used if game runs a bit choppy 20070330 -------- main/game.c, main/newmenu.c, main/newmenu.h: introduced newmenu_dotiny() from D2X to show menus with GAME_FONT; extended Help-menu and removed D1X-Help-menu cfile/cfile.c: Error-proof cfile_init_hogfile() main/game.c, main/newdemo.c: dropped Newdemo Un/pause feature - unreliable, creates corrupt data 20070329 -------- main/automap.c, main/game.c, main/newmenu.c: palette-related fixes for Doublebuffered menus; fixes for SDL-build 20070326 -------- main/game.c, main/menu.c: unbind Minus/Equal from Shrink/Grow-window - only use ALT-F9/F10 to get richt with all keyboard layouts; Always allow screen resolution switching, even if selected is not supported to ensure Multi-Monitor support main/game.c, main/gauges.c, main/hud.c, main/inferno.c, main/newmenu.c, main/screens.h: draw mine view directly to screen with SDL Video, no using an offscreen buffer (will use SDL_Flip later) 20070325 -------- cfile/cfile.c, main/titles.c: fixed possible corrpution with nfiles cin cfile_init_hogfile; improved briefing delay usage SConstruct, arch/linux/init.c, arch/sdl/key.c, arch/sdl/timer.c, arch/win32/init.c, include/timer.h, main/automap.c, main/game.c, main/inferno.c, main/kconfig.c, main/kmatrix.c, main/menu.c, main/multi.c, main/newmenu.c, main/scores.c, main/titles.c: removed d_delay, now using timer_delay as wrapper for SDL_Delay 20070322 -------- SConstruct, arch/ogl/gr.c, arch/ogl/ogl.c, arch/ogl/include/ogl_init.h, main/credits.c, main/game.c, main/kconfig.c, main/kmatrix.c, main/menu.c, main/netlist.c, main/newmenu.c, main.polyobj.c, main/scores.c, main/state.c, main/titles.c: Use Doublebuffer in OGL for all parts of the game and properly redraw elements, fixed Profiler build 2d/canvas.c, arch/ogl/gr.c, arch/ogl/ogl.c, arch/ogl/include/ogl_init.h, arch/sdl/gr.c, arch/win32/gr.c, include/gr.h, main/automap.c, main/credits.c, main/inferno.c, main/game.c, main/game.h, main/gauges.c, main/hud.c, main/kconfig.c, main/kmatrix.c, main/netlist.c, main/newmenu.c, main/scores.c, main/titles.c: add gr_flip, allowing significant cleanup; remove final remnants of VR_current_page, also allowing -nodoublebuffer switch for all platforms 20070318 -------- SConstruct, main/game.c: fixed compiling without jukebox code if no SDL_mixer available arch/sdl/jukebox.c, arch/sdl/mixdigi.c, arch/sdl/mixmusic.c: slight music management improvements d1x.ini: typo fixed, sdl_mixer-related options added 20070312 -------- misc/dl_list.c, include/dl_list.h: doubly-linked list implementation main/game.c, arch/sdl/jukebox.c, arch/sdl/include/jukebox.h, arch/sdl/mixdigi.c, arch/sdl/include/mixdigi.h, SConstruct: new in-game jukebox system 20070306 -------- main/kconfig.c, main/kconfig.h, main/newmenu.c, main/playsave.c, main/scores.c: implemented expanded Joystick configuration panel (Thanks xatmes); corrected draw functions for kconfig_sub() and Scoreboard to show them correct in non 4/3 aspects; corrected Close-boxes for Mouse Menu control 20070304 -------- main/menu.c: improved Error-handling for starting a mission, making the game not crash if Level file is not found main/guages.c: cleaned up hud_show_weapons_mode() SConstruct, main/hud.c, main/hudlog.c: removed WANT_AWE32 flag - too buggy; scaled space between Hud-messages; block Hudlog output messages beginning with you (your ... maxed out, you already have ...) 20070303 -------- main/game.c, main/newmenu.c: some menu fixes 20070228 -------- main/game.c: newdemo-related fixes 20070226 -------- arch/ogl/ogl.c, main/endlevel.c, main/object.c: improved DepthTest, fixing Clipping bugs main/game.c: reset GameTime properly if needed 20070220 -------- arch/sdl/key.c: Added ENTER as Game key texmap/scanline.c: removed unreliable gr_fade_table check in c_tmap_scanline_per() arch/ogl/ogl.c, main/radar.c: don't show Radar box-fading in SDL; fixed OGL gr_ucircle() 20070219 -------- main/network.c, main/network.h: fixed player restriction at robot-/coop-games - code cleanup main/hudlog.c: block "You already have"-messages in HudLog output arch/ogl/ogl.c, main/game.c: removed BADTEXTURE cheat main/game.c: seperated Controls-reading functions in HandleEndlevelKey, HandleEndlevelKey, FinalCheatsKey, HandleGamekey; improved Game-key handling if Player_is_dead main/inferno.c, main/newdemo.c: fixed memory corruption in Demo-Playback main/hud.c: make 'Press any key ...'- and 'Demo recording' messages not overlap 20070218 -------- cfile/cfile.c: added patch by The_Lion to improve file handling with AltHogDir 20070217 -------- d1x.ini, main/inferno.c, main/laser.c: added Alex' patch to add FPS independent and physics homing missiles - also implemented command-line to switch back to legacy homers 20070214 -------- Makefile, SConstruct, arch/sdl/mixmusic.c, main/vers_id.h: Turning off sound debug flags; Optional micro versions (see SConstruct); Makefile emulation for SCons 20070211 -------- d1x.ini, main/collide.c, main/collide.h, main/fireball.c, main/inferno.c, main/object.c: improved debris random stuff, added -persistentdebris feature 20070209 -------- d1x.ini, main/inferno.c: added -gl_voodoo to OpenGL command-line switches and INI SConstruct: added default lflag path for *NIX build 20070208 -------- main/gauges.c: created offset for LOCK message string if demo record or playback 20070207 -------- main/game.c: expanded help menu and fixed d1x help iff/iff.c: amd64 fixes, code cleanup arch/linux/arch_ip.cpp, arch/linux/ipx_udp.c, arch/win32/arch_ip.cpp, main/ipclient.h: on-screen network error messages main/game.c: introducing HandleDeathKey - allows sending multi messages and options menu while dead 20070206 -------- main/inferno.c, main/menu.c, main/newdemo.c: fixed -demo and -autodemo switches to work with DEMO_DIR main/newmenu.c: use remove instead of unlink to delete plx-file safely 2d/bitblt.c, include/gr.h, main/automap.c, main/credits.c, main/titles.c: force show_fullscreen to software drawing if image is bigger than screen, showing Automap background in low resolutions via software, removed obsolete robot briefing fix in OGL, code cleanup 20070202 -------- arch/ogl/ogl.c: let ogl_ubitblt not return alpha channel to ogl_ubitblt_i arch/ogl/ogl.c: don't draw bombs with transparency even if -gl_transparency is enabled 20070130 -------- d1x.ini, arch/ogl/gr.c, arch/ogl/ogl.c, include/3d.h, main/inferno.c, main/object.c: added transparency effects for some bitmaps like explosions, powerups, weapons, etc. - to enable with -gl_transparency arch/linux/ipx_udp.c, main/ipclient.h: corrected UDP/IP error output dxx-readme.txt, SConstruct: preparations for v0.51 release 20070128 -------- main/radar.c: corrected radar positions and gave it a grey background so it's better visible 20070127 -------- main/credits: use ogl_ubitmapm_cs instead of show_fullscr in OGL to render faster main/game.c: corrected position of multi-message entry string 20070126 -------- main/credits.c: improved credits scrolling - not that smooth anymore, but less CPU intense d1x.ini, main/inferno.c: re-added -hudlines and -msgcolorlevel main/newmenu.c: scale menus properly when dealing with hiresfont dxx-readme.txt, dxx-compile.txt: improvements on dxx-readme's 20070125 -------- d1x.ini, arch/ogl.gr.c, cfile/cfile.c: include/gr.h, main/game.c, main/gamefont.c, main/inferno.c, main/menu.c, main/ndewdemo.c, main/newdemo.h, main/newmenu.c, titles.c: read/save Hires fonts/briefings, demos, AddOn missions, screenshots from/to subdirectories main/inferno.c: improved resolution-check method - removed old code texmap/scanline.c: fixed c-texmap transparency main/gauges.c: don't display lives and score if hud message is longer than 40 chars. preventing overlay of message and lives/score 20070122 -------- SConstruct, cfile/cfile.c: special WINDOWS fixes and cleanups arch/sdl/include/key.h: fixed PRINTSCREEN key for WINDOWS main/network.c: fixed multi summary reactor lifetime refresh 20070121 -------- main/gamesave.c, ui/mouse.c, ui/popup.c, ui/window.c: fixed EDITOR build d1x.ini, main/inferno.c: re-added missing command-line switches for SUPPORTS_NET_IP 20070120 -------- main/automap.c: for OGL don't display background bitmap if screen height < 400 because it won't fit - just draw grey main/render.c: removed inaccurate 4D hack, use GL_ALWAYS for special segments in level 19 only main/network.c: made short packets default on. long packets are still available but in general cause more problems than short arch/ogl/ogl.c: in g3_draw_sphere align rad according to canvas so it is always in round shape 20070119 -------- cfile/cfile.c: patch by TheLion: cfile_get_filehandle reads case-insensitive on *NIX systems - makes use of .rdl levels easier d1x.ini, main/inferno.c, main/hudlog.c, main/hudlog.h: tell user where descent.hog/pig should be if it isn't there, removed broken -hudlogdir code arch/ogl/gr.c: gr_upixelc now able to scale pixels to current resolution 20070118 -------- main/kconfig.c: prevent changing weapons if automap is active main/inferno.c, main/gameseq.c: only read and write lowercase pilots - prevents mistakes in -pilot option as well as multisaves 20070117 -------- main/endlevel.c: draw spheres instead of pixels in draw_stars to show correctly in OGL 20070113 -------- main/game.c: fixed key combo to shrink/grow window (lost while porting to GP2X) main/laser.c: limit homing missle turn-rate 20070110 -------- main/kconfig.c, main/newmenu.c, main/playsave.c: joystick axes can be reassigned; higher offset for axes moving detection; correction for menus that are bigger than screen; plxver correction (is actually used) 20070113 -------- main/object.c: removing the !dead statement (leftover from WraithX Deathcam) from object_move_one() so the function will return correctly if player dies instead running further and creating invalid code and crashes 20070112 -------- SConstruct: cleanup 20070109 -------- dxx-changelog.txt, arch/ogl/gr.c, arch/ogl/ogl.c, arch/ogl/include/ogl_init.h, main/playsave.c, texmap/scanline.c, texmap/tmapflat.c: allocate 'pixels' and 'texbuf' according to current screen resolution, saving over a hundred megabytes of memory; divide negative light rates of change properly (fix bug #2575) (from D2X CVS); divide negative window x-coordinates properly, fixing random crashes (from D2X CVS); make sscanf look for "%i.%i" instead of "v%i.%i" because the 'v' isn't written to file; added missing changelog entries 20061212 -------- arch/sdl/mixdigi.c, main/inferno.c: music volume now properly restored and remembered in D1 and D2, using a static int; removed ugly hack that fixed this bug in D1 (inferno.c, revision 230) 20061128 -------- 2d/bitmap.c, 2d/font.c, 2d/rle.c, SConstruct, include/gr.h, include/u_mem.h, main/config.c, main/game.c, main/newdemo.c, main/newmenu.c, main/text.c, maths/fixc.c, texmap/scanline.c: code optimisation and fixed mem-leaks 20061125 -------- gp2x/buttonmap.txt, gp2x/dxx-rebirth_buttonmap.pdf, gp2x/notes.txt, main/kconfig.c: optimized movements for GP2X; formatted and optimized GP2X readme's 20061122 -------- main/gauges.c: fixing small cockpit glitch in SDL mode 3d/interp.c, SConstruct, arch/sdl/clipboard.c, arch/sdl/digi.c, arch/sdl/event.c, arch/sdl/gr.c, arch/sdl/include/gp2x.h, arch/sdl/joy.c, arch/sdl/key.c, gp2x/buttonmap.txt, gp2x/dxx-rebirth_buttonmap.pdf, gp2x/notes.txt, main/bm.c, main/clock.c, main/config.c, main/game.c, main/inferno.c, main/kconfig.c, main/loadrl2.c, main/menu.c, main/newmenu.c, main/object.h, main/physics.c, main/polyobj.c, main/polyobj.h, main/scores.c, texmap/scanline.c: ARM CPU support with words alignment and GP2X handheld support 20061121 -------- mem/mem.c: correct casting in mem_check_integrity 20061117 -------- SConstruct, arch/sdl/include/key.h, arch/sdl/include/key_arch.h, arch/sdl/key.c, arch/sdl/key_arch.c, include/key.h, main/game.c, main/key.c: merged SDL keyboard functions from D2X 20061115 -------- main/automap.c: fixed missing automap side colors; re-added lost cheat; cleaned code to avoid warnings d1x.ini, main/inferno.c: corrected typo 20061102 -------- arch/sdl/include/joy.h, arch/sdl/joy.c, arch/win32/include/joy.h: improved joystick code for more buttons arch/ogl/gr.c, arch/ogl/include/ogl_init.h, d1x.ini, main/gauges.c, main/inferno.c: command-line to set glScissor off if needed 20061031 -------- main/kconfig.c: make sliding use sensitivity main/args.c, main/game.c, main/inferno.c: moved some FindArgs to main() so they are not called in the game; added printf for DEBUG to track FindArgs 20061029 -------- main/render.c: turning detriangulation off by default; not really needed anymore and makes rendering nicer 20061027 -------- arch/sdl/mixdigi.c: Another fix for crash on -nosound 20061024 -------- arch/sdl/mixdigi.c: Fix for crash with -nosound and looped sound volume adjustment 20061023 -------- /main/titles.c: moved gr_clear_canvas from show_briefing_screens to do_briefing_screens to avoid white blending /main/polyobj.c: using ogl_start/end_frame, instead of offscreen in draw_model_picture /arch/linux/hmiplay.c: added cut_trough(), a clone of stop_all that is called to flush notes while playing a song to improve song switching; added rephmi integer to see if song should repeat, acts together with a check of csec to send send_ip("s") if endlevel song is finished /arch/ogl/sdlgl.c, /arch/ogl/ogl.c, /main/endlevel.c: added GL functions, changed g3_draw_poly in d2x style to fix the portal-bug; added exception boolean value tempNoDepthTest to render endlevel correctly; code reformatting /arch/win32/hmpfile.c, /main/songs.c: code cleanups /arch/ogl/gr.c, /arch/sdl/gr.c, /main/inferno.c, /d1x.ini: added variable aspect function, changed cmd-help, changed ini file /arch/win32/digi.c: restored max_distance multiplication; using 0 instead of MIN_VOLUME to fix loud sound on fade-in functions /2d/bitblt.c, /arch/ogl/include/ogl_init.h, /arch/ogl/ogl.c, /main/titles.c: added bool transp to ogl_filltexbuf and following functions to show bitmaps without transparent pixels if returning 0. fixes unwanted transparency in briefing images; removed "gr_clear_canvas" in titles.c which was used as workaround for this bug /arch/ogl/ogl.c, /main/endlevel.c, /main/gameseg.c, /main/render.c: improved use of Depth Test, added experimental hack for 4D levels; removed two Asserts which fail with 4D levels /main/game.c: added game_flush_input() on automap calls to avaoid control irritations /main/inferno.c: corrected command-line output in inferno.c /dxx-readme.txt: corrected typo /arch/ogl/ogl.c: disabled GL_CULL_FACE at ogl_end_frame to avoid problems with menus after player's death /main/kconfig.c: correctly restoring backgrounds in control menus /main/gameseq.c, /main/hud.c: showing game over in d2x-way /main/newmenu.c, /main/newmenu.c: layed out special chars to newmenu.h, fixed menu bevels for OGL, fixed text position for scalable menus, code reformatting /main/gameseg.c: disabled another Assert. commented with FIXME's - debugging if needed /SConstruct, /arch/linux/joydefs.c, /arch/linux/joystick.c, /arch/linux/makefile, /arch/ogl/wgl.c, /arch/sdl/event.c, /arch/sdl/include/joy.h, /arch/sdl/joy.c, /arch/sdl/joydefs.c, /arch/sdl/makefile, /arch/win32/init.c, /arch/win32/midi.c, /dxx-compile.txt, /dxx-readme.txt, /editor/curves.c, /editor/group.c, /editor/makefile, /main/kconfig.c, /main/menu.c, /main/playsave.c, /ui/menubar.c, /ui/userbox.c: building with more SDL code, added lots of D2X SDL related code, windows build does not need DirectX anymore; implemented SCons build system; provisoric hacks to build editor; changed contents of readme and compile text files /SConstruct, /main/inferno.c: made windows build always pipe to stdout.txt and stderr.txt /d1x.ini, /main/inferno.c, /main/hudlog.c, /main/hudlog.h: hudlogstdout as default /arch/ogl/sdlgl.c: ogl_smash_texture_list_internal() should applay on windows in window mode as well to prevent texture problems /d1x.ini, /main/inferno.c, /main/game.c: changed mousegrab calls because of new use in windows as well /Sconstruct: added profiler support to SConstruct and merged debug and no_release /main/game.c: removed unwanted stop_time() in set_screen_mode(), that broke pause states and control stuff /arch/ogl/ogl.c, /main/automap.c: automap code from d2x, show borders in SDL and OGL, optimized and cleaned /2d/font.c, /arch/ogl/include/ogl_init.h, /arch/ogl/ogl.c, /d1x.ini, /include/gr.h, /main/automap.c, /main/game.c, /main/gamefont.c, /main/inferno.c, /main/kconfig.c, /main/menu.c, /main/newmenu.c, /main/scores.c, /main/state.c, /main/titles.c: made fonts scalable, added command-line to enable fixed fonts, added command-line to enable hires fonts, made savegame thumbs scalable, reworked menu borders, new way to display level info in automap to get right with scaled fonts /arch/ogl/ogl.c, /main/credits.c, /main/polyobj.c, /main/titles.c: new code for ogl_offscreen_render, used it to reduce flickering in credits and spinning robots, improved way to regognize hires briefing images /arch/ogl/gr.c, /arch/sdl/gr.c, /d1x.ini, /include/args.h, /main/args.c, /main/automap.c, /main/game.c, /main/gameseq.c, /main/inferno.c, /main/kconfig.c, /main/menu.c, /main/newmenu.c, /main/playsave.c, /main/scores.c: some fixes for menus and automap; new aspect code; improved code to scale window for cockpits; introducing new variable in playsave.c to store game resolution and saving Game_window_h/h again properly - fixes bugs with screwed resolutions; making menus in game-resolution as default and re-activating old command-line arg '-menux' to scale menus /arch/ogl/gr.c, /arch/ogl/ogl.c, /main/automap.c, /main/game.c, /main/gauges.c, /main/newmenu.c, /main/radar.c, /main/weapon.c: adjusted position of strings in hud and cockpit; made fadings work in OGL; made radar scale in cockpit mode; mede normal reticle default again and scaled it to current resolution for OGL; reformatted code to make it A BIT MORE readable /main/kconfig.c: corrected mouseaxis_text /texmap/ntmap.c increased MAX_Y_POINTERS to allow higher resolutions in SDL /main/game.c, /main/gauges.c: corrections and improvements for scalable HUD and cockpits, cleaner code, fixes to get SDL renderer working again /arch/sdl/joy.c, /arch/sdl/joydefs.c, /main/menu.c: fixed joystick deadzone feature and moved it and sensitivity to controls sub-menu /arch/sdl/mouse.c, /main/kconfig.c, /main/newmenu.c, /main/newmenu.h: added mouse in menus /SConstruct, /main/config.c: added command-line arg for SCons to specify Sharepath. Save config files, players etc. in home directory. Patch by Hans de Goede - THANKS /main/slew.h: fix error when building editor with RELEASE (d2x-cvs takeover) /main/inferno.c, main/titles.c, main/titles.h: move order form showing to titles.c (d2x-cvs takeover) /main/ipclient.cpp, /main/menu.c, /main/multi.h, /main/network.c: re-implemented D1X ONLY GAME option to server menu and set it always true on UDP/IP to fix compability issues. making use of alloca instead of malloc in ipx_ip_SendPacket /main/inferno.c: getting rid of inferno sound hacks /SConstruct, /main/game.c, /main/game.h, /main/gauges.c, /main/inferno.c, /main/menu.c, /main/playsave.c, /main/state.c, /main/titles.c: removing unnecessary stuff from game_init_render_buffers; better resolution handling; making shareware version using registered save/restore features; storing resolution stuff in PLX file and making compability to other D1X versions; cleaning up the code a bit; implemented SHAREWARE build in SCons and some fixes for SHAREWARE build (Thanks to Hans de Goede) /main/game.c, /mem/mem.c: making sure canvas is free if a new buffer is created /2d/bitblt.c, /arch/win32/mouse.c, /editor/eglobal.c, /editor/fixseg.c, /editor/group.c, /editor/medwall.c, /editor/segment.c, /editor/seguvs.c, /editor/texture.c, /iff/iff.c, /include/editor/editor.h, /include/editor/medwall.h, /include/gr.h, /include/iff.h, /include/rpcndr.h, /include/types.h, /include/ui.h, /main/ai.c, /main/aipath.c, /main/aistruct.h, /main/bm.c, /main/bm.h, /main/bmread.c, /main/config.c, /main/credits.c, /main/custom.h, /main/dumpmine.c, /main/fireball.c, /main/fuelcen.c, /main/fuelcen.h, /main/game.c, /main/gamesave.c, /main/gameseg.c, /main/gameseg.h, /main/gauges.c, /main/kconfig.c, /main/laser.c, /main/lighting.c, /main/loadrdl.h, /main/loadrl2.c, /main/menu.c, /main/mglobal.c, /main/modem.c, /main/multi.c, /main/multi.h, /main/multibot.c, /main/netpkt.h, /main/network.c, /main/network.h, /main/newdemo.c, /main/newdemo.h, /main/object.h, /main/paging.c, /main/player.h, /main/render.c, /main/robot.h, /main/scores.c, /main/segment.h, /main/state.c, /main/switch.c, /main/switch.h, /main/titles.c, /main/wall.h, /main/weapon.c, /main/weapon.h, /ui/icon.c: change byte to sbyte /main/altsound.c: fixing crash when playing sounds in lowmem /SConstruct, /arch/sdl/digi.c, /main/digi.h, /main/inferno.c, /main/newdemo.c, /main/newdemo.h: implemented sound code of d2x /arch/sdl/joydefs.c, /main/gameseq.c, /main/kconfig.c, /main/kconfig.h, /main/newmenu.c, /main/playsave.c: added new control type: Joystick & Mouse (Thanks to The_Lion) /main/credits.c, /main/scores.c, /main/state.c, /main/titles.c: better handling for hires briefings; fixing some memleaks; code cleanup /2d/font.c, /arch/ogl/include/ogl_init.h, /arch/ogl/ogl.c, /main/automap.c, /main/game.c, /main/gauges.c, /main/state.c, /main/titles.c: corrected demo-related font positions; merged ogl_ubitmapm_cs and ogl_ubitmapm_cf /2d/font.c, /main/game.c, /main/inferno.c, /main/menu.c: cleaned up options menu and removed 'd1x options' because not really necessary anymore /arch/ogl/gr.c, /arch/sdl/gr.c: don't give GL extensions on release build, code cleanup /2d/font.c, /arch/ogl/gr.c, /include/ogl_init.h, /arch/ogl/sdlgl.c, /include/gr.h, /main/inferno.c: introduced FSAA; re-enabled fullscreen toggle in menus again and fixed glitches; adjusted OGL_TEXTURE_LIST_SIZE and OGLTEXBUFSIZE; code cleanup; restored font.c (oops) /arch/ogl/sdlgl.c, /arch/sdl/gr.c, /main/gameseq.c, /main/inferno.c, /main/newmenu.c,/main/vers_id.h: if player is deleted also delete PLX file; removed D1X_DATE, not necessary; corrected Menu_special /SConstruct: added install routine; preparations for v0.50 release /main/gauges.c: corrected position of shield/energy numbers if 200 /SConstruct, /arch/ogl/gr.c, /arch/ogl/include/ogl_init.h, /arch/ogl/ogl.c, /arch/ogl/sdlgl.c, /include/gr.h, /main/inferno.c: added SDL_SetGammaRamp; removed FSAA because no function on all platforms; fixed offscreen render; fixed sharepath in SConstruct /arch/sdl/joydefs.c, /main/newmenu.c: menu-related fixes /main/render.c, /main/wall.c: improved 4D room detection /main/newmenu.c: restore palette in menus for SDL_SetGammaRamp /main/gameseq.c: don't run joydefs_calibrate if joystick is not selected as input device /arch/ogl/gr.c: switching SDL gammaramp off by default because uses too much CPU /main/hud.c: aligned 'press any key...' message on hud /main/newmenu.c: added forgotten {} to count citem correctly and select last player again /main/credits.c: make scrolling smoother by changing time_delay /main/playsave.c: involve hli entry to determinate player_file_size correctly /main/game.c: corrected position of FPS counter /main/menu.c: print warning if resolution is set too high and don't change after all /main/inferno.c: using ReadConfigFile earlier to make it possible to read D1X.INI from home directory /main/radar.c: corrected radar y position /arch/sdl/joydefs.c: re-activated Weapon Keys menu - aka D1X keys /arch/ogl/gr.c, /arch/sdl/include/joy.h, /arch/sdl/joy.c, /main/inferno.c, /main/kconfig.c: improved SDL Joystick axes recognition; fixing mem corruptions while closing joysticks; removed Joystick calibration which should be unnecessary with SDL; fixing printf format in gr.c /arch/ogl/ogl.c: Fix for inherent limitation in pow2ize() and wrong description thereof /d1x.ini, /main/inferno.c, /main/multi.c: cleaned up command-line help; removed old/redundant/unfunctional options; improved code to read -pilot/-demo argument /arch/ogl/gr.c, /include/gr.h, /main/game.c, /main/netlist.c, /main/newmenu.c: removed fullscreen menu toggle - does not work on any arch and hasn't since we have toggle in resolution menu /arch/ogl/loadgl.h, /main/gauges.c: introducing draw_wbu_border to draw rounded weapon boxes with glScissor /main/game.c: removed calibrate joystick line from help menu /arch/ogl/ogl.c, /arch/ogl/include/ogl_init.h: made lines width scale to resolution; fixed compiler warnings /main/game.c: new handling for keys after player is exploded /main/inferno.c, /main/kconfig.c: using global variable for sp-mouselook to save CPU usage 20060416 -------- /main/credits.c: new credits code /arch/hmpfile.c, /main/songs.c: improved midi shutdown at end of game /main/game.c: shrink/grow window not correct with scalable cockpits /arch/ogl/ogl.c, /arch/ogl/include/ogl_init.h, /main/game.c, /main/gauges.c: scalable cockpits /main/gauges.c: FIX: if "you already have 20 concussion missles!" is displayed, lives and score disappeared /main/newdemo.c: FIX: demo recording crashed game at X demo size /arch/ogl/wgl.c: FIX: fan-crash bug /include/gr.h: deactivated possibility to switch window/fullscreen in menu /main/game.c: mouse capture deactivated in menus for linux /arch/win32/wgl.c: ALT-key does not call windows frame options anymore /main/physics.c: allow asserting objet to none if player is dead - fixes some random crashes /main/titles.c: fix to show white instead of black background for semi-transparent briefing bitmaps /main/newdemo.c: new interpolate function for demos; changed call for d_delay to nice demo playback /arch/sdl/gr.c, /arch/ogl/gr.c, /main/inferno.c: added widescreen aspect with command-line option for SDL and OGL build /main/newmenu.h: possible menu text sring length incrased to 255 /arch/ogl/gr.c, /main/menu.c: removed fullok hack for fullscreen changing /main/polyobj.c: using OGL offscreen render to reduce flickering in spinning briefing robots various: new build system 20060224 -------- /arch/ogl/include/ogl_init.h: fixing "OGL: texture list full"-bug /main/game.c, /main/gameseq.c: beter code older compilers (thanks to AD) /main/state.c: better savegame thumbs for every resolution /main/network.c, /main/multi.h, /main/menu.c: removed "D1X ONLY GAME" option, code cleaning /rules.mak, /main/vers_id.h: changes in date, version-number /main/gauges.c: fix for invulnerable/cloak hud font colors that had color of your last key /main/game.c: new keys to get shrink and grow window functions working /main/automap.c, /main/inferno.c: automap now always in gameres and eat less cpu power /main/kconfig.c: fix laser fire if energy and vulcan ammo recharged after 0 /main/gauges.c: fix weapons descriptions in cockpit mode /main/menu.c, /main/playsave.c: save function for resolutions /main/menu.c: custom resolutions support /main/game.c: smoother demo playback /arch/win32/digi.c, /arch/win32/hmpfile.c, /arch/win32/hmpfile.h, /arch/win32/hmiplay.c: fix for incorrect midi loops on windows /main/game.c: fix to shrink window correctly /main/credits.c: removed flickering and added fading to credits /arch/win32/makefile, /arch/win32/makefile.nt: removed d1x.rc and d1x_res.rc from compiiling so ALT key doesn't call frame options in window-mode on windows /arch/win32/digi.c: fix that fans not play in menus on windows systems 20060122 -------- /main/gauges.c: preventing vulcan ammo index overlapping reticle at high resolutions /main/ipclient.cpp: fixed segfault when starting udp/ip game /main/newmenu.c: comments an cleaning 20060116 -------- /main/states.c: fix for text position in save/load screen while using hires fonts /arch/ogl/gr.c: fix for screenshot function /main/inferno.c, /main/kconfig.c: new function for optional mouselook style feature /main/state.c: fix for broken savegames /main/credits.c: fix for credits background palette /main/gamefont.c: added optional hires fonts from D2 /main/gauges.c: new HUD icons for lives and keys if hires fonts /main/gameseq.c: fixed palette after endgame /main/titles.c: image fix while endgame in lowres briefings, implementation of hires briefings /arch/win32/digi.c: fix for fading/panning in windows /arch/ogl/gr.c, /main/game.c, /main/menu.c: fix for fullscreen switching in windows /arch/ogl/ogl.c, /main/inferno.c: implementation of trilinear filtering /main/mission.h: fix to hold up to 5000 addon levels /main/inferno.c, /main/game.c: grabmouse feature for linux /main/inferno.c: menus at 640x480 are standard now (fits better), fix for soundloops after game quit (some onboard soundcards) /main/game.c: made nicefps standard. better gameplay, lesser cpu usage, a little pause in linux for resolution change at new game /main/menu.c: resolutions up to 1600x1200 /arch/ogl/gr.c, /arch/sdl/gr.c, /main/inferno.c: made fullscreen standard, changed '-fullscreen' option to '-window' /arch/ogl/wgl.c: build fix /arch/ogl/gr.c: fix for ingame screenshots /main/args.c: fix for crashes while using modified d1x.ini various: code cleaning, fixes and additional includes for windows build, restructuration for new multiplatform release 20051025 -------- /main/state.c: fixed crash while loading saved game /main/polyobj.c: fixed slow spinning robots in briefing /main/titles.c: fixed exit-door in briefing /main/kconfig.c: much better mouse movement /main/vers_id.h: program and version specific changes /include/cfile.h: added definition for DESCENT_DATA_PATH d1x-install.sh: changes for v0.04 README.TXT: removed/changed some known issues added gentoo and suse 10 to working ditributions added Maystorm to Thanks section Changelog: file created 20050916 -------- initial release