XGA+XGA2 in win32 UI

This commit is contained in:
Jasmine Iwanek
2022-07-07 17:25:35 -04:00
parent 740a1e0bf3
commit 0dc77c9238
23 changed files with 54 additions and 1 deletions

View File

@@ -18,6 +18,7 @@
* Copyright 2008-2019 Sarah Walker. * Copyright 2008-2019 Sarah Walker.
* Copyright 2016-2019 Miran Grca. * Copyright 2016-2019 Miran Grca.
* Copyright 2018,2019 David Hrdlička. * Copyright 2018,2019 David Hrdlička.
* Copyright 2021-2022 Jasmine Iwanek.
*/ */
#ifndef WIN_RESOURCE_H #ifndef WIN_RESOURCE_H
@@ -184,6 +185,8 @@
#define IDC_CHECK_VOODOO 1022 #define IDC_CHECK_VOODOO 1022
#define IDC_BUTTON_VOODOO 1023 #define IDC_BUTTON_VOODOO 1023
#define IDC_CHECK_IBM8514 1024 #define IDC_CHECK_IBM8514 1024
#define IDC_CHECK_XGA 1025
#define IDC_BUTTON_XGA 1026
#define IDC_INPUT 1030 /* input config */ #define IDC_INPUT 1030 /* input config */
#define IDC_COMBO_MOUSE 1031 #define IDC_COMBO_MOUSE 1031

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Grafika:" #define STR_VIDEO "Grafika:"
#define STR_VOODOO "Použít grafický akcelerátor Voodoo" #define STR_VOODOO "Použít grafický akcelerátor Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Myš:" #define STR_MOUSE "Myš:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Videokarte:" #define STR_VIDEO "Videokarte:"
#define STR_VOODOO "Voodoo-Grafik" #define STR_VOODOO "Voodoo-Grafik"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Maus:" #define STR_MOUSE "Maus:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -269,6 +269,12 @@ BEGIN
CONTROL STR_IBM8514, IDC_CHECK_IBM8514, CONTROL STR_IBM8514, IDC_CHECK_IBM8514,
"Button", BS_AUTOCHECKBOX | WS_TABSTOP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP,
7, 46, 199, CFG_CHECKBOX_HEIGHT 7, 46, 199, CFG_CHECKBOX_HEIGHT
CONTROL STR_XGA, IDC_CHECK_XGA,
"Button", BS_AUTOCHECKBOX | WS_TABSTOP,
7, 65, 199, CFG_CHECKBOX_HEIGHT
PUSHBUTTON STR_CONFIGURE, IDC_BUTTON_XGA,
CFG_COMBO_BTN_LEFT, 64, CFG_BTN_WIDTH, CFG_BTN_HEIGHT
END END
DLG_CFG_INPUT DIALOG DISCARDABLE CFG_PANE_LEFT, CFG_PANE_TOP, CFG_PANE_WIDTH, CFG_PANE_HEIGHT DLG_CFG_INPUT DIALOG DISCARDABLE CFG_PANE_LEFT, CFG_PANE_TOP, CFG_PANE_WIDTH, CFG_PANE_HEIGHT

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Video:" #define STR_VIDEO "Video:"
#define STR_VOODOO "Voodoo Graphics" #define STR_VOODOO "Voodoo Graphics"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Mouse:" #define STR_MOUSE "Mouse:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Video:" #define STR_VIDEO "Video:"
#define STR_VOODOO "Voodoo Graphics" #define STR_VOODOO "Voodoo Graphics"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Mouse:" #define STR_MOUSE "Mouse:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Vídeo:" #define STR_VIDEO "Vídeo:"
#define STR_VOODOO "Voodoo Graphics" #define STR_VOODOO "Voodoo Graphics"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Ratón:" #define STR_MOUSE "Ratón:"
#define STR_JOYSTICK "Mando:" #define STR_JOYSTICK "Mando:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Näytönohjain:" #define STR_VIDEO "Näytönohjain:"
#define STR_VOODOO "Voodoo-grafiikkasuoritin" #define STR_VOODOO "Voodoo-grafiikkasuoritin"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Hiiri:" #define STR_MOUSE "Hiiri:"
#define STR_JOYSTICK "Peliohjain:" #define STR_JOYSTICK "Peliohjain:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Vidéo:" #define STR_VIDEO "Vidéo:"
#define STR_VOODOO "Graphique Voodoo" #define STR_VOODOO "Graphique Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Souris:" #define STR_MOUSE "Souris:"
#define STR_JOYSTICK "Manette de commande:" #define STR_JOYSTICK "Manette de commande:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Video:" #define STR_VIDEO "Video:"
#define STR_VOODOO "Voodoo grafika" #define STR_VOODOO "Voodoo grafika"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Miš:" #define STR_MOUSE "Miš:"
#define STR_JOYSTICK "Palica za igru:" #define STR_JOYSTICK "Palica za igru:"

View File

@@ -277,6 +277,7 @@ END
#define STR_VIDEO "Videokártya:" #define STR_VIDEO "Videokártya:"
#define STR_VOODOO "Voodoo-gyorsítókártya" #define STR_VOODOO "Voodoo-gyorsítókártya"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Egér:" #define STR_MOUSE "Egér:"
#define STR_JOYSTICK "Játékvezérlő:" #define STR_JOYSTICK "Játékvezérlő:"

View File

@@ -273,6 +273,7 @@ END
#define STR_VIDEO "Video:" #define STR_VIDEO "Video:"
#define STR_VOODOO "Grafica Voodoo" #define STR_VOODOO "Grafica Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Mouse:" #define STR_MOUSE "Mouse:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "ビデオカード:" #define STR_VIDEO "ビデオカード:"
#define STR_VOODOO "Voodooグラフィック" #define STR_VOODOO "Voodooグラフィック"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "マウス:" #define STR_MOUSE "マウス:"
#define STR_JOYSTICK "ジョイスティック:" #define STR_JOYSTICK "ジョイスティック:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "비디오 카드:" #define STR_VIDEO "비디오 카드:"
#define STR_VOODOO "Voodoo 그래픽" #define STR_VOODOO "Voodoo 그래픽"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "마우스:" #define STR_MOUSE "마우스:"
#define STR_JOYSTICK "조이스틱:" #define STR_JOYSTICK "조이스틱:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Wideo:" #define STR_VIDEO "Wideo:"
#define STR_VOODOO "Grafika Voodoo" #define STR_VOODOO "Grafika Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Mysz:" #define STR_MOUSE "Mysz:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -275,6 +275,7 @@ END
#define STR_VIDEO "Vídeo:" #define STR_VIDEO "Vídeo:"
#define STR_VOODOO "3DFX Voodoo" #define STR_VOODOO "3DFX Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Mouse:" #define STR_MOUSE "Mouse:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Vídeo:" #define STR_VIDEO "Vídeo:"
#define STR_VOODOO "Gráficos Voodoo" #define STR_VOODOO "Gráficos Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Rato:" #define STR_MOUSE "Rato:"
#define STR_JOYSTICK "Joystick:" #define STR_JOYSTICK "Joystick:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Видеокарта:" #define STR_VIDEO "Видеокарта:"
#define STR_VOODOO "Ускоритель Voodoo" #define STR_VOODOO "Ускоритель Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Мышь:" #define STR_MOUSE "Мышь:"
#define STR_JOYSTICK "Джойстик:" #define STR_JOYSTICK "Джойстик:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Video:" #define STR_VIDEO "Video:"
#define STR_VOODOO "Voodoo grafika" #define STR_VOODOO "Voodoo grafika"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Miška:" #define STR_MOUSE "Miška:"
#define STR_JOYSTICK "Igralna palica:" #define STR_JOYSTICK "Igralna palica:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Ekran kartı:" #define STR_VIDEO "Ekran kartı:"
#define STR_VOODOO "Voodoo Grafikleri" #define STR_VOODOO "Voodoo Grafikleri"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Fare:" #define STR_MOUSE "Fare:"
#define STR_JOYSTICK "Oyun kolu:" #define STR_JOYSTICK "Oyun kolu:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "Відеокарта:" #define STR_VIDEO "Відеокарта:"
#define STR_VOODOO "Прискорювач Voodoo" #define STR_VOODOO "Прискорювач Voodoo"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Миша:" #define STR_MOUSE "Миша:"
#define STR_JOYSTICK "Джойстик:" #define STR_JOYSTICK "Джойстик:"

View File

@@ -272,6 +272,7 @@ END
#define STR_VIDEO "显卡:" #define STR_VIDEO "显卡:"
#define STR_VOODOO "Voodoo Graphics" #define STR_VOODOO "Voodoo Graphics"
#define STR_IBM8514 "IBM 8514/a Graphics" #define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "鼠标:" #define STR_MOUSE "鼠标:"
#define STR_JOYSTICK "操纵杆:" #define STR_JOYSTICK "操纵杆:"

View File

@@ -16,6 +16,7 @@
* Copyright 2016-2019 Miran Grca. * Copyright 2016-2019 Miran Grca.
* Copyright 2018,2019 David Hrdlička. * Copyright 2018,2019 David Hrdlička.
* Copyright 2021 Laci bá' * Copyright 2021 Laci bá'
* Copyright 2021-2022 Jasmine Iwanek.
*/ */
#define UNICODE #define UNICODE
#define BITMAP WINDOWS_BITMAP #define BITMAP WINDOWS_BITMAP
@@ -63,6 +64,7 @@
#include <86box/midi.h> #include <86box/midi.h>
#include <86box/snd_mpu401.h> #include <86box/snd_mpu401.h>
#include <86box/video.h> #include <86box/video.h>
#include <86box/vid_xga_device.h>
#include <86box/plat.h> #include <86box/plat.h>
#include <86box/ui.h> #include <86box/ui.h>
#include <86box/win.h> #include <86box/win.h>
@@ -85,7 +87,7 @@ static int temp_dynarec;
#endif #endif
/* Video category */ /* Video category */
static int temp_gfxcard, temp_ibm8514, temp_voodoo; static int temp_gfxcard, temp_ibm8514, temp_voodoo, temp_xga;
/* Input devices category */ /* Input devices category */
static int temp_mouse, temp_joystick; static int temp_mouse, temp_joystick;
@@ -333,6 +335,7 @@ win_settings_init(void)
temp_gfxcard = gfxcard; temp_gfxcard = gfxcard;
temp_voodoo = voodoo_enabled; temp_voodoo = voodoo_enabled;
temp_ibm8514 = ibm8514_enabled; temp_ibm8514 = ibm8514_enabled;
temp_xga = xga_enabled;
/* Input devices category */ /* Input devices category */
temp_mouse = mouse_type; temp_mouse = mouse_type;
@@ -458,6 +461,7 @@ win_settings_changed(void)
i = i || (gfxcard != temp_gfxcard); i = i || (gfxcard != temp_gfxcard);
i = i || (voodoo_enabled != temp_voodoo); i = i || (voodoo_enabled != temp_voodoo);
i = i || (ibm8514_enabled != temp_ibm8514); i = i || (ibm8514_enabled != temp_ibm8514);
i = i || (xga_enabled != temp_xga);
/* Input devices category */ /* Input devices category */
i = i || (mouse_type != temp_mouse); i = i || (mouse_type != temp_mouse);
@@ -549,6 +553,7 @@ win_settings_save(void)
gfxcard = temp_gfxcard; gfxcard = temp_gfxcard;
voodoo_enabled = temp_voodoo; voodoo_enabled = temp_voodoo;
ibm8514_enabled = temp_ibm8514; ibm8514_enabled = temp_ibm8514;
xga_enabled = temp_xga;
/* Input devices category */ /* Input devices category */
mouse_type = temp_mouse; mouse_type = temp_mouse;
@@ -1116,6 +1121,11 @@ win_settings_video_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam)
settings_enable_window(hdlg, IDC_CHECK_IBM8514, machine_has_bus(temp_machine, MACHINE_BUS_ISA16) || machine_has_bus(temp_machine, MACHINE_BUS_MCA)); settings_enable_window(hdlg, IDC_CHECK_IBM8514, machine_has_bus(temp_machine, MACHINE_BUS_ISA16) || machine_has_bus(temp_machine, MACHINE_BUS_MCA));
settings_set_check(hdlg, IDC_CHECK_IBM8514, temp_ibm8514); settings_set_check(hdlg, IDC_CHECK_IBM8514, temp_ibm8514);
settings_enable_window(hdlg, IDC_CHECK_XGA, machine_has_bus(temp_machine, MACHINE_BUS_ISA16) || machine_has_bus(temp_machine, MACHINE_BUS_MCA));
settings_set_check(hdlg, IDC_CHECK_XGA, temp_xga);
settings_enable_window(hdlg, IDC_BUTTON_XGA, (machine_has_bus(temp_machine, MACHINE_BUS_ISA16) || machine_has_bus(temp_machine, MACHINE_BUS_MCA)) && temp_xga);
return TRUE; return TRUE;
case WM_COMMAND: case WM_COMMAND:
@@ -1134,10 +1144,23 @@ win_settings_video_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam)
temp_ibm8514 = settings_get_check(hdlg, IDC_CHECK_IBM8514); temp_ibm8514 = settings_get_check(hdlg, IDC_CHECK_IBM8514);
break; break;
case IDC_CHECK_XGA:
temp_xga = settings_get_check(hdlg, IDC_CHECK_XGA);
settings_enable_window(hdlg, IDC_BUTTON_XGA, temp_xga);
break;
case IDC_BUTTON_VOODOO: case IDC_BUTTON_VOODOO:
temp_deviceconfig |= deviceconfig_open(hdlg, (void *)&voodoo_device); temp_deviceconfig |= deviceconfig_open(hdlg, (void *)&voodoo_device);
break; break;
case IDC_BUTTON_XGA:
if (machine_has_bus(temp_machine, MACHINE_BUS_MCA) > 0) {
temp_deviceconfig |= deviceconfig_open(hdlg, (void *)&xga_device);
} else {
temp_deviceconfig |= deviceconfig_open(hdlg, (void *)&xga_isa_device);
}
break;
case IDC_CONFIGURE_VID: case IDC_CONFIGURE_VID:
temp_gfxcard = settings_list_to_device[0][settings_get_cur_sel(hdlg, IDC_COMBO_VIDEO)]; temp_gfxcard = settings_list_to_device[0][settings_get_cur_sel(hdlg, IDC_COMBO_VIDEO)];
temp_deviceconfig |= deviceconfig_open(hdlg, (void *)video_card_getdevice(temp_gfxcard)); temp_deviceconfig |= deviceconfig_open(hdlg, (void *)video_card_getdevice(temp_gfxcard));
@@ -1149,6 +1172,7 @@ win_settings_video_proc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam)
temp_gfxcard = settings_list_to_device[0][settings_get_cur_sel(hdlg, IDC_COMBO_VIDEO)]; temp_gfxcard = settings_list_to_device[0][settings_get_cur_sel(hdlg, IDC_COMBO_VIDEO)];
temp_voodoo = settings_get_check(hdlg, IDC_CHECK_VOODOO); temp_voodoo = settings_get_check(hdlg, IDC_CHECK_VOODOO);
temp_ibm8514 = settings_get_check(hdlg, IDC_CHECK_IBM8514); temp_ibm8514 = settings_get_check(hdlg, IDC_CHECK_IBM8514);
temp_xga = settings_get_check(hdlg, IDC_CHECK_XGA);
default: default:
return FALSE; return FALSE;