Merge remote-tracking branch 'origin/master' into qt-wacom-serial
This commit is contained in:
10
README.md
10
README.md
@@ -49,6 +49,16 @@ Licensing
|
|||||||
|
|
||||||
The emulator can also optionally make use of [munt](https://github.com/munt/munt), [FluidSynth](https://www.fluidsynth.org/), [Ghostscript](https://www.ghostscript.com/) and [Discord Game SDK](https://discord.com/developers/docs/game-sdk/sdk-starter-guide), which are distributed under their respective licenses.
|
The emulator can also optionally make use of [munt](https://github.com/munt/munt), [FluidSynth](https://www.fluidsynth.org/), [Ghostscript](https://www.ghostscript.com/) and [Discord Game SDK](https://discord.com/developers/docs/game-sdk/sdk-starter-guide), which are distributed under their respective licenses.
|
||||||
|
|
||||||
|
Contribution requirements
|
||||||
|
-------------------------
|
||||||
|
Formal codification of the project's emulated hardware contribution requirements, which all have to be met to accept an addition:
|
||||||
|
* A ROM must be available;
|
||||||
|
* Documentation must be available or it must be feasible to reverse engineer with a reasonable amount of time and effort;
|
||||||
|
* It must be feasible to implement with a reasonable amount of time and effort;
|
||||||
|
* It has to fall inside the project's scope.
|
||||||
|
|
||||||
|
Where unsure or for more details about the project's emulated hardware contribution requirements, contact a Contributor or higher.
|
||||||
|
|
||||||
Donations
|
Donations
|
||||||
---------
|
---------
|
||||||
We do not charge you for the emulator but donations are still welcome:
|
We do not charge you for the emulator but donations are still welcome:
|
||||||
|
|||||||
@@ -853,7 +853,7 @@ pc_init_modules(void)
|
|||||||
|
|
||||||
/* Load the ROMs for the selected machine. */
|
/* Load the ROMs for the selected machine. */
|
||||||
if (!machine_available(machine)) {
|
if (!machine_available(machine)) {
|
||||||
swprintf(temp, sizeof(temp), plat_get_string(IDS_2063), machine_getname());
|
swprintf(temp, sizeof_w(temp), plat_get_string(IDS_2063), machine_getname());
|
||||||
c = 0;
|
c = 0;
|
||||||
machine = -1;
|
machine = -1;
|
||||||
while (machine_get_internal_name_ex(c) != NULL) {
|
while (machine_get_internal_name_ex(c) != NULL) {
|
||||||
@@ -876,7 +876,7 @@ pc_init_modules(void)
|
|||||||
if (!video_card_available(gfxcard[0])) {
|
if (!video_card_available(gfxcard[0])) {
|
||||||
memset(tempc, 0, sizeof(tempc));
|
memset(tempc, 0, sizeof(tempc));
|
||||||
device_get_name(video_card_getdevice(gfxcard[0]), 0, tempc);
|
device_get_name(video_card_getdevice(gfxcard[0]), 0, tempc);
|
||||||
swprintf(temp, sizeof(temp), plat_get_string(IDS_2064), tempc);
|
swprintf(temp, sizeof_w(temp), plat_get_string(IDS_2064), tempc);
|
||||||
c = 0;
|
c = 0;
|
||||||
while (video_get_internal_name(c) != NULL) {
|
while (video_get_internal_name(c) != NULL) {
|
||||||
gfxcard[0] = -1;
|
gfxcard[0] = -1;
|
||||||
@@ -898,7 +898,7 @@ pc_init_modules(void)
|
|||||||
if (!video_card_available(gfxcard[1])) {
|
if (!video_card_available(gfxcard[1])) {
|
||||||
char tempc[512] = { 0 };
|
char tempc[512] = { 0 };
|
||||||
device_get_name(video_card_getdevice(gfxcard[1]), 0, tempc);
|
device_get_name(video_card_getdevice(gfxcard[1]), 0, tempc);
|
||||||
swprintf(temp, sizeof(temp), (wchar_t *) "Video card #2 \"%hs\" is not available due to missing ROMs in the roms/video directory. Disabling the second video card.", tempc);
|
swprintf(temp, sizeof_w(temp), (wchar_t *) "Video card #2 \"%hs\" is not available due to missing ROMs in the roms/video directory. Disabling the second video card.", tempc);
|
||||||
ui_msgbox_header(MBX_INFO, (wchar_t *) IDS_2129, temp);
|
ui_msgbox_header(MBX_INFO, (wchar_t *) IDS_2129, temp);
|
||||||
gfxcard[1] = 0;
|
gfxcard[1] = 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -744,7 +744,7 @@ rop81_l(uint8_t opcode, uint32_t fetchdat, uint32_t op_32, uint32_t op_pc, codeb
|
|||||||
host_reg = 0;
|
host_reg = 0;
|
||||||
} else {
|
} else {
|
||||||
SAVE_EA();
|
SAVE_EA();
|
||||||
MEM_CHECK_WRITE(target_seg);
|
MEM_CHECK_WRITE_L(target_seg);
|
||||||
host_reg = MEM_LOAD_ADDR_EA_L_NO_ABRT(target_seg);
|
host_reg = MEM_LOAD_ADDR_EA_L_NO_ABRT(target_seg);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1733,6 +1733,12 @@ xebec_available(void)
|
|||||||
return (rom_present(XEBEC_BIOS_FILE));
|
return (rom_present(XEBEC_BIOS_FILE));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
wdxt_available(void)
|
||||||
|
{
|
||||||
|
return (rom_present(WDXT_GEN_BIOS_FILE));
|
||||||
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
dtc5150x_available(void)
|
dtc5150x_available(void)
|
||||||
{
|
{
|
||||||
@@ -2141,13 +2147,13 @@ const device_t st506_xt_xebec_device = {
|
|||||||
|
|
||||||
const device_t st506_xt_wdxt_gen_device = {
|
const device_t st506_xt_wdxt_gen_device = {
|
||||||
.name = "Western Digital WDXT-GEN (MFM)",
|
.name = "Western Digital WDXT-GEN (MFM)",
|
||||||
.internal_name = "st506_xt",
|
.internal_name = "st506_xt_gen",
|
||||||
.flags = DEVICE_ISA,
|
.flags = DEVICE_ISA,
|
||||||
.local = (HDD_BUS_MFM << 8) | ST506_XT_TYPE_WDXT_GEN,
|
.local = (HDD_BUS_MFM << 8) | ST506_XT_TYPE_WDXT_GEN,
|
||||||
.init = st506_init,
|
.init = st506_init,
|
||||||
.close = st506_close,
|
.close = st506_close,
|
||||||
.reset = NULL,
|
.reset = NULL,
|
||||||
{ .available = xebec_available },
|
{ .available = wdxt_available },
|
||||||
.speed_changed = NULL,
|
.speed_changed = NULL,
|
||||||
.force_redraw = NULL,
|
.force_redraw = NULL,
|
||||||
.config = NULL
|
.config = NULL
|
||||||
|
|||||||
@@ -611,6 +611,7 @@ extern int machine_at_acerv35n_init(const machine_t *);
|
|||||||
extern int machine_at_p55t2p4_init(const machine_t *);
|
extern int machine_at_p55t2p4_init(const machine_t *);
|
||||||
extern int machine_at_m7shi_init(const machine_t *);
|
extern int machine_at_m7shi_init(const machine_t *);
|
||||||
extern int machine_at_tc430hx_init(const machine_t *);
|
extern int machine_at_tc430hx_init(const machine_t *);
|
||||||
|
extern int machine_at_infinia7200_init(const machine_t *);
|
||||||
extern int machine_at_equium5200_init(const machine_t *);
|
extern int machine_at_equium5200_init(const machine_t *);
|
||||||
extern int machine_at_pcv90_init(const machine_t *);
|
extern int machine_at_pcv90_init(const machine_t *);
|
||||||
extern int machine_at_p65up5_cp55t2d_init(const machine_t *);
|
extern int machine_at_p65up5_cp55t2d_init(const machine_t *);
|
||||||
|
|||||||
@@ -199,6 +199,42 @@ machine_at_tc430hx_init(const machine_t *model)
|
|||||||
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||||
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||||
|
device_add(&s3_virge_375_pci_device);
|
||||||
|
device_add(&i430hx_device);
|
||||||
|
device_add(&piix3_device);
|
||||||
|
device_add(&keyboard_ps2_ami_pci_device);
|
||||||
|
device_add(&pc87306_device);
|
||||||
|
device_add(&intel_flash_bxt_ami_device);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
machine_at_infinia7200_init(const machine_t *model)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
ret = bios_load_linear_combined2("roms/machines/infinia7200/1008DH08.BIO",
|
||||||
|
"roms/machines/infinia7200/1008DH08.BI1",
|
||||||
|
"roms/machines/infinia7200/1008DH08.BI2",
|
||||||
|
"roms/machines/infinia7200/1008DH08.BI3",
|
||||||
|
"roms/machines/infinia7200/1008DH08.RCV",
|
||||||
|
0x3a000, 128);
|
||||||
|
|
||||||
|
if (bios_only || !ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
machine_at_common_init(model);
|
||||||
|
|
||||||
|
pci_init(PCI_CONFIG_TYPE_1);
|
||||||
|
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||||
|
pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
|
||||||
|
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||||
|
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||||
|
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||||
|
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||||
|
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||||
|
device_add(&s3_virge_375_pci_device);
|
||||||
device_add(&i430hx_device);
|
device_add(&i430hx_device);
|
||||||
device_add(&piix3_device);
|
device_add(&piix3_device);
|
||||||
device_add(&keyboard_ps2_ami_pci_device);
|
device_add(&keyboard_ps2_ami_pci_device);
|
||||||
|
|||||||
@@ -37,6 +37,7 @@
|
|||||||
#include <86box/pit.h>
|
#include <86box/pit.h>
|
||||||
#include <86box/mem.h>
|
#include <86box/mem.h>
|
||||||
#include <86box/device.h>
|
#include <86box/device.h>
|
||||||
|
#include <86box/gameport.h>
|
||||||
#include <86box/serial.h>
|
#include <86box/serial.h>
|
||||||
#include <86box/keyboard.h>
|
#include <86box/keyboard.h>
|
||||||
#include <86box/rom.h>
|
#include <86box/rom.h>
|
||||||
@@ -815,5 +816,8 @@ machine_pcjr_init(const machine_t *model)
|
|||||||
device_add(&ns8250_pcjr_device);
|
device_add(&ns8250_pcjr_device);
|
||||||
serial_set_next_inst(SERIAL_MAX); /* So that serial_standalone_init() won't do anything. */
|
serial_set_next_inst(SERIAL_MAX); /* So that serial_standalone_init() won't do anything. */
|
||||||
|
|
||||||
|
/* "All the inputs are 'read' with one 'IN' from address hex 201." - PCjr Technical Reference (Nov. 83), p.2-119 */
|
||||||
|
standalone_gameport_type = &gameport_201_device;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8584,7 +8584,7 @@ const machine_t machines[] = {
|
|||||||
{
|
{
|
||||||
.name = "[i430FX] DataExpert EXP8551",
|
.name = "[i430FX] DataExpert EXP8551",
|
||||||
.internal_name = "exp8551",
|
.internal_name = "exp8551",
|
||||||
.type = MACHINE_TYPE_SOCKET5,
|
.type = MACHINE_TYPE_SOCKET7_3V,
|
||||||
.chipset = MACHINE_CHIPSET_INTEL_430FX,
|
.chipset = MACHINE_CHIPSET_INTEL_430FX,
|
||||||
.init = machine_at_exp8551_init,
|
.init = machine_at_exp8551_init,
|
||||||
.pad = 0,
|
.pad = 0,
|
||||||
@@ -8906,7 +8906,7 @@ const machine_t machines[] = {
|
|||||||
{
|
{
|
||||||
.name = "[i430FX] PC Partner MB500N",
|
.name = "[i430FX] PC Partner MB500N",
|
||||||
.internal_name = "mb500n",
|
.internal_name = "mb500n",
|
||||||
.type = MACHINE_TYPE_SOCKET5,
|
.type = MACHINE_TYPE_SOCKET7_3V,
|
||||||
.chipset = MACHINE_CHIPSET_INTEL_430FX,
|
.chipset = MACHINE_CHIPSET_INTEL_430FX,
|
||||||
.init = machine_at_mb500n_init,
|
.init = machine_at_mb500n_init,
|
||||||
.pad = 0,
|
.pad = 0,
|
||||||
@@ -9447,7 +9447,47 @@ const machine_t machines[] = {
|
|||||||
.max_multi = 3.0
|
.max_multi = 3.0
|
||||||
},
|
},
|
||||||
.bus_flags = MACHINE_PS2_PCI,
|
.bus_flags = MACHINE_PS2_PCI,
|
||||||
.flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI,
|
.flags = MACHINE_VIDEO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI,
|
||||||
|
.ram = {
|
||||||
|
.min = 8192,
|
||||||
|
.max = 131072,
|
||||||
|
.step = 8192
|
||||||
|
},
|
||||||
|
.nvrmask = 255,
|
||||||
|
.kbc_device = NULL,
|
||||||
|
.kbc_p1 = 0,
|
||||||
|
.gpio = 0,
|
||||||
|
.device = NULL,
|
||||||
|
.fdc_device = NULL,
|
||||||
|
.sio_device = NULL,
|
||||||
|
.vid_device = NULL,
|
||||||
|
.snd_device = NULL,
|
||||||
|
.net_device = NULL
|
||||||
|
},
|
||||||
|
/* OEM version of Intel TC430HX, has AMI MegaKey KBC firmware on the PC87306
|
||||||
|
Super I/O chip */
|
||||||
|
{
|
||||||
|
.name = "[i430HX] Toshiba Infinia 7200",
|
||||||
|
.internal_name = "infinia7200",
|
||||||
|
.type = MACHINE_TYPE_SOCKET7,
|
||||||
|
.chipset = MACHINE_CHIPSET_INTEL_430HX,
|
||||||
|
.init = machine_at_infinia7200_init,
|
||||||
|
.pad = 0,
|
||||||
|
.pad0 = 0,
|
||||||
|
.pad1 = MACHINE_AVAILABLE,
|
||||||
|
.pad2 = 0,
|
||||||
|
.cpu = {
|
||||||
|
.package = CPU_PKG_SOCKET5_7,
|
||||||
|
.block = CPU_BLOCK_NONE,
|
||||||
|
.min_bus = 50000000,
|
||||||
|
.max_bus = 66666667,
|
||||||
|
.min_voltage = 2800,
|
||||||
|
.max_voltage = 3520,
|
||||||
|
.min_multi = 1.5,
|
||||||
|
.max_multi = 3.0
|
||||||
|
},
|
||||||
|
.bus_flags = MACHINE_PS2_PCI,
|
||||||
|
.flags = MACHINE_VIDEO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI,
|
||||||
.ram = {
|
.ram = {
|
||||||
.min = 8192,
|
.min = 8192,
|
||||||
.max = 131072,
|
.max = 131072,
|
||||||
|
|||||||
@@ -6,20 +6,20 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>831</width>
|
<width>800</width>
|
||||||
<height>595</height>
|
<height>570</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>831</width>
|
<width>800</width>
|
||||||
<height>595</height>
|
<height>570</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="maximumSize">
|
<property name="maximumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>831</width>
|
<width>800</width>
|
||||||
<height>595</height>
|
<height>570</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
@@ -29,6 +29,12 @@
|
|||||||
<item>
|
<item>
|
||||||
<widget class="QWidget" name="widget" native="true">
|
<widget class="QWidget" name="widget" native="true">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout" stretch="1,3">
|
<layout class="QHBoxLayout" name="horizontalLayout" stretch="1,3">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QListView" name="listView">
|
<widget class="QListView" name="listView">
|
||||||
<property name="viewMode">
|
<property name="viewMode">
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Form</string>
|
<string>Form</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
<layout class="QGridLayout" name="gridLayout" columnstretch="2,1,1">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
@@ -26,14 +26,108 @@
|
|||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="3" column="0" colspan="2">
|
<item row="1" column="2">
|
||||||
|
<widget class="QPushButton" name="pushButtonConfigure">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Configure</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="6" column="0" colspan="2">
|
||||||
|
<widget class="QCheckBox" name="checkBoxXga">
|
||||||
|
<property name="text">
|
||||||
|
<string>XGA</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Video:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0" colspan="2">
|
||||||
|
<widget class="QComboBox" name="comboBoxVideo">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="4" column="2">
|
||||||
|
<widget class="QPushButton" name="pushButtonConfigureVoodoo">
|
||||||
|
<property name="text">
|
||||||
|
<string>Configure</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="0">
|
||||||
|
<widget class="QLabel" name="label_2">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Video #2:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="5" column="0" colspan="2">
|
||||||
<widget class="QCheckBox" name="checkBox8514">
|
<widget class="QCheckBox" name="checkBox8514">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>8514/A</string>
|
<string>8514/A</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="5" column="0">
|
<item row="4" column="0" colspan="2">
|
||||||
|
<widget class="QCheckBox" name="checkBoxVoodoo">
|
||||||
|
<property name="text">
|
||||||
|
<string>Voodoo Graphics</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="6" column="2">
|
||||||
|
<widget class="QPushButton" name="pushButtonConfigureXga">
|
||||||
|
<property name="text">
|
||||||
|
<string>Configure</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="2">
|
||||||
|
<widget class="QPushButton" name="pushButtonConfigureSecondary">
|
||||||
|
<property name="text">
|
||||||
|
<string>Configure</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="0" colspan="2">
|
||||||
|
<widget class="QComboBox" name="comboBoxVideoSecondary">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="7" column="0" colspan="3">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
@@ -46,74 +140,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="QComboBox" name="comboBoxVideo"/>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="2">
|
|
||||||
<widget class="QPushButton" name="pushButtonConfigure">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Configure</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="0" colspan="2">
|
|
||||||
<widget class="QCheckBox" name="checkBoxVoodoo">
|
|
||||||
<property name="text">
|
|
||||||
<string>Voodoo Graphics</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="2">
|
|
||||||
<widget class="QPushButton" name="pushButtonConfigureVoodoo">
|
|
||||||
<property name="text">
|
|
||||||
<string>Configure</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QLabel" name="label">
|
|
||||||
<property name="text">
|
|
||||||
<string>Video:</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="4" column="0" colspan="2">
|
|
||||||
<widget class="QCheckBox" name="checkBoxXga">
|
|
||||||
<property name="text">
|
|
||||||
<string>XGA</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="4" column="2">
|
|
||||||
<widget class="QPushButton" name="pushButtonConfigureXga">
|
|
||||||
<property name="text">
|
|
||||||
<string>Configure</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="0">
|
|
||||||
<widget class="QLabel" name="label_2">
|
|
||||||
<property name="text">
|
|
||||||
<string>Video #2:</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="1">
|
|
||||||
<widget class="QComboBox" name="comboBoxVideoSecondary"/>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="2">
|
|
||||||
<widget class="QPushButton" name="pushButtonConfigureSecondary">
|
|
||||||
<property name="text">
|
|
||||||
<string>Configure</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<resources/>
|
<resources/>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>548</width>
|
<width>548</width>
|
||||||
<height>458</height>
|
<height>488</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
@@ -27,302 +27,426 @@
|
|||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="groupBox">
|
<widget class="QTabWidget" name="tabWidget">
|
||||||
<property name="title">
|
<property name="currentIndex">
|
||||||
<string>Network Interface Contollers</string>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_3">
|
<widget class="QWidget" name="tab_1">
|
||||||
<item row="0" column="4">
|
<attribute name="title">
|
||||||
<widget class="QLabel" name="label_7">
|
<string>Network Card #1</string>
|
||||||
<property name="sizePolicy">
|
</attribute>
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
|
<layout class="QGridLayout" name="gridLayout_3">
|
||||||
<horstretch>0</horstretch>
|
<item row="2" column="1">
|
||||||
<verstretch>0</verstretch>
|
<widget class="QComboBox" name="comboBoxNIC1">
|
||||||
</sizepolicy>
|
<property name="sizePolicy">
|
||||||
</property>
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
<property name="text">
|
<horstretch>0</horstretch>
|
||||||
<string>Adapter</string>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
<property name="sizeAdjustPolicy">
|
||||||
<item row="4" column="3">
|
<enum>QComboBox::AdjustToContents</enum>
|
||||||
<widget class="QComboBox" name="comboBoxIntf4">
|
</property>
|
||||||
<property name="sizePolicy">
|
</widget>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
</item>
|
||||||
<horstretch>0</horstretch>
|
<item row="2" column="0">
|
||||||
<verstretch>0</verstretch>
|
<widget class="QLabel" name="label_7">
|
||||||
</sizepolicy>
|
<property name="sizePolicy">
|
||||||
</property>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
</widget>
|
<horstretch>0</horstretch>
|
||||||
</item>
|
<verstretch>0</verstretch>
|
||||||
<item row="3" column="3">
|
</sizepolicy>
|
||||||
<widget class="QComboBox" name="comboBoxIntf3">
|
</property>
|
||||||
<property name="sizePolicy">
|
<property name="text">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<string>Adapter</string>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
</widget>
|
||||||
</sizepolicy>
|
</item>
|
||||||
</property>
|
<item row="0" column="1" colspan="2">
|
||||||
</widget>
|
<widget class="QComboBox" name="comboBoxNet1">
|
||||||
</item>
|
<property name="sizePolicy">
|
||||||
<item row="3" column="5">
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
<widget class="QPushButton" name="pushButtonConf3">
|
<horstretch>0</horstretch>
|
||||||
<property name="sizePolicy">
|
<verstretch>0</verstretch>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
</sizepolicy>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
</widget>
|
||||||
</sizepolicy>
|
</item>
|
||||||
</property>
|
<item row="2" column="2">
|
||||||
<property name="text">
|
<widget class="QPushButton" name="pushButtonConf1">
|
||||||
<string>Configure</string>
|
<property name="sizePolicy">
|
||||||
</property>
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
</widget>
|
<horstretch>0</horstretch>
|
||||||
</item>
|
<verstretch>0</verstretch>
|
||||||
<item row="1" column="2">
|
</sizepolicy>
|
||||||
<widget class="QComboBox" name="comboBoxNet1">
|
</property>
|
||||||
<property name="sizePolicy">
|
<property name="text">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<string>Configure</string>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
</widget>
|
||||||
</sizepolicy>
|
</item>
|
||||||
</property>
|
<item row="1" column="0">
|
||||||
</widget>
|
<widget class="QLabel" name="label_2">
|
||||||
</item>
|
<property name="sizePolicy">
|
||||||
<item row="3" column="0">
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
<widget class="QLabel" name="label_6">
|
<horstretch>0</horstretch>
|
||||||
<property name="sizePolicy">
|
<verstretch>0</verstretch>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
</sizepolicy>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
<property name="text">
|
||||||
</sizepolicy>
|
<string>Interface</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
</widget>
|
||||||
<string>Card 3:</string>
|
</item>
|
||||||
</property>
|
<item row="0" column="0">
|
||||||
</widget>
|
<widget class="QLabel" name="label">
|
||||||
</item>
|
<property name="sizePolicy">
|
||||||
<item row="4" column="4">
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
<widget class="QComboBox" name="comboBoxNIC4">
|
<horstretch>0</horstretch>
|
||||||
<property name="sizePolicy">
|
<verstretch>0</verstretch>
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
</sizepolicy>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
<property name="text">
|
||||||
</sizepolicy>
|
<string>Mode</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizeAdjustPolicy">
|
</widget>
|
||||||
<enum>QComboBox::AdjustToContents</enum>
|
</item>
|
||||||
</property>
|
<item row="1" column="1" colspan="2">
|
||||||
</widget>
|
<widget class="QComboBox" name="comboBoxIntf1">
|
||||||
</item>
|
<property name="sizePolicy">
|
||||||
<item row="1" column="0">
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
<widget class="QLabel" name="label_3">
|
<horstretch>0</horstretch>
|
||||||
<property name="sizePolicy">
|
<verstretch>0</verstretch>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
</sizepolicy>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
</widget>
|
||||||
</sizepolicy>
|
</item>
|
||||||
</property>
|
<item row="3" column="1">
|
||||||
<property name="text">
|
<spacer name="verticalSpacer_2">
|
||||||
<string>Card 1:</string>
|
<property name="orientation">
|
||||||
</property>
|
<enum>Qt::Vertical</enum>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
<property name="sizeHint" stdset="0">
|
||||||
<item row="0" column="3">
|
<size>
|
||||||
<widget class="QLabel" name="label_2">
|
<width>20</width>
|
||||||
<property name="sizePolicy">
|
<height>40</height>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
</size>
|
||||||
<horstretch>0</horstretch>
|
</property>
|
||||||
<verstretch>0</verstretch>
|
</spacer>
|
||||||
</sizepolicy>
|
</item>
|
||||||
</property>
|
</layout>
|
||||||
<property name="text">
|
</widget>
|
||||||
<string>Interface</string>
|
<widget class="QWidget" name="tab_2">
|
||||||
</property>
|
<attribute name="title">
|
||||||
</widget>
|
<string>Network Card #2</string>
|
||||||
</item>
|
</attribute>
|
||||||
<item row="1" column="4">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<widget class="QComboBox" name="comboBoxNIC1">
|
<item row="1" column="0">
|
||||||
<property name="sizePolicy">
|
<widget class="QLabel" name="label_9">
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
<property name="sizePolicy">
|
||||||
<horstretch>0</horstretch>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
<verstretch>0</verstretch>
|
<horstretch>0</horstretch>
|
||||||
</sizepolicy>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
<property name="sizeAdjustPolicy">
|
</property>
|
||||||
<enum>QComboBox::AdjustToContents</enum>
|
<property name="text">
|
||||||
</property>
|
<string>Interface</string>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
</widget>
|
||||||
<item row="1" column="5">
|
</item>
|
||||||
<widget class="QPushButton" name="pushButtonConf1">
|
<item row="0" column="0">
|
||||||
<property name="sizePolicy">
|
<widget class="QLabel" name="label_8">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<property name="sizePolicy">
|
||||||
<horstretch>0</horstretch>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
<verstretch>0</verstretch>
|
<horstretch>0</horstretch>
|
||||||
</sizepolicy>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
<property name="text">
|
</property>
|
||||||
<string>Configure</string>
|
<property name="text">
|
||||||
</property>
|
<string>Mode</string>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
</widget>
|
||||||
<item row="3" column="4">
|
</item>
|
||||||
<widget class="QComboBox" name="comboBoxNIC3">
|
<item row="2" column="0">
|
||||||
<property name="sizePolicy">
|
<widget class="QLabel" name="label_10">
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
<property name="sizePolicy">
|
||||||
<horstretch>0</horstretch>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
<verstretch>0</verstretch>
|
<horstretch>0</horstretch>
|
||||||
</sizepolicy>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
<property name="sizeAdjustPolicy">
|
</property>
|
||||||
<enum>QComboBox::AdjustToContents</enum>
|
<property name="text">
|
||||||
</property>
|
<string>Adapter</string>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
</widget>
|
||||||
<item row="4" column="2">
|
</item>
|
||||||
<widget class="QComboBox" name="comboBoxNet4">
|
<item row="2" column="1">
|
||||||
<property name="sizePolicy">
|
<widget class="QComboBox" name="comboBoxNIC2">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<property name="sizePolicy">
|
||||||
<horstretch>0</horstretch>
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
<verstretch>0</verstretch>
|
<horstretch>0</horstretch>
|
||||||
</sizepolicy>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
<property name="sizeAdjustPolicy">
|
||||||
<item row="4" column="0">
|
<enum>QComboBox::AdjustToContents</enum>
|
||||||
<widget class="QLabel" name="label_5">
|
</property>
|
||||||
<property name="sizePolicy">
|
</widget>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
</item>
|
||||||
<horstretch>0</horstretch>
|
<item row="0" column="1" colspan="2">
|
||||||
<verstretch>0</verstretch>
|
<widget class="QComboBox" name="comboBoxNet2">
|
||||||
</sizepolicy>
|
<property name="sizePolicy">
|
||||||
</property>
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
<property name="text">
|
<horstretch>0</horstretch>
|
||||||
<string>Card 4:</string>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
</widget>
|
</property>
|
||||||
</item>
|
</widget>
|
||||||
<item row="0" column="2">
|
</item>
|
||||||
<widget class="QLabel" name="label">
|
<item row="1" column="1" colspan="2">
|
||||||
<property name="sizePolicy">
|
<widget class="QComboBox" name="comboBoxIntf2">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
<property name="sizePolicy">
|
||||||
<horstretch>0</horstretch>
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
<verstretch>0</verstretch>
|
<horstretch>0</horstretch>
|
||||||
</sizepolicy>
|
<verstretch>0</verstretch>
|
||||||
</property>
|
</sizepolicy>
|
||||||
<property name="text">
|
</property>
|
||||||
<string>Mode</string>
|
</widget>
|
||||||
</property>
|
</item>
|
||||||
</widget>
|
<item row="2" column="2">
|
||||||
</item>
|
<widget class="QPushButton" name="pushButtonConf2">
|
||||||
<item row="2" column="0">
|
<property name="text">
|
||||||
<widget class="QLabel" name="label_4">
|
<string>Configure</string>
|
||||||
<property name="sizePolicy">
|
</property>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
</widget>
|
||||||
<horstretch>0</horstretch>
|
</item>
|
||||||
<verstretch>0</verstretch>
|
<item row="3" column="1">
|
||||||
</sizepolicy>
|
<spacer name="verticalSpacer">
|
||||||
</property>
|
<property name="orientation">
|
||||||
<property name="text">
|
<enum>Qt::Vertical</enum>
|
||||||
<string>Card 2:</string>
|
</property>
|
||||||
</property>
|
<property name="sizeHint" stdset="0">
|
||||||
</widget>
|
<size>
|
||||||
</item>
|
<width>20</width>
|
||||||
<item row="3" column="2">
|
<height>40</height>
|
||||||
<widget class="QComboBox" name="comboBoxNet3">
|
</size>
|
||||||
<property name="sizePolicy">
|
</property>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
</spacer>
|
||||||
<horstretch>0</horstretch>
|
</item>
|
||||||
<verstretch>0</verstretch>
|
</layout>
|
||||||
</sizepolicy>
|
</widget>
|
||||||
</property>
|
<widget class="QWidget" name="tab_3">
|
||||||
</widget>
|
<attribute name="title">
|
||||||
</item>
|
<string>Network Card #3</string>
|
||||||
<item row="2" column="2">
|
</attribute>
|
||||||
<widget class="QComboBox" name="comboBoxNet2">
|
<layout class="QGridLayout" name="gridLayout_2">
|
||||||
<property name="sizePolicy">
|
<item row="0" column="1" colspan="2">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<widget class="QComboBox" name="comboBoxNet3">
|
||||||
<horstretch>0</horstretch>
|
<property name="sizePolicy">
|
||||||
<verstretch>0</verstretch>
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
</sizepolicy>
|
<horstretch>0</horstretch>
|
||||||
</property>
|
<verstretch>0</verstretch>
|
||||||
</widget>
|
</sizepolicy>
|
||||||
</item>
|
</property>
|
||||||
<item row="2" column="5">
|
</widget>
|
||||||
<widget class="QPushButton" name="pushButtonConf2">
|
</item>
|
||||||
<property name="sizePolicy">
|
<item row="2" column="0">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<widget class="QLabel" name="label_13">
|
||||||
<horstretch>0</horstretch>
|
<property name="sizePolicy">
|
||||||
<verstretch>0</verstretch>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
</sizepolicy>
|
<horstretch>0</horstretch>
|
||||||
</property>
|
<verstretch>0</verstretch>
|
||||||
<property name="text">
|
</sizepolicy>
|
||||||
<string>Configure</string>
|
</property>
|
||||||
</property>
|
<property name="text">
|
||||||
</widget>
|
<string>Adapter</string>
|
||||||
</item>
|
</property>
|
||||||
<item row="4" column="5">
|
</widget>
|
||||||
<widget class="QPushButton" name="pushButtonConf4">
|
</item>
|
||||||
<property name="sizePolicy">
|
<item row="0" column="0">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<widget class="QLabel" name="label_11">
|
||||||
<horstretch>0</horstretch>
|
<property name="sizePolicy">
|
||||||
<verstretch>0</verstretch>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
</sizepolicy>
|
<horstretch>0</horstretch>
|
||||||
</property>
|
<verstretch>0</verstretch>
|
||||||
<property name="text">
|
</sizepolicy>
|
||||||
<string>Configure</string>
|
</property>
|
||||||
</property>
|
<property name="text">
|
||||||
</widget>
|
<string>Mode</string>
|
||||||
</item>
|
</property>
|
||||||
<item row="1" column="3">
|
</widget>
|
||||||
<widget class="QComboBox" name="comboBoxIntf1">
|
</item>
|
||||||
<property name="sizePolicy">
|
<item row="1" column="0">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<widget class="QLabel" name="label_12">
|
||||||
<horstretch>0</horstretch>
|
<property name="sizePolicy">
|
||||||
<verstretch>0</verstretch>
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
</sizepolicy>
|
<horstretch>0</horstretch>
|
||||||
</property>
|
<verstretch>0</verstretch>
|
||||||
</widget>
|
</sizepolicy>
|
||||||
</item>
|
</property>
|
||||||
<item row="2" column="3">
|
<property name="text">
|
||||||
<widget class="QComboBox" name="comboBoxIntf2">
|
<string>Interface</string>
|
||||||
<property name="sizePolicy">
|
</property>
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
</widget>
|
||||||
<horstretch>0</horstretch>
|
</item>
|
||||||
<verstretch>0</verstretch>
|
<item row="1" column="1" colspan="2">
|
||||||
</sizepolicy>
|
<widget class="QComboBox" name="comboBoxIntf3">
|
||||||
</property>
|
<property name="sizePolicy">
|
||||||
</widget>
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
</item>
|
<horstretch>0</horstretch>
|
||||||
<item row="2" column="4">
|
<verstretch>0</verstretch>
|
||||||
<widget class="QComboBox" name="comboBoxNIC2">
|
</sizepolicy>
|
||||||
<property name="sizePolicy">
|
</property>
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
</widget>
|
||||||
<horstretch>0</horstretch>
|
</item>
|
||||||
<verstretch>0</verstretch>
|
<item row="2" column="2">
|
||||||
</sizepolicy>
|
<widget class="QPushButton" name="pushButtonConf3">
|
||||||
</property>
|
<property name="sizePolicy">
|
||||||
<property name="sizeAdjustPolicy">
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
<enum>QComboBox::AdjustToContents</enum>
|
<horstretch>0</horstretch>
|
||||||
</property>
|
<verstretch>0</verstretch>
|
||||||
</widget>
|
</sizepolicy>
|
||||||
</item>
|
</property>
|
||||||
</layout>
|
<property name="text">
|
||||||
|
<string>Configure</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="1">
|
||||||
|
<widget class="QComboBox" name="comboBoxNIC3">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="sizeAdjustPolicy">
|
||||||
|
<enum>QComboBox::AdjustToContents</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="1">
|
||||||
|
<spacer name="verticalSpacer_3">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="tab_4">
|
||||||
|
<attribute name="title">
|
||||||
|
<string>Network Card #4</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_4">
|
||||||
|
<item row="2" column="1">
|
||||||
|
<widget class="QComboBox" name="comboBoxNIC4">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="sizeAdjustPolicy">
|
||||||
|
<enum>QComboBox::AdjustToContents</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="2">
|
||||||
|
<widget class="QPushButton" name="pushButtonConf4">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Configure</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1" colspan="2">
|
||||||
|
<widget class="QComboBox" name="comboBoxNet4">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="label_15">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Interface</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="0">
|
||||||
|
<widget class="QLabel" name="label_16">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Adapter</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1" colspan="2">
|
||||||
|
<widget class="QComboBox" name="comboBoxIntf4">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label_14">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Mode</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="1">
|
||||||
|
<spacer name="verticalSpacer_4">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
|
||||||
<spacer name="verticalSpacer">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Vertical</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>20</width>
|
|
||||||
<height>40</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<resources/>
|
<resources/>
|
||||||
|
|||||||
@@ -4181,10 +4181,13 @@ s3_virge_init(const device_t *info)
|
|||||||
s3_virge_overlay_draw);
|
s3_virge_overlay_draw);
|
||||||
virge->svga.hwcursor.cur_ysize = 64;
|
virge->svga.hwcursor.cur_ysize = 64;
|
||||||
|
|
||||||
if (info->local == S3_VIRGE_GX2)
|
if (bios_fn != NULL)
|
||||||
rom_init(&virge->bios_rom, (char *) bios_fn, 0xc0000, 0x10000, 0xffff, 0, MEM_MAPPING_EXTERNAL);
|
{
|
||||||
else
|
if (info->local == S3_VIRGE_GX2)
|
||||||
rom_init(&virge->bios_rom, (char *) bios_fn, 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL);
|
rom_init(&virge->bios_rom, (char *) bios_fn, 0xc0000, 0x10000, 0xffff, 0, MEM_MAPPING_EXTERNAL);
|
||||||
|
else
|
||||||
|
rom_init(&virge->bios_rom, (char *) bios_fn, 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL);
|
||||||
|
}
|
||||||
|
|
||||||
mem_mapping_disable(&virge->bios_rom.mapping);
|
mem_mapping_disable(&virge->bios_rom.mapping);
|
||||||
|
|
||||||
|
|||||||
@@ -14,6 +14,7 @@
|
|||||||
*
|
*
|
||||||
* Copyright 2008-2020 Sarah Walker.
|
* Copyright 2008-2020 Sarah Walker.
|
||||||
*/
|
*/
|
||||||
|
#include <assert.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
@@ -2267,9 +2268,10 @@ banshee_overlay_draw(svga_t *svga, int displine)
|
|||||||
|
|
||||||
case VIDPROCCFG_FILTER_MODE_DITHER_4X4:
|
case VIDPROCCFG_FILTER_MODE_DITHER_4X4:
|
||||||
if (banshee->voodoo->scrfilter && banshee->voodoo->scrfilterEnabled) {
|
if (banshee->voodoo->scrfilter && banshee->voodoo->scrfilterEnabled) {
|
||||||
uint8_t *fil = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t fil[64 * 3];
|
||||||
uint8_t *fil3 = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t fil3[64 * 3];
|
||||||
|
|
||||||
|
assert(svga->overlay_latch.cur_xsize <= 64);
|
||||||
if (banshee->vidProcCfg & VIDPROCCFG_H_SCALE_ENABLE) /* leilei HACK - don't know of real 4x1 hscaled behavior yet, double for now */
|
if (banshee->vidProcCfg & VIDPROCCFG_H_SCALE_ENABLE) /* leilei HACK - don't know of real 4x1 hscaled behavior yet, double for now */
|
||||||
{
|
{
|
||||||
for (x = 0; x < svga->overlay_latch.cur_xsize; x++) {
|
for (x = 0; x < svga->overlay_latch.cur_xsize; x++) {
|
||||||
@@ -2320,9 +2322,6 @@ banshee_overlay_draw(svga_t *svga, int displine)
|
|||||||
fil[(x) *3 + 2] = vb_filter_v1_rb[fil[x * 3 + 2]][fil3[(x + 1) * 3 + 2]];
|
fil[(x) *3 + 2] = vb_filter_v1_rb[fil[x * 3 + 2]][fil3[(x + 1) * 3 + 2]];
|
||||||
p[x] = (fil[x * 3 + 2] << 16) | (fil[x * 3 + 1] << 8) | fil[x * 3];
|
p[x] = (fil[x * 3 + 2] << 16) | (fil[x * 3 + 1] << 8) | fil[x * 3];
|
||||||
}
|
}
|
||||||
|
|
||||||
free(fil);
|
|
||||||
free(fil3);
|
|
||||||
} else /* filter disabled by emulator option */
|
} else /* filter disabled by emulator option */
|
||||||
{
|
{
|
||||||
if (banshee->vidProcCfg & VIDPROCCFG_H_SCALE_ENABLE) {
|
if (banshee->vidProcCfg & VIDPROCCFG_H_SCALE_ENABLE) {
|
||||||
@@ -2339,15 +2338,16 @@ banshee_overlay_draw(svga_t *svga, int displine)
|
|||||||
|
|
||||||
case VIDPROCCFG_FILTER_MODE_DITHER_2X2:
|
case VIDPROCCFG_FILTER_MODE_DITHER_2X2:
|
||||||
if (banshee->voodoo->scrfilter && banshee->voodoo->scrfilterEnabled) {
|
if (banshee->voodoo->scrfilter && banshee->voodoo->scrfilterEnabled) {
|
||||||
uint8_t *fil = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t fil[64 * 3];
|
||||||
uint8_t *soak = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t soak[64 * 3];
|
||||||
uint8_t *soak2 = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t soak2[64 * 3];
|
||||||
|
|
||||||
uint8_t *samp1 = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t samp1[64 * 3];
|
||||||
uint8_t *samp2 = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t samp2[64 * 3];
|
||||||
uint8_t *samp3 = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t samp3[64 * 3];
|
||||||
uint8_t *samp4 = malloc((svga->overlay_latch.cur_xsize) * 3);
|
uint8_t samp4[64 * 3];
|
||||||
|
|
||||||
|
assert(svga->overlay_latch.cur_xsize <= 64);
|
||||||
src = &svga->vram[src_addr2 & svga->vram_mask];
|
src = &svga->vram[src_addr2 & svga->vram_mask];
|
||||||
OVERLAY_SAMPLE(banshee->overlay_buffer[1]);
|
OVERLAY_SAMPLE(banshee->overlay_buffer[1]);
|
||||||
for (x = 0; x < svga->overlay_latch.cur_xsize; x++) {
|
for (x = 0; x < svga->overlay_latch.cur_xsize; x++) {
|
||||||
@@ -2395,14 +2395,6 @@ banshee_overlay_draw(svga_t *svga, int displine)
|
|||||||
p[x] = (fil[x * 3 + 2] << 16) | (fil[x * 3 + 1] << 8) | fil[x * 3];
|
p[x] = (fil[x * 3 + 2] << 16) | (fil[x * 3 + 1] << 8) | fil[x * 3];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
free(fil);
|
|
||||||
free(soak);
|
|
||||||
free(soak2);
|
|
||||||
free(samp1);
|
|
||||||
free(samp2);
|
|
||||||
free(samp3);
|
|
||||||
free(samp4);
|
|
||||||
} else /* filter disabled by emulator option */
|
} else /* filter disabled by emulator option */
|
||||||
{
|
{
|
||||||
if (banshee->vidProcCfg & VIDPROCCFG_H_SCALE_ENABLE) {
|
if (banshee->vidProcCfg & VIDPROCCFG_H_SCALE_ENABLE) {
|
||||||
|
|||||||
@@ -14,6 +14,7 @@
|
|||||||
*
|
*
|
||||||
* Copyright 2008-2020 Sarah Walker.
|
* Copyright 2008-2020 Sarah Walker.
|
||||||
*/
|
*/
|
||||||
|
#include <assert.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
@@ -373,8 +374,9 @@ voodoo_filterline_v1(voodoo_t *voodoo, uint8_t *fil, int column, uint16_t *src,
|
|||||||
int x;
|
int x;
|
||||||
|
|
||||||
// Scratchpad for avoiding feedback streaks
|
// Scratchpad for avoiding feedback streaks
|
||||||
uint8_t *fil3 = malloc((voodoo->h_disp) * 3);
|
uint8_t fil3[4096 * 3];
|
||||||
|
|
||||||
|
assert(voodoo->h_disp <= 4096);
|
||||||
/* 16 to 32-bit */
|
/* 16 to 32-bit */
|
||||||
for (x = 0; x < column; x++) {
|
for (x = 0; x < column; x++) {
|
||||||
fil[x * 3] = ((src[x] & 31) << 3);
|
fil[x * 3] = ((src[x] & 31) << 3);
|
||||||
@@ -422,8 +424,6 @@ voodoo_filterline_v1(voodoo_t *voodoo, uint8_t *fil, int column, uint16_t *src,
|
|||||||
fil[(x) *3 + 1] = voodoo->thefilterg[fil3[x * 3 + 1]][fil3[(x + 1) * 3 + 1]];
|
fil[(x) *3 + 1] = voodoo->thefilterg[fil3[x * 3 + 1]][fil3[(x + 1) * 3 + 1]];
|
||||||
fil[(x) *3 + 2] = voodoo->thefilter[fil3[x * 3 + 2]][fil3[(x + 1) * 3 + 2]];
|
fil[(x) *3 + 2] = voodoo->thefilter[fil3[x * 3 + 2]][fil3[(x + 1) * 3 + 2]];
|
||||||
}
|
}
|
||||||
|
|
||||||
free(fil3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -432,8 +432,9 @@ voodoo_filterline_v2(voodoo_t *voodoo, uint8_t *fil, int column, uint16_t *src,
|
|||||||
int x;
|
int x;
|
||||||
|
|
||||||
// Scratchpad for blending filter
|
// Scratchpad for blending filter
|
||||||
uint8_t *fil3 = malloc((voodoo->h_disp) * 3);
|
uint8_t fil3[4096 * 3];
|
||||||
|
|
||||||
|
assert(voodoo->h_disp <= 4096);
|
||||||
/* 16 to 32-bit */
|
/* 16 to 32-bit */
|
||||||
for (x = 0; x < column; x++) {
|
for (x = 0; x < column; x++) {
|
||||||
// Blank scratchpads
|
// Blank scratchpads
|
||||||
@@ -487,8 +488,6 @@ voodoo_filterline_v2(voodoo_t *voodoo, uint8_t *fil, int column, uint16_t *src,
|
|||||||
fil3[(column - 1) * 3] = voodoo->thefilterb[fil[(column - 1) * 3]][((src[column] & 31) << 3)];
|
fil3[(column - 1) * 3] = voodoo->thefilterb[fil[(column - 1) * 3]][((src[column] & 31) << 3)];
|
||||||
fil3[(column - 1) * 3 + 1] = voodoo->thefilterg[fil[(column - 1) * 3 + 1]][(((src[column] >> 5) & 63) << 2)];
|
fil3[(column - 1) * 3 + 1] = voodoo->thefilterg[fil[(column - 1) * 3 + 1]][(((src[column] >> 5) & 63) << 2)];
|
||||||
fil3[(column - 1) * 3 + 2] = voodoo->thefilter[fil[(column - 1) * 3 + 2]][(((src[column] >> 11) & 31) << 3)];
|
fil3[(column - 1) * 3 + 2] = voodoo->thefilter[fil[(column - 1) * 3 + 2]][(((src[column] >> 11) & 31) << 3)];
|
||||||
|
|
||||||
free(fil3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@@ -537,8 +536,9 @@ voodoo_callback(void *p)
|
|||||||
monitor->target_buffer->line[voodoo->line + 8][x] = 0x00000000;
|
monitor->target_buffer->line[voodoo->line + 8][x] = 0x00000000;
|
||||||
|
|
||||||
if (voodoo->scrfilter && voodoo->scrfilterEnabled) {
|
if (voodoo->scrfilter && voodoo->scrfilterEnabled) {
|
||||||
uint8_t *fil = malloc((voodoo->h_disp) * 3); /* interleaved 24-bit RGB */
|
uint8_t fil[4096 * 3]; /* interleaved 24-bit RGB */
|
||||||
|
|
||||||
|
assert(voodoo->h_disp <= 4096);
|
||||||
if (voodoo->type == VOODOO_2)
|
if (voodoo->type == VOODOO_2)
|
||||||
voodoo_filterline_v2(voodoo, fil, voodoo->h_disp, src, voodoo->line);
|
voodoo_filterline_v2(voodoo, fil, voodoo->h_disp, src, voodoo->line);
|
||||||
else
|
else
|
||||||
@@ -547,8 +547,6 @@ voodoo_callback(void *p)
|
|||||||
for (x = 0; x < voodoo->h_disp; x++) {
|
for (x = 0; x < voodoo->h_disp; x++) {
|
||||||
p[x] = (voodoo->clutData256[fil[x * 3]].b << 0 | voodoo->clutData256[fil[x * 3 + 1]].g << 8 | voodoo->clutData256[fil[x * 3 + 2]].r << 16);
|
p[x] = (voodoo->clutData256[fil[x * 3]].b << 0 | voodoo->clutData256[fil[x * 3 + 1]].g << 8 | voodoo->clutData256[fil[x * 3 + 2]].r << 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
free(fil);
|
|
||||||
} else {
|
} else {
|
||||||
for (x = 0; x < voodoo->h_disp; x++) {
|
for (x = 0; x < voodoo->h_disp; x++) {
|
||||||
p[x] = draw_voodoo->video_16to32[src[x]];
|
p[x] = draw_voodoo->video_16to32[src[x]];
|
||||||
|
|||||||
@@ -43,9 +43,9 @@ AboutDialogCreate(HWND hwnd)
|
|||||||
};
|
};
|
||||||
|
|
||||||
wchar_t emu_version[256];
|
wchar_t emu_version[256];
|
||||||
i = swprintf(emu_version, sizeof(emu_version), L"%ls v%ls", EMU_NAME_W, EMU_VERSION_FULL_W);
|
i = swprintf(emu_version, sizeof_w(emu_version), L"%ls v%ls", EMU_NAME_W, EMU_VERSION_FULL_W);
|
||||||
#ifdef EMU_GIT_HASH
|
#ifdef EMU_GIT_HASH
|
||||||
i += swprintf(&emu_version[i], sizeof(emu_version) - i, L" [%ls]", EMU_GIT_HASH_W);
|
i += swprintf(&emu_version[i], sizeof_w(emu_version) - i, L" [%ls]", EMU_GIT_HASH_W);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__arm__) || defined(__TARGET_ARCH_ARM)
|
#if defined(__arm__) || defined(__TARGET_ARCH_ARM)
|
||||||
@@ -59,7 +59,7 @@ AboutDialogCreate(HWND hwnd)
|
|||||||
#else
|
#else
|
||||||
# define ARCH_STR L"unknown"
|
# define ARCH_STR L"unknown"
|
||||||
#endif
|
#endif
|
||||||
swprintf(&emu_version[i], sizeof(emu_version) - i, L" [%ls, %ls]", ARCH_STR, plat_get_string(IDS_DYNAREC));
|
swprintf(&emu_version[i], sizeof_w(emu_version) - i, L" [%ls, %ls]", ARCH_STR, plat_get_string(IDS_DYNAREC));
|
||||||
|
|
||||||
tdconfig.cbSize = sizeof(tdconfig);
|
tdconfig.cbSize = sizeof(tdconfig);
|
||||||
tdconfig.hwndParent = hwnd;
|
tdconfig.hwndParent = hwnd;
|
||||||
|
|||||||
Reference in New Issue
Block a user