Refactor Mockingboard into a class (#1171)

Mockingboard or Phasor cards can be inserted into any slot.
Change Config->Sound to that slots 4+5 to be individually selected for the 3 soundcard types.
Add MockingboardCardManager class to manage multiple cards and mix the sound buffers.
This commit is contained in:
TomCh
2023-01-28 18:15:28 +00:00
committed by GitHub
parent 4668718fb3
commit 71c67cf132
30 changed files with 1439 additions and 1251 deletions
+1 -3
View File
@@ -211,7 +211,7 @@ void LoadConfiguration(bool loadImages)
SpkrSetVolume(dwTmp, GetPropertySheet().GetVolumeMax());
if(REGLOAD(TEXT(REGVALUE_MB_VOLUME), &dwTmp))
MB_SetVolume(dwTmp, GetPropertySheet().GetVolumeMax());
GetCardMgr().GetMockingboardCardMgr().SetVolume(dwTmp, GetPropertySheet().GetVolumeMax());
if(REGLOAD(TEXT(REGVALUE_SAVE_STATE_ON_EXIT), &dwTmp))
g_bSaveStateOnExit = dwTmp ? true : false;
@@ -528,7 +528,6 @@ void ResetMachineState()
GetVideo().VideoResetState();
KeybReset();
JoyReset();
MB_Reset(true);
SpkrReset();
SetActiveCpu(GetMainCpu());
#ifdef USE_SPEECH_API
@@ -568,7 +567,6 @@ void CtrlReset()
GetPravets().Reset();
GetCardMgr().Reset(false);
KeybReset();
MB_Reset(false);
#ifdef USE_SPEECH_API
g_Speech.Reset();
#endif