implemented music playlist system with 10 playlists, automatic track resume when switching between playlists (setting sampleposition to 0 will cause it to save and resume the position in the track, -1 restarts) and random play options for each playlist playlist system overrides normal cd console commands if index is not -1 git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@9883 d7cf8633-e32d-0410-b094-e92efae38249
DP_QC_GETTIME_CDTRACK: extension to query the playing time of the current cd track. Beware: the timing is currently not exact. Might get improved later. git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8930 d7cf8633-e32d-0410-b094-e92efae38249
fix a number of char types that should be int, to make them immune to unsigned char vs signed char disputes on different operating systems git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8658 d7cf8633-e32d-0410-b094-e92efae38249
oops forgot this from the cd loop/play named tracks patch git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@6554 d7cf8633-e32d-0410-b094-e92efae38249
changed several DPrint's and developer cvar checks to higher developer cvar levels (>= 10 and >= 100 for example), this makes developer 1 much more pleasant to use, also changed the memory clearing on free to depend on developer_memorydebug (which is already quite slow) rather than developer (which shouldn't slow things down much) git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@6177 d7cf8633-e32d-0410-b094-e92efae38249
eliminated qbyte type, now uses unsigned char throughout the engine for this purpose git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@5789 d7cf8633-e32d-0410-b094-e92efae38249
Lots of minor fixes and improvements to the sound engine, plus a few more important changes: - moved the internal structures and API into a separate file (snd_main.h) - added a lock mecanism on SFXs to free them as soon as they're no longer used - simplified the sound API - minor fixes and comment changes here and there - independent sound volume for fake CD tracks - updated MSVC and Dev-C++ project files accordingly - removed unused functions - added a SFX flag to make sure the engine complains at most one time for each missing sound file - made the SFX list a linked list to remove the hardcoded limit for the number of SFX a client can handle - changed the way ambient sounds are managed to be more consistent with the new API - factorized some code - removed the useless IN_Accumulate in the Win32 specific code - removed the table for 8bit sound mixing (snd_scaletable) git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@4624 d7cf8633-e32d-0410-b094-e92efae38249
Factorized audio CD code git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@3720 d7cf8633-e32d-0410-b094-e92efae38249
cd audio now tied to sound system sound system now tied to video system because DirectSound needs a window to work at all (thank you Windows for another useless obstacle) sound system can now restart (snd_restart command) vid_stencil cvar removed (now tied to 32bit color) vid_bitsperpixel now defaults to 32 r_shadow_shadows cvar added (default 1) for stencil shadows on dlights (since vid_stencil is gone) git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@3548 d7cf8633-e32d-0410-b094-e92efae38249
this commit adds video mode switching, and preferred mode is saved to config, no more need for -window/-width/-height/-bpp (they still work) IN_Init and IN_Shutdown code has been merged into VID_InitMode and VID_Shutdown code in each of the video systems VID_InitCvars renamed to VID_Shared_Init VID_Open and VID_Close functions added in vid_shared, Host_Init now calls VID_Open S_Open/Close and CDAudio_Open/Close added (none of these do anything yet) VID_Open and VID_Close call R_Modules_Start, S_Open, and CDAudio_Open and their corresponding Close functions VID_Restart_f added (vid_restart command) vid_hidden now starts true (to avoid any refreshs until video is started) vid_fullscreen/width/height/bitsperpixel are now saved to config VID_Open is called after configs are parsed Render_Init now longer starts/stops modules IN_MouseEvent in vid_wgl.c no longer clamps pitch (since that's done by IN_PostMove) git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2442 d7cf8633-e32d-0410-b094-e92efae38249
DP code cleanup, stage one - all headers that can be protected by ifdef and define now are. Some dead code found in them was also removed. git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@1889 d7cf8633-e32d-0410-b094-e92efae38249
renamed byte to qbyte throughout engine to eliminate a mingw conflict git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@1579 d7cf8633-e32d-0410-b094-e92efae38249
Initial revision git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2 d7cf8633-e32d-0410-b094-e92efae38249