From dff0e87e03f12d22783f25fb72396058e234c857 Mon Sep 17 00:00:00 2001
From: Steel Titanium <steeltitanium1@gmail.com>
Date: Fri, 7 Aug 2020 17:06:19 -0400
Subject: [PATCH] Kill CD support

---
 src/Makefile           |  1 -
 src/Makefile.cfg       |  1 -
 src/d_main.c           |  7 ------
 src/d_netcmd.c         |  4 ----
 src/i_sound.h          | 51 +-----------------------------------------
 src/p_setup.c          |  3 ---
 src/s_sound.c          | 10 ---------
 src/s_sound.h          |  2 --
 src/sdl/CMakeLists.txt |  1 -
 src/sdl/i_cdmus.c      | 37 ------------------------------
 src/sdl/i_system.c     | 12 ++++------
 11 files changed, 5 insertions(+), 124 deletions(-)
 delete mode 100644 src/sdl/i_cdmus.c

diff --git a/src/Makefile b/src/Makefile
index 9ea1ea239..b40adf32c 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -482,7 +482,6 @@ OBJS:=$(i_main_o) \
 		$(OBJDIR)/lzf.o	     \
 		$(OBJDIR)/vid_copy.o \
 		$(OBJDIR)/b_bot.o \
-		$(i_cdmus_o)    \
 		$(i_net_o)      \
 		$(i_system_o)   \
 		$(i_sound_o)    \
diff --git a/src/Makefile.cfg b/src/Makefile.cfg
index 5c56978e7..404171cd2 100644
--- a/src/Makefile.cfg
+++ b/src/Makefile.cfg
@@ -355,7 +355,6 @@ endif
 endif
 
 #determine the interface directory (where you put all i_*.c)
-i_cdmus_o=$(OBJDIR)/i_cdmus.o
 i_net_o=$(OBJDIR)/i_net.o
 i_system_o=$(OBJDIR)/i_system.o
 i_sound_o=$(OBJDIR)/i_sound.o
diff --git a/src/d_main.c b/src/d_main.c
index 6bc42da14..6ed9a04d1 100644
--- a/src/d_main.c
+++ b/src/d_main.c
@@ -825,9 +825,6 @@ void D_SRB2Loop(void)
 		S_UpdateSounds(); // move positional sounds
 		S_UpdateClosedCaptions();
 
-		// check for media change, loop music..
-		I_UpdateCD();
-
 #ifdef HW3SOUND
 		HW3S_EndFrameUpdate();
 #endif
@@ -1470,10 +1467,6 @@ void D_SRB2Main(void)
 		}
 	}
 
-	// Initialize CD-Audio
-	if (M_CheckParm("-usecd") && !dedicated)
-		I_InitCD();
-
 	if (M_CheckParm("-noupload"))
 		COM_BufAddText("downloading 0\n");
 
diff --git a/src/d_netcmd.c b/src/d_netcmd.c
index 6aa168aa7..68b8ecfc1 100644
--- a/src/d_netcmd.c
+++ b/src/d_netcmd.c
@@ -861,10 +861,6 @@ void D_RegisterClientCommands(void)
 	CV_RegisterVar(&cv_midimusicvolume);
 	CV_RegisterVar(&cv_numChannels);
 
-	// i_cdmus.c
-	CV_RegisterVar(&cd_volume);
-	CV_RegisterVar(&cdUpdate);
-
 	// screen.c
 	CV_RegisterVar(&cv_fullscreen);
 	CV_RegisterVar(&cv_renderview);
diff --git a/src/i_sound.h b/src/i_sound.h
index 4bd05d234..a2249a102 100644
--- a/src/i_sound.h
+++ b/src/i_sound.h
@@ -9,7 +9,7 @@
 // See the 'LICENSE' file for more details.
 //-----------------------------------------------------------------------------
 /// \file  i_sound.h
-/// \brief System interface, sound, music and CD
+/// \brief System interface, sound, music
 
 #ifndef __I_SOUND__
 #define __I_SOUND__
@@ -241,53 +241,4 @@ boolean I_FadeSong(UINT8 target_volume, UINT32 ms, void (*callback)(void));
 boolean I_FadeOutStopSong(UINT32 ms);
 boolean I_FadeInPlaySong(UINT32 ms, boolean looping);
 
-/// ------------------------
-//  CD MUSIC I/O
-/// ------------------------
-
-/**	\brief  cd music interface
-*/
-extern UINT8 cdaudio_started;
-
-/**	\brief Startup the CD system
-*/
-void I_InitCD(void);
-
-/**	\brief Stop the CD playback
-*/
-void I_StopCD(void);
-
-/**	\brief Pause the CD playback
-*/
-void I_PauseCD(void);
-
-/**	\brief Resume the CD playback
-*/
-void I_ResumeCD(void);
-
-/**	\brief Shutdown the CD system
-*/
-void I_ShutdownCD(void);
-
-/**	\brief Update the CD info
-*/
-void I_UpdateCD(void);
-
-/**	\brief	The I_PlayCD function
-
-	\param	track	CD track number
-	\param	looping	if true, loop the track
-
-	\return	void
-*/
-void I_PlayCD(UINT8 track, UINT8 looping);
-
-/**	\brief	The I_SetVolumeCD function
-
-	\param	volume	volume level to set at
-
-	\return	return 0 on failure
-*/
-boolean I_SetVolumeCD(INT32 volume);
-
 #endif
diff --git a/src/p_setup.c b/src/p_setup.c
index ceb96df40..44154ed2c 100644
--- a/src/p_setup.c
+++ b/src/p_setup.c
@@ -4168,9 +4168,6 @@ boolean P_LoadLevel(boolean fromnetsave)
 	// clear special respawning que
 	iquehead = iquetail = 0;
 
-	// Fab : 19-07-98 : start cd music for this level (note: can be remapped)
-	I_PlayCD((UINT8)(gamemap), false);
-
 	P_MapEnd();
 
 	// Remove the loading shit from the screen
diff --git a/src/s_sound.c b/src/s_sound.c
index 072a69f6c..8f4af2599 100644
--- a/src/s_sound.c
+++ b/src/s_sound.c
@@ -2433,13 +2433,6 @@ void S_PauseAudio(void)
 	if (I_SongPlaying() && !I_SongPaused())
 		I_PauseSong();
 
-	// pause cd music
-#if (defined (__unix__) && !defined (MSDOS)) || defined (UNIXCOMMON) || defined (HAVE_SDL)
-	I_PauseCD();
-#else
-	I_StopCD();
-#endif
-
 	S_SetStackAdjustmentStart();
 }
 
@@ -2451,9 +2444,6 @@ void S_ResumeAudio(void)
 	if (I_SongPlaying() && I_SongPaused())
 		I_ResumeSong();
 
-	// resume cd music
-	I_ResumeCD();
-
 	S_AdjustMusicStackTics();
 }
 
diff --git a/src/s_sound.h b/src/s_sound.h
index 35d1c3dc5..4e15a2bd0 100644
--- a/src/s_sound.h
+++ b/src/s_sound.h
@@ -69,8 +69,6 @@ extern consvar_t musserver_cmd, musserver_arg;
 #endif
 
 extern CV_PossibleValue_t soundvolume_cons_t[];
-//part of i_cdmus.c
-extern consvar_t cd_volume, cdUpdate;
 
 #if defined (macintosh) && !defined (HAVE_SDL)
 typedef enum
diff --git a/src/sdl/CMakeLists.txt b/src/sdl/CMakeLists.txt
index 744b242fa..c7d6c74a4 100644
--- a/src/sdl/CMakeLists.txt
+++ b/src/sdl/CMakeLists.txt
@@ -36,7 +36,6 @@ set(SRB2_SDL2_SOURCES
 	dosstr.c
 	endtxt.c
 	hwsym_sdl.c
-	i_cdmus.c
 	i_main.c
 	i_net.c
 	i_system.c
diff --git a/src/sdl/i_cdmus.c b/src/sdl/i_cdmus.c
deleted file mode 100644
index 5d086e73a..000000000
--- a/src/sdl/i_cdmus.c
+++ /dev/null
@@ -1,37 +0,0 @@
-#include "../command.h"
-#include "../s_sound.h"
-#include "../i_sound.h"
-
-//
-// CD MUSIC I/O
-//
-
-UINT8 cdaudio_started = 0;
-
-consvar_t cd_volume = {"cd_volume","31",CV_SAVE,soundvolume_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
-consvar_t cdUpdate  = {"cd_update","1",CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
-
-
-void I_InitCD(void){}
-
-void I_StopCD(void){}
-
-void I_PauseCD(void){}
-
-void I_ResumeCD(void){}
-
-void I_ShutdownCD(void){}
-
-void I_UpdateCD(void){}
-
-void I_PlayCD(UINT8 track, UINT8 looping)
-{
-	(void)track;
-	(void)looping;
-}
-
-FUNCMATH boolean I_SetVolumeCD(int volume)
-{
-	(void)volume;
-	return false;
-}
diff --git a/src/sdl/i_system.c b/src/sdl/i_system.c
index b24ae2814..83b66ab06 100644
--- a/src/sdl/i_system.c
+++ b/src/sdl/i_system.c
@@ -2328,7 +2328,6 @@ void I_Quit(void)
 	M_FreePlayerSetupColors();
 	I_ShutdownMusic();
 	I_ShutdownSound();
-	I_ShutdownCD();
 	// use this for 1.28 19990220 by Kin
 	I_ShutdownGraphics();
 	I_ShutdownInput();
@@ -2389,16 +2388,14 @@ void I_Error(const char *error, ...)
 		if (errorcount == 3)
 			I_ShutdownSound();
 		if (errorcount == 4)
-			I_ShutdownCD();
-		if (errorcount == 5)
 			I_ShutdownGraphics();
-		if (errorcount == 6)
+		if (errorcount == 5)
 			I_ShutdownInput();
-		if (errorcount == 7)
+		if (errorcount == 6)
 			I_ShutdownSystem();
-		if (errorcount == 8)
+		if (errorcount == 7)
 			SDL_Quit();
-		if (errorcount == 9)
+		if (errorcount == 8)
 		{
 			M_SaveConfig(NULL);
 			G_SaveGameData();
@@ -2446,7 +2443,6 @@ void I_Error(const char *error, ...)
 	M_FreePlayerSetupColors();
 	I_ShutdownMusic();
 	I_ShutdownSound();
-	I_ShutdownCD();
 	// use this for 1.28 19990220 by Kin
 	I_ShutdownGraphics();
 	I_ShutdownInput();