Commit graph

48 commits

Author SHA1 Message Date
Kp a81afea7fe Rename include/error.h to include/dxxerror.h
Avoid conflict with generic system header.
2012-07-07 18:35:06 +00:00
zicodxx 29ad124ea3 added songs_play_file() to play any song depending on filename-extension as a more streamlined approach to handle all different kinds of formats; also used for jukebox to make it independent from SDL_mixer; cleaned up supported filename extenstions 2012-06-10 14:02:43 +02:00
zicodxx c8680ef789 use size of output buffer for snprintf; on the way changed rebirth-specific song file to dxx-r.sng to respect hog 8+3 file convention 2012-06-01 12:46:03 +02:00
zicodxx 70287bfde6 using our own functions for stricmp, strnicmp, strlwr, strupr, strrev with a d_ prefix for all platforms for consistency 2012-05-19 01:36:43 +02:00
zicodxx 565f629688 Fixed Redbook playback which was not repeating the CD after finishing 2012-03-29 14:49:45 +02:00
zicodxx 4852ceb347 Allow .flac to be a filename extension for sng file and jukebox 2012-03-28 10:03:26 +02:00
zicodxx a28f482027 Correctly proceed to new Redbook track if songnum != Song_playing (hopefully - to confirm); Using songs_stop_all() in songs_uninit() to clear redundancy; added some notes to functions to shine a bit light on the mess of some functions 2011-07-16 11:36:40 +02:00
zicodxx b83e27005f Bail out of hmp_reset() if midiOutOpen fails and return error with -debug set; execute hmp_reset() before first song plays; renamed digi_win32_stop_current_song() to digi_win32_stop_midi_song() to keep naming convention; Fixed some compiler warnings 2011-07-15 10:43:03 +02:00
zicodxx dd991fbf6b Got rid of cfile code: Renamed cfile-functions to use PHYSFSX-naming convention, Replaced cfile-macros with proper PHYSFS(X) calls; Introduced PHYSFSX_exists() which can check case-sensitive or case-insensitive to give more flexibility with game content 2011-06-01 09:59:55 +02:00
Chris Taylor cc5a7d1359 Fix broken m3u playlist support (in jukebox_play() path resolving); point to default descent.m3u playlist for Mac OS X (will be included in bundle); better error reporting in mix_play_file(); only make relative Jukebox path in the menu absolute after browsing it - relative paths are more flexible; allow select_file_recursive() to figure out PhysicsFS relative paths passed to it; stop the music if Jukebox is chosen and unavailable (used to just keep playing the last song) 2011-04-18 20:32:36 +08:00
zicodxx 9280731d60 Be safer not interrupting other ports of descent or the original MS-DOS game when it comes to reading song files: Try reading from MISSION_NAME.sngdxx to have a way reading a song file for a specific mission outside the mission's HOG, next try reading from descent.sngdxx which shall serve as an alternative song file specifically for DXX and then try descent.sng. This should give authors enough possibilities to add OSTs for all different versions of the game without the need to publish different versions of their missions 2011-03-06 21:02:50 +01:00
zicodxx 33d3b1c6a8 Added a simple random function for the Jukebox; Removed one small printf I once added for debugging 2011-01-20 12:17:30 +01:00
zicodxx 4b008cece1 Let credits track fade out at the end of text sequence; Fixed usage for RBAPlayTracks - when playing only one track last must be equal first, not 0; In hmp_open changed data from long to int, preventing memory explosion depending on optimisation of the code 2011-01-10 20:40:55 +01:00
zicodxx acac225493 Large improvement for _WIN32 native MIDI code by TURRICAN0: supprt for HMP track loop, seamless song looping, GS reset, pausing/resuming midi, volume control for each MIDI channel; Set GameArg.SndDisableSdlMixer automatically if compiled without SDL_mixer support; On _WIN32 play HMP natively again 2010-11-28 16:49:40 +01:00
kreatordxx e2efd34d30 Enable exit sequence song for D2X (not available via Redbook) 2010-09-26 14:22:55 +00:00
kreatordxx fd5ff122ba When 'force descent ][ cd track order' is chosen, play and loop the credits track after the title track for Jukebox too 2010-08-25 00:40:55 +00:00
kreatordxx 89da3a0eb7 For Redbook, play the credits track after the title track like original Descent 2 did 2010-08-23 11:29:45 +00:00
zicodxx 47255f4e31 For each Music playback system defining own volume scaling definition which was wrong for SDL_mixer 2010-08-19 15:54:19 +00:00
zicodxx 455136bb19 Renamed MUSIC TYPE options BUILT-IN MUSIC to BUILT-IN/ADDON MUSIC and CUSTOM MUSIC to JUKEBOX; Removed LEVEL-DEPENDENT play order for Jukebox as this is now mainly covered by AddOn packs and future M3U-support 2010-08-17 14:59:57 +00:00
zicodxx fd32ea98c4 Builtin music list now dynamically allocated and not limited to 30 songs; Instead of never loading new level when loading savestate ingame, only do this for Redbook and Custom Music playing order 'continously'; if no endlevel song is specified in Custom Music continue with level music 2010-08-01 17:42:38 +00:00
zicodxx 98fb362850 Fixing building on Windows if SDL_Mixer is not a target 2010-07-05 12:14:49 +00:00
zicodxx a01ae0f445 Fixing digi_win32_ functions I broke yesterday. THANKS ZIF\! 2010-06-15 18:27:10 +00:00
zicodxx 9877d658f3 Process -nomusic argument again 2010-06-14 17:55:25 +00:00
zicodxx 3a839c5b31 Use strrchr instead of strchr for music filename extension in case there are dots in the filename 2010-06-14 10:43:30 +00:00
zicodxx cc12616895 Increased SDL_mixer music abilities to play non-hmp from HOGs, having Level-music path to play, options to specify non-level tracks and added various playing order methods; Abstracted SDL_mixer- and Redbook-interfaces; Simplified program flow through all music functions 2010-06-14 08:13:16 +00:00
kreatordxx 66bad6378f Actually play endgame music when game is finished, play briefing music instead of hum if appropriate 2010-04-05 11:54:23 +00:00
zicodxx 7816fa03ab Adding a Failsafe to Songs-reading so it will not accidentially read over current Array-boundaries 2010-02-23 16:05:11 +00:00
zicodxx 2f9916c46b Making reading of descent.sng a bit more flexible; Not dynamically allocated, yet, since missions are not as well 2010-02-19 15:30:57 +00:00
kreatordxx dd8f679724 Make game.c more similar between D1X and D2X, making related changes to other files (\!) 2009-07-01 11:35:33 +00:00
kreatordxx 67fa9e0e49 Add option to force either Redbook or Jukebox to use the playing order for the game CD 2009-05-06 12:19:28 +00:00
kreatordxx b537639fac Associate the jukebox with Redbook Audio via new 'extmusic' layer - separating from MIDI and making it handle ALL music (not just game music) 2009-03-03 12:55:27 +00:00
kreatordxx 777f76aedf Get Mac command keys working, MACINTOSH code cleanup, update Xcode project 2008-12-07 12:26:43 +00:00
zicodxx 33490e497e Do a songs_init() each time a song is played and try to read a new descent.sng - supporting descent.sng files in hog archives 2008-11-19 15:52:07 +00:00
zicodxx 1de53497b2 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 2008-11-14 16:56:40 +00:00
kreatordxx 4def3501ef Make sure the right audio CD track is played when starting a level 2008-07-01 11:18:37 +00:00
kreatordxx 1b89b021d8 make sure it knows whether an audio CD just inserted is the official one 2008-06-17 13:41:29 +00:00
kreatordxx 558b2399a3 tidy up music keys, ALT-SHIFT-F9 ejects audio CDs 2008-06-15 08:50:05 +00:00
kreatordxx 846c9231ed allow an audio CD to be played if it's inserted after DXX is launched, hopefully find the first audio CD if multiple CDs are inserted 2008-05-28 10:38:30 +00:00
kreatordxx fd95b79cae Add audio CD support to D1X, fix associated bugs 2008-05-24 08:59:35 +00:00
zicodxx 6f5d6fd2e2 Reworked keys for song changing a bit; Added Song control keys to help menu 2008-05-18 13:20:06 +00:00
zicodxx ec7f8b68de 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 2008-05-01 21:40:34 +00:00
zicodxx 44bbb66101 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 2008-04-06 20:23:28 +00:00
md2211 a0b4cac982 * Removed executable flag on most files
* Reverted value of SOUND_MAX_VOLUME
2007-09-21 19:06:05 +00:00
zicodxx 77cb0fac31 Control Redbook activity with GameArg.SndEnableRedbook only 2007-07-27 13:35:40 +00:00
zicodxx 8217e50e0c Cleaned up more FindArg's - Sound Options 2007-07-14 22:36:04 +00:00
zicodxx f1d191f665 removed -nocdrom argument, only use Redbook audio if specified with -redbook 2007-04-15 11:02:55 +00:00
zicodxx a43384d92a midi repeat improvements 2006-05-05 14:18:42 +00:00
zicodxx b94413b91b initial import 2006-03-20 17:12:09 +00:00