Auto check/enable SCSI when needed

If we have a CD inserted, but not emulating a CD32 or CDTV, auto-enable SCSI in the GUI also
This commit is contained in:
Dimitris Panokostas 2020-07-03 10:06:10 +02:00
parent 6848cff4dc
commit 02aa68f5c4
2 changed files with 11 additions and 2 deletions

View file

@ -326,7 +326,8 @@ void target_fixup_options(struct uae_prefs* p)
// If we have a CD inserted, but not emulating a CDTV or CD32, enable SCSI automatically
if (p->cdslots[0].inuse
&& (!p->cs_cd32cd && !p->cs_cd32nvram)
&& (!p->cs_cdtvcd && !p->cs_cdtvram))
&& (!p->cs_cdtvcd && !p->cs_cdtvram)
&& !p->scsi)
{
p->scsi = 1;
}

View file

@ -221,6 +221,14 @@ public:
{
changed_prefs.cdslots[0].inuse = true;
changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE;
if (!changed_prefs.cs_cd32cd && !changed_prefs.cs_cd32nvram
&& (!changed_prefs.cs_cdtvcd && !changed_prefs.cs_cdtvram)
&& !changed_prefs.scsi)
{
changed_prefs.scsi = 1;
chkScsi->setSelected(true);
}
}
RefreshPanelHD();
RefreshPanelQuickstart();
@ -257,7 +265,7 @@ public:
{
if (strncmp(changed_prefs.cdslots[0].name, tmp, MAX_DPATH) != 0)
{
strncpy(changed_prefs.cdslots[0].name, tmp, sizeof(changed_prefs.cdslots[0].name));
strncpy(changed_prefs.cdslots[0].name, tmp, sizeof changed_prefs.cdslots[0].name);
changed_prefs.cdslots[0].inuse = true;
changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE;
AddFileToCDList(tmp, 1);