WARNING: CONFIGS MIGHT PARTIALLY BREAK WHERE DEVICE NAMES HAVE CHANGED.

Changes to device_t struct to accomodate the upcoming PCI IRQ arbitration rewrite;
Added device.c/h API to obtain name from the device_t struct;
Significant changes to win/win_settings.c to clean up the code a bit and fix bugs;
Ported all the CPU and AudioPCI commits from PCem;
Added an API call to allow ACPI soft power off to gracefully stop the emulator;
Removed the Siemens PCD-2L from the Dev branch because it now works;
Removed the Socket 5 HP Vectra from the Dev branch because it now works;
Fixed the Compaq Presario and the Micronics Spitfire;
Give the IBM PC330 its own list of 486 CPU so it can have DX2's with CPUID 0x470;
SMM fixes;
Rewrote the SYSENTER, SYSEXIT, SYSCALL, and SYSRET instructions;
Changed IDE reset period to match the specification, fixes #929;
The keyboard input and output ports are now forced in front of the queue when read, fixes a number of bugs, including the AMI Apollo hanging on soft reset;
Added the Intel AN430TX but Dev branched because it does not work;
The network code no longer drops packets if the emulated network card has failed to receive them (eg. when the buffer is full);
Changes to PCI card adding and renamed some PCI slot types, also added proper AGP bridge slot types;
USB UHCI emulation is no longer a stub (still doesn't fully work, but at least Windows XP chk with Debug no longer ASSERT's on it);
Fixed NVR on the the SMC FDC37C932QF and APM variants;
A number of fixes to Intel 4x0 chipsets, including fixing every register of the 440LX and 440EX;
Some ACPI changes.
This commit is contained in:
OBattler
2020-11-16 00:01:21 +01:00
parent 745460f64b
commit 0faf6692c9
260 changed files with 5122 additions and 4471 deletions

View File

@@ -537,18 +537,18 @@ BEGIN
COMBOBOX IDC_COMBO_ISAMEM_1,25,147,190,120,
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_1,217,147,38,12
LTEXT "#2:",IDT_1764,12,163,21,10
COMBOBOX IDC_COMBO_ISAMEM_2,25,162,190,120,
LTEXT "#2:",IDT_1764,12,162,21,10
COMBOBOX IDC_COMBO_ISAMEM_2,25,161,190,120,
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_2,217,162,38,12
LTEXT "#3:",IDT_1765,12,177,21,10
COMBOBOX IDC_COMBO_ISAMEM_3,25,176,190,120,
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_2,217,161,38,12
LTEXT "#3:",IDT_1765,12,176,21,10
COMBOBOX IDC_COMBO_ISAMEM_3,25,175,190,120,
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_3,217,176,38,12
LTEXT "#4:",IDT_1766,12,191,21,10
COMBOBOX IDC_COMBO_ISAMEM_4,25,190,190,120,
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_3,217,175,38,12
LTEXT "#4:",IDT_1766,12,190,21,10
COMBOBOX IDC_COMBO_ISAMEM_4,25,189,190,120,
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_4,217,190,38,12
PUSHBUTTON "Configure",IDC_CONFIGURE_ISAMEM_4,217,189,38,12
END
DLG_CFG_HARD_DISKS DIALOG DISCARDABLE 107, 0, 267, 154

View File

@@ -72,18 +72,9 @@ ifeq ($(DEV_BUILD), y)
ifndef PS2M70T4
PS2M70T4 := y
endif
ifndef VECTRA54
VECTRA54 := y
endif
ifndef S3TRIO3D2X
S3TRIO3D2X := y
endif
ifndef SEP
SEP := n
endif
ifndef SIEMENS
SIEMENS := y
endif
ifndef SIO_DETECT
SIO_DETECT := y
endif
@@ -163,18 +154,9 @@ else
ifndef PS2M70T4
PS2M70T4 := n
endif
ifndef VECTRA54
VECTRA54 := n
endif
ifndef S3TRIO3D2X
S3TRIO3D2X := n
endif
ifndef SEP
SEP := n
endif
ifndef SIEMENS
SIEMENS := n
endif
ifndef SIO_DETECT
SIO_DETECT := n
endif
@@ -566,22 +548,10 @@ ifeq ($(PS2M70T4), y)
OPTS += -DUSE_PS2M70T4
endif
ifeq ($(VECTRA54), y)
OPTS += -DUSE_VECTRA54
endif
ifeq ($(S3TRIO3D2X), y)
OPTS += -DUSE_S3TRIO3D2X
endif
ifeq ($(SEP), y)
OPTS += -DUSE_SEP
endif
ifeq ($(SIEMENS), y)
OPTS += -DUSE_SIEMENS
endif
ifeq ($(SIO_DETECT), y)
OPTS += -DUSE_SIO_DETECT
DEVBROBJ += sio_detect.o

View File

@@ -401,31 +401,7 @@ deviceconfig_dlgproc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam)
SendMessage(h, WM_GETTEXT, 511, (LPARAM)s);
file_filter[0] = 0;
c = 0;
while (config->file_filter[c].description && config->file_filter[c].description[0]) {
if (c > 0)
strcat(file_filter, "|");
strcat(file_filter, config->file_filter[c].description);
strcat(file_filter, " (");
d = 0;
while (config->file_filter[c].extensions[d] && config->file_filter[c].extensions[d][0]) {
if (d > 0)
strcat(file_filter, ";");
strcat(file_filter, "*.");
strcat(file_filter, config->file_filter[c].extensions[d]);
d++;
}
strcat(file_filter, ")|");
d = 0;
while (config->file_filter[c].extensions[d] && config->file_filter[c].extensions[d][0]) {
if (d > 0)
strcat(file_filter, ";");
strcat(file_filter, "*.");
strcat(file_filter, config->file_filter[c].extensions[d]);
d++;
}
c++;
}
strcat(file_filter, config->file_filter);
strcat(file_filter, "|All files (*.*)|*.*|");
mbstowcs(ws, file_filter, strlen(file_filter) + 1);
d = strlen(file_filter);

File diff suppressed because it is too large Load Diff

View File

@@ -30,6 +30,7 @@
#include <wchar.h>
#include <86box/86box.h>
#include <86box/config.h>
#include "../cpu/cpu.h"
#include <86box/device.h>
#include <86box/keyboard.h>
#include <86box/mouse.h>
@@ -345,6 +346,23 @@ win_notify_dlg_closed(void)
}
void
plat_power_off(void)
{
confirm_exit = 0;
config_save();
/* Deduct a sufficiently large number of cycles that no instructions will
run before the main thread is terminated */
cycles -= 99999999;
UnhookWindowsHookEx(hKeyboardHook);
KillTimer(hwndMain, TIMER_1SEC);
PostQuitMessage(0);
}
static LRESULT CALLBACK
MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
@@ -390,6 +408,7 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
break;
case IDM_ACTION_RESET_CAD:
pclog("-\n");
pc_send_cad();
break;