Commit graph

699 commits

Author SHA1 Message Date
mazmazz
c49a5ed8d2 Better I_InitJoystick log message 2018-12-14 06:14:21 -05:00
mazmazz
70d6845d6c Fix menu where cv_usejoystick.value > I_JoyNum and selecting an unused controller and the "used!" prompt pops up erroneously 2018-12-14 05:57:10 -05:00
mazmazz
e548f6f139 Don't override an already-active controller
* Menu improvements to tell the user that they can't set a controller if it's already active
2018-12-14 05:02:41 -05:00
mazmazz
3b6de810e1 Lots of changes to better support hotplugging and unstable device indexes
* Don't save cv_usejoystick/2 because hotplugging changes can be made invalid by next run
* Properly set cv_usejoystick/2 for menu toggling
* Force-disable a player's joystick if setting another player's joystick to the same device
* Properly set cv_usejoystick/2 value of BOTH target player AND other players when hotplugging and unplugging
2018-12-14 03:58:07 -05:00
mazmazz
6b9fe87b60 Properly handle unstable device indexes for hotplug 2018-12-14 01:45:18 -05:00
mazmazz
44d6a1d236 Attempt to handle unstable device IDs 2018-12-14 00:22:25 -05:00
mazmazz
216e710b87 Improve hotplug edge case with changing device indexes; return proper joy_open output on error 2018-12-13 23:52:04 -05:00
mazmazz
14cde2d227 Change joystick log messages to DBG_GAMELOGIC 2018-12-13 23:26:07 -05:00
mazmazz
e81f05c496 Handle unstable device index when hotplugging controller 2018-12-13 23:09:05 -05:00
mazmazz
bcd747c1cd Adjust SDL_JOYDEVICEREMOVED handler by checking the player's joy device explicitly 2018-12-13 22:26:13 -05:00
mazmazz
47ee3525af Indentation 2018-12-08 14:10:56 -05:00
mazmazz
01f1933f69 Force directsound to fix wrong-pitch sound effects 2018-12-08 14:05:58 -05:00
mazmazz
60afce5771 Disable XINPUT before initing the joy subsystem 2018-12-06 14:03:46 -05:00
mazmazz
6694b7d679 Controller hotplugging by always keeping joy subsystem on (thanks WOLFS)
(with log messages)
2018-12-06 10:54:58 -05:00
Monster Iestyn
e353e2ef70 Merge branch 'next' into 21-version 2018-12-04 17:19:36 +00:00
Monster Iestyn
f2b0db5a1c Merge branch 'master' into next 2018-12-04 17:18:19 +00:00
Digiku
631f6ed406 Merge branch 'joystick-juggling' into 'master'
Joystick juggling

See merge request STJr/SRB2!355
2018-12-04 11:51:55 -05:00
Monster Iestyn
d1a8e3acdb Merge branch 'tiny-makefile-fix' into 'master'
Tiny Makefile Fix

See merge request STJr/SRB2!289
2018-12-04 08:09:27 -05:00
mazmazz
60feae1014 Update OSX icon 2018-12-03 23:09:54 -05:00
mazmazz
8851f39b84 Use static joyname instead of malloc 2018-12-03 12:35:12 -05:00
mazmazz
19d19543b7 Copy string from SDL_JoystickNameForIndex before the subsystem is shut down 2018-12-03 05:37:07 -05:00
Monster Iestyn
a63ba7084a Disable the axis parts of I_GetJoystickEvents and its player2 counterpart.
(This is what I should have done in the first place)
2018-12-02 17:42:51 +00:00
Monster Iestyn
ce4e63a366 Miserable half-attempt to support hats in I_GetEvent, I've disabled it for now since I couldn't really figure out how to pull this off ...yet 2018-12-02 17:12:05 +00:00
Monster Iestyn
33c1ac33f5 Merge branch 'next' into 21-version
# Conflicts:
#	src/d_netcmd.c
2018-12-02 15:45:07 +00:00
Monster Iestyn
11cb163435 Backport the Blockmap library I made two years ago 2018-11-30 17:11:11 +00:00
Sryder
bc1f08f89d Fix 2 of the Unsuffixed Float Constant warnings
The other one is related to M_PI for me, which I'm still not sure about where it's getting it from
2018-11-29 22:12:14 +00:00
Monster Iestyn
11cb2e05ba Merge branch 'cmake-use-internal-libs' into 'master'
CMake: Use internal libs.

See merge request STJr/SRB2!325
2018-11-25 09:33:50 -05:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Monster Iestyn
08af33c51f Add myargmalloc boolean to detect whether we allocated myargv ourselves or not, so we don't free myargv if we didn't 2018-11-23 19:12:48 +00:00
mazmazz
36e020c366 Update version to 2.1.21 2018-11-23 06:58:45 -05:00
Steel Titanium
fe43deacec Merge branch 'master' into responsefile-fix 2018-11-22 23:02:20 -05:00
Steel Titanium
6020abab94 Fix the not found errors on DLLs 2018-11-22 22:44:47 -05:00
Steel Titanium
ff9c41ca5f Merge branch 'master' into cmake-use-internal-libs 2018-11-21 20:05:08 -05:00
Monster Iestyn
224c0fccdb Merge branch 'public_next'
# Conflicts:
#	src/Makefile.cfg
#	src/d_clisrv.c
#	src/p_setup.c
#	src/r_segs.c
#	src/r_things.c
2018-11-20 14:33:10 +00:00
mazmazz
cfaa017e7d stray #if to #ifdef 2018-11-19 20:52:01 -05:00
Alam Ed Arias
f81d01edca Merge branch 'vc-xpm-fix' into 'master'
Remove unnecessary SDLCALL from IMG_xpm.c declarations

See merge request STJr/SRB2!327
2018-11-14 11:00:20 -05:00
Alam Ed Arias
f73ea4f984 Clean up warnings 2018-11-14 10:52:16 -05:00
Marco Z
8777d5c6c9 Comment context for declaration changes; remove extern terms 2018-11-14 08:15:38 -05:00
Marco Z
51768e7dd1 Remove unnecessary SDLCALL from xpm declarations 2018-11-14 08:06:07 -05:00
Monster Iestyn
f3b59c1731 Fix VC project files to include hw_clip.c/h 2018-11-14 12:11:57 +00:00
Steel Titanium
d0b64222f7 Merge branch 'master' into cmake-use-internal-libs 2018-11-13 19:46:43 -05:00
mazmazz
894ee02f3f Fix x64 build issue 2018-11-13 17:12:18 -05:00
mazmazz
f2bfed7892 Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-11-13 14:34:40 -05:00
mazmazz
8f87bf82cd Merge branch 'master' into musicplus-core 2018-11-13 13:46:30 -05:00
Monster Iestyn
e4f157786c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/doomtype.h
#	src/hardware/hw_clip.c
#	src/hardware/hw_main.c
#	src/sdl12/sdl_sound.c
2018-11-10 19:18:34 +00:00
Monster Iestyn
51df32dd3d Merge branch 'gcc-compiling-cleanup' into 'master'
Compiling cleanup and fixes

See merge request STJr/SRB2!311
2018-11-10 13:56:17 -05:00
Monster Iestyn
268bde3fdf Merge branch 'public_next'
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/dehacked.c
#	src/g_game.h
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/lua_baselib.c
#	src/lua_hook.h
#	src/lua_hooklib.c
#	src/lua_hudlib.c
#	src/lua_libs.h
#	src/lua_maplib.c
#	src/lua_script.c
#	src/m_misc.h
#	src/p_mobj.c
#	src/s_sound.c
#	src/sdl12/mixer_sound.c
#	src/w_wad.c
2018-11-10 15:41:57 +00:00
Monster Iestyn
0bdbdd1b1e Remove FUNCMATH from functions with a void return value or args, or examine variables other than their args (which could be modified) 2018-11-08 16:26:55 +00:00
Steel Titanium
5a0cfc10f4 Update copyright info on some files 2018-11-01 14:47:19 -04:00
Steel Titanium
0f9611df76 Merge remote-tracking branch 'upstream/master' into cmake-use-internal-libs 2018-10-30 21:06:06 -04:00
Monster Iestyn
b5c4b476a6 Merge branch 'public_next'
# Conflicts:
#	src/d_main.c
#	src/m_menu.c
#	src/s_sound.c
#	src/sdl/sdl_sound.c
2018-10-20 15:31:48 +01:00
mazmazz
a288b95458 Merge remote-tracking branch 'public-gitlab/master' into public-music-cleanup 2018-10-19 22:04:26 -04:00
Monster Iestyn
d4e11762fa Merge branch 'public_next'
# Conflicts:
#	src/nds/i_sound.c
#	src/r_data.c
#	src/sdl12/mixer_sound.c
#	src/sdl12/sdl_sound.c
#	src/win32ce/win_snd.c
2018-10-19 22:46:19 +01:00
Sryder
6184f91dd3 Add an int to I_PlaySound to tell an interface which channel number SRB2 is using.
I've voided this out on other sound interfaces than SDL Mixer ones because I'm both not sure whether they need it, and not sure how to make them work with it if they do.
2018-10-13 23:01:11 +01:00
Monster Iestyn
291ebf302c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/lua_script.c
#	src/p_user.c
#	src/sdl/i_system.c
#	src/v_video.c
#	src/w_wad.c
2018-10-10 14:51:34 +01:00
Sryder
497314fdc4 Tiny fix so that joystick2 being closed can let the JoystickSubSystem close before game close.
No memory leak here, just a very tiny thing I noticed.
2018-10-09 19:43:18 +01:00
Monster Iestyn
1115f41f8e Merge branch 'zlib-split' into 'master'
Makefile: Split zlib and libpng

See merge request STJr/SRB2!285
2018-10-08 07:20:27 -04:00
Steel Titanium
232a7ae7b7 Change order of the ifdef 2018-10-07 14:52:25 -04:00
Steel Titanium
def090c9f0 Move the ifdef 2018-10-07 14:45:03 -04:00
Sryder
fb6c329870 Fix the crashing bug hopefully
A value of 1 in freesrc for Mix_LoadWAV_RW and Mix_LoadMus_RW calls SDL_RWclose on the RWops anyway.
For Mix_LoadWAV_RW the RWops is freed right after the data is loaded (because it makes a copy of the data in memory)
For Mix_LoadMUS_RW the RWops is freed when Mix_FreeMusic is called (because the data is not a copy)
So setting 1 on freesrc doesn't actually free the RWops immediately on Mix_LoadMus_RW *unless* it failed to load any music.
2018-10-07 10:37:45 +01:00
Sryder
02597e0bf9 Fix compiler warnings. 2018-10-07 09:26:18 +01:00
Sryder
d072dd2725 I think that should be NULL, not 0 actually. 2018-10-07 00:22:23 +01:00
Sryder
7b417b573c Mix_QuickLoad_RAW sets a flag in the Mix_Chunk so that Mix_FreeChunk doesn't actually Free the sound.
Checks for the flag when freeing, and if it's 0, we free the data manually after Mix_FreeChunk.
I went back to Z_Malloc and Z_Free for this because they still work after this.
2018-10-07 00:15:42 +01:00
Sryder
725a65c1f7 Call SDL_RWclose after an SDL_RWFromMem call to close the RWops. 2018-10-07 00:15:11 +01:00
Steel Titanium
49cb1ffe9f Restore deleted endif 2018-10-04 22:38:59 -04:00
Steel Titanium
79f5f4885c Split zlib and libpng 2018-10-04 19:47:19 -04:00
Steel Titanium
f88708bb75 Fix the weird indentation 2018-09-21 12:05:52 -04:00
Steel Titanium
68ec811909 Rearrange the code.
Thanks again MonsterIestyn!
2018-09-21 11:26:08 -04:00
Steel
af58ba9ae3 Remove this that somehow slipped in. 2018-09-21 07:21:49 -04:00
Steel
be74b4e58b Fix up errors with buildbots 2018-09-21 07:16:54 -04:00
Steel Titanium
378495cb2b Add some stuff 2018-09-20 18:33:50 -04:00
Steel Titanium
a53f036149 Use MemAvailable instead 2018-09-20 18:30:46 -04:00
mazmazz
d8addda298 MP Jingle: Add fade timing hack after ending a non-looping song 2018-09-20 18:30:21 -04:00
mazmazz
551237350e MP Mixer X: Fix double->UINT32 cast (buildbots) 2018-09-20 08:30:31 -04:00
mazmazz
4b4bd638a9 MP libopenmpt: Add doomdef.h header to load_libraries, resolve CONS_Printf (buildbots) 2018-09-20 08:23:29 -04:00
mazmazz
b38f6f6125 MP Libopenmpt: Fix UINT32->double cast (buildbots) 2018-09-20 07:42:35 -04:00
mazmazz
2896b3e3c4 MP Libopenmpt: SDL header in load_libraries 2018-09-20 07:39:53 -04:00
mazmazz
d5b3d74e6f MP Libopenmpt: Separate loading into sdl/load_libraries.c 2018-09-19 23:18:06 -04:00
mazmazz
6f1a5cbfc9 Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-09-19 20:06:56 -04:00
mazmazz
37addc02e6 MP Core Mixer: Old-style function dec fixes (buildbots) 2018-09-19 19:41:38 -04:00
mazmazz
de47ab63f2 MP Core Mixer fade: Use fixed instead of double calc (fixes buildbots) 2018-09-19 19:40:24 -04:00
mazmazz
7cc0b6cf95 Merge branch 'public-musicplus-core' into public-musicplus-libopenmpt 2018-09-19 19:32:49 -04:00
mazmazz
affbc89602 Merge branch 'public-musicplus-core' into public-musicplus-jingle 2018-09-19 19:24:57 -04:00
mazmazz
96fa8996db MP Core Mixer fade: Use fixed instead of double calc (fixes buildbots) 2018-09-19 19:18:35 -04:00
mazmazz
ade637798b MP Core Mixer: Old-style function dec fixes (buildbots) 2018-09-19 19:06:24 -04:00
mazmazz
af89cf92e2 Merge branch 'public-musicplus-core' into public-musicplus-jingle 2018-09-19 18:55:00 -04:00
mazmazz
86f3fadd5e Merge branch 'public-musicplus-core' into public-musicplus-libopenmpt 2018-09-19 18:54:58 -04:00
mazmazz
3e9b253438 Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-09-19 18:53:41 -04:00
mazmazz
494c5290cf MP Core Mixer: Unused param fixes (buildbots) 2018-09-19 18:26:59 -04:00
mazmazz
974b1d340a MP Core Mixer: Unused param fixes (buildbots) 2018-09-19 18:26:33 -04:00
mazmazz
26749d275c Merge branch 'public-musicplus-core' into public-musicplus-libopenmpt 2018-09-18 22:24:44 -04:00
mazmazz
00bbb60e69 Mixer: Add back var_cleanup in I_LoadSong
Because musicplus-libopenmpt deleted it, I added a cautionary note to ALWAYS clean up your vars!
2018-09-18 22:24:07 -04:00
mazmazz
f99b6a89ed Mixer: Add back var_cleanup in I_LoadSong
Because musicplus-libopenmpt deleted it, I added a cautionary note to ALWAYS clean up your vars!
2018-09-18 22:15:53 -04:00
mazmazz
c60d61a493 musicplus-jingle 2.2 -> 2.1 backport 2018-09-18 15:10:00 -04:00
mazmazz
68c295c9e1 MusicPlus core: NOMIXER=1 compile fix 2018-09-18 13:23:59 -04:00
mazmazz
b71996106b MusicPlus core: NOMIXER=1 compile fix 2018-09-18 13:23:42 -04:00
mazmazz
b48b5a29a4 Move cv_modfilter from mixer_sound.c to s_sound.c for other targets 2018-09-18 13:01:34 -04:00
mazmazz
38afb85b47 Merge branch 'public-musicplus-core' into public-musicplus-libopenmpt 2018-09-18 12:59:53 -04:00
mazmazz
1a935eabd5 Mixer I_StopSong: StopFadingSong and var_cleanup call fix 2018-09-18 12:55:19 -04:00
mazmazz
f079c9170f Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-09-18 12:51:55 -04:00
mazmazz
67566f9a2f Mixer I_StopSong: StopFadingSong and var_cleanup call fix 2018-09-18 12:51:42 -04:00
mazmazz
cf7d913f3b Merge branch 'music-sdlmixerx' into musicplus-sdlmixerx 2018-09-18 12:46:46 -04:00
mazmazz
4cba996a89 Define cv_midiplayer/soundfontpath/timiditypath in s_sound.c when NOMIXER=1 2018-09-18 12:41:49 -04:00
mazmazz
4d89beb105 musicplus-libopenmpt 2.2 -> 2.1 backport 2018-09-18 12:31:47 -04:00
mazmazz
c5ea6b5efe MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -04:00
mazmazz
e9b3cba300 Improve MIDI console parameters
* Allow multiple SF2 for midisoundfont
* Correctly branch when toggling midiplayer or midisoundfont
2018-09-16 16:02:26 -04:00
mazmazz
45a7d36524 Improve MIDI console parameters
* Allow multiple SF2 for midisoundfont
* Correctly branch when toggling midiplayer or midisoundfont
2018-09-16 11:51:39 -04:00
mazmazz
001dbcceea Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-09-15 01:17:33 -04:00
mazmazz
45dbadbbc2 Mixer: Add missing tag declarations in I_LoadSong 2018-09-15 01:14:24 -04:00
mazmazz
9eb39fb025 Merge branch 'music-cleanup' into musicplus-core 2018-09-15 00:46:02 -04:00
mazmazz
e695cf91fe Merge branch 'music-cleanup' into music-sdlmixerx 2018-09-15 00:36:16 -04:00
mazmazz
40a8c9c1ee Mixer: HAVE_LIBGME ifdef in I_LoadSong 2018-09-15 00:35:24 -04:00
mazmazz
30b8408c10 Mixer: HAVE_LIBGME ifdef in I_LoadSong 2018-09-15 00:34:55 -04:00
mazmazz
3c755a85df Merge branch 'music-cleanup' into music-sdlmixerx 2018-09-15 00:28:38 -04:00
mazmazz
20bde0d21c Fix Windows buildbot for MP3_MAD/MODPLUG define (the header we use is 2.0.2)
(cherry picked from commit 9a5eb02459)
2018-09-14 17:48:12 -04:00
mazmazz
9a5eb02459 Fix Windows buildbot for MP3_MAD/MODPLUG define (the header we use is 2.0.2) 2018-09-14 17:47:04 -04:00
mazmazz
17ec5d8022 Mixer: Better MODPLUG/MP3_MAD defines
(cherry picked from commit 5b724e18b5)
2018-09-14 17:27:31 -04:00
mazmazz
5b724e18b5 Mixer: Better MODPLUG/MP3_MAD defines 2018-09-14 17:27:00 -04:00
mazmazz
0563d77812 Fix compile errors on buildbots
* Check SDL Mixer 2.0.3 for MUS_MODPLUG_UNUSED, MUS_MP3_MAD_UNUSED
* Mixed D+C in I_LoadSong

(cherry picked from commit fdbe3e80f6)
2018-09-14 17:09:21 -04:00
mazmazz
fdbe3e80f6 Fix compile errors on buildbots
* Check SDL Mixer 2.0.3 for MUS_MODPLUG_UNUSED, MUS_MP3_MAD_UNUSED
* Mixed D+C in I_LoadSong
2018-09-14 17:07:13 -04:00
mazmazz
3a343cf8f1 Don't call I_StartupSound in SFX toggle
* Mixer: make I_StartupSound return early if already set up
* Restartaudio: Add StopSFX call

(cherry picked from commit b330dc2394)
2018-09-14 16:43:48 -04:00
mazmazz
b330dc2394 Don't call I_StartupSound in SFX toggle
* Mixer: make I_StartupSound return early if already set up
* Restartaudio: Add StopSFX call
2018-09-14 16:39:10 -04:00
mazmazz
4a5bcf43a2 Rip out SDL Mixer code from sdl_sound.c because superfluous
* Mixer code has been in mixer_sound.c; this file is not invoked unless compiling with NOMIXER=1
* Remove everything under #ifdef HAVE_MIXER because this is never triggered
* Comment out #ifdef HAVE_LIBGME because we don't support playing music anyway (but theoretically, it could have worked separately from Mixer)
* Stub new music calls

(cherry picked from commit 76be77b93a)
2018-09-14 14:53:56 -04:00
mazmazz
76be77b93a Rip out SDL Mixer code from sdl_sound.c because superfluous
* Mixer code has been in mixer_sound.c; this file is not invoked unless compiling with NOMIXER=1
* Remove everything under #ifdef HAVE_MIXER because this is never triggered
* Comment out #ifdef HAVE_LIBGME because we don't support playing music anyway (but theoretically, it could have worked separately from Mixer)
* Stub new music calls
2018-09-14 14:52:24 -04:00
mazmazz
517756606c I_InitMusic SDL2: Don't unload GME indiscriminately
(cherry picked from commit cb4e075137)
2018-09-14 13:57:24 -04:00
mazmazz
a5948c3629 Separate StopMusic and UnloadMusic
(cherry picked from commit e72610a3dc)
2018-09-14 13:57:20 -04:00
mazmazz
cb4e075137 I_InitMusic SDL2: Don't unload GME indiscriminately 2018-09-14 13:36:01 -04:00
mazmazz
e72610a3dc Separate StopMusic and UnloadMusic 2018-09-14 12:47:33 -04:00
mazmazz
4b1bc53db1 Compile fixes 2018-09-14 10:58:41 -04:00
mazmazz
8541963c61 I_SongPlaying detect GME properly
(cherry picked from commit e88d147761)
2018-09-14 10:49:44 -04:00
mazmazz
d94f7e3cb0 Stub I_UnloadSong because we already unload in I_StopMusic
* Stop-gap for now. Ideally the logic would be in the respective places.

# Conflicts:
#	src/sdl/mixer_sound.c

(cherry picked from commit eae5d3333f)
2018-09-14 10:49:44 -04:00
mazmazz
5f22b7d973 Volume fixes
# Conflicts:
#	src/sdl/mixer_sound.c

(cherry picked from commit d39b7011c5)
2018-09-14 10:49:44 -04:00
mazmazz
2fbe206ecb A word
(cherry picked from commit fb6f8c8a07)
2018-09-14 10:49:44 -04:00
mazmazz
b0c47e2fb1 GME fix: play song in I_PlaySong, not I_LoadSong
(cherry picked from commit 5f21bf230d)
2018-09-14 10:45:39 -04:00
mazmazz
4d61f00b86 Refactor I_MusicType MusicPlaying and MusicPaused other targets
(cherry picked from commit 9e6eebeb8d)
2018-09-14 10:45:39 -04:00
mazmazz
eacf0ba00b Refactor I_MusicType MusicPlaying and MusicPaused -> I_SongType ...
(cherry picked from commit 4b82de9e54)
2018-09-14 10:45:38 -04:00
mazmazz
d535c14fc6 Refactoring and reordering other targets
(cherry picked from commit cf065e106f)
2018-09-14 10:43:46 -04:00
mazmazz
5bac836d4c Minor refactoring and reordering
* I_GetMusicType() -> I_MusicType()
* Wrap MIDI volume hack in #ifdef _WIN32

(cherry picked from commit a7d51bf810)
2018-09-14 10:42:27 -04:00
mazmazz
17cf310b84 nodigimusic nomusic nosound refactor other targets
(cherry picked from commit 86f151db65)
2018-09-14 10:35:56 -04:00
mazmazz
44557d9c9d I_MusicPlaying, I_MusicPaused other targets
(cherry picked from commit d5ec388159)
2018-09-14 10:28:35 -04:00
mazmazz
011a043dba Refactoring, music statues
* S_Init -> S_InitSfxChannels because it did mostly SFX anyway
* S_MusicPlaying, S_MusicPaused, S_MusicName, S_MusicExists new status methods
* I_MusicPlaying, I_MusicPaused

(cherry picked from commit f5f0b5e76c)
2018-09-14 10:28:29 -04:00
mazmazz
e58a8f4fe1 Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume other targets
(cherry picked from commit 9fb9386f84)
2018-09-14 10:23:47 -04:00
mazmazz
a7ed7b2c90 Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume into one method
* In s_sound, they are merged to one method as well, but there are still two separate digvolume and seqvolume variables
* Simplified Dig/MidiMusicDisabled in s_sound
* Method reordering

(cherry picked from commit 701cc5a7dd)
2018-09-14 10:23:37 -04:00
mazmazz
46b53e8bae Added I_GetMusicType and removed midimode variable: other targets
(cherry picked from commit 14b393ab16)
2018-09-14 09:55:45 -04:00
mazmazz
06b7367941 Added I_GetMusicType and removed midimode variable
* Revised S_PlayMusic arguments
* Now music plays again!

(cherry picked from commit 55f3803e4b)
2018-09-14 09:42:29 -04:00
mazmazz
b59aa27104 Loose ends other targets
(cherry picked from commit 9a5fc5f66a)
2018-09-14 09:41:08 -04:00
mazmazz
db41034ad9 Block song position changes on GME because unstable 2018-09-13 13:27:42 -04:00
mazmazz
4494630cdd Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-09-11 11:26:12 -04:00
mazmazz
5f87f4a47a Don't decrement fade timer if song is paused 2018-09-11 11:20:46 -04:00
mazmazz
5ea8dc3dfa Change to percentage calc from interval decrement for volume fade 2018-09-11 11:17:30 -04:00
mazmazz
1681e6cc00 Merge branch 'music-sdlmixerx' into musicplus-sdlmixerx 2018-09-01 11:38:26 -04:00
mazmazz
7fbe97a3d2 Reset MIDI music properly on settings change
* Added reset flag to S_Start (now S_StartEx)
2018-09-01 11:37:53 -04:00
mazmazz
c8a9edca8d Revert "Fix MIDI music not reloading sometimes on settings change"
This reverts commit aa48278fd4.
2018-09-01 11:35:54 -04:00
mazmazz
aa48278fd4 Fix MIDI music not reloading sometimes on settings change 2018-09-01 11:34:03 -04:00
mazmazz
f0244c8b71 Fix MIDI music not reloading sometimes on settings change 2018-09-01 11:33:39 -04:00
mazmazz
9180f9b7ef Add Mixer X retrieve song length and position natively, if available 2018-08-31 13:52:01 -04:00
mazmazz
8098d120cc Merge branch 'music-sdlmixerx' into musicplus-sdlmixerx 2018-08-31 12:19:03 -04:00
mazmazz
58ef056d48 Fix MIDI not reloading when erroring on a player 2018-08-31 12:18:54 -04:00
mazmazz
9c35b3dfc5 Merge branch 'musicplus-core' into musicplus-sdlmixerx 2018-08-28 10:27:49 -04:00
mazmazz
75e6ad72ed Fix MIDI looping/non-looping 2018-08-28 10:16:06 -04:00
mazmazz
9244a13721 Merge branch 'music-sdlmixerx' into musicplus-sdlmixerx 2018-08-27 08:40:36 -04:00
mazmazz
359a71c059 Move cvars to D_RegisterClientCommands for config recall 2018-08-27 08:40:24 -04:00
mazmazz
36d650c530 Remove MP3 warning for win32 Mixer X 2018-08-27 06:16:55 -04:00
mazmazz
b760fbe89b Corrected unterminated #endif in sdl_sound 2018-08-27 06:15:01 -04:00
mazmazz
b701316505 Merge branch 'music-sdlmixerx' into musicplus-sdlmixerx 2018-08-27 05:59:55 -04:00
mazmazz
07ae007980 Remove unused methods (for now?) 2018-08-27 05:53:43 -04:00
mazmazz
9f6e913d43 Load Fluidsynth soundfont upon cvar change 2018-08-27 05:52:01 -04:00
mazmazz
878dc1af92 Lazy midi reload support on menu 2018-08-27 00:43:25 -04:00
mazmazz
28545822ba Checkpoint: Add FluidSynth and Timidity support 2018-08-26 23:03:38 -04:00
mazmazz
65e5794ee3 HAVE_MIXERX and NOMIXERX compile flags (win32 only) 2018-08-26 15:12:00 -04:00
mazmazz
768ce1a46f Make SDL Mixer X win32-exclusive 2018-08-26 14:20:41 -04:00
mazmazz
35fdcee071 Merge branch 'music-cleanup' into music-sdlmixerx 2018-08-26 14:04:54 -04:00
mazmazz
4f075bfb5d Update functions for other targets 2018-08-24 18:20:53 -04:00
mazmazz
e88d147761 I_SongPlaying detect GME properly 2018-08-24 18:03:50 -04:00
mazmazz
eae5d3333f Stub I_UnloadSong because we already unload in I_StopMusic
* Stop-gap for now. Ideally the logic would be in the respective places.

# Conflicts:
#	src/sdl/mixer_sound.c
2018-08-24 18:02:46 -04:00
mazmazz
d39b7011c5 Volume fixes
# Conflicts:
#	src/sdl/mixer_sound.c
2018-08-24 18:01:57 -04:00
mazmazz
9d0d101d03 I_SongPlaying detect GME properly 2018-08-24 18:00:39 -04:00
mazmazz
4d91b44c63 Detect GME more simply 2018-08-24 17:58:56 -04:00
mazmazz
bd01c75a4e Stub I_UnloadSong because we already unload in I_StopMusic
* Stop-gap for now. Ideally the logic would be in the respective places.
2018-08-24 17:56:22 -04:00
mazmazz
a688de5dc2 Volume fixes 2018-08-24 17:56:14 -04:00
mazmazz
fb6f8c8a07 A word 2018-08-24 13:41:26 -04:00
mazmazz
df455fc638 Merge branch 'music-cleanup' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into music-cleanup 2018-08-24 13:36:07 -04:00
mazmazz
5f21bf230d GME fix: play song in I_PlaySong, not I_LoadSong 2018-08-24 13:35:41 -04:00
mazmazz
bf61dbb6e2 Checkpoint: Revised fading routines for new load/play pattern
* Perform fade-out/fade-in using callbacks
* Move queued music from interface to s_sound
2018-08-24 13:11:38 -04:00
mazmazz
a2d626384a Merge branch 'music-cleanup' into musicplus-core
Pending rewrite of fade music changing

# Conflicts:
#	src/android/i_sound.c
#	src/djgppdos/i_sound.c
#	src/i_sound.h
#	src/s_sound.c
#	src/s_sound.h
#	src/sdl/mixer_sound.c
#	src/sdl/sdl_sound.c
#	src/win32/win_snd.c
2018-08-23 21:07:39 -04:00
mazmazz
9e6eebeb8d Refactor I_MusicType MusicPlaying and MusicPaused other targets 2018-08-23 20:23:16 -04:00
mazmazz
4b82de9e54 Refactor I_MusicType MusicPlaying and MusicPaused -> I_SongType ... 2018-08-23 20:14:46 -04:00
mazmazz
cf065e106f Refactoring and reordering other targets 2018-08-23 17:54:40 -04:00
mazmazz
a7d51bf810 Minor refactoring and reordering
* I_GetMusicType() -> I_MusicType()
* Wrap MIDI volume hack in #ifdef _WIN32
2018-08-23 17:05:37 -04:00
mazmazz
86f151db65 nodigimusic nomusic nosound refactor other targets 2018-08-23 12:43:38 -04:00
mazmazz
d5ec388159 I_MusicPlaying, I_MusicPaused other targets 2018-08-23 12:31:01 -04:00
mazmazz
f5f0b5e76c Refactoring, music statues
* S_Init -> S_InitSfxChannels because it did mostly SFX anyway
* S_MusicPlaying, S_MusicPaused, S_MusicName, S_MusicExists new status methods
* I_MusicPlaying, I_MusicPaused
2018-08-23 12:30:47 -04:00
mazmazz
9fb9386f84 Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume other targets 2018-08-23 11:54:58 -04:00
mazmazz
701cc5a7dd Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume into one method
* In s_sound, they are merged to one method as well, but there are still two separate digvolume and seqvolume variables
* Simplified Dig/MidiMusicDisabled in s_sound
* Method reordering
2018-08-23 11:54:36 -04:00
mazmazz
14b393ab16 Added I_GetMusicType and removed midimode variable: other targets 2018-08-23 10:19:04 -04:00
mazmazz
55f3803e4b Added I_GetMusicType and removed midimode variable
* Revised S_PlayMusic arguments
* Now music plays again!
2018-08-23 10:18:38 -04:00
mazmazz
9a5fc5f66a Loose ends other targets 2018-08-23 09:37:02 -04:00
mazmazz
e89eccf78e Loose ends from previous work
* Pause/ResumeSong remove handle argument
* LoadSong declare char *data argument
* Variable weirdness
2018-08-23 09:36:51 -04:00
mazmazz
3ec1a122e0 Revert "Nix'd midimusicvolume other targets"
This reverts commit 58fbb4636f.

# Conflicts:
#	src/android/i_sound.c
#	src/dummy/i_sound.c
#	src/win32/win_snd.c
2018-08-23 09:09:12 -04:00
mazmazz
75cbfab8c6 Playback routines other targets 2018-08-23 09:06:31 -04:00
mazmazz
7efab8b314 Revert "Nix'd midimusicvolume", don't know what I want to do with this yet
This reverts commit b5c3095820.

# Conflicts:
#	src/i_sound.h
#	src/s_sound.c
#	src/s_sound.h
#	src/sdl/mixer_sound.c
2018-08-23 09:06:13 -04:00
mazmazz
e42defa299 Playback routines: Load, Play, Pause, Stop, Unload
* Re-purpose I_LoadSong for digital music loading
* I_StartDigSong logic split between I_LoadSong and I_PlaySong
* Pause, Stop, and Unload routines are combined from Digi and MIDI
* music_lumpnum, music_data, music_handle from s_sound.c are gone
2018-08-23 09:02:14 -04:00
mazmazz
58fbb4636f Nix'd midimusicvolume other targets 2018-08-23 07:39:45 -04:00
mazmazz
b5c3095820 Nix'd midimusicvolume 2018-08-23 07:39:32 -04:00
mazmazz
7d64c3114c SDL Mixer X compile on Windows x86 2018-08-22 00:17:25 -04:00
mazmazz
3829998889 Initial work on SDL Mixer X 2018-08-21 14:57:53 -04:00
mazmazz
76f9890328 Position fixes with looppoint 2018-08-21 11:58:38 -04:00
Monster Iestyn
87e37e21df Merge branch 'public_next'
# Conflicts:
#	src/sdl12/i_cdmus.c
#	src/win32ce/win_cd.c
2018-08-21 15:40:54 +01:00
Monster Iestyn
9d3aad9036 Merge branch 'XPMupdate' into 'master'
update XPM icon

See merge request STJr/SRB2!267
2018-08-21 10:31:25 -04:00
mazmazz
f6789a6eb7 I_FadeSongFromLevel -> I_FadeSongFromVolume refactor other targets 2018-08-21 08:54:04 -04:00
mazmazz
2289a3bd79 I_FadeSongFromLevel -> I_FadeSongFromVolume refactor
* S_MusicName->GetMusicName refactor
* S_ChangeMusicWithFade->ChangeMusicAdvanced refactor
2018-08-21 08:53:51 -04:00
mazmazz
506db1e303 Interface name refactor: Music -> Song other targets 2018-08-21 06:22:42 -04:00
mazmazz
a1b1391e24 Interface name refactor: Music -> Song
* Music refers to the music system, song refers to the entity being played.
* s_sound doesn't follow this, everything is music
2018-08-21 06:22:35 -04:00
mazmazz
17e2c3f5be Debug messages 2018-08-20 08:47:41 -04:00
mazmazz
9539c597dd Midimode safeties for song queueing/fading 2018-08-20 01:14:29 -04:00
mazmazz
9eeed6338f Allow queueing music at end of song, not just fading 2018-08-20 00:12:23 -04:00
mazmazz
e51f9ecf90 * Allow S_ChangeMusic to queue the same track for fading
* StopDigSong upon running queue so that GME works for queueing
2018-08-19 23:20:40 -04:00
mazmazz
9410676737 I_FadeOutStopMusic, I_FadeInStartDigSong other targets 2018-08-19 22:05:55 -04:00
mazmazz
2cf49f9361 I_FadeOutStopMusic, I_FadeInStartDigSong, S_ChangeMusicWithFade implementation
* First attempt, a little messy but works fine
2018-08-19 22:05:42 -04:00
mazmazz
87b6fc613b I_FadeMusicFromLevel/I_FadeMusic change for other targets 2018-08-19 17:02:27 -04:00
mazmazz
b844a908a1 Make S_FadeMusicFromLevel accept mandatory source_volume
* Make S_FadeMusic a legitimate function to grab current internal volume
2018-08-19 17:02:13 -04:00
mazmazz
3d8c4585d4 Checkpoint 2018-08-19 16:25:12 -04:00
mazmazz
5117bdebfe S_FadeMusic[FromLevel] and S_StopFadingMusic other targets 2018-08-19 16:19:55 -04:00
mazmazz
918976bdcc S_FadeMusic[FromLevel] and S_StopFadingMusic implementation 2018-08-19 16:19:48 -04:00
mazmazz
7d03c19409 I_SetInternalMusicVolume other targets 2018-08-19 09:39:11 -04:00
mazmazz
d5dfde240d I_SetInternalMusicVolume implementation 2018-08-19 09:38:57 -04:00
mazmazz
51228b328c Framework for internal_volume; more fade code 2018-08-19 09:16:52 -04:00
mazmazz
69153194fe Merge branch 'musicplus-core' into musicplus-fade-sdltimer 2018-08-19 08:35:56 -04:00
mazmazz
6ea002b1b5 Enable midi_volume, it actually works 2018-08-19 08:34:03 -04:00
mazmazz
47495e72b5 Fade checkpoint 2018-08-19 08:32:12 -04:00
mazmazz
c4ea18b2bb Add LIBGME ifdefs 2018-08-19 06:43:57 -04:00
mazmazz
a38664e109 Minor cleanup 2018-08-18 23:26:58 -04:00
mazmazz
3bd3e51313 Merge branch 'musicplus-core' into musicplus-fade-sdltimer
# Conflicts:
#	src/sdl/mixer_sound.c
2018-08-18 23:12:58 -04:00
mazmazz
3e7d7cfcae Fixed loop point counter bug 2018-08-18 21:29:18 -04:00
mazmazz
5487fd5be0 Fix S_SetMusicLoopPoint wrong method; trigger only on is_looping 2018-08-18 20:54:56 -04:00
mazmazz
5f564f7798 Consolidate variable cleanup in mixer_sound
* Fix I_SetSongTrack MOD tracking returns the expected result
* Make music_loop hook stop digital song properly if not looping
2018-08-18 20:44:32 -04:00
mazmazz
78b041800e Loop point modulo by length 2018-08-18 20:29:19 -04:00
mazmazz
dc2c530d42 I_GetMusicLoopPoint and I_SetMusicLoopPoint for other targets 2018-08-18 20:19:54 -04:00
mazmazz
fdd1af62a8 I_GetMusicLoopPoint and I_SetMusicLoopPoint implementation
* Stub pause for MIDI
* Fix MP3 tag wide char search
* Reset songpaused bool where appropriate
2018-08-18 20:19:44 -04:00
mazmazz
57c8cf25af Remove I_MIDIPlaying from other targets 2018-08-18 17:46:06 -04:00
mazmazz
d7720a8556 Remove I_MIDIPlaying 2018-08-18 17:45:57 -04:00
mazmazz
d88b923959 Other interfaces for I_MusicType 2018-08-18 17:18:13 -04:00
mazmazz
bd1eece7bc S_MusicType implementation; MOD support for Get/SetMusicPosition and MusicLength
* Misc MOD fixes
2018-08-18 17:17:53 -04:00
mazmazz
3c2f7038d0 Added GME for GetMusicLength, SetMusicPosition, GetMusicPosition
* Misc fixes
2018-08-18 16:21:28 -04:00
mazmazz
f4a574aba2 Support wide chars when searching for music tags (MP3) 2018-08-18 15:26:31 -04:00
mazmazz
6b35857ed1 I_GetMusicLength declarations for other interfaces 2018-08-18 14:18:49 -04:00
mazmazz
c6035f5956 I_GetMusicLength implementation 2018-08-18 14:18:29 -04:00
Monster Iestyn
364339e1ce Merge branch 'sdl_mixer_fixes' into 'master'
SDL Mixer fixes

Closes #31

See merge request STJr/SRB2!260
2018-08-16 16:57:14 -04:00
mazmazz
8452ec5c7c Checkpoint: Basic functions 2018-08-15 12:07:08 -04:00
mazmazz
0254f4f368 Fix merge errors 2018-08-15 02:42:50 -04:00