Files
86Box/src/qt/qt_mcadevicelist.cpp

37 lines
973 B
C++

#include "qt_mcadevicelist.hpp"
#include "ui_qt_mcadevicelist.h"
extern "C" {
#include <86box/86box.h>
#include <86box/video.h>
#include <86box/mca.h>
#include <86box/plat.h>
}
MCADeviceList::MCADeviceList(QWidget *parent)
: QDialog(parent)
, ui(new Ui::MCADeviceList)
{
ui->setupUi(this);
startblit();
if (mca_get_nr_cards() == 0) {
ui->listWidget->addItem(QObject::tr("No MCA devices."));
ui->listWidget->setDisabled(true);
} else {
for (int i = 0; i < mca_get_nr_cards(); i++) {
uint32_t deviceId = (mca_read_index(0x00, i) | (mca_read_index(0x01, i) << 8));
if (deviceId != 0xFFFF) {
QString hexRepresentation = QString::asprintf("%04X", deviceId);
ui->listWidget->addItem(QString("Slot %1: 0x%2 (@%3.ADF)").arg(i + 1).arg(hexRepresentation, hexRepresentation));
}
}
}
endblit();
}
MCADeviceList::~MCADeviceList()
{
delete ui;
}