From 5b552d027f580b58f47771b3bc6f86862114a5df Mon Sep 17 00:00:00 2001 From: EngiNerd89 Date: Wed, 1 Dec 2021 21:28:51 +0100 Subject: [PATCH 01/41] Fixed bug in Olivetti M19 display mode. --- src/device/keyboard_xt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/device/keyboard_xt.c b/src/device/keyboard_xt.c index c6fd51e09..24a37d40e 100644 --- a/src/device/keyboard_xt.c +++ b/src/device/keyboard_xt.c @@ -685,7 +685,7 @@ kbd_init(const device_t *info) video_reset(gfxcard); - if ((kbd->type <= 3) || (kbd->type == 4) || (kbd->type == 6)) { + if ((kbd->type <= 3) || (kbd->type == 4) || (kbd->type == 6) || (kbd->type == 8)) { /* DIP switch readout: bit set = OFF, clear = ON. */ if (kbd->type == 8) /* Olivetti M19 From 68d20787ad2d8d0e1a72256b4c95c2f720816ebc Mon Sep 17 00:00:00 2001 From: EngiNerd89 Date: Wed, 1 Dec 2021 21:39:40 +0100 Subject: [PATCH 02/41] Fixed indentation. --- src/device/keyboard_xt.c | 192 +++++++++++++++++++-------------------- 1 file changed, 96 insertions(+), 96 deletions(-) diff --git a/src/device/keyboard_xt.c b/src/device/keyboard_xt.c index 24a37d40e..e98536bf4 100644 --- a/src/device/keyboard_xt.c +++ b/src/device/keyboard_xt.c @@ -694,107 +694,107 @@ kbd_init(const device_t *info) * 10 - color (low-res, disables 640x400x2 mode) * 00 - autoswitching */ - kbd->pd |= 0x00; - else - /* Switches 7, 8 - floppy drives. */ - kbd->pd = get_fdd_switch_settings(); + kbd->pd |= 0x00; + else + /* Switches 7, 8 - floppy drives. */ + kbd->pd = get_fdd_switch_settings(); - kbd->pd |= get_videomode_switch_settings(); + kbd->pd |= get_videomode_switch_settings(); - /* Switches 3, 4 - memory size. */ - if ((kbd->type == 3) || (kbd->type == 4) || (kbd->type == 6)) { - switch (mem_size) { - case 256: - kbd->pd |= 0x00; - break; - case 512: - kbd->pd |= 0x04; - break; - case 576: - kbd->pd |= 0x08; - break; - case 640: - default: - kbd->pd |= 0x0c; - break; - } - } else if (kbd->type >= 1) { - switch (mem_size) { - case 64: - kbd->pd |= 0x00; - break; - case 128: - kbd->pd |= 0x04; - break; - case 192: - kbd->pd |= 0x08; - break; - case 256: - default: - kbd->pd |= 0x0c; - break; - } - } else { - switch (mem_size) { - case 16: - kbd->pd |= 0x00; - break; - case 32: - kbd->pd |= 0x04; - break; - case 48: - kbd->pd |= 0x08; - break; - case 64: - default: - kbd->pd |= 0x0c; - break; - } - } + /* Switches 3, 4 - memory size. */ + if ((kbd->type == 3) || (kbd->type == 4) || (kbd->type == 6)) { + switch (mem_size) { + case 256: + kbd->pd |= 0x00; + break; + case 512: + kbd->pd |= 0x04; + break; + case 576: + kbd->pd |= 0x08; + break; + case 640: + default: + kbd->pd |= 0x0c; + break; + } + } else if (kbd->type >= 1) { + switch (mem_size) { + case 64: + kbd->pd |= 0x00; + break; + case 128: + kbd->pd |= 0x04; + break; + case 192: + kbd->pd |= 0x08; + break; + case 256: + default: + kbd->pd |= 0x0c; + break; + } + } else { + switch (mem_size) { + case 16: + kbd->pd |= 0x00; + break; + case 32: + kbd->pd |= 0x04; + break; + case 48: + kbd->pd |= 0x08; + break; + case 64: + default: + kbd->pd |= 0x0c; + break; + } + } - /* Switch 2 - 8087 FPU. */ - if (hasfpu) - kbd->pd |= 0x02; + /* Switch 2 - 8087 FPU. */ + if (hasfpu) + kbd->pd |= 0x02; - /* Switch 1 - always off. */ - kbd->pd |= 0x01; + /* Switch 1 - always off. */ + kbd->pd |= 0x01; } else if (kbd-> type == 9) { - /* Zenith Data Systems Z-151 - * SW2 switch settings: - * bit 7: monitor frequency - * bits 5-6: autoboot (00-11 resident monitor, 10 hdd, 01 fdd) - * bits 0-4: installed memory - */ - kbd->pd = 0x20; - switch (mem_size) { - case 128: - kbd->pd |= 0x02; - break; - case 192: - kbd->pd |= 0x04; - break; - case 256: - kbd->pd |= 0x06; - break; - case 320: - kbd->pd |= 0x08; - break; - case 384: - kbd->pd |= 0x0a; - break; - case 448: - kbd->pd |= 0x0c; - break; - case 512: - kbd->pd |= 0x0e; - break; - case 576: - kbd->pd |= 0x10; - break; - case 640: - default: - kbd->pd |= 0x12; - break; + /* Zenith Data Systems Z-151 + * SW2 switch settings: + * bit 7: monitor frequency + * bits 5-6: autoboot (00-11 resident monitor, 10 hdd, 01 fdd) + * bits 0-4: installed memory + */ + kbd->pd = 0x20; + switch (mem_size) { + case 128: + kbd->pd |= 0x02; + break; + case 192: + kbd->pd |= 0x04; + break; + case 256: + kbd->pd |= 0x06; + break; + case 320: + kbd->pd |= 0x08; + break; + case 384: + kbd->pd |= 0x0a; + break; + case 448: + kbd->pd |= 0x0c; + break; + case 512: + kbd->pd |= 0x0e; + break; + case 576: + kbd->pd |= 0x10; + break; + case 640: + default: + kbd->pd |= 0x12; + break; } } From 33ee38410254bfa8045bdb971ffa89a6e86b81e4 Mon Sep 17 00:00:00 2001 From: KeishiX Date: Thu, 2 Dec 2021 09:40:16 +0300 Subject: [PATCH 03/41] Update ru-RU.rc Updated Russian translation to more natural look. And fixed some long strings in dialogs that don't fit. --- src/win/languages/ru-RU.rc | 276 ++++++++++++++++++------------------- 1 file changed, 138 insertions(+), 138 deletions(-) diff --git a/src/win/languages/ru-RU.rc b/src/win/languages/ru-RU.rc index 61f8cd369..40c7eaf9c 100644 --- a/src/win/languages/ru-RU.rc +++ b/src/win/languages/ru-RU.rc @@ -20,7 +20,7 @@ BEGIN MENUITEM "&Клавиатура требует захвата", IDM_ACTION_KBD_REQ_CAPTURE MENUITEM "&Правый CTRL - это левый ALT", IDM_ACTION_RCTRL_IS_LALT MENUITEM SEPARATOR - MENUITEM "&Жёсткая перезагрузка...", IDM_ACTION_HRESET + 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 @@ -34,14 +34,14 @@ BEGIN MENUITEM "&Скрыть строку статуса", IDM_VID_HIDE_STATUS_BAR MENUITEM SEPARATOR MENUITEM "&Изменяемый размер окна", IDM_VID_RESIZE - MENUITEM "&Запомнить размер и позицию", IDM_VID_REMEMBER + 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 + MENUITEM "Open&GL (3.3)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif @@ -64,25 +64,25 @@ BEGIN MENUITEM "Масштабирование Hi&DPI", IDM_VID_HIDPI MENUITEM SEPARATOR MENUITEM "&Полноэкранный режим\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN - POPUP "&Режим растягивания в полноэкранном режиме" + POPUP "&Растягивание в полноэкранном режиме" BEGIN - MENUITEM "&Растянуть на весь экран", IDM_VID_FS_FULL + MENUITEM "&На весь экран", IDM_VID_FS_FULL MENUITEM "&4:3", IDM_VID_FS_43 MENUITEM "&Квадратные пиксели (сохранить соотношение)", IDM_VID_FS_KEEPRATIO - MENUITEM "&Целочисленная шкала", IDM_VID_FS_INT + MENUITEM "&Целочисленное масштабирование", IDM_VID_FS_INT END POPUP "Настройки E&GA/(S)VGA" BEGIN - MENUITEM "&Инверсный монитор VGA", IDM_VID_INVERT + 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 + MENUITEM "&Янтарный оттенок", IDM_VID_GRAY_AMBER + MENUITEM "&Зелёный оттенок", IDM_VID_GRAY_GREEN + MENUITEM "&Белый оттенок", IDM_VID_GRAY_WHITE END - POPUP "Тип монохромной &конверсии" + POPUP "Тип монохромного &конвертирования" BEGIN MENUITEM "BT&601 (NTSC/PAL)", IDM_VID_GRAYCT_601 MENUITEM "BT&709 (HDTV)", IDM_VID_GRAYCT_709 @@ -90,14 +90,14 @@ BEGIN END END MENUITEM SEPARATOR - MENUITEM "Оверскан CGA/PCjr/Tandy/E&GA/(S)VGA", IDM_VID_OVERSCAN + 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 "&Настройки машины...", IDM_CONFIG + MENUITEM "&Обновление значков строки статуса", IDM_UPDATE_ICONS MENUITEM SEPARATOR MENUITEM "Сделать с&криншот\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR @@ -130,7 +130,7 @@ BEGIN MENUITEM "Включить журналы IDE\tCtrl+F8", IDM_LOG_IDE # endif # ifdef ENABLE_SERIAL_LOG - MENUITEM "Включить журналы последовательного порта\tCtrl+F3", IDM_LOG_SERIAL + MENUITEM "Включить журналы COM порта\tCtrl+F3", IDM_LOG_SERIAL # endif # ifdef ENABLE_NIC_LOG MENUITEM "Включить журналы сети\tCtrl+F9", IDM_LOG_NIC @@ -143,7 +143,7 @@ BEGIN MENUITEM "&Точка останова журнала\tCtrl+F10", IDM_LOG_BREAKPOINT # endif # ifdef ENABLE_VRAM_DUMP - MENUITEM "&Выгрузка видео ОЗУ\tCtrl+F1", IDM_DUMP_VRAM + MENUITEM "&Выгрузка дампа видео-ОЗУ\tCtrl+F1", IDM_DUMP_VRAM # endif # endif END @@ -166,15 +166,15 @@ BEGIN BEGIN MENUITEM "&Новый образ...", IDM_CASSETTE_IMAGE_NEW MENUITEM SEPARATOR - MENUITEM "&Существующий образ...", IDM_CASSETTE_IMAGE_EXISTING - MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_CASSETTE_IMAGE_EXISTING_WP + 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 "&Воспроизведение", IDM_CASSETTE_PLAY + MENUITEM "&Перемотка на начало", IDM_CASSETTE_REWIND + MENUITEM "&Перемотка в конец", IDM_CASSETTE_FAST_FORWARD MENUITEM SEPARATOR - MENUITEM "В&ыброс", IDM_CASSETTE_EJECT + MENUITEM "И&звлечь", IDM_CASSETTE_EJECT END END @@ -184,7 +184,7 @@ BEGIN BEGIN MENUITEM "&Образ...", IDM_CARTRIDGE_IMAGE MENUITEM SEPARATOR - MENUITEM "В&ыброс", IDM_CARTRIDGE_EJECT + MENUITEM "И&звлечь", IDM_CARTRIDGE_EJECT END END @@ -194,12 +194,12 @@ BEGIN BEGIN MENUITEM "&Новый образ...", IDM_FLOPPY_IMAGE_NEW MENUITEM SEPARATOR - MENUITEM "&Существующий образ...", IDM_FLOPPY_IMAGE_EXISTING - MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_FLOPPY_IMAGE_EXISTING_WP + 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 + MENUITEM "И&звлечь", IDM_FLOPPY_EJECT END END @@ -210,9 +210,9 @@ BEGIN MENUITEM "&Mute", IDM_CDROM_MUTE MENUITEM SEPARATOR MENUITEM "П&устой", IDM_CDROM_EMPTY - MENUITEM "&Перезагрузка предыдущего образа", IDM_CDROM_RELOAD + MENUITEM "&Снова загрузить предыдущий образ", IDM_CDROM_RELOAD MENUITEM SEPARATOR - MENUITEM "&Образ", IDM_CDROM_IMAGE + MENUITEM "&Образ...", IDM_CDROM_IMAGE END END @@ -222,11 +222,11 @@ BEGIN BEGIN MENUITEM "&Новый образ...", IDM_ZIP_IMAGE_NEW MENUITEM SEPARATOR - MENUITEM "&Существующий образ...", IDM_ZIP_IMAGE_EXISTING - MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_ZIP_IMAGE_EXISTING_WP + MENUITEM "&Выбрать образ...", IDM_ZIP_IMAGE_EXISTING + MENUITEM "Выбрать образ (&Защита от записи)...", IDM_ZIP_IMAGE_EXISTING_WP MENUITEM SEPARATOR - MENUITEM "В&ыброс", IDM_ZIP_EJECT - MENUITEM "&Перезагрузка предыдущего образа", IDM_ZIP_RELOAD + MENUITEM "И&звлечь", IDM_ZIP_EJECT + MENUITEM "&Снова загрузить предыдущий образ", IDM_ZIP_RELOAD END END @@ -236,11 +236,11 @@ BEGIN BEGIN MENUITEM "&Новый образ...", IDM_MO_IMAGE_NEW MENUITEM SEPARATOR - MENUITEM "&Существующий образ...", IDM_MO_IMAGE_EXISTING - MENUITEM "Существующий образ (&Защищенный от записи)...", IDM_MO_IMAGE_EXISTING_WP + MENUITEM "&Выбрать образ...", IDM_MO_IMAGE_EXISTING + MENUITEM "Выбрать образ (&Защита от записи)...", IDM_MO_IMAGE_EXISTING_WP MENUITEM SEPARATOR - MENUITEM "В&ыброс", IDM_MO_EJECT - MENUITEM "&Перезагрузка предыдущего образа", IDM_MO_RELOAD + MENUITEM "И&звлечь", IDM_MO_EJECT + MENUITEM "&Снова загрузить предыдущий образ", IDM_MO_RELOAD END END @@ -256,7 +256,7 @@ BEGIN MENUITEM "&75 кадров в секунду", IDM_VID_GL_FPS_75 END MENUITEM "&VSync", IDM_VID_GL_VSYNC - MENUITEM "&Выбор шейдера...", IDM_VID_GL_SHADER + MENUITEM "&Выбрать шейдер...", IDM_VID_GL_SHADER MENUITEM "&Удалить шейдер", IDM_VID_GL_NOSHADER END @@ -274,7 +274,7 @@ END #define STR_OK "OK" #define STR_CANCEL "Отмена" -#define STR_GLOBAL "Сохраните эти настройки в качестве &глобальных значений по умолчанию" +#define STR_GLOBAL "Сохранить эти параметры как &глобальные по умолчанию" #define STR_DEFAULT "&По умолчанию" #define STR_LANGUAGE "Язык:" #define STR_ICONSET "Набор иконок:" @@ -284,29 +284,29 @@ END #define STR_FILE_NAME "Имя файла:" #define STR_DISK_SIZE "Размер диска:" #define STR_RPM_MODE "RPM режим:" -#define STR_PROGRESS "Течение:" +#define STR_PROGRESS "Прогресс:" #define STR_WIDTH "Ширина:" #define STR_HEIGHT "Высота:" -#define STR_LOCK_TO_SIZE "Зафиксировать на этом размере" +#define STR_LOCK_TO_SIZE "Зафиксировать размер" -#define STR_MACHINE_TYPE "Тип материнской платы:" -#define STR_MACHINE "Материнская плата:" +#define STR_MACHINE_TYPE "Тип машины:" +#define STR_MACHINE "Системная плата:" #define STR_CONFIGURE "Настройка" -#define STR_CPU_TYPE "Тип CPU:" -#define STR_SPEED "Скорость:" +#define STR_CPU_TYPE "Тип ЦПУ:" +#define STR_SPEED "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_DISABLED "Отключить" +#define STR_ENABLED_LOCAL "Включить (местное)" #define STR_ENABLED_UTC "Включить (UTC)" #define STR_DYNAREC "Динамический рекомпилятор" -#define STR_VIDEO "Видео:" -#define STR_VOODOO "Графика Voodoo" +#define STR_VIDEO "Видеокарта:" +#define STR_VOODOO "Ускоритель Voodoo" #define STR_MOUSE "Мышь:" #define STR_JOYSTICK "Джойстик:" @@ -316,28 +316,28 @@ END #define STR_JOY4 "Джойстик 4..." #define STR_SOUND "Звуковая карта:" -#define STR_MIDI "MIDI Out-устройство:" -#define STR_MIDI_IN "MIDI In-устройство:" +#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_FLOAT "FLOAT32 звук" #define STR_NET_TYPE "Тип сети:" #define STR_PCAP "Устройство PCap:" -#define STR_NET "Сетевой адаптер:" +#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_SERIAL1 "Последов. порт COM1" +#define STR_SERIAL2 "Последов. порт COM2" +#define STR_SERIAL3 "Последов. порт COM3" +#define STR_SERIAL4 "Последов. порт COM4" +#define STR_PARALLEL1 "Параллельный порт LPT1" +#define STR_PARALLEL2 "Параллельный порт LPT2" +#define STR_PARALLEL3 "Параллельный порт LPT3" #define STR_HDC "Контроллер HD:" #define STR_FDC "Контроллер FD:" @@ -351,8 +351,8 @@ END #define STR_CASSETTE "Кассета" #define STR_HDD "Жёсткие диски:" -#define STR_NEW "&Новый..." -#define STR_EXISTING "&Существующий..." +#define STR_NEW "&Создать..." +#define STR_EXISTING "&Выбрать..." #define STR_REMOVE "&Убрать" #define STR_BUS "Шина:" #define STR_CHANNEL "Канал:" @@ -362,18 +362,18 @@ END #define STR_SECTORS "Сектора:" #define STR_HEADS "Головки:" #define STR_CYLS "Цилиндры:" -#define STR_SIZE_MB "Размер (MB):" +#define STR_SIZE_MB "Размер (МБ):" #define STR_TYPE "Тип:" -#define STR_IMG_FORMAT "Формат образа:" +#define STR_IMG_FORMAT "Тип образа:" #define STR_BLOCK_SIZE "Размер блока:" -#define STR_FLOPPY_DRIVES "Дисководы флоппи:" +#define STR_FLOPPY_DRIVES "Гибкие диски:" #define STR_TURBO "Турбо тайминги" #define STR_CHECKBPB "Проверять BPB" -#define STR_CDROM_DRIVES "Оптические дисководы:" +#define STR_CDROM_DRIVES "Дисководы CD-ROM:" #define STR_MO_DRIVES "Магнитооптические дисководы:" -#define STR_ZIP_DRIVES "Дисководы ZIP:" +#define STR_ZIP_DRIVES "ZIP дисководы:" #define STR_250 "ZIP 250" #define STR_ISARTC "ISA RTC:" @@ -401,35 +401,35 @@ BEGIN IDS_2049 "Ошибка" IDS_2050 "Неустранимая ошибка" IDS_2051 "<зарезервировано>" - IDS_2052 "Нажмите CTRL+ALT+PAGE DOWN для возврата в оконный режим." + 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_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. Идёт переключение на доступную материнскую плату." + IDS_2062 "Все образы (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0Простые посекторные образы (*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Surface образы (*.86F)\0*.86F\0" + IDS_2063 "Системная плата ""%hs"" недоступна из-за отсутствия файла её ПЗУ в каталоге roms/machines. Переключение на доступную системную плату." END STRINGTABLE DISCARDABLE BEGIN - IDS_2064 "Видеокарта ""%hs"" недоступна из-за отсутствия ПЗУ в каталоге roms/video. Идёт переключение на доступную видеокарту." - IDS_2065 "Материнская плата" + IDS_2064 "Видеокарта ""%hs"" недоступна из-за отсутствия файла её ПЗУ в каталоге roms/video. Переключение на доступную видеокарту." + IDS_2065 "Компьютер" IDS_2066 "Дисплей" IDS_2067 "Устройства ввода" IDS_2068 "Звук" IDS_2069 "Сеть" IDS_2070 "Порты (COM и LPT)" - IDS_2071 "Контроллеры хранения" + IDS_2071 "Контроллеры дисков" IDS_2072 "Жёсткие диски" - IDS_2073 "Дисководы флоппи и CD-ROM" - IDS_2074 "Другие съемные устройства" - IDS_2075 "Другие периферийные устройства" - IDS_2076 "Изображения поверхности (*.86F)\0*.86F\0" + IDS_2073 "Гибкие диски и CD-ROM" + IDS_2074 "Другие съёмные устр-ва" + IDS_2075 "Другая периферия" + IDS_2076 "Образы Surface (*.86F)\0*.86F\0" IDS_2077 "Щёлкните мышью для захвата курсора" IDS_2078 "Нажмите F8+F12 чтобы освободить курсор" IDS_2079 "Нажмите F8+F12 или среднюю кнопку мыши чтобы освободить курсор" @@ -440,15 +440,15 @@ BEGIN IDS_2080 "Невозможно инициализировать FluidSynth" IDS_2081 "Шина" IDS_2082 "Файл" - IDS_2083 "Ц" - IDS_2084 "Г" - IDS_2085 "С" + IDS_2083 "C" + IDS_2084 "H" + IDS_2085 "S" IDS_2086 "МБ" IDS_2087 "Проверять BPB" IDS_2088 "КБ" IDS_2089 "Не удалось инициализировать рендерер видео." IDS_2090 "По умолчанию" - IDS_2091 "%i циклов ожидания" + IDS_2091 "%i WS" IDS_2092 "Тип" IDS_2093 "Не удалось настроить PCap" IDS_2094 "Устройства PCap не найдены" @@ -462,24 +462,24 @@ BEGIN IDS_2102 "Система управления полетом Thrustmaster" IDS_2103 "Нет" IDS_2104 "Невозможно загрузить ускорители клавиатуры." - IDS_2105 "Невозможно зарегистрировать необработанный вход." + 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_2107 "%u МБ (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Образы Flux (*.FDI)\0*.FDI\0Образы Surface (*.86F;*.MFM)\0*.86F;*.MFM\0Все файлы (*.*)\0*.*\0" IDS_2110 "Невозможно инициализировать FreeType" IDS_2111 "Невозможно инициализировать SDL, требуется SDL2.dll" - IDS_2112 "Вы уверены, что хотите выполнить жесткую перезагрузку эмулируемой машины?" + 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_2118 "Встроенный контроллер" IDS_2119 "Выход" - IDS_2120 "ПЗУ не найдено" + IDS_2120 "ПЗУ не найдены" IDS_2121 "Хотите ли вы сохранить настройки?" - IDS_2122 "Это приведет к жесткой перезагрузке эмулируемой машины." + IDS_2122 "Это приведет к холодной перезагрузке эмулируемой машины." IDS_2123 "Сохранить" IDS_2124 "О программе 86Box" IDS_2125 "86Box v" EMU_VERSION @@ -492,14 +492,14 @@ BEGIN #else #define LIB_NAME_PCAP "libpcap" #endif - IDS_2129 "Убедитесь, что " LIB_NAME_PCAP " установлен и что вы находитесь на сетевом соединении, совместимом с " LIB_NAME_PCAP "." + 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." + IDS_2131 "Для эмуляции принтера ESC/P требуется " LIB_NAME_FREETYPE "." #ifdef _WIN32 #define LIB_NAME_GS "gsdll32.dll" #else @@ -511,12 +511,12 @@ BEGIN #else #define LIB_NAME_FLUIDSYNTH "libfluidsynth" #endif - IDS_2133 LIB_NAME_FLUIDSYNTH " требуется для вывода MIDI FluidSynth." - IDS_2134 "Идёт вход в полноэкранный режим" - IDS_2135 "Не показывайте это сообщение снова" + IDS_2133 "Для FluidSynth MIDI-вывода требуется " LIB_NAME_FLUIDSYNTH "." + IDS_2134 "Вход в полноэкранный режим" + IDS_2135 "Больше не показывать это сообщение" IDS_2136 "Не выходить" IDS_2137 "Перезагрузить" - IDS_2138 "Не перезагрузить" + 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" @@ -524,12 +524,12 @@ BEGIN IDS_2143 "Шейдеры OpenGL (*.GLSL)\0*.GLSL\0Все файлы (*.*)\0*.*\0" IDS_2144 "Параметры OpenGL" IDS_2145 "Вы загружаете неподдерживаемую конфигурацию" - IDS_2146 "Фильтрация типов CPU на основе выбранной материнской платы отключена для этой эмулируемой машины.\n\nЭто позволяет выбрать процессор, который в противном случае несовместим с выбранной материнской платой. Однако, вы можете столкнуться с несовместимостью с BIOS материнской платы или другим программным обеспечением.\n\nВключение этого параметра официально не поддерживается, и все поданные отчеты об ошибках могут быть закрыты как недействительные." + 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_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" + IDS_2151 "Образы картриджей (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Все файлы (*.*)\0*.*\0" END STRINGTABLE DISCARDABLE @@ -537,37 +537,37 @@ BEGIN IDS_4096 "Жесткий диск (%s)" IDS_4097 "%01i:%01i" IDS_4098 "%01i" - IDS_4099 "Оптические дисководы MFM/RLL или ESDI никогда не существовали" - IDS_4100 "Параметры..." - IDS_4101 "Параметры (большой)..." - IDS_4102 "Добавить новый жёсткий диск" + IDS_4099 "MFM/RLL или ESDI дисководов CD-ROM никогда не существовало" + IDS_4100 "Custom..." + IDS_4101 "Custom (large)..." + IDS_4102 "Создать новый жёсткий диск" IDS_4103 "Добавить существующий жёсткий диск" - IDS_4104 "Размер образов дисков HDI не должен превышать 4 ГБ." - IDS_4105 "Размер образов дисков не должен превышать 127 ГБ." - IDS_4106 "Образы жесткого диска (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Все файлы (*.*)\0*.*\0" + 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_4109 "Образы HDI или HDX с размером сектора, отличным от 512, не поддерживаются." IDS_4110 "USB пока не поддерживается" IDS_4111 "Файл образа диска уже существует" IDS_4112 "Пожалуйста, укажите правильное имя файла." - IDS_4113 "Создан образ диска" + IDS_4113 "Образ диска создан" IDS_4114 "Убедитесь, что файл существует и доступен для чтения." - IDS_4115 "Убедитесь, что файл сохраняется в директории, доступной для записи." + IDS_4115 "Убедитесь, что файл сохраняется в директории доступной для записи." IDS_4116 "Слишком большой образ диска" - IDS_4117 "Не забудьте разбить и отформатировать вновь созданный диск." + IDS_4117 "Не забудьте разметить и отформатировать вновь созданный диск." IDS_4118 "Выбранный файл будет перезаписан. Вы уверены, что хотите использовать его?" IDS_4119 "Неподдерживаемый образ диска" IDS_4120 "Перезаписать" - IDS_4121 "Не перезаписать" - IDS_4122 "Необработанный образ (.img)" + IDS_4121 "Не перезаписывать" + IDS_4122 "RAW образ (.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_4128 "Большие блоки (2 МБ)" + IDS_4129 "Маленькие блоки (512 КБ)" IDS_4130 "Файлы VHD (*.VHD)\0*.VHD\0Все файлы (*.*)\0*.*\0" IDS_4131 "Выберите родительский VHD" IDS_4132 "Это может означать, что родительский образ был изменён после того, как был создан дифференцированнный образ.\n\nЭто также может произойти, если файлы образа были перемещены или скопированы, или из-за ошибки в программе, создавшей этот диск.\n\nВы хотите исправить временные метки?" @@ -591,47 +591,47 @@ BEGIN IDS_5120 "CD-ROM %i (%s): %s" - IDS_5376 "Выключен" + IDS_5376 "Отключён" IDS_5381 "ATAPI" IDS_5382 "SCSI" - IDS_5632 "Выключен" + 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_5888 "160 кБ" + IDS_5889 "180 кБ" + IDS_5890 "320 кБ" + IDS_5891 "360 кБ" + IDS_5892 "640 кБ" + IDS_5893 "720 кБ" + IDS_5894 "1.2 МБ" + IDS_5895 "1.25 МБ" + IDS_5896 "1.44 МБ" IDS_5897 "DMF (кластер 1024)" IDS_5898 "DMF (кластер 2048)" - IDS_5899 "2.88 MB" + IDS_5899 "2.88 МБ" 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_5902 "3.5"" 128Мб M.O. (ISO 10090)" + IDS_5903 "3.5"" 230Мб M.O. (ISO 13963)" + IDS_5904 "3.5"" 540Мб M.O. (ISO 15498)" + IDS_5905 "3.5"" 640Мб M.O. (ISO 15498)" + IDS_5906 "3.5"" 1.3Гб M.O. (GigaMO)" + IDS_5907 "3.5"" 2.3Гб M.O. (GigaMO 2)" + IDS_5908 "5.25"" 600Мб M.O." + IDS_5909 "5.25"" 650Мб M.O." + IDS_5910 "5.25"" 1Гб M.O." + IDS_5911 "5.25"" 1.3Гб M.O." IDS_6144 "Точный RPM" IDS_6145 "На 1% медленнее точного RPM" IDS_6146 "На 1.5% медленнее точного RPM" IDS_6147 "На 2% медленнее точного RPM" - IDS_7168 "(По умолчанию системы)" + IDS_7168 "(Системный)" END #define IDS_LANG_ENUS IDS_7168 -// English (U.S.) resources +// Russian resources ///////////////////////////////////////////////////////////////////////////// From 2db06c6ca2a3d9aae60b71c8b0c59eed52826dc2 Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 2 Dec 2021 11:50:08 +0100 Subject: [PATCH 04/41] Korean translation and Japanese translation improvements, both by basic2004, closes #1894. --- src/win/86Box.rc | 1 + src/win/languages/ja-JP.rc | 120 +++---- src/win/languages/ko-KR.rc | 637 +++++++++++++++++++++++++++++++++++++ 3 files changed, 698 insertions(+), 60 deletions(-) create mode 100644 src/win/languages/ko-KR.rc diff --git a/src/win/86Box.rc b/src/win/86Box.rc index 3883df350..1b48edb03 100644 --- a/src/win/86Box.rc +++ b/src/win/86Box.rc @@ -371,6 +371,7 @@ END #include "languages/hu-HU.rc" #include "languages/it-IT.rc" #include "languages/ja-JP.rc" +#include "languages/ko-KR.rc" #include "languages/pt-BR.rc" #include "languages/pt-PT.rc" #include "languages/ru-RU.rc" diff --git a/src/win/languages/ja-JP.rc b/src/win/languages/ja-JP.rc index 83e53a05a..9807d2e94 100644 --- a/src/win/languages/ja-JP.rc +++ b/src/win/languages/ja-JP.rc @@ -1,5 +1,5 @@ //////////////////////////////////////////////////////////////////////////// -// English (U.S.) resources +// Japanese resources #ifdef _WIN32 LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT @@ -18,7 +18,7 @@ BEGIN POPUP "動作(&A)" BEGIN MENUITEM "キーボードはキャプチャが必要(&K)", IDM_ACTION_KBD_REQ_CAPTURE - MENUITEM "右CTRLが左ALT(&R)", IDM_ACTION_RCTRL_IS_LALT + MENUITEM "右CTRLを左ALTへ(&R)", IDM_ACTION_RCTRL_IS_LALT MENUITEM SEPARATOR MENUITEM "再起動(&H)...", IDM_ACTION_HRESET MENUITEM "Ctrl+Alt+Del(&C)\tCtrl+F12", IDM_ACTION_RESET_CAD @@ -47,7 +47,7 @@ BEGIN #endif END MENUITEM SEPARATOR - MENUITEM "寸法指定...", IDM_VID_SPECIFY_DIM + MENUITEM "ウィンドウのサイズを指定する...", IDM_VID_SPECIFY_DIM MENUITEM "4:3に合わせる(&O)", IDM_VID_FORCE43 POPUP "ウィンドウの倍率(&W)" BEGIN @@ -58,10 +58,10 @@ BEGIN END POPUP "フィルター方式" BEGIN - MENUITEM "最も近い(&N)", IDM_VID_FILTER_NEAREST - MENUITEM "リニア(&L)", IDM_VID_FILTER_LINEAR + MENUITEM "ニアレストネイバー(&N)", IDM_VID_FILTER_NEAREST + MENUITEM "リニア補間(&L)", IDM_VID_FILTER_LINEAR END - MENUITEM "HiDPIスケーリング(&D)", IDM_VID_HIDPI + MENUITEM "高DPIスケール(&D)", IDM_VID_HIDPI MENUITEM SEPARATOR MENUITEM "フルスクリーン(&F)\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN POPUP "フルスクリーンの比率(&S)" @@ -73,8 +73,8 @@ BEGIN END POPUP "E&GA/(S)VGAの設定" BEGIN - MENUITEM "倒立型VGAモニター(&)", IDM_VID_INVERT - POPUP "VGAスクリーンタイプ(&T)" + MENUITEM "色反転VGAモニター(&)", IDM_VID_INVERT + POPUP "VGA画面タイプ(&T)" BEGIN MENUITEM "RGBカラー(&C)", IDM_VID_GRAY_RGB MENUITEM "RGBグレースケール(&R)", IDM_VID_GRAY_MONO @@ -85,7 +85,7 @@ BEGIN POPUP "グレースケール表示方式(&C)" BEGIN MENUITEM "BT601 (NTSC/PAL)(&6)", IDM_VID_GRAYCT_601 - MENUITEM "BT709 (HDTV)(7)", IDM_VID_GRAYCT_709 + MENUITEM "BT709 (HDTV)(&7)", IDM_VID_GRAYCT_709 MENUITEM "平均値(&A)", IDM_VID_GRAYCT_AVE END END @@ -99,20 +99,20 @@ BEGIN MENUITEM "設定(&S)...", IDM_CONFIG MENUITEM "ステータスバーアイコンの更新(&U)", IDM_UPDATE_ICONS MENUITEM SEPARATOR - MENUITEM "クリーンショットを撮る(&C)\tCtrl+F11", IDM_ACTION_SCREENSHOT + 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 + MENUITEM "音量ゲイン(&G)...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR MENUITEM "トレース開始\tCtrl+T", IDM_ACTION_BEGIN_TRACE - MENUITEM "エンドトレース\tCtrl+T", IDM_ACTION_END_TRACE + MENUITEM "トレース終了\tCtrl+T", IDM_ACTION_END_TRACE #endif END #if defined(ENABLE_LOG_TOGGLES) || defined(ENABLE_LOG_COMMANDS) - POPUP "ロギング(&L)" + POPUP "ログ(&L)" BEGIN # ifdef ENABLE_BUSLOGIC_LOG MENUITEM "BusLogicのログを有効にする\tCtrl+F4", IDM_LOG_BUSLOGIC @@ -124,7 +124,7 @@ BEGIN MENUITEM "フロッピー(86F)のログを有効にする\tCtrl+F6", IDM_LOG_D86F # endif # ifdef ENABLE_FDC_LOG - MENUITEM "フロッピーコントローラーのログを有効にする\tCtrl+F7", IDM_LOG_FDC + MENUITEM "フロッピーコントローラーのログを有効にする\tCtrl+F7", IDM_LOG_FDC # endif # ifdef ENABLE_IDE_LOG MENUITEM "IDEのログを有効にする\tCtrl+F8", IDM_LOG_IDE @@ -140,10 +140,10 @@ BEGIN MENUITEM SEPARATOR # endif # ifdef ENABLE_LOG_BREAKPOINT - MENUITEM "ログブレイクポイント(&L)\tCtrl+F10", IDM_LOG_BREAKPOINT + MENUITEM "ブレークポイントのログを有効にする(&L)\tCtrl+F10", IDM_LOG_BREAKPOINT # endif # ifdef ENABLE_VRAM_DUMP - MENUITEM "ビデオRAMのダンプ(&V)\tCtrl+F1", IDM_DUMP_VRAM + MENUITEM "ビデオRAMのダンプを有効にする(&V)\tCtrl+F1", IDM_DUMP_VRAM # endif # endif END @@ -174,7 +174,7 @@ BEGIN MENUITEM "冒頭に巻き戻す(&R)", IDM_CASSETTE_REWIND MENUITEM "最後まで早送りする(&F)", IDM_CASSETTE_FAST_FORWARD MENUITEM SEPARATOR - MENUITEM "イジェクト(&J)", IDM_CASSETTE_EJECT + MENUITEM "取り出す(&J)", IDM_CASSETTE_EJECT END END @@ -184,7 +184,7 @@ BEGIN BEGIN MENUITEM "イメージ(&I)...", IDM_CARTRIDGE_IMAGE MENUITEM SEPARATOR - MENUITEM "イジェクト(&J)", IDM_CARTRIDGE_EJECT + MENUITEM "取り出す(&J)", IDM_CARTRIDGE_EJECT END END @@ -199,7 +199,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "86Fへのエクスポート(&X)...", IDM_FLOPPY_EXPORT_TO_86F MENUITEM SEPARATOR - MENUITEM "イジェクト(&J)", IDM_FLOPPY_EJECT + MENUITEM "取り出す(&J)", IDM_FLOPPY_EJECT END END @@ -225,7 +225,7 @@ BEGIN MENUITEM "既存のイメージ(&E)...", IDM_ZIP_IMAGE_EXISTING MENUITEM "既存のイメージ(ライトプロテクト付き) (&W)...", IDM_ZIP_IMAGE_EXISTING_WP MENUITEM SEPARATOR - MENUITEM "イジェクト(&J)", IDM_ZIP_EJECT + MENUITEM "取り出す(&J)", IDM_ZIP_EJECT MENUITEM "前のイメージを再読み込み (&R)", IDM_ZIP_RELOAD END END @@ -239,7 +239,7 @@ BEGIN MENUITEM "既存のイメージ(&E)...", IDM_MO_IMAGE_EXISTING MENUITEM "既存のイメージ(ライトプロテクト付き) (&W)...", IDM_MO_IMAGE_EXISTING_WP MENUITEM SEPARATOR - MENUITEM "イジェクト(&J)", IDM_MO_EJECT + MENUITEM "取り出す(&J)", IDM_MO_EJECT MENUITEM "前のイメージを再読み込み (&R)", IDM_MO_RELOAD END END @@ -267,19 +267,19 @@ END // #define STR_PREFERENCES "環境設定" -#define STR_SND_GAIN "サウンドゲイン" +#define STR_SND_GAIN "音量ゲイン" #define STR_NEW_FLOPPY "新規のイメージ" #define STR_CONFIG "設定" -#define STR_SPECIFY_DIM "メインウィンドウの寸法指定" +#define STR_SPECIFY_DIM "メインウィンドウのサイズ指定" #define STR_OK "OK" #define STR_CANCEL "キャンセル" #define STR_GLOBAL "これらの設定をグローバル既定値として保存する(&G)" #define STR_DEFAULT "既定値(&D)" #define STR_LANGUAGE "言語:" -#define STR_ICONSET "アイコンセット:" +#define STR_ICONSET "アイコンセット:" -#define STR_GAIN "ゲイン" +#define STR_GAIN "ゲイン値" #define STR_FILE_NAME "ファイル名:" #define STR_DISK_SIZE "ディスクの容量:" @@ -288,7 +288,7 @@ END #define STR_WIDTH "幅:" #define STR_HEIGHT "高さ:" -#define STR_LOCK_TO_SIZE "この寸法のロック" +#define STR_LOCK_TO_SIZE "このサイズをロックする" #define STR_MACHINE_TYPE "マシンタイプ:" #define STR_MACHINE "マシン:" @@ -341,8 +341,8 @@ END #define STR_HDC "HDコントローラー:" #define STR_FDC "FDコントローラー:" -#define STR_IDE_TER "第三世代のIDEコントローラー" -#define STR_IDE_QUA "第四世代のIDEコントローラー" +#define STR_IDE_TER "第三のIDEコントローラー" +#define STR_IDE_QUA "第四のIDEコントローラー" #define STR_SCSI "SCSI" #define STR_SCSI_1 "コントローラー1:" #define STR_SCSI_2 "コントローラー2:" @@ -376,7 +376,7 @@ END #define STR_ZIP_DRIVES "ZIPドライブ:" #define STR_250 "ZIP 250" -#define STR_ISARTC "ISAクロック/RTCカード:" +#define STR_ISARTC "ISA RTCカード:" #define STR_ISAMEM "ISAメモリー拡張ボード" #define STR_ISAMEM_1 "カード1:" #define STR_ISAMEM_2 "カード2:" @@ -411,7 +411,7 @@ BEGIN 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_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 "roms/machinesディレクトリにROMがないため、マシン《%hs》は使用できません。使用可能なマシンに切り替えます。" END @@ -423,13 +423,13 @@ BEGIN IDS_2067 "入力デバイス" IDS_2068 "サウンド" IDS_2069 "ネットワーク" - IDS_2070 "ポート (COMトLPT)" + IDS_2070 "ポート (COM & LPT)" IDS_2071 "ストレージコントローラ" IDS_2072 "ハードディスク" - IDS_2073 "フロッピートCD-ROMドライブ" + IDS_2073 "フロッピー・CD-ROMドライブ" IDS_2074 "その他のリムーバブルデバイス" IDS_2075 "その他の周辺機器" - IDS_2076 "面イメージ (*.86F)\0*.86F\0" + IDS_2076 "表面イメージ (*.86F)\0*.86F\0" IDS_2077 "クリックするとマウスを直接入力します" IDS_2078 "F12+F8キーでマウスの直接入力を解除します" IDS_2079 "F12+F8キーまたは中クリックでマウスの直接入力を解除します" @@ -453,23 +453,23 @@ BEGIN IDS_2093 "PCapのセットアップに失敗しました" IDS_2094 "PCapデバイスがありません" IDS_2095 "不正なPCapデバイスです" - IDS_2096 "標準的な2ボタンのジョイスティック" - IDS_2097 "標準的な4ボタンのジョイスティック" - IDS_2098 "標準的な6ボタンのジョイスティック" - IDS_2099 "標準的な8ボタンのジョイスティック" + 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_2102 "Thrustmaster Flight Control System" IDS_2103 "なし" IDS_2104 "キーボードアクセラレーターを読み込めません。" IDS_2105 "Raw入力が登録できません。" 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_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_2111 "SDLが初期化できません。SDL2.dllが必要です" + IDS_2112 "起動中のマシンを再起動しますか?" IDS_2113 "86Boxを終了しますか?" IDS_2114 "Ghostscriptが初期化できません" IDS_2115 "光磁気 %i (%ls): %ls" @@ -486,14 +486,14 @@ BEGIN IDS_2126 "古いコンピュータのエミュレータ\n\n著者: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nGNU General Public License version 2以降でリリースされています。詳しくは LICENSE をご覧ください。" IDS_2127 "OK" - IDS_2128 "ハードウェアが利用できない" + 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 "不正なコンフィギュレーションです" + IDS_2129 LIB_NAME_PCAP "がインストールされてるか、" LIB_NAME_PCAP "に対応したネットワークに接続されてるかを確認してください。" + IDS_2130 "不正な設定です" #ifdef _WIN32 #define LIB_NAME_FREETYPE "freetype.dll" #else @@ -505,15 +505,15 @@ BEGIN #else #define LIB_NAME_GS "libgs" #endif - IDS_2132 LIB_NAME_GS "は、PostScriptファイルのPDFに自動的の切り替えのために所要です。\n\n汎用PostScriptプリンターに送った任意のドクメントは、PostScript (.ps)ファイルとして保存されます。" + 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 "FluidSynthのMIDI出力には" LIB_NAME_FLUIDSYNTH "が必要です。" - IDS_2134 "フルスクリーンモードに移行する" - IDS_2135 "このメッセージを二度と表示しない" + IDS_2134 "フルスクリーンモードに転換します" + IDS_2135 "今後このメッセージを表示しない" IDS_2136 "終了しない" IDS_2137 "リセット" IDS_2138 "リセットしない" @@ -524,7 +524,7 @@ BEGIN IDS_2143 "OpenGLシェーダー (*.GLSL)\0*.GLSL\0すべてのファイル (*.*)\0*.*\0" IDS_2144 "OpenGLの設定" IDS_2145 "サポートされていない設定を読み込んでいます" - IDS_2146 "選ばれたマシンに基づくCPUタイプのフィルタリングは、このエミュレートされたマシンでは使用しないです。\n\nこれがあれば、選ばれたマシンと互換性のないCPUを選ばれることができます。でも、マシンのBIOSまたはその他のソフトウエアとの非互換性がありますことができます。\n\nこの設定を使用することにが公式サポートがないで、すべての提出されたバグレポートは、は無効として閉じられる可能性があります。" + IDS_2146 "選択したマシンに基づくCPUタイプのフィルタリングは、このエミュレートされたマシンでは無効になっています。\n\nこれにより、選択したマシンと互換性のないCPUが選択できます。 ただし、マシンBIOSまたは他のソフトウェアとの互換性が失われる可能性があります。\n\nこの設定の有効化は正式的にサポートされていません。また、バグレポートが無効として閉じられる場合があります。" IDS_2147 "つづく" IDS_2148 "カセット: %s" IDS_2149 "カセットイメージ (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0すべてのファイル (*.*)\0*.*\0" @@ -537,7 +537,7 @@ BEGIN IDS_4096 "ハードディスク (%s)" IDS_4097 "%01i:%01i" IDS_4098 "%01i" - IDS_4099 "MFM/RLLやESDIのCD-ROMドライブは存在しない" + IDS_4099 "MFM/RLLまたはESDIのCD-ROMドライブが存在しません" IDS_4100 "カスタム..." IDS_4101 "カスタム(大)..." IDS_4102 "新規のディスクを追加" @@ -547,31 +547,31 @@ BEGIN IDS_4106 "ハードディスクイメージ (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0すべてのファイル (*.*)\0*.*\0" IDS_4107 "ファイルの読み込みができません" IDS_4108 "ファイルの書き込みができません" - IDS_4109 "512バイト以外のセクターサイズを持ったHDIとHDX形式のイメージはサポートしません。" + IDS_4109 "512バイト以外のセクターサイズを持ったHDIまたはHDX形式のイメージはサポートしません。" IDS_4110 "USBはまだサポートしません" - IDS_4111 "ディスクイメージファイルが既に存在する" + IDS_4111 "ディスクイメージファイルが既に存在します" IDS_4112 "有効なファイル名を指定してください。" IDS_4113 "ディスクイメージが作成されました" IDS_4114 "ファイルが存在し、読み取り可能であることを確認します。" IDS_4115 "ファイルが書き込み可能なディレクトリに保存されていることを確認してください。" - IDS_4116 "ディスクイメージが大きすぎる" + IDS_4116 "ディスクイメージが大きすぎます" IDS_4117 "新規ディスクのパーティション設定とフォーマットを必ずしといて下さい。" IDS_4118 "選択したファイルは上書きされます。使っていいですか?" IDS_4119 "サポートされていないディスクイメージ" - IDS_4120 "オーバーライト" - IDS_4121 "オーバーライトしない" - IDS_4122 "生のイメージ (.img)" + IDS_4120 "上書き" + IDS_4121 "上書きしない" + IDS_4122 "Rawイメージ (.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_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_4132 "親イメージがディファレンシングイメージの作成の後に修正した可能性があります。\n\nイメージファイルの移動、コピーまたはこのディスクを作成したプログラムにバグが発生した可能性があります。\n\nタイムスタンプを修正しますか?" + IDS_4133 "親ディスクと子ディスクのタイムスタンプが一致しません" IDS_4134 "VHD のタイムスタンプを修正できませんでした。" IDS_4135 "%01i:%02i" @@ -633,5 +633,5 @@ BEGIN END #define IDS_LANG_ENUS IDS_7168 -// English (U.S.) resources +// Japanese resources ///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/ko-KR.rc b/src/win/languages/ko-KR.rc new file mode 100644 index 000000000..4ab9a3455 --- /dev/null +++ b/src/win/languages/ko-KR.rc @@ -0,0 +1,637 @@ +//////////////////////////////////////////////////////////////////////////// +// Korean resources + +#ifdef _WIN32 +LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT +#pragma code_page(65001) +#endif //_WIN32 + +#define AUTHORS + +///////////////////////////////////////////////////////////////////////////// +// +// Menu +// + +MainMenu MENU DISCARDABLE +BEGIN + POPUP "동작(&A)" + BEGIN + MENUITEM "키보드는 캡쳐가 필요함(&K)", IDM_ACTION_KBD_REQ_CAPTURE + MENUITEM "우측CTRL로 좌측ALT 입력(&R)", IDM_ACTION_RCTRL_IS_LALT + MENUITEM SEPARATOR + MENUITEM "재시작(&H)...", IDM_ACTION_HRESET + MENUITEM "Ctrl+Alt+Del(&C)\tCtrl+F12", IDM_ACTION_RESET_CAD + MENUITEM SEPARATOR + MENUITEM "Ctrl+Alt+Esc(&E)", IDM_ACTION_CTRL_ALT_ESC + MENUITEM SEPARATOR + MENUITEM "일시정지(&P)", IDM_ACTION_PAUSE + MENUITEM SEPARATOR + MENUITEM "끝내기(&X)...", IDM_ACTION_EXIT + END + POPUP "표시(&V)" + BEGIN + MENUITEM "상태 바 숨김(&H)", IDM_VID_HIDE_STATUS_BAR + MENUITEM SEPARATOR + MENUITEM "창 크기 변경 가능(&R)", IDM_VID_RESIZE + MENUITEM "창 크기와 위치를 기억(&E)", IDM_VID_REMEMBER + MENUITEM SEPARATOR + POPUP "렌더러(&N)" + BEGIN + MENUITEM "SDL (소프트웨어)(&S)", IDM_VID_SDL_SW + MENUITEM "SDL (하드웨어)(&H)", IDM_VID_SDL_HW + MENUITEM "SDL (OpenGL)(&O)", IDM_VID_SDL_OPENGL + MENUITEM "OpenGL (3.3 코어)(&G)", IDM_VID_OPENGL_CORE +#ifdef USE_VNC + MENUITEM "VNC(&V)", IDM_VID_VNC +#endif + END + MENUITEM SEPARATOR + MENUITEM "창 크기 지정하기...", IDM_VID_SPECIFY_DIM + MENUITEM "4:3으로 맞추기(&O)", IDM_VID_FORCE43 + POPUP "창 표시 배율(&W)" + BEGIN + MENUITEM "0.5배(&0)", IDM_VID_SCALE_1X + MENUITEM "1배(&1)", IDM_VID_SCALE_2X + MENUITEM "1.5배(&5)", IDM_VID_SCALE_3X + MENUITEM "2배(&2)", IDM_VID_SCALE_4X + END + POPUP "필터 형식" + BEGIN + MENUITEM "최근방 이웃 보간법(&N)", IDM_VID_FILTER_NEAREST + MENUITEM "선형 보간법(&L)", IDM_VID_FILTER_LINEAR + END + MENUITEM "HiDPI 스케일링(&D)", IDM_VID_HIDPI + MENUITEM SEPARATOR + MENUITEM "전체 화면(&F)\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN + POPUP "전체 화면 비율(&S)" + BEGIN + MENUITEM "전체 화면으로 확대(&F)", IDM_VID_FS_FULL + MENUITEM "4:3(&4)", IDM_VID_FS_43 + MENUITEM "정사각형 픽셀 (비율 유지)(&S)", IDM_VID_FS_KEEPRATIO + MENUITEM "정수배 확대(&I)", IDM_VID_FS_INT + END + POPUP "E&GA/(S)VGA 설정" + BEGIN + MENUITEM "색상 반전된 VGA 모니터(&)", IDM_VID_INVERT + POPUP "VGA 화면 유형(&T)" + BEGIN + MENUITEM "RGB 천연색(&C)", IDM_VID_GRAY_RGB + MENUITEM "RGB 회색조(&R)", IDM_VID_GRAY_MONO + MENUITEM "주황색 모니터(&A)", IDM_VID_GRAY_AMBER + MENUITEM "녹색 모니터(&G)", IDM_VID_GRAY_GREEN + MENUITEM "흰색 모니터(&W)", IDM_VID_GRAY_WHITE + END + POPUP "회색조 표현방식(&C)" + BEGIN + MENUITEM "BT601 (NTSC/PAL)(&6)", IDM_VID_GRAYCT_601 + MENUITEM "BT709 (HDTV)(&7)", IDM_VID_GRAYCT_709 + MENUITEM "평균값(&A)", IDM_VID_GRAYCT_AVE + END + END + MENUITEM SEPARATOR + MENUITEM "CGA/PCjr/Tandy/EGA/(S)VGA 오버스캔(&G)", IDM_VID_OVERSCAN + MENUITEM "흑백 표시를 위한 밝기 조정(&M)", IDM_VID_CGACON + END + MENUITEM "미디어(&M)", IDM_MEDIA + POPUP "도구(&T)" + BEGIN + MENUITEM "설정(&S)...", IDM_CONFIG + MENUITEM "상태 바 아이콘 업데이트(&U)", IDM_UPDATE_ICONS + MENUITEM SEPARATOR + MENUITEM "스크린샷 찍기(&C)\tCtrl+F11", IDM_ACTION_SCREENSHOT + MENUITEM SEPARATOR + MENUITEM "환경설정(&P)...", IDM_PREFERENCES + MENUITEM "디스코드 연동 활성화하기(&D)", IDM_DISCORD + MENUITEM SEPARATOR + MENUITEM "음량 증폭(&G)...", 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 "로그(&L)" + 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 "중단점 로그 켜기(&L)\tCtrl+F10", IDM_LOG_BREAKPOINT +# endif +# ifdef ENABLE_VRAM_DUMP + MENUITEM "비디오 RAM 덤프 켜기(&V)\tCtrl+F1", IDM_DUMP_VRAM +# endif +# endif + END +#endif + POPUP "도움말(&H)" + BEGIN + MENUITEM "문서(&D)...", IDM_DOCS + MENUITEM "86Box에 대해(&A)...", IDM_ABOUT + END +END + +StatusBarMenu MENU DISCARDABLE +BEGIN + MENUITEM SEPARATOR +END + +CassetteSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "새 이미지(&N)...", IDM_CASSETTE_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "이미지 불러오기(&E)...", IDM_CASSETTE_IMAGE_EXISTING + MENUITEM "이미지 불러오기 (쓰기방지)(&W)...", IDM_CASSETTE_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "녹음하기(&R)", IDM_CASSETTE_RECORD + MENUITEM "재생하기(&P)", IDM_CASSETTE_PLAY + MENUITEM "맨앞으로 되감기(&R)", IDM_CASSETTE_REWIND + MENUITEM "맨끝으로 빨리감기(&F)", IDM_CASSETTE_FAST_FORWARD + MENUITEM SEPARATOR + MENUITEM "꺼내기(&J)", IDM_CASSETTE_EJECT + END +END + +CartridgeSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "이미지(&I)...", IDM_CARTRIDGE_IMAGE + MENUITEM SEPARATOR + MENUITEM "꺼내기(&J)", IDM_CARTRIDGE_EJECT + END +END + +FloppySubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "새 이미지(&N)...", IDM_FLOPPY_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "이미지 불러오기(&E)...", IDM_FLOPPY_IMAGE_EXISTING + MENUITEM "이미지 불러오기 (쓰기방지)(&W)...", IDM_FLOPPY_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "86F로 보내기(&X)...", IDM_FLOPPY_EXPORT_TO_86F + MENUITEM SEPARATOR + MENUITEM "꺼내기(&J)", IDM_FLOPPY_EJECT + END +END + +CdromSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "음소거(&M)", IDM_CDROM_MUTE + MENUITEM SEPARATOR + MENUITEM "비었음(&M)", IDM_CDROM_EMPTY + MENUITEM "이전 이미지 다시 불러오기(&R)", IDM_CDROM_RELOAD + MENUITEM SEPARATOR + MENUITEM "이미지(&I)", IDM_CDROM_IMAGE + END +END + +ZIPSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "새 이미지(&N)...", IDM_ZIP_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "이미지 불러오기(&E)...", IDM_ZIP_IMAGE_EXISTING + MENUITEM "이미지 불러오기 (쓰기방지)(&W)...", IDM_ZIP_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "꺼내기(&J)", IDM_ZIP_EJECT + MENUITEM "이전 이미지 다시 불러오기(&R)", IDM_ZIP_RELOAD + END +END + +MOSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "새 이미지(&N)...", IDM_MO_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "이미지 불러오기(&E)...", IDM_MO_IMAGE_EXISTING + MENUITEM "이미지 불러오기 (쓰기방지)(&W)...", IDM_MO_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "꺼내기(&J)", IDM_MO_EJECT + MENUITEM "이전 이미지 다시 불러오기(&R)", IDM_MO_RELOAD + END +END + +VidGLSubMenu MENU DISCARDABLE +BEGIN + POPUP "목표 프레임 레이트(&F)" + BEGIN + MENUITEM "비디오와 동기(&S)", IDM_VID_GL_FPS_BLITTER + MENUITEM "25 fps(&2)", IDM_VID_GL_FPS_25 + MENUITEM "30 fps(&3)", IDM_VID_GL_FPS_30 + MENUITEM "50 fps(&5)", IDM_VID_GL_FPS_50 + MENUITEM "60 fps(&6)", IDM_VID_GL_FPS_60 + MENUITEM "75 fps(&7)", IDM_VID_GL_FPS_75 + END + MENUITEM "수직 동기화(&V)", IDM_VID_GL_VSYNC + MENUITEM "쉐이더 불러오기(&S)...", IDM_VID_GL_SHADER + MENUITEM "쉐이더 끄기(&R)", 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 "확인" +#define STR_CANCEL "취소" +#define STR_GLOBAL "이 설정들을 전역 기본값으로 저장하기(&G)" +#define STR_DEFAULT "기본값(&D)" +#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 "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 출력 장치:" +#define STR_MIDI_IN "MIDI 입력 장치:" +#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 "제3의 IDE 컨트롤러" +#define STR_IDE_QUA "제4의 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 "새로 만들기(&N)..." +#define STR_EXISTING "불러오기(&E)..." +#define STR_REMOVE "목록에서 제거(&R)" +#define STR_BUS "버스:" +#define STR_CHANNEL "채널:" +#define STR_ID "ID:" + +#define STR_SPECIFY "열기(&S)..." +#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 "CD-ROM 드라이브:" + +#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 "Malgun Gothic" + +#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에서 사용 가능한 ROM 이미지를 찾을 수 없습니다.\n\nROM 세트를다운로드 후 ""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 "roms/machines 디렉토리에 필요한 롬파일이 없어 기종 ""%hs""을(를) 사용할 수 없습니다. 사용 가능한 기종으로 변경합니다." +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_2064 "roms/video 디렉토리에 필요한 롬파일이 없어 비디오 카드 ""%hs""을(를) 사용할 수 없습니다. 사용 가능한 기종으로 변경합니다." + 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 "F12+F8키를 누르면 마우스를 해제합니다" + IDS_2079 "F12+F8키 또는 가운데 버튼을 클릭하면 마우스를 해제합니다" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_2080 "FluidSynth를 초기화할 수 없습니다" + IDS_2081 "버스" + IDS_2082 "파일" + IDS_2083 "C" + IDS_2084 "H" + IDS_2085 "S" + IDS_2086 "MB" + IDS_2087 "BPB 확인" + IDS_2088 "KB" + 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 Flight Control System" + IDS_2103 "없음" + IDS_2104 "키보드 가속기를 불러올 수 없습니다." + IDS_2105 "Raw 입력을 등록할 수 없습니다." + 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 "ROM을 불러올 수 없습니다" + 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\nGNU General Public 라이선스 (버전 2 이상)에 의해 배포되었습니다. 자세한 내용은 LICENSE 파일을 읽어 주세요." + IDS_2127 "확인" + 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 "ESC/P 프린터 에뮬레이션에 " LIB_NAME_FREETYPE "이(가) 필요합니다." +#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 "FluidSynth의 MIDI 출력에 " LIB_NAME_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따라서 선택된 머신과 호환되지 않는 CPU를 선택하실 수 있습니다. 하지만 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 CD-ROM 드라이브가 존재하지 않습니다" + IDS_4100 "사용자 설정..." + IDS_4101 "사용자 설정 (대용량)..." + IDS_4102 "새로 생성" + IDS_4103 "기존 이미지 사용" + IDS_4104 "HDI 디스크 이미지는 4GB 이상으로 지정할 수 없습니다" + IDS_4105 "디스크 이미지는 127GB 이상으로 지정할 수 없습니다" + IDS_4106 "하드 디스크 이미지 (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0모든 파일 (*.*)\0*.*\0" + IDS_4107 "파일을 읽을 수 없습니다" + IDS_4108 "파일을 저장할 수 없습니다" + IDS_4109 "512 바이트 이외의 섹터 용량을 가진 HDI 또는 HDX 형식의 이미지를 생성할 수 없습니다" + 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 "Raw 이미지 (.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 "완벽한 회전수" + IDS_6145 "1% 낮은 회전수" + IDS_6146 "1.5% 낮은 회전수" + IDS_6147 "2% 낮은 회전수" + + IDS_7168 "(시스템 기본값)" +END +#define IDS_LANG_ENUS IDS_7168 + +// Korean resources +///////////////////////////////////////////////////////////////////////////// From 01f91f8116f6065d9bbebcb10086907a073388ba Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 2 Dec 2021 12:10:54 +0100 Subject: [PATCH 05/41] Portuguese (Portugal) translation correction. --- src/win/languages/pt-PT.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/pt-PT.rc b/src/win/languages/pt-PT.rc index 39f9626d4..9dc41847a 100644 --- a/src/win/languages/pt-PT.rc +++ b/src/win/languages/pt-PT.rc @@ -484,7 +484,7 @@ BEGIN IDS_2124 "Acerca do 86Box" IDS_2125 "86Box v" EMU_VERSION - IDS_2126 "Em emulator de computadores antigos\n\nAutores: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nUsado sob a licença GNU General Public License versão 2 ou posterior. Veja o ficheiro LICENSE para mais informações." + IDS_2126 "Um emulador de computadores antigos\n\nAutores: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nUsado sob a licença GNU General Public License versão 2 ou posterior. Veja o ficheiro LICENSE para mais informações." IDS_2127 "OK" IDS_2128 "Hardware não disponível" #ifdef _WIN32 From 28be6f99d155d616e6f2e705ba78709965deaafa Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 2 Dec 2021 12:15:55 +0100 Subject: [PATCH 06/41] A small bug fix in the SMC FDC37c67x Super I/O chip. --- src/sio/sio_fdc37c67x.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sio/sio_fdc37c67x.c b/src/sio/sio_fdc37c67x.c index d6905a72d..7e1b4d917 100644 --- a/src/sio/sio_fdc37c67x.c +++ b/src/sio/sio_fdc37c67x.c @@ -471,13 +471,13 @@ fdc37c67x_read(uint16_t port, void *priv) /* TODO: 8042 P1.2 SMI#. */ if ((dev->regs[7] == 8) && (dev->cur_reg == 0xb6)) { - ret = dev->regs[dev->cur_reg] & 0xe1; + ret = dev->ld_regs[dev->regs[7]][dev->cur_reg] & 0xe1; ret |= ((!!(smi_stat & (1 << p_irq))) << 1); ret |= ((!!(smi_stat & (1 << s2_irq))) << 2); ret |= ((!!(smi_stat & (1 << s1_irq))) << 3); ret |= ((!!(smi_stat & (1 << f_irq))) << 4); } else if ((dev->regs[7] == 8) && (dev->cur_reg == 0xb7)) { - ret = dev->regs[dev->cur_reg] & 0xec; + ret = dev->ld_regs[dev->regs[7]][dev->cur_reg] & 0xec; ret |= ((!!(smi_stat & (1 << 12))) << 0); ret |= ((!!(smi_stat & (1 << 1))) << 1); ret |= ((!!(smi_stat & (1 << 10))) << 4); From d3efb6998bf2a1a1e8db03a7e35b4aedd1cbdf46 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 00:37:30 +0100 Subject: [PATCH 07/41] ES1371 MIDI UART transmit interrupt enable bit is now actually honored. --- src/sound/snd_audiopci.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/sound/snd_audiopci.c b/src/sound/snd_audiopci.c index 480362e3a..37b112287 100644 --- a/src/sound/snd_audiopci.c +++ b/src/sound/snd_audiopci.c @@ -158,7 +158,7 @@ typedef struct { #define INT_STATUS_DAC2 (1<<1) #define UART_CTRL_RXINTEN (1<<7) -#define UART_CTRL_TXINTEN (1<<5) +#define UART_CTRL_TXINTEN (3<<5) #define UART_STATUS_RXINT (1<<7) #define UART_STATUS_TXINT (1<<2) @@ -206,7 +206,8 @@ es1371_update_irqs(es1371_t *dev) irq = 1; /* MIDI input is unsupported for now */ - if ((dev->int_status & INT_STATUS_UART) && (dev->uart_status & UART_STATUS_TXINT)) + if ((dev->int_status & INT_STATUS_UART) && (dev->uart_status & UART_STATUS_TXINT) && + ((dev->uart_ctrl & UART_CTRL_TXINTEN) != 0x20)) irq = 1; if (irq) @@ -786,6 +787,9 @@ es1371_outb(uint16_t port, uint8_t val, void *p) Addressable as byte only */ case 0x09: dev->uart_ctrl = val & 0xe3; + if ((dev->uart_ctrl & UART_CTRL_TXINTEN) != 0x20) + dev->int_status &= ~INT_STATUS_UART; + es1371_update_irqs(dev); audiopci_log("ES1371 UART Cntrl = %02x\n", dev->uart_ctrl); break; From 39f40d45ea0bd0d167a0decb5264de2659ca78ae Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 00:39:35 +0100 Subject: [PATCH 08/41] The ES1371 now correctly clears all interrupts when it is reset. --- src/sound/snd_audiopci.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/sound/snd_audiopci.c b/src/sound/snd_audiopci.c index 37b112287..7efc9e812 100644 --- a/src/sound/snd_audiopci.c +++ b/src/sound/snd_audiopci.c @@ -317,6 +317,9 @@ es1371_reset(void *p) /* UART FIFO Register, Address 30H, 34H, 38H, 3CH, Memory Page 1110b, 1111b Addressable as longword only */ dev->uart_fifo = 0xfffffe00; + + /* Update interrupts to ensure they're all correctly cleared. */ + es1371_update_irqs(dev); } From 0d0459f9724a968a14af26599ba731653558f87b Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 00:45:50 +0100 Subject: [PATCH 09/41] The ES1371 no longer blocks reads of the power management registers. --- src/sound/snd_audiopci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sound/snd_audiopci.c b/src/sound/snd_audiopci.c index 7efc9e812..7f10701f5 100644 --- a/src/sound/snd_audiopci.c +++ b/src/sound/snd_audiopci.c @@ -1404,7 +1404,7 @@ es1371_pci_read(int func, int addr, void *p) if (func > 0) return 0xff; - if (addr > 0x3f) + if ((addr > 0x3f) && ((addr < 0xdc) || (addr > 0xe1))) return 0x00; switch (addr) { From d28c9af75389fdcbe332c6320b0e950c5e3d5c4f Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 00:47:23 +0100 Subject: [PATCH 10/41] Bumped up the version to 3.1. --- CMakeLists.txt | 2 +- src/include_make/86box/version.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 89e661fcb..f9e0a29f6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -21,7 +21,7 @@ cmake_policy(SET CMP0079 NEW) set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") project(86Box - VERSION 3.0 + VERSION 3.1 DESCRIPTION "Emulator of x86-based systems" HOMEPAGE_URL "https://86box.net" LANGUAGES C CXX) diff --git a/src/include_make/86box/version.h b/src/include_make/86box/version.h index b52c362f8..b2eb49aaf 100644 --- a/src/include_make/86box/version.h +++ b/src/include_make/86box/version.h @@ -20,9 +20,9 @@ #define EMU_NAME "86Box" #define EMU_NAME_W LSTR(EMU_NAME) -#define EMU_VERSION "3.0" +#define EMU_VERSION "3.1" #define EMU_VERSION_W LSTR(EMU_VERSION) -#define EMU_VERSION_EX "3.00" +#define EMU_VERSION_EX "3.01" #define EMU_VERSION_MAJ 3 #define EMU_VERSION_MIN 0 #define EMU_VERSION_PATCH 0 From 0a0d47745861bb46cab4c20f64f4483f4c019932 Mon Sep 17 00:00:00 2001 From: mlow <77110434+notmlow@users.noreply.github.com> Date: Fri, 3 Dec 2021 09:27:03 -0500 Subject: [PATCH 11/41] Fix a mistake in French translation (#1901) Properly translated the Help menu tab to Aide instead of ?. --- src/win/languages/fr-FR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index 06f46221d..b0db2586c 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -148,7 +148,7 @@ BEGIN # endif END #endif - POPUP "&?" + POPUP "&Aide" BEGIN MENUITEM "&Documentation...", IDM_DOCS MENUITEM "&A Propos de 86Box...", IDM_ABOUT From 51cfb056c9cc92e5ee76287da66c1dc83d48fec4 Mon Sep 17 00:00:00 2001 From: mlow <77110434+notmlow@users.noreply.github.com> Date: Fri, 3 Dec 2021 09:30:23 -0500 Subject: [PATCH 12/41] Fix a mistake in the French translation (#1902) Fixed a typo under the Vue menu section. The typo is Echelle facteurr while the correct spelling is Echelle facteur. --- src/win/languages/fr-FR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index b0db2586c..be7f86889 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -49,7 +49,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "Specifier dimensions...", IDM_VID_SPECIFY_DIM MENUITEM "F&orcer 4:3", IDM_VID_FORCE43 - POPUP "&Echelle facteurr" + POPUP "&Echelle facteur" BEGIN MENUITEM "&0.5x", IDM_VID_SCALE_1X MENUITEM "&1x", IDM_VID_SCALE_2X From 09dd15782a5d97ab027b4279c02135e4953a05b1 Mon Sep 17 00:00:00 2001 From: mlow <77110434+notmlow@users.noreply.github.com> Date: Fri, 3 Dec 2021 09:37:19 -0500 Subject: [PATCH 13/41] Fixed a typo under cassette menu. Fixed a typo under the cassette menu. The typo is Image Exsistane while the correct spelling is Image Existante. --- src/win/languages/fr-FR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index be7f86889..fe6cdc865 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -167,7 +167,7 @@ BEGIN MENUITEM "&Nouvelle image...", IDM_CASSETTE_IMAGE_NEW MENUITEM SEPARATOR MENUITEM "Image &Existante...", IDM_CASSETTE_IMAGE_EXISTING - MENUITEM "Image Exsistane(&Lecture seule)...", IDM_CASSETTE_IMAGE_EXISTING_WP + MENUITEM "Image Existante(&Lecture seule)...", IDM_CASSETTE_IMAGE_EXISTING_WP MENUITEM SEPARATOR MENUITEM "En®istrer", IDM_CASSETTE_RECORD MENUITEM "&Jouer", IDM_CASSETTE_PLAY From 4a7b330f3f7089b7ea84c17951a76394ac8092de Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 19:48:51 +0100 Subject: [PATCH 14/41] Minor Russian translation fixes by mlow. --- src/win/languages/ru-RU.rc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/win/languages/ru-RU.rc b/src/win/languages/ru-RU.rc index 40c7eaf9c..7f80abe87 100644 --- a/src/win/languages/ru-RU.rc +++ b/src/win/languages/ru-RU.rc @@ -534,7 +534,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_4096 "Жесткий диск (%s)" + IDS_4096 "Жёсткий диск (%s)" IDS_4097 "%01i:%01i" IDS_4098 "%01i" IDS_4099 "MFM/RLL или ESDI дисководов CD-ROM никогда не существовало" @@ -544,7 +544,7 @@ BEGIN IDS_4103 "Добавить существующий жёсткий диск" IDS_4104 "Размер образов дисков HDI не может превышать 4 ГБ." IDS_4105 "Размер образов дисков не может превышать 127 ГБ." - IDS_4106 "Образы жестких дисков (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Все файлы (*.*)\0*.*\0" + IDS_4106 "Образы жёстких дисков (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Все файлы (*.*)\0*.*\0" IDS_4107 "Невозможно прочитать файл" IDS_4108 "Невозможно записать файл" IDS_4109 "Образы HDI или HDX с размером сектора, отличным от 512, не поддерживаются." @@ -565,12 +565,12 @@ BEGIN IDS_4124 "Образ HDX (.hdx)" IDS_4125 "VHD фиксированного размера (.vhd)" IDS_4126 "VHD динамического размера (.vhd)" - IDS_4127 "Дифференцированнный образ VHD (.vhd)" + IDS_4127 "Дифференцированный образ VHD (.vhd)" IDS_4128 "Большие блоки (2 МБ)" IDS_4129 "Маленькие блоки (512 КБ)" IDS_4130 "Файлы VHD (*.VHD)\0*.VHD\0Все файлы (*.*)\0*.*\0" IDS_4131 "Выберите родительский VHD" - IDS_4132 "Это может означать, что родительский образ был изменён после того, как был создан дифференцированнный образ.\n\nЭто также может произойти, если файлы образа были перемещены или скопированы, или из-за ошибки в программе, создавшей этот диск.\n\nВы хотите исправить временные метки?" + IDS_4132 "Это может означать, что родительский образ был изменён после того, как был создан дифференцированный образ.\n\nЭто также может произойти, если файлы образа были перемещены или скопированы, или из-за ошибки в программе, создавшей этот диск.\n\nВы хотите исправить временные метки?" IDS_4133 "Временные метки родительского и дочернего дисков не совпадают" IDS_4134 "Не удалось исправить временную метку VHD." IDS_4135 "%01i:%02i" From 303707998b2832a9bce56c8c1c0e62c61bb412f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miran=20Gr=C4=8Da?= Date: Fri, 3 Dec 2021 20:10:45 +0100 Subject: [PATCH 15/41] Update for RTMidi. --- .ci/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/build.sh b/.ci/build.sh index b0c22f671..f9d5f56af 100644 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -224,7 +224,7 @@ else fi libpkgs="" longest_libpkg=0 - for pkg in libc6-dev linux-libc-dev libopenal-dev libfreetype6-dev libsdl2-dev libpng-dev + for pkg in libc6-dev linux-libc-dev libopenal-dev libfreetype6-dev libsdl2-dev libpng-dev librtmidi-dev do libpkgs="$libpkgs $pkg:$arch_deb" length=$(echo -n $pkg | sed 's/-dev$//' | wc -c) From 3eaa6153b5992b3850c203912603938a83abe975 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 20:12:44 +0100 Subject: [PATCH 16/41] Switched MIDI to RtMidi. --- src/CMakeLists.txt | 7 +- src/rtmidi_midi.cpp | 204 ++++++++++++++++++++++++++++++++++ src/win/CMakeLists.txt | 2 +- src/win/Makefile.mingw | 6 +- src/win/win_midi.c | 241 ----------------------------------------- 5 files changed, 214 insertions(+), 246 deletions(-) create mode 100644 src/rtmidi_midi.cpp delete mode 100644 src/win/win_midi.c diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7e9e24e89..58a9c2959 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -36,7 +36,12 @@ endif() # MACOSX_BUNDLE prepares a macOS application bundle including with the app icon add_executable(86Box WIN32 MACOSX_BUNDLE 86box.c config.c log.c random.c timer.c io.c acpi.c apm.c dma.c ddma.c nmi.c pic.c pit.c port_6x.c port_92.c ppi.c pci.c mca.c usb.c - device.c nvr.c nvr_at.c nvr_ps2.c ${APP_ICON_MACOSX}) + device.c nvr.c nvr_at.c nvr_ps2.c rtmidi_midi.cpp ${APP_ICON_MACOSX}) + +find_package(RTMIDI REQUIRED) +target_include_directories(86Box ${RTMIDI_INCLUDE_DIRS}) +target_link_directories(86Box INTERFACE ${RTMIDI_LIBRARY_DIRS}) +target_link_libraries(86Box ${RTMIDI_LIBRARY_DIRS}) if(APPLE) target_link_libraries(86Box "-framework AppKit") diff --git a/src/rtmidi_midi.cpp b/src/rtmidi_midi.cpp new file mode 100644 index 000000000..43f8a2400 --- /dev/null +++ b/src/rtmidi_midi.cpp @@ -0,0 +1,204 @@ +/* + * 86Box A hypervisor and IBM PC system emulator that specializes in + * running old operating systems and software designed for IBM + * PC systems and compatibles from 1981 through fairly recent + * system designs based on the PCI bus. + * + * This file is part of the 86Box distribution. + * + * MIDI backend implemented using the RtMidi library. + * + * Author: jgilje, + * Miran Grca, + * Copyright 2021 jgilje. + * Copyright 2021 Miran Grca. + */ +#if defined __has_include +# if __has_include () +# include +# endif +# if __has_include () +# include +# endif +#endif + +#include +#include + +extern "C" +{ +#include <86box/86box.h> +#include <86box/midi.h> +#include <86box/plat_midi.h> +#include <86box/config.h> + + +static RtMidiOut * midiout = nullptr; +static RtMidiIn * midiin = nullptr; +static int midi_out_id = 0, midi_in_id = 0; +static const int midi_lengths[8] = {3, 3, 3, 3, 2, 2, 3, 1}; + + +int +plat_midi_write(uint8_t val) +{ + return 0; +} + + +void plat_midi_init(void) +{ + try { + if (!midiout) midiout = new RtMidiOut; + } catch (RtMidiError& error) { + pclog("Failed to initialize MIDI output: %s\n", error.getMessage().c_str()); + return; + } + + midi_out_id = config_get_int((char*)SYSTEM_MIDI_NAME, (char*)"midi", 0); + + try { + midiout->openPort(midi_out_id); + } catch (RtMidiError& error) { + pclog("Fallback to default MIDI output port: %s\n", error.getMessage().c_str()); + + try { + midiout->openPort(0); + } catch (RtMidiError& error) { + pclog("Failed to initialize MIDI output: %s\n", error.getMessage().c_str()); + delete midiout; + midiout = nullptr; + return; + } + } +} + + +void +plat_midi_close(void) +{ + if (!midiout) + return; + + midiout->closePort(); + + delete midiout; + midiout = nullptr; +} + + +int +plat_midi_get_num_devs(void) +{ + if (!midiout) { + try { + midiout = new RtMidiOut; + } catch (RtMidiError& error) { + pclog("Failed to initialize MIDI output: %s\n", error.getMessage().c_str()); + } + } + + return midiout ? midiout->getPortCount() : 0; +} + + +void +plat_midi_play_msg(uint8_t *msg) +{ + if (midiout) + midiout->sendMessage(msg, midi_lengths[(msg[0] >> 4) & 7]); +} + + +void +plat_midi_get_dev_name(int num, char *s) +{ + strcpy(s, midiout->getPortName(num).c_str()); +} + + +void +plat_midi_play_sysex(uint8_t *sysex, unsigned int len) +{ + if (midiout) + midiout->sendMessage(sysex, len); +} + + +static void +plat_midi_callback(double timeStamp, std::vector *message, void *userData) +{ + if (message->size() <= 3) + midi_in_msg(message->data()); + else + midi_in_sysex(message->data(), message->size()); +} + + +void +plat_midi_input_init(void) +{ + try { + if (!midiin) + midiin = new RtMidiIn; + } catch (RtMidiError& error) { + pclog("Failed to initialize MIDI input: %s\n", error.getMessage().c_str()); + return; + } + + midi_in_id = config_get_int((char*)SYSTEM_MIDI_NAME, (char*)"midi_input", 0); + + try { + midiin->openPort(midi_in_id); + } catch (RtMidiError& error) { + pclog("Fallback to default MIDI input port: %s\n", error.getMessage().c_str()); + + try { + midiin->openPort(0); + } catch (RtMidiError& error) { + pclog("Failed to initialize MIDI input: %s\n", error.getMessage().c_str()); + delete midiin; + midiin = nullptr; + return; + } + } + + midiin->setCallback(plat_midi_callback); +} + + +void +plat_midi_input_close(void) +{ + midiin->cancelCallback(); + midiin->closePort(); + + delete midiin; + midiin = nullptr; + + return; +} + + +int +plat_midi_in_get_num_devs(void) +{ + if (!midiin) { + try { + midiin = new RtMidiIn; + } catch (RtMidiError& error) { + pclog("Failed to initialize MIDI input: %s\n", error.getMessage().c_str()); + } + } + + return midiin ? midiin->getPortCount() : 0; +} + + +void +plat_midi_in_get_dev_name(int num, char *s) +{ + strcpy(s, midiin->getPortName(num).c_str()); +} + +} diff --git a/src/win/CMakeLists.txt b/src/win/CMakeLists.txt index 1a535c61a..301544798 100644 --- a/src/win/CMakeLists.txt +++ b/src/win/CMakeLists.txt @@ -16,7 +16,7 @@ enable_language(RC) add_library(plat OBJECT win.c win_dynld.c win_cdrom.c win_thread.c - win_keyboard.c win_crashdump.c win_midi.c win_mouse.c) + win_keyboard.c win_crashdump.c win_mouse.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 diff --git a/src/win/Makefile.mingw b/src/win/Makefile.mingw index 0fcdd9ab4..e3199b319 100644 --- a/src/win/Makefile.mingw +++ b/src/win/Makefile.mingw @@ -466,7 +466,7 @@ CXXFLAGS := $(CFLAGS) ######################################################################### MAINOBJ := 86box.o config.o log.o random.o timer.o io.o acpi.o apm.o dma.o ddma.o \ nmi.o pic.o pit.o port_6x.o port_92.o ppi.o pci.o mca.o \ - usb.o device.o nvr.o nvr_at.o nvr_ps2.o \ + usb.o device.o nvr.o nvr_at.o nvr_ps2.o rtmidi_midi.o \ $(VNCOBJ) MEMOBJ := catalyst_flash.o i2c_eeprom.o intel_flash.o mem.o rom.o smram.o spd.o sst_flash.o @@ -674,7 +674,7 @@ VOODOOOBJ := vid_voodoo.o vid_voodoo_banshee.o \ PLATOBJ := win.o \ win_dynld.o win_thread.o \ win_cdrom.o win_keyboard.o \ - win_crashdump.o win_midi.o \ + win_crashdump.o \ win_mouse.o UIOBJ := win_ui.o win_icon.o win_stbar.o win_discord.o \ @@ -704,7 +704,7 @@ LIBS := -mwindows -lcomctl32 \ ifeq ($(VNC), y) LIBS += $(VNCLIB) -lws2_32 endif -LIBS += -lpng -lz -lwsock32 -lshell32 -liphlpapi -lpsapi -lSDL2 -limm32 -lhid -lsetupapi -loleaut32 -luxtheme -lversion -lwinmm -static -lstdc++ +LIBS += -lpng -lz -lwsock32 -lshell32 -liphlpapi -lpsapi -lSDL2 -limm32 -lhid -lsetupapi -loleaut32 -luxtheme -lversion -lrtmidi -lwinmm -static -lstdc++ ifneq ($(X64), y) ifneq ($(ARM64), y) LIBS += -Wl,--large-address-aware diff --git a/src/win/win_midi.c b/src/win/win_midi.c deleted file mode 100644 index 86ff9d285..000000000 --- a/src/win/win_midi.c +++ /dev/null @@ -1,241 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include <86box/86box.h> -#include <86box/config.h> -#include <86box/midi.h> -#include <86box/plat.h> -#include <86box/plat_midi.h> - - -typedef struct -{ - int midi_id, midi_input_id; - - HANDLE m_event; - - HMIDIOUT midi_out_device; - HMIDIIN midi_in_device; - - MIDIHDR m_hdr; -} plat_midi_t; - -plat_midi_t *pm = NULL, *pm_in = NULL; - - -void -plat_midi_init(void) -{ - MMRESULT hr; - - pm = (plat_midi_t *) malloc(sizeof(plat_midi_t)); - memset(pm, 0, sizeof(plat_midi_t)); - - pm->midi_id = config_get_int(SYSTEM_MIDI_NAME, "midi", 0); - - hr = MMSYSERR_NOERROR; - - pm->m_event = CreateEvent(NULL, TRUE, TRUE, NULL); - - hr = midiOutOpen(&pm->midi_out_device, pm->midi_id, - (uintptr_t) pm->m_event, 0, CALLBACK_EVENT); - if (hr != MMSYSERR_NOERROR) { - printf("midiOutOpen error - %08X\n", hr); - pm->midi_id = 0; - hr = midiOutOpen(&pm->midi_out_device, pm->midi_id, - (uintptr_t) pm->m_event, 0, CALLBACK_EVENT); - if (hr != MMSYSERR_NOERROR) { - printf("midiOutOpen error - %08X\n", hr); - return; - } - } - - midiOutReset(pm->midi_out_device); -} - - -void -plat_midi_close(void) -{ - if (pm) { - if (pm->midi_out_device != NULL) { - midiOutReset(pm->midi_out_device); - midiOutClose(pm->midi_out_device); - CloseHandle(pm->m_event); - } - - free(pm); - pm = NULL; - } -} - - -int -plat_midi_get_num_devs(void) -{ - return midiOutGetNumDevs(); -} - - -void -plat_midi_get_dev_name(int num, char *s) -{ - MIDIOUTCAPS caps; - - midiOutGetDevCaps(num, &caps, sizeof(caps)); - strcpy(s, caps.szPname); -} - - -void -plat_midi_play_msg(uint8_t *msg) -{ - if (!pm) - return; - - midiOutShortMsg(pm->midi_out_device, *(uint32_t *) msg); -} - - -void -plat_midi_play_sysex(uint8_t *sysex, unsigned int len) -{ - MMRESULT result; - - if (!pm) - return; - - if (WaitForSingleObject(pm->m_event, 2000) == WAIT_TIMEOUT) - return; - - midiOutUnprepareHeader(pm->midi_out_device, &pm->m_hdr, sizeof(pm->m_hdr)); - - pm->m_hdr.lpData = (char *) sysex; - pm->m_hdr.dwBufferLength = len; - pm->m_hdr.dwBytesRecorded = len; - pm->m_hdr.dwUser = 0; - - result = midiOutPrepareHeader(pm->midi_out_device, &pm->m_hdr, sizeof(pm->m_hdr)); - - if (result != MMSYSERR_NOERROR) - return; - ResetEvent(pm->m_event); - result = midiOutLongMsg(pm->midi_out_device, &pm->m_hdr, sizeof(pm->m_hdr)); - if (result != MMSYSERR_NOERROR) { - SetEvent(pm->m_event); - return; - } -} - - -int -plat_midi_write(uint8_t val) -{ - return 0; -} - - -void CALLBACK -plat_midi_in_callback(HMIDIIN hMidiIn, UINT wMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2) -{ - uint8_t msg[4] = { ((dwParam1 & 0xff)), (((dwParam1 & 0xff00) >> 8)), - (((dwParam1 & 0xff0000) >> 16)), MIDI_evt_len[((dwParam1 & 0xff))]}; - uint8_t *sysex; - uint32_t len; - MIDIHDR *hdr; - - switch (wMsg) { - case MM_MIM_DATA: /* 0x3C3 - midi message */ - midi_in_msg(msg); - break; - case MM_MIM_OPEN: /* 0x3C1 */ - break; - case MM_MIM_CLOSE: /* 0x3C2 */ - break; - case MM_MIM_LONGDATA: /* 0x3C4 - sysex */ - /* It is midi_in_sysex() that now does the loop. */ - hdr = (MIDIHDR *) dwParam1; - sysex = (uint8_t *) hdr->lpData; - len = (uint32_t) hdr->dwBytesRecorded; - midi_in_sysex(sysex, len); - - midiInUnprepareHeader(hMidiIn, hdr, sizeof(*hdr)); - hdr->dwBytesRecorded = 0; - midiInPrepareHeader(hMidiIn, hdr, sizeof(*hdr)); - break; - case MM_MIM_ERROR: - case MM_MIM_LONGERROR: - break; - default: - break; - } -} - - -void -plat_midi_input_init(void) -{ - MMRESULT hr; - - pm_in = (plat_midi_t *) malloc(sizeof(plat_midi_t)); - memset(pm_in, 0, sizeof(plat_midi_t)); - - pm_in->midi_input_id = config_get_int(MIDI_INPUT_NAME, "midi_input", 0); - - hr = MMSYSERR_NOERROR; - - hr = midiInOpen(&pm_in->midi_in_device, pm_in->midi_input_id, - (uintptr_t) plat_midi_in_callback, 0, CALLBACK_FUNCTION); - if (hr != MMSYSERR_NOERROR) { - printf("midiInOpen error - %08X\n", hr); - pm_in->midi_input_id = 0; - hr = midiInOpen(&pm_in->midi_in_device, pm_in->midi_input_id, - (uintptr_t) plat_midi_in_callback, 0, CALLBACK_FUNCTION); - if (hr != MMSYSERR_NOERROR) { - printf("midiInOpen error - %08X\n", hr); - return; - } - } - - pm_in->m_hdr.lpData = (char*)&MIDI_InSysexBuf[0]; - pm_in->m_hdr.dwBufferLength = SYSEX_SIZE; - pm_in->m_hdr.dwBytesRecorded = 0; - pm_in->m_hdr.dwUser = 0; - midiInPrepareHeader(pm_in->midi_in_device,&pm_in->m_hdr,sizeof(pm_in->m_hdr)); - midiInStart(pm_in->midi_in_device); -} - - -void -plat_midi_input_close(void) -{ - if (pm_in) { - if (pm_in->midi_in_device != NULL) { - midiInStop(pm_in->midi_in_device); - midiInClose(pm_in->midi_in_device); - } - - free(pm_in); - pm_in = NULL; - } -} - - -int -plat_midi_in_get_num_devs(void) -{ - return midiInGetNumDevs(); -} - - -void -plat_midi_in_get_dev_name(int num, char *s) -{ - MIDIINCAPS caps; - - midiInGetDevCaps(num, &caps, sizeof(caps)); - strcpy(s, caps.szPname); -} From 54551fc6c4c986dac390eef0c3f01cfd7c3f2732 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 20:20:02 +0100 Subject: [PATCH 17/41] RtMidi fixes. --- src/rtmidi_midi.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/rtmidi_midi.cpp b/src/rtmidi_midi.cpp index 43f8a2400..af9fc5439 100644 --- a/src/rtmidi_midi.cpp +++ b/src/rtmidi_midi.cpp @@ -23,6 +23,8 @@ #endif #include +#include +#include #include extern "C" From e7ae91ed59de545aecdaa42442b0531a146bfe1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Fri, 3 Dec 2021 20:54:52 +0100 Subject: [PATCH 18/41] Fix the rtmidi dependency --- .github/workflows/c-cpp.yml | 2 +- .github/workflows/cmake.yml | 2 +- vcpkg.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml index 362becce6..51e2acbeb 100644 --- a/.github/workflows/c-cpp.yml +++ b/.github/workflows/c-cpp.yml @@ -52,7 +52,7 @@ jobs: ${{ matrix.environment.prefix }}-zlib ${{ matrix.environment.prefix }}-libpng ${{ matrix.environment.prefix }}-libvncserver - ${{ matrix.environment.prefix }}-winpthreads + ${{ matrix.environment.prefix }}-rtmidi - uses: actions/checkout@v2 - name: make run: make -fwin/makefile.mingw -j DEV_BUILD=${{ matrix.dev-build }} NEW_DYNAREC=${{ matrix.new-dynarec }} X64=${{ matrix.environment.x64 }} VNC=n diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index fd2c2b55e..6ba242981 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -71,7 +71,7 @@ jobs: ${{ matrix.environment.prefix }}-zlib ${{ matrix.environment.prefix }}-libpng ${{ matrix.environment.prefix }}-libvncserver - ${{ matrix.environment.prefix }}-winpthreads + ${{ matrix.environment.prefix }}-rtmidi - uses: actions/checkout@v2 - name: Configure CMake run: >- diff --git a/vcpkg.json b/vcpkg.json index eb9ed9b1d..d8ec1d981 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -9,6 +9,6 @@ "libpng", "openal-soft", "sdl2", - "pthreads" + "rtmidi" ] } \ No newline at end of file From 8a66570e9dd3f12d9925794be5c5c75fb99bd6d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Fri, 3 Dec 2021 21:17:30 +0100 Subject: [PATCH 19/41] Add rtmidi to Linux and Mac jobs --- .github/workflows/cmake.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 6ba242981..08d4522ff 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -152,7 +152,7 @@ jobs: steps: - uses: actions/checkout@v2 - name: Install dependencies - run: sudo apt update && sudo apt install gcc-11 g++-11 libfreetype-dev libsdl2-dev libpng-dev libopenal-dev libc6-dev + run: sudo apt update && sudo apt install gcc-11 g++-11 libfreetype-dev libsdl2-dev libpng-dev libopenal-dev libc6-dev librtmidi-dev - name: Configure CMake run: >- cmake -S . -B build @@ -185,7 +185,7 @@ jobs: steps: - uses: actions/checkout@v2 - name: Install dependencies - run: brew install freetype sdl2 libpng openal-soft + run: brew install freetype sdl2 libpng openal-soft rtmidi - name: Configure CMake run: >- cmake -S . -B build From 4338560466244186b5109ca1a4b13eefd5558829 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Fri, 3 Dec 2021 21:18:38 +0100 Subject: [PATCH 20/41] Properly find rtmidi on the CMake build --- src/CMakeLists.txt | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 58a9c2959..1f7fe67c0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -38,11 +38,6 @@ add_executable(86Box WIN32 MACOSX_BUNDLE 86box.c config.c log.c random.c timer.c dma.c ddma.c nmi.c pic.c pit.c port_6x.c port_92.c ppi.c pci.c mca.c usb.c device.c nvr.c nvr_at.c nvr_ps2.c rtmidi_midi.cpp ${APP_ICON_MACOSX}) -find_package(RTMIDI REQUIRED) -target_include_directories(86Box ${RTMIDI_INCLUDE_DIRS}) -target_link_directories(86Box INTERFACE ${RTMIDI_LIBRARY_DIRS}) -target_link_libraries(86Box ${RTMIDI_LIBRARY_DIRS}) - if(APPLE) target_link_libraries(86Box "-framework AppKit") endif() @@ -162,6 +157,16 @@ find_package(PNG REQUIRED) include_directories(${PNG_INCLUDE_DIRS}) target_link_libraries(86Box PNG::PNG) +if(VCPKG_TOOLCHAIN) + # vcpkg includes a config file for rtmidi + find_package(RtMidi) + target_link_libraries(86Box RtMidi::rtmidi) +else() + find_package(PkgConfig REQUIRED) + pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET rtmidi) + target_link_libraries(86Box PkgConfig::RTMIDI) +endif() + configure_file(include/86box/version.h.in include/86box/version.h @ONLY) include_directories(${CMAKE_CURRENT_BINARY_DIR}/include) From 156e88f20a2b0cf44b00a1e7d70946c16c47a726 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Fri, 3 Dec 2021 21:41:08 +0100 Subject: [PATCH 21/41] Use static MSVCRT only when using static vcpkg deps Should fix MT/MD mismatch with rtmidi --- CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f9e0a29f6..243418924 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,9 @@ cmake_minimum_required(VERSION 3.15) cmake_policy(SET CMP0091 NEW) cmake_policy(SET CMP0079 NEW) -set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +if(VCPKG_TOOLCHAIN AND VCPKG_TARGET_TRIPLET MATCHES "static") + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +endif() project(86Box VERSION 3.1 From 2175fc58883eeaa3907a01bf425fa40986647981 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Fri, 3 Dec 2021 21:45:22 +0100 Subject: [PATCH 22/41] Require C++11 support; fixes the Mac build --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 243418924..127bae80b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -54,6 +54,8 @@ if(WIN32) add_compile_definitions(_WINSOCK_DEPRECATED_NO_WARNINGS) endif() +set(CMAKE_CXX_STANDARD 11) + option(RELEASE "Release build" OFF) option(USB "USB support" OFF) option(DYNAREC "Dynamic recompiler" ON) From 538b9bc478c5b95f8c011d3f023f7d8670d7e134 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Fri, 3 Dec 2021 23:10:46 +0100 Subject: [PATCH 23/41] Fix link order in MSYS2 build --- src/CMakeLists.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 1f7fe67c0..2bb82ca4e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -159,12 +159,16 @@ target_link_libraries(86Box PNG::PNG) if(VCPKG_TOOLCHAIN) # vcpkg includes a config file for rtmidi - find_package(RtMidi) + find_package(RtMidi REQUIRED) target_link_libraries(86Box RtMidi::rtmidi) else() find_package(PkgConfig REQUIRED) pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET rtmidi) target_link_libraries(86Box PkgConfig::RTMIDI) + + if(WIN32) + target_link_libraries(PkgConfig::RTMIDI INTERFACE winmm) + endif() endif() configure_file(include/86box/version.h.in include/86box/version.h @ONLY) From f36462639a8d5c866a1bf7d7530fe49d8b87ce62 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 3 Dec 2021 23:34:42 +0100 Subject: [PATCH 24/41] Fixed the OpenGL menu in the Chinese (Simplified) translation. --- src/win/languages/zh-CN.rc | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/win/languages/zh-CN.rc b/src/win/languages/zh-CN.rc index 11f219dc2..f999f0478 100644 --- a/src/win/languages/zh-CN.rc +++ b/src/win/languages/zh-CN.rc @@ -41,9 +41,7 @@ BEGIN MENUITEM "&SDL (软件)", IDM_VID_SDL_SW MENUITEM "SDL (硬件 &H)", 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 @@ -246,7 +244,6 @@ BEGIN END END -#if defined(DEV_BRANCH) && defined(USE_OPENGL) VidGLSubMenu MENU DISCARDABLE BEGIN POPUP "目标帧率(&f)" @@ -262,7 +259,6 @@ BEGIN MENUITEM "选择着色器(&S)...", IDM_VID_GL_SHADER MENUITEM "移除着色器(&R)", IDM_VID_GL_NOSHADER END -#endif ///////////////////////////////////////////////////////////////////////////// From 89c5bbb1159a02fb6130c853b0543f913cf16112 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 00:17:45 +0100 Subject: [PATCH 25/41] Fixes by basic2004 for the Japanese and Korean translations. --- src/win/languages/ja-JP.rc | 62 +++++++++++++++++++------------------- src/win/languages/ko-KR.rc | 40 ++++++++++++------------ 2 files changed, 51 insertions(+), 51 deletions(-) diff --git a/src/win/languages/ja-JP.rc b/src/win/languages/ja-JP.rc index 9807d2e94..f7a8f9770 100644 --- a/src/win/languages/ja-JP.rc +++ b/src/win/languages/ja-JP.rc @@ -33,8 +33,8 @@ BEGIN BEGIN MENUITEM "ステータスバーを隠す(&H)", IDM_VID_HIDE_STATUS_BAR MENUITEM SEPARATOR - MENUITEM "ウィンドウのサイズを変更できるようにする(&R)", IDM_VID_RESIZE - MENUITEM "ウィンドウのサイズと位置を記憶(&E)", IDM_VID_REMEMBER + MENUITEM "ウィンドウのサイズを変更可能にする(&R)", IDM_VID_RESIZE + MENUITEM "ウィンドウのサイズと位置を記憶する(&E)", IDM_VID_REMEMBER MENUITEM SEPARATOR POPUP "レンダラー(&N)" BEGIN @@ -48,7 +48,7 @@ BEGIN END MENUITEM SEPARATOR MENUITEM "ウィンドウのサイズを指定する...", IDM_VID_SPECIFY_DIM - MENUITEM "4:3に合わせる(&O)", IDM_VID_FORCE43 + MENUITEM "画面比率を4:3に合わせる(&O)", IDM_VID_FORCE43 POPUP "ウィンドウの倍率(&W)" BEGIN MENUITEM "0.5x(&0)", IDM_VID_SCALE_1X @@ -73,7 +73,7 @@ BEGIN END POPUP "E&GA/(S)VGAの設定" BEGIN - MENUITEM "色反転VGAモニター(&)", IDM_VID_INVERT + MENUITEM "色反転VGAモニター(&I)", IDM_VID_INVERT POPUP "VGA画面タイプ(&T)" BEGIN MENUITEM "RGBカラー(&C)", IDM_VID_GRAY_RGB @@ -97,7 +97,7 @@ BEGIN POPUP "ツール(&T)" BEGIN MENUITEM "設定(&S)...", IDM_CONFIG - MENUITEM "ステータスバーアイコンの更新(&U)", IDM_UPDATE_ICONS + MENUITEM "ステータスバーのアイコンを更新する(&U)", IDM_UPDATE_ICONS MENUITEM SEPARATOR MENUITEM "スクリーンショットを撮る(&C)\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR @@ -249,11 +249,11 @@ BEGIN POPUP "目標フレームレート(&F)" BEGIN MENUITEM "ビデオとの同期(&S)", IDM_VID_GL_FPS_BLITTER - MENUITEM "25フレーム/秒(&2)", IDM_VID_GL_FPS_25 - MENUITEM "30フレーム/秒(&3)", IDM_VID_GL_FPS_30 - MENUITEM "50フレーム/秒(&5)", IDM_VID_GL_FPS_50 - MENUITEM "60フレーム/秒(&6)", IDM_VID_GL_FPS_60 - MENUITEM "75フレーム/秒(&7)", IDM_VID_GL_FPS_75 + MENUITEM "25 fps(&2)", IDM_VID_GL_FPS_25 + MENUITEM "30 fps(&3)", IDM_VID_GL_FPS_30 + MENUITEM "50 fps(&5)", IDM_VID_GL_FPS_50 + MENUITEM "60 fps(&6)", IDM_VID_GL_FPS_60 + MENUITEM "75 fps(&7)", IDM_VID_GL_FPS_75 END MENUITEM "VSync(&V)", IDM_VID_GL_VSYNC MENUITEM "シェーダの選択(&S)...", IDM_VID_GL_SHADER @@ -284,7 +284,7 @@ END #define STR_FILE_NAME "ファイル名:" #define STR_DISK_SIZE "ディスクの容量:" #define STR_RPM_MODE "RPMモード:" -#define STR_PROGRESS "プログレス:" +#define STR_PROGRESS "進行:" #define STR_WIDTH "幅:" #define STR_HEIGHT "高さ:" @@ -324,9 +324,9 @@ END #define STR_GUS "Gravis Ultrasound" #define STR_FLOAT "FLOAT32サウンドを使用" -#define STR_NET_TYPE "ネットワークタイプ:" +#define STR_NET_TYPE "ネットワークタイプ:" #define STR_PCAP "PCapデバイス:" -#define STR_NET "ネットワークアダプター:" +#define STR_NET "ネットワークカード:" #define STR_LPT1 "LPT1デバイス:" #define STR_LPT2 "LPT2デバイス:" @@ -339,15 +339,15 @@ END #define STR_PARALLEL2 "パラレルポート2" #define STR_PARALLEL3 "パラレルポート3" -#define STR_HDC "HDコントローラー:" -#define STR_FDC "FDコントローラー:" +#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_SCSI_1 "コントローラー1:" +#define STR_SCSI_2 "コントローラー2:" +#define STR_SCSI_3 "コントローラー3:" +#define STR_SCSI_4 "コントローラー4:" #define STR_CASSETTE "カセット" #define STR_HDD "ハードディスク:" @@ -359,13 +359,13 @@ END #define STR_ID "ID:" #define STR_SPECIFY "参照(&S)..." -#define STR_SECTORS "セクター:" -#define STR_HEADS "ヘッド:" -#define STR_CYLS "シリンダー:" +#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_IMG_FORMAT "イメージ形式:" +#define STR_BLOCK_SIZE "ブロックサイズ:" #define STR_FLOPPY_DRIVES "フロッピードライブ:" #define STR_TURBO "高速タイミング" @@ -376,8 +376,8 @@ END #define STR_ZIP_DRIVES "ZIPドライブ:" #define STR_250 "ZIP 250" -#define STR_ISARTC "ISA RTCカード:" -#define STR_ISAMEM "ISAメモリー拡張ボード" +#define STR_ISARTC "ISA RTCカード:" +#define STR_ISAMEM "ISAメモリー拡張カード" #define STR_ISAMEM_1 "カード1:" #define STR_ISAMEM_2 "カード2:" #define STR_ISAMEM_3 "カード3:" @@ -405,7 +405,7 @@ BEGIN IDS_2053 "速度" IDS_2054 "ZIP %03i %i (%s): %ls" IDS_2055 "ZIPイメージ (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0" - IDS_2056 "86Boxでは、使用可能なROMイメージが見つかりませんでした。\n\nROMセットをダウンロードして、《roms》ディレクトリに解凍してください。" + IDS_2056 "86Boxで使用可能なROMイメージが見つかりませんでした。\n\nROMセットをダウンロードして、《roms》ディレクトリに解凍してください。" IDS_2057 "(空)" IDS_2058 "ZIPイメージ (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0すべてのファイル (*.*)\0*.*\0" IDS_2059 "高速" @@ -426,7 +426,7 @@ BEGIN IDS_2070 "ポート (COM & LPT)" IDS_2071 "ストレージコントローラ" IDS_2072 "ハードディスク" - IDS_2073 "フロッピー・CD-ROMドライブ" + IDS_2073 "フロッピー/CD-ROMドライブ" IDS_2074 "その他のリムーバブルデバイス" IDS_2075 "その他の周辺機器" IDS_2076 "表面イメージ (*.86F)\0*.86F\0" @@ -479,7 +479,7 @@ BEGIN IDS_2119 "終了" IDS_2120 "ROMが見つかりません" IDS_2121 "設定を保存しますか?" - IDS_2122 "これにより、エミュレートされたマシンが再起動されます。" + IDS_2122 "保存すると使用中のマシンが再起動されます。" IDS_2123 "保存" IDS_2124 "86Boxについて" IDS_2125 "86Box v" EMU_VERSION @@ -492,7 +492,7 @@ BEGIN #else #define LIB_NAME_PCAP "libpcap" #endif - IDS_2129 LIB_NAME_PCAP "がインストールされてるか、" LIB_NAME_PCAP "に対応したネットワークに接続されてるかを確認してください。" + IDS_2129 LIB_NAME_PCAP "がインストールされてるか、" LIB_NAME_PCAP "に対応したネットワークに接続されてるか確認してください。" IDS_2130 "不正な設定です" #ifdef _WIN32 #define LIB_NAME_FREETYPE "freetype.dll" @@ -524,7 +524,7 @@ BEGIN IDS_2143 "OpenGLシェーダー (*.GLSL)\0*.GLSL\0すべてのファイル (*.*)\0*.*\0" IDS_2144 "OpenGLの設定" IDS_2145 "サポートされていない設定を読み込んでいます" - IDS_2146 "選択したマシンに基づくCPUタイプのフィルタリングは、このエミュレートされたマシンでは無効になっています。\n\nこれにより、選択したマシンと互換性のないCPUが選択できます。 ただし、マシンBIOSまたは他のソフトウェアとの互換性が失われる可能性があります。\n\nこの設定の有効化は正式的にサポートされていません。また、バグレポートが無効として閉じられる場合があります。" + IDS_2146 "選択したマシンに基づくCPUタイプのフィルタリングは、このエミュレートされたマシンでは無効になっています。\n\nこれにより、選択したマシンと互換性のないCPUが選択できます。 ただし、マシンのBIOSまたは他のソフトウェアとの互換性が失われる可能性があります。\n\nこの設定の有効化は公式サポートができません。また、バグレポートが無効として閉じられる場合があります。" IDS_2147 "つづく" IDS_2148 "カセット: %s" IDS_2149 "カセットイメージ (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0すべてのファイル (*.*)\0*.*\0" diff --git a/src/win/languages/ko-KR.rc b/src/win/languages/ko-KR.rc index 4ab9a3455..4562fdbce 100644 --- a/src/win/languages/ko-KR.rc +++ b/src/win/languages/ko-KR.rc @@ -31,10 +31,10 @@ BEGIN END POPUP "표시(&V)" BEGIN - MENUITEM "상태 바 숨김(&H)", IDM_VID_HIDE_STATUS_BAR + MENUITEM "상태 바 숨기기(&H)", IDM_VID_HIDE_STATUS_BAR MENUITEM SEPARATOR - MENUITEM "창 크기 변경 가능(&R)", IDM_VID_RESIZE - MENUITEM "창 크기와 위치를 기억(&E)", IDM_VID_REMEMBER + MENUITEM "창 크기 조절 가능하게 하기(&R)", IDM_VID_RESIZE + MENUITEM "창 크기와 위치를 기억하기(&E)", IDM_VID_REMEMBER MENUITEM SEPARATOR POPUP "렌더러(&N)" BEGIN @@ -48,7 +48,7 @@ BEGIN END MENUITEM SEPARATOR MENUITEM "창 크기 지정하기...", IDM_VID_SPECIFY_DIM - MENUITEM "4:3으로 맞추기(&O)", IDM_VID_FORCE43 + MENUITEM "화면 비율을 4:3으로 맞추기(&O)", IDM_VID_FORCE43 POPUP "창 표시 배율(&W)" BEGIN MENUITEM "0.5배(&0)", IDM_VID_SCALE_1X @@ -73,8 +73,8 @@ BEGIN END POPUP "E&GA/(S)VGA 설정" BEGIN - MENUITEM "색상 반전된 VGA 모니터(&)", IDM_VID_INVERT - POPUP "VGA 화면 유형(&T)" + MENUITEM "색상 반전된 VGA 모니터(&I)", IDM_VID_INVERT + POPUP "VGA 화면 종류(&T)" BEGIN MENUITEM "RGB 천연색(&C)", IDM_VID_GRAY_RGB MENUITEM "RGB 회색조(&R)", IDM_VID_GRAY_MONO @@ -97,7 +97,7 @@ BEGIN POPUP "도구(&T)" BEGIN MENUITEM "설정(&S)...", IDM_CONFIG - MENUITEM "상태 바 아이콘 업데이트(&U)", IDM_UPDATE_ICONS + MENUITEM "상태 바 아이콘 갱신하기(&U)", IDM_UPDATE_ICONS MENUITEM SEPARATOR MENUITEM "스크린샷 찍기(&C)\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR @@ -130,7 +130,7 @@ BEGIN MENUITEM "IDE 로그 켜기\tCtrl+F8", IDM_LOG_IDE # endif # ifdef ENABLE_SERIAL_LOG - MENUITEM "시리얼 포트 로그 켜기\tCtrl+F3", IDM_LOG_SERIAL + MENUITEM "직렬 포트 로그 켜기\tCtrl+F3", IDM_LOG_SERIAL # endif # ifdef ENABLE_NIC_LOG MENUITEM "네트워크 로그 켜기\tCtrl+F9", IDM_LOG_NIC @@ -288,7 +288,7 @@ END #define STR_WIDTH "가로:" #define STR_HEIGHT "세로:" -#define STR_LOCK_TO_SIZE "이 크기를 고정" +#define STR_LOCK_TO_SIZE "크기 고정" #define STR_MACHINE_TYPE "머신 종류:" #define STR_MACHINE "기종:" @@ -296,7 +296,7 @@ END #define STR_CPU_TYPE "CPU 종류:" #define STR_SPEED "속도:" #define STR_FPU "FPU:" -#define STR_WAIT_STATES "지연 시간:" +#define STR_WAIT_STATES "대기 상태:" #define STR_MB "MB" #define STR_MEMORY "메모리:" #define STR_TIME_SYNC "시간 동기화" @@ -339,8 +339,8 @@ END #define STR_PARALLEL2 "병렬 포트 2" #define STR_PARALLEL3 "병렬 포트 3" -#define STR_HDC "HD컨트롤러:" -#define STR_FDC "FD컨트롤러:" +#define STR_HDC "HD 컨트롤러:" +#define STR_FDC "FD 컨트롤러:" #define STR_IDE_TER "제3의 IDE 컨트롤러" #define STR_IDE_QUA "제4의 IDE 컨트롤러" #define STR_SCSI "SCSI" @@ -365,7 +365,7 @@ END #define STR_SIZE_MB "용량(MB):" #define STR_TYPE "형식:" #define STR_IMG_FORMAT "이미지 포맷:" -#define STR_BLOCK_SIZE "블럭 사이즈:" +#define STR_BLOCK_SIZE "블록 크기:" #define STR_FLOPPY_DRIVES "플로피 드라이브:" #define STR_TURBO "고속 동작" @@ -426,7 +426,7 @@ BEGIN IDS_2070 "포트 (COM & LPT)" IDS_2071 "장치 컨트롤러" IDS_2072 "하드 디스크" - IDS_2073 "플로피 / CD-ROM 드라이브" + IDS_2073 "플로피 / CD-ROM" IDS_2074 "기타 이동식 저장장치" IDS_2075 "기타 주변기기" IDS_2076 "표면 이미지 (*.86F)\0*.86F\0" @@ -448,7 +448,7 @@ BEGIN IDS_2088 "KB" IDS_2089 "비디오 렌더러를 초기화할 수 없습니다." IDS_2090 "기본값" - IDS_2091 "지연 시간 %i" + IDS_2091 "%i 대기 상태" IDS_2092 "형식" IDS_2093 "PCap 설정에 실패했습니다" IDS_2094 "PCap 장치가 없습니다" @@ -524,7 +524,7 @@ BEGIN IDS_2143 "OpenGL 쉐이더 (*.GLSL)\0*.GLSL\0모든 파일 (*.*)\0*.*\0" IDS_2144 "OpenGL 설정" IDS_2145 "지원하지 않는 설정입니다" - IDS_2146 "이 에뮬레이트된 기종에 대해 선택한 기종을 기반으로 하는 CPU 타입 필터링이 사용되지 않도록 설정되었습니다.\n\n따라서 선택된 머신과 호환되지 않는 CPU를 선택하실 수 있습니다. 하지만 BIOS 또는 다른 소프트웨어와 호환되지 않을 수 있습니다.\n\n이 설정을 활성화하는 것은 공식적으로 지원되지 않으며, 제출된 버그 보고서는 유효하지 않음으로 닫힐 수 있습니다." + IDS_2146 "이 에뮬레이트된 기종에 대해 선택한 기종을 기반으로 하는 CPU 종류 필터링이 사용되지 않도록 설정되었습니다.\n\n따라서 선택된 머신과 호환되지 않는 CPU를 선택하실 수 있습니다. 하지만 BIOS 또는 다른 소프트웨어와 호환되지 않을 수 있습니다.\n\n이 설정을 활성화하는 것은 공식적으로 지원되지 않으며, 제출된 버그 보고서는 유효하지 않음으로 닫힐 수 있습니다." IDS_2147 "계속" IDS_2148 "카세트: %s" IDS_2149 "카세트 이미지 (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0모든 파일 (*.*)\0*.*\0" @@ -547,7 +547,7 @@ BEGIN IDS_4106 "하드 디스크 이미지 (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0모든 파일 (*.*)\0*.*\0" IDS_4107 "파일을 읽을 수 없습니다" IDS_4108 "파일을 저장할 수 없습니다" - IDS_4109 "512 바이트 이외의 섹터 용량을 가진 HDI 또는 HDX 형식의 이미지를 생성할 수 없습니다" + IDS_4109 "512 바이트 이외의 섹터 크기를 가진 HDI 또는 HDX 형식의 이미지를 생성할 수 없습니다" IDS_4110 "USB는 아직 지원하지 않습니다" IDS_4111 "디스크 이미지 파일이 이미 존재합니다" IDS_4112 "올바른 파일명을 지정해 주세요." @@ -557,7 +557,7 @@ BEGIN IDS_4116 "디스크 이미지가 너무 큽니다" IDS_4117 "새로 생성한 드라이브의 파티션 설정과 포맷을 꼭 해주세요." IDS_4118 "선택하신 파일을 덮어씌웁니다. 사용하시겠습니까?" - IDS_4119 "지원하지 않는 디스크 이미지" + IDS_4119 "지원하지 않는 디스크 이미지입니다" IDS_4120 "덮어쓰기" IDS_4121 "덮어쓰지 않음" IDS_4122 "Raw 이미지 (.img)" @@ -566,8 +566,8 @@ BEGIN IDS_4125 "고정 사이즈 VHD (.vhd)" IDS_4126 "동적 사이즈 VHD (.vhd)" IDS_4127 "디퍼런싱 VHD (.vhd)" - IDS_4128 "대형 블럭 (2 MB)" - IDS_4129 "소형 블럭 (512 KB)" + 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타임스탬프를 수정하시겠습니까?" From 051b41ea6ccebc749af7b2b50f0f2807accce17a Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 01:21:11 +0100 Subject: [PATCH 26/41] Updated MacOS bundle version. --- src/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2bb82ca4e..7e815c5e9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -114,9 +114,9 @@ if(APPLE) set_target_properties(86Box PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/mac/Info.plist.in) set(MACOSX_BUNDLE_GUI_IDENTIFIER net.86Box.86Box) set(MACOSX_BUNDLE_BUNDLE_NAME 86Box) - set(MACOSX_BUNDLE_BUNDLE_VERSION 3.0.${EMU_BUILD_NUM}) - set(MACOSX_BUNDLE_SHORT_VERSION_STRING "3.0.${EMU_BUILD_NUM}") - set(MACOSX_BUNDLE_LONG_VERSION_STRING "3.0.${EMU_BUILD_NUM}") + set(MACOSX_BUNDLE_BUNDLE_VERSION 3.1.${EMU_BUILD_NUM}) + set(MACOSX_BUNDLE_SHORT_VERSION_STRING "3.1.${EMU_BUILD_NUM}") + set(MACOSX_BUNDLE_LONG_VERSION_STRING "3.1.${EMU_BUILD_NUM}") set(MACOSX_BUNDLE_ICON_FILE 86Box.icns) set(MACOSX_BUNDLE_INFO_STRING "A emulator of old computers") set(MACOSX_BUNDLE_COPYRIGHT "© 2007-${EMU_COPYRIGHT_YEAR} 86Box contributors") From 9e00ac9c9fec1f9b1aed25a67c2861a1be23403c Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 01:24:27 +0100 Subject: [PATCH 27/41] Attempted fix for RtMidi. --- src/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7e815c5e9..2583038d5 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -164,6 +164,8 @@ if(VCPKG_TOOLCHAIN) else() find_package(PkgConfig REQUIRED) pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET rtmidi) + if (NOT RTMIDI_FOUND) + pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET librtmidi) target_link_libraries(86Box PkgConfig::RTMIDI) if(WIN32) From 7064e768962e929fe0e6c1bea26b0d10b1dc9191 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= Date: Sat, 4 Dec 2021 01:31:30 +0100 Subject: [PATCH 28/41] Revert "Attempted fix for RtMidi." This reverts commit 9e00ac9c9fec1f9b1aed25a67c2861a1be23403c. --- src/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2583038d5..7e815c5e9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -164,8 +164,6 @@ if(VCPKG_TOOLCHAIN) else() find_package(PkgConfig REQUIRED) pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET rtmidi) - if (NOT RTMIDI_FOUND) - pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET librtmidi) target_link_libraries(86Box PkgConfig::RTMIDI) if(WIN32) From 69b40be0cb94ebb4be8df6b749baf718daac915e Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 01:32:20 +0100 Subject: [PATCH 29/41] Missing endif(). --- src/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2583038d5..fb1f13577 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -166,6 +166,7 @@ else() pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET rtmidi) if (NOT RTMIDI_FOUND) pkg_check_modules(RTMIDI REQUIRED IMPORTED_TARGET librtmidi) + endif() target_link_libraries(86Box PkgConfig::RTMIDI) if(WIN32) From ed3cb694a775e80eb17fd86decaacba960214077 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 02:21:10 +0100 Subject: [PATCH 30/41] Fixes to the Croatian and Slovenian translations. --- src/win/languages/hr-HR.rc | 196 ++++++++++++++++++------------------- src/win/languages/sl-SI.rc | 22 ++--- 2 files changed, 109 insertions(+), 109 deletions(-) diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index db1191e1e..ed4dbe6f6 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -15,26 +15,26 @@ LANGUAGE LANG_CROATIAN, SUBLANG_DEFAULT MainMenu MENU DISCARDABLE BEGIN - POPUP "&Akcija" + POPUP "&Radnje" BEGIN - MENUITEM "&Tipkovnica zahtijeva snimanje miša", IDM_ACTION_KBD_REQ_CAPTURE + MENUITEM "&Tipkovnica zahtijeva hvatanje miša", IDM_ACTION_KBD_REQ_CAPTURE MENUITEM "&Desni CTRL je lijevi ALT", IDM_ACTION_RCTRL_IS_LALT MENUITEM SEPARATOR - MENUITEM "&Hard Reset...", IDM_ACTION_HRESET + MENUITEM "&Ponovno pokretanje...", 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 "&Pauza", IDM_ACTION_PAUSE MENUITEM SEPARATOR - MENUITEM "&Izlaz...", IDM_ACTION_EXIT + MENUITEM "Iz&laz...", IDM_ACTION_EXIT END POPUP "&Pogled" BEGIN - MENUITEM "&Sakrij statusnu traku", IDM_VID_HIDE_STATUS_BAR + MENUITEM "&Sakrij statusni redak", IDM_VID_HIDE_STATUS_BAR MENUITEM SEPARATOR MENUITEM "&Prozor s promjenjivim veličinama", IDM_VID_RESIZE - MENUITEM "&Zapamtite veličinu && poziciju", IDM_VID_REMEMBER + MENUITEM "&Zapamtite veličinu i položaj", IDM_VID_REMEMBER MENUITEM SEPARATOR POPUP "&Renderer" BEGIN @@ -47,9 +47,9 @@ BEGIN #endif END MENUITEM SEPARATOR - MENUITEM "Odrediti dimenzije...", IDM_VID_SPECIFY_DIM + MENUITEM "Odrediti veličinu...", IDM_VID_SPECIFY_DIM MENUITEM "&4:3 omjer prikaza", IDM_VID_FORCE43 - POPUP "&Faktor skaliranje prozora" + POPUP "&Faktor skaliranja prozora" BEGIN MENUITEM "&0,5x", IDM_VID_SCALE_1X MENUITEM "&1x", IDM_VID_SCALE_2X @@ -58,92 +58,92 @@ BEGIN END POPUP "Metoda filtriranja" BEGIN - MENUITEM "&Nearest", IDM_VID_FILTER_NEAREST - MENUITEM "&Linear", IDM_VID_FILTER_LINEAR + MENUITEM "&Najbliža", IDM_VID_FILTER_NEAREST + MENUITEM "&Linearna", IDM_VID_FILTER_LINEAR END MENUITEM "&HiDPI skaliranje", IDM_VID_HIDPI MENUITEM SEPARATOR - MENUITEM "&Cijelozaslonki način\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN - POPUP "&Način rastezanja preko cijelog zaslona" + MENUITEM "&Cijelozaslonski način\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN + POPUP "&Način cijelozaslonskog rastezanja" BEGIN - MENUITEM "&Razvlačenje preko cijelog zaslona", IDM_VID_FS_FULL + MENUITEM "&Razvuci na cijeli zaslona", IDM_VID_FS_FULL MENUITEM "&4:3", IDM_VID_FS_43 MENUITEM "&Kvadratni pikseli (zadrži omjer)", IDM_VID_FS_KEEPRATIO - MENUITEM "&Integer skaliranje", IDM_VID_FS_INT + MENUITEM "&Cijelobrojno skaliranje", IDM_VID_FS_INT END POPUP "E&GA/(S)VGA postavke" BEGIN - MENUITEM "&Invertirani VGA monitor", IDM_VID_INVERT - POPUP "&Tip VGA monitora" + MENUITEM "&Obrni boje zaslona VGA", IDM_VID_INVERT + POPUP "&Tip zaslona VGA" BEGIN - MENUITEM "RGB &Boja", IDM_VID_GRAY_RGB - MENUITEM "&RGB s sivih tonova", IDM_VID_GRAY_MONO - MENUITEM "&Jantarni monitor", IDM_VID_GRAY_AMBER - MENUITEM "&Zeleni monitor", IDM_VID_GRAY_GREEN - MENUITEM "&Bijeli monitor", IDM_VID_GRAY_WHITE + MENUITEM "RGB u &boji", IDM_VID_GRAY_RGB + MENUITEM "&RGB u nijansama sive boje", IDM_VID_GRAY_MONO + MENUITEM "&Jantarni zaslon", IDM_VID_GRAY_AMBER + MENUITEM "&Zeleni zaslon", IDM_VID_GRAY_GREEN + MENUITEM "&Bijeli zaslon", IDM_VID_GRAY_WHITE END - POPUP "&Vrsta konverzije sivih tonova" + POPUP "&Vrsta konverzije nijansa sive boje" BEGIN MENUITEM "BT&601 (NTSC/PAL)", IDM_VID_GRAYCT_601 MENUITEM "BT&709 (HDTV)", IDM_VID_GRAYCT_709 - MENUITEM "&Prosječno", IDM_VID_GRAYCT_AVE + MENUITEM "&Prosjek", IDM_VID_GRAYCT_AVE END END MENUITEM SEPARATOR - MENUITEM "CGA/PCjr/Tandy/E&GA/(S)VGA overscan", IDM_VID_OVERSCAN - MENUITEM "Promjena kontrasta za &monokromatski ekran", IDM_VID_CGACON + MENUITEM "&Višak slike CGA/PCjr/Tandy/EGA/(S)VGA", IDM_VID_OVERSCAN + MENUITEM "&Promjeni kontrast za crno-bijeli zaslon", IDM_VID_CGACON END MENUITEM "&Mediji", IDM_MEDIA POPUP "&Alati" BEGIN MENUITEM "&Opcije...", IDM_CONFIG - MENUITEM "&Ažuriranje ikone statusne trake", IDM_UPDATE_ICONS + MENUITEM "&Ažuriraj ikone statusnog redka", IDM_UPDATE_ICONS MENUITEM SEPARATOR - MENUITEM "Napravite &snimku zaslona\tCtrl+F11", IDM_ACTION_SCREENSHOT + MENUITEM "Napravi &snimku zaslona\tCtrl+F11", IDM_ACTION_SCREENSHOT MENUITEM SEPARATOR MENUITEM "&Postavke...", IDM_PREFERENCES - MENUITEM "Omogući integraciju &Discord-a", IDM_DISCORD + MENUITEM "Omogući integraciju sa programom &Discord", IDM_DISCORD MENUITEM SEPARATOR MENUITEM "&Pojačanje zvuka...", IDM_SND_GAIN #ifdef MTR_ENABLED MENUITEM SEPARATOR - MENUITEM "Započni tracing\tCtrl+T", IDM_ACTION_BEGIN_TRACE - MENUITEM "Prestani tracing\tCtrl+T", IDM_ACTION_END_TRACE + MENUITEM "Z&apočni praćenje\tCtrl+T", IDM_ACTION_BEGIN_TRACE + MENUITEM "&Svrši praćenje\tCtrl+T", IDM_ACTION_END_TRACE #endif END #if defined(ENABLE_LOG_TOGGLES) || defined(ENABLE_LOG_COMMANDS) POPUP "&Logging" BEGIN # ifdef ENABLE_BUSLOGIC_LOG - MENUITEM "Omogući BusLogic logging\tCtrl+F4", IDM_LOG_BUSLOGIC + MENUITEM "Omogući bilježenje za BusLogic\tCtrl+F4", IDM_LOG_BUSLOGIC # endif # ifdef ENABLE_CDROM_LOG - MENUITEM "Omogući logging CD-ROM-a\tCtrl+F5", IDM_LOG_CDROM + MENUITEM "Omogući bilježenje za CD-ROM\tCtrl+F5", IDM_LOG_CDROM # endif # ifdef ENABLE_D86F_LOG - MENUITEM "Omogući logging disketa (86F)\tCtrl+F6", IDM_LOG_D86F + MENUITEM "Omogući bilježenje za diskete (86F)\tCtrl+F6", IDM_LOG_D86F # endif # ifdef ENABLE_FDC_LOG - MENUITEM "Omogući logging floppy kontrolera\tCtrl+F7", IDM_LOG_FDC + MENUITEM "Omogući bilježenje za disketni krmilnik\tCtrl+F7", IDM_LOG_FDC # endif # ifdef ENABLE_IDE_LOG - MENUITEM "Omogući IDE logging\tCtrl+F8", IDM_LOG_IDE + MENUITEM "Omogući bilježenje za IDE\tCtrl+F8", IDM_LOG_IDE # endif # ifdef ENABLE_SERIAL_LOG - MENUITEM "Omogući logging serijskog porta\tCtrl+F3", IDM_LOG_SERIAL + MENUITEM "Omogući bilježenje za serijska vrata\tCtrl+F3", IDM_LOG_SERIAL # endif # ifdef ENABLE_NIC_LOG - MENUITEM "Omogući mrežni logging\tCtrl+F9", IDM_LOG_NIC + MENUITEM "Omogući bilježenje za omrežje\tCtrl+F9", IDM_LOG_NIC # endif # ifdef ENABLE_LOG_COMMANDS # ifdef ENABLE_LOG_TOGGLES MENUITEM SEPARATOR # endif # ifdef ENABLE_LOG_BREAKPOINT - MENUITEM "&Breakpoint za logging\tCtrl+F10", IDM_LOG_BREAKPOINT + MENUITEM "&Zabilježi prekidnu točku\tCtrl+F10", IDM_LOG_BREAKPOINT # endif # ifdef ENABLE_VRAM_DUMP - MENUITEM "Dump od &video RAM-a\tCtrl+F1", IDM_DUMP_VRAM + MENUITEM "&Ispiši memoriju zaslona\tCtrl+F1", IDM_DUMP_VRAM # endif # endif END @@ -170,9 +170,9 @@ BEGIN MENUITEM "Postojeća slika (&zaštićena od pisanja)...", IDM_CASSETTE_IMAGE_EXISTING_WP MENUITEM SEPARATOR MENUITEM "&Snimi", IDM_CASSETTE_RECORD - MENUITEM "&Pusti", IDM_CASSETTE_PLAY - MENUITEM "&Premotajte na početak", IDM_CASSETTE_REWIND - MENUITEM "&Preskočite do kraja", IDM_CASSETTE_FAST_FORWARD + MENUITEM "&Pokreni", IDM_CASSETTE_PLAY + MENUITEM "P&remotaj na početak", IDM_CASSETTE_REWIND + MENUITEM "&Preskoči do kraja", IDM_CASSETTE_FAST_FORWARD MENUITEM SEPARATOR MENUITEM "&Izbaci", IDM_CASSETTE_EJECT END @@ -197,7 +197,7 @@ BEGIN MENUITEM "&Postojeća slika...", IDM_FLOPPY_IMAGE_EXISTING MENUITEM "Postojeća slika (&zaštićena od pisanja)...", IDM_FLOPPY_IMAGE_EXISTING_WP MENUITEM SEPARATOR - MENUITEM "&Exportiraj u 86F format...", IDM_FLOPPY_EXPORT_TO_86F + MENUITEM "&Izvozi u 86F...", IDM_FLOPPY_EXPORT_TO_86F MENUITEM SEPARATOR MENUITEM "&Izbaci", IDM_FLOPPY_EJECT END @@ -246,9 +246,9 @@ END VidGLSubMenu MENU DISCARDABLE BEGIN - POPUP "&Ciljni framerate" + POPUP "&Ciljni broj okvira u sekundi" BEGIN - MENUITEM "&Sinkronizacija s videom", IDM_VID_GL_FPS_BLITTER + MENUITEM "&Sinkroniziraj s videom", IDM_VID_GL_FPS_BLITTER MENUITEM "&25 fps", IDM_VID_GL_FPS_25 MENUITEM "&30 fps", IDM_VID_GL_FPS_30 MENUITEM "&50 fps", IDM_VID_GL_FPS_50 @@ -272,8 +272,8 @@ END #define STR_CONFIG "Opcije" #define STR_SPECIFY_DIM "Odredite glavne dimenzije prozora" -#define STR_OK "OK" -#define STR_CANCEL "Odustani" +#define STR_OK "U redu" +#define STR_CANCEL "Otkaži" #define STR_GLOBAL "Spremite ove postavke kao &globalne zadane postavke" #define STR_DEFAULT "Zadano" #define STR_LANGUAGE "Jezik:" @@ -283,7 +283,7 @@ END #define STR_FILE_NAME "Ime datoteke:" #define STR_DISK_SIZE "Veličina diska:" -#define STR_RPM_MODE "Način rotacije:" +#define STR_RPM_MODE "Način broja okretaja:" #define STR_PROGRESS "Napredak:" #define STR_WIDTH "Širina:" @@ -300,44 +300,44 @@ END #define STR_MB "MB" #define STR_MEMORY "Memorija:" #define STR_TIME_SYNC "Sinkronizacija vremena" -#define STR_DISABLED "Deaktivirano" +#define STR_DISABLED "Isključeno" #define STR_ENABLED_LOCAL "Uključeno (lokalno vrijeme)" #define STR_ENABLED_UTC "Uključeno (UTC)" #define STR_DYNAREC "Dinamički rekompilator" -#define STR_VIDEO "Video kartica:" +#define STR_VIDEO "Video:" #define STR_VOODOO "Voodoo grafika" #define STR_MOUSE "Miš:" -#define STR_JOYSTICK "Joystick:" -#define STR_JOY1 "Joystick 1..." -#define STR_JOY2 "Joystick 2..." -#define STR_JOY3 "Joystick 3..." -#define STR_JOY4 "Joystick 4..." +#define STR_JOYSTICK "Palica za igru:" +#define STR_JOY1 "Palica za igru 1..." +#define STR_JOY2 "Palica za igru 2..." +#define STR_JOY3 "Palica za igru 3..." +#define STR_JOY4 "Palica za igru 4..." -#define STR_SOUND "Sound kartica:" -#define STR_MIDI "MIDI izlazni uređaj:" -#define STR_MIDI_IN "MIDI ulazni uređaj:" -#define STR_MPU401 "Samostalni MPU-401 uređaj" +#define STR_SOUND "Zvučna kartica:" +#define STR_MIDI "Izlazni uređaj MIDI:" +#define STR_MIDI_IN "Ulazni uređaj MIDI:" +#define STR_MPU401 "Samostalni MPU-401" #define STR_SSI "Innovation SSI-2001" #define STR_CMS "CMS / Game Blaster" #define STR_GUS "Gravis Ultrasound" -#define STR_FLOAT "Koristi FLOAT32 zvuk" +#define STR_FLOAT "Koristi FLOAT32 za zvuk" #define STR_NET_TYPE "Tip mreže:" -#define STR_PCAP "PCap uređaj:" -#define STR_NET "Mrežni adapter:" +#define STR_PCAP "Uređaj PCap:" +#define STR_NET "Mrežna kartica:" -#define STR_LPT1 "LPT1 uređaj:" -#define STR_LPT2 "LPT2 uređaj:" -#define STR_LPT3 "LPT3 uređaj:" -#define STR_SERIAL1 "Serijski port 1" -#define STR_SERIAL2 "Serijski port 2" -#define STR_SERIAL3 "Serijski port 3" -#define STR_SERIAL4 "Serijski port 4" -#define STR_PARALLEL1 "Paralelni priključak 1" -#define STR_PARALLEL2 "Paralelni priključak 2" -#define STR_PARALLEL3 "Paralelni priključak 3" +#define STR_LPT1 "Uređaj LPT1:" +#define STR_LPT2 "Uređaj LPT2:" +#define STR_LPT3 "Uređaj LPT3:" +#define STR_SERIAL1 "Serijska vrata 1" +#define STR_SERIAL2 "Serijska vrata 2" +#define STR_SERIAL3 "Serijska vrata 3" +#define STR_SERIAL4 "Serijska vrata 4" +#define STR_PARALLEL1 "Paralelna vrata 1" +#define STR_PARALLEL2 "Paralelna vrata 2" +#define STR_PARALLEL3 "Paralelna vrata 3" #define STR_HDC "Kontroler tvrdog diska:" #define STR_FDC "Kontroler diskete:" @@ -351,14 +351,14 @@ END #define STR_CASSETTE "Audio kaseta" #define STR_HDD "Tvrdi diskovi:" -#define STR_NEW "&Novo..." +#define STR_NEW "&Novi..." #define STR_EXISTING "&Postojeći..." -#define STR_REMOVE "&Ukloniti" -#define STR_BUS "Međusklop:" +#define STR_REMOVE "&Ukloni" +#define STR_BUS "Sabirnica:" #define STR_CHANNEL "Kanal:" #define STR_ID "ID:" -#define STR_SPECIFY "&Odredite..." +#define STR_SPECIFY "&Odredi..." #define STR_SECTORS "Sektori:" #define STR_HEADS "Glave:" #define STR_CYLS "Cilindri:" @@ -368,22 +368,22 @@ END #define STR_BLOCK_SIZE "Veličina slike:" #define STR_FLOPPY_DRIVES "Disketni pogoni:" -#define STR_TURBO "Turbo timingovi" -#define STR_CHECKBPB "Provjerite BPB" +#define STR_TURBO "Turbo vrijemena" +#define STR_CHECKBPB "Provjeraj BPB" #define STR_CDROM_DRIVES "CD-ROM pogoni:" #define STR_MO_DRIVES "MO pogoni:" #define STR_ZIP_DRIVES "ZIP pogoni:" #define STR_250 "ZIP 250" -#define STR_ISARTC "ISA RTC:" -#define STR_ISAMEM "ISA proširenje memorije" +#define STR_ISARTC "Ura u stvarnom vrijemenu RTC:" +#define STR_ISAMEM "Proširenje memorije ISA" #define STR_ISAMEM_1 "Kartica 1:" #define STR_ISAMEM_2 "Kartica 2:" #define STR_ISAMEM_3 "Kartica 3:" #define STR_ISAMEM_4 "Kartica 4:" -#define STR_BUGGER "ISABugger uređaj" -#define STR_POSTCARD "POST kartica" +#define STR_BUGGER "Uređaj ISABugger" +#define STR_POSTCARD "Kartica POST" #define FONT_SIZE 9 #define FONT_NAME "Segoe UI" @@ -400,7 +400,7 @@ BEGIN 2048 "86Box" IDS_2049 "Greška" IDS_2050 "Fatalna greška" - IDS_2051 "" + IDS_2051 "" IDS_2052 "Pritisnite CTRL+ALT+PAGE DOWN za povratak u prozorski način rada." IDS_2053 "Brzina" IDS_2054 "ZIP %03i %i (%s): %ls" @@ -424,7 +424,7 @@ BEGIN IDS_2068 "Zvuk" IDS_2069 "Mreža" IDS_2070 "Priključci (COM & LPT)" - IDS_2071 "Kontroleri za diskovi" + IDS_2071 "Kontroleri za diskove" IDS_2072 "Tvrdi diskovi" IDS_2073 "Floppy & CD-ROM pogoni" IDS_2074 "Ostali uklonjivi uređaji" @@ -446,22 +446,22 @@ BEGIN IDS_2086 "MB" IDS_2087 "Provjeri BPB" IDS_2088 "KB" - IDS_2089 "Nije moguće inicijalizirati videorenderer." + IDS_2089 "Nije moguće inicijalizirati renderer." IDS_2090 "Standard" IDS_2091 "%i stanje čekanja" IDS_2092 "Tip" IDS_2093 "Postavljanje PCap-a nije uspjelo" IDS_2094 "Nema PCap uređaja" IDS_2095 "Nevažeći PCap uređaj" - IDS_2096 "Standardni joystick(e) s 2 tipke" - IDS_2097 "Standardni joystick s 4 tipke" - IDS_2098 "Standardni joystick s 6 tipke" - IDS_2099 "Standardni joystick s 8 tipke" + IDS_2096 "Standardna palica za igru s 2 tipke" + IDS_2097 "Standardna palica za igru s 4 tipke" + IDS_2098 "Standardna palica za igru s 6 tipke" + IDS_2099 "Standardna palica za igru s 8 tipke" IDS_2100 "CH Flightstick Pro" IDS_2101 "Microsoft SideWinder Pad" IDS_2102 "Thrustmaster Flight Control System" IDS_2103 "Bez" - IDS_2104 "Nije moguće učitati akceleratore tipkovnice." + IDS_2104 "Nije moguće učitati ubrzivače tipkovnice." IDS_2105 "Nije moguće registrirati neobrađeni unos." IDS_2106 "%u" IDS_2107 "%u MB (CHS: %i, %i, %i)" @@ -469,15 +469,15 @@ BEGIN IDS_2109 "Sve slike (*.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\0Napredne sektorske slike (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Osnovne sektorske slike (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0Flux slike (*.FDI)\0*.FDI\0Površne slike (*.86F;*.MFM)\0*.86F;*.MFM\0Sve datoteke (*.*)\0*.*\0" IDS_2110 "Nije moguće inicijalizirati FreeType" IDS_2111 "Nije moguće inicijalizirati SDL, SDL2.dll je potrebno" - IDS_2112 "Jeste li sigurni da želite hard resetirati emulirano računalo?" - IDS_2113 "Jeste li sigurni da želite izaći iz 86Boxa?" + IDS_2112 "Jeste li sigurni da želite hard resetirati emulirani sistem?" + IDS_2113 "Jeste li sigurni da želite zatvoriti 86Box?" IDS_2114 "Nije moguće inicijalizirati GhostScript" IDS_2115 "MO %i (%ls): %ls" IDS_2116 "MO slike (*.IM?;*.MDI)\0*.IM?;*.MDI\0Svi datoteke (*.*)\0*.*\0" IDS_2117 "Dobrodošli u 86Box!" - IDS_2118 "Interni kontroler" + IDS_2118 "Uunutarnji kontroler" IDS_2119 "Izlazi" - IDS_2120 "Nisu pronađeni ROM datoteke" + IDS_2120 "Nisu pronađene ROM datoteke" IDS_2121 "Želite li spremiti postavke?" IDS_2122 "Ovo će napraviti hard resetiranje emuliranog sistema." IDS_2123 "Spremaj" @@ -492,7 +492,7 @@ BEGIN #else #define LIB_NAME_PCAP "libpcap" #endif - IDS_2129 "Provjerite je li " LIB_NAME_PCAP " instaliran i jeste li na " LIB_NAME_PCAP "-kompatibilnoj mrežnoj vezi." + IDS_2129 "Provjerite je li " LIB_NAME_PCAP " instaliran i jeste li na mreži, kompadibilnoj s " LIB_NAME_PCAP "." IDS_2130 "Nevažeća konfiguracija" #ifdef _WIN32 #define LIB_NAME_FREETYPE "freetype.dll" @@ -512,7 +512,7 @@ BEGIN #define LIB_NAME_FLUIDSYNTH "libfluidsynth" #endif IDS_2133 LIB_NAME_FLUIDSYNTH " je potrebno za FluidSynth MIDI izlaz." - IDS_2134 "Ulazak u cijelozaslonski način" + IDS_2134 "Ulazim u cijelozaslonski način" IDS_2135 "Ne pokazi više ovu poruku" IDS_2136 "Ne izlazi" IDS_2137 "Resetiraj" @@ -569,10 +569,10 @@ BEGIN IDS_4128 "Veliki blokovi (2 MB)" IDS_4129 "Mali blokovi (512 KB)" IDS_4130 "VHD slike (*.VHD)\0*.VHD\0Sve datoteke (*.*)\0*.*\0" - IDS_4131 "Izaberi matični VHD" + IDS_4131 "Izaberi matičnu sliku VHD" IDS_4132 "To bi moglo značiti da je matična slika promijenjena nakon što je stvorena različita slika.\n\nTo se također može dogoditi ako su slike premještene ili kopirane, ili greška u programu koji je stvorio ovaj disk.\n\nŽelite li popraviti vremenske oznake?" IDS_4133 "Vremenske ozanke matične i poređenog diska ne odgovaraju." - IDS_4134 "Nisam mogao popraviti vremensku oznaku VHD slike." + IDS_4134 "Ne možem popraviti vremensku oznaku slike VHD." IDS_4135 "%01i:%02i" IDS_4352 "MFM/RLL" diff --git a/src/win/languages/sl-SI.rc b/src/win/languages/sl-SI.rc index d8eaeb2c8..cdd9ecba3 100644 --- a/src/win/languages/sl-SI.rc +++ b/src/win/languages/sl-SI.rc @@ -115,25 +115,25 @@ BEGIN POPUP "&Beleženje" BEGIN # ifdef ENABLE_BUSLOGIC_LOG - MENUITEM "Omogoči beležnje za BusLogic\tCtrl+F4", IDM_LOG_BUSLOGIC + MENUITEM "Omogoči beleženje za BusLogic\tCtrl+F4", IDM_LOG_BUSLOGIC # endif # ifdef ENABLE_CDROM_LOG - MENUITEM "Omogoči beležnje za CD-ROM\tCtrl+F5", IDM_LOG_CDROM + MENUITEM "Omogoči beleženje za CD-ROM\tCtrl+F5", IDM_LOG_CDROM # endif # ifdef ENABLE_D86F_LOG - MENUITEM "Omogoči beležnje za diskete (86F)\tCtrl+F6", IDM_LOG_D86F + MENUITEM "Omogoči beleženje za diskete (86F)\tCtrl+F6", IDM_LOG_D86F # endif # ifdef ENABLE_FDC_LOG - MENUITEM "Omogoči beležnje za disketni krmilnik\tCtrl+F7", IDM_LOG_FDC + MENUITEM "Omogoči beleženje za disketni krmilnik\tCtrl+F7", IDM_LOG_FDC # endif # ifdef ENABLE_IDE_LOG - MENUITEM "Omogoči beležnje za IDE\tCtrl+F8", IDM_LOG_IDE + MENUITEM "Omogoči beleženje za IDE\tCtrl+F8", IDM_LOG_IDE # endif # ifdef ENABLE_SERIAL_LOG - MENUITEM "Omogoči beležnje za serijska vrata\tCtrl+F3", IDM_LOG_SERIAL + MENUITEM "Omogoči beleženje za serijska vrata\tCtrl+F3", IDM_LOG_SERIAL # endif # ifdef ENABLE_NIC_LOG - MENUITEM "Omogoči beležnje za omrežje\tCtrl+F9", IDM_LOG_NIC + MENUITEM "Omogoči beleženje za omrežje\tCtrl+F9", IDM_LOG_NIC # endif # ifdef ENABLE_LOG_COMMANDS # ifdef ENABLE_LOG_TOGGLES @@ -369,7 +369,7 @@ END #define STR_FLOPPY_DRIVES "Disketni pogoni:" #define STR_TURBO "Turbo časovniki" -#define STR_CHECKBPB "Preveri BPB" +#define STR_CHECKBPB "Preverjaj BPB" #define STR_CDROM_DRIVES "Pogoni CD-ROM:" #define STR_MO_DRIVES "Magnetno-optični pogoni:" @@ -462,7 +462,7 @@ BEGIN IDS_2102 "Thrustmaster Flight Control System" IDS_2103 "Brez" IDS_2104 "Ne morem naložiti pospeševalnikov tipkovnice." - IDS_2105 "Ne morem registrirati surovega vnosa." + IDS_2105 "Ne morem registrirati neobdelanega vnosa." IDS_2106 "%u" IDS_2107 "%u MB (CHS: %i, %i, %i)" IDS_2108 "Disketa %i (%s): %ls" @@ -492,7 +492,7 @@ BEGIN #else #define LIB_NAME_PCAP "libpcap" #endif - IDS_2129 "Prepičajte se, da je nameščen " LIB_NAME_PCAP " in da ste na omrežni povezavi, ki je združljiva z " LIB_NAME_PCAP + IDS_2129 "Prepičajte se, da je nameščen " LIB_NAME_PCAP " in da ste na omrežni povezavi, združljivi z " LIB_NAME_PCAP IDS_2130 "Neveljavna konfiguracija" #ifdef _WIN32 #define LIB_NAME_FREETYPE "freetype.dll" @@ -572,7 +572,7 @@ BEGIN IDS_4131 "Izberite starševsko sliko VHD" IDS_4132 "To lahko pomeni, da je bila starševska slika spremenjena potem, ko je že bila ustvarjena diferencialna slika.\n\nDo tega lahko pride tudi kadar so datoteke slik diska premaknjene ali kopirane, ali pa gre za hrošča v programu, ki je ustvaril ta disk.\n\nŽelite popraviti časovni žig?" IDS_4133 "Časovna žiga starševske slike diska in slike diska otroka se ne ujemata" - IDS_4134 "Ne morem popraviti časovnega žiga VHD." + IDS_4134 "Ne morem popraviti časovnega žiga slike VHD." IDS_4135 "%01i:%02i" IDS_4352 "MFM/RLL" From 3fc0a73f3e6c974468da997968de6a5f26d653f1 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 02:22:28 +0100 Subject: [PATCH 31/41] And another fix. --- src/win/languages/hr-HR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index ed4dbe6f6..b6ab67c20 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -572,7 +572,7 @@ BEGIN IDS_4131 "Izaberi matičnu sliku VHD" IDS_4132 "To bi moglo značiti da je matična slika promijenjena nakon što je stvorena različita slika.\n\nTo se također može dogoditi ako su slike premještene ili kopirane, ili greška u programu koji je stvorio ovaj disk.\n\nŽelite li popraviti vremenske oznake?" IDS_4133 "Vremenske ozanke matične i poređenog diska ne odgovaraju." - IDS_4134 "Ne možem popraviti vremensku oznaku slike VHD." + IDS_4134 "Ne mogu popraviti vremensku oznaku slike VHD." IDS_4135 "%01i:%02i" IDS_4352 "MFM/RLL" From b75a81bdc2ee7b9c8f2cf4abfa6e742719b6aa9f Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 02:24:54 +0100 Subject: [PATCH 32/41] And another. --- src/win/languages/hr-HR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index b6ab67c20..2fbaecbad 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -552,7 +552,7 @@ BEGIN IDS_4111 "Slika diska već postoji" IDS_4112 "Molimte unesite važeći naziv datoteke." IDS_4113 "Slika je stvorena" - IDS_4114 "Provjerite je li postoji datoteka i je li je čitljiva." + IDS_4114 "Provjerite je li postoji datoteka i je li čitljiva." IDS_4115 "Provjerite je li se datoteka sprema u mapu s dopuštenjima za pisanje." IDS_4116 "Slika diska je prevelika" IDS_4117 "Ne zaboravite stvoriti particije i formatirati ih na novom disku." From 7ef61299d677529e18e9ed867551afe4d85e7dcc Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 02:25:59 +0100 Subject: [PATCH 33/41] And another. --- src/win/languages/hr-HR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index 2fbaecbad..348cd13f0 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -423,7 +423,7 @@ BEGIN IDS_2067 "Ulazni uređaji" IDS_2068 "Zvuk" IDS_2069 "Mreža" - IDS_2070 "Priključci (COM & LPT)" + IDS_2070 "Vrata (COM & LPT)" IDS_2071 "Kontroleri za diskove" IDS_2072 "Tvrdi diskovi" IDS_2073 "Floppy & CD-ROM pogoni" From 71cca642acdeeea7cb4d7c34bc452a8088b7e12b Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 4 Dec 2021 02:27:57 +0100 Subject: [PATCH 34/41] And another. --- src/win/languages/hr-HR.rc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index 348cd13f0..df1402995 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -411,7 +411,7 @@ BEGIN IDS_2059 "Turbo" IDS_2060 "Uključeno" IDS_2061 "Isključeno" - IDS_2062 "Sve slike (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0BOsnovne sektorske slike (*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Površne slike (*.86F)\0*.86F\0" + IDS_2062 "Sve slike (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0BOsnovne sektorske slike (*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Površinske slike (*.86F)\0*.86F\0" IDS_2063 "Sistem ""%hs"" nije dostupan jer ne postoje potrebni ROM-ovi u mapu roms/machines. Prebacivanje na dostupno računalo." END @@ -429,7 +429,7 @@ BEGIN IDS_2073 "Floppy & CD-ROM pogoni" IDS_2074 "Ostali uklonjivi uređaji" IDS_2075 "Ostali periferni uređaji" - IDS_2076 "Površne slike (*.86F)\0*.86F\0" + IDS_2076 "Površinske slike (*.86F)\0*.86F\0" IDS_2077 "Kliknite da uhvatite miš" IDS_2078 "Pritisnite F8+F12 za otpustanje miša" IDS_2079 "Pritisnite F8+F12 ili srednji gumb miša za otpuštanje miša" @@ -466,7 +466,7 @@ BEGIN IDS_2106 "%u" IDS_2107 "%u MB (CHS: %i, %i, %i)" IDS_2108 "Disketa %i (%s): %ls" - IDS_2109 "Sve slike (*.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\0Napredne sektorske slike (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Osnovne sektorske slike (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0Flux slike (*.FDI)\0*.FDI\0Površne slike (*.86F;*.MFM)\0*.86F;*.MFM\0Sve datoteke (*.*)\0*.*\0" + IDS_2109 "Sve slike (*.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\0Napredne sektorske slike (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Osnovne sektorske slike (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0Flux slike (*.FDI)\0*.FDI\0Površinske slike (*.86F;*.MFM)\0*.86F;*.MFM\0Sve datoteke (*.*)\0*.*\0" IDS_2110 "Nije moguće inicijalizirati FreeType" IDS_2111 "Nije moguće inicijalizirati SDL, SDL2.dll je potrebno" IDS_2112 "Jeste li sigurni da želite hard resetirati emulirani sistem?" From 05ff0b0921efe85ca9e31b5fbcef3032c9acecfb Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Sat, 4 Dec 2021 11:35:26 -0300 Subject: [PATCH 35/41] Build script: Fix pkg-config (for rtmidi) when cross-compiling --- .ci/build.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.ci/build.sh b/.ci/build.sh index f9d5f56af..7cd0984fa 100644 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -239,6 +239,12 @@ else *) arch_gnu="$arch-linux-gnu";; esac + # Determine library directory name for this architecture. + case $arch in + x86) libdir="i386-linux-gnu";; + *) libdir="$arch_gnu";; + esac + # Create CMake toolchain file. cat << EOF > toolchain.cmake set(CMAKE_SYSTEM_NAME Linux) @@ -257,6 +263,9 @@ set(CMAKE_STRIP $arch_gnu-strip) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +set(ENV{PKG_CONFIG_PATH} "") +set(ENV{PKG_CONFIG_LIBDIR} "/usr/lib/$libdir/pkgconfig:/usr/share/$libdir/pkgconfig") EOF cmake_flags_extra="$cmake_flags_extra -D CMAKE_TOOLCHAIN_FILE=toolchain.cmake" strip_binary="$arch_gnu-strip" From 9679ec1955c07491bef213597ae52f6669b05946 Mon Sep 17 00:00:00 2001 From: OldMadMan <87818252+OldMadMan@users.noreply.github.com> Date: Sun, 5 Dec 2021 01:36:17 +0800 Subject: [PATCH 36/41] Update simplified Chinese text (#1909) Correct a few typos, adjust individual sentences --- src/win/languages/zh-CN.rc | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/src/win/languages/zh-CN.rc b/src/win/languages/zh-CN.rc index f999f0478..047591eb0 100644 --- a/src/win/languages/zh-CN.rc +++ b/src/win/languages/zh-CN.rc @@ -18,7 +18,7 @@ BEGIN POPUP "操作(&A)" BEGIN MENUITEM "键盘需要捕捉(&K)", IDM_ACTION_KBD_REQ_CAPTURE - MENUITEM "右CTRL作为左ALT(&R)", IDM_ACTION_RCTRL_IS_LALT + MENUITEM "将右 CTRL 键映射为左 ALT 键(&R)", IDM_ACTION_RCTRL_IS_LALT MENUITEM SEPARATOR MENUITEM "硬重置(&H)...", IDM_ACTION_HRESET MENUITEM "&Ctrl+Alt+Del\tCtrl+F12", IDM_ACTION_RESET_CAD @@ -33,8 +33,8 @@ BEGIN BEGIN MENUITEM "隐藏状态栏(&H)", IDM_VID_HIDE_STATUS_BAR MENUITEM SEPARATOR - MENUITEM "窗口可调整大小(&R)", IDM_VID_RESIZE - MENUITEM "记住窗口大小和未知(&e)", IDM_VID_REMEMBER + MENUITEM "窗口尺寸可调(&R)", IDM_VID_RESIZE + MENUITEM "记忆窗口尺寸和位置(&e)", IDM_VID_REMEMBER MENUITEM SEPARATOR POPUP "渲染器(&n)" BEGIN @@ -48,7 +48,7 @@ BEGIN END MENUITEM SEPARATOR MENUITEM "指定窗口大小...", IDM_VID_SPECIFY_DIM - MENUITEM "强制 4:3 显示比例(&o)", IDM_VID_FORCE43 + MENUITEM "强制以 4:3 显示画面(&o)", IDM_VID_FORCE43 POPUP "窗口缩放比例(&W)" BEGIN MENUITEM "&0.5x", IDM_VID_SCALE_1X @@ -73,7 +73,7 @@ BEGIN END POPUP "E&GA/(S)VGA 设置" BEGIN - MENUITEM "反转 VGA 显示器(&I)", IDM_VID_INVERT + MENUITEM "反色 VGA 显示器(&I)", IDM_VID_INVERT POPUP "VGA 屏幕类型(&t)" BEGIN MENUITEM "RGB 彩色(&C)", IDM_VID_GRAY_RGB @@ -399,7 +399,7 @@ STRINGTABLE DISCARDABLE BEGIN 2048 "86Box" IDS_2049 "错误" - IDS_2050 "关键错误" + IDS_2050 "致命错误" IDS_2051 "<保留>" IDS_2052 "按 CTRL+ALT+PAGE DOWN 组合键返回窗口模式." IDS_2053 "速度" @@ -411,7 +411,7 @@ BEGIN IDS_2059 "Turbo" 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_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 "由于 roms/machines 文件夹中缺少合适的ROM, ""%hs"" 机型不可用. 将切换到其他可用机型." END @@ -453,10 +453,10 @@ BEGIN IDS_2093 "设置 PCap 失败" IDS_2094 "未找到 PCap 设备" IDS_2095 "无效 PCap 设备" - IDS_2096 "标准 2键操纵杆" - IDS_2097 "标准 4键操纵杆" - IDS_2098 "标准 6键操纵杆" - IDS_2099 "标准 8键操纵杆" + 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 Flight Control System" @@ -513,7 +513,7 @@ BEGIN #endif IDS_2133 "FluidSynth MIDI 输出需要" LIB_NAME_FLUIDSYNTH IDS_2134 "即将进入全屏模式" - IDS_2135 "请勿在显示此提示" + IDS_2135 "请勿再显示此提示" IDS_2136 "不退出" IDS_2137 "重置" IDS_2138 "不重置" @@ -537,7 +537,7 @@ BEGIN IDS_4096 "硬盘 (%s)" IDS_4097 "%01i:%01i" IDS_4098 "%01i" - IDS_4099 "没有 MFM/RLL 或 ESDI CD-ROM 驱动器" + IDS_4099 "历史上没有出现过 MFM/RLL 或 ESDI CD-ROM 驱动器" IDS_4100 "自定义..." IDS_4101 "自定义 (large)..." IDS_4102 "添加新硬盘" @@ -548,7 +548,7 @@ BEGIN IDS_4107 "无法读取文件" IDS_4108 "无法写入文件" IDS_4109 "不支持非 512 字节扇区的 HDI 或 HDX 镜像." - IDS_4110 "USB 目前还不支持" + IDS_4110 "尚不支持 USB" IDS_4111 "磁盘镜像文件已存在" IDS_4112 "请指定有效的文件名." IDS_4113 "磁盘镜像创建完成" @@ -572,7 +572,7 @@ BEGIN IDS_4131 "选择父 VHD 文件" IDS_4132 "这可能因为在创建差异镜像后修改了父映像. \n\n如果镜像文件被移动或复制, 或由于创建此磁盘的程序中的错误, 也可能发生这种情况. \n\n是否需要修复时间戳?" IDS_4133 "父盘与子盘的时间戳不匹配." - IDS_4134 "无法固定 VHD 时间戳." + IDS_4134 "无法修复 VHD 时间戳." IDS_4135 "%01i:%02i" IDS_4352 "MFM/RLL" @@ -624,10 +624,10 @@ BEGIN IDS_5910 "5.25"" 1Gb M.O." IDS_5911 "5.25"" 1.3Gb M.O." - IDS_6144 "完美转速(RPM)" - IDS_6145 "低于完美转速 1%%" - IDS_6146 "低于完美转速 1.5%%" - IDS_6147 "低于完美转速 2%%" + IDS_6144 "标准转速(RPM)" + IDS_6145 "低于标准转速 1%%" + IDS_6146 "低于标准转速 1.5%%" + IDS_6147 "低于标准转速 2%%" IDS_7168 "(系统默认)" END From 40abfc1b5e06f392f8c6ca77dac8522420403568 Mon Sep 17 00:00:00 2001 From: ts-korhonen Date: Sat, 4 Dec 2021 21:26:55 +0200 Subject: [PATCH 37/41] Lower required OpenGL version from 3.3 -> 3.0 --- CMakeLists.txt | 2 +- src/include/glad/glad.h | 471 ++++--------------------------------- src/win/glad.c | 234 +++--------------- src/win/languages/cs-CZ.rc | 2 +- src/win/languages/de-DE.rc | 2 +- src/win/languages/en-GB.rc | 2 +- src/win/languages/en-US.rc | 2 +- src/win/languages/es-ES.rc | 2 +- src/win/languages/fi-FI.rc | 2 +- src/win/languages/fr-FR.rc | 2 +- src/win/languages/hr-HR.rc | 2 +- src/win/languages/hu-HU.rc | 2 +- src/win/languages/it-IT.rc | 2 +- src/win/languages/ja-JP.rc | 2 +- src/win/languages/ko-KR.rc | 2 +- src/win/languages/pt-BR.rc | 2 +- src/win/languages/pt-PT.rc | 2 +- src/win/languages/ru-RU.rc | 2 +- src/win/languages/sl-SI.rc | 2 +- src/win/languages/tr-TR.rc | 2 +- src/win/languages/zh-CN.rc | 2 +- src/win/win_opengl.c | 41 +++- src/win/win_opengl_glslp.c | 8 +- 23 files changed, 125 insertions(+), 667 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 127bae80b..5299448f3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -80,7 +80,7 @@ CMAKE_DEPENDENT_OPTION(MGA "Matrox Mystique graphics adapters" ON "DEV_BRANCH" O CMAKE_DEPENDENT_OPTION(NO_SIO "Machines without emulated Super I/O chips" ON "DEV_BRANCH" OFF) CMAKE_DEPENDENT_OPTION(OLIVETTI "Olivetti M290" ON "DEV_BRANCH" OFF) CMAKE_DEPENDENT_OPTION(OPEN_AT "OpenAT" ON "DEV_BRANCH" OFF) -CMAKE_DEPENDENT_OPTION(OPENGL "OpenGL 3.3 Core renderer" ON "DEV_BRANCH" OFF) +CMAKE_DEPENDENT_OPTION(OPENGL "OpenGL 3.0 Core renderer" ON "DEV_BRANCH" OFF) CMAKE_DEPENDENT_OPTION(PAS16 "Pro Audio Spectrum 16" OFF "DEV_BRANCH" OFF) CMAKE_DEPENDENT_OPTION(PS2M70T4 "IBM PS/2 model 70 (type 4)" ON "DEV_BRANCH" OFF) CMAKE_DEPENDENT_OPTION(S3TRIO3D2X "S3 Trio3D/2X" ON "DEV_BRANCH" OFF) diff --git a/src/include/glad/glad.h b/src/include/glad/glad.h index f8a96f376..0b4d36656 100644 --- a/src/include/glad/glad.h +++ b/src/include/glad/glad.h @@ -1,23 +1,24 @@ /* - OpenGL loader generated by glad 0.1.34 on Tue Apr 27 15:16:07 2021. + OpenGL loader generated by glad 0.1.34 on Sat Dec 4 18:46:02 2021. Language/Generator: C/C++ Specification: gl - APIs: gl=3.3 + APIs: gl=3.0 Profile: core Extensions: GL_ARB_buffer_storage, - GL_ARB_debug_output + GL_ARB_debug_output, + GL_ARB_sync Loader: True Local files: False Omit khrplatform: False Reproducible: False Commandline: - --profile="core" --api="gl=3.3" --generator="c" --spec="gl" --extensions="GL_ARB_buffer_storage,GL_ARB_debug_output" + --profile="core" --api="gl=3.0" --generator="c" --spec="gl" --extensions="GL_ARB_buffer_storage,GL_ARB_debug_output,GL_ARB_sync" Online: - https://glad.dav1d.de/#profile=core&language=c&specification=gl&loader=on&api=gl%3D3.3&extensions=GL_ARB_buffer_storage&extensions=GL_ARB_debug_output + https://glad.dav1d.de/#profile=core&language=c&specification=gl&loader=on&api=gl%3D3.0&extensions=GL_ARB_buffer_storage&extensions=GL_ARB_debug_output&extensions=GL_ARB_sync */ @@ -811,147 +812,6 @@ typedef void (APIENTRY *GLVULKANPROCNV)(void); #define GL_RG32I 0x823B #define GL_RG32UI 0x823C #define GL_VERTEX_ARRAY_BINDING 0x85B5 -#define GL_SAMPLER_2D_RECT 0x8B63 -#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64 -#define GL_SAMPLER_BUFFER 0x8DC2 -#define GL_INT_SAMPLER_2D_RECT 0x8DCD -#define GL_INT_SAMPLER_BUFFER 0x8DD0 -#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8 -#define GL_TEXTURE_BUFFER 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D -#define GL_TEXTURE_RECTANGLE 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8 -#define GL_R8_SNORM 0x8F94 -#define GL_RG8_SNORM 0x8F95 -#define GL_RGB8_SNORM 0x8F96 -#define GL_RGBA8_SNORM 0x8F97 -#define GL_R16_SNORM 0x8F98 -#define GL_RG16_SNORM 0x8F99 -#define GL_RGB16_SNORM 0x8F9A -#define GL_RGBA16_SNORM 0x8F9B -#define GL_SIGNED_NORMALIZED 0x8F9C -#define GL_PRIMITIVE_RESTART 0x8F9D -#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E -#define GL_COPY_READ_BUFFER 0x8F36 -#define GL_COPY_WRITE_BUFFER 0x8F37 -#define GL_UNIFORM_BUFFER 0x8A11 -#define GL_UNIFORM_BUFFER_BINDING 0x8A28 -#define GL_UNIFORM_BUFFER_START 0x8A29 -#define GL_UNIFORM_BUFFER_SIZE 0x8A2A -#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C -#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D -#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E -#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F -#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30 -#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31 -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32 -#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33 -#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34 -#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35 -#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36 -#define GL_UNIFORM_TYPE 0x8A37 -#define GL_UNIFORM_SIZE 0x8A38 -#define GL_UNIFORM_NAME_LENGTH 0x8A39 -#define GL_UNIFORM_BLOCK_INDEX 0x8A3A -#define GL_UNIFORM_OFFSET 0x8A3B -#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C -#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D -#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E -#define GL_UNIFORM_BLOCK_BINDING 0x8A3F -#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40 -#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41 -#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42 -#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46 -#define GL_INVALID_INDEX 0xFFFFFFFF -#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001 -#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002 -#define GL_LINES_ADJACENCY 0x000A -#define GL_LINE_STRIP_ADJACENCY 0x000B -#define GL_TRIANGLES_ADJACENCY 0x000C -#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D -#define GL_PROGRAM_POINT_SIZE 0x8642 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8 -#define GL_GEOMETRY_SHADER 0x8DD9 -#define GL_GEOMETRY_VERTICES_OUT 0x8916 -#define GL_GEOMETRY_INPUT_TYPE 0x8917 -#define GL_GEOMETRY_OUTPUT_TYPE 0x8918 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1 -#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124 -#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125 -#define GL_CONTEXT_PROFILE_MASK 0x9126 -#define GL_DEPTH_CLAMP 0x864F -#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C -#define GL_FIRST_VERTEX_CONVENTION 0x8E4D -#define GL_LAST_VERTEX_CONVENTION 0x8E4E -#define GL_PROVOKING_VERTEX 0x8E4F -#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F -#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111 -#define GL_OBJECT_TYPE 0x9112 -#define GL_SYNC_CONDITION 0x9113 -#define GL_SYNC_STATUS 0x9114 -#define GL_SYNC_FLAGS 0x9115 -#define GL_SYNC_FENCE 0x9116 -#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117 -#define GL_UNSIGNALED 0x9118 -#define GL_SIGNALED 0x9119 -#define GL_ALREADY_SIGNALED 0x911A -#define GL_TIMEOUT_EXPIRED 0x911B -#define GL_CONDITION_SATISFIED 0x911C -#define GL_WAIT_FAILED 0x911D -#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF -#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001 -#define GL_SAMPLE_POSITION 0x8E50 -#define GL_SAMPLE_MASK 0x8E51 -#define GL_SAMPLE_MASK_VALUE 0x8E52 -#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59 -#define GL_TEXTURE_2D_MULTISAMPLE 0x9100 -#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101 -#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102 -#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105 -#define GL_TEXTURE_SAMPLES 0x9106 -#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107 -#define GL_SAMPLER_2D_MULTISAMPLE 0x9108 -#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109 -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A -#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B -#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D -#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E -#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F -#define GL_MAX_INTEGER_SAMPLES 0x9110 -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE -#define GL_SRC1_COLOR 0x88F9 -#define GL_ONE_MINUS_SRC1_COLOR 0x88FA -#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB -#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC -#define GL_ANY_SAMPLES_PASSED 0x8C2F -#define GL_SAMPLER_BINDING 0x8919 -#define GL_RGB10_A2UI 0x906F -#define GL_TEXTURE_SWIZZLE_R 0x8E42 -#define GL_TEXTURE_SWIZZLE_G 0x8E43 -#define GL_TEXTURE_SWIZZLE_B 0x8E44 -#define GL_TEXTURE_SWIZZLE_A 0x8E45 -#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46 -#define GL_TIME_ELAPSED 0x88BF -#define GL_TIMESTAMP 0x8E28 -#define GL_INT_2_10_10_10_REV 0x8D9F #ifndef GL_VERSION_1_0 #define GL_VERSION_1_0 1 GLAPI int GLAD_GL_VERSION_1_0; @@ -1843,285 +1703,6 @@ typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYPROC)(GLuint array); GLAPI PFNGLISVERTEXARRAYPROC glad_glIsVertexArray; #define glIsVertexArray glad_glIsVertexArray #endif -#ifndef GL_VERSION_3_1 -#define GL_VERSION_3_1 1 -GLAPI int GLAD_GL_VERSION_3_1; -typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount); -GLAPI PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced; -#define glDrawArraysInstanced glad_glDrawArraysInstanced -typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount); -GLAPI PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced; -#define glDrawElementsInstanced glad_glDrawElementsInstanced -typedef void (APIENTRYP PFNGLTEXBUFFERPROC)(GLenum target, GLenum internalformat, GLuint buffer); -GLAPI PFNGLTEXBUFFERPROC glad_glTexBuffer; -#define glTexBuffer glad_glTexBuffer -typedef void (APIENTRYP PFNGLPRIMITIVERESTARTINDEXPROC)(GLuint index); -GLAPI PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex; -#define glPrimitiveRestartIndex glad_glPrimitiveRestartIndex -typedef void (APIENTRYP PFNGLCOPYBUFFERSUBDATAPROC)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -GLAPI PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData; -#define glCopyBufferSubData glad_glCopyBufferSubData -typedef void (APIENTRYP PFNGLGETUNIFORMINDICESPROC)(GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices); -GLAPI PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices; -#define glGetUniformIndices glad_glGetUniformIndices -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMSIVPROC)(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params); -GLAPI PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv; -#define glGetActiveUniformsiv glad_glGetActiveUniformsiv -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMNAMEPROC)(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName); -GLAPI PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName; -#define glGetActiveUniformName glad_glGetActiveUniformName -typedef GLuint (APIENTRYP PFNGLGETUNIFORMBLOCKINDEXPROC)(GLuint program, const GLchar *uniformBlockName); -GLAPI PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex; -#define glGetUniformBlockIndex glad_glGetUniformBlockIndex -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVPROC)(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params); -GLAPI PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv; -#define glGetActiveUniformBlockiv glad_glGetActiveUniformBlockiv -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName); -GLAPI PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName; -#define glGetActiveUniformBlockName glad_glGetActiveUniformBlockName -typedef void (APIENTRYP PFNGLUNIFORMBLOCKBINDINGPROC)(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding); -GLAPI PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding; -#define glUniformBlockBinding glad_glUniformBlockBinding -#endif -#ifndef GL_VERSION_3_2 -#define GL_VERSION_3_2 1 -GLAPI int GLAD_GL_VERSION_3_2; -typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); -GLAPI PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex; -#define glDrawElementsBaseVertex glad_glDrawElementsBaseVertex -typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex); -GLAPI PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex; -#define glDrawRangeElementsBaseVertex glad_glDrawRangeElementsBaseVertex -typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex); -GLAPI PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex; -#define glDrawElementsInstancedBaseVertex glad_glDrawElementsInstancedBaseVertex -typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex); -GLAPI PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex; -#define glMultiDrawElementsBaseVertex glad_glMultiDrawElementsBaseVertex -typedef void (APIENTRYP PFNGLPROVOKINGVERTEXPROC)(GLenum mode); -GLAPI PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex; -#define glProvokingVertex glad_glProvokingVertex -typedef GLsync (APIENTRYP PFNGLFENCESYNCPROC)(GLenum condition, GLbitfield flags); -GLAPI PFNGLFENCESYNCPROC glad_glFenceSync; -#define glFenceSync glad_glFenceSync -typedef GLboolean (APIENTRYP PFNGLISSYNCPROC)(GLsync sync); -GLAPI PFNGLISSYNCPROC glad_glIsSync; -#define glIsSync glad_glIsSync -typedef void (APIENTRYP PFNGLDELETESYNCPROC)(GLsync sync); -GLAPI PFNGLDELETESYNCPROC glad_glDeleteSync; -#define glDeleteSync glad_glDeleteSync -typedef GLenum (APIENTRYP PFNGLCLIENTWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout); -GLAPI PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync; -#define glClientWaitSync glad_glClientWaitSync -typedef void (APIENTRYP PFNGLWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout); -GLAPI PFNGLWAITSYNCPROC glad_glWaitSync; -#define glWaitSync glad_glWaitSync -typedef void (APIENTRYP PFNGLGETINTEGER64VPROC)(GLenum pname, GLint64 *data); -GLAPI PFNGLGETINTEGER64VPROC glad_glGetInteger64v; -#define glGetInteger64v glad_glGetInteger64v -typedef void (APIENTRYP PFNGLGETSYNCIVPROC)(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values); -GLAPI PFNGLGETSYNCIVPROC glad_glGetSynciv; -#define glGetSynciv glad_glGetSynciv -typedef void (APIENTRYP PFNGLGETINTEGER64I_VPROC)(GLenum target, GLuint index, GLint64 *data); -GLAPI PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v; -#define glGetInteger64i_v glad_glGetInteger64i_v -typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERI64VPROC)(GLenum target, GLenum pname, GLint64 *params); -GLAPI PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v; -#define glGetBufferParameteri64v glad_glGetBufferParameteri64v -typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREPROC)(GLenum target, GLenum attachment, GLuint texture, GLint level); -GLAPI PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture; -#define glFramebufferTexture glad_glFramebufferTexture -typedef void (APIENTRYP PFNGLTEXIMAGE2DMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); -GLAPI PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample; -#define glTexImage2DMultisample glad_glTexImage2DMultisample -typedef void (APIENTRYP PFNGLTEXIMAGE3DMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); -GLAPI PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample; -#define glTexImage3DMultisample glad_glTexImage3DMultisample -typedef void (APIENTRYP PFNGLGETMULTISAMPLEFVPROC)(GLenum pname, GLuint index, GLfloat *val); -GLAPI PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv; -#define glGetMultisamplefv glad_glGetMultisamplefv -typedef void (APIENTRYP PFNGLSAMPLEMASKIPROC)(GLuint maskNumber, GLbitfield mask); -GLAPI PFNGLSAMPLEMASKIPROC glad_glSampleMaski; -#define glSampleMaski glad_glSampleMaski -#endif -#ifndef GL_VERSION_3_3 -#define GL_VERSION_3_3 1 -GLAPI int GLAD_GL_VERSION_3_3; -typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name); -GLAPI PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed; -#define glBindFragDataLocationIndexed glad_glBindFragDataLocationIndexed -typedef GLint (APIENTRYP PFNGLGETFRAGDATAINDEXPROC)(GLuint program, const GLchar *name); -GLAPI PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex; -#define glGetFragDataIndex glad_glGetFragDataIndex -typedef void (APIENTRYP PFNGLGENSAMPLERSPROC)(GLsizei count, GLuint *samplers); -GLAPI PFNGLGENSAMPLERSPROC glad_glGenSamplers; -#define glGenSamplers glad_glGenSamplers -typedef void (APIENTRYP PFNGLDELETESAMPLERSPROC)(GLsizei count, const GLuint *samplers); -GLAPI PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers; -#define glDeleteSamplers glad_glDeleteSamplers -typedef GLboolean (APIENTRYP PFNGLISSAMPLERPROC)(GLuint sampler); -GLAPI PFNGLISSAMPLERPROC glad_glIsSampler; -#define glIsSampler glad_glIsSampler -typedef void (APIENTRYP PFNGLBINDSAMPLERPROC)(GLuint unit, GLuint sampler); -GLAPI PFNGLBINDSAMPLERPROC glad_glBindSampler; -#define glBindSampler glad_glBindSampler -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIPROC)(GLuint sampler, GLenum pname, GLint param); -GLAPI PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri; -#define glSamplerParameteri glad_glSamplerParameteri -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIVPROC)(GLuint sampler, GLenum pname, const GLint *param); -GLAPI PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv; -#define glSamplerParameteriv glad_glSamplerParameteriv -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFPROC)(GLuint sampler, GLenum pname, GLfloat param); -GLAPI PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf; -#define glSamplerParameterf glad_glSamplerParameterf -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFVPROC)(GLuint sampler, GLenum pname, const GLfloat *param); -GLAPI PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv; -#define glSamplerParameterfv glad_glSamplerParameterfv -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIIVPROC)(GLuint sampler, GLenum pname, const GLint *param); -GLAPI PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv; -#define glSamplerParameterIiv glad_glSamplerParameterIiv -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIUIVPROC)(GLuint sampler, GLenum pname, const GLuint *param); -GLAPI PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv; -#define glSamplerParameterIuiv glad_glSamplerParameterIuiv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIVPROC)(GLuint sampler, GLenum pname, GLint *params); -GLAPI PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv; -#define glGetSamplerParameteriv glad_glGetSamplerParameteriv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIIVPROC)(GLuint sampler, GLenum pname, GLint *params); -GLAPI PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv; -#define glGetSamplerParameterIiv glad_glGetSamplerParameterIiv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERFVPROC)(GLuint sampler, GLenum pname, GLfloat *params); -GLAPI PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv; -#define glGetSamplerParameterfv glad_glGetSamplerParameterfv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVPROC)(GLuint sampler, GLenum pname, GLuint *params); -GLAPI PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv; -#define glGetSamplerParameterIuiv glad_glGetSamplerParameterIuiv -typedef void (APIENTRYP PFNGLQUERYCOUNTERPROC)(GLuint id, GLenum target); -GLAPI PFNGLQUERYCOUNTERPROC glad_glQueryCounter; -#define glQueryCounter glad_glQueryCounter -typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VPROC)(GLuint id, GLenum pname, GLint64 *params); -GLAPI PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v; -#define glGetQueryObjecti64v glad_glGetQueryObjecti64v -typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VPROC)(GLuint id, GLenum pname, GLuint64 *params); -GLAPI PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v; -#define glGetQueryObjectui64v glad_glGetQueryObjectui64v -typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORPROC)(GLuint index, GLuint divisor); -GLAPI PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor; -#define glVertexAttribDivisor glad_glVertexAttribDivisor -typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui; -#define glVertexAttribP1ui glad_glVertexAttribP1ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv; -#define glVertexAttribP1uiv glad_glVertexAttribP1uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui; -#define glVertexAttribP2ui glad_glVertexAttribP2ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv; -#define glVertexAttribP2uiv glad_glVertexAttribP2uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui; -#define glVertexAttribP3ui glad_glVertexAttribP3ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv; -#define glVertexAttribP3uiv glad_glVertexAttribP3uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui; -#define glVertexAttribP4ui glad_glVertexAttribP4ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv; -#define glVertexAttribP4uiv glad_glVertexAttribP4uiv -typedef void (APIENTRYP PFNGLVERTEXP2UIPROC)(GLenum type, GLuint value); -GLAPI PFNGLVERTEXP2UIPROC glad_glVertexP2ui; -#define glVertexP2ui glad_glVertexP2ui -typedef void (APIENTRYP PFNGLVERTEXP2UIVPROC)(GLenum type, const GLuint *value); -GLAPI PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv; -#define glVertexP2uiv glad_glVertexP2uiv -typedef void (APIENTRYP PFNGLVERTEXP3UIPROC)(GLenum type, GLuint value); -GLAPI PFNGLVERTEXP3UIPROC glad_glVertexP3ui; -#define glVertexP3ui glad_glVertexP3ui -typedef void (APIENTRYP PFNGLVERTEXP3UIVPROC)(GLenum type, const GLuint *value); -GLAPI PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv; -#define glVertexP3uiv glad_glVertexP3uiv -typedef void (APIENTRYP PFNGLVERTEXP4UIPROC)(GLenum type, GLuint value); -GLAPI PFNGLVERTEXP4UIPROC glad_glVertexP4ui; -#define glVertexP4ui glad_glVertexP4ui -typedef void (APIENTRYP PFNGLVERTEXP4UIVPROC)(GLenum type, const GLuint *value); -GLAPI PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv; -#define glVertexP4uiv glad_glVertexP4uiv -typedef void (APIENTRYP PFNGLTEXCOORDP1UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui; -#define glTexCoordP1ui glad_glTexCoordP1ui -typedef void (APIENTRYP PFNGLTEXCOORDP1UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv; -#define glTexCoordP1uiv glad_glTexCoordP1uiv -typedef void (APIENTRYP PFNGLTEXCOORDP2UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui; -#define glTexCoordP2ui glad_glTexCoordP2ui -typedef void (APIENTRYP PFNGLTEXCOORDP2UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv; -#define glTexCoordP2uiv glad_glTexCoordP2uiv -typedef void (APIENTRYP PFNGLTEXCOORDP3UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui; -#define glTexCoordP3ui glad_glTexCoordP3ui -typedef void (APIENTRYP PFNGLTEXCOORDP3UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv; -#define glTexCoordP3uiv glad_glTexCoordP3uiv -typedef void (APIENTRYP PFNGLTEXCOORDP4UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui; -#define glTexCoordP4ui glad_glTexCoordP4ui -typedef void (APIENTRYP PFNGLTEXCOORDP4UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv; -#define glTexCoordP4uiv glad_glTexCoordP4uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP1UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui; -#define glMultiTexCoordP1ui glad_glMultiTexCoordP1ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP1UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv; -#define glMultiTexCoordP1uiv glad_glMultiTexCoordP1uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP2UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui; -#define glMultiTexCoordP2ui glad_glMultiTexCoordP2ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP2UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv; -#define glMultiTexCoordP2uiv glad_glMultiTexCoordP2uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP3UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui; -#define glMultiTexCoordP3ui glad_glMultiTexCoordP3ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP3UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv; -#define glMultiTexCoordP3uiv glad_glMultiTexCoordP3uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP4UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui; -#define glMultiTexCoordP4ui glad_glMultiTexCoordP4ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP4UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv; -#define glMultiTexCoordP4uiv glad_glMultiTexCoordP4uiv -typedef void (APIENTRYP PFNGLNORMALP3UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLNORMALP3UIPROC glad_glNormalP3ui; -#define glNormalP3ui glad_glNormalP3ui -typedef void (APIENTRYP PFNGLNORMALP3UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLNORMALP3UIVPROC glad_glNormalP3uiv; -#define glNormalP3uiv glad_glNormalP3uiv -typedef void (APIENTRYP PFNGLCOLORP3UIPROC)(GLenum type, GLuint color); -GLAPI PFNGLCOLORP3UIPROC glad_glColorP3ui; -#define glColorP3ui glad_glColorP3ui -typedef void (APIENTRYP PFNGLCOLORP3UIVPROC)(GLenum type, const GLuint *color); -GLAPI PFNGLCOLORP3UIVPROC glad_glColorP3uiv; -#define glColorP3uiv glad_glColorP3uiv -typedef void (APIENTRYP PFNGLCOLORP4UIPROC)(GLenum type, GLuint color); -GLAPI PFNGLCOLORP4UIPROC glad_glColorP4ui; -#define glColorP4ui glad_glColorP4ui -typedef void (APIENTRYP PFNGLCOLORP4UIVPROC)(GLenum type, const GLuint *color); -GLAPI PFNGLCOLORP4UIVPROC glad_glColorP4uiv; -#define glColorP4uiv glad_glColorP4uiv -typedef void (APIENTRYP PFNGLSECONDARYCOLORP3UIPROC)(GLenum type, GLuint color); -GLAPI PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui; -#define glSecondaryColorP3ui glad_glSecondaryColorP3ui -typedef void (APIENTRYP PFNGLSECONDARYCOLORP3UIVPROC)(GLenum type, const GLuint *color); -GLAPI PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv; -#define glSecondaryColorP3uiv glad_glSecondaryColorP3uiv -#endif #define GL_MAP_PERSISTENT_BIT 0x0040 #define GL_MAP_COHERENT_BIT 0x0080 #define GL_DYNAMIC_STORAGE_BIT 0x0100 @@ -2151,6 +1732,21 @@ GLAPI PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv; #define GL_DEBUG_SEVERITY_HIGH_ARB 0x9146 #define GL_DEBUG_SEVERITY_MEDIUM_ARB 0x9147 #define GL_DEBUG_SEVERITY_LOW_ARB 0x9148 +#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111 +#define GL_OBJECT_TYPE 0x9112 +#define GL_SYNC_CONDITION 0x9113 +#define GL_SYNC_STATUS 0x9114 +#define GL_SYNC_FLAGS 0x9115 +#define GL_SYNC_FENCE 0x9116 +#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117 +#define GL_UNSIGNALED 0x9118 +#define GL_SIGNALED 0x9119 +#define GL_ALREADY_SIGNALED 0x911A +#define GL_TIMEOUT_EXPIRED 0x911B +#define GL_CONDITION_SATISFIED 0x911C +#define GL_WAIT_FAILED 0x911D +#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001 +#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF #ifndef GL_ARB_buffer_storage #define GL_ARB_buffer_storage 1 GLAPI int GLAD_GL_ARB_buffer_storage; @@ -2174,6 +1770,31 @@ typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGARBPROC)(GLuint count, GLsizei GLAPI PFNGLGETDEBUGMESSAGELOGARBPROC glad_glGetDebugMessageLogARB; #define glGetDebugMessageLogARB glad_glGetDebugMessageLogARB #endif +#ifndef GL_ARB_sync +#define GL_ARB_sync 1 +GLAPI int GLAD_GL_ARB_sync; +typedef GLsync (APIENTRYP PFNGLFENCESYNCPROC)(GLenum condition, GLbitfield flags); +GLAPI PFNGLFENCESYNCPROC glad_glFenceSync; +#define glFenceSync glad_glFenceSync +typedef GLboolean (APIENTRYP PFNGLISSYNCPROC)(GLsync sync); +GLAPI PFNGLISSYNCPROC glad_glIsSync; +#define glIsSync glad_glIsSync +typedef void (APIENTRYP PFNGLDELETESYNCPROC)(GLsync sync); +GLAPI PFNGLDELETESYNCPROC glad_glDeleteSync; +#define glDeleteSync glad_glDeleteSync +typedef GLenum (APIENTRYP PFNGLCLIENTWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout); +GLAPI PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync; +#define glClientWaitSync glad_glClientWaitSync +typedef void (APIENTRYP PFNGLWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout); +GLAPI PFNGLWAITSYNCPROC glad_glWaitSync; +#define glWaitSync glad_glWaitSync +typedef void (APIENTRYP PFNGLGETINTEGER64VPROC)(GLenum pname, GLint64 *data); +GLAPI PFNGLGETINTEGER64VPROC glad_glGetInteger64v; +#define glGetInteger64v glad_glGetInteger64v +typedef void (APIENTRYP PFNGLGETSYNCIVPROC)(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values); +GLAPI PFNGLGETSYNCIVPROC glad_glGetSynciv; +#define glGetSynciv glad_glGetSynciv +#endif #ifdef __cplusplus } diff --git a/src/win/glad.c b/src/win/glad.c index 7bab35d06..8e2e4ce13 100644 --- a/src/win/glad.c +++ b/src/win/glad.c @@ -1,23 +1,24 @@ /* - OpenGL loader generated by glad 0.1.34 on Tue Apr 27 15:16:07 2021. + OpenGL loader generated by glad 0.1.34 on Sat Dec 4 18:46:02 2021. Language/Generator: C/C++ Specification: gl - APIs: gl=3.3 + APIs: gl=3.0 Profile: core Extensions: GL_ARB_buffer_storage, - GL_ARB_debug_output + GL_ARB_debug_output, + GL_ARB_sync Loader: True Local files: False Omit khrplatform: False Reproducible: False Commandline: - --profile="core" --api="gl=3.3" --generator="c" --spec="gl" --extensions="GL_ARB_buffer_storage,GL_ARB_debug_output" + --profile="core" --api="gl=3.0" --generator="c" --spec="gl" --extensions="GL_ARB_buffer_storage,GL_ARB_debug_output,GL_ARB_sync" Online: - https://glad.dav1d.de/#profile=core&language=c&specification=gl&loader=on&api=gl%3D3.3&extensions=GL_ARB_buffer_storage&extensions=GL_ARB_debug_output + https://glad.dav1d.de/#profile=core&language=c&specification=gl&loader=on&api=gl%3D3.0&extensions=GL_ARB_buffer_storage&extensions=GL_ARB_debug_output&extensions=GL_ARB_sync */ #include @@ -265,9 +266,6 @@ int GLAD_GL_VERSION_1_5 = 0; int GLAD_GL_VERSION_2_0 = 0; int GLAD_GL_VERSION_2_1 = 0; int GLAD_GL_VERSION_3_0 = 0; -int GLAD_GL_VERSION_3_1 = 0; -int GLAD_GL_VERSION_3_2 = 0; -int GLAD_GL_VERSION_3_3 = 0; PFNGLACTIVETEXTUREPROC glad_glActiveTexture = NULL; PFNGLATTACHSHADERPROC glad_glAttachShader = NULL; PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender = NULL; @@ -278,10 +276,8 @@ PFNGLBINDBUFFERPROC glad_glBindBuffer = NULL; PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase = NULL; PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange = NULL; PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation = NULL; -PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed = NULL; PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer = NULL; PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer = NULL; -PFNGLBINDSAMPLERPROC glad_glBindSampler = NULL; PFNGLBINDTEXTUREPROC glad_glBindTexture = NULL; PFNGLBINDVERTEXARRAYPROC glad_glBindVertexArray = NULL; PFNGLBLENDCOLORPROC glad_glBlendColor = NULL; @@ -302,13 +298,8 @@ PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv = NULL; PFNGLCLEARCOLORPROC glad_glClearColor = NULL; PFNGLCLEARDEPTHPROC glad_glClearDepth = NULL; PFNGLCLEARSTENCILPROC glad_glClearStencil = NULL; -PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync = NULL; PFNGLCOLORMASKPROC glad_glColorMask = NULL; PFNGLCOLORMASKIPROC glad_glColorMaski = NULL; -PFNGLCOLORP3UIPROC glad_glColorP3ui = NULL; -PFNGLCOLORP3UIVPROC glad_glColorP3uiv = NULL; -PFNGLCOLORP4UIPROC glad_glColorP4ui = NULL; -PFNGLCOLORP4UIVPROC glad_glColorP4uiv = NULL; PFNGLCOMPILESHADERPROC glad_glCompileShader = NULL; PFNGLCOMPRESSEDTEXIMAGE1DPROC glad_glCompressedTexImage1D = NULL; PFNGLCOMPRESSEDTEXIMAGE2DPROC glad_glCompressedTexImage2D = NULL; @@ -316,7 +307,6 @@ PFNGLCOMPRESSEDTEXIMAGE3DPROC glad_glCompressedTexImage3D = NULL; PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glad_glCompressedTexSubImage1D = NULL; PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glad_glCompressedTexSubImage2D = NULL; PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glad_glCompressedTexSubImage3D = NULL; -PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData = NULL; PFNGLCOPYTEXIMAGE1DPROC glad_glCopyTexImage1D = NULL; PFNGLCOPYTEXIMAGE2DPROC glad_glCopyTexImage2D = NULL; PFNGLCOPYTEXSUBIMAGE1DPROC glad_glCopyTexSubImage1D = NULL; @@ -330,9 +320,7 @@ PFNGLDELETEFRAMEBUFFERSPROC glad_glDeleteFramebuffers = NULL; PFNGLDELETEPROGRAMPROC glad_glDeleteProgram = NULL; PFNGLDELETEQUERIESPROC glad_glDeleteQueries = NULL; PFNGLDELETERENDERBUFFERSPROC glad_glDeleteRenderbuffers = NULL; -PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers = NULL; PFNGLDELETESHADERPROC glad_glDeleteShader = NULL; -PFNGLDELETESYNCPROC glad_glDeleteSync = NULL; PFNGLDELETETEXTURESPROC glad_glDeleteTextures = NULL; PFNGLDELETEVERTEXARRAYSPROC glad_glDeleteVertexArrays = NULL; PFNGLDEPTHFUNCPROC glad_glDepthFunc = NULL; @@ -343,27 +331,20 @@ PFNGLDISABLEPROC glad_glDisable = NULL; PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray = NULL; PFNGLDISABLEIPROC glad_glDisablei = NULL; PFNGLDRAWARRAYSPROC glad_glDrawArrays = NULL; -PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced = NULL; PFNGLDRAWBUFFERPROC glad_glDrawBuffer = NULL; PFNGLDRAWBUFFERSPROC glad_glDrawBuffers = NULL; PFNGLDRAWELEMENTSPROC glad_glDrawElements = NULL; -PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex = NULL; -PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced = NULL; -PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex = NULL; PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements = NULL; -PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex = NULL; PFNGLENABLEPROC glad_glEnable = NULL; PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray = NULL; PFNGLENABLEIPROC glad_glEnablei = NULL; PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender = NULL; PFNGLENDQUERYPROC glad_glEndQuery = NULL; PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback = NULL; -PFNGLFENCESYNCPROC glad_glFenceSync = NULL; PFNGLFINISHPROC glad_glFinish = NULL; PFNGLFLUSHPROC glad_glFlush = NULL; PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange = NULL; PFNGLFRAMEBUFFERRENDERBUFFERPROC glad_glFramebufferRenderbuffer = NULL; -PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture = NULL; PFNGLFRAMEBUFFERTEXTURE1DPROC glad_glFramebufferTexture1D = NULL; PFNGLFRAMEBUFFERTEXTURE2DPROC glad_glFramebufferTexture2D = NULL; PFNGLFRAMEBUFFERTEXTURE3DPROC glad_glFramebufferTexture3D = NULL; @@ -373,21 +354,15 @@ PFNGLGENBUFFERSPROC glad_glGenBuffers = NULL; PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers = NULL; PFNGLGENQUERIESPROC glad_glGenQueries = NULL; PFNGLGENRENDERBUFFERSPROC glad_glGenRenderbuffers = NULL; -PFNGLGENSAMPLERSPROC glad_glGenSamplers = NULL; PFNGLGENTEXTURESPROC glad_glGenTextures = NULL; PFNGLGENVERTEXARRAYSPROC glad_glGenVertexArrays = NULL; PFNGLGENERATEMIPMAPPROC glad_glGenerateMipmap = NULL; PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib = NULL; PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform = NULL; -PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName = NULL; -PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv = NULL; -PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName = NULL; -PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv = NULL; PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders = NULL; PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation = NULL; PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v = NULL; PFNGLGETBOOLEANVPROC glad_glGetBooleanv = NULL; -PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v = NULL; PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv = NULL; PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv = NULL; PFNGLGETBUFFERSUBDATAPROC glad_glGetBufferSubData = NULL; @@ -395,32 +370,21 @@ PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage = NULL; PFNGLGETDOUBLEVPROC glad_glGetDoublev = NULL; PFNGLGETERRORPROC glad_glGetError = NULL; PFNGLGETFLOATVPROC glad_glGetFloatv = NULL; -PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex = NULL; PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation = NULL; PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv = NULL; -PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v = NULL; -PFNGLGETINTEGER64VPROC glad_glGetInteger64v = NULL; PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v = NULL; PFNGLGETINTEGERVPROC glad_glGetIntegerv = NULL; -PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv = NULL; PFNGLGETPROGRAMINFOLOGPROC glad_glGetProgramInfoLog = NULL; PFNGLGETPROGRAMIVPROC glad_glGetProgramiv = NULL; -PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v = NULL; PFNGLGETQUERYOBJECTIVPROC glad_glGetQueryObjectiv = NULL; -PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v = NULL; PFNGLGETQUERYOBJECTUIVPROC glad_glGetQueryObjectuiv = NULL; PFNGLGETQUERYIVPROC glad_glGetQueryiv = NULL; PFNGLGETRENDERBUFFERPARAMETERIVPROC glad_glGetRenderbufferParameteriv = NULL; -PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv = NULL; -PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv = NULL; -PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv = NULL; -PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv = NULL; PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog = NULL; PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource = NULL; PFNGLGETSHADERIVPROC glad_glGetShaderiv = NULL; PFNGLGETSTRINGPROC glad_glGetString = NULL; PFNGLGETSTRINGIPROC glad_glGetStringi = NULL; -PFNGLGETSYNCIVPROC glad_glGetSynciv = NULL; PFNGLGETTEXIMAGEPROC glad_glGetTexImage = NULL; PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv = NULL; PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv = NULL; @@ -429,8 +393,6 @@ PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv = NULL; PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv = NULL; PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv = NULL; PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying = NULL; -PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex = NULL; -PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices = NULL; PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation = NULL; PFNGLGETUNIFORMFVPROC glad_glGetUniformfv = NULL; PFNGLGETUNIFORMIVPROC glad_glGetUniformiv = NULL; @@ -449,9 +411,7 @@ PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer = NULL; PFNGLISPROGRAMPROC glad_glIsProgram = NULL; PFNGLISQUERYPROC glad_glIsQuery = NULL; PFNGLISRENDERBUFFERPROC glad_glIsRenderbuffer = NULL; -PFNGLISSAMPLERPROC glad_glIsSampler = NULL; PFNGLISSHADERPROC glad_glIsShader = NULL; -PFNGLISSYNCPROC glad_glIsSync = NULL; PFNGLISTEXTUREPROC glad_glIsTexture = NULL; PFNGLISVERTEXARRAYPROC glad_glIsVertexArray = NULL; PFNGLLINEWIDTHPROC glad_glLineWidth = NULL; @@ -461,17 +421,6 @@ PFNGLMAPBUFFERPROC glad_glMapBuffer = NULL; PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange = NULL; PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays = NULL; PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements = NULL; -PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex = NULL; -PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui = NULL; -PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv = NULL; -PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui = NULL; -PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv = NULL; -PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui = NULL; -PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv = NULL; -PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui = NULL; -PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv = NULL; -PFNGLNORMALP3UIPROC glad_glNormalP3ui = NULL; -PFNGLNORMALP3UIVPROC glad_glNormalP3uiv = NULL; PFNGLPIXELSTOREFPROC glad_glPixelStoref = NULL; PFNGLPIXELSTOREIPROC glad_glPixelStorei = NULL; PFNGLPOINTPARAMETERFPROC glad_glPointParameterf = NULL; @@ -481,24 +430,12 @@ PFNGLPOINTPARAMETERIVPROC glad_glPointParameteriv = NULL; PFNGLPOINTSIZEPROC glad_glPointSize = NULL; PFNGLPOLYGONMODEPROC glad_glPolygonMode = NULL; PFNGLPOLYGONOFFSETPROC glad_glPolygonOffset = NULL; -PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex = NULL; -PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex = NULL; -PFNGLQUERYCOUNTERPROC glad_glQueryCounter = NULL; PFNGLREADBUFFERPROC glad_glReadBuffer = NULL; PFNGLREADPIXELSPROC glad_glReadPixels = NULL; PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage = NULL; PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample = NULL; PFNGLSAMPLECOVERAGEPROC glad_glSampleCoverage = NULL; -PFNGLSAMPLEMASKIPROC glad_glSampleMaski = NULL; -PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv = NULL; -PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv = NULL; -PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf = NULL; -PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv = NULL; -PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri = NULL; -PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv = NULL; PFNGLSCISSORPROC glad_glScissor = NULL; -PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui = NULL; -PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv = NULL; PFNGLSHADERSOURCEPROC glad_glShaderSource = NULL; PFNGLSTENCILFUNCPROC glad_glStencilFunc = NULL; PFNGLSTENCILFUNCSEPARATEPROC glad_glStencilFuncSeparate = NULL; @@ -506,20 +443,9 @@ PFNGLSTENCILMASKPROC glad_glStencilMask = NULL; PFNGLSTENCILMASKSEPARATEPROC glad_glStencilMaskSeparate = NULL; PFNGLSTENCILOPPROC glad_glStencilOp = NULL; PFNGLSTENCILOPSEPARATEPROC glad_glStencilOpSeparate = NULL; -PFNGLTEXBUFFERPROC glad_glTexBuffer = NULL; -PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui = NULL; -PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv = NULL; -PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui = NULL; -PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv = NULL; -PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui = NULL; -PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv = NULL; -PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui = NULL; -PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv = NULL; PFNGLTEXIMAGE1DPROC glad_glTexImage1D = NULL; PFNGLTEXIMAGE2DPROC glad_glTexImage2D = NULL; -PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample = NULL; PFNGLTEXIMAGE3DPROC glad_glTexImage3D = NULL; -PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample = NULL; PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv = NULL; PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv = NULL; PFNGLTEXPARAMETERFPROC glad_glTexParameterf = NULL; @@ -554,7 +480,6 @@ PFNGLUNIFORM4IPROC glad_glUniform4i = NULL; PFNGLUNIFORM4IVPROC glad_glUniform4iv = NULL; PFNGLUNIFORM4UIPROC glad_glUniform4ui = NULL; PFNGLUNIFORM4UIVPROC glad_glUniform4uiv = NULL; -PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding = NULL; PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv = NULL; PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv = NULL; PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv = NULL; @@ -603,7 +528,6 @@ PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv = NULL; PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv = NULL; PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv = NULL; PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv = NULL; -PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor = NULL; PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i = NULL; PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv = NULL; PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui = NULL; @@ -625,30 +549,23 @@ PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui = NULL; PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv = NULL; PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv = NULL; PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer = NULL; -PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui = NULL; -PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv = NULL; -PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui = NULL; -PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv = NULL; -PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui = NULL; -PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv = NULL; -PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui = NULL; -PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv = NULL; PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer = NULL; -PFNGLVERTEXP2UIPROC glad_glVertexP2ui = NULL; -PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv = NULL; -PFNGLVERTEXP3UIPROC glad_glVertexP3ui = NULL; -PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv = NULL; -PFNGLVERTEXP4UIPROC glad_glVertexP4ui = NULL; -PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv = NULL; PFNGLVIEWPORTPROC glad_glViewport = NULL; -PFNGLWAITSYNCPROC glad_glWaitSync = NULL; int GLAD_GL_ARB_buffer_storage = 0; int GLAD_GL_ARB_debug_output = 0; +int GLAD_GL_ARB_sync = 0; PFNGLBUFFERSTORAGEPROC glad_glBufferStorage = NULL; PFNGLDEBUGMESSAGECONTROLARBPROC glad_glDebugMessageControlARB = NULL; PFNGLDEBUGMESSAGEINSERTARBPROC glad_glDebugMessageInsertARB = NULL; PFNGLDEBUGMESSAGECALLBACKARBPROC glad_glDebugMessageCallbackARB = NULL; PFNGLGETDEBUGMESSAGELOGARBPROC glad_glGetDebugMessageLogARB = NULL; +PFNGLFENCESYNCPROC glad_glFenceSync = NULL; +PFNGLISSYNCPROC glad_glIsSync = NULL; +PFNGLDELETESYNCPROC glad_glDeleteSync = NULL; +PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync = NULL; +PFNGLWAITSYNCPROC glad_glWaitSync = NULL; +PFNGLGETINTEGER64VPROC glad_glGetInteger64v = NULL; +PFNGLGETSYNCIVPROC glad_glGetSynciv = NULL; static void load_GL_VERSION_1_0(GLADloadproc load) { if(!GLAD_GL_VERSION_1_0) return; glad_glCullFace = (PFNGLCULLFACEPROC)load("glCullFace"); @@ -961,107 +878,6 @@ static void load_GL_VERSION_3_0(GLADloadproc load) { glad_glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)load("glGenVertexArrays"); glad_glIsVertexArray = (PFNGLISVERTEXARRAYPROC)load("glIsVertexArray"); } -static void load_GL_VERSION_3_1(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_1) return; - glad_glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDPROC)load("glDrawArraysInstanced"); - glad_glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDPROC)load("glDrawElementsInstanced"); - glad_glTexBuffer = (PFNGLTEXBUFFERPROC)load("glTexBuffer"); - glad_glPrimitiveRestartIndex = (PFNGLPRIMITIVERESTARTINDEXPROC)load("glPrimitiveRestartIndex"); - glad_glCopyBufferSubData = (PFNGLCOPYBUFFERSUBDATAPROC)load("glCopyBufferSubData"); - glad_glGetUniformIndices = (PFNGLGETUNIFORMINDICESPROC)load("glGetUniformIndices"); - glad_glGetActiveUniformsiv = (PFNGLGETACTIVEUNIFORMSIVPROC)load("glGetActiveUniformsiv"); - glad_glGetActiveUniformName = (PFNGLGETACTIVEUNIFORMNAMEPROC)load("glGetActiveUniformName"); - glad_glGetUniformBlockIndex = (PFNGLGETUNIFORMBLOCKINDEXPROC)load("glGetUniformBlockIndex"); - glad_glGetActiveUniformBlockiv = (PFNGLGETACTIVEUNIFORMBLOCKIVPROC)load("glGetActiveUniformBlockiv"); - glad_glGetActiveUniformBlockName = (PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)load("glGetActiveUniformBlockName"); - glad_glUniformBlockBinding = (PFNGLUNIFORMBLOCKBINDINGPROC)load("glUniformBlockBinding"); - glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange"); - glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase"); - glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v"); -} -static void load_GL_VERSION_3_2(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_2) return; - glad_glDrawElementsBaseVertex = (PFNGLDRAWELEMENTSBASEVERTEXPROC)load("glDrawElementsBaseVertex"); - glad_glDrawRangeElementsBaseVertex = (PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)load("glDrawRangeElementsBaseVertex"); - glad_glDrawElementsInstancedBaseVertex = (PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)load("glDrawElementsInstancedBaseVertex"); - glad_glMultiDrawElementsBaseVertex = (PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)load("glMultiDrawElementsBaseVertex"); - glad_glProvokingVertex = (PFNGLPROVOKINGVERTEXPROC)load("glProvokingVertex"); - glad_glFenceSync = (PFNGLFENCESYNCPROC)load("glFenceSync"); - glad_glIsSync = (PFNGLISSYNCPROC)load("glIsSync"); - glad_glDeleteSync = (PFNGLDELETESYNCPROC)load("glDeleteSync"); - glad_glClientWaitSync = (PFNGLCLIENTWAITSYNCPROC)load("glClientWaitSync"); - glad_glWaitSync = (PFNGLWAITSYNCPROC)load("glWaitSync"); - glad_glGetInteger64v = (PFNGLGETINTEGER64VPROC)load("glGetInteger64v"); - glad_glGetSynciv = (PFNGLGETSYNCIVPROC)load("glGetSynciv"); - glad_glGetInteger64i_v = (PFNGLGETINTEGER64I_VPROC)load("glGetInteger64i_v"); - glad_glGetBufferParameteri64v = (PFNGLGETBUFFERPARAMETERI64VPROC)load("glGetBufferParameteri64v"); - glad_glFramebufferTexture = (PFNGLFRAMEBUFFERTEXTUREPROC)load("glFramebufferTexture"); - glad_glTexImage2DMultisample = (PFNGLTEXIMAGE2DMULTISAMPLEPROC)load("glTexImage2DMultisample"); - glad_glTexImage3DMultisample = (PFNGLTEXIMAGE3DMULTISAMPLEPROC)load("glTexImage3DMultisample"); - glad_glGetMultisamplefv = (PFNGLGETMULTISAMPLEFVPROC)load("glGetMultisamplefv"); - glad_glSampleMaski = (PFNGLSAMPLEMASKIPROC)load("glSampleMaski"); -} -static void load_GL_VERSION_3_3(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_3) return; - glad_glBindFragDataLocationIndexed = (PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)load("glBindFragDataLocationIndexed"); - glad_glGetFragDataIndex = (PFNGLGETFRAGDATAINDEXPROC)load("glGetFragDataIndex"); - glad_glGenSamplers = (PFNGLGENSAMPLERSPROC)load("glGenSamplers"); - glad_glDeleteSamplers = (PFNGLDELETESAMPLERSPROC)load("glDeleteSamplers"); - glad_glIsSampler = (PFNGLISSAMPLERPROC)load("glIsSampler"); - glad_glBindSampler = (PFNGLBINDSAMPLERPROC)load("glBindSampler"); - glad_glSamplerParameteri = (PFNGLSAMPLERPARAMETERIPROC)load("glSamplerParameteri"); - glad_glSamplerParameteriv = (PFNGLSAMPLERPARAMETERIVPROC)load("glSamplerParameteriv"); - glad_glSamplerParameterf = (PFNGLSAMPLERPARAMETERFPROC)load("glSamplerParameterf"); - glad_glSamplerParameterfv = (PFNGLSAMPLERPARAMETERFVPROC)load("glSamplerParameterfv"); - glad_glSamplerParameterIiv = (PFNGLSAMPLERPARAMETERIIVPROC)load("glSamplerParameterIiv"); - glad_glSamplerParameterIuiv = (PFNGLSAMPLERPARAMETERIUIVPROC)load("glSamplerParameterIuiv"); - glad_glGetSamplerParameteriv = (PFNGLGETSAMPLERPARAMETERIVPROC)load("glGetSamplerParameteriv"); - glad_glGetSamplerParameterIiv = (PFNGLGETSAMPLERPARAMETERIIVPROC)load("glGetSamplerParameterIiv"); - glad_glGetSamplerParameterfv = (PFNGLGETSAMPLERPARAMETERFVPROC)load("glGetSamplerParameterfv"); - glad_glGetSamplerParameterIuiv = (PFNGLGETSAMPLERPARAMETERIUIVPROC)load("glGetSamplerParameterIuiv"); - glad_glQueryCounter = (PFNGLQUERYCOUNTERPROC)load("glQueryCounter"); - glad_glGetQueryObjecti64v = (PFNGLGETQUERYOBJECTI64VPROC)load("glGetQueryObjecti64v"); - glad_glGetQueryObjectui64v = (PFNGLGETQUERYOBJECTUI64VPROC)load("glGetQueryObjectui64v"); - glad_glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISORPROC)load("glVertexAttribDivisor"); - glad_glVertexAttribP1ui = (PFNGLVERTEXATTRIBP1UIPROC)load("glVertexAttribP1ui"); - glad_glVertexAttribP1uiv = (PFNGLVERTEXATTRIBP1UIVPROC)load("glVertexAttribP1uiv"); - glad_glVertexAttribP2ui = (PFNGLVERTEXATTRIBP2UIPROC)load("glVertexAttribP2ui"); - glad_glVertexAttribP2uiv = (PFNGLVERTEXATTRIBP2UIVPROC)load("glVertexAttribP2uiv"); - glad_glVertexAttribP3ui = (PFNGLVERTEXATTRIBP3UIPROC)load("glVertexAttribP3ui"); - glad_glVertexAttribP3uiv = (PFNGLVERTEXATTRIBP3UIVPROC)load("glVertexAttribP3uiv"); - glad_glVertexAttribP4ui = (PFNGLVERTEXATTRIBP4UIPROC)load("glVertexAttribP4ui"); - glad_glVertexAttribP4uiv = (PFNGLVERTEXATTRIBP4UIVPROC)load("glVertexAttribP4uiv"); - glad_glVertexP2ui = (PFNGLVERTEXP2UIPROC)load("glVertexP2ui"); - glad_glVertexP2uiv = (PFNGLVERTEXP2UIVPROC)load("glVertexP2uiv"); - glad_glVertexP3ui = (PFNGLVERTEXP3UIPROC)load("glVertexP3ui"); - glad_glVertexP3uiv = (PFNGLVERTEXP3UIVPROC)load("glVertexP3uiv"); - glad_glVertexP4ui = (PFNGLVERTEXP4UIPROC)load("glVertexP4ui"); - glad_glVertexP4uiv = (PFNGLVERTEXP4UIVPROC)load("glVertexP4uiv"); - glad_glTexCoordP1ui = (PFNGLTEXCOORDP1UIPROC)load("glTexCoordP1ui"); - glad_glTexCoordP1uiv = (PFNGLTEXCOORDP1UIVPROC)load("glTexCoordP1uiv"); - glad_glTexCoordP2ui = (PFNGLTEXCOORDP2UIPROC)load("glTexCoordP2ui"); - glad_glTexCoordP2uiv = (PFNGLTEXCOORDP2UIVPROC)load("glTexCoordP2uiv"); - glad_glTexCoordP3ui = (PFNGLTEXCOORDP3UIPROC)load("glTexCoordP3ui"); - glad_glTexCoordP3uiv = (PFNGLTEXCOORDP3UIVPROC)load("glTexCoordP3uiv"); - glad_glTexCoordP4ui = (PFNGLTEXCOORDP4UIPROC)load("glTexCoordP4ui"); - glad_glTexCoordP4uiv = (PFNGLTEXCOORDP4UIVPROC)load("glTexCoordP4uiv"); - glad_glMultiTexCoordP1ui = (PFNGLMULTITEXCOORDP1UIPROC)load("glMultiTexCoordP1ui"); - glad_glMultiTexCoordP1uiv = (PFNGLMULTITEXCOORDP1UIVPROC)load("glMultiTexCoordP1uiv"); - glad_glMultiTexCoordP2ui = (PFNGLMULTITEXCOORDP2UIPROC)load("glMultiTexCoordP2ui"); - glad_glMultiTexCoordP2uiv = (PFNGLMULTITEXCOORDP2UIVPROC)load("glMultiTexCoordP2uiv"); - glad_glMultiTexCoordP3ui = (PFNGLMULTITEXCOORDP3UIPROC)load("glMultiTexCoordP3ui"); - glad_glMultiTexCoordP3uiv = (PFNGLMULTITEXCOORDP3UIVPROC)load("glMultiTexCoordP3uiv"); - glad_glMultiTexCoordP4ui = (PFNGLMULTITEXCOORDP4UIPROC)load("glMultiTexCoordP4ui"); - glad_glMultiTexCoordP4uiv = (PFNGLMULTITEXCOORDP4UIVPROC)load("glMultiTexCoordP4uiv"); - glad_glNormalP3ui = (PFNGLNORMALP3UIPROC)load("glNormalP3ui"); - glad_glNormalP3uiv = (PFNGLNORMALP3UIVPROC)load("glNormalP3uiv"); - glad_glColorP3ui = (PFNGLCOLORP3UIPROC)load("glColorP3ui"); - glad_glColorP3uiv = (PFNGLCOLORP3UIVPROC)load("glColorP3uiv"); - glad_glColorP4ui = (PFNGLCOLORP4UIPROC)load("glColorP4ui"); - glad_glColorP4uiv = (PFNGLCOLORP4UIVPROC)load("glColorP4uiv"); - glad_glSecondaryColorP3ui = (PFNGLSECONDARYCOLORP3UIPROC)load("glSecondaryColorP3ui"); - glad_glSecondaryColorP3uiv = (PFNGLSECONDARYCOLORP3UIVPROC)load("glSecondaryColorP3uiv"); -} static void load_GL_ARB_buffer_storage(GLADloadproc load) { if(!GLAD_GL_ARB_buffer_storage) return; glad_glBufferStorage = (PFNGLBUFFERSTORAGEPROC)load("glBufferStorage"); @@ -1073,10 +889,21 @@ static void load_GL_ARB_debug_output(GLADloadproc load) { glad_glDebugMessageCallbackARB = (PFNGLDEBUGMESSAGECALLBACKARBPROC)load("glDebugMessageCallbackARB"); glad_glGetDebugMessageLogARB = (PFNGLGETDEBUGMESSAGELOGARBPROC)load("glGetDebugMessageLogARB"); } +static void load_GL_ARB_sync(GLADloadproc load) { + if(!GLAD_GL_ARB_sync) return; + glad_glFenceSync = (PFNGLFENCESYNCPROC)load("glFenceSync"); + glad_glIsSync = (PFNGLISSYNCPROC)load("glIsSync"); + glad_glDeleteSync = (PFNGLDELETESYNCPROC)load("glDeleteSync"); + glad_glClientWaitSync = (PFNGLCLIENTWAITSYNCPROC)load("glClientWaitSync"); + glad_glWaitSync = (PFNGLWAITSYNCPROC)load("glWaitSync"); + glad_glGetInteger64v = (PFNGLGETINTEGER64VPROC)load("glGetInteger64v"); + glad_glGetSynciv = (PFNGLGETSYNCIVPROC)load("glGetSynciv"); +} static int find_extensionsGL(void) { if (!get_exts()) return 0; GLAD_GL_ARB_buffer_storage = has_ext("GL_ARB_buffer_storage"); GLAD_GL_ARB_debug_output = has_ext("GL_ARB_debug_output"); + GLAD_GL_ARB_sync = has_ext("GL_ARB_sync"); free_exts(); return 1; } @@ -1126,12 +953,9 @@ static void find_coreGL(void) { GLAD_GL_VERSION_2_0 = (major == 2 && minor >= 0) || major > 2; GLAD_GL_VERSION_2_1 = (major == 2 && minor >= 1) || major > 2; GLAD_GL_VERSION_3_0 = (major == 3 && minor >= 0) || major > 3; - GLAD_GL_VERSION_3_1 = (major == 3 && minor >= 1) || major > 3; - GLAD_GL_VERSION_3_2 = (major == 3 && minor >= 2) || major > 3; - GLAD_GL_VERSION_3_3 = (major == 3 && minor >= 3) || major > 3; - if (GLVersion.major > 3 || (GLVersion.major >= 3 && GLVersion.minor >= 3)) { + if (GLVersion.major > 3 || (GLVersion.major >= 3 && GLVersion.minor >= 0)) { max_loaded_major = 3; - max_loaded_minor = 3; + max_loaded_minor = 0; } } @@ -1150,13 +974,11 @@ int gladLoadGLLoader(GLADloadproc load) { load_GL_VERSION_2_0(load); load_GL_VERSION_2_1(load); load_GL_VERSION_3_0(load); - load_GL_VERSION_3_1(load); - load_GL_VERSION_3_2(load); - load_GL_VERSION_3_3(load); if (!find_extensionsGL()) return 0; load_GL_ARB_buffer_storage(load); load_GL_ARB_debug_output(load); + load_GL_ARB_sync(load); return GLVersion.major != 0 || GLVersion.minor != 0; } diff --git a/src/win/languages/cs-CZ.rc b/src/win/languages/cs-CZ.rc index 9b59a8bd9..200c5c9d4 100644 --- a/src/win/languages/cs-CZ.rc +++ b/src/win/languages/cs-CZ.rc @@ -41,7 +41,7 @@ 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 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/de-DE.rc b/src/win/languages/de-DE.rc index 748fbf715..9f7925854 100644 --- a/src/win/languages/de-DE.rc +++ b/src/win/languages/de-DE.rc @@ -41,7 +41,7 @@ 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-Kern)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0-Kern)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/en-GB.rc b/src/win/languages/en-GB.rc index f0c65adab..7ceeeed2b 100644 --- a/src/win/languages/en-GB.rc +++ b/src/win/languages/en-GB.rc @@ -41,7 +41,7 @@ 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 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/en-US.rc b/src/win/languages/en-US.rc index ade2e1ff9..05616379f 100644 --- a/src/win/languages/en-US.rc +++ b/src/win/languages/en-US.rc @@ -41,7 +41,7 @@ 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 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/es-ES.rc b/src/win/languages/es-ES.rc index 23a1eae81..7f2e2c2e4 100644 --- a/src/win/languages/es-ES.rc +++ b/src/win/languages/es-ES.rc @@ -41,7 +41,7 @@ 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 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/fi-FI.rc b/src/win/languages/fi-FI.rc index ff0130d0c..f3e4f10bf 100644 --- a/src/win/languages/fi-FI.rc +++ b/src/win/languages/fi-FI.rc @@ -41,7 +41,7 @@ BEGIN MENUITEM "&SDL (ohjelmistopohjainen)", IDM_VID_SDL_SW MENUITEM "SDL (&laitteistokiihdytetty)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL - MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index fe6cdc865..1a212d5cc 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -41,7 +41,7 @@ BEGIN MENUITEM "&SDL (Logiciel)", IDM_VID_SDL_SW MENUITEM "SDL (&Materiel)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL - MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index df1402995..0c4f4d38c 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -41,7 +41,7 @@ BEGIN MENUITEM "&SDL (Softver)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardver)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL - MENUITEM "Open&GL (3.3 jezgra)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 jezgra)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/hu-HU.rc b/src/win/languages/hu-HU.rc index 2acad9e18..4081389b7 100644 --- a/src/win/languages/hu-HU.rc +++ b/src/win/languages/hu-HU.rc @@ -44,7 +44,7 @@ BEGIN MENUITEM "&SDL (Szoftveres)", IDM_VID_SDL_SW MENUITEM "SDL (&Hardveres)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL - MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/it-IT.rc b/src/win/languages/it-IT.rc index 9cff4e642..1397da930 100644 --- a/src/win/languages/it-IT.rc +++ b/src/win/languages/it-IT.rc @@ -41,7 +41,7 @@ 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 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/ja-JP.rc b/src/win/languages/ja-JP.rc index f7a8f9770..044f48c3e 100644 --- a/src/win/languages/ja-JP.rc +++ b/src/win/languages/ja-JP.rc @@ -41,7 +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 - MENUITEM "OpenGL (3.3コア)(&G)", IDM_VID_OPENGL_CORE + MENUITEM "OpenGL (3.0コア)(&G)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "VNC(&V)", IDM_VID_VNC #endif diff --git a/src/win/languages/ko-KR.rc b/src/win/languages/ko-KR.rc index 4562fdbce..0c0924b84 100644 --- a/src/win/languages/ko-KR.rc +++ b/src/win/languages/ko-KR.rc @@ -41,7 +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 - MENUITEM "OpenGL (3.3 코어)(&G)", IDM_VID_OPENGL_CORE + MENUITEM "OpenGL (3.0 코어)(&G)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "VNC(&V)", IDM_VID_VNC #endif diff --git a/src/win/languages/pt-BR.rc b/src/win/languages/pt-BR.rc index 79c0b51cf..16eb2e48f 100644 --- a/src/win/languages/pt-BR.rc +++ b/src/win/languages/pt-BR.rc @@ -42,7 +42,7 @@ 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 (Núcleo 3.3)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (Núcleo 3.0)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/pt-PT.rc b/src/win/languages/pt-PT.rc index 9dc41847a..f983fd24e 100644 --- a/src/win/languages/pt-PT.rc +++ b/src/win/languages/pt-PT.rc @@ -41,7 +41,7 @@ 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 (Núcleo 3.3)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (Núcleo 3.0)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/ru-RU.rc b/src/win/languages/ru-RU.rc index 7f80abe87..9f78a06b3 100644 --- a/src/win/languages/ru-RU.rc +++ b/src/win/languages/ru-RU.rc @@ -41,7 +41,7 @@ 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 + MENUITEM "Open&GL (3.0)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/sl-SI.rc b/src/win/languages/sl-SI.rc index cdd9ecba3..e2cc77005 100644 --- a/src/win/languages/sl-SI.rc +++ b/src/win/languages/sl-SI.rc @@ -41,7 +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 - MENUITEM "Open&GL (Jedro 3.3)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (Jedro 3.0)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/tr-TR.rc b/src/win/languages/tr-TR.rc index b1c055ad1..76a14fb1d 100644 --- a/src/win/languages/tr-TR.rc +++ b/src/win/languages/tr-TR.rc @@ -41,7 +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 - MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/languages/zh-CN.rc b/src/win/languages/zh-CN.rc index 047591eb0..c6bf385e6 100644 --- a/src/win/languages/zh-CN.rc +++ b/src/win/languages/zh-CN.rc @@ -41,7 +41,7 @@ BEGIN MENUITEM "&SDL (软件)", IDM_VID_SDL_SW MENUITEM "SDL (硬件 &H)", IDM_VID_SDL_HW MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL - MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE + MENUITEM "Open&GL (3.0 Core)", IDM_VID_OPENGL_CORE #ifdef USE_VNC MENUITEM "&VNC", IDM_VID_VNC #endif diff --git a/src/win/win_opengl.c b/src/win/win_opengl.c index 69190b6b1..4a2db844f 100644 --- a/src/win/win_opengl.c +++ b/src/win/win_opengl.c @@ -473,7 +473,7 @@ static void opengl_main(void* param) SDL_SetHint(SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH, "1"); /* Is this actually doing anything...? */ SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3); - SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0); SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE); if (GLAD_GL_ARB_debug_output) @@ -526,7 +526,7 @@ static void opengl_main(void* param) SDL_GL_DeleteContext(context); opengl_fail(); } - + if (GLAD_GL_ARB_debug_output) { glEnable(GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB); @@ -592,14 +592,17 @@ static void opengl_main(void* param) } } - /* Check if commands that use buffers have been completed. */ - for (int i = 0; i < BUFFERCOUNT; i++) + if (GLAD_GL_ARB_sync) { - if (blit_info[i].sync != NULL && glClientWaitSync(blit_info[i].sync, GL_SYNC_FLUSH_COMMANDS_BIT, 0) != GL_TIMEOUT_EXPIRED) + /* Check if commands that use buffers have been completed. */ + for (int i = 0; i < BUFFERCOUNT; i++) { - glDeleteSync(blit_info[i].sync); - blit_info[i].sync = NULL; - atomic_flag_clear(&blit_info[i].in_use); + if (blit_info[i].sync != NULL && glClientWaitSync(blit_info[i].sync, GL_SYNC_FLUSH_COMMANDS_BIT, 0) != GL_TIMEOUT_EXPIRED) + { + glDeleteSync(blit_info[i].sync); + blit_info[i].sync = NULL; + atomic_flag_clear(&blit_info[i].in_use); + } } } @@ -653,8 +656,17 @@ static void opengl_main(void* param) glPixelStorei(GL_UNPACK_ROW_LENGTH, ROW_LENGTH); glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, info->w, info->h, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, NULL); - /* Add fence to track when above gl commands are complete. */ - info->sync = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0); + if (GLAD_GL_ARB_sync) + { + /* Add fence to track when above gl commands are complete. */ + info->sync = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0); + } + else + { + /* No sync objects; block until commands are complete. */ + glFinish(); + atomic_flag_clear(&info->in_use); + } read_pos = (read_pos + 1) % BUFFERCOUNT; @@ -788,10 +800,13 @@ static void opengl_main(void* param) SDL_ShowCursor(show_cursor); } - for (int i = 0; i < BUFFERCOUNT; i++) + if (GLAD_GL_ARB_sync) { - if (blit_info[i].sync != NULL) - glDeleteSync(blit_info[i].sync); + for (int i = 0; i < BUFFERCOUNT; i++) + { + if (blit_info[i].sync != NULL) + glDeleteSync(blit_info[i].sync); + } } finalize_glcontext(&gl); diff --git a/src/win/win_opengl_glslp.c b/src/win/win_opengl_glslp.c index 0dff03be9..6734b12ee 100644 --- a/src/win/win_opengl_glslp.c +++ b/src/win/win_opengl_glslp.c @@ -43,7 +43,7 @@ /** * @brief Default vertex shader. */ -static const GLchar* vertex_shader = "#version 330 core\n\ +static const GLchar* vertex_shader = "#version 130\n\ in vec2 VertexCoord;\n\ in vec2 TexCoord;\n\ out vec2 tex;\n\ @@ -55,7 +55,7 @@ void main(){\n\ /** * @brief Default fragment shader. */ -static const GLchar* fragment_shader = "#version 330 core\n\ +static const GLchar* fragment_shader = "#version 130\n\ in vec2 tex;\n\ uniform sampler2D texsampler;\n\ out vec4 color;\n\ @@ -173,8 +173,8 @@ GLuint load_custom_shaders(const char* path) { int success = 1; - const char* vertex_sources[2] = { "#version 330 core\n#define VERTEX\n", shader }; - const char* fragment_sources[2] = { "#version 330 core\n#define FRAGMENT\n", shader }; + const char* vertex_sources[2] = { "#version 130\n#define VERTEX\n", shader }; + const char* fragment_sources[2] = { "#version 130\n#define FRAGMENT\n", shader }; GLuint vertex_id = glCreateShader(GL_VERTEX_SHADER); GLuint fragment_id = glCreateShader(GL_FRAGMENT_SHADER); From 5af55a9cf8d417f6c71b7ed01d7525a7d0432e36 Mon Sep 17 00:00:00 2001 From: ts-korhonen Date: Sun, 5 Dec 2021 02:05:52 +0200 Subject: [PATCH 38/41] opengl: fix for shaders with version directive If a shaderfile contains a version directive, use that instead of default. --- src/win/win_opengl_glslp.c | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/src/win/win_opengl_glslp.c b/src/win/win_opengl_glslp.c index 6734b12ee..7944c14d1 100644 --- a/src/win/win_opengl_glslp.c +++ b/src/win/win_opengl_glslp.c @@ -173,17 +173,47 @@ GLuint load_custom_shaders(const char* path) { int success = 1; - const char* vertex_sources[2] = { "#version 130\n#define VERTEX\n", shader }; - const char* fragment_sources[2] = { "#version 130\n#define FRAGMENT\n", shader }; + const char* vertex_sources[3] = { "#version 130\n", "#define VERTEX\n", shader }; + const char* fragment_sources[3] = { "#version 130\n", "#define FRAGMENT\n", shader }; + + /* Check if the shader program defines version directive */ + char* version_start = strstr(shader, "#version"); + + /* If the shader program contains a version directive, + it must be captured and placed as the first statement. */ + if (version_start != NULL) + { + /* Version directive found, search the line end */ + char* version_end = strchr(version_start, '\n'); + + if (version_end != NULL) + { + char version[30]; + + size_t version_len = MIN(version_end - version_start + 1, 29); + + memcpy(version, version_start, version_len); + + version[version_len] = 0; /* string null terminator */ + + /* replace the default version directive */ + vertex_sources[0] = version; + fragment_sources[0] = version; + } + + /* Comment out the original version directive + as only one is allowed. */ + memset(version_start, '/', 2); + } GLuint vertex_id = glCreateShader(GL_VERTEX_SHADER); GLuint fragment_id = glCreateShader(GL_FRAGMENT_SHADER); - glShaderSource(vertex_id, 2, vertex_sources, NULL); + glShaderSource(vertex_id, 3, vertex_sources, NULL); glCompileShader(vertex_id); success *= check_status(vertex_id, OPENGL_BUILD_TARGET_VERTEX, path); - glShaderSource(fragment_id, 2, fragment_sources, NULL); + glShaderSource(fragment_id, 3, fragment_sources, NULL); glCompileShader(fragment_id); success *= check_status(fragment_id, OPENGL_BUILD_TARGET_FRAGMENT, path); From 41ba4ee86b8d84ba176dee1fde4e827f55732f08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laci=20b=C3=A1?= Date: Sun, 5 Dec 2021 11:48:31 +0100 Subject: [PATCH 39/41] Fix that POST card's message is disappearing when language/iconset change occurs --- src/include/86box/ui.h | 1 + src/unix/unix.c | 6 ++++++ src/win/win_preferences.c | 3 ++- src/win/win_stbar.c | 8 +++++++- 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/include/86box/ui.h b/src/include/86box/ui.h index 8b4e77fcd..256ae6002 100644 --- a/src/include/86box/ui.h +++ b/src/include/86box/ui.h @@ -66,6 +66,7 @@ extern void ui_status_update(void); extern int ui_sb_find_part(int tag); extern void ui_sb_set_ready(int ready); extern void ui_sb_update_panes(void); +extern void ui_sb_update_text(void); extern void ui_sb_update_tip(int meaning); extern void ui_sb_timer_callback(int pane); extern void ui_sb_update_icon(int tag, int val); diff --git a/src/unix/unix.c b/src/unix/unix.c index 2b949ea5f..47a65944d 100644 --- a/src/unix/unix.c +++ b/src/unix/unix.c @@ -453,6 +453,12 @@ ui_sb_update_panes() } +void +ui_sb_update_text() +{ + +} + void plat_get_dirname(char *dest, const char *path) { diff --git a/src/win/win_preferences.c b/src/win/win_preferences.c index 6bec48282..0c3e95892 100644 --- a/src/win/win_preferences.c +++ b/src/win/win_preferences.c @@ -193,8 +193,9 @@ preferences_settings_save(void) /* Update status bar */ config_changed = 1; - ui_sb_set_ready(0); + ui_sb_set_ready(-1); ui_sb_update_panes(); + ui_sb_update_text(); /* Save the language changes */ config_save(); diff --git a/src/win/win_stbar.c b/src/win/win_stbar.c index 17178a6bf..4eb4b98a1 100644 --- a/src/win/win_stbar.c +++ b/src/win/win_stbar.c @@ -485,6 +485,9 @@ StatusBarDestroyTips(void) /* API: mark the status bar as not ready. */ +/* Values: -1 - not ready, but don't clear POST text + 0 - not ready + 1 - ready */ void ui_sb_set_ready(int ready) { @@ -493,6 +496,9 @@ ui_sb_set_ready(int ready) ui_sb_set_text(NULL); } + if (ready == -1) + ready = 0; + sb_ready = ready; } @@ -1022,7 +1028,7 @@ StatusBarCreate(HWND hwndParent, uintptr_t idStatus, HINSTANCE hInst) } -static void +void ui_sb_update_text() { uint8_t part = 0xff; From 28e70abbf3b332322e004d6123e353dda8ba5569 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sun, 5 Dec 2021 16:49:35 +0100 Subject: [PATCH 40/41] Commented out excess W83787F logging. --- src/sio/sio_w83787f.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sio/sio_w83787f.c b/src/sio/sio_w83787f.c index ca0bfcc49..6affb7e1c 100644 --- a/src/sio/sio_w83787f.c +++ b/src/sio/sio_w83787f.c @@ -261,7 +261,7 @@ w83787f_write(uint16_t port, uint8_t val, void *priv) switch (dev->cur_reg) { case 0: - pclog("REG 00: %02X\n", val); + w83787_log("REG 00: %02X\n", val); if ((valxor & 0xc0) && (HAS_IDE_FUNCTIONALITY)) w83787f_ide_handler(dev); if (valxor & 0x30) From 983872f33b7540fe1d3838dad2b1ac381b7df07d Mon Sep 17 00:00:00 2001 From: ts-korhonen Date: Sun, 5 Dec 2021 19:22:46 +0200 Subject: [PATCH 41/41] Fix null termination issue in previous shader version fix --- src/win/win_opengl_glslp.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/win/win_opengl_glslp.c b/src/win/win_opengl_glslp.c index 7944c14d1..0537da899 100644 --- a/src/win/win_opengl_glslp.c +++ b/src/win/win_opengl_glslp.c @@ -188,13 +188,11 @@ GLuint load_custom_shaders(const char* path) if (version_end != NULL) { - char version[30]; + char version[30] = ""; size_t version_len = MIN(version_end - version_start + 1, 29); - memcpy(version, version_start, version_len); - - version[version_len] = 0; /* string null terminator */ + strncat(version, version_start, version_len); /* replace the default version directive */ vertex_sources[0] = version;