MCPcopy Create free account
hub / github.com/AppleWin/AppleWin / GetCardChoicesForSlot

Method GetCardChoicesForSlot

source/CardManager.cpp:377–482  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

375}
376
377void CardManager::GetCardChoicesForSlot(const UINT slot, const SS_CARDTYPE currConfig[NUM_SLOTS], std::vector<SS_CARDTYPE>& choicesList)
378{
379 // Availability & order of cards in drop-down menu:
380 const SS_CARDTYPE cardsOnlyInSlot0[] =
381 {
382 CT_Empty,
383 CT_LanguageCard,
384 CT_Saturn128K,
385 };
386
387 // Availability & order of cards in drop-down menu:
388 const SS_CARDTYPE cardsInSlots1to7[] =
389 {
390 CT_Empty,
391 CT_Disk2,
392 CT_GenericHDD,
393 CT_GenericPrinter,
394 CT_MouseInterface,
395 CT_Saturn128K,
396 CT_SSC,
397 // Controllers
398 CT_FourPlay,
399 CT_SNESMAX,
400 // Sound
401 CT_MockingboardC,
402 CT_Phasor,
403 // CT_MegaAudio, // Exclude mb-audit test h/w for now
404 // CT_SDMusic, // Exclude mb-audit test h/w for now
405 CT_SAM,
406 // (continue with alphabetic)
407 CT_Uthernet,
408 CT_Uthernet2,
409 CT_VidHD,
410 CT_Z80,
411 // CT_GenericClock,
412 // CT_Echo,
413 // CT_80Col,
414 // CT_Extended80Col,
415 // CT_RamWorksIII,
416 // CT_LanguageCardIIe,
417 // CT_BreakpointCard,
418 };
419
420 choicesList.clear();
421
422 if (slot == SLOT0)
423 {
424 choicesList.reserve(std::size(cardsOnlyInSlot0));
425 for (UINT i = 0; i < std::size(cardsOnlyInSlot0); i++)
426 {
427 choicesList.push_back(cardsOnlyInSlot0[i]);
428 }
429 }
430 else
431 {
432 const UINT kInvalidSlot = NUM_SLOTS;
433 BYTE haveCard[CT_NUM_CARDS];
434 memset(haveCard, kInvalidSlot, sizeof(haveCard));

Callers 1

InitOptionsMethod · 0.80

Calls 1

clearMethod · 0.45

Tested by

no test coverage detected