Merge branch '86Box:master' into ui-changes

This commit is contained in:
Jasmine Iwanek
2022-01-29 21:54:22 -05:00
committed by GitHub
104 changed files with 3704 additions and 865 deletions

View File

@@ -139,6 +139,13 @@ END
185 ICON DISCARDABLE ICON_PATH "icons/mo_empty_active.ico"
192 ICON DISCARDABLE ICON_PATH "icons/cassette_empty.ico"
193 ICON DISCARDABLE ICON_PATH "icons/cassette_empty_active.ico"
200 ICON DISCARDABLE ICON_PATH "icons/run.ico"
201 ICON DISCARDABLE ICON_PATH "icons/pause.ico"
202 ICON DISCARDABLE ICON_PATH "icons/send_cad.ico"
203 ICON DISCARDABLE ICON_PATH "icons/send_cae.ico"
204 ICON DISCARDABLE ICON_PATH "icons/hard_reset.ico"
205 ICON DISCARDABLE ICON_PATH "icons/acpi_shutdown.ico"
206 ICON DISCARDABLE ICON_PATH "icons/settings.ico"
232 ICON DISCARDABLE ICON_PATH "icons/cartridge_empty.ico"
240 ICON DISCARDABLE ICON_PATH "icons/machine.ico"
241 ICON DISCARDABLE ICON_PATH "icons/display.ico"
@@ -372,6 +379,7 @@ END
#include "languages/it-IT.rc"
#include "languages/ja-JP.rc"
#include "languages/ko-KR.rc"
#include "languages/pl-PL.rc"
#include "languages/pt-BR.rc"
#include "languages/pt-PT.rc"
#include "languages/ru-RU.rc"

View File

@@ -21,7 +21,7 @@ add_library(plat OBJECT win.c win_dynld.c win_cdrom.c win_keyboard.c
add_library(ui OBJECT win_ui.c win_icon.c win_stbar.c win_sdl.c win_dialog.c win_about.c
win_settings.c win_devconf.c win_snd_gain.c win_specify_dim.c win_new_floppy.c
win_jsconf.c win_media_menu.c win_preferences.c win_discord.c glad.c win_opengl.c
win_opengl_glslp.c 86Box.rc)
win_opengl_glslp.c win_toolbar.c 86Box.rc)
if(NOT CPPTHREADS)
target_sources(plat PRIVATE win_thread.c)

View File

@@ -69,6 +69,15 @@ ifeq ($(DEV_BUILD), y)
ifndef XL24
XL24 := y
endif
ifndef ISAMEM_RAMPAGE
ISAMEM_RAMPAGE := y
endif
ifndef ISAMEM_IAB
ISAMEM_IAB := y
endif
ifndef ISAMEM_BRAT
ISAMEM_BRAT := y
endif
ifndef OLIVETTI
OLIVETTI := y
endif
@@ -118,6 +127,15 @@ else
ifndef XL24
XL24 := n
endif
ifndef ISAMEM_RAMPAGE
ISAMEM_RAMPAGE := n
endif
ifndef ISAMEM_IAB
ISAMEM_IAB := n
endif
ifndef ISAMEM_BRAT
ISAMEM_BRAT := n
endif
ifndef OLIVETTI
OLIVETTI := n
endif
@@ -450,6 +468,18 @@ ifeq ($(XL24), y)
OPTS += -DUSE_XL24
endif
ifeq ($(ISAMEM_RAMPAGE), y)
OPTS += -DUSE_ISAMEM_RAMPAGE
endif
ifeq ($(ISAMEM_IAB), y)
OPTS += -DUSE_ISAMEM_IAB
endif
ifeq ($(ISAMEM_BRAT), y)
OPTS += -DUSE_ISAMEM_BRAT
endif
ifeq ($(OLIVETTI), y)
OPTS += -DUSE_OLIVETTI
DEVBROBJ += olivetti_eva.o
@@ -691,7 +721,7 @@ UIOBJ := win_ui.o win_icon.o win_stbar.o win_discord.o \
win_dialog.o win_about.o \
win_settings.o win_devconf.o win_snd_gain.o win_specify_dim.o win_preferences.o \
win_new_floppy.o win_jsconf.o \
win_media_menu.o
win_media_menu.o win_toolbar.o
ifeq ($(DINPUT), y)
PLATOBJ += win_joystick.o

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
src/win/icons/pause.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
src/win/icons/run.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
src/win/icons/send_cad.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
src/win/icons/send_cae.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
src/win/icons/settings.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Zobrazení"
BEGIN
MENUITEM "&Schovat stavový řádek", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Schovat panel &nástrojů", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Měnitelná velikost okna", IDM_VID_RESIZE
MENUITEM "&Pamatovat velikost a pozici", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Obrazy cartridge (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Všechny soubory (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Obnovit"
IDS_2155 "Pozastavit"
IDS_2156 "Stisknout Ctrl+Alt+Delete"
IDS_2157 "Stisknout Ctrl+Alt+Esc"
IDS_2158 "Resetovat"
IDS_2159 "Vypnout skrze rozhraní ACPI"
IDS_2160 "Nastavení"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Ansicht"
BEGIN
MENUITEM "&Statusleiste ausblenden", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Größenverstellbares Fenster", IDM_VID_RESIZE
MENUITEM "&Größe && Position merken", IDM_VID_REMEMBER
@@ -47,7 +48,7 @@ BEGIN
#endif
END
MENUITEM SEPARATOR
MENUITEM "Dimensionen spezifizieren...", IDM_VID_SPECIFY_DIM
MENUITEM "Fenstergröße einstellen...", IDM_VID_SPECIFY_DIM
MENUITEM "&4:3-Seitenverhältnis erzwingen", IDM_VID_FORCE43
POPUP "&Fensterskalierungsfaktor"
BEGIN
@@ -104,7 +105,7 @@ BEGIN
MENUITEM "&Einstellungen...", IDM_PREFERENCES
MENUITEM "&Discord-Integration aktivieren", IDM_DISCORD
MENUITEM SEPARATOR
MENUITEM "&Schallverstärkung...", IDM_SND_GAIN
MENUITEM "&Klangverstärkung...", IDM_SND_GAIN
#ifdef MTR_ENABLED
MENUITEM SEPARATOR
MENUITEM "Tracing starten\tStrg+T", IDM_ACTION_BEGIN_TRACE
@@ -270,7 +271,7 @@ END
#define STR_SND_GAIN "Klangverstärkung"
#define STR_NEW_FLOPPY "Neues Image"
#define STR_CONFIG "Optionen"
#define STR_SPECIFY_DIM "Abmessungen des Hauptfensters einstellen"
#define STR_SPECIFY_DIM "Fenstergröße einstellen"
#define STR_OK "OK"
#define STR_CANCEL "Abbrechen"
@@ -288,13 +289,13 @@ END
#define STR_WIDTH "Breite:"
#define STR_HEIGHT "Höhe:"
#define STR_LOCK_TO_SIZE "Auf diese Größe festlegen"
#define STR_LOCK_TO_SIZE "Feste Größe"
#define STR_MACHINE_TYPE "Maschinentyp:"
#define STR_MACHINE_TYPE "Systemtyp:"
#define STR_MACHINE "Maschine:"
#define STR_CONFIGURE "Einstellen"
#define STR_CPU_TYPE "CPU-Typ:"
#define STR_SPEED "Takt:"
#define STR_SPEED "Geschwindigkeit:"
#define STR_FPU "FPU-Einheit:"
#define STR_WAIT_STATES "Wartezustände:"
#define STR_MB "MB"
@@ -383,7 +384,7 @@ END
#define STR_250 "ZIP 250"
#define STR_ISARTC "ISA-Echtzeituhr:"
#define STR_ISAMEM "ISA-Speichererweiterung"
#define STR_ISAMEM "ISA-Speichererweiterung:"
#define STR_ISAMEM_1 "Steckkarte 1:"
#define STR_ISAMEM_2 "Steckkarte 2:"
#define STR_ISAMEM_3 "Steckkarte 3:"
@@ -418,13 +419,13 @@ BEGIN
IDS_2060 "An"
IDS_2061 "Aus"
IDS_2062 "Alle Images (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0Basissektorimages (*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Oberflächenimages (*.86F)\0*.86F\0"
IDS_2063 "Die Maschine ""%hs"" ist aufgrund von fehlenden ROMs im Verzeichnis roms/machines nicht verfügbar. Es wird auf eine verfügbare Maschine gewechselt."
IDS_2063 "Das System ""%hs"" ist aufgrund von fehlenden ROMs im Verzeichnis roms/machines nicht verfügbar. Es wird auf ein verfügbares System gewechselt."
END
STRINGTABLE DISCARDABLE
BEGIN
IDS_2064 "Die Videokarte ""%hs"" ist aufgrund von fehlenden ROMs im Verzeichnis roms/video nicht verfügbar. Es wird auf eine verfügbare Videokarte gewechselt."
IDS_2065 "Maschine"
IDS_2065 "System"
IDS_2066 "Anzeige"
IDS_2067 "Eingabegeräte"
IDS_2068 "Multimedia"
@@ -470,12 +471,12 @@ BEGIN
IDS_2104 "Tastaturbeschleuniger konnten nicht geladen werden."
IDS_2105 "Roheingaben konnten nicht registriert werden."
IDS_2106 "%u"
IDS_2107 "%u MB (ZKS: %i, %i, %i)"
IDS_2107 "%u MB (CHS: %i, %i, %i)"
IDS_2108 "Diskette %i (%s): %ls"
IDS_2109 "Alle Images (*.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\0Fortgeschrittene Sektorimages (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Basissektorimages (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0Fluximages (*.FDI)\0*.FDI\0Oberflächenimages (*.86F;*.MFM)\0*.86F;*.MFM\0Alle Dateien (*.*)\0*.*\0"
IDS_2110 "FreeType konnte nicht initialisiert werden"
IDS_2111 "SDL konnte nicht initialisiert werden, die Datei SDL2.dll wird benötigt"
IDS_2112 "Sind Sie sich sicher, dass Sie einen Hard-Reset für die emulierte Maschine durchführen wollen?"
IDS_2112 "Sind Sie sich sicher, dass Sie einen Hard-Reset für das emulierte System durchführen wollen?"
IDS_2113 "Sind Sie sich sicher, dass Sie 86Box beenden wollen?"
IDS_2114 "Ghostscript konnte nicht initialisiert werden"
IDS_2115 "MO %i (%ls): %ls"
@@ -530,14 +531,21 @@ BEGIN
IDS_2143 "OpenGL-Shader (*.GLSL)\0*.GLSL\0Alle Dateien (*.*)\0*.*\0"
IDS_2144 "OpenGL-Optionen"
IDS_2145 "Sie laden gerade eine nicht unterstützte Konfiguration"
IDS_2146 "Das Filtern der CPU-Typen basierend auf der ausgewählten Maschine ist für diese Maschine deaktiviert.\n\nDies ermöglicht es, dass man eine sonst nicht mit der ausgewählten Maschine inkompatible CPU auswählen kann. Allerdings kann dies zu Inkompatiblilitäten mit dem BIOS der Maschine oder anderen Programmen kommen.\n\nDas Aktivieren dieser Einstellung wird nicht unterstützt und sämtliche Bugreports können als ""invalid"" geschlossen werden."
IDS_2146 "Das Filtern der CPU-Typen basierend auf dem ausgewählten System ist für dieses System deaktiviert.\n\nDies ermöglicht es, dass man eine sonst nicht mit dem ausgewählten System inkompatible CPU auswählen kann. Allerdings kann dies zu Inkompatiblilitäten mit dem BIOS des Systems oder anderen Programmen kommen.\n\nDas Aktivieren dieser Einstellung wird nicht unterstützt und sämtliche Bugreports können als ""invalid"" geschlossen werden."
IDS_2147 "Fortfahren"
IDS_2148 "Kassette: %s"
IDS_2149 "Kassettenimages (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0Alle Dateien (*.*)\0*.*\0"
IDS_2150 "Cartridge %i: %ls"
IDS_2151 "Cartridgeimages (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Alle Dateien (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2152 "Fehler bei der Rendererinitialisierung"
IDS_2153 "Der OpenGL (3.0-Kern)-Renderer konnte nicht initialisiert werden. Bitte benutzen Sie einen anderen Renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&View"
BEGIN
MENUITEM "&Hide status bar", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Resizeable window", IDM_VID_RESIZE
MENUITEM "R&emember size && position", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Cartridge images (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0All files (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&View"
BEGIN
MENUITEM "&Hide status bar", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Resizeable window", IDM_VID_RESIZE
MENUITEM "R&emember size && position", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Cartridge images (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0All files (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Vista"
BEGIN
MENUITEM "&Ocultar barra de estado", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Ventana redimensionable", IDM_VID_RESIZE
MENUITEM "&Recordar tamaño y posición", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Imágenes de Cartucho (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0All files (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Näytä"
BEGIN
MENUITEM "&Piilota tilapalkki", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Salli koon muuttaminen", IDM_VID_RESIZE
MENUITEM "&Muista koko ja sijainti", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "ROM-moduulikuvat (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Kaikki tiedostot (*.*)\0*.*\0"
IDS_2152 "Virhe renderöijän alustuksessa"
IDS_2153 "OpenGL (3.0 Core) renderöijän alustus epäonnistui. Käytä toista renderöijää."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Vue"
BEGIN
MENUITEM "&Masquer la barre de status", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "Fenètre &Retaillable", IDM_VID_RESIZE
MENUITEM "S&auvegarder taille && position", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Images cartouche (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Tous les fichiers (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Pogled"
BEGIN
MENUITEM "&Sakrij statusni redak", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Prozor s promjenjivim veličinama", IDM_VID_RESIZE
MENUITEM "&Zapamtite veličinu i položaj", IDM_VID_REMEMBER
@@ -382,7 +383,7 @@ END
#define STR_ZIP_DRIVES "ZIP pogoni:"
#define STR_250 "ZIP 250"
#define STR_ISARTC "Ura u stvarnom vrijemenu RTC:"
#define STR_ISARTC "Sat stvarnog vremena (RTC):"
#define STR_ISAMEM "Proširenje memorije ISA"
#define STR_ISAMEM_1 "Kartica 1:"
#define STR_ISAMEM_2 "Kartica 2:"
@@ -536,8 +537,15 @@ BEGIN
IDS_2149 "Slike audio kasete (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0Sve datoteke (*.*)\0*.*\0"
IDS_2150 "Kaseta %i: %ls"
IDS_2151 "Slike kasete (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Sve datoteke (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2152 "Nije moguće inicijalizirati renderer"
IDS_2153 "Nije moguće inicijalizirati OpenGL (3.0 jezgra) renderer. Molimte koristite drugi renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -37,6 +37,7 @@ BEGIN
POPUP "&Nézet"
BEGIN
MENUITEM "Állapotsor &elrejtése", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Átméretezhető ablak", IDM_VID_RESIZE
MENUITEM "Méret és pozíció &megjegyzése", IDM_VID_REMEMBER
@@ -542,6 +543,13 @@ BEGIN
IDS_2151 "ROM-kazetta képek (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Minden fájl (*.*)\0*.*\0"
IDS_2152 "Hiba történt a renderelő inicializálásakor"
IDS_2153 "Az OpenGL (3.0 Core) megjelenítő-motort nem sikerült inicializálni. Kérem használjon másik renderelőt."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -33,6 +33,7 @@ BEGIN
POPUP "&Visualizza"
BEGIN
MENUITEM "&Nascondi barra di stato", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Finestra ridimensionabile", IDM_VID_RESIZE
MENUITEM "R&icorda dimensioni e posizione", IDM_VID_REMEMBER
@@ -539,6 +540,13 @@ BEGIN
IDS_2151 "Immagini cartuccia (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Tutti i file (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -20,7 +20,7 @@ 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 "ハードリセット(&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
@@ -32,9 +32,10 @@ BEGIN
POPUP "表示(&V)"
BEGIN
MENUITEM "ステータスバーを隠す(&H)", IDM_VID_HIDE_STATUS_BAR
MENUITEM "ツールバーを隠す(&T)", IDM_VID_HIDE_TOOLBAR
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
@@ -47,9 +48,9 @@ BEGIN
#endif
END
MENUITEM SEPARATOR
MENUITEM "ウィンドウのサイズを指定する...", IDM_VID_SPECIFY_DIM
MENUITEM "画面比率を4:3に合わせる(&O)", IDM_VID_FORCE43
POPUP "ウィンドウの倍率(&W)"
MENUITEM "ウィンドウのサイズを指定...", IDM_VID_SPECIFY_DIM
MENUITEM "4:3アスペクト比を固定(&O)", IDM_VID_FORCE43
POPUP "ウィンドウの表示倍率(&W)"
BEGIN
MENUITEM "0.5x(&0)", IDM_VID_SCALE_1X
MENUITEM "1x(&1)", IDM_VID_SCALE_2X
@@ -58,53 +59,53 @@ 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 "DPIスケー(&D)", IDM_VID_HIDPI
MENUITEM "HiDPIスケーリング(&D)", IDM_VID_HIDPI
MENUITEM SEPARATOR
MENUITEM "フルスクリーン(&F)\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN
POPUP "フルスクリーンの比率(&S)"
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
MENUITEM "正方形ピクセル(アスペクト比を維持)(&S)", IDM_VID_FS_KEEPRATIO
MENUITEM "数倍(&I)", IDM_VID_FS_INT
END
POPUP "E&GA/(S)VGAの設定"
BEGIN
MENUITEM "色反転VGAモニター(&I)", IDM_VID_INVERT
POPUP "VGA画面タイプ(&T)"
MENUITEM "色反転(&I)", IDM_VID_INVERT
POPUP "画面タイプ(&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
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)"
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
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
MENUITEM "単色モニター用コントラストを変更(&M)", IDM_VID_CGACON
END
MENUITEM "メディア(&M)", IDM_MEDIA
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
MENUITEM "環境設定(&P)...", IDM_PREFERENCES
MENUITEM "Discordとの連携を可能にする(&D)", IDM_DISCORD
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
@@ -115,35 +116,35 @@ BEGIN
POPUP "ログ(&L)"
BEGIN
# ifdef ENABLE_BUSLOGIC_LOG
MENUITEM "BusLogicのログを有効にする\tCtrl+F4", IDM_LOG_BUSLOGIC
MENUITEM "BusLogicのログを有効\tCtrl+F4", IDM_LOG_BUSLOGIC
# endif
# ifdef ENABLE_CDROM_LOG
MENUITEM "CD-ROMのログを有効にする\tCtrl+F5", IDM_LOG_CDROM
MENUITEM "CD-ROMのログを有効\tCtrl+F5", IDM_LOG_CDROM
# endif
# ifdef ENABLE_D86F_LOG
MENUITEM "フロッピー(86F)のログを有効にする\tCtrl+F6", IDM_LOG_D86F
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
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
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
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
@@ -151,7 +152,7 @@ BEGIN
POPUP "ヘルプ(&H)"
BEGIN
MENUITEM "ドキュメント(&D)...", IDM_DOCS
MENUITEM "86Boxについて(&A)...", IDM_ABOUT
MENUITEM "86Boxのバージョン情報(&A)...", IDM_ABOUT
END
END
@@ -164,15 +165,15 @@ CassetteSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "新規イメージ(&N)...", IDM_CASSETTE_IMAGE_NEW
MENUITEM "新規イメージ(&N)...", IDM_CASSETTE_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "既存のイメージ(&E)...", IDM_CASSETTE_IMAGE_EXISTING
MENUITEM "既存のイメージ(ライトプロテクト付き) (&W)...", IDM_CASSETTE_IMAGE_EXISTING_WP
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_RECORD
MENUITEM "再生(&P)", IDM_CASSETTE_PLAY
MENUITEM "冒頭に巻き戻す(&R)", IDM_CASSETTE_REWIND
MENUITEM "最後まで早送りする(&F)", IDM_CASSETTE_FAST_FORWARD
MENUITEM "最後まで早送り(&F)", IDM_CASSETTE_FAST_FORWARD
MENUITEM SEPARATOR
MENUITEM "取り出す(&J)", IDM_CASSETTE_EJECT
END
@@ -192,12 +193,12 @@ FloppySubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "新規イメージ(&N)...", IDM_FLOPPY_IMAGE_NEW
MENUITEM "新規イメージ(&N)...", IDM_FLOPPY_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "既存のイメージ(&E)...", IDM_FLOPPY_IMAGE_EXISTING
MENUITEM "既存のイメージ(ライトプロテクト付き) (&W)...", IDM_FLOPPY_IMAGE_EXISTING_WP
MENUITEM "既存のイメージを開く(&E)...", IDM_FLOPPY_IMAGE_EXISTING
MENUITEM "既存のイメージを開く(書き込み保護)(&W)...", IDM_FLOPPY_IMAGE_EXISTING_WP
MENUITEM SEPARATOR
MENUITEM "86Fへのエクスポート(&X)...", IDM_FLOPPY_EXPORT_TO_86F
MENUITEM "86Fイメージにエクスポート(&X)...", IDM_FLOPPY_EXPORT_TO_86F
MENUITEM SEPARATOR
MENUITEM "取り出す(&J)", IDM_FLOPPY_EJECT
END
@@ -210,7 +211,7 @@ BEGIN
MENUITEM "ミュート(&M)", IDM_CDROM_MUTE
MENUITEM SEPARATOR
MENUITEM "空(&M)", IDM_CDROM_EMPTY
MENUITEM "前のイメージを再読み込み (&R)", IDM_CDROM_RELOAD
MENUITEM "前のイメージを再読み込み(&R)", IDM_CDROM_RELOAD
MENUITEM SEPARATOR
MENUITEM "イメージ(&I)", IDM_CDROM_IMAGE
END
@@ -220,13 +221,13 @@ ZIPSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "新規イメージ(&N)...", IDM_ZIP_IMAGE_NEW
MENUITEM "新規イメージ(&N)...", IDM_ZIP_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "既存のイメージ(&E)...", IDM_ZIP_IMAGE_EXISTING
MENUITEM "既存のイメージ(ライトプロテクト付き) (&W)...", IDM_ZIP_IMAGE_EXISTING_WP
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
MENUITEM "前のイメージを再読み込み(&R)", IDM_ZIP_RELOAD
END
END
@@ -234,13 +235,13 @@ MOSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "新規イメージ(&N)...", IDM_MO_IMAGE_NEW
MENUITEM "新規イメージ(&N)...", IDM_MO_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "既存のイメージ(&E)...", IDM_MO_IMAGE_EXISTING
MENUITEM "既存のイメージ(ライトプロテクト付き) (&W)...", IDM_MO_IMAGE_EXISTING_WP
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
MENUITEM "前のイメージを再読み込み(&R)", IDM_MO_RELOAD
END
END
@@ -248,16 +249,16 @@ VidGLSubMenu MENU DISCARDABLE
BEGIN
POPUP "目標フレームレート(&F)"
BEGIN
MENUITEM "ビデオと同期(&S)", IDM_VID_GL_FPS_BLITTER
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 "VSync(&V)", IDM_VID_GL_VSYNC
MENUITEM "シェーダ選択(&S)...", IDM_VID_GL_SHADER
MENUITEM "シェーダ削除(&R)", IDM_VID_GL_NOSHADER
MENUITEM "垂直同期(VSync)(&V)", IDM_VID_GL_VSYNC
MENUITEM "シェーダーを選択(&S)...", IDM_VID_GL_SHADER
MENUITEM "シェーダーを削除(&R)", IDM_VID_GL_NOSHADER
END
@@ -282,9 +283,9 @@ END
#define STR_GAIN "ゲイン値"
#define STR_FILE_NAME "ファイル名:"
#define STR_DISK_SIZE "ディスクの容量:"
#define STR_RPM_MODE "RPMモード:"
#define STR_PROGRESS "進行:"
#define STR_DISK_SIZE "ディスクサイズ:"
#define STR_RPM_MODE "回転数モード:"
#define STR_PROGRESS "進行状況:"
#define STR_WIDTH "幅:"
#define STR_HEIGHT "高さ:"
@@ -299,11 +300,11 @@ END
#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_TIME_SYNC "時刻同期機能"
#define STR_DISABLED "無効にする"
#define STR_ENABLED_LOCAL "有効にする (現地時間)"
#define STR_ENABLED_UTC "有効にする (UTC)"
#define STR_DYNAREC "動的コンパイ"
#define STR_VIDEO "ビデオカード:"
#define STR_VOODOO "Voodooグラフィック"
@@ -318,15 +319,15 @@ END
#define STR_SOUND "サウンドカード:"
#define STR_MIDI "MIDI出力デバイス:"
#define STR_MIDI_IN "MIDI入力デバイス:"
#define STR_MPU401 "MPU-401を単独使用"
#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_COM1 "COM1デバイス:"
#define STR_COM2 "COM2デバイス:"
@@ -368,8 +369,8 @@ END
#define STR_SECTORS "セクター:"
#define STR_HEADS "ヘッド:"
#define STR_CYLS "シリンダー:"
#define STR_SIZE_MB "容量(MB):"
#define STR_TYPE "形式:"
#define STR_SIZE_MB "サイズ(MB):"
#define STR_TYPE "タイプ:"
#define STR_IMG_FORMAT "イメージ形式:"
#define STR_BLOCK_SIZE "ブロックサイズ:"
@@ -411,19 +412,19 @@ 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セットを<a href=""https://github.com/86Box/roms/releases/latest"">ダウンロード</a>して、romsディレクトリに解凍してください。"
IDS_2056 "86Boxで使用可能なROMイメージが見つかりませんでした。\n\nROMセットを<a href=""https://github.com/86Box/roms/releases/latest"">ダウンロード</a>して、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ディレクトリにROMがないため、マシン%hsは使用できません。使用可能なマシンに切り替えます。"
IDS_2063 "roms/machinesディレクトリにROMがないため、マシン%hsは使用できません。使用可能なマシンに切り替えます。"
END
STRINGTABLE DISCARDABLE
BEGIN
IDS_2064 "roms/videoディレクトリにROMがないため、ビデオカード%hsは使用できません。使用可能なビデオカードに切り替えます。"
IDS_2064 "roms/videoディレクトリにROMがないため、ビデオカード%hsは使用できません。使用可能なビデオカードに切り替えます。"
IDS_2065 "マシン"
IDS_2066 "画面表示"
IDS_2067 "入力デバイス"
@@ -434,11 +435,11 @@ BEGIN
IDS_2072 "ハードディスク"
IDS_2073 "フロッピー/CD-ROMドライブ"
IDS_2074 "その他のリムーバブルデバイス"
IDS_2075 "その他の周辺機器"
IDS_2075 "その他の周辺装置"
IDS_2076 "表面イメージ (*.86F)\0*.86F\0"
IDS_2077 "クリックするとマウスを直接入力します"
IDS_2078 "F12+F8キーでマウスの直接入力を解します"
IDS_2079 "F12+F8キーまたは中クリックでマウスの直接入力を解します"
IDS_2077 "クリックするとマウスをキャプチャします"
IDS_2078 "F8+F12キーでマウスを解します"
IDS_2079 "F8+F12キーまたは中ボタンでマウスを解します"
END
STRINGTABLE DISCARDABLE
@@ -455,42 +456,42 @@ BEGIN
IDS_2089 "ビデオレンダラーが初期化できません。"
IDS_2090 "既定値"
IDS_2091 "%iつの待機状態"
IDS_2092 "形式"
IDS_2092 "タイプ"
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"
IDS_2103 "なし"
IDS_2104 "キーボードアクセラレータを読み込めません。"
IDS_2105 "Raw入力が登録できません。"
IDS_2104 "キーボードアクセラレータを読み込めません。"
IDS_2105 "生の入力が登録できません。"
IDS_2106 "%u"
IDS_2107 "%u MB (CHS: %i, %i, %i)"
IDS_2108 "フロッピー %i (%s): %ls"
IDS_2109 "すべてのイメージ (*.0??;*.1??;*.??0;*.86F;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.JSON;*.TD0;*.*FD?;*.MFM;*.XDF)\0*.0??;*.1??;*.??0;*.86F;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.JSON;*.TD0;*.*FD?;*.MFM;*.XDF\0アドバンスドセクターイメージ (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0基本セクターイメージ (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0フラックスイメージ (*.FDI)\0*.FDI\0表面イメージ (*.86F;*.MFM)\0*.86F;*.MFM\0すべてのファイル (*.*)\0*.*\0"
IDS_2110 "FreeTypeが初期化できません"
IDS_2111 "SDLが初期化できません。SDL2.dllが必要です"
IDS_2112 "起動中のマシンを再起動しますか?"
IDS_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_2117 "86Boxへようこそ"
IDS_2118 "内コントローラー"
IDS_2119 "終了"
IDS_2120 "ROMが見つかりません"
IDS_2121 "設定を保存しますか?"
IDS_2122 "保存すると使用中のマシンが再起動されます。"
IDS_2122 "保存すると使用中のマシンがハードリセットされます。"
IDS_2123 "保存"
IDS_2124 "86Boxについて"
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 License version 2以降でリリースされています。詳しくは LICENSE をご覧ください。"
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 "ハードウェアが利用できません"
#ifdef _WIN32
@@ -511,15 +512,15 @@ BEGIN
#else
#define LIB_NAME_GS "libgs"
#endif
IDS_2132 LIB_NAME_GS "はPostScriptファイルをPDFに自動変換させる為に必要です。\n\n汎用PostScriptプリンターに送った任意のドキュメントはPostScript(.ps)ファイルとして保存されます。"
IDS_2132 "PostScriptファイルをPDFに自動変換するには" LIB_NAME_GS "が必要です。\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 "リセットしない"
@@ -528,16 +529,23 @@ BEGIN
IDS_2141 "%hs デバイスの設定"
IDS_2142 "モニターのスリープモード"
IDS_2143 "OpenGLシェーダー (*.GLSL)\0*.GLSL\0すべてのファイル (*.*)\0*.*\0"
IDS_2144 "OpenGL設定"
IDS_2144 "OpenGL設定"
IDS_2145 "サポートされていない設定を読み込んでいます"
IDS_2146 "選択したマシンに基づくCPUタイプのフィルタリングは、このエミュレートされたマシンでは無効になっています。\n\nこれにより、選択したマシンと互換性のないCPUが選択できます。ただし、マシンのBIOSまたは他のソフトウェアとの互換性が失われる可能性があります。\n\nこの設定の有効化は公式サポートができません。また、バグレポートが無効として閉じられる場合があります。"
IDS_2147 "つづく"
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"
IDS_2152 "レンダラーの初期化エラー"
IDS_2153 "OpenGL3.0コアレンダラーが初期化できませんでした。別のレンダラーを使用してください。"
IDS_2153 "OpenGL (3.0コア) レンダラーが初期化できませんでした。別のレンダラーを使用してください。"
IDS_2154 "実行を再開"
IDS_2155 "実行を一時停止"
IDS_2156 "Ctrl+Alt+DELを押し"
IDS_2157 "Ctrl+Alt+Escを押し"
IDS_2158 "ハードリセット"
IDS_2159 "ACPIシャットダウン"
IDS_2160 "設定"
END
STRINGTABLE DISCARDABLE
@@ -547,33 +555,33 @@ BEGIN
IDS_4098 "%01i"
IDS_4099 "MFM/RLLまたはESDIのCD-ROMドライブが存在しません"
IDS_4100 "カスタム..."
IDS_4101 "カスタム(大)..."
IDS_4101 "カスタム (大型)..."
IDS_4102 "新規のディスクを追加"
IDS_4103 "既定のディスクを追加"
IDS_4104 "HDIディスクイメージは4GB以上にはできません。"
IDS_4105 "ディスクイメージは127GB以上にはできません。"
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_4109 "512以外のセクタサイズを持HDIまたはHDXイメージはサポートされていません。"
IDS_4110 "USBはまだサポートされていません"
IDS_4111 "ディスクイメージファイルが既に存在します"
IDS_4112 "有効なファイル名を指定してください。"
IDS_4113 "ディスクイメージが作成されました"
IDS_4114 "ファイルが存在し、読み取り可能であることを確認します。"
IDS_4114 "ファイルが存在し、読み取り可能であることを確認してください。"
IDS_4115 "ファイルが書き込み可能なディレクトリに保存されていることを確認してください。"
IDS_4116 "ディスクイメージが大きすぎます"
IDS_4117 "新規ディスクのパーティション設定とフォーマットを必ずしといてください。"
IDS_4118 "選択したファイル上書きされます。使っていいですか?"
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_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"

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "표시(&V)"
BEGIN
MENUITEM "상태 바 숨기기(&H)", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "창 크기 조절 가능하게 하기(&R)", IDM_VID_RESIZE
MENUITEM "창 크기와 위치를 기억하기(&E)", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "카트리지 이미지 (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0모든 파일 (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

647
src/win/languages/pl-PL.rc Normal file
View File

@@ -0,0 +1,647 @@
////////////////////////////////////////////////////////////////////////////
// Polish (pl-PL) resources
#ifdef _WIN32
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
#pragma code_page(65001)
#endif //_WIN32
#define AUTHORS
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
MainMenu MENU DISCARDABLE
BEGIN
POPUP "&Akcje"
BEGIN
MENUITEM "&Klawaitura wymaga przechwytu myszy", IDM_ACTION_KBD_REQ_CAPTURE
MENUITEM "&Prawy CTRL to lewy Alt", IDM_ACTION_RCTRL_IS_LALT
MENUITEM SEPARATOR
MENUITEM "&Twardy reset...", 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 "W&yjdź...", IDM_ACTION_EXIT
END
POPUP "&Widok"
BEGIN
MENUITEM "&Ukryj pasek statusu", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Ukryj &pasek narzędzi", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Okno o zmiennym rozmiarze", IDM_VID_RESIZE
MENUITEM "P&amiętaj rozmiar &i pozycję", IDM_VID_REMEMBER
MENUITEM SEPARATOR
POPUP "Re&nderer"
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.0 Core)", IDM_VID_OPENGL_CORE
#ifdef USE_VNC
MENUITEM "&VNC", IDM_VID_VNC
#endif
END
MENUITEM SEPARATOR
MENUITEM "Określ rozmiary...", IDM_VID_SPECIFY_DIM
MENUITEM "&Wymuś proporcje wyświetlania 4:3", IDM_VID_FORCE43
POPUP "&Czynnik skalowania okna"
BEGIN
MENUITEM "&0.5x", IDM_VID_SCALE_1X
MENUITEM "&1x", IDM_VID_SCALE_2X
MENUITEM "1.&5x", IDM_VID_SCALE_3X
MENUITEM "&2x", IDM_VID_SCALE_4X
END
POPUP "Metoda filtrowania"
BEGIN
MENUITEM "&Nearest", IDM_VID_FILTER_NEAREST
MENUITEM "&Linear", IDM_VID_FILTER_LINEAR
END
MENUITEM "Skalowanie Hi&DPI", IDM_VID_HIDPI
MENUITEM SEPARATOR
MENUITEM "&Pełny ekran\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN
POPUP "Fullscreen &stretch mode"
BEGIN
MENUITEM "&Tryb rozciągania na pełnym ekranie", IDM_VID_FS_FULL
MENUITEM "&4:3", IDM_VID_FS_43
MENUITEM "&Kwadratowe piksele (Zachowaj proporcje)", IDM_VID_FS_KEEPRATIO
MENUITEM "&Skalowanie całkowite", IDM_VID_FS_INT
END
POPUP "Ustawienia E&GA/(S)VGA"
BEGIN
MENUITEM "&Odwrócony monitor VGA", IDM_VID_INVERT
POPUP "Rodzaj ekranu &VGA"
BEGIN
MENUITEM "RGB - &Kolorowy", IDM_VID_GRAY_RGB
MENUITEM "&RGB - Skala szarości", IDM_VID_GRAY_MONO
MENUITEM "&Bursztynowy monitor", IDM_VID_GRAY_AMBER
MENUITEM "&Zielony monitor", IDM_VID_GRAY_GREEN
MENUITEM "&Biały monitor", IDM_VID_GRAY_WHITE
END
POPUP "Typ konwersji &w skali szarości"
BEGIN
MENUITEM "BT&601 (NTSC/PAL)", IDM_VID_GRAYCT_601
MENUITEM "BT&709 (HDTV)", IDM_VID_GRAYCT_709
MENUITEM "&Średni", IDM_VID_GRAYCT_AVE
END
END
MENUITEM SEPARATOR
MENUITEM "Overscan dla CGA/PCjr/Tandy/E&GA/(S)VGA", IDM_VID_OVERSCAN
MENUITEM "Zmień kontrast dla &monochromatycznego ekranu", IDM_VID_CGACON
END
MENUITEM "&Nośnik", IDM_MEDIA
POPUP "&Narzędzia"
BEGIN
MENUITEM "&Ustawienia...", IDM_CONFIG
MENUITEM "&Aktualizuj ikony na pasku statusu", IDM_UPDATE_ICONS
MENUITEM SEPARATOR
MENUITEM "Zrób &zrzut ekranu\tCtrl+F11", IDM_ACTION_SCREENSHOT
MENUITEM SEPARATOR
MENUITEM "&Preferencje...", IDM_PREFERENCES
MENUITEM "Włącz integrację z &Discord", IDM_DISCORD
MENUITEM SEPARATOR
MENUITEM "Wzmocnienie &dźwięku...", IDM_SND_GAIN
#ifdef MTR_ENABLED
MENUITEM SEPARATOR
MENUITEM "Rozpocznij śledzenie\tCtrl+T", IDM_ACTION_BEGIN_TRACE
MENUITEM "Zakończ śledzenie\tCtrl+T", IDM_ACTION_END_TRACE
#endif
END
#if defined(ENABLE_LOG_TOGGLES) || defined(ENABLE_LOG_COMMANDS)
POPUP "&Logowanie"
BEGIN
# ifdef ENABLE_BUSLOGIC_LOG
MENUITEM "Włącz logu BusLogic\tCtrl+F4", IDM_LOG_BUSLOGIC
# endif
# ifdef ENABLE_CDROM_LOG
MENUITEM "Włącz logi CD-ROM\tCtrl+F5", IDM_LOG_CDROM
# endif
# ifdef ENABLE_D86F_LOG
MENUITEM "Włącz logi dyskietek (86F)\tCtrl+F6", IDM_LOG_D86F
# endif
# ifdef ENABLE_FDC_LOG
MENUITEM "Włącz logi kontrolera dyskietek\tCtrl+F7", IDM_LOG_FDC
# endif
# ifdef ENABLE_IDE_LOG
MENUITEM "Włącz logi IDE\tCtrl+F8", IDM_LOG_IDE
# endif
# ifdef ENABLE_SERIAL_LOG
MENUITEM "Włącz logi portu szeregowego\tCtrl+F3", IDM_LOG_SERIAL
# endif
# ifdef ENABLE_NIC_LOG
MENUITEM "Włącz logi sieci\tCtrl+F9", IDM_LOG_NIC
# endif
# ifdef ENABLE_LOG_COMMANDS
# ifdef ENABLE_LOG_TOGGLES
MENUITEM SEPARATOR
# endif
# ifdef ENABLE_LOG_BREAKPOINT
MENUITEM "&Punkt przerwania dziennika\tCtrl+F10", IDM_LOG_BREAKPOINT
# endif
# ifdef ENABLE_VRAM_DUMP
MENUITEM "Zrzuć pamięć &wideo\tCtrl+F1", IDM_DUMP_VRAM
# endif
# endif
END
#endif
POPUP "&Pomoc"
BEGIN
MENUITEM "&Dokumentacja...", IDM_DOCS
MENUITEM "&O 86Box...", IDM_ABOUT
END
END
StatusBarMenu MENU DISCARDABLE
BEGIN
MENUITEM SEPARATOR
END
CassetteSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Nowy obraz...", IDM_CASSETTE_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "&Istniejący obraz...", IDM_CASSETTE_IMAGE_EXISTING
MENUITEM "Istniejący obraz (&Chroniony przed zapisem)...", IDM_CASSETTE_IMAGE_EXISTING_WP
MENUITEM SEPARATOR
MENUITEM "&Nagraj", IDM_CASSETTE_RECORD
MENUITEM "&Odtwórz", IDM_CASSETTE_PLAY
MENUITEM "&Przewiń do początku", IDM_CASSETTE_REWIND
MENUITEM "&Przewiń do końca", IDM_CASSETTE_FAST_FORWARD
MENUITEM SEPARATOR
MENUITEM "W&yjmij", IDM_CASSETTE_EJECT
END
END
CartridgeSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Obraz...", IDM_CARTRIDGE_IMAGE
MENUITEM SEPARATOR
MENUITEM "W&yjmij", IDM_CARTRIDGE_EJECT
END
END
FloppySubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Nowy obraz...", IDM_FLOPPY_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "&Istniejący obraz...", IDM_FLOPPY_IMAGE_EXISTING
MENUITEM "Istniejący obraz (&Chroniony przed zapisem)...", IDM_FLOPPY_IMAGE_EXISTING_WP
MENUITEM SEPARATOR
MENUITEM "E&ksportuj do 86F...", IDM_FLOPPY_EXPORT_TO_86F
MENUITEM SEPARATOR
MENUITEM "W&yjmij", IDM_FLOPPY_EJECT
END
END
CdromSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Ścisz", IDM_CDROM_MUTE
MENUITEM SEPARATOR
MENUITEM "P&usty", IDM_CDROM_EMPTY
MENUITEM "&Przeładuj poprzedni obraz", IDM_CDROM_RELOAD
MENUITEM SEPARATOR
MENUITEM "&Obraz", IDM_CDROM_IMAGE
END
END
ZIPSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Nowy obraz...", IDM_ZIP_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "&Istniejący obraz...", IDM_ZIP_IMAGE_EXISTING
MENUITEM "Istniejący obraz (&Chroniony przed zapisem)...", IDM_ZIP_IMAGE_EXISTING_WP
MENUITEM SEPARATOR
MENUITEM "W&yjmij", IDM_ZIP_EJECT
MENUITEM "&Przeładuj poprzedni obraz", IDM_ZIP_RELOAD
END
END
MOSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Nowy obraz...", IDM_MO_IMAGE_NEW
MENUITEM SEPARATOR
MENUITEM "&Istniejący obraz...", IDM_MO_IMAGE_EXISTING
MENUITEM "Istniejący obraz (&Chroniony przed zapisem)...", IDM_MO_IMAGE_EXISTING_WP
MENUITEM SEPARATOR
MENUITEM "W&yjmij", IDM_MO_EJECT
MENUITEM "&Przeładuj poprzedni obraz", IDM_MO_RELOAD
END
END
VidGLSubMenu MENU DISCARDABLE
BEGIN
POPUP "Docelowa &liczba klatek na sekundę"
BEGIN
MENUITEM "&Zsynchronizuj z wideo", 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
MENUITEM "&60 fps", IDM_VID_GL_FPS_60
MENUITEM "&75 fps", IDM_VID_GL_FPS_75
END
MENUITEM "&VSync", IDM_VID_GL_VSYNC
MENUITEM "&Wybierz shader...", IDM_VID_GL_SHADER
MENUITEM "&Usuń shader", IDM_VID_GL_NOSHADER
END
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
#define STR_PREFERENCES "Preferencje"
#define STR_SND_GAIN "Wzmocnienie dźwięku"
#define STR_NEW_FLOPPY "Nowy obraz"
#define STR_CONFIG "Ustawienia"
#define STR_SPECIFY_DIM "Określ rozmiary okna"
#define STR_OK "OK"
#define STR_CANCEL "Anuluj"
#define STR_GLOBAL "Zapisz ustawienia jako &globalne ustawienia domyślne"
#define STR_DEFAULT "&Domyślny"
#define STR_LANGUAGE "Język:"
#define STR_ICONSET "Zestaw ikon:"
#define STR_GAIN "Wzmacniacz"
#define STR_FILE_NAME "Nazwa pliku:"
#define STR_DISK_SIZE "Rozmiar dysku:"
#define STR_RPM_MODE "Tryb RPM:"
#define STR_PROGRESS "Postęp:"
#define STR_WIDTH "Szerokość:"
#define STR_HEIGHT "Wysokość:"
#define STR_LOCK_TO_SIZE "Stały rozmiar"
#define STR_MACHINE_TYPE "Rodzaj maszyny:"
#define STR_MACHINE "Maszyna:"
#define STR_CONFIGURE "Konfiguruj"
#define STR_CPU_TYPE "Rodzaj procesora:"
#define STR_SPEED "Szybkość:"
#define STR_FPU "Jednostka FPU:"
#define STR_WAIT_STATES "Stany oczekiwania:"
#define STR_MB "MB"
#define STR_MEMORY "Pamięć:"
#define STR_TIME_SYNC "Synchronizacja czasu"
#define STR_DISABLED "Wyłączona"
#define STR_ENABLED_LOCAL "Włączona (czas lokalny)"
#define STR_ENABLED_UTC "Włączona (UTC)"
#define STR_DYNAREC "Dynamiczny rekompilator"
#define STR_VIDEO "Wideo:"
#define STR_VOODOO "Grafika Voodoo"
#define STR_MOUSE "Mysz:"
#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_SOUND "Karta dźwiękowa:"
#define STR_MIDI "Urządzenie wyjściowe MIDI:"
#define STR_MIDI_IN "Urządzenie wejściowe MIDI:"
#define STR_MPU401 "Samodzielne urządzenie MPU-401"
#define STR_SSI "Innovation SSI-2001"
#define STR_CMS "CMS / Game Blaster"
#define STR_GUS "Gravis Ultrasound"
#define STR_FLOAT "Użyj dźwięku FLOAT32"
#define STR_NET_TYPE "Rodzaj sieci:"
#define STR_PCAP "Urządzenie PCap:"
#define STR_NET "Karta sieciowa:"
#define STR_LPT1 "Urządzenie LPT1:"
#define STR_LPT2 "Urządzenie LPT2:"
#define STR_LPT3 "Urządzenie LPT3:"
#define STR_SERIAL1 "Port szeregowy 1"
#define STR_SERIAL2 "Port szeregowy 2"
#define STR_SERIAL3 "Port szeregowy 3"
#define STR_SERIAL4 "Port Szeregowy 4"
#define STR_PARALLEL1 "Port równoległy 1"
#define STR_PARALLEL2 "Port równoległy 2"
#define STR_PARALLEL3 "Port równoległy 3"
#define STR_HDC "Kontroler dysku twardego:"
#define STR_FDC "Kontroler dyskietek:"
#define STR_IDE_TER "Trzeciorzędowy kontroler IDE"
#define STR_IDE_QUA "Czwartorzędowy kontroler IDE"
#define STR_SCSI "SCSI"
#define STR_SCSI_1 "Kontroler 1:"
#define STR_SCSI_2 "Kontroler 2:"
#define STR_SCSI_3 "Kontroler 3:"
#define STR_SCSI_4 "Kontroler 4:"
#define STR_CASSETTE "Kaseta"
#define STR_HDD "Dyski twarde:"
#define STR_NEW "&Nowy..."
#define STR_EXISTING "&Istniejący..."
#define STR_REMOVE "&Usuń"
#define STR_BUS "Magistrala:"
#define STR_CHANNEL "Kanał:"
#define STR_ID "ID:"
#define STR_SPECIFY "&Określ..."
#define STR_SECTORS "Sektory:"
#define STR_HEADS "Głowice:"
#define STR_CYLS "Cylindry:"
#define STR_SIZE_MB "Rozmiar (MB):"
#define STR_TYPE "Rodzaj:"
#define STR_IMG_FORMAT "Format obrazu:"
#define STR_BLOCK_SIZE "Rozmiar bloku:"
#define STR_FLOPPY_DRIVES "Napędy dyskietek:"
#define STR_TURBO "Rozrządy Turbo"
#define STR_CHECKBPB "Sprawdzaj BPB"
#define STR_CDROM_DRIVES "Napędy CD-ROM:"
#define STR_MO_DRIVES "Napędy MO:"
#define STR_ZIP_DRIVES "Napędy ZIP:"
#define STR_250 "ZIP 250"
#define STR_ISARTC "ISA RTC:"
#define STR_ISAMEM "Rozszerzenie pamięci ISA"
#define STR_ISAMEM_1 "Karta 1:"
#define STR_ISAMEM_2 "Karta 2:"
#define STR_ISAMEM_3 "Karta 3:"
#define STR_ISAMEM_4 "Karta 4:"
#define STR_BUGGER "Urządzenie ISABugger"
#define STR_POSTCARD "Karta POST"
#define FONT_SIZE 9
#define FONT_NAME "Segoe UI"
#include "dialogs.rc"
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
2048 "86Box"
IDS_2049 "Błąd"
IDS_2050 "Fatalny błąd"
IDS_2051 "<reserved>"
IDS_2052 "Naciśnij klawisze CTRL+ALT+PAGE DOWN aby wrócić to trybu okna."
IDS_2053 "Szybkość"
IDS_2054 "ZIP %03i %i (%s): %ls"
IDS_2055 "Obrazy ZIP (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0"
IDS_2056 "86Box nie może znaleźć obrazów ROM nadających się do użytku.\n\nProszę pobrać zestaw obrazów ROM ze strony <a href=""https://github.com/86Box/roms/releases/latest"">download</a>, i rozpakować je do katalogu ""roms""."
IDS_2057 "(pusty)"
IDS_2058 "Obrazy ZIP (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0Wszystkie pliki (*.*)\0*.*\0"
IDS_2059 "Turbo"
IDS_2060 "Włącz"
IDS_2061 "Wyłącz"
IDS_2062 "Wszystkie obrazy (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0Podstawowe obrazy sektorów(*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Obrazy powierzchniowe (*.86F)\0*.86F\0"
IDS_2063 "Maszyna ""%hs"" nie jest dostępna, ponieważ brakuje obrazów ROM w katalogu roms/machines. Przełączanie na dostępną maszynę."
END
STRINGTABLE DISCARDABLE
BEGIN
IDS_2064 "Karta wideo ""%hs"" nie jest dostępna, ponieważ brakuje obrazów ROM w katalogu roms/video. Przełączanie na dostępną kartę wideo."
IDS_2065 "Maszyna"
IDS_2066 "Ekran"
IDS_2067 "Urządzenia wejściowe"
IDS_2068 "Dźwięk"
IDS_2069 "Sieć"
IDS_2070 "Porty (COM & LPT)"
IDS_2071 "Kontrolery pamięci"
IDS_2072 "Dyski twarde"
IDS_2073 "Napędy dyskietek i CD-ROM"
IDS_2074 "Inne urządzenia wymienne"
IDS_2075 "Inne urządzenia peryferyjne"
IDS_2076 "Obrazy powierzchniowe (*.86F)\0*.86F\0"
IDS_2077 "Kliknij w celu przechwycenia myszy"
IDS_2078 "Naciśnij klawisze F8+F12 w celu uwolnienia myszy"
IDS_2079 "Naciśnij klawisze F8+F12 lub środkowy przycisk w celu uwolnienia myszy"
END
STRINGTABLE DISCARDABLE
BEGIN
IDS_2080 "Nie można zainicjować FluidSynth"
IDS_2081 "Magistrala"
IDS_2082 "Plik"
IDS_2083 "C"
IDS_2084 "H"
IDS_2085 "S"
IDS_2086 "MB"
IDS_2087 "Sprawdzaj BPB"
IDS_2088 "KB"
IDS_2089 "Nie można zainicjować renderera wideo."
IDS_2090 "Domyślny"
IDS_2091 "%i Stany oczekiwania"
IDS_2092 "Rodzaj"
IDS_2093 "Nie udało się ustawić PCap"
IDS_2094 "Nie znaleziono urządzeń PCap"
IDS_2095 "Nieprawidłowe urządzenie PCap"
IDS_2096 "Standardowe joysticki 2-przyciskowe"
IDS_2097 "Standardowy joystick 4-przyciskowy"
IDS_2098 "Standardowy joystick 6-przyciskowy"
IDS_2099 "Standardowy joystick 8-przyciskowy"
IDS_2100 "CH Flightstick Pro"
IDS_2101 "Microsoft SideWinder Pad"
IDS_2102 "Thrustmaster Flight Control System"
IDS_2103 "Żaden"
IDS_2104 "Nie można załadować akceleratorów klawiaturowych."
IDS_2105 "Nie można zarejestrować surowych danych wejściowych."
IDS_2106 "%u"
IDS_2107 "%u MB (CHS: %i, %i, %i)"
IDS_2108 "Dyskietka %i (%s): %ls"
IDS_2109 "Wszystkie obrazy (*.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\0Zaawansowane obrazy sektorów (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Podstawowe obrazy sektorów (*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?)\0*.0??;*.1??;*.??0;*.BIN;*.CQ?;*.D??;*.FLP;*.HDM;*.IM?;*.XDF;*.*FD?\0Flux images (*.FDI)\0*.FDI\0Obrazy powierzchniowe (*.86F;*.MFM)\0*.86F;*.MFM\0All files (*.*)\0*.*\0"
IDS_2110 "Nie można zainicjować FreeType"
IDS_2111 "Nie można zainicjować SDL, wymagany SDL2.dll"
IDS_2112 "Jesteś pewien że chcesz wykonać twardy reset emulowanej maszyny?"
IDS_2113 "Jesteś pewien że chcesz zakończyć 86Box?"
IDS_2114 "Nie można zainicjować Ghostscript"
IDS_2115 "MO %i (%ls): %ls"
IDS_2116 "Obrazy MO (*.IM?;*.MDI)\0*.IM?;*.MDI\0All files (*.*)\0*.*\0"
IDS_2117 "Witamy w 86Box!"
IDS_2118 "Kontroler wewnętrzny"
IDS_2119 "Zakończ"
IDS_2120 "Nie znaleziono obrazów ROM"
IDS_2121 "Czy chcesz zapisać ustawienia?"
IDS_2122 "To spowoduje twardy reset wirtualnej maszyny."
IDS_2123 "Zapisz"
IDS_2124 "O 86Box"
IDS_2125 "86Box v" EMU_VERSION
IDS_2126 "Emulator starych komputerów\n\nAutorzy: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, i inni.\n\nPrzetłumaczony przez: Fanta-Shokata\n\nWydany na licencji GNU General Public License w wersji 2 lub nowszej. Zobacz LICENSE aby uzyskać więcej informacji."
IDS_2127 "OK"
IDS_2128 "Sprzęt niedostępny"
#ifdef _WIN32
#define LIB_NAME_PCAP "WinPcap"
#else
#define LIB_NAME_PCAP "libpcap"
#endif
IDS_2129 "Sprawdź, czy " LIB_NAME_PCAP " jest zainstalowany i czy posiadasz połączenie sieciowe kompatybilne z " LIB_NAME_PCAP "."
IDS_2130 "Nieprawidłowa konfiguracja"
#ifdef _WIN32
#define LIB_NAME_FREETYPE "freetype.dll"
#else
#define LIB_NAME_FREETYPE "libfreetype"
#endif
IDS_2131 LIB_NAME_FREETYPE " jest wymagany do emulacji drukarki ESC-P."
#ifdef _WIN32
#define LIB_NAME_GS "gsdll32.dll"
#else
#define LIB_NAME_GS "libgs"
#endif
IDS_2132 LIB_NAME_GS " jest wymagany do automatycznej konwersji plików PostScript do PDF.\n\nDokumenty wysłane do ogólnej drukarki PostScript zostaną zapisane jako pliki PostScript (.ps)."
#ifdef _WIN32
#define LIB_NAME_FLUIDSYNTH "libfluidsynth.dll"
#else
#define LIB_NAME_FLUIDSYNTH "libfluidsynth"
#endif
IDS_2133 LIB_NAME_FLUIDSYNTH " jest wymagany dla wyjścia FluidSynth MIDI."
IDS_2134 "Przechodzenie do trybu pełnoekranowego"
IDS_2135 "Nie pokazuj więcej tego komunikatu"
IDS_2136 "Nie kończ"
IDS_2137 "Przywróć"
IDS_2138 "Nie przywracaj"
IDS_2139 "Obrazy MO (*.IM?;*.MDI)\0*.IM?;*.MDI\0All files (*.*)\0*.*\0"
IDS_2140 "Obrazy CD-ROM (*.ISO;*.CUE)\0*.ISO;*.CUE\0All files (*.*)\0*.*\0"
IDS_2141 "Konfiguracja urządzenia %hs"
IDS_2142 "Monitor w trybie czuwania"
IDS_2143 "Shadery OpenGL (*.GLSL)\0*.GLSL\0Wszystkie pliki (*.*)\0*.*\0"
IDS_2144 "Opcje OpenGL"
IDS_2145 "Ładujesz nieobsługiwaną konfigurację"
IDS_2146 "Wybór rodzaju procesora oparty na wybranej maszynie jest wyłączony dla tej emulowanej maszyny.\n\nPozwala to na wybór procesora który jest niekompatybilny z wybraną maszyną. Jednak możesz napotkać niezgodności z BIOS-em maszyny lub innym oprogramowaniem.\n\nAktywacja tego ustawienia nie jest wspierana i każde zgłoszenie błędu może zostać zamknięte jako nieważne."
IDS_2147 "Kontynuuj"
IDS_2148 "Kaseta: %s"
IDS_2149 "Obrazy kaset (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0Wszystkie pliki (*.*)\0*.*\0"
IDS_2150 "Kartrydż %i: %ls"
IDS_2151 "Obrazy kartrydżu (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Wszystkie pliki (*.*)\0*.*\0"
IDS_2152 "Błąd inicjalizacji renderera"
IDS_2153 "Nie można zainicjować renderera OpenGL (3.0 Core). Użyj innego."
IDS_2154 "Wznów wykonywanie"
IDS_2155 "Zatrzymaj wykonywanie"
IDS_2156 "Naciśnij Ctrl+Alt+Del"
IDS_2157 "Naciśnij Ctrl+Alt+Esc"
IDS_2158 "Twardy reset"
IDS_2159 "Wyłączenie ACPI"
IDS_2160 "Ustawienia"
END
STRINGTABLE DISCARDABLE
BEGIN
IDS_4096 "Dysk twardy (%s)"
IDS_4097 "%01i:%01i"
IDS_4098 "%01i"
IDS_4099 "Napędy CD-ROM MFM/RLL lub ESDI nigdy nie istniały"
IDS_4100 "Niestandardowy..."
IDS_4101 "Niestandardowy (duży)..."
IDS_4102 "Dodaj nowy dysk twardy"
IDS_4103 "Dodaj istniejący dysk twardy"
IDS_4104 "Obrazy dysków HDI nie mogą być większe niż 4 GB."
IDS_4105 "Obrazy dysków nie mogą być większe niż 127 GB."
IDS_4106 "Obrazy dysku twardego (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Wszystkie pliki (*.*)\0*.*\0"
IDS_4107 "Nie można odczytać pliku"
IDS_4108 "Nie można zapisać pliku"
IDS_4109 "Obrazy HDI lub HDX z rozmiarem sektora innym niż 512 nie są wspierane."
IDS_4110 "USB nie jest jeszcze wspierane"
IDS_4111 "Plik obrazu dysku już istnieje"
IDS_4112 "Określ prawidłową nazwę pliku."
IDS_4113 "Utworzono obraz dysku"
IDS_4114 "Sprawdź, czy plik istnieje i nadaje się do odczytu."
IDS_4115 "Sprawdź, czy plik jest zapiyswany w katalogu z możliwością zapisu."
IDS_4116 "Obraz dysku jest za duży"
IDS_4117 "Nie zapomnij o partycjonowaniu u sformatowaniu nowo utworzego dysku"
IDS_4118 "Wybrany plik zostanie nadpisany. Czy na pewno chcesz użyć tego pliku?"
IDS_4119 "Niewspierany obraz dysku"
IDS_4120 "Nadpisz"
IDS_4121 "Nie nadpisuj"
IDS_4122 "Obraz surowy (.img)"
IDS_4123 "Obraz HDI (.hdi)"
IDS_4124 "Obraz HDX (.hdx)"
IDS_4125 "VHD o stałym rozmiarze (.vhd)"
IDS_4126 "VHD o dynamicznym rozmiarze (.vhd)"
IDS_4127 "VHD różnicujący (.vhd)"
IDS_4128 "Duże bloki (2 MB)"
IDS_4129 "Małe bloki (512 KB)"
IDS_4130 "Pliki VHD (*.VHD)\0*.VHD\0Wszystkie pliki (*.*)\0*.*\0"
IDS_4131 "Wybierz nadrzędny plik VHD"
IDS_4132 "Może to oznaczać, że obraz nadrzędny został zmodyfikowany po utworzeniu obrazu różnicującego.\n\nMoże się to również zdarzyć, jeśli pliki obrazów przeniesione lub skopiowane, lub wystąpił błąd w programie, który utworzył ten dysk\n\nCzy chcesz naprawić sygnatury czasowe?"
IDS_4133 "Sygnatury czasowe dysku nadrzędnego i podrzędnego nie zgadzają się"
IDS_4134 "Nie można naprawić sygnatury czasowej 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 "Wyłączony"
IDS_5381 "ATAPI"
IDS_5382 "SCSI"
IDS_5632 "Wyłączony"
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 (klaster 1024)"
IDS_5898 "DMF (klaster 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 "Idealne obroty"
IDS_6145 "1%% poniżej idealnych obrotów"
IDS_6146 "1.5%% poniżej idealnych obrotów"
IDS_6147 "2%% poniżej idealnych obrotów"
IDS_7168 "(Domyślne ustawienie systemowe)"
END
#define IDS_LANG_ENUS IDS_7168
// Polish (pl-PL) resources
/////////////////////////////////////////////////////////////////////////////

View File

@@ -35,6 +35,7 @@ BEGIN
POPUP "&Exibir"
BEGIN
MENUITEM "&Ocultar barra de status", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Ocultar &barra de ferramenta", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Janela redimensionável", IDM_VID_RESIZE
MENUITEM "&Lembrar tamanho e posição", IDM_VID_REMEMBER
@@ -374,7 +375,7 @@ END
#define STR_SIZE_MB "Tamanho (MB):"
#define STR_TYPE "Tipo:"
#define STR_IMG_FORMAT "Formato:"
#define STR_BLOCK_SIZE "Tamanho do bloco:"
#define STR_BLOCK_SIZE "Bloco:"
#define STR_FLOPPY_DRIVES "Unidades de disquete:"
#define STR_TURBO "Turbo"
@@ -484,7 +485,7 @@ BEGIN
IDS_2115 "Magneto-óptico %i (%ls): %ls"
IDS_2116 "Imagens magneto-ópticas (*.IM?;*.MDI)\0*.IM?;*.MDI\0Todos os arquivos (*.*)\0*.*\0"
IDS_2117 "Bem-vindo ao 86Box!"
IDS_2118 "Controle interno"
IDS_2118 "Controlador interno"
IDS_2119 "Sair"
IDS_2120 "Nenhum ROM encontrada"
IDS_2121 "Você deseja salvar as configurações?"
@@ -541,6 +542,13 @@ BEGIN
IDS_2151 "Imagens de cartucho (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Todos os arquivos (*.*)\0*.*\0"
IDS_2152 "Erro ao inicializar o renderizador"
IDS_2153 "O renderizador OpenGL (Núcleo 3.0) não pôde ser inicializado. Use outro renderizador."
IDS_2154 "Continuar a execução"
IDS_2155 "Pausar a execução"
IDS_2156 "Pressionar Ctrl+Alt+Del"
IDS_2157 "Pressionar Ctrl+Alt+Esc"
IDS_2158 "Reinicialização completa"
IDS_2159 "Desligamento por ACPI"
IDS_2160 "Configurações"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Ver"
BEGIN
MENUITEM "&Ocultar barra de estado", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Janela redimensionável", IDM_VID_RESIZE
MENUITEM "&Lembrar tamanho e posição", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Imagens de cartucho (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Todos os ficheiros (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -31,12 +31,13 @@ BEGIN
END
POPUP "&Вид"
BEGIN
MENUITEM "&Скрыть строку статуса", IDM_VID_HIDE_STATUS_BAR
MENUITEM "&Скрыть строку состояния", IDM_VID_HIDE_STATUS_BAR
MENUITEM "С&крыть панель инструментов", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Изменяемый размер окна", IDM_VID_RESIZE
MENUITEM "&Запомнить размер и положение", IDM_VID_REMEMBER
MENUITEM SEPARATOR
POPUP "&Рендерер"
POPUP "&Рендеринг"
BEGIN
MENUITEM "&SDL (Software)", IDM_VID_SDL_SW
MENUITEM "SDL (&Hardware)", IDM_VID_SDL_HW
@@ -97,7 +98,7 @@ BEGIN
POPUP "&Инструменты"
BEGIN
MENUITEM "&Настройки машины...", IDM_CONFIG
MENUITEM "&Обновление значков строки статуса", IDM_UPDATE_ICONS
MENUITEM "&Обновление значков строки состояния", IDM_UPDATE_ICONS
MENUITEM SEPARATOR
MENUITEM "Сделать с&криншот\tCtrl+F11", IDM_ACTION_SCREENSHOT
MENUITEM SEPARATOR
@@ -143,7 +144,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
@@ -207,7 +208,7 @@ CdromSubmenu MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "&Mute", IDM_CDROM_MUTE
MENUITEM "О&тключить звук", IDM_CDROM_MUTE
MENUITEM SEPARATOR
MENUITEM "П&устой", IDM_CDROM_EMPTY
MENUITEM "&Снова загрузить предыдущий образ", IDM_CDROM_RELOAD
@@ -293,8 +294,8 @@ END
#define STR_MACHINE_TYPE "Тип машины:"
#define STR_MACHINE "Системная плата:"
#define STR_CONFIGURE "Настройка"
#define STR_CPU_TYPE "Тип ЦПУ:"
#define STR_SPEED "Speed:"
#define STR_CPU_TYPE "Тип ЦП:"
#define STR_SPEED "Скорость:"
#define STR_FPU "FPU:"
#define STR_WAIT_STATES "Циклы ожидания:"
#define STR_MB "МБ"
@@ -468,7 +469,7 @@ BEGIN
IDS_2102 "Система управления полетом Thrustmaster"
IDS_2103 "Нет"
IDS_2104 "Невозможно загрузить ускорители клавиатуры."
IDS_2105 "Невозможно зарегистрировать необработанный ввод."
IDS_2105 "Невозможно зарегистрировать необработанный (RAW) ввод."
IDS_2106 "%u"
IDS_2107 "%u МБ (CHS: %i, %i, %i)"
IDS_2108 "Дисковод %i (%s): %ls"
@@ -530,14 +531,21 @@ 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 "Выбор типов ЦП для этой системной платы на данной эмулируемой машине отключен.\n\nЭто позволяет выбрать процессор, который в противном случае несовместим с выбранной материнской платой. Однако, вы можете столкнуться с несовместимостью с BIOS материнской платы или другим ПО.\n\nВключение этого параметра официально не поддерживается, и все поданные отчеты об ошибках могут быть закрыты как недействительные."
IDS_2147 "Продолжить"
IDS_2148 "Кассета: %s"
IDS_2149 "Образы кассет (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0Все файлы (*.*)\0*.*\0"
IDS_2150 "Картридж %i: %ls"
IDS_2151 "Образы картриджей (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Все файлы (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2152 "Ошибка инициализации рендерера"
IDS_2153 "Невозможно инициализировать рендерер OpenGL (3.0). Пожалуйста, используйте другой рендерер."
IDS_2154 "Возобновить выполнение"
IDS_2155 "Приостановить выполнение"
IDS_2156 "Нажать Ctrl+Alt+Del"
IDS_2157 "Нажать Ctrl+Alt+Esc"
IDS_2158 "Холодная перезагрузка"
IDS_2159 "Сигнал завершения ACPI"
IDS_2160 "Настройки машины"
END
STRINGTABLE DISCARDABLE
@@ -546,10 +554,10 @@ BEGIN
IDS_4097 "%01i:%01i"
IDS_4098 "%01i"
IDS_4099 "MFM/RLL или ESDI дисководов CD-ROM никогда не существовало"
IDS_4100 "Custom..."
IDS_4101 "Custom (large)..."
IDS_4100 "Задать вручную..."
IDS_4101 "Задать вручную (large)..."
IDS_4102 "Создать новый жёсткий диск"
IDS_4103 "Добавить существующий жёсткий диск"
IDS_4103 "Выбрать существующий жёсткий диск"
IDS_4104 "Размер образов дисков HDI не может превышать 4 ГБ."
IDS_4105 "Размер образов дисков не может превышать 127 ГБ."
IDS_4106 "Образы жёстких дисков (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Все файлы (*.*)\0*.*\0"

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Pogled"
BEGIN
MENUITEM "&Skrij statusno vrstico", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "S&premenljiva velikost okna", IDM_VID_RESIZE
MENUITEM "&Zapomni si velikost in položaj", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Slike spominskega vložka (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Vse datoteke (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "&Görüntüleme"
BEGIN
MENUITEM "&Durum çubuğunu gizle", IDM_VID_HIDE_STATUS_BAR
MENUITEM "Hide &toolbar", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "&Yeniden boyutlandırılabilir pencere", IDM_VID_RESIZE
MENUITEM "&Pencere boyut ve pozisyonunu hatırla", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "Kartuş imajları (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Tüm dosyalar (*.*)\0*.*\0"
IDS_2152 "Error initializing renderer"
IDS_2153 "OpenGL (3.0 Core) renderer could not be initialized. Use another renderer."
IDS_2154 "Resume execution"
IDS_2155 "Pause execution"
IDS_2156 "Press Ctrl+Alt+Del"
IDS_2157 "Press Ctrl+Alt+Esc"
IDS_2158 "Hard reset"
IDS_2159 "ACPI shutdown"
IDS_2160 "Settings"
END
STRINGTABLE DISCARDABLE

View File

@@ -32,6 +32,7 @@ BEGIN
POPUP "查看(&V)"
BEGIN
MENUITEM "隐藏状态栏(&H)", IDM_VID_HIDE_STATUS_BAR
MENUITEM "隐藏工具栏(&T)", IDM_VID_HIDE_TOOLBAR
MENUITEM SEPARATOR
MENUITEM "窗口大小可调(&R)", IDM_VID_RESIZE
MENUITEM "记住窗口大小和位置(&E)", IDM_VID_REMEMBER
@@ -538,6 +539,13 @@ BEGIN
IDS_2151 "卡带镜像 (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0所有文件 (*.*)\0*.*\0"
IDS_2152 "初始化渲染器时出错"
IDS_2153 "无法初始化 OpenGL (3.0 核心) 渲染器。请使用其他渲染器。"
IDS_2154 "恢复执行"
IDS_2155 "暂停执行"
IDS_2156 "按 Ctrl+Alt+Del"
IDS_2157 "按 Ctrl+Alt+Esc"
IDS_2158 "硬重置"
IDS_2159 "ACPI 关机"
IDS_2160 "设置"
END
STRINGTABLE DISCARDABLE

View File

@@ -450,9 +450,6 @@ WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpszArg, int nCmdShow)
{
char **argv = NULL;
int argc, i;
wchar_t * AppID = L"86Box.86Box\0";
SetCurrentProcessExplicitAppUserModelID(AppID);
/* Initialize the COM library for the main thread. */
CoInitializeEx(NULL, COINIT_MULTITHREADED);
@@ -1121,10 +1118,7 @@ plat_setfullscreen(int on)
GetClientRect(hwndMain, &rect);
temp_x = rect.right - rect.left + 1;
if (hide_status_bar)
temp_y = rect.bottom - rect.top + 1;
else
temp_y = rect.bottom - rect.top + 1 - sbar_height;
temp_y = rect.bottom - rect.top + 1 - (hide_status_bar ? 0 : sbar_height) - (hide_tool_bar ? 0 : tbar_height);
} else {
if (dpi_scale) {
temp_x = MulDiv((vid_resize & 2) ? fixed_size_x : unscaled_size_x, dpi, 96);
@@ -1138,10 +1132,7 @@ plat_setfullscreen(int on)
if (vid_resize >= 2)
MoveWindow(hwndMain, window_x, window_y, window_w, window_h, TRUE);
if (hide_status_bar)
ResizeWindowByClientArea(hwndMain, temp_x, temp_y);
else
ResizeWindowByClientArea(hwndMain, temp_x, temp_y + sbar_height);
ResizeWindowByClientArea(hwndMain, temp_x, temp_y + (hide_status_bar ? 0 : sbar_height) + (hide_tool_bar ? 0 : tbar_height));
}
/* Render window. */

View File

@@ -87,6 +87,13 @@ const _ICON_DATA icon_files[] =
{185, "mo_empty_active.ico"},
{192, "cassette_empty.ico"},
{193, "cassette_empty_active.ico"},
{200, "run.ico"},
{201, "pause.ico"},
{202, "send_cad.ico"},
{203, "send_cae.ico"},
{204, "hard_reset.ico"},
{205, "acpi_shutdown.ico"},
{206, "settings.ico"},
{232, "cartridge_empty.ico"},
{240, "machine.ico"},
{241, "display.ico"},
@@ -120,9 +127,11 @@ void win_load_icon_set()
win_clear_icon_set();
win_system_icon_set();
if (strlen(icon_set) == 0)
if (strlen(icon_set) == 0) {
ToolBarLoadIcons();
return;
}
char path_root[2048] = {0}, temp[2048] = {0};
wchar_t wtemp[2048] = {0};
@@ -150,4 +159,6 @@ void win_load_icon_set()
uint32_t curr_lang = lang_id;
lang_id = 0;
set_language(curr_lang);
ToolBarLoadIcons();
}

View File

@@ -52,8 +52,13 @@ typedef struct {
} disk_size_t;
static const disk_size_t disk_sizes[14] = { { 0, 1, 2, 1, 0, 40, 8, 2, 0xfe, 2, 2, 1, 64 }, /* 160k */
{ 0, 1, 2, 1, 0, 40, 9, 2, 0xfc, 2, 2, 1, 64 }, /* 180k */
static const disk_size_t disk_sizes[14] = {
// { 1, 1, 2, 1, 1, 77, 26, 0, 0, 4, 2, 6, 68 }, /* 250k 8" */
// { 1, 2, 2, 1, 1, 77, 26, 0, 0, 4, 2, 6, 68 }, /* 500k 8" */
// { 1, 1, 2, 1, 1, 77, 8, 3, 0, 1, 2, 2, 192 }, /* 616k 8" */
// { 1, 2, 0, 1, 1, 77, 8, 3, 0, 1, 2, 2, 192 }, /* 1232k 8" */
{ 0, 1, 2, 1, 0, 40, 8, 2, 0xfe, 1, 2, 1, 64 }, /* 160k */
{ 0, 1, 2, 1, 0, 40, 9, 2, 0xfc, 1, 2, 2, 64 }, /* 180k */
{ 0, 2, 2, 1, 0, 40, 8, 2, 0xff, 2, 2, 1, 112 }, /* 320k */
{ 0, 2, 2, 1, 0, 40, 9, 2, 0xfd, 2, 2, 2, 112 }, /* 360k */
{ 0, 2, 2, 1, 0, 80, 8, 2, 0xfb, 2, 2, 2, 112 }, /* 640k */
@@ -698,7 +703,7 @@ NewFloppyDialogProcedure(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam)
uint8_t disk_size, rpm_mode;
int ret;
FILE *f;
int zip_types, mo_types;
int zip_types, mo_types, floppy_types;
wchar_t *twcs;
switch (message) {
@@ -716,7 +721,8 @@ NewFloppyDialogProcedure(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam)
for (i = 0; i < mo_types; i++)
SendMessage(h, CB_ADDSTRING, 0, win_get_string(IDS_5902 + i));
} else {
for (i = 0; i < 12; i++)
floppy_types = 12;
for (i = 0; i < floppy_types; i++)
SendMessage(h, CB_ADDSTRING, 0, win_get_string(IDS_5888 + i));
}
SendMessage(h, CB_SETCURSEL, 0, 0);

View File

@@ -200,8 +200,9 @@ static void set_parent_binding(int enable)
* @param wParam
* @param lParam
* @param fullscreen
* @return Was message handled
*/
static void handle_window_messages(UINT message, WPARAM wParam, LPARAM lParam, int fullscreen)
static int handle_window_messages(UINT message, WPARAM wParam, LPARAM lParam, int fullscreen)
{
switch (message)
{
@@ -219,7 +220,7 @@ static void handle_window_messages(UINT message, WPARAM wParam, LPARAM lParam, i
/* Mouse events that enter and exit capture. */
PostMessage(parent, message, wParam, lParam);
}
break;
return 1;
case WM_KEYDOWN:
case WM_KEYUP:
case WM_SYSKEYDOWN:
@@ -228,7 +229,7 @@ static void handle_window_messages(UINT message, WPARAM wParam, LPARAM lParam, i
{
PostMessage(parent, message, wParam, lParam);
}
break;
return 1;
case WM_INPUT:
if (fullscreen)
{
@@ -256,8 +257,17 @@ static void handle_window_messages(UINT message, WPARAM wParam, LPARAM lParam, i
}
free(raw);
}
break;
return 1;
case WM_MOUSELEAVE:
if (fullscreen)
{
/* Leave fullscreen if mouse leaves the renderer window. */
PostMessage(GetAncestor(parent, GA_ROOT), WM_LEAVEFULLSCREEN, 0, 0);
}
return 0;
}
return 0;
}
/**
@@ -638,12 +648,13 @@ static void opengl_main(void* param)
/* Handle window messages */
MSG msg;
if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
while (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
{
if (msg.hwnd == window_hwnd)
handle_window_messages(msg.message, msg.wParam, msg.lParam, fullscreen);
TranslateMessage(&msg);
DispatchMessage(&msg);
if (msg.hwnd != window_hwnd || !handle_window_messages(msg.message, msg.wParam, msg.lParam, fullscreen))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
/* Wait for synchronized events for 1ms before going back to window events */
@@ -722,7 +733,14 @@ static void opengl_main(void* param)
{
SetForegroundWindow(window_hwnd);
SetFocus(window_hwnd);
/* Clip cursor to prevent it moving to another monitor. */
RECT rect;
GetWindowRect(window_hwnd, &rect);
ClipCursor(&rect);
}
else
ClipCursor(NULL);
}
if (fullscreen)
@@ -854,6 +872,8 @@ static void opengl_main(void* param)
static void opengl_blit(int x, int y, int w, int h)
{
int row;
if ((x < 0) || (y < 0) || (w <= 0) || (h <= 0) || (w > 2048) || (h > 2048) || (buffer32 == NULL) || (thread == NULL) ||
atomic_flag_test_and_set(&blit_info[write_pos].in_use))
{
@@ -861,7 +881,8 @@ static void opengl_blit(int x, int y, int w, int h)
return;
}
video_copy(blit_info[write_pos].buffer, &(buffer32->line[y][x]), h * ROW_LENGTH * sizeof(uint32_t));
for (row = 0; row < h; ++row)
video_copy(&(((uint8_t *) blit_info[write_pos].buffer)[row * ROW_LENGTH * sizeof(uint32_t)]), &(buffer32->line[y + row][x]), w * sizeof(uint32_t));
if (screenshots)
video_screenshot(blit_info[write_pos].buffer, 0, 0, ROW_LENGTH);

View File

@@ -274,6 +274,7 @@ sdl_blit_ex(int x, int y, int w, int h)
SDL_Rect r_src;
void *pixeldata;
int pitch, ret;
int row;
if (!sdl_enabled || (x < 0) || (y < 0) || (w <= 0) || (h <= 0) || (w > 2048) || (h > 2048) || (buffer32 == NULL) || (sdl_render == NULL) || (sdl_tex == NULL)) {
video_blit_complete();
@@ -284,7 +285,8 @@ sdl_blit_ex(int x, int y, int w, int h)
SDL_LockTexture(sdl_tex, 0, &pixeldata, &pitch);
video_copy(pixeldata, &(buffer32->line[y][x]), h * 2048 * sizeof(uint32_t));
for (row = 0; row < h; ++row)
video_copy(&(((uint8_t *) pixeldata)[row * 2048 * sizeof(uint32_t)]), &(buffer32->line[y + row][x]), w * sizeof(uint32_t));
if (screenshots)
video_screenshot((uint32_t *) pixeldata, 0, 0, 2048);

View File

@@ -119,7 +119,7 @@ SpecifyDimensionsDialogProcedure(HWND hdlg, UINT message, WPARAM wParam, LPARAM
temp_y = MulDiv(temp_y, dpi, 96);
}
ResizeWindowByClientArea(hwndMain, temp_x, temp_y + sbar_height);
ResizeWindowByClientArea(hwndMain, temp_x, temp_y + sbar_height + tbar_height);
if (vid_resize) {
CheckMenuItem(hmenu, IDM_VID_SCALE_1X + scale, MF_UNCHECKED);

View File

@@ -54,10 +54,6 @@
#include <86box/ui.h>
#include <86box/win.h>
#ifndef GWL_WNDPROC
#define GWL_WNDPROC GWLP_WNDPROC
#endif
HWND hwndSBAR;
int update_icons = 1, reset_occurred = 1;
@@ -992,7 +988,7 @@ StatusBarCreate(HWND hwndParent, uintptr_t idStatus, HINSTANCE hInst)
/* Replace the original procedure with ours. */
OriginalProcedure = GetWindowLongPtr(hwndSBAR, GWLP_WNDPROC);
SetWindowLongPtr(hwndSBAR, GWL_WNDPROC, (LONG_PTR)&StatusBarProcedure);
SetWindowLongPtr(hwndSBAR, GWLP_WNDPROC, (LONG_PTR)&StatusBarProcedure);
SendMessage(hwndSBAR, SB_SETMINHEIGHT, (WPARAM)17, (LPARAM)0);

219
src/win/win_toolbar.c Normal file
View File

@@ -0,0 +1,219 @@
#define UNICODE
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>
#include <CommCtrl.h>
#include <86box/86box.h>
#include <86box/plat.h>
#include <86box/resource.h>
#include <86box/ui.h>
#include <86box/win.h>
HWND hwndRebar = NULL;
static HWND hwndToolbar = NULL;
static HIMAGELIST hImageList = NULL;
static wchar_t wTitle[512] = { 0 };
static WNDPROC pOriginalProcedure = NULL;
enum image_index {
RUN,
PAUSE,
CTRL_ALT_DEL,
CTRL_ALT_ESC,
HARD_RESET,
ACPI_SHUTDOWN,
SETTINGS
};
void
ToolBarLoadIcons()
{
if (!hwndToolbar)
return;
if (hImageList)
ImageList_Destroy(hImageList);
hImageList = ImageList_Create(win_get_system_metrics(SM_CXSMICON, dpi),
win_get_system_metrics(SM_CYSMICON, dpi),
ILC_MASK | ILC_COLOR32, 1, 1);
// The icons must be loaded in the same order as the `image_index`
// enumeration above.
ImageList_AddIcon(hImageList, hIcon[200]); // Run
ImageList_AddIcon(hImageList, hIcon[201]); // Pause
ImageList_AddIcon(hImageList, hIcon[202]); // Ctrl+Alt+Delete
ImageList_AddIcon(hImageList, hIcon[203]); // Ctrl+Alt+Esc
ImageList_AddIcon(hImageList, hIcon[204]); // Hard reset
ImageList_AddIcon(hImageList, hIcon[205]); // ACPI shutdown
ImageList_AddIcon(hImageList, hIcon[206]); // Settings
SendMessage(hwndToolbar, TB_SETIMAGELIST, 0, (LPARAM) hImageList);
}
int
ToolBarProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message) {
case WM_NOTIFY:
switch (((LPNMHDR) lParam)->code) {
case TTN_GETDISPINFO: {
LPTOOLTIPTEXT lpttt = (LPTOOLTIPTEXT)lParam;
// Set the instance of the module that contains the resource.
lpttt->hinst = hinstance;
uintptr_t idButton = lpttt->hdr.idFrom;
switch (idButton) {
case IDM_ACTION_PAUSE:
if (dopause)
lpttt->lpszText = MAKEINTRESOURCE(IDS_2154);
else
lpttt->lpszText = MAKEINTRESOURCE(IDS_2155);
break;
case IDM_ACTION_RESET_CAD:
lpttt->lpszText = MAKEINTRESOURCE(IDS_2156);
break;
case IDM_ACTION_CTRL_ALT_ESC:
lpttt->lpszText = MAKEINTRESOURCE(IDS_2157);
break;
case IDM_ACTION_HRESET:
lpttt->lpszText = MAKEINTRESOURCE(IDS_2158);
break;
case IDM_CONFIG:
lpttt->lpszText = MAKEINTRESOURCE(IDS_2160);
break;
}
return TRUE;
}
}
}
return(CallWindowProc(pOriginalProcedure, hwnd, message, wParam, lParam));
}
void
ToolBarUpdatePause(int pause)
{
TBBUTTONINFO tbbi;
tbbi.cbSize = sizeof(tbbi);
tbbi.dwMask = TBIF_IMAGE;
tbbi.iImage = pause ? RUN : PAUSE;
SendMessage(hwndToolbar, TB_SETBUTTONINFO, IDM_ACTION_PAUSE, (LPARAM) &tbbi);
}
static TBBUTTON buttons[] = {
{ PAUSE, IDM_ACTION_PAUSE, TBSTATE_ENABLED, BTNS_BUTTON, { 0 }, 0, 0 },
{ HARD_RESET, IDM_ACTION_HRESET, TBSTATE_ENABLED, BTNS_BUTTON, { 0 }, 0, 0 },
{ ACPI_SHUTDOWN, 0, TBSTATE_INDETERMINATE, BTNS_BUTTON, { 0 }, 0, 0 },
{ 0, 0, TBSTATE_INDETERMINATE, BTNS_SEP, { 0 }, 0, 0 },
{ CTRL_ALT_DEL, IDM_ACTION_RESET_CAD, TBSTATE_ENABLED, BTNS_BUTTON, { 0 }, 0, 0 },
{ CTRL_ALT_ESC, IDM_ACTION_CTRL_ALT_ESC, TBSTATE_ENABLED, BTNS_BUTTON, { 0 }, 0, 0 },
{ 0, 0, TBSTATE_INDETERMINATE, BTNS_SEP, { 0 }, 0, 0 },
{ SETTINGS, IDM_CONFIG, TBSTATE_ENABLED, BTNS_BUTTON, { 0 }, 0, 0 }
};
void
ToolBarCreate(HWND hwndParent, HINSTANCE hInst)
{
REBARINFO rbi = { 0 };
REBARBANDINFO rbbi = { 0 };
int btnSize;
// Create the toolbar.
hwndToolbar = CreateWindowEx(WS_EX_PALETTEWINDOW, TOOLBARCLASSNAME, NULL,
WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN |
WS_CLIPSIBLINGS | TBSTYLE_TOOLTIPS |
TBSTYLE_FLAT | CCS_TOP | BTNS_AUTOSIZE |
CCS_NOPARENTALIGN | CCS_NORESIZE |
CCS_NODIVIDER,
0, 0, 0, 0,
hwndParent, NULL, hInst, NULL);
ToolBarLoadIcons();
// Add buttons.
SendMessage(hwndToolbar, TB_BUTTONSTRUCTSIZE, sizeof(TBBUTTON), 0);
SendMessage(hwndToolbar, TB_ADDBUTTONS, sizeof(buttons) / sizeof(TBBUTTON), (LPARAM) &buttons);
// Autosize the toolbar and determine its size.
btnSize = LOWORD(SendMessage(hwndToolbar, TB_GETBUTTONSIZE, 0,0));
// Replace the original procedure with ours.
pOriginalProcedure = (WNDPROC) GetWindowLongPtr(hwndToolbar, GWLP_WNDPROC);
SetWindowLongPtr(hwndToolbar, GWLP_WNDPROC, (LONG_PTR)&ToolBarProcedure);
// Make sure the Pause button is in the correct state.
ToolBarUpdatePause(dopause);
// Create the containing Rebar.
hwndRebar = CreateWindowEx(0, REBARCLASSNAME, NULL,
WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS |
WS_CLIPCHILDREN | RBS_VARHEIGHT |
CCS_NODIVIDER | CCS_NOPARENTALIGN,
0, 0, scrnsz_x, 0,
hwndParent, NULL, hInst, NULL);
// Create and send the REBARINFO structure.
rbi.cbSize = sizeof(rbi);
SendMessage(hwndRebar, RB_SETBARINFO, 0, (LPARAM)&rbi);
// Add the toolbar to the rebar.
rbbi.cbSize = sizeof(rbbi);
rbbi.fMask = RBBIM_CHILD | RBBIM_CHILDSIZE | RBBIM_STYLE;
rbbi.hwndChild = hwndToolbar;
rbbi.cxMinChild = 0;
rbbi.cyMinChild = btnSize;
rbbi.fStyle = RBBS_NOGRIPPER;
SendMessage(hwndRebar, RB_INSERTBAND, -1, (LPARAM)&rbbi);
// Add a label for machine information.
rbbi.fMask = RBBIM_TEXT | RBBIM_STYLE;
rbbi.lpText = TEXT("Test");
rbbi.fStyle = RBBS_NOGRIPPER;
SendMessage(hwndRebar, RB_INSERTBAND, -1, (LPARAM)&rbbi);
SendMessage(hwndRebar, RB_MAXIMIZEBAND, 0, 0);
ShowWindow(hwndRebar, TRUE);
return;
}
wchar_t *
ui_window_title(wchar_t *s)
{
REBARBANDINFO rbbi = { 0 };
if (! video_fullscreen) {
if (s != NULL) {
wcsncpy(wTitle, s, sizeof_w(wTitle) - 1);
} else
s = wTitle;
rbbi.cbSize = sizeof(rbbi);
rbbi.fMask = RBBIM_TEXT;
rbbi.lpText = s;
SendMessage(hwndRebar, RB_SETBANDINFO, 1, (LPARAM) &rbbi);
} else {
if (s == NULL)
s = wTitle;
}
return(s);
}

View File

@@ -58,6 +58,7 @@ HWND hwndMain = NULL, /* application main window */
HMENU menuMain; /* application main menu */
RECT oldclip; /* mouse rect */
int sbar_height = 23; /* statusbar height */
int tbar_height = 23; /* toolbar height */
int minimized = 0;
int infocus = 1, button_down = 0;
int rctrl_is_lalt = 0;
@@ -65,6 +66,7 @@ int user_resize = 0;
int fixed_size_x = 0, fixed_size_y = 0;
int kbd_req_capture = 0;
int hide_status_bar = 0;
int hide_tool_bar = 0;
int dpi = 96;
extern char openfilestring[512];
@@ -72,7 +74,6 @@ extern WCHAR wopenfilestring[512];
/* Local data. */
static wchar_t wTitle[512];
static int manager_wm = 0;
static int save_window_pos = 0, pause_state = 0;
static int padded_frame = 0;
@@ -92,6 +93,14 @@ static dllimp_t user32_imports[] = {
{ NULL, NULL }
};
/* Taskbar application ID API, Windows 7+ */
void* shell32_handle = NULL;
static HRESULT (WINAPI *pSetCurrentProcessExplicitAppUserModelID)(PCWSTR AppID);
static dllimp_t shell32_imports[]= {
{ "SetCurrentProcessExplicitAppUserModelID", &pSetCurrentProcessExplicitAppUserModelID },
{ NULL, NULL }
};
int
win_get_dpi(HWND hwnd) {
if (user32_handle != NULL) {
@@ -267,6 +276,7 @@ ResetAllMenus(void)
#endif
CheckMenuItem(menuMain, IDM_VID_HIDE_STATUS_BAR, MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_HIDE_TOOLBAR, MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_FORCE43, MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_OVERSCAN, MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_INVERT, MF_UNCHECKED);
@@ -335,6 +345,7 @@ ResetAllMenus(void)
#endif
CheckMenuItem(menuMain, IDM_VID_HIDE_STATUS_BAR, hide_status_bar ? MF_CHECKED : MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_HIDE_TOOLBAR, hide_tool_bar ? MF_CHECKED : MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_FORCE43, force_43?MF_CHECKED:MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_OVERSCAN, enable_overscan?MF_CHECKED:MF_UNCHECKED);
CheckMenuItem(menuMain, IDM_VID_INVERT, invert_display ? MF_CHECKED : MF_UNCHECKED);
@@ -632,6 +643,21 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
config_save();
break;
case IDM_VID_HIDE_TOOLBAR:
hide_tool_bar ^= 1;
CheckMenuItem(hmenu, IDM_VID_HIDE_TOOLBAR, hide_tool_bar ? MF_CHECKED : MF_UNCHECKED);
ShowWindow(hwndRebar, hide_tool_bar ? SW_HIDE : SW_SHOW);
GetWindowRect(hwnd, &rect);
if (hide_tool_bar) {
MoveWindow(hwnd, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top - tbar_height, TRUE);
SetWindowPos(hwndRender, NULL, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE);
} else {
MoveWindow(hwnd, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top + tbar_height, TRUE);
SetWindowPos(hwndRender, NULL, 0, tbar_height, 0, 0, SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE);
}
config_save();
break;
case IDM_VID_RESIZE:
vid_resize ^= 1;
CheckMenuItem(hmenu, IDM_VID_RESIZE, (vid_resize & 1) ? MF_CHECKED : MF_UNCHECKED);
@@ -650,10 +676,7 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
temp_y = unscaled_size_y;
}
if (hide_status_bar)
ResizeWindowByClientArea(hwnd, temp_x, temp_y);
else
ResizeWindowByClientArea(hwnd, temp_x, temp_y + sbar_height);
ResizeWindowByClientArea(hwnd, temp_x, temp_y + (hide_status_bar ? 0 : sbar_height) + (hide_tool_bar ? 0 : tbar_height));
if (mouse_capture) {
ClipCursor(&rect);
@@ -931,6 +954,8 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
dpi = HIWORD(wParam);
GetWindowRect(hwndSBAR, &rect);
sbar_height = rect.bottom - rect.top;
GetWindowRect(hwndRebar, &rect);
tbar_height = rect.bottom - rect.top;
rect_p = (RECT*)lParam;
if (vid_resize == 1)
MoveWindow(hwnd, rect_p->left, rect_p->top, rect_p->right - rect_p->left, rect_p->bottom - rect_p->top, TRUE);
@@ -943,15 +968,15 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
}
/* Main Window. */
if (hide_status_bar)
ResizeWindowByClientArea(hwndMain, temp_x, temp_y);
else
ResizeWindowByClientArea(hwndMain, temp_x, temp_y + sbar_height);
ResizeWindowByClientArea(hwndMain, temp_x, temp_y + (hide_status_bar ? 0 : sbar_height) + (hide_tool_bar ? 0 : tbar_height));
} else if (!user_resize)
atomic_flag_clear(&doresize);
break;
case WM_WINDOWPOSCHANGED:
if (video_fullscreen & 1)
PostMessage(hwndMain, WM_LEAVEFULLSCREEN, 0, 0);
pos = (WINDOWPOS*)lParam;
GetClientRect(hwndMain, &rect);
@@ -978,12 +1003,13 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
if (!(pos->flags & SWP_NOSIZE) || !user_resize) {
plat_vidapi_enable(0);
if (hide_status_bar)
MoveWindow(hwndRender, 0, 0, rect.right, rect.bottom, TRUE);
else {
if (!hide_status_bar)
MoveWindow(hwndSBAR, 0, rect.bottom - sbar_height, sbar_height, rect.right, TRUE);
MoveWindow(hwndRender, 0, 0, rect.right, rect.bottom - sbar_height, TRUE);
}
if (!hide_tool_bar)
MoveWindow(hwndRebar, 0, 0, rect.right, tbar_height, TRUE);
MoveWindow(hwndRender, 0, hide_tool_bar ? 0 : tbar_height, rect.right, rect.bottom - (hide_status_bar ? 0 : sbar_height) - (hide_tool_bar ? 0 : tbar_height), TRUE);
GetClientRect(hwndRender, &rect);
if (dpi_scale) {
@@ -1151,6 +1177,13 @@ MainWindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
}
break;
case WM_ACTIVATEAPP:
/* Leave full screen on switching application except
for OpenGL Core and VNC renderers. */
if (video_fullscreen & 1 && wParam == FALSE && vid_api < 3)
PostMessage(hwndMain, WM_LEAVEFULLSCREEN, 0, 0);
break;
case WM_ENTERSIZEMOVE:
user_resize = 1;
break;
@@ -1236,7 +1269,7 @@ ui_init(int nCmdShow)
MSG messages = {0}; /* received-messages buffer */
HWND hwnd = NULL; /* handle for our window */
HACCEL haccel; /* handle to accelerator table */
RECT sbar_rect; /* RECT of the status bar */
RECT rect;
int bRet;
TASKDIALOGCONFIG tdconfig = {0};
TASKDIALOG_BUTTON tdbuttons[] = {{IDCANCEL, MAKEINTRESOURCE(IDS_2119)}};
@@ -1244,6 +1277,11 @@ ui_init(int nCmdShow)
/* Load DPI related Windows 10 APIs */
user32_handle = dynld_module("user32.dll", user32_imports);
/* Set the application ID for the taskbar. */
shell32_handle = dynld_module("shell32.dll", shell32_imports);
if (shell32_handle)
pSetCurrentProcessExplicitAppUserModelID(L"86Box.86Box");
/* Set up TaskDialog configuration. */
tdconfig.cbSize = sizeof(tdconfig);
tdconfig.dwFlags = TDF_ENABLE_HYPERLINKS;
@@ -1317,7 +1355,7 @@ ui_init(int nCmdShow)
return(2);
/* Now create our main window. */
mbstowcs(title, emu_version, sizeof_w(title));
swprintf_s(title, sizeof_w(title), L"%hs - %s %s", vm_name, EMU_NAME_W, EMU_VERSION_FULL_W);
hwnd = CreateWindowEx (
0, /* no extended possibilites */
CLASS_NAME, /* class name */
@@ -1345,11 +1383,20 @@ ui_init(int nCmdShow)
StatusBarCreate(hwndMain, IDC_STATUS, hinstance);
/* Get the actual height of the status bar */
GetWindowRect(hwndSBAR, &sbar_rect);
sbar_height = sbar_rect.bottom - sbar_rect.top;
GetWindowRect(hwndSBAR, &rect);
sbar_height = rect.bottom - rect.top;
if (hide_status_bar)
ShowWindow(hwndSBAR, SW_HIDE);
/* Create the toolbar window. */
ToolBarCreate(hwndMain, hinstance);
/* Get the actual height of the toolbar */
GetWindowRect(hwndRebar, &rect);
tbar_height = rect.bottom - rect.top;
if (hide_tool_bar)
ShowWindow(hwndRebar, SW_HIDE);
/* Set up main window for resizing if configured. */
if (vid_resize == 1)
SetWindowLongPtr(hwnd, GWL_STYLE,
@@ -1540,25 +1587,6 @@ ui_init(int nCmdShow)
}
wchar_t *
ui_window_title(wchar_t *s)
{
if (! video_fullscreen) {
if (s != NULL) {
wcsncpy(wTitle, s, sizeof_w(wTitle) - 1);
} else
s = wTitle;
SetWindowText(hwndMain, s);
} else {
if (s == NULL)
s = wTitle;
}
return(s);
}
/* We should have the language ID as a parameter. */
void
plat_pause(int p)
@@ -1602,6 +1630,9 @@ plat_pause(int p)
if (enable_discord)
discord_update_activity(dopause);
/* Update the toolbar */
ToolBarUpdatePause(p);
/* Send the WM to a manager if needed. */
if (source_hwnd)
PostMessage((HWND) (uintptr_t) source_hwnd, WM_SENDSTATUS, (WPARAM) !!dopause, (LPARAM) hwndMain);
@@ -1619,10 +1650,7 @@ plat_resize(int x, int y)
x = MulDiv(x, dpi, 96);
y = MulDiv(y, dpi, 96);
}
if (hide_status_bar)
ResizeWindowByClientArea(hwndMain, x, y);
else
ResizeWindowByClientArea(hwndMain, x, y + sbar_height);
ResizeWindowByClientArea(hwndMain, x, y + (hide_status_bar ? 0 : sbar_height) + (hide_tool_bar ? 0 : tbar_height));
}
}