VidHD: permit in any slot

This commit is contained in:
tomcw
2025-11-24 20:49:49 +00:00
parent 9d2203cf24
commit ed9b70c108
4 changed files with 22 additions and 17 deletions
+7 -5
View File
@@ -111,7 +111,9 @@ void CardManager::InsertInternal(UINT slot, SS_CARDTYPE type)
m_slot[slot] = new SNESMAXCard(slot);
break;
case CT_VidHD:
m_slot[slot] = new VidHDCard(slot);
_ASSERT(m_pVidHDCard == NULL);
if (m_pVidHDCard) break; // Only support one VidHD card
m_slot[slot] = m_pVidHDCard = new VidHDCard(slot);
break;
case CT_Uthernet2:
m_slot[slot] = new Uthernet2(slot);
@@ -177,6 +179,9 @@ void CardManager::RemoveInternal(UINT slot)
if (slot == SLOT0)
GetLanguageCardMgr().SetLanguageCard(CT_Empty);
break;
case CT_VidHD:
m_pVidHDCard = NULL;
break;
case CT_Z80:
m_pZ80Card = NULL;
break;
@@ -369,7 +374,7 @@ void CardManager::GetCardChoicesForSlot(const UINT slot, const SS_CARDTYPE currC
// (continue with alphabetic)
CT_Uthernet,
CT_Uthernet2,
CT_VidHD, // Slot 3 only
CT_VidHD,
CT_Z80,
// CT_GenericClock,
// CT_Echo,
@@ -409,9 +414,6 @@ void CardManager::GetCardChoicesForSlot(const UINT slot, const SS_CARDTYPE currC
{
const SS_CARDTYPE thisCard = cards[i];
if (thisCard == CT_VidHD && slot != SLOT3)
continue;
// Prevent both Uthernet & Uthernet2 cards being plugged in at the same time
if (thisCard == CT_Uthernet && haveCard[CT_Uthernet2] != kInvalidSlot && haveCard[CT_Uthernet2] != slot)
continue; // Already have a Uthernet2 card selected in another slot, so prevent Uthernet