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

View File

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

View File

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

View File

@@ -269,6 +269,12 @@ BEGIN
CONTROL STR_IBM8514, IDC_CHECK_IBM8514,
"Button", BS_AUTOCHECKBOX | WS_TABSTOP,
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
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_VOODOO "Voodoo Graphics"
#define STR_IBM8514 "IBM 8514/a Graphics"
#define STR_XGA "XGA Graphics"
#define STR_MOUSE "Mouse:"
#define STR_JOYSTICK "Joystick:"

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -16,6 +16,7 @@
* Copyright 2016-2019 Miran Grca.
* Copyright 2018,2019 David Hrdlička.
* Copyright 2021 Laci bá'
* Copyright 2021-2022 Jasmine Iwanek.
*/
#define UNICODE
#define BITMAP WINDOWS_BITMAP
@@ -63,6 +64,7 @@
#include <86box/midi.h>
#include <86box/snd_mpu401.h>
#include <86box/video.h>
#include <86box/vid_xga_device.h>
#include <86box/plat.h>
#include <86box/ui.h>
#include <86box/win.h>
@@ -85,7 +87,7 @@ static int temp_dynarec;
#endif
/* Video category */
static int temp_gfxcard, temp_ibm8514, temp_voodoo;
static int temp_gfxcard, temp_ibm8514, temp_voodoo, temp_xga;
/* Input devices category */
static int temp_mouse, temp_joystick;
@@ -333,6 +335,7 @@ win_settings_init(void)
temp_gfxcard = gfxcard;
temp_voodoo = voodoo_enabled;
temp_ibm8514 = ibm8514_enabled;
temp_xga = xga_enabled;
/* Input devices category */
temp_mouse = mouse_type;
@@ -458,6 +461,7 @@ win_settings_changed(void)
i = i || (gfxcard != temp_gfxcard);
i = i || (voodoo_enabled != temp_voodoo);
i = i || (ibm8514_enabled != temp_ibm8514);
i = i || (xga_enabled != temp_xga);
/* Input devices category */
i = i || (mouse_type != temp_mouse);
@@ -549,6 +553,7 @@ win_settings_save(void)
gfxcard = temp_gfxcard;
voodoo_enabled = temp_voodoo;
ibm8514_enabled = temp_ibm8514;
xga_enabled = temp_xga;
/* Input devices category */
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_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;
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);
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:
temp_deviceconfig |= deviceconfig_open(hdlg, (void *)&voodoo_device);
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:
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));
@@ -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_voodoo = settings_get_check(hdlg, IDC_CHECK_VOODOO);
temp_ibm8514 = settings_get_check(hdlg, IDC_CHECK_IBM8514);
temp_xga = settings_get_check(hdlg, IDC_CHECK_XGA);
default:
return FALSE;