diff --git a/src/86box.c b/src/86box.c index 55477b849..045b3bd0a 100644 --- a/src/86box.c +++ b/src/86box.c @@ -167,9 +167,7 @@ int time_sync = 0; /* (C) enable time sync */ int confirm_reset = 1; /* (C) enable reset confirmation */ int confirm_exit = 1; /* (C) enable exit confirmation */ int confirm_save = 1; /* (C) enable save confirmation */ -#ifdef USE_DISCORD int enable_discord = 0; /* (C) enable Discord integration */ -#endif int enable_crashdump = 0; /* (C) enable crash dump */ /* Statistics. */ diff --git a/src/chipset/opti283.c b/src/chipset/opti283.c index 1e48975b7..1ac1fdfc0 100644 --- a/src/chipset/opti283.c +++ b/src/chipset/opti283.c @@ -131,18 +131,25 @@ opti283_shadow_recalc(opti283_t *dev) shadowbios = shadowbios_write = 0; dev->shadow_high = 0; + opti283_log("OPTI 283: %02X %02X %02X %02X\n", dev->regs[0x11], dev->regs[0x12], dev->regs[0x13], dev->regs[0x14]); + if (dev->regs[0x11] & 0x80) { mem_set_mem_state_both(0xf0000, 0x10000, MEM_READ_EXTANY | MEM_WRITE_INTERNAL); + opti283_log("OPTI 283: F0000-FFFFF READ_EXTANY, WRITE_INTERNAL\n"); shadowbios_write = 1; } else { shadowbios = 1; if (dev->regs[0x14] & 0x80) { mem_set_mem_state_both(0xf0000, 0x01000, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL); + opti283_log("OPTI 283: F0000-F0FFF READ_INTERNAL, WRITE_INTERNAL\n"); shadowbios_write = 1; - } else + } else { mem_set_mem_state_both(0xf0000, 0x01000, MEM_READ_INTERNAL | MEM_WRITE_DISABLED); + opti283_log("OPTI 283: F0000-F0FFF READ_INTERNAL, WRITE_DISABLED\n"); + } mem_set_mem_state_both(0xf1000, 0x0f000, MEM_READ_INTERNAL | MEM_WRITE_DISABLED); + opti283_log("OPTI 283: F1000-FFFFF READ_INTERNAL, WRITE_DISABLED\n"); } sh_copy = dev->regs[0x11] & 0x08; @@ -154,7 +161,7 @@ opti283_shadow_recalc(opti283_t *dev) sh_enable = dev->regs[0x13] & (1 << (i + 4)); sh_mode = dev->regs[0x11] & (1 << (i >> 2)); rom = dev->regs[0x11] & (1 << ((i >> 2) + 4)); - pclog("OPTI 283: %i/%08X: %i, %i, %i\n", i, base, (i >= 4) ? (1 << (i - 4)) : (1 << (i + 4)), (1 << (i >> 2)), (1 << ((i >> 2) + 4))); + opti283_log("OPTI 283: %i/%08X: %i, %i, %i\n", i, base, (i >= 4) ? (1 << (i - 4)) : (1 << (i + 4)), (1 << (i >> 2)), (1 << ((i >> 2) + 4))); if (sh_enable && rom) { if (base >= 0x000e0000) @@ -163,20 +170,28 @@ opti283_shadow_recalc(opti283_t *dev) dev->shadow_high |= 1; if (sh_mode) { + mem_set_mem_state_both(base, 0x4000, MEM_READ_INTERNAL | MEM_WRITE_DISABLED); + opti283_log("OPTI 283: %08X-%08X READ_INTERNAL, WRITE_DISABLED\n", base, base + 0x3fff); + } else { if (base >= 0x000e0000) shadowbios_write |= 1; - if (sh_copy) + if (sh_copy) { mem_set_mem_state_both(base, 0x4000, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL); - else + opti283_log("OPTI 283: %08X-%08X READ_INTERNAL, WRITE_INTERNAL\n", base, base + 0x3fff); + } else { mem_set_mem_state_both(base, 0x4000, MEM_READ_INTERNAL | MEM_WRITE_EXTERNAL); - } else - mem_set_mem_state_both(base, 0x4000, MEM_READ_INTERNAL | MEM_WRITE_DISABLED); + opti283_log("OPTI 283: %08X-%08X READ_INTERNAL, WRITE_EXTERNAL\n", base, base + 0x3fff); + } + } } else { - if (base >= 0xe0000) + if (base >= 0xe0000) { mem_set_mem_state_both(base, 0x4000, MEM_READ_EXTANY | MEM_WRITE_DISABLED); - else + opti283_log("OPTI 283: %08X-%08X READ_EXTANY, WRITE_DISABLED\n", base, base + 0x3fff); + } else { mem_set_mem_state_both(base, 0x4000, MEM_READ_EXTERNAL | MEM_WRITE_DISABLED); + opti283_log("OPTI 283: %08X-%08X READ_EXTERNAL, WRITE_DISABLED\n", base, base + 0x3fff); + } } } @@ -196,6 +211,8 @@ opti283_shadow_recalc(opti283_t *dev) mem_mapping_disable(&dev->mem_mappings[0]); mem_mapping_disable(&dev->mem_mappings[1]); } + + flushmmucache_nopc(); } diff --git a/src/chipset/sis_85c496.c b/src/chipset/sis_85c496.c index e06dc54c5..33225e4a2 100644 --- a/src/chipset/sis_85c496.c +++ b/src/chipset/sis_85c496.c @@ -608,7 +608,7 @@ static void ide_sec_disable(); if (info->local) - dev->nvr = device_add(&ls486e_nvr_device); + dev->nvr = device_add(&ami_1994_nvr_device); else dev->nvr = device_add(&at_nvr_device); diff --git a/src/config.c b/src/config.c index f392c1e11..6c494a312 100644 --- a/src/config.c +++ b/src/config.c @@ -579,15 +579,11 @@ load_general(void) else strcpy(icon_set, ""); -#if USE_DISCORD enable_discord = !!config_get_int(cat, "enable_discord", 0); -#endif -#if defined(DEV_BRANCH) && defined(USE_OPENGL) video_framerate = config_get_int(cat, "video_gl_framerate", -1); video_vsync = config_get_int(cat, "video_gl_vsync", 0); - strcpy_s(video_shader, sizeof(video_shader), config_get_string(cat, "video_gl_shader", "")); -#endif + strncpy(video_shader, config_get_string(cat, "video_gl_shader", ""), sizeof(video_shader)); } @@ -1159,12 +1155,12 @@ load_storage_controllers(void) if (strlen(p) > 511) fatal("load_storage_controllers(): strlen(p) > 511\n"); else - strncpy(cassette_fname, p, MIN(511, strlen(p) + 1)); + strncpy(cassette_fname, p, MIN(512, strlen(p) + 1)); p = config_get_string(cat, "cassette_mode", ""); if (strlen(p) > 511) fatal("load_storage_controllers(): strlen(p) > 511\n"); else - strncpy(cassette_mode, p, MIN(511, strlen(p) + 1)); + strncpy(cassette_mode, p, MIN(512, strlen(p) + 1)); cassette_pos = config_get_int(cat, "cassette_position", 0); cassette_srate = config_get_int(cat, "cassette_srate", 44100); cassette_append = !!config_get_int(cat, "cassette_append", 0); @@ -2243,14 +2239,11 @@ save_general(void) else config_set_string(cat, "iconset", icon_set); -#if USE_DISCORD if (enable_discord) config_set_int(cat, "enable_discord", enable_discord); else config_delete_var(cat, "enable_discord"); -#endif -#if defined(DEV_BRANCH) && defined(USE_OPENGL) if (video_framerate != -1) config_set_int(cat, "video_gl_framerate", video_framerate); else @@ -2263,7 +2256,6 @@ save_general(void) config_set_string(cat, "video_gl_shader", video_shader); else config_delete_var(cat, "video_gl_shader"); -#endif delete_section_if_empty(cat); } diff --git a/src/device/keyboard_at.c b/src/device/keyboard_at.c index 36921ef9a..0b9e85eab 100644 --- a/src/device/keyboard_at.c +++ b/src/device/keyboard_at.c @@ -679,17 +679,21 @@ add_to_kbc_queue_front(atkbd_t *dev, uint8_t val, uint8_t channel, uint8_t stat_ if (channel == 2) { if (dev->mem[0] & 0x02) picint(0x1000); - dev->last_irq = 0x1000; + if (kbc_ven != KBC_VEN_OLIVETTI) + dev->last_irq = 0x1000; } else { if (dev->mem[0] & 0x01) picint(2); - dev->last_irq = 2; + if (kbc_ven != KBC_VEN_OLIVETTI) + dev->last_irq = 2; } dev->out = val; if (channel == 2) dev->status = (dev->status & ~STAT_IFULL) | (STAT_OFULL | STAT_MFULL) | stat_hi; else dev->status = (dev->status & ~(STAT_IFULL | STAT_MFULL)) | STAT_OFULL | stat_hi; + if (kbc_ven == KBC_VEN_OLIVETTI) + dev->last_irq = 0x0000; } @@ -1382,7 +1386,7 @@ write64_ami(void *priv, uint8_t val) case 0xa1: /* get controller version */ kbd_log("ATkbc: AMI - get controller version\n"); - add_data(dev, 'Z'); + add_data(dev, 'H'); return 0; case 0xa2: /* clear keyboard controller lines P22/P23 */ diff --git a/src/device/mouse_serial.c b/src/device/mouse_serial.c index 8535e3466..32b0f6341 100644 --- a/src/device/mouse_serial.c +++ b/src/device/mouse_serial.c @@ -174,7 +174,7 @@ sermouse_callback(struct serial_s *serial, void *priv) dev->transmit_period = sermouse_transmit_period(dev, 1200, -1); timer_stop(&dev->command_timer); #ifdef USE_NEW_DYNAREC - sermouse_timer_on(dev, 5000.0, 0); + sermouse_timer_on(dev, cpu_use_dynarec ? 5000.0 : dev->transmit_period, 0); #else sermouse_timer_on(dev, dev->transmit_period, 0); #endif diff --git a/src/include/86box/86box.h b/src/include/86box/86box.h index f56757f38..e5f0bac94 100644 --- a/src/include/86box/86box.h +++ b/src/include/86box/86box.h @@ -134,9 +134,7 @@ extern int hdd_format_type; /* (C) hard disk file format */ extern int confirm_reset, /* (C) enable reset confirmation */ confirm_exit, /* (C) enable exit confirmation */ confirm_save; /* (C) enable save confirmation */ -#ifdef USE_DISCORD extern int enable_discord; /* (C) enable Discord integration */ -#endif extern int enable_crashdump; /* (C) enable crash dump */ extern int is_pentium; /* TODO: Move back to cpu/cpu.h when it's figured out, diff --git a/src/include/86box/nvr.h b/src/include/86box/nvr.h index 386954b54..82bdb01c3 100644 --- a/src/include/86box/nvr.h +++ b/src/include/86box/nvr.h @@ -92,8 +92,9 @@ extern const device_t ps_nvr_device; extern const device_t amstrad_nvr_device; extern const device_t ibmat_nvr_device; extern const device_t piix4_nvr_device; -extern const device_t ls486e_nvr_device; -extern const device_t ami_apollo_nvr_device; +extern const device_t ami_1992_nvr_device; +extern const device_t ami_1994_nvr_device; +extern const device_t ami_1995_nvr_device; extern const device_t via_nvr_device; extern const device_t p6rp4_nvr_device; #endif diff --git a/src/include/86box/resource.h b/src/include/86box/resource.h index 1d84cd60b..b5a67b85b 100644 --- a/src/include/86box/resource.h +++ b/src/include/86box/resource.h @@ -353,13 +353,10 @@ #define IDM_MEDIA 40087 #define IDM_DOCS 40088 -#ifdef USE_DISCORD #define IDM_DISCORD 40090 -#endif #define IDM_PREFERENCES 40091 -#if defined(DEV_BRANCH) && defined(USE_OPENGL) #define IDM_VID_GL_FPS_BLITTER 40100 #define IDM_VID_GL_FPS_25 40101 #define IDM_VID_GL_FPS_30 40102 @@ -369,7 +366,6 @@ #define IDM_VID_GL_VSYNC 40106 #define IDM_VID_GL_SHADER 40107 #define IDM_VID_GL_NOSHADER 40108 -#endif #define IDM_LOG_BREAKPOINT 51201 #define IDM_DUMP_VRAM 51202 // should be an Action diff --git a/src/include/86box/win.h b/src/include/86box/win.h index a71174314..d776cccdf 100644 --- a/src/include/86box/win.h +++ b/src/include/86box/win.h @@ -66,9 +66,7 @@ DECLARE_HANDLE(DPI_AWARENESS_CONTEXT); #define ZIP_SUBMENU_NAME L"ZIPSubmenu" #define MO_SUBMENU_NAME L"MOSubmenu" -#if defined(DEV_BRANCH) && defined(USE_OPENGL) #define VID_GL_SUBMENU L"VidGLSubMenu" -#endif /* Application-specific window messages. diff --git a/src/machine/m_at_386dx_486.c b/src/machine/m_at_386dx_486.c index ae9b364bd..ee9a5e489 100644 --- a/src/machine/m_at_386dx_486.c +++ b/src/machine/m_at_386dx_486.c @@ -253,7 +253,7 @@ machine_at_rycleopardlx_init(const machine_t *model) if (bios_only || !ret) return ret; - machine_at_common_ide_init(model); + machine_at_common_init(model); device_add(&opti283_device); device_add(&keyboard_at_ami_device); @@ -609,7 +609,7 @@ machine_at_403tg_common_init(const machine_t *model, int nvr_hack) { if (nvr_hack) { machine_at_common_init_ex(model, 2); - device_add(&ls486e_nvr_device); + device_add(&ami_1994_nvr_device); } else machine_at_common_init(model); @@ -1158,7 +1158,8 @@ machine_at_pci400cb_init(const machine_t *model) if (bios_only || !ret) return ret; - machine_at_common_init(model); + machine_at_common_init_ex(model, 2); + device_add(&ami_1994_nvr_device); device_add(&ide_isa_device); pci_init(PCI_CONFIG_TYPE_1); @@ -1190,7 +1191,8 @@ machine_at_g486ip_init(const machine_t *model) if (bios_only || !ret) return ret; - machine_at_common_init(model); + machine_at_common_init_ex(model, 2); + device_add(&ami_1992_nvr_device); device_add(&ide_isa_device); pci_init(PCI_CONFIG_TYPE_1); diff --git a/src/machine/m_at_socket4.c b/src/machine/m_at_socket4.c index 30b76cf7a..9b7592cd6 100644 --- a/src/machine/m_at_socket4.c +++ b/src/machine/m_at_socket4.c @@ -433,7 +433,8 @@ machine_at_excaliburpci2_init(const machine_t *model) if (bios_only || !ret) return ret; - machine_at_common_init(model); + machine_at_common_init_ex(model, 2); + device_add(&ami_1994_nvr_device); pci_init(PCI_CONFIG_TYPE_1); pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0); diff --git a/src/machine/m_at_socket5.c b/src/machine/m_at_socket5.c index 2c663cd01..4a1bb9802 100644 --- a/src/machine/m_at_socket5.c +++ b/src/machine/m_at_socket5.c @@ -145,7 +145,7 @@ machine_at_apollo_init(const machine_t *model) return ret; machine_at_common_init_ex(model, 2); - device_add(&ami_apollo_nvr_device); + device_add(&ami_1995_nvr_device); pci_init(PCI_CONFIG_TYPE_1); pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0); @@ -293,7 +293,8 @@ machine_at_hawk_init(const machine_t *model) if (bios_only || !ret) return ret; - machine_at_common_init(model); + machine_at_common_init_ex(model, 2); + device_add(&ami_1994_nvr_device); pci_init(PCI_CONFIG_TYPE_1); pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0); diff --git a/src/machine/machine_table.c b/src/machine/machine_table.c index 4e54bec7c..9e73c7079 100644 --- a/src/machine/machine_table.c +++ b/src/machine/machine_table.c @@ -292,7 +292,7 @@ const machine_t machines[] = { /* 486SLC machines */ /* 486SLC machines with just the ISA slot */ /* Has AMIKey H KBC firmware. */ - { "[OPTi 283] RYC Leopard LX", "rycleopardlx", MACHINE_TYPE_486SLC, CPU_PKG_486SLC_IBM, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT | MACHINE_IDE, 1024, 16384, 1024, 127, machine_at_rycleopardlx_init, NULL }, + { "[OPTi 283] RYC Leopard LX", "rycleopardlx", MACHINE_TYPE_486SLC, CPU_PKG_486SLC_IBM, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 1024, 16384, 1024, 127, machine_at_rycleopardlx_init, NULL }, /* 386DX machines */ { "[ACC 2168] AMI 386DX clone", "acc386", MACHINE_TYPE_386DX, CPU_PKG_386DX, 0, 0, 0, 0, 0, 0, 0, MACHINE_AT, 1024, 16384, 1024, 127, machine_at_acc386_init, NULL }, diff --git a/src/nvr_at.c b/src/nvr_at.c index 03f3ea6bb..cb85cd2d8 100644 --- a/src/nvr_at.c +++ b/src/nvr_at.c @@ -290,10 +290,11 @@ #define RTC_REGS 14 /* number of registers */ -#define FLAG_LS_HACK 0x01 -#define FLAG_APOLLO_HACK 0x02 -#define FLAG_P6RP4_HACK 0x04 -#define FLAG_PIIX4 0x08 +#define FLAG_AMI_1992_HACK 0x01 +#define FLAG_AMI_1994_HACK 0x02 +#define FLAG_AMI_1995_HACK 0x04 +#define FLAG_P6RP4_HACK 0x08 +#define FLAG_PIIX4 0x10 typedef struct { @@ -563,9 +564,11 @@ timer_tick(nvr_t *nvr) static void nvr_reg_common_write(uint16_t reg, uint8_t val, nvr_t *nvr, local_t *local) { - if ((reg == 0x2c) && (local->flags & FLAG_LS_HACK)) + if ((reg == 0x2c) && (local->flags & FLAG_AMI_1994_HACK)) nvr->new = 0; - if ((reg == 0x52) && (local->flags & FLAG_APOLLO_HACK)) + if ((reg == 0x2d) && (local->flags & FLAG_AMI_1992_HACK)) + nvr->new = 0; + if ((reg == 0x52) && (local->flags & FLAG_AMI_1995_HACK)) nvr->new = 0; if ((reg >= 0x38) && (reg <= 0x3f) && local->wp[0]) return; @@ -587,8 +590,7 @@ nvr_reg_write(uint16_t reg, uint8_t val, void *priv) nvr_t *nvr = (nvr_t *)priv; local_t *local = (local_t *)nvr->data; struct tm tm; - uint8_t old, i; - uint16_t checksum = 0x0000; + uint8_t old; old = nvr->regs[reg]; switch(reg) { @@ -599,7 +601,7 @@ nvr_reg_write(uint16_t reg, uint8_t val, void *priv) case RTC_REGB: nvr->regs[RTC_REGB] = val; - if (((old^val) & REGB_SET) && (val®B_SET)) { + if (((old^val) & REGB_SET) && (val & REGB_SET)) { /* According to the datasheet... */ nvr->regs[RTC_REGA] &= ~REGA_UIP; nvr->regs[RTC_REGB] &= ~REGB_UIE; @@ -615,19 +617,6 @@ nvr_reg_write(uint16_t reg, uint8_t val, void *priv) nvr->regs[RTC_REGD] = val & 0x80; break; - case 0x2e: - case 0x2f: - if (local->flags & FLAG_LS_HACK) { - /* 2E and 2F are a simple sum of the values of 0E to 2D. */ - for (i = 0x0e; i < 0x2e; i++) - checksum += (uint16_t) nvr->regs[i]; - nvr->regs[0x2e] = checksum >> 8; - nvr->regs[0x2f] = checksum & 0xff; - break; - } - nvr_reg_common_write(reg, val, nvr, local); - break; - case 0x32: if ((reg == 0x32) && (local->cent == RTC_CENTURY_VIA) && local->wp_32) break; @@ -717,15 +706,33 @@ nvr_read(uint16_t addr, void *priv) break; case 0x2c: - if (!nvr->new && (local->flags & FLAG_LS_HACK)) + if (!nvr->new && (local->flags & FLAG_AMI_1994_HACK)) ret = nvr->regs[local->addr[addr_id]] & 0x7f; else ret = nvr->regs[local->addr[addr_id]]; break; + case 0x2d: + if (!nvr->new && (local->flags & FLAG_AMI_1992_HACK)) + ret = nvr->regs[local->addr[addr_id]] & 0xf7; + else + ret = nvr->regs[local->addr[addr_id]]; + break; + case 0x2e: case 0x2f: - if (!nvr->new && (local->flags & FLAG_LS_HACK)) { + if (!nvr->new && (local->flags & FLAG_AMI_1992_HACK)) { + for (i = 0x10; i <= 0x2d; i++) { + if (i == 0x2d) + checksum += (nvr->regs[i] & 0xf7); + else + checksum += nvr->regs[i]; + } + if (local->addr[addr_id] == 0x2e) + ret = checksum >> 8; + else + ret = checksum & 0xff; + } else if (!nvr->new && (local->flags & FLAG_AMI_1994_HACK)) { for (i = 0x10; i <= 0x2d; i++) { if (i == 0x2c) checksum += (nvr->regs[i] & 0x7f); @@ -742,7 +749,7 @@ nvr_read(uint16_t addr, void *priv) case 0x3e: case 0x3f: - if (!nvr->new && (local->flags & FLAG_APOLLO_HACK)) { + if (!nvr->new && (local->flags & FLAG_AMI_1995_HACK)) { /* The checksum at 3E-3F is for 37-3D and 40-7F. */ for (i = 0x37; i <= 0x3d; i++) checksum += nvr->regs[i]; @@ -782,7 +789,7 @@ nvr_read(uint16_t addr, void *priv) break; case 0x52: - if (!nvr->new && (local->flags & FLAG_APOLLO_HACK)) + if (!nvr->new && (local->flags & FLAG_AMI_1995_HACK)) ret = nvr->regs[local->addr[addr_id]] & 0xf3; else ret = nvr->regs[local->addr[addr_id]]; @@ -1005,16 +1012,16 @@ nvr_at_init(const device_t *info) break; case 1: /* standard AT */ - case 5: /* Lucky Star LS-486E */ - case 6: /* AMI Apollo */ + case 5: /* AMI WinBIOS 1994 */ + case 6: /* AMI BIOS 1995 */ if (info->local == 9) local->flags |= FLAG_PIIX4; else { local->def = 0x00; if ((info->local & 7) == 5) - local->flags |= FLAG_LS_HACK; + local->flags |= FLAG_AMI_1994_HACK; else if ((info->local & 7) == 6) - local->flags |= FLAG_APOLLO_HACK; + local->flags |= FLAG_AMI_1995_HACK; else local->def = 0xff; } @@ -1035,9 +1042,13 @@ nvr_at_init(const device_t *info) break; case 4: /* IBM AT */ + if (info->local == 12) { + local->def = 0x00; + local->flags |= FLAG_AMI_1992_HACK; + } else + local->def = 0xff; nvr->irq = 8; local->cent = RTC_CENTURY_AT; - local->def = 0xff; break; case 7: /* VIA VT82C586B */ @@ -1164,8 +1175,17 @@ const device_t piix4_nvr_device = { NULL }; -const device_t ls486e_nvr_device = { - "Lucky Star LS-486E PC/AT NVRAM", +const device_t ami_1992_nvr_device = { + "AMI Color 1992 PC/AT NVRAM", + DEVICE_ISA | DEVICE_AT, + 12, + nvr_at_init, nvr_at_close, nvr_at_reset, + { NULL }, nvr_at_speed_changed, + NULL +}; + +const device_t ami_1994_nvr_device = { + "AMI WinBIOS 1994 PC/AT NVRAM", DEVICE_ISA | DEVICE_AT, 13, nvr_at_init, nvr_at_close, nvr_at_reset, @@ -1173,8 +1193,8 @@ const device_t ls486e_nvr_device = { NULL }; -const device_t ami_apollo_nvr_device = { - "AMI Apollo PC/AT NVRAM", +const device_t ami_1995_nvr_device = { + "AMI WinBIOS 1995 PC/AT NVRAM", DEVICE_ISA | DEVICE_AT, 14, nvr_at_init, nvr_at_close, nvr_at_reset, diff --git a/src/qt/CMakeLists.txt b/src/qt/CMakeLists.txt index bf4b561c0..b3ce7121b 100644 --- a/src/qt/CMakeLists.txt +++ b/src/qt/CMakeLists.txt @@ -17,7 +17,7 @@ add_library(ui STATIC qt_mainwindow.ui qt_machinestatus.cpp qt_machinestatus.hpp - qt_machinestatus.ui + #qt_machinestatus.ui qt_gleswidget.cpp qt_gleswidget.hpp diff --git a/src/qt/cocoa_mouse.hpp b/src/qt/cocoa_mouse.hpp index 83939a233..6d481fd89 100644 --- a/src/qt/cocoa_mouse.hpp +++ b/src/qt/cocoa_mouse.hpp @@ -7,4 +7,4 @@ public: CocoaEventFilter() {}; ~CocoaEventFilter(); virtual bool nativeEventFilter(const QByteArray &eventType, void *message, long *result) override; -}; \ No newline at end of file +}; diff --git a/src/qt/macos_event_filter.mm b/src/qt/macos_event_filter.mm index e942b5f49..4dd7ef2ae 100644 --- a/src/qt/macos_event_filter.mm +++ b/src/qt/macos_event_filter.mm @@ -1,5 +1,5 @@ #include -#include "86box/plat.h" +//#include "86box/plat.h" #include "cocoa_mouse.hpp" #import extern "C" @@ -15,6 +15,7 @@ extern "C" #include <86box/ui.h> #include <86box/video.h> extern int mouse_capture; +extern void plat_mouse_capture(int); } typedef struct mouseinputdata @@ -23,8 +24,7 @@ typedef struct mouseinputdata int mousebuttons; } mouseinputdata; -extern SDL_mutex* mousemutex; -extern mouseinputdata mousedata; +static mouseinputdata mousedata; CocoaEventFilter::~CocoaEventFilter() { @@ -40,17 +40,13 @@ bool CocoaEventFilter::nativeEventFilter(const QByteArray &eventType, void *mess NSEvent* event = (NSEvent*)message; if ([event type] == NSEventTypeMouseMoved) { - SDL_LockMutex(mousemutex); mousedata.deltax += [event deltaX]; mousedata.deltay += [event deltaY]; - SDL_UnlockMutex(mousemutex); return true; } if ([event type] == NSEventTypeScrollWheel) { - SDL_LockMutex(mousemutex); mousedata.deltaz += [event deltaY]; - SDL_UnlockMutex(mousemutex); return true; } switch ([event type]) @@ -58,45 +54,33 @@ bool CocoaEventFilter::nativeEventFilter(const QByteArray &eventType, void *mess default: return false; case NSEventTypeLeftMouseDown: { - SDL_LockMutex(mousemutex); mousedata.mousebuttons |= 1; - SDL_UnlockMutex(mousemutex); break; } case NSEventTypeLeftMouseUp: { - SDL_LockMutex(mousemutex); mousedata.mousebuttons &= ~1; - SDL_UnlockMutex(mousemutex); break; } case NSEventTypeRightMouseDown: { - SDL_LockMutex(mousemutex); mousedata.mousebuttons |= 2; - SDL_UnlockMutex(mousemutex); break; } case NSEventTypeRightMouseUp: { - SDL_LockMutex(mousemutex); mousedata.mousebuttons &= ~2; - SDL_UnlockMutex(mousemutex); break; } case NSEventTypeOtherMouseDown: { - SDL_LockMutex(mousemutex); mousedata.mousebuttons |= 4; - SDL_UnlockMutex(mousemutex); break; } case NSEventTypeOtherMouseUp: { if (mouse_get_buttons() < 3) { plat_mouse_capture(0); return true; } - SDL_LockMutex(mousemutex); mousedata.mousebuttons &= ~4; - SDL_UnlockMutex(mousemutex); break; } } @@ -105,3 +89,12 @@ bool CocoaEventFilter::nativeEventFilter(const QByteArray &eventType, void *mess } return false; } + +extern "C" void macos_poll_mouse() +{ + mouse_x = mousedata.deltax; + mouse_y = mousedata.deltay; + mouse_z = mousedata.deltaz; + mousedata.deltax = mousedata.deltay = mousedata.deltaz = 0; + mouse_buttons = mousedata.mousebuttons; +} diff --git a/src/qt/qt_gleswidget.cpp b/src/qt/qt_gleswidget.cpp index 3cd91c5a7..c30e5cefa 100644 --- a/src/qt/qt_gleswidget.cpp +++ b/src/qt/qt_gleswidget.cpp @@ -1,4 +1,5 @@ #include +#include #include "qt_gleswidget.hpp" #ifdef __APPLE__ #include @@ -11,7 +12,7 @@ extern "C" #include <86box/video.h> } - +extern "C" void macos_poll_mouse(); void qt_mouse_capture(int on) { @@ -34,11 +35,15 @@ qt_mouse_capture(int on) void GLESWidget::qt_mouse_poll() { +#ifdef __APPLE__ + return macos_poll_mouse(); +#else mouse_x = mousedata.deltax; mouse_y = mousedata.deltay; mouse_z = mousedata.deltaz; mousedata.deltax = mousedata.deltay = mousedata.deltaz = 0; mouse_buttons = mousedata.mousebuttons; +#endif } void GLESWidget::resizeGL(int w, int h) @@ -49,13 +54,20 @@ void GLESWidget::resizeGL(int w, int h) void GLESWidget::initializeGL() { initializeOpenGLFunctions(); + connect(this, &GLESWidget::reqUpdate, this, &GLESWidget::reqUpdate_); } + void GLESWidget::paintGL() { QPainter painter(this); - //painter.fillRect(rect, QColor(0, 0, 0)); - painter.drawImage(QRect(0, 0, width(), height()), m_image.convertToFormat(QImage::Format_RGBA8888), QRect(sx, sy, sw, sh)); + painter.drawImage(QRect(0, 0, width(), height()), m_image.convertToFormat(QImage::Format_RGBX8888), QRect(sx, sy, sw, sh)); painter.end(); + firstupdate = true; +} + +void GLESWidget::reqUpdate_() +{ + update(); } void GLESWidget::mouseReleaseEvent(QMouseEvent *event) @@ -110,8 +122,7 @@ void GLESWidget::mouseMoveEvent(QMouseEvent *event) void GLESWidget::qt_real_blit(int x, int y, int w, int h) { - // printf("Offpainter thread ID: %X\n", SDL_ThreadID()); - if ((w <= 0) || (h <= 0) || (w > 2048) || (h > 2048) || (buffer32 == NULL)) + if ((w <= 0) || (h <= 0) || (w > 2048) || (h > 2048) || (buffer32 == NULL) || !firstupdate) { video_blit_complete(); return; @@ -120,7 +131,7 @@ void GLESWidget::qt_real_blit(int x, int y, int w, int h) sy = y; sw = this->w = w; sh = this->h = h; - auto imagebits = m_image.bits(); + static auto imagebits = m_image.bits(); for (int y1 = y; y1 < (y + h - 1); y1++) { auto scanline = imagebits + (y1 * (2048 + 64) * 4); @@ -131,5 +142,5 @@ void GLESWidget::qt_real_blit(int x, int y, int w, int h) video_screenshot((uint32_t *)imagebits, 0, 0, 2048 + 64); } video_blit_complete(); - update(); + this->reqUpdate(); } diff --git a/src/qt/qt_gleswidget.hpp b/src/qt/qt_gleswidget.hpp index 2ac888724..2fa8d8d67 100644 --- a/src/qt/qt_gleswidget.hpp +++ b/src/qt/qt_gleswidget.hpp @@ -6,6 +6,8 @@ #include #include +#include + class GLESWidget : public QOpenGLWidget, protected QOpenGLFunctions { Q_OBJECT @@ -38,9 +40,13 @@ public: { event->ignore(); } +signals: + void reqUpdate(); + public slots: void qt_real_blit(int x, int y, int w, int h); void qt_mouse_poll(); + void reqUpdate_(); private: struct mouseinputdata { @@ -48,5 +54,5 @@ private: int mousebuttons; }; mouseinputdata mousedata; - + std::atomic firstupdate{false}; }; diff --git a/src/qt/qt_machinestatus.cpp b/src/qt/qt_machinestatus.cpp index d61e2f04a..b2c8d0ad1 100644 --- a/src/qt/qt_machinestatus.cpp +++ b/src/qt/qt_machinestatus.cpp @@ -29,6 +29,8 @@ extern uint64_t tsc; #include #include +#include + namespace { struct PixmapSetActive { QPixmap normal; diff --git a/src/qt/qt_main.cpp b/src/qt/qt_main.cpp index bbdbc6dc3..f011fd9f7 100644 --- a/src/qt/qt_main.cpp +++ b/src/qt/qt_main.cpp @@ -13,6 +13,7 @@ #include "SDL.h" #include "SDL_mutex.h" +#include "SDL_timer.h" #include "qt_mainwindow.hpp" #include "qt_sdl.h" #include "cocoa_mouse.hpp" @@ -76,6 +77,12 @@ main_thread_fn() is_quit = 1; } +uint32_t timer_onesec(uint32_t interval, void* param) +{ + pc_onesec(); + return interval; +} + int main(int argc, char* argv[]) { QApplication app(argc, argv); #ifdef __APPLE__ @@ -97,6 +104,7 @@ int main(int argc, char* argv[]) { /* Set the PAUSE mode depending on the renderer. */ // plat_pause(0); + SDL_AddTimer(1000, timer_onesec, nullptr); /* Initialize the rendering window, or fullscreen. */ QTimer::singleShot(50, []() { plat_resize(640, 480); } ); diff --git a/src/qt/qt_mainwindow.cpp b/src/qt/qt_mainwindow.cpp index e8c56e530..ad3a4df14 100644 --- a/src/qt/qt_mainwindow.cpp +++ b/src/qt/qt_mainwindow.cpp @@ -44,10 +44,11 @@ MainWindow::MainWindow(QWidget *parent) : video_setblit(qt_blit); ui->glesWidget->setMouseTracking(true); - connect(this, &MainWindow::blitToWidget, ui->glesWidget, &GLESWidget::qt_real_blit); - connect(this, &MainWindow::showMessageForNonQtThread, this, &MainWindow::showMessage_, Qt::BlockingQueuedConnection); + connect(this, &MainWindow::setTitleForNonQtThread, this, &MainWindow::setTitle_, Qt::BlockingQueuedConnection); + connect(this, &MainWindow::getTitleForNonQtThread, this, &MainWindow::getTitle_, Qt::BlockingQueuedConnection); + connect(this, &MainWindow::pollMouse, ui->glesWidget, &GLESWidget::qt_mouse_poll); connect(this, &MainWindow::setMouseCapture, this, [this](bool state) { @@ -116,7 +117,11 @@ void MainWindow::on_actionExit_triggered() { } void MainWindow::on_actionSettings_triggered() { - Settings settings; + int currentPause = dopause; + plat_pause(1); + Settings settings(this); + settings.setModal(true); + settings.setWindowModality(Qt::WindowModal); settings.exec(); switch (settings.result()) { @@ -135,6 +140,7 @@ void MainWindow::on_actionSettings_triggered() { case QDialog::Rejected: break; } + plat_pause(currentPause); } std::array x11_to_xt_base @@ -636,6 +642,34 @@ void MainWindow::on_actionFullscreen_triggered() { } } +void MainWindow::setTitle_(const wchar_t *title) +{ + this->setWindowTitle(QString::fromWCharArray(title)); +} + +void MainWindow::setTitle(const wchar_t *title) +{ + if (QThread::currentThread() == this->thread()) { + setTitle_(title); + } else { + emit setTitleForNonQtThread(title); + } +} + +void MainWindow::getTitle_(wchar_t *title) +{ + this->windowTitle().toWCharArray(title); +} + +void MainWindow::getTitle(wchar_t *title) +{ + if (QThread::currentThread() == this->thread()) { + getTitle_(title); + } else { + emit getTitleForNonQtThread(title); + } +} + void MainWindow::showMessage(const QString& header, const QString& message) { if (QThread::currentThread() == this->thread()) { showMessage_(header, message); @@ -666,6 +700,11 @@ void MainWindow::keyPressEvent(QKeyEvent* event) } } +void MainWindow::blitToWidget(int x, int y, int w, int h) +{ + ui->glesWidget->qt_real_blit(x, y, w, h); +} + void MainWindow::keyReleaseEvent(QKeyEvent* event) { #ifdef __APPLE__ diff --git a/src/qt/qt_mainwindow.hpp b/src/qt/qt_mainwindow.hpp index 9f3dee140..3c5055027 100644 --- a/src/qt/qt_mainwindow.hpp +++ b/src/qt/qt_mainwindow.hpp @@ -20,9 +20,11 @@ public: ~MainWindow(); void showMessage(const QString& header, const QString& message); + void setTitle(const wchar_t* title); + void getTitle(wchar_t* title); + void blitToWidget(int x, int y, int w, int h); signals: void paint(const QImage& image); - void blitToWidget(int x, int y, int w, int h); void resizeContents(int w, int h); void pollMouse(); void updateStatusBarPanes(); @@ -33,6 +35,8 @@ signals: void setMouseCapture(bool state); void showMessageForNonQtThread(const QString& header, const QString& message); + void setTitleForNonQtThread(const wchar_t* title); + void getTitleForNonQtThread(wchar_t* title); private slots: void on_actionFullscreen_triggered(); void on_actionSettings_triggered(); @@ -45,6 +49,8 @@ private slots: void on_actionKeyboard_requires_capture_triggered(); void showMessage_(const QString& header, const QString& message); + void setTitle_(const wchar_t* title); + void getTitle_(wchar_t* title); protected: void keyPressEvent(QKeyEvent* event) override; void keyReleaseEvent(QKeyEvent* event) override; diff --git a/src/qt/qt_platform.cpp b/src/qt/qt_platform.cpp index 47a771442..6be563814 100644 --- a/src/qt/qt_platform.cpp +++ b/src/qt/qt_platform.cpp @@ -283,10 +283,10 @@ plat_mmap(size_t size, uint8_t executable) void *ret = mmap(0, size, PROT_READ | PROT_WRITE | (executable ? PROT_EXEC : 0), MAP_ANON | MAP_PRIVATE | (executable ? MAP_JIT : 0), 0, 0); #else void *ret = mmap(0, size, PROT_READ | PROT_WRITE | (executable ? PROT_EXEC : 0), MAP_ANON | MAP_PRIVATE, 0, 0); +#endif auto retval = *reinterpret_cast(ret); return (retval < 0) ? nullptr : ret; #endif -#endif } void diff --git a/src/qt/qt_ui.cpp b/src/qt/qt_ui.cpp index 1e24ac792..c4de70282 100644 --- a/src/qt/qt_ui.cpp +++ b/src/qt/qt_ui.cpp @@ -27,11 +27,11 @@ wchar_t* ui_window_title(wchar_t* str) { if (str == nullptr) { static wchar_t title[512]; - int chars = main_window->windowTitle().toWCharArray(title); - title[chars] = 0; + memset(title, 0, sizeof(title)); + main_window->getTitle(title); str = title; } else { - main_window->setWindowTitle(QString::fromWCharArray(str)); + main_window->setTitle(str); } return str; } diff --git a/src/video/vid_herculesplus.c b/src/video/vid_herculesplus.c index 607780a68..a03a147eb 100644 --- a/src/video/vid_herculesplus.c +++ b/src/video/vid_herculesplus.c @@ -475,9 +475,9 @@ graphics_line(herculesplus_t *dev) dev->ma++; for (c = 0; c < 16; c++) { - val >>= 1; + buffer32->line[dev->displine][(x << 4) + c] = (val & 0x8000) ? 7 : 0; - buffer32->line[dev->displine][(x << 4) + c] = (val & 1) ? 7 : 0; + val <<= 1; } for (c = 0; c < 16; c += 8) diff --git a/src/win/86Box.rc b/src/win/86Box.rc index bf8b9cfbb..e7179e18d 100644 --- a/src/win/86Box.rc +++ b/src/win/86Box.rc @@ -373,6 +373,7 @@ END #include "languages/ja-JP.rc" #include "languages/pt-BR.rc" #include "languages/pt-PT.rc" +#include "languages/ru-RU.rc" #include "languages/sl-SI.rc" #include "languages/es-ES.rc" #include "languages/tr-TR.rc" diff --git a/src/win/CMakeLists.txt b/src/win/CMakeLists.txt index 00eda35a1..1a535c61a 100644 --- a/src/win/CMakeLists.txt +++ b/src/win/CMakeLists.txt @@ -20,7 +20,8 @@ add_library(plat OBJECT win.c win_dynld.c win_cdrom.c win_thread.c add_library(ui OBJECT win_ui.c win_icon.c win_stbar.c win_sdl.c win_dialog.c win_about.c win_settings.c win_devconf.c win_snd_gain.c win_specify_dim.c win_new_floppy.c - win_jsconf.c win_media_menu.c win_preferences.c 86Box.rc) + win_jsconf.c win_media_menu.c win_preferences.c win_discord.c glad.c win_opengl.c + win_opengl_glslp.c 86Box.rc) if(MSVC) # MSVC complains when we include the manifest from 86Box.rc... @@ -44,19 +45,5 @@ else() target_sources(plat PRIVATE win_joystick_rawinput.c) endif() -if(DISCORD) - # PUBLIC due to config.c and 86box.c - target_compile_definitions(ui PUBLIC USE_DISCORD) - - target_sources(ui PRIVATE win_discord.c) -endif() - -if(OPENGL) - target_compile_definitions(ui PUBLIC USE_OPENGL) - target_compile_definitions(plat PRIVATE USE_OPENGL) - - target_sources(ui PRIVATE glad.c win_opengl.c win_opengl_glslp.c) -endif() - target_link_libraries(86Box advapi32 comctl32 comdlg32 gdi32 shell32 iphlpapi dxguid imm32 hid setupapi uxtheme version winmm psapi) diff --git a/src/win/Makefile.mingw b/src/win/Makefile.mingw index 6607ca904..0fcdd9ab4 100644 --- a/src/win/Makefile.mingw +++ b/src/win/Makefile.mingw @@ -54,9 +54,6 @@ ifeq ($(DEV_BUILD), y) ifndef OPEN_AT OPEN_AT := y endif - ifndef OPENGL - OPENGL := y - endif ifndef PAS16 PAS16 := n endif @@ -106,9 +103,6 @@ else ifndef OPEN_AT OPEN_AT := n endif - ifndef OPENGL - OPENGL := n - endif ifndef PAS16 PAS16 := n endif @@ -151,9 +145,6 @@ endif ifndef ARM64 ARM64 := n endif -ifndef WX -WX := n -endif ifndef DINPUT DINPUT := n endif @@ -184,9 +175,6 @@ ifeq ($(DYNAREC), y) endif endif endif -ifndef DISCORD - DISCORD := y -endif # Path to the dynamic recompiler code. @@ -198,45 +186,7 @@ endif # Name of the executable. -ifndef PROG - ifneq ($(WX), n) - PROG := Wx86Box - else - PROG := 86Box - endif -endif - -# WxWidgets basic info. Extract using the config program. -ifneq ($(WX), n) - EXPATH += wx - WX_CONFIG := wx-config.exe - ifeq ($(WX), y) - WX_PATH := C:/MinGW32/WxWidgets - WX_FLAGS := -I$(WX_PATH)/lib/wx/include/msw-unicode-3.0 \ - -I$(WX_PATH)/include/wx-3.0 \ - -D__WXMSW__ -DWX_PRECOMP -D_FILE_OFFSET_BITS=64 -pthread -# -lwx_mswu_gl-3.0 -lwxtiff-3.0 -llzma - WX_LIBS := -mwindows -mthreads -L$(WX_PATH)/lib \ - -lwx_mswu-3.0.dll \ - -lrpcrt4 -loleaut32 -lole32 -luuid \ - -lwinspool -lwinmm -lshell32 -lcomctl32 \ - -lcomdlg32 -ladvapi32 -lwsock32 -lgdi32 - endif - ifeq ($(WX), static) - WX_PATH := C:/MinGW32/WxWidgets - WX_FLAGS := -I$(WX_PATH)/lib/wx/include/msw-unicode-3.0 \ - -I$(WX_PATH)/include/wx-3.0 \ - -D__WXMSW__ -DWX_PRECOMP -D_FILE_OFFSET_BITS=64 -pthread -# -lwx_mswu_gl-3.0 -lwxtiff-3.0 -llzma - WX_LIBS := -mwindows -mthreads -L$(WX_PATH)/lib \ - -lwx_mswu-3.0 -lwxscintilla-3.0 \ - -lwxjpeg-3.0 -lwxpng-3.0 -lwxzlib-3.0 \ - -lwxregexu-3.0 -lwxexpat-3.0 \ - -lrpcrt4 -loleaut32 -lole32 -luuid \ - -lwinspool -lwinmm -lshell32 -lcomctl32 \ - -lcomdlg32 -ladvapi32 -lwsock32 -lgdi32 - endif -endif +PROG := 86Box ######################################################################### @@ -400,18 +350,6 @@ else endif endif -ifeq ($(WX), y) - OPTS += -DUSE_WX $(WX_FLAGS) - LIBS += $(WX_LIBS) - UIOBJ := wx_main.o wx_ui.o wx_stbar.o wx_render.o -else - UIOBJ := win_ui.o win_icon.o win_stbar.o \ - win_sdl.o \ - win_dialog.o win_about.o \ - win_settings.o win_devconf.o win_snd_gain.o win_specify_dim.o win_preferences.o \ - win_new_floppy.o win_jsconf.o win_media_menu.o -endif - ifeq ($(OPENAL), y) OPTS += -DUSE_OPENAL endif @@ -443,12 +381,6 @@ VNCLIB += -lvncserver VNCOBJ := vnc.o vnc_keymap.o endif -ifeq ($(DISCORD), y) -OPTS += -DUSE_DISCORD -RFLAGS += -DUSE_DISCORD -DISCORDOBJ := win_discord.o -endif - ifeq ($(MINITRACE), y) OPTS += -DMTR_ENABLED RFLAGS += -DMTR_ENABLED @@ -491,12 +423,6 @@ ifeq ($(OPEN_AT), y) OPTS += -DUSE_OPEN_AT endif -ifeq ($(OPENGL), y) -OPTS += -DUSE_OPENGL -RFLAGS += -DUSE_OPENGL -DEVBROBJ += win_opengl.o win_opengl_glslp.o glad.o -endif - ifeq ($(PAS16), y) OPTS += -DUSE_PAS16 DEVBROBJ += snd_pas16.o @@ -525,7 +451,7 @@ endif # Final versions of the toolchain flags. -CFLAGS := $(WX_FLAGS) $(OPTS) $(DFLAGS) $(COPTIM) $(AOPTIM) \ +CFLAGS := $(OPTS) $(DFLAGS) $(COPTIM) $(AOPTIM) \ $(AFLAGS) -fomit-frame-pointer -mstackrealign -Wall \ -fno-strict-aliasing @@ -751,6 +677,13 @@ PLATOBJ := win.o \ win_crashdump.o win_midi.o \ win_mouse.o +UIOBJ := win_ui.o win_icon.o win_stbar.o win_discord.o \ + win_sdl.o win_opengl.o win_opengl_glslp.o glad.o \ + win_dialog.o win_about.o \ + win_settings.o win_devconf.o win_snd_gain.o win_specify_dim.o win_preferences.o \ + win_new_floppy.o win_jsconf.o \ + win_media_menu.o + ifeq ($(DINPUT), y) PLATOBJ += win_joystick.o else @@ -760,8 +693,7 @@ endif OBJ := $(MAINOBJ) $(CPUOBJ) $(CHIPSETOBJ) $(MCHOBJ) $(DEVOBJ) $(MEMOBJ) \ $(FDDOBJ) $(GAMEOBJ) $(CDROMOBJ) $(ZIPOBJ) $(MOOBJ) $(HDDOBJ) $(MINIVHDOBJ) \ $(NETOBJ) $(PRINTOBJ) $(SCSIOBJ) $(SIOOBJ) $(SNDOBJ) $(VIDOBJ) $(VOODOOOBJ) \ - $(PLATOBJ) $(UIOBJ) $(FSYNTHOBJ) $(MUNTOBJ) $(DEVBROBJ) \ - $(DISCORDOBJ) $(MINITRACEOBJ) + $(PLATOBJ) $(UIOBJ) $(FSYNTHOBJ) $(MUNTOBJ) $(DEVBROBJ) $(MINITRACEOBJ) ifdef EXOBJ OBJ += $(EXOBJ) endif @@ -772,9 +704,6 @@ LIBS := -mwindows -lcomctl32 \ ifeq ($(VNC), y) LIBS += $(VNCLIB) -lws2_32 endif -ifneq ($(WX), n) -LIBS += $(WX_LIBS) -lm -endif LIBS += -lpng -lz -lwsock32 -lshell32 -liphlpapi -lpsapi -lSDL2 -limm32 -lhid -lsetupapi -loleaut32 -luxtheme -lversion -lwinmm -static -lstdc++ ifneq ($(X64), y) ifneq ($(ARM64), y) @@ -861,7 +790,7 @@ ifneq ($(DEBUG), y) endif hello.exe: hello.o - $(CXX) $(LDFLAGS) -o hello.exe hello.o $(WXLIBS) $(LIBS) + $(CXX) $(LDFLAGS) -o hello.exe hello.o $(LIBS) ifneq ($(DEBUG), y) @$(STRIP) hello.exe endif diff --git a/src/win/languages/cs-CZ.rc b/src/win/languages/cs-CZ.rc index 8de679e4f..9b59a8bd9 100644 --- a/src/win/languages/cs-CZ.rc +++ b/src/win/languages/cs-CZ.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Nastavení...", IDM_CONFIG MENUITEM "&Aktualizovat ikony stavového řádku", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Předvolby...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Povolit integraci s &Discordem", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Pořídit &screenshot\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Předvolby...", IDM_PREFERENCES + MENUITEM "Povolit integraci s &Discordem", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Zesílení zvuku", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Cílová snímková frekvence" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Zvolit shader...", IDM_VID_GL_SHADER MENUITEM "&Odebrat shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/de-DE.rc b/src/win/languages/de-DE.rc index 6dccaa4c0..748fbf715 100644 --- a/src/win/languages/de-DE.rc +++ b/src/win/languages/de-DE.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3-Kern)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Optionen...", IDM_CONFIG MENUITEM "&Statusleistenicons aktualisieren", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Einstellungen...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "&Discord-Integration aktivieren", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "S&creenshot aufnehmen\tStrg+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Einstellungen...", IDM_PREFERENCES + MENUITEM "&Discord-Integration aktivieren", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Schallverstärkung...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "Ziel&framerate" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Shader auswählen...", IDM_VID_GL_SHADER MENUITEM "&Shader entfernen", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/en-GB.rc b/src/win/languages/en-GB.rc index f64b0f768..f0c65adab 100644 --- a/src/win/languages/en-GB.rc +++ b/src/win/languages/en-GB.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Settings...", IDM_CONFIG MENUITEM "&Update status bar icons", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Preferences...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Enable &Discord integration", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Take s&creenshot\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Preferences...", IDM_PREFERENCES + MENUITEM "Enable &Discord integration", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "Sound &gain...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "Target &framerate" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Select shader...", IDM_VID_GL_SHADER MENUITEM "&Remove shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/en-US.rc b/src/win/languages/en-US.rc index a350395fd..ade2e1ff9 100644 --- a/src/win/languages/en-US.rc +++ b/src/win/languages/en-US.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Settings...", IDM_CONFIG MENUITEM "&Update status bar icons", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Preferences...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Enable &Discord integration", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Take s&creenshot\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Preferences...", IDM_PREFERENCES + MENUITEM "Enable &Discord integration", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "Sound &gain...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "Target &framerate" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Select shader...", IDM_VID_GL_SHADER MENUITEM "&Remove shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/es-ES.rc b/src/win/languages/es-ES.rc index c69f6f226..23a1eae81 100644 --- a/src/win/languages/es-ES.rc +++ b/src/win/languages/es-ES.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Ajustes...", IDM_CONFIG MENUITEM "&Actualizar iconos en barra de estado", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Preferencias...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Habilitar integración con &Discord", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Tomar c&aptura\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Preferencias...", IDM_PREFERENCES + MENUITEM "Habilitar integración con &Discord", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Ganancia de sonido...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Tasa de refresco objetivo" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Seleccionar shader...", IDM_VID_GL_SHADER MENUITEM "&Eliminar shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/fi-FI.rc b/src/win/languages/fi-FI.rc index 117e951a6..ff0130d0c 100644 --- a/src/win/languages/fi-FI.rc +++ b/src/win/languages/fi-FI.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (ohjelmistopohjainen)", IDM_VID_SDL_SW MENUITEM "SDL (&laitteistokiihdytetty)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Kokoonpano...", IDM_CONFIG MENUITEM "&Päivitä tilapalkin kuvakkeita", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Sovellusasetukset...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Käytä &Discord integraatiota", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Ota &kuvakaappaus\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Sovellusasetukset...", IDM_PREFERENCES + MENUITEM "Käytä &Discord integraatiota", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Äänen tulotaso...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Kuvataajuustavoite" @@ -265,7 +259,6 @@ BEGIN MENUITEM "Valitse varjostin&ohjelma...", IDM_VID_GL_SHADER MENUITEM "&Poista varjostinohjelma", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index ebee97263..06f46221d 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Logiciel)", IDM_VID_SDL_SW MENUITEM "SDL (&Materiel)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Réglages...", IDM_CONFIG MENUITEM "Mettre à jour la barre de stat&us", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Préférences...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Activer intégration &Discord", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Copie &Ecran\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Préférences...", IDM_PREFERENCES + MENUITEM "Activer intégration &Discord", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Gain Son...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Taux de rafraîchissement cible" @@ -265,7 +259,6 @@ BEGIN MENUITEM "Sé&lectionnez le shader...", IDM_VID_GL_SHADER MENUITEM "S&upprimer le shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index 290039389..db1191e1e 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Softver)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardver)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 jezgra)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Opcije...", IDM_CONFIG MENUITEM "&Ažuriranje ikone statusne trake", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Postavke...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Omogući integraciju &Discord-a", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Napravite &snimku zaslona\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Postavke...", IDM_PREFERENCES + MENUITEM "Omogući integraciju &Discord-a", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Pojačanje zvuka...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Ciljni framerate" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Odaberi shader...", IDM_VID_GL_SHADER MENUITEM "&Ukloni shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/hu-HU.rc b/src/win/languages/hu-HU.rc index c54412050..2acad9e18 100644 --- a/src/win/languages/hu-HU.rc +++ b/src/win/languages/hu-HU.rc @@ -44,9 +44,7 @@ BEGIN MENUITEM "&SDL (Szoftveres)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardveres)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -103,15 +101,12 @@ BEGIN BEGIN MENUITEM "&Konfigurálás...", IDM_CONFIG MENUITEM "Állapotsori ikonok &frissítése", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Beállítások...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "&Discord integráció engedélyezése", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "&Képernyőkép készítése\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Beállítások...", IDM_PREFERENCES + MENUITEM "&Discord integráció engedélyezése", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Hangerőszabályzó...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -252,7 +247,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "Cél &képkockasebesség" @@ -268,7 +262,6 @@ BEGIN MENUITEM "Shader &kiválasztása...", IDM_VID_GL_SHADER MENUITEM "Shader &eltávolítása", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/it-IT.rc b/src/win/languages/it-IT.rc index e33ade229..9cff4e642 100644 --- a/src/win/languages/it-IT.rc +++ b/src/win/languages/it-IT.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Impostazioni...", IDM_CONFIG MENUITEM "&Aggiorna icone della barra di stato", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Preferenze...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Abilita &integrazione Discord", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Cattura schermata\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Preferenze...", IDM_PREFERENCES + MENUITEM "Abilita &integrazione Discord", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "Guadagno &suono...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "Imposta obiettivo &fotogrammi" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Seleziona shader...", IDM_VID_GL_SHADER MENUITEM "&Rimuovi shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/ja-JP.rc b/src/win/languages/ja-JP.rc index 648f7c5ab..83e53a05a 100644 --- a/src/win/languages/ja-JP.rc +++ b/src/win/languages/ja-JP.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "SDL (ソフトウェア)(&S)", IDM_VID_SDL_SW MENUITEM "SDL (ハードウェア)(&H)", IDM_VID_SDL_HW MENUITEM "SDL (OpenGL)(&O)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "OpenGL (3.3コア)(&G)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "VNC(&V)", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "設定(&S)...", IDM_CONFIG MENUITEM "ステータスバーアイコンの更新(&U)", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "環境設定(&P)...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Discordとの連携を可能にする(&D)", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "クリーンショットを撮る(&C)\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "環境設定(&P)...", IDM_PREFERENCES + MENUITEM "Discordとの連携を可能にする(&D)", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "サウンドゲイン(&G)...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "目標フレームレート(&F)" @@ -265,7 +259,6 @@ BEGIN MENUITEM "シェーダの選択(&S)...", IDM_VID_GL_SHADER MENUITEM "シェーダの削除(&R)", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/pt-BR.rc b/src/win/languages/pt-BR.rc index 163897b48..79c0b51cf 100644 --- a/src/win/languages/pt-BR.rc +++ b/src/win/languages/pt-BR.rc @@ -42,9 +42,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (Núcleo 3.3)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -101,15 +99,12 @@ BEGIN BEGIN MENUITEM "&Configurações...", IDM_CONFIG MENUITEM "&Atualizar ícones da barra de status", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Preferências...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Ativar integração com o &Discord", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Capturar &tela\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Preferências...", IDM_PREFERENCES + MENUITEM "Ativar integração com o &Discord", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Ganho de som...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -250,7 +245,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Taxa de quadro pretendida" @@ -266,7 +260,6 @@ BEGIN MENUITEM "&Selecionar shader...", IDM_VID_GL_SHADER MENUITEM "&Remover shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/pt-PT.rc b/src/win/languages/pt-PT.rc index ff209c66f..39f9626d4 100644 --- a/src/win/languages/pt-PT.rc +++ b/src/win/languages/pt-PT.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Software)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (Núcleo 3.3)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Definições...", IDM_CONFIG MENUITEM "&Atualizar ícones da barra de estado", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Preferências...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Ativar integração com &Discord", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "Gravar imagem de ecrã\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Preferências...", IDM_PREFERENCES + MENUITEM "Ativar integração com &Discord", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Ganho de som...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Taxa de quadros de destino" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Selecionar shader...", IDM_VID_GL_SHADER MENUITEM "&Remover shader", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/ru-RU.rc b/src/win/languages/ru-RU.rc new file mode 100644 index 000000000..61f8cd369 --- /dev/null +++ b/src/win/languages/ru-RU.rc @@ -0,0 +1,637 @@ +//////////////////////////////////////////////////////////////////////////// +// Russian resources + +#ifdef _WIN32 +LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT +#pragma code_page(65001) +#endif //_WIN32 + +#define AUTHORS + +///////////////////////////////////////////////////////////////////////////// +// +// Menu +// + +MainMenu MENU DISCARDABLE +BEGIN + POPUP "&Действие" + BEGIN + MENUITEM "&Клавиатура требует захвата", IDM_ACTION_KBD_REQ_CAPTURE + MENUITEM "&Правый CTRL - это левый ALT", IDM_ACTION_RCTRL_IS_LALT + MENUITEM SEPARATOR + MENUITEM "&Жёсткая перезагрузка...", IDM_ACTION_HRESET + MENUITEM "&Ctrl+Alt+Del\tCtrl+F12", IDM_ACTION_RESET_CAD + MENUITEM SEPARATOR + MENUITEM "Ctrl+Alt+&Esc", IDM_ACTION_CTRL_ALT_ESC + MENUITEM SEPARATOR + MENUITEM "&Пауза", IDM_ACTION_PAUSE + MENUITEM SEPARATOR + MENUITEM "&Выход...", IDM_ACTION_EXIT + END + POPUP "&Вид" + BEGIN + MENUITEM "&Скрыть строку статуса", IDM_VID_HIDE_STATUS_BAR + MENUITEM SEPARATOR + MENUITEM "&Изменяемый размер окна", IDM_VID_RESIZE + MENUITEM "&Запомнить размер и позицию", IDM_VID_REMEMBER + MENUITEM SEPARATOR + POPUP "&Рендерер" + BEGIN + MENUITEM "&SDL (Software)", IDM_VID_SDL_SW + MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW + MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL + MENUITEM "Open&GL (Ядро 3.3)", IDM_VID_OPENGL_CORE +#ifdef USE_VNC + MENUITEM "&VNC", IDM_VID_VNC +#endif + END + MENUITEM SEPARATOR + MENUITEM "&Указать размеры...", IDM_VID_SPECIFY_DIM + MENUITEM "У&становить соотношение сторон 4:3", IDM_VID_FORCE43 + POPUP "&Масштаб окна" + BEGIN + MENUITEM "&0.5x", IDM_VID_SCALE_1X + MENUITEM "&1x", IDM_VID_SCALE_2X + MENUITEM "1.&5x", IDM_VID_SCALE_3X + MENUITEM "&2x", IDM_VID_SCALE_4X + END + POPUP "Метод фильтрации" + BEGIN + MENUITEM "&Ближайший", IDM_VID_FILTER_NEAREST + MENUITEM "&Линейный", IDM_VID_FILTER_LINEAR + END + MENUITEM "Масштабирование Hi&DPI", IDM_VID_HIDPI + MENUITEM SEPARATOR + MENUITEM "&Полноэкранный режим\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN + POPUP "&Режим растягивания в полноэкранном режиме" + BEGIN + MENUITEM "&Растянуть на весь экран", IDM_VID_FS_FULL + MENUITEM "&4:3", IDM_VID_FS_43 + MENUITEM "&Квадратные пиксели (сохранить соотношение)", IDM_VID_FS_KEEPRATIO + MENUITEM "&Целочисленная шкала", IDM_VID_FS_INT + END + POPUP "Настройки E&GA/(S)VGA" + BEGIN + MENUITEM "&Инверсный монитор VGA", IDM_VID_INVERT + POPUP "&Тип экрана VGA" + BEGIN + MENUITEM "RGB &цветной", IDM_VID_GRAY_RGB + MENUITEM "&RGB монохромный", IDM_VID_GRAY_MONO + MENUITEM "&Янтарное свечение", IDM_VID_GRAY_AMBER + MENUITEM "&Зелёное свечение", IDM_VID_GRAY_GREEN + MENUITEM "&Белое свечение", IDM_VID_GRAY_WHITE + END + POPUP "Тип монохромной &конверсии" + BEGIN + MENUITEM "BT&601 (NTSC/PAL)", IDM_VID_GRAYCT_601 + MENUITEM "BT&709 (HDTV)", IDM_VID_GRAYCT_709 + MENUITEM "&Усреднённый", IDM_VID_GRAYCT_AVE + END + END + MENUITEM SEPARATOR + MENUITEM "Оверскан CGA/PCjr/Tandy/E&GA/(S)VGA", IDM_VID_OVERSCAN + MENUITEM "Изменить контрастность &монохромного дисплея", IDM_VID_CGACON + END + MENUITEM "&Носители", IDM_MEDIA + POPUP "&Инструменты" + BEGIN + MENUITEM "&Настройки...", IDM_CONFIG + MENUITEM "&Обновление иконок строки статуса", IDM_UPDATE_ICONS + MENUITEM SEPARATOR + MENUITEM "Сделать с&криншот\tCtrl+F11", IDM_ACTION_SCREENSHOT + MENUITEM SEPARATOR + MENUITEM "&Параметры...", IDM_PREFERENCES + MENUITEM "Включить интеграцию &Discord", IDM_DISCORD + MENUITEM SEPARATOR + MENUITEM "&Усиление звука...", IDM_SND_GAIN +#ifdef MTR_ENABLED + MENUITEM SEPARATOR + MENUITEM "Начать трассировку\tCtrl+T", IDM_ACTION_BEGIN_TRACE + MENUITEM "Завершить трассировку\tCtrl+T", IDM_ACTION_END_TRACE +#endif + END +#if defined(ENABLE_LOG_TOGGLES) || defined(ENABLE_LOG_COMMANDS) + POPUP "&Ведение журнала" + BEGIN +# ifdef ENABLE_BUSLOGIC_LOG + MENUITEM "Включить журналы BusLogic\tCtrl+F4", IDM_LOG_BUSLOGIC +# endif +# ifdef ENABLE_CDROM_LOG + MENUITEM "Включить журналы CD-ROM\tCtrl+F5", IDM_LOG_CDROM +# endif +# ifdef ENABLE_D86F_LOG + MENUITEM "Включить журналы дискет (86F)\tCtrl+F6", IDM_LOG_D86F +# endif +# ifdef ENABLE_FDC_LOG + MENUITEM "Включить журналы контроллера дискет\tCtrl+F7", IDM_LOG_FDC +# endif +# ifdef ENABLE_IDE_LOG + MENUITEM "Включить журналы IDE\tCtrl+F8", IDM_LOG_IDE +# endif +# ifdef ENABLE_SERIAL_LOG + MENUITEM "Включить журналы последовательного порта\tCtrl+F3", IDM_LOG_SERIAL +# endif +# ifdef ENABLE_NIC_LOG + MENUITEM "Включить журналы сети\tCtrl+F9", IDM_LOG_NIC +# endif +# ifdef ENABLE_LOG_COMMANDS +# ifdef ENABLE_LOG_TOGGLES + MENUITEM SEPARATOR +# endif +# ifdef ENABLE_LOG_BREAKPOINT + MENUITEM "&Точка останова журнала\tCtrl+F10", IDM_LOG_BREAKPOINT +# endif +# ifdef ENABLE_VRAM_DUMP + MENUITEM "&Выгрузка видео ОЗУ\tCtrl+F1", IDM_DUMP_VRAM +# endif +# endif + END +#endif + POPUP "&Помощь" + BEGIN + MENUITEM "&Документация...", IDM_DOCS + MENUITEM "&О программе 86Box...", IDM_ABOUT + END +END + +StatusBarMenu MENU DISCARDABLE +BEGIN + MENUITEM SEPARATOR +END + +CassetteSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Новый образ...", IDM_CASSETTE_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&Существующий образ...", IDM_CASSETTE_IMAGE_EXISTING + MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_CASSETTE_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "&Запись", IDM_CASSETTE_RECORD + MENUITEM "&Воспроизвести", IDM_CASSETTE_PLAY + MENUITEM "&Перемотка к началу", IDM_CASSETTE_REWIND + MENUITEM "&Перемотка вперед до конца", IDM_CASSETTE_FAST_FORWARD + MENUITEM SEPARATOR + MENUITEM "В&ыброс", IDM_CASSETTE_EJECT + END +END + +CartridgeSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Образ...", IDM_CARTRIDGE_IMAGE + MENUITEM SEPARATOR + MENUITEM "В&ыброс", IDM_CARTRIDGE_EJECT + END +END + +FloppySubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Новый образ...", IDM_FLOPPY_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&Существующий образ...", IDM_FLOPPY_IMAGE_EXISTING + MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_FLOPPY_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "Э&кспорт в 86F...", IDM_FLOPPY_EXPORT_TO_86F + MENUITEM SEPARATOR + MENUITEM "В&ыброс", IDM_FLOPPY_EJECT + END +END + +CdromSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Mute", IDM_CDROM_MUTE + MENUITEM SEPARATOR + MENUITEM "П&устой", IDM_CDROM_EMPTY + MENUITEM "&Перезагрузка предыдущего образа", IDM_CDROM_RELOAD + MENUITEM SEPARATOR + MENUITEM "&Образ", IDM_CDROM_IMAGE + END +END + +ZIPSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Новый образ...", IDM_ZIP_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&Существующий образ...", IDM_ZIP_IMAGE_EXISTING + MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_ZIP_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "В&ыброс", IDM_ZIP_EJECT + MENUITEM "&Перезагрузка предыдущего образа", IDM_ZIP_RELOAD + END +END + +MOSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Новый образ...", IDM_MO_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&Существующий образ...", IDM_MO_IMAGE_EXISTING + MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_MO_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "В&ыброс", IDM_MO_EJECT + MENUITEM "&Перезагрузка предыдущего образа", IDM_MO_RELOAD + END +END + +VidGLSubMenu MENU DISCARDABLE +BEGIN + POPUP "Целевая &частота кадров" + BEGIN + MENUITEM "&Синхронизация с видео", IDM_VID_GL_FPS_BLITTER + MENUITEM "&25 кадров в секунду", IDM_VID_GL_FPS_25 + MENUITEM "&30 кадров в секунду", IDM_VID_GL_FPS_30 + MENUITEM "&50 кадров в секунду", IDM_VID_GL_FPS_50 + MENUITEM "&60 кадров в секунду", IDM_VID_GL_FPS_60 + MENUITEM "&75 кадров в секунду", IDM_VID_GL_FPS_75 + END + MENUITEM "&VSync", IDM_VID_GL_VSYNC + MENUITEM "&Выбор шейдера...", IDM_VID_GL_SHADER + MENUITEM "&Удалить шейдер", IDM_VID_GL_NOSHADER +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +#define STR_PREFERENCES "Параметры" +#define STR_SND_GAIN "Усиление звука" +#define STR_NEW_FLOPPY "Новый образ" +#define STR_CONFIG "Настройки" +#define STR_SPECIFY_DIM "Указать размеры главного окна" + +#define STR_OK "OK" +#define STR_CANCEL "Отмена" +#define STR_GLOBAL "Сохраните эти настройки в качестве &глобальных значений по умолчанию" +#define STR_DEFAULT "&По умолчанию" +#define STR_LANGUAGE "Язык:" +#define STR_ICONSET "Набор иконок:" + +#define STR_GAIN "Усиление" + +#define STR_FILE_NAME "Имя файла:" +#define STR_DISK_SIZE "Размер диска:" +#define STR_RPM_MODE "RPM режим:" +#define STR_PROGRESS "Течение:" + +#define STR_WIDTH "Ширина:" +#define STR_HEIGHT "Высота:" +#define STR_LOCK_TO_SIZE "Зафиксировать на этом размере" + +#define STR_MACHINE_TYPE "Тип материнской платы:" +#define STR_MACHINE "Материнская плата:" +#define STR_CONFIGURE "Настройка" +#define STR_CPU_TYPE "Тип CPU:" +#define STR_SPEED "Скорость:" +#define STR_FPU "FPU:" +#define STR_WAIT_STATES "Циклы ожидания:" +#define STR_MB "МБ" +#define STR_MEMORY "Память:" +#define STR_TIME_SYNC "Синхронизация времени" +#define STR_DISABLED "Выключить" +#define STR_ENABLED_LOCAL "Включить (местное время)" +#define STR_ENABLED_UTC "Включить (UTC)" +#define STR_DYNAREC "Динамический рекомпилятор" + +#define STR_VIDEO "Видео:" +#define STR_VOODOO "Графика Voodoo" + +#define STR_MOUSE "Мышь:" +#define STR_JOYSTICK "Джойстик:" +#define STR_JOY1 "Джойстик 1..." +#define STR_JOY2 "Джойстик 2..." +#define STR_JOY3 "Джойстик 3..." +#define STR_JOY4 "Джойстик 4..." + +#define STR_SOUND "Звуковая карта:" +#define STR_MIDI "MIDI Out-устройство:" +#define STR_MIDI_IN "MIDI In-устройство:" +#define STR_MPU401 "Отдельный MPU-401" +#define STR_SSI "Innovation SSI-2001" +#define STR_CMS "CMS / Game Blaster" +#define STR_GUS "Gravis Ultrasound" +#define STR_FLOAT "Использовать FLOAT32 звук" + +#define STR_NET_TYPE "Тип сети:" +#define STR_PCAP "Устройство PCap:" +#define STR_NET "Сетевой адаптер:" + +#define STR_LPT1 "Устройство LPT1:" +#define STR_LPT2 "Устройство LPT2:" +#define STR_LPT3 "Устройство LPT3:" +#define STR_SERIAL1 "Последовательный порт 1" +#define STR_SERIAL2 "Последовательный порт 2" +#define STR_SERIAL3 "Последовательный порт 3" +#define STR_SERIAL4 "Последовательный порт 4" +#define STR_PARALLEL1 "Параллельный порт 1" +#define STR_PARALLEL2 "Параллельный порт 2" +#define STR_PARALLEL3 "Параллельный порт 3" + +#define STR_HDC "Контроллер HD:" +#define STR_FDC "Контроллер FD:" +#define STR_IDE_TER "Третичный IDE контроллер" +#define STR_IDE_QUA "Четвертичный IDE контроллер" +#define STR_SCSI "SCSI" +#define STR_SCSI_1 "Контроллер 1:" +#define STR_SCSI_2 "Контроллер 2:" +#define STR_SCSI_3 "Контроллер 3:" +#define STR_SCSI_4 "Контроллер 4:" +#define STR_CASSETTE "Кассета" + +#define STR_HDD "Жёсткие диски:" +#define STR_NEW "&Новый..." +#define STR_EXISTING "&Существующий..." +#define STR_REMOVE "&Убрать" +#define STR_BUS "Шина:" +#define STR_CHANNEL "Канал:" +#define STR_ID "ID:" + +#define STR_SPECIFY "&Указать..." +#define STR_SECTORS "Сектора:" +#define STR_HEADS "Головки:" +#define STR_CYLS "Цилиндры:" +#define STR_SIZE_MB "Размер (MB):" +#define STR_TYPE "Тип:" +#define STR_IMG_FORMAT "Формат образа:" +#define STR_BLOCK_SIZE "Размер блока:" + +#define STR_FLOPPY_DRIVES "Дисководы флоппи:" +#define STR_TURBO "Турбо тайминги" +#define STR_CHECKBPB "Проверять BPB" +#define STR_CDROM_DRIVES "Оптические дисководы:" + +#define STR_MO_DRIVES "Магнитооптические дисководы:" +#define STR_ZIP_DRIVES "Дисководы ZIP:" +#define STR_250 "ZIP 250" + +#define STR_ISARTC "ISA RTC:" +#define STR_ISAMEM "Карта расширения памяти (ISA)" +#define STR_ISAMEM_1 "Карта 1:" +#define STR_ISAMEM_2 "Карта 2:" +#define STR_ISAMEM_3 "Карта 3:" +#define STR_ISAMEM_4 "Карта 4:" +#define STR_BUGGER "Устройство ISABugger" +#define STR_POSTCARD "Карта POST" + +#define FONT_SIZE 9 +#define FONT_NAME "Segoe UI" + +#include "dialogs.rc" + +///////////////////////////////////////////////////////////////////////////// +// +// String Table +// + +STRINGTABLE DISCARDABLE +BEGIN + 2048 "86Box" + IDS_2049 "Ошибка" + IDS_2050 "Неустранимая ошибка" + IDS_2051 "<зарезервировано>" + IDS_2052 "Нажмите CTRL+ALT+PAGE DOWN для возврата в оконный режим." + IDS_2053 "Скорость" + IDS_2054 "ZIP %03i %i (%s): %ls" + IDS_2055 "Образы ZIP (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0" + IDS_2056 "86Box не смог найти ни одного пригодного для использования образа ПЗУ.\n\nПожалуйста скачайте набор ПЗУ и извлеките его в каталог ""roms""." + IDS_2057 "(пустой)" + IDS_2058 "Образы ZIP (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0Все файлы (*.*)\0*.*\0" + IDS_2059 "Турбо" + IDS_2060 "Вкл" + IDS_2061 "Выкл" + IDS_2062 "Все образы (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0Основные образы секторов (*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Изображения поверхности (*.86F)\0*.86F\0" + IDS_2063 "Материнская плата ""%hs"" недоступна из-за отсутствия ПЗУ в каталоге roms/machines. Идёт переключение на доступную материнскую плату." +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_2064 "Видеокарта ""%hs"" недоступна из-за отсутствия ПЗУ в каталоге roms/video. Идёт переключение на доступную видеокарту." + IDS_2065 "Материнская плата" + IDS_2066 "Дисплей" + IDS_2067 "Устройства ввода" + IDS_2068 "Звук" + IDS_2069 "Сеть" + IDS_2070 "Порты (COM и LPT)" + IDS_2071 "Контроллеры хранения" + IDS_2072 "Жёсткие диски" + IDS_2073 "Дисководы флоппи и CD-ROM" + IDS_2074 "Другие съемные устройства" + IDS_2075 "Другие периферийные устройства" + IDS_2076 "Изображения поверхности (*.86F)\0*.86F\0" + IDS_2077 "Щёлкните мышью для захвата курсора" + IDS_2078 "Нажмите F8+F12 чтобы освободить курсор" + IDS_2079 "Нажмите F8+F12 или среднюю кнопку мыши чтобы освободить курсор" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_2080 "Невозможно инициализировать FluidSynth" + IDS_2081 "Шина" + IDS_2082 "Файл" + IDS_2083 "Ц" + IDS_2084 "Г" + IDS_2085 "С" + IDS_2086 "МБ" + IDS_2087 "Проверять BPB" + IDS_2088 "КБ" + IDS_2089 "Не удалось инициализировать рендерер видео." + IDS_2090 "По умолчанию" + IDS_2091 "%i циклов ожидания" + IDS_2092 "Тип" + IDS_2093 "Не удалось настроить PCap" + IDS_2094 "Устройства PCap не найдены" + IDS_2095 "Неверное устройство PCap" + IDS_2096 "Стандартный 2-кнопочный джойстик" + IDS_2097 "Стандартный 4-кнопочный джойстик" + IDS_2098 "Стандартный 6-кнопочный джойстик" + IDS_2099 "Стандартный 8-кнопочный джойстик" + IDS_2100 "CH Flightstick Pro" + IDS_2101 "Microsoft SideWinder Pad" + IDS_2102 "Система управления полетом Thrustmaster" + IDS_2103 "Нет" + IDS_2104 "Невозможно загрузить ускорители клавиатуры." + IDS_2105 "Невозможно зарегистрировать необработанный вход." + IDS_2106 "%u" + IDS_2107 "%u MB (CHS: %i, %i, %i)" + IDS_2108 "Флоппи %i (%s): %ls" + IDS_2109 "Все образы (*.0??;*.1??;*.??0;*.86F;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.JSON;*.TD0;*.*FD?;*.MFM;*.XDF)\0*.0??;*.1??;*.??0;*.86F;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.JSON;*.TD0;*.*FD?;*.MFM;*.XDF\0Расширенные образы секторов (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Основные образы секторов (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0Образы потока (*.FDI)\0*.FDI\0Изображения поверхности (*.86F;*.MFM)\0*.86F;*.MFM\0Все файлы (*.*)\0*.*\0" + IDS_2110 "Невозможно инициализировать FreeType" + IDS_2111 "Невозможно инициализировать SDL, требуется SDL2.dll" + IDS_2112 "Вы уверены, что хотите выполнить жесткую перезагрузку эмулируемой машины?" + IDS_2113 "Вы уверены, что хотите выйти из 86Box?" + IDS_2114 "Невозможно инициализировать Ghostscript" + IDS_2115 "Магнитооптический %i (%ls): %ls" + IDS_2116 "Образы магнитооптических дисков (*.IM?;*.MDI)\0*.IM?;*.MDI\0Все файлы (*.*)\0*.*\0" + IDS_2117 "Добро пожаловать в 86Box!" + IDS_2118 "Внутренний контроллер" + IDS_2119 "Выход" + IDS_2120 "ПЗУ не найдено" + IDS_2121 "Хотите ли вы сохранить настройки?" + IDS_2122 "Это приведет к жесткой перезагрузке эмулируемой машины." + IDS_2123 "Сохранить" + IDS_2124 "О программе 86Box" + IDS_2125 "86Box v" EMU_VERSION + + IDS_2126 "Эмулятор старых компьютеров\n\nАвторы: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nВыпускается под лицензией GNU General Public License версии 2 или более поздней. Дополнительную информацию см. в файле LICENSE." + IDS_2127 "OK" + IDS_2128 "Оборудование недоступно" +#ifdef _WIN32 +#define LIB_NAME_PCAP "WinPcap" +#else +#define LIB_NAME_PCAP "libpcap" +#endif + IDS_2129 "Убедитесь, что " LIB_NAME_PCAP " установлен и что вы находитесь на сетевом соединении, совместимом с " LIB_NAME_PCAP "." + IDS_2130 "Недопустимая конфигурация" +#ifdef _WIN32 +#define LIB_NAME_FREETYPE "freetype.dll" +#else +#define LIB_NAME_FREETYPE "libfreetype" +#endif + IDS_2131 LIB_NAME_FREETYPE " требуется для эмуляции принтера ESC/P." +#ifdef _WIN32 +#define LIB_NAME_GS "gsdll32.dll" +#else +#define LIB_NAME_GS "libgs" +#endif + IDS_2132 LIB_NAME_GS " требуется для автоматического преобразования файлов PostScript в PDF.\n\nВсе документы, отправленные на общий принтер PostScript, будут сохранены в виде файлов PostScript (.ps)." +#ifdef _WIN32 +#define LIB_NAME_FLUIDSYNTH "libfluidsynth.dll" +#else +#define LIB_NAME_FLUIDSYNTH "libfluidsynth" +#endif + IDS_2133 LIB_NAME_FLUIDSYNTH " требуется для вывода MIDI FluidSynth." + IDS_2134 "Идёт вход в полноэкранный режим" + IDS_2135 "Не показывайте это сообщение снова" + IDS_2136 "Не выходить" + IDS_2137 "Перезагрузить" + IDS_2138 "Не перезагрузить" + IDS_2139 "Образы магнитооптических дисков (*.IM?;*.MDI)\0*.IM?;*.MDI\0Все файлы (*.*)\0*.*\0" + IDS_2140 "Образы CD-ROM (*.ISO;*.CUE)\0*.ISO;*.CUE\0Все файлы (*.*)\0*.*\0" + IDS_2141 "Конфигурация устройства %hs" + IDS_2142 "Монитор в спящем режиме" + IDS_2143 "Шейдеры OpenGL (*.GLSL)\0*.GLSL\0Все файлы (*.*)\0*.*\0" + IDS_2144 "Параметры OpenGL" + IDS_2145 "Вы загружаете неподдерживаемую конфигурацию" + IDS_2146 "Фильтрация типов CPU на основе выбранной материнской платы отключена для этой эмулируемой машины.\n\nЭто позволяет выбрать процессор, который в противном случае несовместим с выбранной материнской платой. Однако, вы можете столкнуться с несовместимостью с BIOS материнской платы или другим программным обеспечением.\n\nВключение этого параметра официально не поддерживается, и все поданные отчеты об ошибках могут быть закрыты как недействительные." + IDS_2147 "Продолжить" + IDS_2148 "Кассета: %s" + IDS_2149 "Образы кассеты (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0Все файлы (*.*)\0*.*\0" + IDS_2150 "Картридж %i: %ls" + IDS_2151 "Образы картриджа (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Все файлы (*.*)\0*.*\0" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_4096 "Жесткий диск (%s)" + IDS_4097 "%01i:%01i" + IDS_4098 "%01i" + IDS_4099 "Оптические дисководы MFM/RLL или ESDI никогда не существовали" + IDS_4100 "Параметры..." + IDS_4101 "Параметры (большой)..." + IDS_4102 "Добавить новый жёсткий диск" + IDS_4103 "Добавить существующий жёсткий диск" + IDS_4104 "Размер образов дисков HDI не должен превышать 4 ГБ." + IDS_4105 "Размер образов дисков не должен превышать 127 ГБ." + IDS_4106 "Образы жесткого диска (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Все файлы (*.*)\0*.*\0" + IDS_4107 "Невозможно прочитать файл" + IDS_4108 "Невозможно записать файл" + IDS_4109 "Изображения HDI или HDX с размером сектора, отличным от 512, не поддерживаются." + IDS_4110 "USB пока не поддерживается" + IDS_4111 "Файл образа диска уже существует" + IDS_4112 "Пожалуйста, укажите правильное имя файла." + IDS_4113 "Создан образ диска" + IDS_4114 "Убедитесь, что файл существует и доступен для чтения." + IDS_4115 "Убедитесь, что файл сохраняется в директории, доступной для записи." + IDS_4116 "Слишком большой образ диска" + IDS_4117 "Не забудьте разбить и отформатировать вновь созданный диск." + IDS_4118 "Выбранный файл будет перезаписан. Вы уверены, что хотите использовать его?" + IDS_4119 "Неподдерживаемый образ диска" + IDS_4120 "Перезаписать" + IDS_4121 "Не перезаписать" + IDS_4122 "Необработанный образ (.img)" + IDS_4123 "Образ HDI (.hdi)" + IDS_4124 "Образ HDX (.hdx)" + IDS_4125 "VHD фиксированного размера (.vhd)" + IDS_4126 "VHD динамического размера (.vhd)" + IDS_4127 "Дифференцированнный образ VHD (.vhd)" + IDS_4128 "Большие блоки (2 MB)" + IDS_4129 "Маленькие блоки (512 KB)" + IDS_4130 "Файлы VHD (*.VHD)\0*.VHD\0Все файлы (*.*)\0*.*\0" + IDS_4131 "Выберите родительский VHD" + IDS_4132 "Это может означать, что родительский образ был изменён после того, как был создан дифференцированнный образ.\n\nЭто также может произойти, если файлы образа были перемещены или скопированы, или из-за ошибки в программе, создавшей этот диск.\n\nВы хотите исправить временные метки?" + IDS_4133 "Временные метки родительского и дочернего дисков не совпадают" + IDS_4134 "Не удалось исправить временную метку VHD." + IDS_4135 "%01i:%02i" + + IDS_4352 "MFM/RLL" + IDS_4353 "XTA" + IDS_4354 "ESDI" + IDS_4355 "IDE" + IDS_4356 "ATAPI" + IDS_4357 "SCSI" + + IDS_4608 "MFM/RLL (%01i:%01i)" + IDS_4609 "XTA (%01i:%01i)" + IDS_4610 "ESDI (%01i:%01i)" + IDS_4611 "IDE (%01i:%01i)" + IDS_4612 "ATAPI (%01i:%01i)" + IDS_4613 "SCSI (%01i:%02i)" + + IDS_5120 "CD-ROM %i (%s): %s" + + IDS_5376 "Выключен" + IDS_5381 "ATAPI" + IDS_5382 "SCSI" + + IDS_5632 "Выключен" + IDS_5637 "ATAPI (%01i:%01i)" + IDS_5638 "SCSI (%01i:%02i)" + + IDS_5888 "160 kB" + IDS_5889 "180 kB" + IDS_5890 "320 kB" + IDS_5891 "360 kB" + IDS_5892 "640 kB" + IDS_5893 "720 kB" + IDS_5894 "1.2 MB" + IDS_5895 "1.25 MB" + IDS_5896 "1.44 MB" + IDS_5897 "DMF (кластер 1024)" + IDS_5898 "DMF (кластер 2048)" + IDS_5899 "2.88 MB" + IDS_5900 "ZIP 100" + IDS_5901 "ZIP 250" + IDS_5902 "3.5"" 128Mb M.O. (ISO 10090)" + IDS_5903 "3.5"" 230Mb M.O. (ISO 13963)" + IDS_5904 "3.5"" 540Mb M.O. (ISO 15498)" + IDS_5905 "3.5"" 640Mb M.O. (ISO 15498)" + IDS_5906 "3.5"" 1.3Gb M.O. (GigaMO)" + IDS_5907 "3.5"" 2.3Gb M.O. (GigaMO 2)" + IDS_5908 "5.25"" 600Mb M.O." + IDS_5909 "5.25"" 650Mb M.O." + IDS_5910 "5.25"" 1Gb M.O." + IDS_5911 "5.25"" 1.3Gb M.O." + + IDS_6144 "Точный RPM" + IDS_6145 "На 1% медленнее точного RPM" + IDS_6146 "На 1.5% медленнее точного RPM" + IDS_6147 "На 2% медленнее точного RPM" + + IDS_7168 "(По умолчанию системы)" +END +#define IDS_LANG_ENUS IDS_7168 + +// English (U.S.) resources +///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/sl-SI.rc b/src/win/languages/sl-SI.rc index c6e6b6a76..d8eaeb2c8 100644 --- a/src/win/languages/sl-SI.rc +++ b/src/win/languages/sl-SI.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (programsko)", IDM_VID_SDL_SW MENUITEM "SDL (s&trojno)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) - MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif + MENUITEM "Open&GL (Jedro 3.3)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Nastavitve...", IDM_CONFIG MENUITEM "&Posodabljaj ikone statusne vrstice", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Možnosti...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "Omogoči integracijo s programom &Discord", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "&Zajemi posnetek zaslona\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Možnosti...", IDM_PREFERENCES + MENUITEM "Omogoči integracijo s programom &Discord", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Ojačanje zvoka...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "&Ciljno št. sličic na sekundo" @@ -265,7 +259,6 @@ BEGIN MENUITEM "&Izberi senčilnik...", IDM_VID_GL_SHADER MENUITEM "&Odstrani senčilnik", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/tr-TR.rc b/src/win/languages/tr-TR.rc index e1785bb58..b1c055ad1 100644 --- a/src/win/languages/tr-TR.rc +++ b/src/win/languages/tr-TR.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (Yazılım)", IDM_VID_SDL_SW MENUITEM "SDL (&Donanım)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL -#if defined(DEV_BRANCH) && defined(USE_OPENGL) MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE -#endif #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -100,15 +98,12 @@ BEGIN BEGIN MENUITEM "&Ayarlar...", IDM_CONFIG MENUITEM "Durum &çubuğu ikonlarını güncelle", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "&Tercihler...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "&Discord entegrasyonunu etkinleştir", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "&Ekran görüntüsü al\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "&Tercihler...", IDM_PREFERENCES + MENUITEM "&Discord entegrasyonunu etkinleştir", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "&Ses yükseltici...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR @@ -249,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "Hedef &kare oranı" @@ -265,7 +259,6 @@ BEGIN MENUITEM "Gölgelendirici &seç...", IDM_VID_GL_SHADER MENUITEM "&Gölgelendiriciyi kaldır", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// @@ -485,7 +478,7 @@ BEGIN IDS_2118 "Dahili kontrolcü" IDS_2119 "Çıkış" IDS_2120 "Hiçbir ROM imajı bulunamadı" - IDS_2121 "Ayarlary kaydetmek istediğinizden emin misiniz?" + IDS_2121 "Ayarları kaydetmek istediğinizden emin misiniz?" IDS_2122 "Bu makineyi yeniden başlatacak." IDS_2123 "Kaydet" IDS_2124 "86Box Hakkında" diff --git a/src/win/languages/zh-CN.rc b/src/win/languages/zh-CN.rc index acbd3a602..11f219dc2 100644 --- a/src/win/languages/zh-CN.rc +++ b/src/win/languages/zh-CN.rc @@ -100,15 +100,12 @@ BEGIN BEGIN MENUITEM "设置(&S)...", IDM_CONFIG MENUITEM "更新状态栏图标(&U)", IDM_UPDATE_ICONS - MENUITEM SEPARATOR - MENUITEM "首选项(&P)...", IDM_PREFERENCES -# ifdef USE_DISCORD - MENUITEM SEPARATOR - MENUITEM "启用 Discord 集成(&D)", IDM_DISCORD -# endif MENUITEM SEPARATOR MENUITEM "截图(&c)\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR + MENUITEM "首选项(&P)...", IDM_PREFERENCES + MENUITEM "启用 Discord 集成(&D)", IDM_DISCORD + MENUITEM SEPARATOR MENUITEM "音量增益(&g)...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR diff --git a/src/win/win.c b/src/win/win.c index 30555a18f..d2a5003ec 100644 --- a/src/win/win.c +++ b/src/win/win.c @@ -106,11 +106,7 @@ static const struct { { "SDL_Software", 1, (int(*)(void*))sdl_inits, sdl_close, NULL, sdl_pause, sdl_enable, sdl_set_fs, sdl_reload }, { "SDL_Hardware", 1, (int(*)(void*))sdl_inith, sdl_close, NULL, sdl_pause, sdl_enable, sdl_set_fs, sdl_reload }, { "SDL_OpenGL", 1, (int(*)(void*))sdl_initho, sdl_close, NULL, sdl_pause, sdl_enable, sdl_set_fs, sdl_reload } -#if defined(DEV_BRANCH) && defined(USE_OPENGL) ,{ "OpenGL_Core", 1, (int(*)(void*))opengl_init, opengl_close, opengl_resize, opengl_pause, NULL, opengl_set_fs, opengl_reload} -#else - ,{ "OpenGL_Core", 1, (int(*)(void*))sdl_initho, sdl_close, NULL, sdl_pause, sdl_enable, sdl_set_fs, NULL } /* fall back to SDL_OpenGL */ -#endif #ifdef USE_VNC ,{ "VNC", 0, vnc_init, vnc_close, vnc_resize, vnc_pause, NULL, NULL } #endif @@ -1005,15 +1001,9 @@ plat_vidapi_name(int api) case 2: name = "sdl_opengl"; break; -#if defined(DEV_BRANCH) && defined(USE_OPENGL) case 3: name = "opengl_core"; break; -#else - case 3: - name = "sdl_opengl"; /* fall back to SDL_OpenGL */ - break; -#endif #ifdef USE_VNC case 4: name = "vnc"; diff --git a/src/win/win_ui.c b/src/win/win_ui.c index fc41f0b8a..55591f7af 100644 --- a/src/win/win_ui.c +++ b/src/win/win_ui.c @@ -44,9 +44,7 @@ #include <86box/ui.h> #include <86box/win.h> #include <86box/version.h> -#ifdef USE_DISCORD # include <86box/win_discord.h> -#endif #ifdef MTR_ENABLED #include @@ -163,7 +161,6 @@ video_toggle_option(HMENU h, int *val, int id) device_force_redraw(); } -#if defined(DEV_BRANCH) && defined(USE_OPENGL) /* Recursively finds and deletes target submenu */ static int delete_submenu(HMENU parent, HMENU target) @@ -191,7 +188,6 @@ delete_submenu(HMENU parent, HMENU target) return 0; } -#endif static int menu_vidapi = -1; static HMENU cur_menu = NULL; @@ -199,7 +195,6 @@ static HMENU cur_menu = NULL; static void show_render_options_menu() { -#if defined(DEV_BRANCH) && defined(USE_OPENGL) if (vid_api == menu_vidapi) return; @@ -215,7 +210,7 @@ show_render_options_menu() { case IDM_VID_OPENGL_CORE: cur_menu = LoadMenu(hinstance, VID_GL_SUBMENU); - InsertMenu(GetSubMenu(menuMain, 1), 4, MF_BYPOSITION | MF_STRING | MF_POPUP, (UINT_PTR)cur_menu, plat_get_string(IDS_2144)); + InsertMenu(GetSubMenu(menuMain, 1), 6, MF_BYPOSITION | MF_STRING | MF_POPUP, (UINT_PTR)cur_menu, plat_get_string(IDS_2144)); CheckMenuItem(menuMain, IDM_VID_GL_FPS_BLITTER, video_framerate == -1 ? MF_CHECKED : MF_UNCHECKED); CheckMenuItem(menuMain, IDM_VID_GL_FPS_25, video_framerate == 25 ? MF_CHECKED : MF_UNCHECKED); CheckMenuItem(menuMain, IDM_VID_GL_FPS_30, video_framerate == 30 ? MF_CHECKED : MF_UNCHECKED); @@ -229,7 +224,6 @@ show_render_options_menu() } menu_vidapi = vid_api; -#endif } static void @@ -282,13 +276,11 @@ ResetAllMenus(void) CheckMenuItem(menuMain, IDM_VID_SDL_SW, MF_UNCHECKED); CheckMenuItem(menuMain, IDM_VID_SDL_HW, MF_UNCHECKED); CheckMenuItem(menuMain, IDM_VID_SDL_OPENGL, MF_UNCHECKED); -#if defined(DEV_BRANCH) && defined(USE_OPENGL) CheckMenuItem(menuMain, IDM_VID_OPENGL_CORE, MF_UNCHECKED); - menu_vidapi = -1; - cur_menu = NULL; + menu_vidapi = -1; + cur_menu = NULL; show_render_options_menu(); -#endif #ifdef USE_VNC CheckMenuItem(menuMain, IDM_VID_VNC, MF_UNCHECKED); #endif @@ -362,12 +354,10 @@ ResetAllMenus(void) video_set_filter_menu(menuMain); -#ifdef USE_DISCORD if (discord_loaded) CheckMenuItem(menuMain, IDM_DISCORD, enable_discord ? MF_CHECKED : MF_UNCHECKED); else EnableMenuItem(menuMain, IDM_DISCORD, MF_DISABLED); -#endif #ifdef MTR_ENABLED EnableMenuItem(menuMain, IDM_ACTION_END_TRACE, MF_DISABLED); #endif @@ -704,9 +694,7 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) case IDM_VID_SDL_SW: case IDM_VID_SDL_HW: case IDM_VID_SDL_OPENGL: -#if defined(DEV_BRANCH) && defined(USE_OPENGL) case IDM_VID_OPENGL_CORE: -#endif #ifdef USE_VNC case IDM_VID_VNC: #endif @@ -718,7 +706,6 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) show_render_options_menu(); break; -#if defined(DEV_BRANCH) && defined(USE_OPENGL) case IDM_VID_GL_FPS_BLITTER: case IDM_VID_GL_FPS_25: case IDM_VID_GL_FPS_30: @@ -757,7 +744,6 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) EnableMenuItem(menuMain, IDM_VID_GL_NOSHADER, MF_DISABLED); plat_vid_reload_options(); break; -#endif case IDM_VID_FULLSCREEN: plat_setfullscreen(1); @@ -858,7 +844,6 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) config_save(); break; -#ifdef USE_DISCORD case IDM_DISCORD: if (! discord_loaded) break; enable_discord ^= 1; @@ -869,7 +854,6 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) } else discord_close(); break; -#endif #ifdef ENABLE_LOG_TOGGLES # ifdef ENABLE_BUSLOGIC_LOG @@ -1287,7 +1271,6 @@ ui_init(int nCmdShow) return(0); } -#ifdef USE_DISCORD if(! discord_load()) { enable_discord = 0; } else if (enable_discord) { @@ -1297,7 +1280,6 @@ ui_init(int nCmdShow) /* Update Discord status */ discord_update_activity(dopause); } -#endif /* Create our main window's class and register it. */ wincl.hInstance = hinstance; @@ -1534,11 +1516,9 @@ ui_init(int nCmdShow) plat_setfullscreen(0); } -#ifdef USE_DISCORD /* Run Discord API callbacks */ if (enable_discord) discord_run_callbacks(); -#endif } timeEndPeriod(1); @@ -1556,13 +1536,11 @@ ui_init(int nCmdShow) win_mouse_close(); -#ifdef USE_DISCORD /* Shut down the Discord integration */ discord_close(); -#endif - if (user32_handle != NULL) - dynld_close(user32_handle); + if (user32_handle != NULL) + dynld_close(user32_handle); return(messages.wParam); } @@ -1622,11 +1600,9 @@ plat_pause(int p) CheckMenuItem(menuMain, IDM_ACTION_PAUSE, (dopause) ? MF_CHECKED : MF_UNCHECKED); -#if USE_DISCORD /* Update Discord status */ - if(enable_discord) + if (enable_discord) discord_update_activity(dopause); -#endif /* Send the WM to a manager if needed. */ if (source_hwnd)