Port 3 out of 4 recent Win32 commits

This commit is contained in:
Cacodemon345 2021-12-23 01:56:56 +06:00
parent 5b598bf3b0
commit f481574a0f
5 changed files with 19 additions and 8 deletions

3
.gitignore vendored
View File

@ -36,3 +36,6 @@ Makefile
/.vs
/.vscode
src/win/RCa04980
# Qt Creator
CMakeLists.txt.user

View File

@ -239,7 +239,8 @@ void MachineStatus::iterateCDROM(const std::function<void (int)> &cb) {
for (size_t i = 0; i < CDROM_NUM; i++) {
/* Could be Internal or External IDE.. */
if ((cdrom[i].bus_type == CDROM_BUS_ATAPI) &&
!hasIDE() && hdc_name != QStringLiteral("ide"))
!hasIDE() && hdc_name != QStringLiteral("ide") &&
hdc_name != QStringLiteral("xtide"))
continue;
if ((cdrom[i].bus_type == CDROM_BUS_SCSI) && !hasSCSI() &&
(scsi_card_current[0] == 0) && (scsi_card_current[1] == 0) &&
@ -256,7 +257,8 @@ void MachineStatus::iterateZIP(const std::function<void (int)> &cb) {
for (size_t i = 0; i < ZIP_NUM; i++) {
/* Could be Internal or External IDE.. */
if ((zip_drives[i].bus_type == ZIP_BUS_ATAPI) &&
!hasIDE() && hdc_name != QStringLiteral("ide"))
!hasIDE() && hdc_name != QStringLiteral("ide") &&
hdc_name != QStringLiteral("xtide"))
continue;
if ((zip_drives[i].bus_type == ZIP_BUS_SCSI) && !hasSCSI() &&
(scsi_card_current[0] == 0) && (scsi_card_current[1] == 0) &&
@ -273,7 +275,8 @@ void MachineStatus::iterateMO(const std::function<void (int)> &cb) {
for (size_t i = 0; i < MO_NUM; i++) {
/* Could be Internal or External IDE.. */
if ((mo_drives[i].bus_type == MO_BUS_ATAPI) &&
!hasIDE() && hdc_name != QStringLiteral("ide"))
!hasIDE() && hdc_name != QStringLiteral("ide") &&
hdc_name != QStringLiteral("xtide"))
continue;
if ((mo_drives[i].bus_type == MO_BUS_SCSI) && !hasSCSI() &&
(scsi_card_current[0] == 0) && (scsi_card_current[1] == 0) &&

View File

@ -145,7 +145,7 @@ void MediaMenu::cassetteNewImage() {
}
void MediaMenu::cassetteSelectImage(bool wp) {
auto filename = QFileDialog::getOpenFileName(parentWidget, "Open", QString(), "Cassette images (*.pcm;*.raw;*.wav;*.cas);;All files (*)");
auto filename = QFileDialog::getOpenFileName(parentWidget, "Open", QString(), "Cassette images (*.pcm *.PCM *.raw *.RAW *.wav *.WAV *.cas *.CAS);;All files (*)");
cassetteMount(filename, wp);
}
@ -199,7 +199,7 @@ void MediaMenu::cassetteUpdateMenu() {
}
void MediaMenu::cartridgeSelectImage(int i) {
auto filename = QFileDialog::getOpenFileName(parentWidget, "Open", QString(), "Cartridge images (*.a;*.b;*.jrc);;All files (*)");
auto filename = QFileDialog::getOpenFileName(parentWidget, "Open", QString(), "Cartridge images (*.a *.b *.jrc *.A *.B *.JRC);;All files (*)");
if (filename.isEmpty()) {
return;
}
@ -241,7 +241,7 @@ void MediaMenu::floppyNewImage(int i) {
}
void MediaMenu::floppySelectImage(int i, bool wp) {
auto filename = QFileDialog::getOpenFileName(parentWidget, "Open", QString(), "All images (*.0?? *.1?? *.??0 *.86F *.BIN *.CQ? *.D?? *.FLP *.HDM *.IM? *.JSON *.TD0 *.*FD? *.MFM *.XDF);;Advanced sector images (*.IMD *.JSON *.TD0);;Basic sector images (*.0?? *.1?? *.??0 *.BIN *.CQ? *.D?? *.FLP *.HDM *.IM? *.XDF *.*FD?);;Flux images (*.FDI);;Surface images (*.86F *.MFM);;All files (*)");
auto filename = QFileDialog::getOpenFileName(parentWidget, "Open", QString(), "All images (*.0?? *.1?? *.??0 *.86F *.86f *.BIN *.bin *.CQ? *.CQ *.D?? *.d *.FLP *.flp *.HDM *.hdm *.IM? *.im? *.JSON *.json *.TD0 *.td0 *.*FD? *.*fd? *.MFM *.mfm *.XDF *.xdf);;Advanced sector images (*.IMD *.imd *.JSON *.json *.TD0 *.td0);;Basic sector images (*.0?? *.1?? *.??0 *.BIN *.bin *.CQ? *.cq? *.D?? *.d?? *.FLP *.flp *.HDM *.hdm *.IM? *.im? *.XDF *.xdf *.*FD? *.*fd?);;Flux images (*.FDI *.fdi);;Surface images (*.86F *.86f *.MFM *.mfm);;All files (*)");
floppyMount(i, filename, wp);
}

View File

@ -54,6 +54,8 @@ extern "C" {
#include <86box/86box.h>
#include <86box/device.h>
#include <86box/gameport.h>
#include <86box/timer.h>
#include <86box/nvr.h>
#include <86box/plat_dynld.h>
#include <86box/config.h>
#include <86box/ui.h>
@ -328,6 +330,9 @@ plat_pause(int p)
static wchar_t oldtitle[512];
wchar_t title[512];
if ((p == 0) && (time_sync & TIME_SYNC_ENABLED))
nvr_time_sync();
dopause = p;
if (p) {
wcsncpy(oldtitle, ui_window_title(NULL), sizeof_w(oldtitle) - 1);

View File

@ -169,7 +169,7 @@ void SettingsSound::on_comboBoxMidiOut_currentIndexChanged(int index) {
return;
}
ui->pushButtonConfigureMidiOut->setEnabled(midi_device_has_config(ui->comboBoxMidiOut->currentData().toInt()));
ui->checkBoxMPU401->setEnabled(allowMpu401(ui));
ui->checkBoxMPU401->setEnabled(allowMpu401(ui) && (machine_has_bus(machineId, MACHINE_BUS_ISA) || machine_has_bus(machineId, MACHINE_BUS_MCA)));
ui->pushButtonConfigureMPU401->setEnabled(allowMpu401(ui) && ui->checkBoxMPU401->isChecked());
}
@ -182,7 +182,7 @@ void SettingsSound::on_comboBoxMidiIn_currentIndexChanged(int index) {
return;
}
ui->pushButtonConfigureMidiIn->setEnabled(midi_in_device_has_config(ui->comboBoxMidiIn->currentData().toInt()));
ui->checkBoxMPU401->setEnabled(allowMpu401(ui));
ui->checkBoxMPU401->setEnabled(allowMpu401(ui) && (machine_has_bus(machineId, MACHINE_BUS_ISA) || machine_has_bus(machineId, MACHINE_BUS_MCA)));
ui->pushButtonConfigureMPU401->setEnabled(allowMpu401(ui) && ui->checkBoxMPU401->isChecked());
}