mirror of
https://github.com/AppleWin/AppleWin.git
synced 2024-06-11 19:29:35 +00:00
SetCardMode() - set/unset SSI263 IRQ on a MB<->PH mode switch
This commit is contained in:
parent
84a1f9d19b
commit
3eab08db7c
|
@ -795,6 +795,27 @@ void SSI263::SetSpeechIRQ(void)
|
|||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
void SSI263::SetCardMode(PHASOR_MODE mode)
|
||||
{
|
||||
const PHASOR_MODE oldCardMode = m_cardMode;
|
||||
m_cardMode = mode;
|
||||
|
||||
if ((oldCardMode == PH_Phasor && m_cardMode == PH_Mockingboard)
|
||||
|| (oldCardMode == PH_Mockingboard && m_cardMode == PH_Phasor))
|
||||
{
|
||||
if (m_currentMode.D7 == 1)
|
||||
{
|
||||
m_currentMode.D7 = 0; // So that \PH_Mockingboard\ path sets IFR. Post: D7=1
|
||||
SetSpeechIRQ();
|
||||
}
|
||||
|
||||
if (m_cardMode == PH_Mockingboard)
|
||||
CpuIrqDeassert(IS_SPEECH);
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
bool SSI263::DSInit(void)
|
||||
{
|
||||
//
|
||||
|
|
|
@ -62,7 +62,7 @@ public:
|
|||
}
|
||||
|
||||
void SetDevice(UINT device) { m_device = device; }
|
||||
void SetCardMode(PHASOR_MODE mode) { m_cardMode = mode; }
|
||||
void SetCardMode(PHASOR_MODE mode);
|
||||
|
||||
bool DSInit(void);
|
||||
void DSUninit(void);
|
||||
|
|
Loading…
Reference in New Issue
Block a user