From 58670247b47572d4a0046c2d725d661579ab2b29 Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Wed, 24 Nov 2021 21:35:17 -0300 Subject: [PATCH 01/13] Jenkins: Fix .git being lost across stash/unstash --- .ci/Jenkinsfile | 2 +- .ci/build.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.ci/Jenkinsfile b/.ci/Jenkinsfile index 492f19875..1512084a3 100644 --- a/.ci/Jenkinsfile +++ b/.ci/Jenkinsfile @@ -106,7 +106,7 @@ def gitClone(repository, branch) { println "[-] Using git commit [${env.GIT_COMMIT}]" /* Stash data and mark it as stashed. */ - stash name: 'git' + stash name: 'git', useDefaultExcludes: false env.GIT_STASHED = 'true' } else { /* Unstash data. */ diff --git a/.ci/build.sh b/.ci/build.sh index 1fde37f68..a73d3f6c8 100644 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -297,7 +297,7 @@ esac # Add git hash and copyright year. git_hash=$(git rev-parse --short HEAD 2> /dev/null) -[ -z "$git_hash" ] && git_hash=$(echo $GIT_COMMIT | cut -c 1-8) +[ -z "$git_hash" -a "$CI" = "true" ] && git_hash=$(echo $GIT_COMMIT | cut -c 1-8) [ ! -z "$git_hash" ] && cmake_flags_extra="$cmake_flags_extra -D \"EMU_GIT_HASH=$git_hash\"" cmake_flags_extra="$cmake_flags_extra -D \"EMU_COPYRIGHT_YEAR=$(date +%Y)\"" From d222f7c7d2862d0eef4f2414f0ff95718aeac212 Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Wed, 24 Nov 2021 21:49:36 -0300 Subject: [PATCH 02/13] Build script: Add + specifier to git hash if the tree is dirty --- .ci/build.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.ci/build.sh b/.ci/build.sh index a73d3f6c8..ad3fa279c 100644 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -297,7 +297,13 @@ esac # Add git hash and copyright year. git_hash=$(git rev-parse --short HEAD 2> /dev/null) -[ -z "$git_hash" -a "$CI" = "true" ] && git_hash=$(echo $GIT_COMMIT | cut -c 1-8) +if [ "$CI" = "true" ] +then + [ -z "$git_hash" ] && git_hash=$(echo $GIT_COMMIT | cut -c 1-8) +elif [ ! -z "$git_hash" ] +then + git diff --quiet 2> /dev/null || git_hash="$git_hash+" +fi [ ! -z "$git_hash" ] && cmake_flags_extra="$cmake_flags_extra -D \"EMU_GIT_HASH=$git_hash\"" cmake_flags_extra="$cmake_flags_extra -D \"EMU_COPYRIGHT_YEAR=$(date +%Y)\"" From 1b462383efbea883f1246d6a3809f99515700ec6 Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 25 Nov 2021 10:38:55 +0100 Subject: [PATCH 03/13] Fixed the copyright symbol in VS_VERSION_INFO. --- src/win/86Box.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/86Box.rc b/src/win/86Box.rc index bb237f606..143c670df 100644 --- a/src/win/86Box.rc +++ b/src/win/86Box.rc @@ -331,7 +331,7 @@ BEGIN VALUE "FileDescription", EMU_NAME "\0" VALUE "FileVersion", EMU_VERSION "\0" VALUE "InternalName", EMU_NAME "\0" - VALUE "LegalCopyright", "Copyright \xc2\xa9 2007-" COPYRIGHT_YEAR " " EMU_NAME " contributors\0" + VALUE "LegalCopyright", "Copyright \xa9 2007-" COPYRIGHT_YEAR " " EMU_NAME " contributors\0" VALUE "OriginalFilename", "86box.exe\0" VALUE "ProductName", EMU_NAME "\0" VALUE "ProductVersion", EMU_VERSION "\0" From 460cae84500bc1592bc2701003908324ed1d354b Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 25 Nov 2021 14:21:04 +0100 Subject: [PATCH 04/13] Removed excess AT keyboard controller Pulse reset logging. --- src/device/keyboard_at.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/device/keyboard_at.c b/src/device/keyboard_at.c index ff166ea89..36921ef9a 100644 --- a/src/device/keyboard_at.c +++ b/src/device/keyboard_at.c @@ -1088,7 +1088,7 @@ write_output(atkbd_t *dev, uint8_t val) if ((val & 0x01) && !(old & 0x01)) { if (val & 0x01) { /* Pin 0 selected. */ - pclog("write_output(): Pulse reset!\n"); + kbd_log("write_output(): Pulse reset!\n"); softresetx86(); /*Pulse reset!*/ cpu_set_edx(); flushmmucache(); From 9cdd0f946f182960420b3b3352fc6978e5b61ae6 Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Thu, 25 Nov 2021 14:22:55 -0300 Subject: [PATCH 05/13] Build script clarifications --- .ci/build.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.ci/build.sh b/.ci/build.sh index ad3fa279c..fb6b2563a 100644 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -299,9 +299,11 @@ esac git_hash=$(git rev-parse --short HEAD 2> /dev/null) if [ "$CI" = "true" ] then + # Backup strategy when running under Jenkins. [ -z "$git_hash" ] && git_hash=$(echo $GIT_COMMIT | cut -c 1-8) elif [ ! -z "$git_hash" ] then + # Append + to denote a dirty tree. git diff --quiet 2> /dev/null || git_hash="$git_hash+" fi [ ! -z "$git_hash" ] && cmake_flags_extra="$cmake_flags_extra -D \"EMU_GIT_HASH=$git_hash\"" From 6464488829b7c5f9c8751fd8d8d81012461dd17a Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Thu, 25 Nov 2021 14:26:17 -0300 Subject: [PATCH 06/13] Fix readme build badges --- README.md | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/README.md b/README.md index 3dcf0f3a6..a573f38f9 100644 --- a/README.md +++ b/README.md @@ -35,14 +35,7 @@ The latest stable version of 86Box is version 2.07, which was released on Novemb ### Automatic builds We also offer automatic builds, which are built from the latest source code and contain the latest bugfixes and improvements, but may not be as stable and/or optimized as stable builds. -| Regular | Debug | Experimental | -|:-------:|:-----:|:------------:| -|[![Build Status](http://ci.86box.net/job/86Box/badge/icon)](http://ci.86box.net/job/86Box)|[![Build Status](http://ci.86box.net/job/86Box-Debug/badge/icon)](http://ci.86box.net/job/86Box-Debug)|[![Build Status](http://ci.86box.net/job/86Box-Dev/badge/icon)](http://ci.86box.net/job/86Box-Dev) - -#### Legend -* **Regular** builds are compiled using the settings in the building guide above. Use these if you don't know which build to use. -* **Debug** builds are same as regular builds but include debug symbols. If you don't need them, you don't need to use this build. -* **Experimental (Dev)** builds are compiled with certain unfinished features enabled. These builds are not optimized for maximum performance. +[![Build Status](http://ci.86box.net/job/86Box/badge/icon)](http://ci.86box.net/job/86Box) Getting started --------------- From f96585781c1189284bd7360f728e3f018c94fcc5 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 26 Nov 2021 20:49:26 +0100 Subject: [PATCH 07/13] Turkish translation by luennix and updated/translated the Preferences strings in the remaining languages. --- src/win/86Box.rc | 3 +- src/win/languages/fr-FR.rc | 6 +- src/win/languages/it-IT.rc | 12 +- src/win/languages/pt-BR.rc | 2 +- src/win/languages/pt-PT.rc | 6 +- src/win/languages/tr-TR.rc | 644 +++++++++++++++++++++++++++++++++++++ src/win/languages/zh-CN.rc | 2 +- 7 files changed, 660 insertions(+), 15 deletions(-) create mode 100644 src/win/languages/tr-TR.rc diff --git a/src/win/86Box.rc b/src/win/86Box.rc index 143c670df..bf8b9cfbb 100644 --- a/src/win/86Box.rc +++ b/src/win/86Box.rc @@ -360,6 +360,7 @@ END #endif // not APSTUDIO_INVOKED +#include "languages/zh-CN.rc" #include "languages/cs-CZ.rc" #include "languages/de-DE.rc" #include "languages/en-US.rc" @@ -374,4 +375,4 @@ END #include "languages/pt-PT.rc" #include "languages/sl-SI.rc" #include "languages/es-ES.rc" -#include "languages/zh-CN.rc" +#include "languages/tr-TR.rc" diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index 5f98f6e62..9bd224652 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -101,7 +101,7 @@ BEGIN MENUITEM "&Réglages...", IDM_CONFIG MENUITEM "Mettre à jour la barre de stat&us", IDM_UPDATE_ICONS MENUITEM SEPARATOR - MENUITEM "&Preferences...", IDM_PREFERENCES + MENUITEM "&Préférences...", IDM_PREFERENCES # ifdef USE_DISCORD MENUITEM SEPARATOR MENUITEM "Activer intégration &Discord", IDM_DISCORD @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box Preferences" +#define STR_PREFERENCES "Préférences de 86Box" #define STR_SND_GAIN "Gain son" #define STR_NEW_FLOPPY "Nouvelle image" -#define STR_CONFIG "Réglages 86Box" +#define STR_CONFIG "Réglages de la machine" #define STR_SPECIFY_DIM "Spécifier le détournement de la fenêtre principale" #define STR_OK "OK" diff --git a/src/win/languages/it-IT.rc b/src/win/languages/it-IT.rc index fc27bc15e..9ebe2f977 100644 --- a/src/win/languages/it-IT.rc +++ b/src/win/languages/it-IT.rc @@ -101,7 +101,7 @@ BEGIN MENUITEM "&Impostazioni...", IDM_CONFIG MENUITEM "&Aggiorna icone della barra di stato", IDM_UPDATE_ICONS MENUITEM SEPARATOR - MENUITEM "Change program &settings...", IDM_PREFERENCES + MENUITEM "&Preferenze...", IDM_PREFERENCES # ifdef USE_DISCORD MENUITEM SEPARATOR MENUITEM "Abilita &integrazione Discord", IDM_DISCORD @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Program Settings" +#define STR_PREFERENCES "Preferenze di 86Box" #define STR_SND_GAIN "Guadagno del suono" #define STR_NEW_FLOPPY "Nuova immagine" -#define STR_CONFIG "Impostazioni di 86Box" +#define STR_CONFIG "Impostazioni della piastra madre" #define STR_SPECIFY_DIM "Specifica dimensioni della finestra principale" #define STR_OK "OK" @@ -297,8 +297,8 @@ END #define STR_HEIGHT "Altezza:" #define STR_LOCK_TO_SIZE "Blocca in queste dimensioni" -#define STR_MACHINE_TYPE "Tipo di macchina:" -#define STR_MACHINE "Macchina:" +#define STR_MACHINE_TYPE "Tipo di piastra madre:" +#define STR_MACHINE "Piastra madre:" #define STR_CONFIGURE "Configura" #define STR_CPU_TYPE "Tipo del CPU:" #define STR_SPEED "Veloc.:" @@ -425,7 +425,7 @@ END STRINGTABLE DISCARDABLE BEGIN IDS_2064 "La scheda video ""%hs"" non è disponibile a causa di immagini ROM mancanti nella directory roms/video. Cambiando ad una scheda video disponibile." - IDS_2065 "Macchina" + IDS_2065 "Piastra madre" IDS_2066 "Schermo" IDS_2067 "Dispositivi di entrata" IDS_2068 "Audio" diff --git a/src/win/languages/pt-BR.rc b/src/win/languages/pt-BR.rc index d97928cc2..abb218b83 100644 --- a/src/win/languages/pt-BR.rc +++ b/src/win/languages/pt-BR.rc @@ -277,7 +277,7 @@ END #define STR_PREFERENCES "Preferências do 86Box" #define STR_SND_GAIN "Ganho de som" #define STR_NEW_FLOPPY "Nova imagem de disquete" -#define STR_CONFIG "Configurações do 86Box" +#define STR_CONFIG "Configurações da máquina" #define STR_SPECIFY_DIM "Especifique as dimensões da janela principal" #define STR_OK "OK" diff --git a/src/win/languages/pt-PT.rc b/src/win/languages/pt-PT.rc index d9927cf3d..d22fb8e37 100644 --- a/src/win/languages/pt-PT.rc +++ b/src/win/languages/pt-PT.rc @@ -101,7 +101,7 @@ BEGIN MENUITEM "&Definições...", IDM_CONFIG MENUITEM "&Atualizar ícones da barra de estado", IDM_UPDATE_ICONS MENUITEM SEPARATOR - MENUITEM "&Preferences...", IDM_PREFERENCES + MENUITEM "&Preferências...", IDM_PREFERENCES # ifdef USE_DISCORD MENUITEM SEPARATOR MENUITEM "Ativar integração com &Discord", IDM_DISCORD @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Preferences" +#define STR_PREFERENCES "Preferências do 86Box" #define STR_SND_GAIN "Ganho de som" #define STR_NEW_FLOPPY "Nova imagem" -#define STR_CONFIG "Definições do 86Box" +#define STR_CONFIG "Definições da máquina" #define STR_SPECIFY_DIM "Especificar dimensões da janela principal" #define STR_OK "OK" diff --git a/src/win/languages/tr-TR.rc b/src/win/languages/tr-TR.rc new file mode 100644 index 000000000..71c7a8695 --- /dev/null +++ b/src/win/languages/tr-TR.rc @@ -0,0 +1,644 @@ +//////////////////////////////////////////////////////////////////////////// +// Turkish (TR) resources + +#ifdef _WIN32 +LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT +#pragma code_page(65001) +#endif //_WIN32 + +#define AUTHORS + +///////////////////////////////////////////////////////////////////////////// +// +// Menu +// + +MainMenu MENU DISCARDABLE +BEGIN + POPUP "&Komutlar" + BEGIN + MENUITEM "&Klavye sadece fare yakalandığında çalışsın", IDM_ACTION_KBD_REQ_CAPTURE + MENUITEM "&Sağ CTRL tuşunu sol ALT tuşu olarak ayarla", IDM_ACTION_RCTRL_IS_LALT + MENUITEM SEPARATOR + MENUITEM "&Makineyi yeniden başlat...", 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 "&Duraklat", IDM_ACTION_PAUSE + MENUITEM SEPARATOR + MENUITEM "Emülatörden &çık...", IDM_ACTION_EXIT + END + POPUP "&Görüntüleme" + BEGIN + MENUITEM "&Durum çubuğunu gizle", IDM_VID_HIDE_STATUS_BAR + MENUITEM SEPARATOR + MENUITEM "&Yeniden boyutlandırılabilir pencere", IDM_VID_RESIZE + MENUITEM "&Pencere boyut ve pozisyonunu hatırla", IDM_VID_REMEMBER + MENUITEM SEPARATOR + POPUP "&İşleyici" + BEGIN + MENUITEM "&SDL (Yazılım)", IDM_VID_SDL_SW + MENUITEM "SDL (&Donanım)", IDM_VID_SDL_HW + MENUITEM "SDL (&OpenGL)", IDM_VID_SDL_OPENGL +#if defined(DEV_BRANCH) && defined(USE_OPENGL) + MENUITEM "Open&GL (3.3 Core)", IDM_VID_OPENGL_CORE +#endif +#ifdef USE_VNC + MENUITEM "&VNC", IDM_VID_VNC +#endif + END + MENUITEM SEPARATOR + MENUITEM "Pencere &boyutunu belirle...", IDM_VID_SPECIFY_DIM + MENUITEM "&4:3 görüntüleme oranına zorla", IDM_VID_FORCE43 + POPUP "Pencere &ölçek çarpanı" + 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 "&Filtre metodu" + BEGIN + MENUITEM "&Nearest (En yakın)", IDM_VID_FILTER_NEAREST + MENUITEM "&Linear (Doğrusal)", IDM_VID_FILTER_LINEAR + END + MENUITEM "Hi&DPI ölçeklemesi", IDM_VID_HIDPI + MENUITEM SEPARATOR + MENUITEM "&Tam ekran\tCtrl+Alt+PageUP", IDM_VID_FULLSCREEN + POPUP "Tam ekran &germe modu" + BEGIN + MENUITEM "&Tam ekrana ger", IDM_VID_FS_FULL + MENUITEM "&4:3", IDM_VID_FS_43 + MENUITEM "&Kare piksel (ölçeği koru)", IDM_VID_FS_KEEPRATIO + MENUITEM "Tam &sayı ölçeklemesi", IDM_VID_FS_INT + END + POPUP "EGA/&(S)VGA ayarları" + BEGIN + MENUITEM "Ters &renk VGA monitör", IDM_VID_INVERT + POPUP "VGA ekran &tipi" + BEGIN + MENUITEM "RGB (&renkli)", IDM_VID_GRAY_RGB + MENUITEM "RGB (&gri tonlama)", IDM_VID_GRAY_MONO + MENUITEM "&Kehribar rengi monitör", IDM_VID_GRAY_AMBER + MENUITEM "&Yeşil renk monitör", IDM_VID_GRAY_GREEN + MENUITEM "&Beyaz renk monitör", IDM_VID_GRAY_WHITE + END + POPUP "&Gri tonlama dönüştürme tipi" + BEGIN + MENUITEM "BT&601 (NTSC/PAL)", IDM_VID_GRAYCT_601 + MENUITEM "BT&709 (HDTV)", IDM_VID_GRAYCT_709 + MENUITEM "&Ortalama", IDM_VID_GRAYCT_AVE + END + END + MENUITEM SEPARATOR + MENUITEM "CGA/PCjr/Tandy/E&GA/(S)VGA aşırı taraması", IDM_VID_OVERSCAN + MENUITEM "Gri to&nlamalı görüntü için kontrastı değiştir", IDM_VID_CGACON + END + MENUITEM "&Medya", IDM_MEDIA + POPUP "&Araçlar" + BEGIN + MENUITEM "&Ayarlar...", IDM_CONFIG + MENUITEM "Durum &çubuğu ikonlarını güncelle", IDM_UPDATE_ICONS + MENUITEM SEPARATOR + MENUITEM "&Tercihler...", IDM_PREFERENCES +# ifdef USE_DISCORD + MENUITEM SEPARATOR + MENUITEM "&Discord entegrasyonunu etkinleştir", IDM_DISCORD +# endif + MENUITEM SEPARATOR + MENUITEM "&Ekran görüntüsü al\tCtrl+F11", IDM_ACTION_SCREENSHOT + MENUITEM SEPARATOR + MENUITEM "&Ses yükseltici...", IDM_SND_GAIN +#ifdef MTR_ENABLED + MENUITEM SEPARATOR + MENUITEM "Begin trace\tCtrl+T", IDM_ACTION_BEGIN_TRACE + MENUITEM "End trace\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 "BusLogic kayıtlarını etkinleştir\tCtrl+F4", IDM_LOG_BUSLOGIC +# endif +# ifdef ENABLE_CDROM_LOG + MENUITEM "CD-ROM kayıtlarını etkinleştir\tCtrl+F5", IDM_LOG_CDROM +# endif +# ifdef ENABLE_D86F_LOG + MENUITEM "Disket (86F) kayıtlarını etkinleştir\tCtrl+F6", IDM_LOG_D86F +# endif +# ifdef ENABLE_FDC_LOG + MENUITEM "Disket kontrolcüsü kayıtlarını etkinleştir\tCtrl+F7", IDM_LOG_FDC +# endif +# ifdef ENABLE_IDE_LOG + MENUITEM "IDE kayıtlarını etkinleştir\tCtrl+F8", IDM_LOG_IDE +# endif +# ifdef ENABLE_SERIAL_LOG + MENUITEM "Seri Port kayıtlarını etkinleştir\tCtrl+F3", IDM_LOG_SERIAL +# endif +# ifdef ENABLE_NIC_LOG + MENUITEM "Ağ kayıtlarını etkinleştir\tCtrl+F9", IDM_LOG_NIC +# endif +# ifdef ENABLE_LOG_COMMANDS +# ifdef ENABLE_LOG_TOGGLES + MENUITEM SEPARATOR +# endif +# ifdef ENABLE_LOG_BREAKPOINT + MENUITEM "&breakpoint'i kayıtla\tCtrl+F10", IDM_LOG_BREAKPOINT +# endif +# ifdef ENABLE_VRAM_DUMP + MENUITEM "&Video belleğini depola\tCtrl+F1", IDM_DUMP_VRAM +# endif +# endif + END +#endif + POPUP "&Yardım" + BEGIN + MENUITEM "&Dökümanlar...", IDM_DOCS + MENUITEM "&86Box Hakkında...", IDM_ABOUT + END +END + +StatusBarMenu MENU DISCARDABLE +BEGIN + MENUITEM SEPARATOR +END + +CassetteSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Yeni imaj oluştur...", IDM_CASSETTE_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&İmaj seç...", IDM_CASSETTE_IMAGE_EXISTING + MENUITEM "İmaj &seç (Yazma-korumalı)...", IDM_CASSETTE_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "&Kaydet", IDM_CASSETTE_RECORD + MENUITEM "&Oynat", IDM_CASSETTE_PLAY + MENUITEM "&Başlangıca geri sar", IDM_CASSETTE_REWIND + MENUITEM "Sona doğru &ileri sar", IDM_CASSETTE_FAST_FORWARD + MENUITEM SEPARATOR + MENUITEM "&Çıkar", IDM_CASSETTE_EJECT + END +END + +CartridgeSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&İmaj...", IDM_CARTRIDGE_IMAGE + MENUITEM SEPARATOR + MENUITEM "&Çıkar", IDM_CARTRIDGE_EJECT + END +END + +FloppySubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Yeni imaj oluştur...", IDM_FLOPPY_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&İmaj seç...", IDM_FLOPPY_IMAGE_EXISTING + MENUITEM "İmaj &seç (Yazma-korumalı)...", IDM_FLOPPY_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "&86F dosyası olarak aktar...", IDM_FLOPPY_EXPORT_TO_86F + MENUITEM SEPARATOR + MENUITEM "&Çıkar", IDM_FLOPPY_EJECT + END +END + +CdromSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Sesi kapat", IDM_CDROM_MUTE + MENUITEM SEPARATOR + MENUITEM "İmajı &çıkar", IDM_CDROM_EMPTY + MENUITEM "&Önceki imajı seç", IDM_CDROM_RELOAD + MENUITEM SEPARATOR + MENUITEM "&İmaj seç", IDM_CDROM_IMAGE + END +END + +ZIPSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Yeni imaj...", IDM_ZIP_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&İmaj seç...", IDM_ZIP_IMAGE_EXISTING + MENUITEM "İmaj &seç (Yazma-korumalı)...", IDM_ZIP_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "&Çıkar", IDM_ZIP_EJECT + MENUITEM "&Önceki imajı seç", IDM_ZIP_RELOAD + END +END + +MOSubmenu MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Yeni imaj...", IDM_MO_IMAGE_NEW + MENUITEM SEPARATOR + MENUITEM "&İmaj seç...", IDM_MO_IMAGE_EXISTING + MENUITEM "İmaj &seç (Yazma-korumalı)...", IDM_MO_IMAGE_EXISTING_WP + MENUITEM SEPARATOR + MENUITEM "&Çıkar", IDM_MO_EJECT + MENUITEM "&Önceki imajı seç", IDM_MO_RELOAD + END +END + +#if defined(DEV_BRANCH) && defined(USE_OPENGL) +VidGLSubMenu MENU DISCARDABLE +BEGIN + POPUP "Hedef &kare oranı" + BEGIN + MENUITEM "Video ile &senkronize et", 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 "Gölgelendirici &seç...", IDM_VID_GL_SHADER + MENUITEM "&Gölgelendiriciyi kaldır", IDM_VID_GL_NOSHADER +END +#endif + + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +#define STR_PREFERENCES "86Box Tercihleri" +#define STR_SND_GAIN "Ses Artırma" +#define STR_NEW_FLOPPY "Yeni İmaj" +#define STR_CONFIG "Makine Ayarları" +#define STR_SPECIFY_DIM "Ana Pencere Boyutunu Belirle" + +#define STR_OK "Tamam" +#define STR_CANCEL "İptal et" +#define STR_GLOBAL "Bu ayarları &varsayılan olarak kaydet" +#define STR_DEFAULT "&Varsayılan" +#define STR_LANGUAGE "Dil:" +#define STR_ICONSET "Simge seti:" + +#define STR_GAIN "Artırma" + +#define STR_FILE_NAME "Dosya adı:" +#define STR_DISK_SIZE "Disk boyutu:" +#define STR_RPM_MODE "RPM modu:" +#define STR_PROGRESS "İşlem:" + +#define STR_WIDTH "Genişlik:" +#define STR_HEIGHT "Yükseklik:" +#define STR_LOCK_TO_SIZE "Bu boyuta kilitle" + +#define STR_MACHINE_TYPE "Makine türü:" +#define STR_MACHINE "Makine:" +#define STR_CONFIGURE "Ayarla" +#define STR_CPU_TYPE "CPU türü:" +#define STR_SPEED "Hız:" +#define STR_FPU "FPU:" +#define STR_WAIT_STATES "Bekleme süreleri:" +#define STR_MB "MB" +#define STR_MEMORY "Bellek:" +#define STR_TIME_SYNC "Zaman senkronizasyonu" +#define STR_DISABLED "Devre dışı" +#define STR_ENABLED_LOCAL "Etkin (yerel zaman)" +#define STR_ENABLED_UTC "Etkin (UTC)" +#define STR_DYNAREC "Dinamik Derleyici" + +#define STR_VIDEO "Ekran kartı:" +#define STR_VOODOO "Voodoo Grafikleri" + +#define STR_MOUSE "Fare:" +#define STR_JOYSTICK "Oyun kolu:" +#define STR_JOY1 "Oyun kolu 1..." +#define STR_JOY2 "Oyun kolu 2..." +#define STR_JOY3 "Oyun kolu 3..." +#define STR_JOY4 "Oyun kolu 4..." + +#define STR_SOUND "Ses kartı:" +#define STR_MIDI "MIDI Çıkış Cihazı:" +#define STR_MIDI_IN "MIDI Giriş Cihazı:" +#define STR_MPU401 "Bağımsız MPU-401" +#define STR_SSI "Innovation SSI-2001" +#define STR_CMS "CMS / Game Blaster" +#define STR_GUS "Gravis Ultrasound" +#define STR_FLOAT "FLOAT32 ses kullan" + +#define STR_NET_TYPE "Ağ tipi:" +#define STR_PCAP "PCap cihazı:" +#define STR_NET "Ağ cihazı:" + +#define STR_LPT1 "LPT1 Cihazı:" +#define STR_LPT2 "LPT2 Cihazı:" +#define STR_LPT3 "LPT3 Cihazı:" +#define STR_SERIAL1 "Seri port 1" +#define STR_SERIAL2 "Seri port 2" +#define STR_SERIAL3 "Seri port 3" +#define STR_SERIAL4 "Seri port 4" +#define STR_PARALLEL1 "Paralel port 1" +#define STR_PARALLEL2 "Paralel port 2" +#define STR_PARALLEL3 "Paralel port 3" + +#define STR_HDC "HD Kontrolcüsü:" +#define STR_FDC "FD Kontrolcüsü:" +#define STR_IDE_TER "Üçlü IDE Kontrolcüsü" +#define STR_IDE_QUA "Dörtlü IDE Kontrolcüsü" +#define STR_SCSI "SCSI" +#define STR_SCSI_1 "Kontrolcü 1:" +#define STR_SCSI_2 "Kontrolcü 2:" +#define STR_SCSI_3 "Kontrolcü 3:" +#define STR_SCSI_4 "Kontrolcü 4:" +#define STR_CASSETTE "Kaset" + +#define STR_HDD "Hard diskler:" +#define STR_NEW "&Yeni..." +#define STR_EXISTING "&Var olan..." +#define STR_REMOVE "&Kaldır" +#define STR_BUS "Veri yolu:" +#define STR_CHANNEL "Kanal:" +#define STR_ID "ID:" + +#define STR_SPECIFY "&Belirle..." +#define STR_SECTORS "Sektörler:" +#define STR_HEADS "Veri Kafaları:" +#define STR_CYLS "Silindirler:" +#define STR_SIZE_MB "Boyut (MB):" +#define STR_TYPE "Tip:" +#define STR_IMG_FORMAT "İmaj Düzeni:" +#define STR_BLOCK_SIZE "Blok Boyutu:" + +#define STR_FLOPPY_DRIVES "Disket sürücüleri:" +#define STR_TURBO "Turbo zamanlamaları" +#define STR_CHECKBPB "BPB'yi denetle" +#define STR_CDROM_DRIVES "CD-ROM sürücüleri:" + +#define STR_MO_DRIVES "MO sürücüleri:" +#define STR_ZIP_DRIVES "ZIP sürücüleri:" +#define STR_250 "ZIP 250" + +#define STR_ISARTC "ISA RTC:" +#define STR_ISAMEM "ISA Bellek Artırma" +#define STR_ISAMEM_1 "Kart 1:" +#define STR_ISAMEM_2 "Kart 2:" +#define STR_ISAMEM_3 "Kart 3:" +#define STR_ISAMEM_4 "Kart 4:" +#define STR_BUGGER "ISABugger cihazı" +#define STR_POSTCARD "POST kartı" + +#define FONT_SIZE 9 +#define FONT_NAME "Meiryo UI" + +#include "dialogs.rc" + +///////////////////////////////////////////////////////////////////////////// +// +// String Table +// + +STRINGTABLE DISCARDABLE +BEGIN + 2048 "86Box" + IDS_2049 "Hata" + IDS_2050 "Kritik hata" + IDS_2051 "" + IDS_2052 "Pencere moduna geri dönmek için CTRL+ALT+PAGE DOWN tuşlarına basın." + IDS_2053 "Hız" + IDS_2054 "ZIP %03i %i (%s): %ls" + IDS_2055 "ZIP imajları (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0" + IDS_2056 "86Box hiç bir kullanılabilir ROM imajı bulamadı.\n\nLütfen ROM setini indirin ve onu ""Roms"" klasörüne çıkarın." + IDS_2057 "(empty)" + IDS_2058 "ZIP imajları (*.IM?;*.ZDI)\0*.IM?;*.ZDI\0All files (*.*)\0*.*\0" + IDS_2059 "Turbo" + IDS_2060 "Açık" + IDS_2061 "Kapalı" + IDS_2062 "Tüm imajlar (*.86F;*.DSK;*.FLP;*.IM?;*.*FD?)\0*.86F;*.DSK;*.FLP;*.IM?;*.*FD?\0Basit sektör imajları (*.DSK;*.FLP;*.IM?;*.*FD?)\0*.DSK;*.FLP;*.IM?;*.IMG;*.*FD?\0Yüzey imajları (*.86F)\0*.86F\0" + IDS_2063 """%hs"" makinesi roms/machines klasöründe mevcut olmayan ROM imajı yüzünden mevcut değil. Mevcut olan bir makineye geçiş yapılıyor." +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_2064 """%hs"" ekran kartı roms/video klasöründe mevcut olmayan ROM imajı yüzünden mevcut değil. Mevcut olan bir ekran kartına geçiş yapılıyor." + IDS_2065 "Makine" + IDS_2066 "Görüntü" + IDS_2067 "Giriş aygıtları" + IDS_2068 "Ses" + IDS_2069 "Ağ" + IDS_2070 "Portlar (COM & LPT)" + IDS_2071 "Depolama kontrolcüleri" + IDS_2072 "Hard diskler" + IDS_2073 "Disket & CD-ROM sürücüleri" + IDS_2074 "Diğer kaldırılabilir cihazlar" + IDS_2075 "Diğer cihazlar" + IDS_2076 "Yüzey imajları (*.86F)\0*.86F\0" + IDS_2077 "Farenin yakalanması için tıklayın" + IDS_2078 "Farenin bırakılması için F8+F12 tuşlarına basın" + IDS_2079 "Farenin bırakılması için F8+F12 veya farenin orta tuşuna basın" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_2080 "FluidSynth başlatılamadı" + IDS_2081 "Veri yolu" + IDS_2082 "Dosya" + IDS_2083 "C" + IDS_2084 "H" + IDS_2085 "S" + IDS_2086 "MB" + IDS_2087 "BPB'yi kontrol et" + IDS_2088 "KB" + IDS_2089 "Video işleyici başlatılamadı." + IDS_2090 "Varsayılan" + IDS_2091 "%i Bekleme durumları" + IDS_2092 "Tür" + IDS_2093 "PCap ayarlanamadı" + IDS_2094 "Herhangi bir PCap cihazı bulunamadı" + IDS_2095 "Geçersiz PCap cihazı" + IDS_2096 "Standart 2-button oyun kolları" + IDS_2097 "Standart 4-button oyun kolu" + IDS_2098 "Standart 6-button oyun kolu" + IDS_2099 "Standart 8-button oyun kolu" + IDS_2100 "CH Flightstick Pro" + IDS_2101 "Microsoft SideWinder Pad" + IDS_2102 "Thrustmaster Flight Kontrol Sistemi" + IDS_2103 "Hiçbiri" + IDS_2104 "Klavye ivdirgeçleri yüklenemedi." + IDS_2105 "Ham girdi kaydedilemedi." + IDS_2106 "%u" + IDS_2107 "%u MB (CHS: %i, %i, %i)" + IDS_2108 "Disket %i (%s): %ls" + IDS_2109 "Tüm imajlar (*.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\0Gelişmiş sektör imajları (*.IMD;*.JSON;*.TD0)\0*.IMD;*.JSON;*.TD0\0Basit sektör imajları (*.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\0Yüzey imajları (*.86F;*.MFM)\0*.86F;*.MFM\0All files (*.*)\0*.*\0" + IDS_2110 "FreeType başlatılamadı" + IDS_2111 "SDL başlatılamadı, SDL2.dll gerekmektedir" + IDS_2112 "Emüle edilen makineyi yeniden başlatmak istediğinizden emin misiniz?" + IDS_2113 "86Box'tan çıkmak istediğinize emin misiniz?" + IDS_2114 "Ghostscript başlatılamadı" + IDS_2115 "MO %i (%ls): %ls" + IDS_2116 "MO imajları (*.IM?;*.MDI)\0*.IM?;*.MDI\0All files (*.*)\0*.*\0" + IDS_2117 "86Box'a hoşgeldiniz!" + IDS_2118 "Dahili kontrolcü" + IDS_2119 "Çıkış" + IDS_2120 "Hiçbir ROM imajı bulunamadı" + IDS_2121 "Ayarlary kaydetmek istediğinizden emin misiniz?" + IDS_2122 "Bu makineyi yeniden başlatacak." + IDS_2123 "Kaydet" + IDS_2124 "86Box Hakkında" + IDS_2125 "86Box v" EMU_VERSION + + IDS_2126 "Bir eski bilgisayar emülatörü\n\nYapanlar: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, MoochMcGee, reenigne, leilei, JohnElliott, greatpsycho, ve diğerleri.\n\nGNU Genel Kamu Lisansı versiyon 2 veya sonrası altında yayınlanmıştır. Daha fazla bilgi için LICENSE'ı gözden geçirin." + IDS_2127 "Tamam" + IDS_2128 "Donanım mevcut değil" +#ifdef _WIN32 +#define LIB_NAME_PCAP "WinPcap" +#else +#define LIB_NAME_PCAP "libpcap" +#endif + IDS_2129 "" LIB_NAME_PCAP " kurulu olduğundan ve " LIB_NAME_PCAP "-uyumlu bir internet ağında bulunduğunuzdan emin olun." + IDS_2130 "Geçersiz konfigürasyon" +#ifdef _WIN32 +#define LIB_NAME_FREETYPE "freetype.dll" +#else +#define LIB_NAME_FREETYPE "libfreetype" +#endif + IDS_2131 LIB_NAME_FREETYPE " ESC/P yazıcı emülasyonu için gereklidir." +#ifdef _WIN32 +#define LIB_NAME_GS "gsdll32.dll" +#else +#define LIB_NAME_GS "libgs" +#endif + IDS_2132 LIB_NAME_GS " PostScript dosyalarının otomatik olarak PDF dosyalarına çevirilmesi için gereklidir.\n\nGenel PostScript yazıcısına gönderilen tüm dökümanlar PostScript (.ps) dosyaları olarak kaydedilecektir." +#ifdef _WIN32 +#define LIB_NAME_FLUIDSYNTH "libfluidsynth.dll" +#else +#define LIB_NAME_FLUIDSYNTH "libfluidsynth" +#endif + IDS_2133 LIB_NAME_FLUIDSYNTH " FluidSynth MIDI çıkışı için gereklidir." + IDS_2134 "Tam ekran moduna geçiliyor" + IDS_2135 "Bu mesajı bir daha gösterme" + IDS_2136 "Çıkış yapma" + IDS_2137 "Yeniden başlat" + IDS_2138 "Yeniden başlatma" + IDS_2139 "MO imajları (*.IM?;*.MDI)\0*.IM?;*.MDI\0Tüm dosyalar (*.*)\0*.*\0" + IDS_2140 "CD-ROM imajları (*.ISO;*.CUE)\0*.ISO;*.CUE\0Tüm dosyalar (*.*)\0*.*\0" + IDS_2141 "%hs Cihaz Konfigürasyonu" + IDS_2142 "Monitör uyku modunda" + IDS_2143 "OpenGL Gölgelendiricileri (*.GLSL)\0*.GLSL\0Tüm dosyalar (*.*)\0*.*\0" + IDS_2144 "OpenGL ayarları" + IDS_2145 "Desteklenmeyen bir konfigürasyon yüklüyorsunuz" + IDS_2146 "Seçtiğiniz makineye uygun CPU (işlemci) türü filtrelemesi bu emülasyon için devre dışı bırakıldı.\n\nBu, normalde seçilen makine ile uyumlu olmayan bir CPU seçmenizi mümkün kılmaktadır. Ancak, bundan dolayı seçilen makinenin BIOS'u veya diğer yazılımlar ile uyumsuzluk sorunu yaşayabilirsiniz.\n\nBu filtrelemeyi devre dışı bırakmak emülatör tarafından resmi olarak desteklenmemektedir ve açtığınız bug (hata) raporları geçersiz olarak kapatılabilir." + IDS_2147 "Devam et" + IDS_2148 "Kaset: %s" + IDS_2149 "Kaset imajları (*.PCM;*.RAW;*.WAV;*.CAS)\0*.PCM;*.RAW;*.WAV;*.CAS\0Tüm dosyalar (*.*)\0*.*\0" + IDS_2150 "Kartuş %i: %ls" + IDS_2151 "Kartuş imajları (*.A;*.B;*.JRC)\0*.A;*.B;*.JRC\0Tüm dosyalar (*.*)\0*.*\0" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_4096 "Hard disk (%s)" + IDS_4097 "%01i:%01i" + IDS_4098 "%01i" + IDS_4099 "MFM/RLL veya ESDI CD-ROM sürücüleri hiçbir zaman var olmamıştır" + IDS_4100 "Diğer..." + IDS_4101 "Diğer (büyük)..." + IDS_4102 "Yeni Hard Disk Dosyası Oluştur" + IDS_4103 "Var Olan Hard Disk Dosyası Ekle" + IDS_4104 "HDI disk imajları 4 GB'tan daha büyük olamaz." + IDS_4105 "Disk imajları 127 GB'tan daha büyük olamaz." + IDS_4106 "Hard disk imajları (*.HD?;*.IM?;*.VHD)\0*.HD?;*.IM?;*.VHD\0Tüm dosyalar (*.*)\0*.*\0" + IDS_4107 "Dosya okunamıyor" + IDS_4108 "Dosyanın üzerine yazılamıyor" + IDS_4109 "512 dışında sektör boyutu olan HDI veya HDX imajları desteklenmemektedir." + IDS_4110 "USB şu anda desteklenmemektedir" + IDS_4111 "Disk imaj dosyası zaten var olmakta" + IDS_4112 "Lütfen geçerli bir dosya ismi belirleyin." + IDS_4113 "Disk imajı oluşturuldu" + IDS_4114 "Dosyanın var olduğuna ve okunabildiğine emin olun." + IDS_4115 "Dosyanın yazılabilir bir klasöre kaydedildiğinden emin olun." + IDS_4116 "Disk imajı çok büyük" + IDS_4117 "Yeni oluşturulan diski bölmeyi ve formatlamayı unutmayın." + IDS_4118 "Seçili dosyanın üzerine yazılacaktır. Bunu yapmak istediğinizden emin misiniz?" + IDS_4119 "Desteklenmeyen disk imajı" + IDS_4120 "Üzerine yaz" + IDS_4121 "Üzerine yazma" + IDS_4122 "Ham imaj (.img)" + IDS_4123 "HDI imajı (.hdi)" + IDS_4124 "HDX imajı (.hdx)" + IDS_4125 "Sabit-boyutlu VHD (.vhd)" + IDS_4126 "Dinamik-boyutlu VHD (.vhd)" + IDS_4127 "Differencing VHD (.vhd)" + IDS_4128 "Büyük bloklar (2 MB)" + IDS_4129 "Küçük bloklar (512 KB)" + IDS_4130 "VHD dosyaları (*.VHD)\0*.VHD\0Tüm dosyalar (*.*)\0*.*\0" + IDS_4131 "Ana VHD dosyasını seçin" + IDS_4132 "Bu, farkı alınan imaj oluşturulduktan sonra ana imaj dosyasının düzenlendiği anlamına geliyor olabilir.\n\nBu durum ayrıca imaj dosyaları kopyalandığında veya yerleri değiştirildiğinde veya imaj dosyalarını oluşturan programdaki bir hatadan dolayı olmuş olabilir.\n\nZaman damgalarını düzeltmek ister misiniz?" + IDS_4133 "Ana ve ek disk zaman damgaları uyuşmuyor" + IDS_4134 "VHD zaman damgası düzeltilemedi." + 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 "Devre dışı" + IDS_5381 "ATAPI" + IDS_5382 "SCSI" + + IDS_5632 "Devre dışı" + 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 (cluster 1024)" + IDS_5898 "DMF (cluster 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 "Mükemmel RPM" + IDS_6145 "mükemmel RPM değerinin 1%% altı" + IDS_6146 "mükemmel RPM değerinin 1.5%% altı" + IDS_6147 "mükemmel RPM değerinin 2%% altı" + + IDS_7168 "(Sistem Varsayılanı)" +END +#define IDS_LANG_TRTR IDS_7168 + +// Turkish (TR) resources +///////////////////////////////////////////////////////////////////////////// diff --git a/src/win/languages/zh-CN.rc b/src/win/languages/zh-CN.rc index f31180057..b9de920cc 100644 --- a/src/win/languages/zh-CN.rc +++ b/src/win/languages/zh-CN.rc @@ -276,7 +276,7 @@ END #define STR_PREFERENCES "86Box 偏好选项" #define STR_SND_GAIN "音量增益" #define STR_NEW_FLOPPY "新建镜像" -#define STR_CONFIG "86Box 设置" +#define STR_CONFIG "机型设置" #define STR_SPECIFY_DIM "指定主窗口大小" #define STR_OK "确定" From 27903db09febcdbc096292691179d90cc80e45e8 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 26 Nov 2021 20:56:56 +0100 Subject: [PATCH 08/13] Options and Preferences string translations update. --- src/win/languages/cs-CZ.rc | 4 ++-- src/win/languages/de-DE.rc | 4 ++-- src/win/languages/en-GB.rc | 4 ++-- src/win/languages/en-US.rc | 4 ++-- src/win/languages/es-ES.rc | 4 ++-- src/win/languages/fi-FI.rc | 2 +- src/win/languages/fr-FR.rc | 4 ++-- src/win/languages/hr-HR.rc | 4 ++-- src/win/languages/hu-HU.rc | 4 ++-- src/win/languages/it-IT.rc | 4 ++-- src/win/languages/ja-JP.rc | 4 ++-- src/win/languages/pt-BR.rc | 4 ++-- src/win/languages/pt-PT.rc | 4 ++-- src/win/languages/sl-SI.rc | 4 ++-- src/win/languages/tr-TR.rc | 4 ++-- src/win/languages/zh-CN.rc | 6 +++--- 16 files changed, 32 insertions(+), 32 deletions(-) diff --git a/src/win/languages/cs-CZ.rc b/src/win/languages/cs-CZ.rc index 4eea439d4..8de679e4f 100644 --- a/src/win/languages/cs-CZ.rc +++ b/src/win/languages/cs-CZ.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Předvolby programu 86Box" +#define STR_PREFERENCES "Předvolby" #define STR_SND_GAIN "Zesílení zvuku" #define STR_NEW_FLOPPY "Nový obraz" -#define STR_CONFIG "Nastavení počítače" +#define STR_CONFIG "Nastavení" #define STR_SPECIFY_DIM "Zadat rozměry hlavního okna" #define STR_OK "OK" diff --git a/src/win/languages/de-DE.rc b/src/win/languages/de-DE.rc index 452b03074..6dccaa4c0 100644 --- a/src/win/languages/de-DE.rc +++ b/src/win/languages/de-DE.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box-Einstellungen" +#define STR_PREFERENCES "Einstellungen" #define STR_SND_GAIN "Klangverstärkung" #define STR_NEW_FLOPPY "Neues Image" -#define STR_CONFIG "Maschinenoptionen" +#define STR_CONFIG "Optionen" #define STR_SPECIFY_DIM "Abmessungen des Hauptfensters einstellen" #define STR_OK "OK" diff --git a/src/win/languages/en-GB.rc b/src/win/languages/en-GB.rc index 67fc074a5..f64b0f768 100644 --- a/src/win/languages/en-GB.rc +++ b/src/win/languages/en-GB.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box Preferences" +#define STR_PREFERENCES "Preferences" #define STR_SND_GAIN "Sound Gain" #define STR_NEW_FLOPPY "New Image" -#define STR_CONFIG "Machine Settings" +#define STR_CONFIG "Settings" #define STR_SPECIFY_DIM "Specify Main Window Dimensions" #define STR_OK "OK" diff --git a/src/win/languages/en-US.rc b/src/win/languages/en-US.rc index 802297836..a350395fd 100644 --- a/src/win/languages/en-US.rc +++ b/src/win/languages/en-US.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box Preferences" +#define STR_PREFERENCES "Preferences" #define STR_SND_GAIN "Sound Gain" #define STR_NEW_FLOPPY "New Image" -#define STR_CONFIG "Machine Settings" +#define STR_CONFIG "Settings" #define STR_SPECIFY_DIM "Specify Main Window Dimensions" #define STR_OK "OK" diff --git a/src/win/languages/es-ES.rc b/src/win/languages/es-ES.rc index f934a6d91..c69f6f226 100644 --- a/src/win/languages/es-ES.rc +++ b/src/win/languages/es-ES.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Preferencias de 86Box" +#define STR_PREFERENCES "Preferencias" #define STR_SND_GAIN "Ganancia de Sonido" #define STR_NEW_FLOPPY "Nueva Imagen" -#define STR_CONFIG "Ajustes de Máquina" +#define STR_CONFIG "Ajustes" #define STR_SPECIFY_DIM "Especificar Dimensiones de la Ventana Principal" #define STR_OK "Aceptar" diff --git a/src/win/languages/fi-FI.rc b/src/win/languages/fi-FI.rc index 47ff193eb..117e951a6 100644 --- a/src/win/languages/fi-FI.rc +++ b/src/win/languages/fi-FI.rc @@ -276,7 +276,7 @@ END #define STR_PREFERENCES "Sovellusasetukset" #define STR_SND_GAIN "Äänen tulotaso" #define STR_NEW_FLOPPY "Uusi levykuva" -#define STR_CONFIG "Tietokoneen kokoonpano" +#define STR_CONFIG "Kokoonpano" #define STR_SPECIFY_DIM "Määritä pääikkunan koko" #define STR_OK "OK" diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index 9bd224652..ba083bdaa 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Préférences de 86Box" +#define STR_PREFERENCES "Préférences" #define STR_SND_GAIN "Gain son" #define STR_NEW_FLOPPY "Nouvelle image" -#define STR_CONFIG "Réglages de la machine" +#define STR_CONFIG "Réglages" #define STR_SPECIFY_DIM "Spécifier le détournement de la fenêtre principale" #define STR_OK "OK" diff --git a/src/win/languages/hr-HR.rc b/src/win/languages/hr-HR.rc index 31ec58835..290039389 100644 --- a/src/win/languages/hr-HR.rc +++ b/src/win/languages/hr-HR.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box postavke" +#define STR_PREFERENCES "Postavke" #define STR_SND_GAIN "Pojačavanje zvuka" #define STR_NEW_FLOPPY "Nova slika" -#define STR_CONFIG "Opcije sistema" +#define STR_CONFIG "Opcije" #define STR_SPECIFY_DIM "Odredite glavne dimenzije prozora" #define STR_OK "OK" diff --git a/src/win/languages/hu-HU.rc b/src/win/languages/hu-HU.rc index ac47c249b..c54412050 100644 --- a/src/win/languages/hu-HU.rc +++ b/src/win/languages/hu-HU.rc @@ -276,10 +276,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box beállítások" +#define STR_PREFERENCES "Beállítások" #define STR_SND_GAIN "Hangerőszabályzó" #define STR_NEW_FLOPPY "Új képfájl létrehozása" -#define STR_CONFIG "Számítógép konfiguráció" +#define STR_CONFIG "Konfigurálás" #define STR_SPECIFY_DIM "Főablak méreteinek megadása" #define STR_OK "OK" diff --git a/src/win/languages/it-IT.rc b/src/win/languages/it-IT.rc index 9ebe2f977..e33ade229 100644 --- a/src/win/languages/it-IT.rc +++ b/src/win/languages/it-IT.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Preferenze di 86Box" +#define STR_PREFERENCES "Preferenze" #define STR_SND_GAIN "Guadagno del suono" #define STR_NEW_FLOPPY "Nuova immagine" -#define STR_CONFIG "Impostazioni della piastra madre" +#define STR_CONFIG "Impostazioni" #define STR_SPECIFY_DIM "Specifica dimensioni della finestra principale" #define STR_OK "OK" diff --git a/src/win/languages/ja-JP.rc b/src/win/languages/ja-JP.rc index d2ca7e4e1..648f7c5ab 100644 --- a/src/win/languages/ja-JP.rc +++ b/src/win/languages/ja-JP.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Boxの環境設定" +#define STR_PREFERENCES "環境設定" #define STR_SND_GAIN "サウンドゲイン" #define STR_NEW_FLOPPY "新規のイメージ" -#define STR_CONFIG "マシンの設定" +#define STR_CONFIG "設定" #define STR_SPECIFY_DIM "メインウィンドウの寸法指定" #define STR_OK "OK" diff --git a/src/win/languages/pt-BR.rc b/src/win/languages/pt-BR.rc index abb218b83..163897b48 100644 --- a/src/win/languages/pt-BR.rc +++ b/src/win/languages/pt-BR.rc @@ -274,10 +274,10 @@ END // Dialog // -#define STR_PREFERENCES "Preferências do 86Box" +#define STR_PREFERENCES "Preferências" #define STR_SND_GAIN "Ganho de som" #define STR_NEW_FLOPPY "Nova imagem de disquete" -#define STR_CONFIG "Configurações da máquina" +#define STR_CONFIG "Configurações" #define STR_SPECIFY_DIM "Especifique as dimensões da janela principal" #define STR_OK "OK" diff --git a/src/win/languages/pt-PT.rc b/src/win/languages/pt-PT.rc index d22fb8e37..ff209c66f 100644 --- a/src/win/languages/pt-PT.rc +++ b/src/win/languages/pt-PT.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Preferências do 86Box" +#define STR_PREFERENCES "Preferências" #define STR_SND_GAIN "Ganho de som" #define STR_NEW_FLOPPY "Nova imagem" -#define STR_CONFIG "Definições da máquina" +#define STR_CONFIG "Definições" #define STR_SPECIFY_DIM "Especificar dimensões da janela principal" #define STR_OK "OK" diff --git a/src/win/languages/sl-SI.rc b/src/win/languages/sl-SI.rc index d0104217e..c6e6b6a76 100644 --- a/src/win/languages/sl-SI.rc +++ b/src/win/languages/sl-SI.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "Možnosti programa 86Box" +#define STR_PREFERENCES "Možnosti" #define STR_SND_GAIN "Ojačanje zvoka" #define STR_NEW_FLOPPY "Nova slika" -#define STR_CONFIG "Nastavitve sistema" +#define STR_CONFIG "Nastavitve" #define STR_SPECIFY_DIM "Določi velikost glavnega okna" #define STR_OK "V redu" diff --git a/src/win/languages/tr-TR.rc b/src/win/languages/tr-TR.rc index 71c7a8695..e8d0412ed 100644 --- a/src/win/languages/tr-TR.rc +++ b/src/win/languages/tr-TR.rc @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box Tercihleri" +#define STR_PREFERENCES "Tercihler" #define STR_SND_GAIN "Ses Artırma" #define STR_NEW_FLOPPY "Yeni İmaj" -#define STR_CONFIG "Makine Ayarları" +#define STR_CONFIG "Ayarlar" #define STR_SPECIFY_DIM "Ana Pencere Boyutunu Belirle" #define STR_OK "Tamam" diff --git a/src/win/languages/zh-CN.rc b/src/win/languages/zh-CN.rc index b9de920cc..acbd3a602 100644 --- a/src/win/languages/zh-CN.rc +++ b/src/win/languages/zh-CN.rc @@ -101,7 +101,7 @@ BEGIN MENUITEM "设置(&S)...", IDM_CONFIG MENUITEM "更新状态栏图标(&U)", IDM_UPDATE_ICONS MENUITEM SEPARATOR - MENUITEM "&偏好选项(语言等)...", IDM_PREFERENCES + MENUITEM "首选项(&P)...", IDM_PREFERENCES # ifdef USE_DISCORD MENUITEM SEPARATOR MENUITEM "启用 Discord 集成(&D)", IDM_DISCORD @@ -273,10 +273,10 @@ END // Dialog // -#define STR_PREFERENCES "86Box 偏好选项" +#define STR_PREFERENCES "首选项" #define STR_SND_GAIN "音量增益" #define STR_NEW_FLOPPY "新建镜像" -#define STR_CONFIG "机型设置" +#define STR_CONFIG "设置" #define STR_SPECIFY_DIM "指定主窗口大小" #define STR_OK "确定" From de5b6f6b7483a519a967487f2ca11ab6fb200f62 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 26 Nov 2021 20:59:22 +0100 Subject: [PATCH 09/13] The Turkish translation now correctly uses Segoe UI, and not Meiryo UI. --- src/win/languages/tr-TR.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/win/languages/tr-TR.rc b/src/win/languages/tr-TR.rc index e8d0412ed..17cd251b0 100644 --- a/src/win/languages/tr-TR.rc +++ b/src/win/languages/tr-TR.rc @@ -393,7 +393,7 @@ END #define STR_POSTCARD "POST kartı" #define FONT_SIZE 9 -#define FONT_NAME "Meiryo UI" +#define FONT_NAME "Segoe UI" #include "dialogs.rc" From 5f6a8d5b0216c0858449ec5e01a4e46739b7df30 Mon Sep 17 00:00:00 2001 From: OBattler Date: Fri, 26 Nov 2021 23:12:58 +0100 Subject: [PATCH 10/13] Fixed the credits in the French and Turkish translations. --- src/win/languages/fr-FR.rc | 2 +- src/win/languages/tr-TR.rc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/win/languages/fr-FR.rc b/src/win/languages/fr-FR.rc index ba083bdaa..ebee97263 100644 --- a/src/win/languages/fr-FR.rc +++ b/src/win/languages/fr-FR.rc @@ -491,7 +491,7 @@ BEGIN IDS_2124 "À propos de 86Box" IDS_2125 "86Box v" EMU_VERSION - IDS_2126 "Un émulateur de vieux ordinateurs\n\nAuteurs: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, MoochMcGee, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nLibéré sous la licence GNU General Public License version 2 ou ultérieure. Pour plus d'informations, voir le fichier LICENSE." + IDS_2126 "Un émulateur de vieux ordinateurs\n\nAuteurs: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nLibéré sous la licence GNU General Public License version 2 ou ultérieure. Pour plus d'informations, voir le fichier LICENSE." IDS_2127 "OK" IDS_2128 "Matériel non disponible" #ifdef _WIN32 diff --git a/src/win/languages/tr-TR.rc b/src/win/languages/tr-TR.rc index 17cd251b0..e1785bb58 100644 --- a/src/win/languages/tr-TR.rc +++ b/src/win/languages/tr-TR.rc @@ -491,7 +491,7 @@ BEGIN IDS_2124 "86Box Hakkında" IDS_2125 "86Box v" EMU_VERSION - IDS_2126 "Bir eski bilgisayar emülatörü\n\nYapanlar: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, MoochMcGee, reenigne, leilei, JohnElliott, greatpsycho, ve diğerleri.\n\nGNU Genel Kamu Lisansı versiyon 2 veya sonrası altında yayınlanmıştır. Daha fazla bilgi için LICENSE'ı gözden geçirin." + IDS_2126 "Bir eski bilgisayar emülatörü\n\nYapanlar: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, ve diğerleri.\n\nGNU Genel Kamu Lisansı versiyon 2 veya sonrası altında yayınlanmıştır. Daha fazla bilgi için LICENSE'ı gözden geçirin." IDS_2127 "Tamam" IDS_2128 "Donanım mevcut değil" #ifdef _WIN32 From 0264c31e8b9546843848817f451c95d908315559 Mon Sep 17 00:00:00 2001 From: TC1995 Date: Fri, 26 Nov 2021 23:14:20 +0100 Subject: [PATCH 11/13] Fixed text mode of the Sigma video card. --- src/video/vid_sigma.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/video/vid_sigma.c b/src/video/vid_sigma.c index 008232bc4..eee3eb09a 100644 --- a/src/video/vid_sigma.c +++ b/src/video/vid_sigma.c @@ -416,10 +416,10 @@ static void sigma_text80(sigma_t *sigma) int x, c; uint8_t chr, attr; uint16_t ca = (sigma->crtc[15] | (sigma->crtc[14] << 8)); - uint16_t ma = ((sigma->ma << 1) & 0x3FFF); + uint16_t ma = ((sigma->ma & 0x3FFF) << 1); int drawcursor; uint32_t cols[4]; - uint8_t *vram = sigma->vram + (ma & 0x3FFF); + uint8_t *vram = sigma->vram + (ma << 1); ca = ca << 1; if (sigma->sigma_ctl & CTL_CURSOR) @@ -472,10 +472,10 @@ sigma_text40(sigma_t *sigma) int x, c; uint8_t chr, attr; uint16_t ca = (sigma->crtc[15] | (sigma->crtc[14] << 8)); - uint16_t ma = ((sigma->ma << 1) & 0x3FFF); + uint16_t ma = ((sigma->ma & 0x3FFF) << 1); int drawcursor; uint32_t cols[4]; - uint8_t *vram = sigma->vram + (ma & 0x3FFF); + uint8_t *vram = sigma->vram + ((ma << 1) & 0x3FFF); ca = ca << 1; if (sigma->sigma_ctl & CTL_CURSOR) From cf373449fc77b073dd8b60b93bf56c7d7dac9545 Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Sun, 28 Nov 2021 00:15:31 -0300 Subject: [PATCH 12/13] Fix enum entries in VIA chipset code that were bugging me --- src/chipset/via_pipc.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/chipset/via_pipc.c b/src/chipset/via_pipc.c index 1eb3b4ea7..15c3c2592 100644 --- a/src/chipset/via_pipc.c +++ b/src/chipset/via_pipc.c @@ -80,8 +80,8 @@ enum { TRAP_COM3, TRAP_COM2, TRAP_COM4, - TRAP_LPT_LPT1, - TRAP_LPT_LPT2, + TRAP_LPT1, + TRAP_LPT2, TRAP_VGA, TRAP_KBC, TRAP_AUD_MIDI_0, @@ -623,8 +623,8 @@ pipc_trap_update_586(void *priv) pipc_trap_update_paden(dev, TRAP_VGA, 0x00000010, 1, 0x3b0, 48); /* [A0000:BFFFF] memory trap not implemented. */ - pipc_trap_update_paden(dev, TRAP_LPT_LPT1, 0x00000020, 1, 0x378, 8); - pipc_trap_update_paden(dev, TRAP_LPT_LPT2, 0x00000020, 1, 0x278, 8); + pipc_trap_update_paden(dev, TRAP_LPT1, 0x00000020, 1, 0x378, 8); + pipc_trap_update_paden(dev, TRAP_LPT2, 0x00000020, 1, 0x278, 8); pipc_trap_update_paden(dev, TRAP_COM1, 0x00000040, 1, 0x3f8, 8); pipc_trap_update_paden(dev, TRAP_COM2, 0x00000040, 1, 0x2f8, 8); @@ -658,8 +658,8 @@ pipc_trap_update_596(void *priv) pipc_trap_update_paden(dev, TRAP_COM2, 0x00000040, 1, 0x2f8, 8); pipc_trap_update_paden(dev, TRAP_COM4, 0x00000040, 1, 0x2e8, 8); - pipc_trap_update_paden(dev, TRAP_LPT_LPT1, 0x00000080, 1, 0x378, 8); - pipc_trap_update_paden(dev, TRAP_LPT_LPT2, 0x00000080, 1, 0x278, 8); + pipc_trap_update_paden(dev, TRAP_LPT1, 0x00000080, 1, 0x378, 8); + pipc_trap_update_paden(dev, TRAP_LPT2, 0x00000080, 1, 0x278, 8); pipc_trap_update_paden(dev, TRAP_VGA, 0x00000100, 1, 0x3b0, 48); /* [A0000:BFFFF] memory trap not implemented. */ From 05bbbaff211c4bd6e2b1f04cbd78aeda189999c4 Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Sun, 28 Nov 2021 13:57:58 -0300 Subject: [PATCH 13/13] Improve Jenkins build flow, now with symbol stripping for regular builds --- .ci/Jenkinsfile | 2 +- .ci/build.sh | 89 ++++++++++++++++++++++++++----------------------- 2 files changed, 48 insertions(+), 43 deletions(-) diff --git a/.ci/Jenkinsfile b/.ci/Jenkinsfile index 1512084a3..240b72b09 100644 --- a/.ci/Jenkinsfile +++ b/.ci/Jenkinsfile @@ -73,7 +73,7 @@ def presetSlugs = [ ] def presetFlags = [ - 'Regular': '--preset=regular', + 'Regular': '-t --preset=regular', 'Debug': '--preset=debug', 'Dev': '--preset=experimental -D VNC=OFF' ] diff --git a/.ci/build.sh b/.ci/build.sh index fb6b2563a..6cb5467f3 100644 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -37,28 +37,6 @@ alias is_windows='[ ! -z "$MSYSTEM" ]' alias is_mac='uname -s | grep -q Darwin' -try_make() { - # Try makefiles on two locations. I don't know what causes - # CMake to pick ./ instead of build/, but :worksonmymachine: - if [ -e "build/Makefile" ] - then - build_dir="$(pwd)/build" - cd build - make -j$(nproc) $* - local status=$? - cd .. - return $status - elif [ -e "Makefile" ] - then - build_dir="$(pwd)" - make -j$(nproc) $* - return $? - else - echo [!] No makefile found - return 1 - fi -} - make_tar() { # Install dependencies. if ! which tar xz > /dev/null 2>&1 @@ -113,6 +91,7 @@ cwd=$(pwd) package_name= arch= tarball_name= +strip=0 cmake_flags= while [ $# -gt 0 ] do @@ -131,6 +110,11 @@ do shift ;; + -t) + shift + strip=1 + ;; + *) if echo $1 | grep -q " " then @@ -153,7 +137,7 @@ cmake_flags_extra= # Check if mandatory arguments were specified. if [ -z "$package_name" -a -z "$tarball_name" ] || [ ! -z "$package_name" -a -z "$arch" ] then - echo '[!] Usage: build.sh -b {package_name} {architecture} [cmake_flags...]' + echo '[!] Usage: build.sh -b {package_name} {architecture} [-t] [cmake_flags...]' echo ' build.sh -s {source_tarball_name}' exit 100 fi @@ -193,6 +177,7 @@ fi echo [-] Building [$package_name] for [$arch] with flags [$cmake_flags] # Perform platform-specific setup. +strip_binary=strip if is_windows then # Switch into the correct MSYSTEM if required. @@ -240,7 +225,7 @@ else for pkg in libc6-dev linux-libc-dev libopenal-dev libfreetype6-dev libsdl2-dev libpng-dev do libpkgs="$libpkgs $pkg:$arch_deb" - length=$(echo -n $pkg | sed 's/-dev$//g' | wc -c) + length=$(echo -n $pkg | sed 's/-dev$//' | wc -c) [ $length -gt $longest_libpkg ] && longest_libpkg=$length done @@ -272,6 +257,7 @@ set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) EOF cmake_flags_extra="$cmake_flags_extra -D CMAKE_TOOLCHAIN_FILE=toolchain.cmake" + strip_binary="$arch_gnu-strip" # Install or update dependencies. echo [-] Installing dependencies through apt @@ -282,11 +268,14 @@ fi # Clean workspace. echo [-] Cleaning workspace -try_make clean > /dev/null -rm -rf build +if [ -d "build" ] +then + MAKEFLAGS=-j$(nproc) cmake --build build --target clean 2> /dev/null + rm -rf build +fi find . \( -name Makefile -o -name CMakeCache.txt -o -name CMakeFiles \) -exec rm -rf "{}" \; 2> /dev/null -# Determine ARCH to skip the arch_detect process. +# Add ARCH to skip the arch_detect process. case $arch in 32 | x86) cmake_flags_extra="$cmake_flags_extra -D ARCH=i386";; 64 | x86_64) cmake_flags_extra="$cmake_flags_extra -D ARCH=x86_64";; @@ -295,7 +284,7 @@ case $arch in *) cmake_flags_extra="$cmake_flags_extra -D \"ARCH=$arch\"";; esac -# Add git hash and copyright year. +# Add git hash. git_hash=$(git rev-parse --short HEAD 2> /dev/null) if [ "$CI" = "true" ] then @@ -307,11 +296,14 @@ then git diff --quiet 2> /dev/null || git_hash="$git_hash+" fi [ ! -z "$git_hash" ] && cmake_flags_extra="$cmake_flags_extra -D \"EMU_GIT_HASH=$git_hash\"" -cmake_flags_extra="$cmake_flags_extra -D \"EMU_COPYRIGHT_YEAR=$(date +%Y)\"" + +# Add copyright year. +year=$(date +%Y) +[ ! -z "$year" ] && cmake_flags_extra="$cmake_flags_extra -D \"EMU_COPYRIGHT_YEAR=$year\"" # Run CMake. echo [-] Running CMake with flags [$cmake_flags $cmake_flags_extra] -eval cmake -G \"Unix Makefiles\" $cmake_flags $cmake_flags_extra . +eval cmake -G \"Unix Makefiles\" -B build $cmake_flags $cmake_flags_extra . status=$? if [ $status -ne 0 ] then @@ -320,8 +312,9 @@ then fi # Run actual build. -echo [-] Running build -try_make +make_flags=-j$(nproc) +echo [-] Running build with make flags [$make_flags] +MAKEFLAGS=$make_flags cmake --build build status=$? if [ $status -ne 0 ] then @@ -370,11 +363,17 @@ then fi # Archive other DLLs from local directory. - cp -p /home/$project/dll$arch/* archive_tmp/ + cp -p "/home/$project/dll$arch/"* archive_tmp/ - # Archive executable. - mv "$build_dir"/src/$project.exe archive_tmp/ - status=$? + # Archive executable, while also stripping it if requested. + if [ $strip -ne 0 ] + then + "$strip_binary" -o "archive_tmp/$project.exe" "build/src/$project.exe" + status=$? + else + mv "build/src/$project.exe" "archive_tmp/$project.exe" + status=$? + fi elif is_mac then # TBD @@ -382,7 +381,7 @@ then else # Archive readme with library package versions. echo Libraries used to compile this $arch build of $project: > archive_tmp/README - dpkg-query -f '${Package} ${Version}\n' -W $libpkgs | sed "s/-dev / /g" | while IFS=" " read pkg version + dpkg-query -f '${Package} ${Version}\n' -W $libpkgs | sed "s/-dev / /" | while IFS=" " read pkg version do for i in $(seq $(expr $longest_libpkg - $(echo -n $pkg | wc -c))) do @@ -391,15 +390,21 @@ else echo $pkg $version >> archive_tmp/README done - # Archive executable. - mv "$build_dir"/src/$project archive_tmp/ - status=$? + # Archive executable, while also stripping it if requested. + if [ $strip -ne 0 ] + then + "$strip_binary" -o "archive_tmp/$project" "build/src/$project" + status=$? + else + mv "build/src/$project" "archive_tmp/$project" + status=$? + fi fi -# Check if the executable move succeeded. +# Check if the executable strip/move succeeded. if [ $status -ne 0 ] then - echo [!] Executable move failed with status [$status] + echo [!] Executable strip/move failed with status [$status] exit 6 fi