Merge remote-tracking branch 'origin/master' into cdrom_changes

This commit is contained in:
OBattler
2025-02-19 11:22:56 +01:00
31 changed files with 4845 additions and 73 deletions

View File

@@ -26,6 +26,7 @@ extern "C" {
#include <86box/video.h>
#include <86box/vid_8514a_device.h>
#include <86box/vid_xga_device.h>
#include <86box/vid_ps55da2.h>
}
#include "qt_deviceconfig.hpp"
@@ -58,6 +59,7 @@ SettingsDisplay::save()
voodoo_enabled = ui->checkBoxVoodoo->isChecked() ? 1 : 0;
ibm8514_standalone_enabled = ui->checkBox8514->isChecked() ? 1 : 0;
xga_standalone_enabled = ui->checkBoxXga->isChecked() ? 1 : 0;
da2_standalone_enabled = ui->checkBoxDa2->isChecked() ? 1 : 0;
}
void
@@ -149,6 +151,12 @@ SettingsDisplay::on_pushButtonConfigureXga_clicked()
}
}
void
SettingsDisplay::on_pushButtonConfigureDa2_clicked()
{
DeviceConfig::ConfigureDevice(&ps55da2_device, 0, qobject_cast<Settings *>(Settings::settings));
}
void
SettingsDisplay::on_comboBoxVideo_currentIndexChanged(int index)
{
@@ -174,6 +182,7 @@ SettingsDisplay::on_comboBoxVideo_currentIndexChanged(int index)
bool machineSupports8514 = ((machineHasIsa16 || machineHasMca) && !videoCardHas8514);
bool machineSupportsXga = (((machineHasIsa16 && device_available(&xga_isa_device)) || (machineHasMca && device_available(&xga_device))) && !videoCardHasXga);
bool machineSupportsDa2 = machineHasMca && device_available(&ps55da2_device);
ui->checkBox8514->setEnabled(machineSupports8514);
ui->checkBox8514->setChecked(ibm8514_standalone_enabled && machineSupports8514);
@@ -183,7 +192,11 @@ SettingsDisplay::on_comboBoxVideo_currentIndexChanged(int index)
ui->checkBoxXga->setEnabled(machineSupportsXga);
ui->checkBoxXga->setChecked(xga_standalone_enabled && machineSupportsXga);
ui->checkBoxDa2->setEnabled(machineSupportsDa2);
ui->checkBoxDa2->setChecked(da2_standalone_enabled && machineSupportsDa2);
ui->pushButtonConfigureXga->setEnabled(ui->checkBoxXga->isEnabled() && ui->checkBoxXga->isChecked());
ui->pushButtonConfigureDa2->setEnabled(ui->checkBoxDa2->isEnabled() && ui->checkBoxDa2->isChecked());
int c = 2;
@@ -264,6 +277,12 @@ SettingsDisplay::on_checkBoxXga_stateChanged(int state)
ui->pushButtonConfigureXga->setEnabled(state == Qt::Checked);
}
void
SettingsDisplay::on_checkBoxDa2_stateChanged(int state)
{
ui->pushButtonConfigureDa2->setEnabled(state == Qt::Checked);
}
void
SettingsDisplay::on_comboBoxVideoSecondary_currentIndexChanged(int index)
{

View File

@@ -31,10 +31,12 @@ private slots:
void on_checkBoxVoodoo_stateChanged(int state);
void on_checkBox8514_stateChanged(int state);
void on_checkBoxXga_stateChanged(int state);
void on_checkBoxDa2_stateChanged(int state);
void on_comboBoxVideo_currentIndexChanged(int index);
void on_pushButtonConfigureVoodoo_clicked();
void on_pushButtonConfigure8514_clicked();
void on_pushButtonConfigureXga_clicked();
void on_pushButtonConfigureDa2_clicked();
void on_pushButtonConfigure_clicked();
private:

View File

@@ -120,6 +120,20 @@
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QCheckBox" name="checkBoxDa2">
<property name="text">
<string>IBM PS/55 Display Adapter Graphics</string>
</property>
</widget>
</item>
<item row="7" column="2">
<widget class="QPushButton" name="pushButtonConfigureDa2">
<property name="text">
<string>Configure</string>
</property>
</widget>
</item>
<item row="3" column="2">
<widget class="QPushButton" name="pushButtonConfigureSecondary">
<property name="text">
@@ -140,7 +154,7 @@
</property>
</widget>
</item>
<item row="7" column="0" colspan="3">
<item row="8" column="0" colspan="3">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>