This commit is contained in:
OBattler
2023-01-19 06:20:59 +01:00
27 changed files with 126 additions and 11 deletions

View File

@@ -45,7 +45,6 @@ AppDir:
include:
- libedit2 # if (CLI:BOOL=ON|QT:BOOL=OFF)
- libevdev2 # if QT:BOOL=ON
- libfluidsynth2
- libfreetype6
- libgbm1 # if QT:BOOL=ON
- libgl1 # if QT:BOOL=ON

View File

@@ -12,7 +12,7 @@
#
# Authors: RichardG, <richardg867@gmail.com>
#
# Copyright 2021-2022 RichardG.
# Copyright 2021-2023 RichardG.
#
#
@@ -986,7 +986,8 @@ else
sdl_ui=OFF
grep -qiE "^QT:BOOL=ON" build/CMakeCache.txt || sdl_ui=ON
# Build rtmidi without JACK support to remove the dependency on libjack.
# Build rtmidi without JACK support to remove the dependency on libjack, as
# the Debian libjack is very likely to be incompatible with the system jackd.
prefix="$cache_dir/rtmidi-4.0.0"
if [ ! -d "$prefix" ]
then
@@ -998,6 +999,21 @@ else
cmake --build "$prefix_build" -j$(nproc) || exit 99
cmake --install "$prefix_build" || exit 99
# Build FluidSynth without JACK support to remove the dependency on libjack once again.
prefix="$cache_dir/fluidsynth-2.3.0"
if [ ! -d "$prefix" ]
then
rm -rf "$cache_dir/fluidsynth-"* # remove old versions
wget -qO - https://github.com/FluidSynth/fluidsynth/archive/refs/tags/v2.3.0.tar.gz | tar zxf - -C "$cache_dir" || rm -rf "$prefix"
fi
cp cmake/flags-gcc.cmake cmake/flags-gcc.cmake.old
sed -i -e 's/ -Werror=.*\([" ]\)/\1/g' cmake/flags-gcc.cmake # temporary hack for -Werror=old-style-definition non-compliance on FluidSynth and SDL2
prefix_build="$prefix/build-$arch_deb"
cmake -G Ninja -D enable-jack=OFF -D enable-sdl2=$sdl_ss -D "CMAKE_TOOLCHAIN_FILE=$toolchain_file" -D "CMAKE_INSTALL_PREFIX=$cwd_root/archive_tmp/usr" -S "$prefix" -B "$prefix_build" || exit 99
cmake --build "$prefix_build" -j$(nproc) || exit 99
cmake --install "$prefix_build" || exit 99
cp -p "$cwd_root/archive_tmp/usr/bin/fluidsynth" fluidsynth
# Build SDL2 for joystick and FAudio support, with most components
# disabled to remove the dependencies on PulseAudio and libdrm.
prefix="$cache_dir/SDL2-2.0.20"
@@ -1028,6 +1044,7 @@ else
-S "$prefix" -B "$prefix_build" || exit 99
cmake --build "$prefix_build" -j$(nproc) || exit 99
cmake --install "$prefix_build" || exit 99
mv cmake/flags-gcc.cmake.old cmake/flags-gcc.cmake
# Archive Discord Game SDK library.
7z e -y -o"archive_tmp/usr/lib" "$discord_zip" "lib/$arch_discord/discord_game_sdk.so"

View File

@@ -150,6 +150,18 @@
#define IDS_2160 2160 // "ACPI shutdown"
#define IDS_2161 2161 // "Settings"
#define IDS_2162 2162 // "Early drive"
#define IDS_2163 2163 // "no dynarec"
#define IDS_2164 2164 // "old dynarec"
#define IDS_2165 2165 // "new dynarec"
#ifdef USE_DYNAREC
# ifdef USE_NEW_DYNAREC
# define IDS_DYNAREC IDS_2165
# else
# define IDS_DYNAREC IDS_2164
# endif
#else
# define IDS_DYNAREC IDS_2163
#endif
#define IDS_4096 4096 // "Hard disk (%s)"
#define IDS_4097 4097 // "%01i:%01i"
@@ -258,7 +270,7 @@
#define IDS_LANG_ENUS IDS_7168
#define STR_NUM_2048 115
#define STR_NUM_2048 118
// UNUSED: #define STR_NUM_3072 11
#define STR_NUM_4096 40
#define STR_NUM_4352 6

View File

@@ -2095,12 +2095,21 @@ MainWindow::on_actionAbout_86Box_triggered()
{
QMessageBox msgBox;
msgBox.setTextFormat(Qt::RichText);
QString githash;
QString versioninfo;
#ifdef EMU_GIT_HASH
githash = QString(" [%1]").arg(EMU_GIT_HASH);
versioninfo = QString(" [%1]").arg(EMU_GIT_HASH);
#endif
githash.append(QString(" [%1]").arg(QSysInfo::buildCpuArchitecture()));
msgBox.setText(QString("<b>%3%1%2</b>").arg(EMU_VERSION_FULL, githash, tr("86Box v")));
#ifdef USE_DYNAREC
# ifdef USE_NEW_DYNAREC
# define DYNAREC_STR "new dynarec"
# else
# define DYNAREC_STR "old dynarec"
# endif
#else
# define DYNAREC_STR "no dynarec"
#endif
versioninfo.append(QString(" [%1, %2]").arg(QSysInfo::buildCpuArchitecture(), tr(DYNAREC_STR)));
msgBox.setText(QString("<b>%3%1%2</b>").arg(EMU_VERSION_FULL, versioninfo, tr("86Box v")));
msgBox.setInformativeText(tr("An emulator of old computers\n\nAuthors: Sarah Walker, Miran Grca, Fred N. van Kempen (waltje), SA1988, Tiseno100, reenigne, leilei, JohnElliott, greatpsycho, and others.\n\nReleased under the GNU General Public License version 2 or later. See LICENSE for more information."));
msgBox.setWindowTitle("About 86Box");
msgBox.addButton("OK", QMessageBox::ButtonRole::AcceptRole);

View File

@@ -848,7 +848,7 @@ mystique_recalctimings(svga_t *svga)
mystique_t *mystique = (mystique_t *) svga->p;
int clk_sel = (svga->miscout >> 2) & 3;
svga->clock = (cpuclock * (float) (1ull << 32)) / svga->getclock(clk_sel & 2, svga->clock_gen);
svga->clock = (cpuclock * (float) (1ull << 32)) / svga->getclock(clk_sel & 3, svga->clock_gen);
if (mystique->crtcext_regs[1] & CRTCX_R1_HTOTAL8)
svga->htotal += 0x100;
@@ -896,7 +896,9 @@ mystique_recalctimings(svga_t *svga)
svga->ma = svga->maback = (svga->maback - (mystique->ma_latch_old << 2)) + (svga->ma_latch << 2);
mystique->ma_latch_old = svga->ma_latch;
}
svga->rowoffset <<= 1;
switch (mystique->xmulctrl & XMULCTRL_DEPTH_MASK) {
case XMULCTRL_DEPTH_8:
case XMULCTRL_DEPTH_2G8V16:

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "Vypnout skrze rozhraní ACPI"
IDS_2161 "Nastavení"
IDS_2162 "Časná mechanika"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI-basiertes Herunterfahren"
IDS_2161 "Optionen"
IDS_2162 "Früheres Laufwerk"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI shutdown"
IDS_2161 "Settings"
IDS_2162 "Earlier drive"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI shutdown"
IDS_2161 "Settings"
IDS_2162 "Earlier drive"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI shutdown"
IDS_2161 "Settings"
IDS_2162 "Unidad anterior"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI-sammutus"
IDS_2161 "Asetukset"
IDS_2162 "Aiemmat asemat"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI shutdown"
IDS_2161 "Settings"
IDS_2162 "Lecteur plus tôt"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI bazirano gašenje"
IDS_2161 "Postavke"
IDS_2162 "Raniji pogon"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -526,6 +526,9 @@ BEGIN
IDS_2160 "ACPI shutdown"
IDS_2161 "Settings"
IDS_2162 "Korábbi meghajtó"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -523,6 +523,9 @@ BEGIN
IDS_2160 "ACPI shutdown"
IDS_2161 "Settings"
IDS_2162 "Unità anteriore"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPIシャットダウン"
IDS_2161 "設定"
IDS_2162 "アーリードライブ"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI 종료"
IDS_2161 "설정"
IDS_2162 "이전 드라이브"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "Wyłączenie ACPI"
IDS_2161 "Ustawienia"
IDS_2162 "Wcześniejszy napęd"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -525,6 +525,9 @@ BEGIN
IDS_2160 "Desligamento por ACPI"
IDS_2161 "Configurações"
IDS_2162 "Unidade anterior"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "Encerramento ACPI"
IDS_2161 "Definições"
IDS_2162 "Unidade anterior"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "Сигнал завершения ACPI"
IDS_2161 "Настройки машины"
IDS_2162 "Предыдущий дисковод"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "Zaustavitev ACPI"
IDS_2161 "Nastavitve"
IDS_2162 "Zgodnejši pogon"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI kapatma"
IDS_2161 "Ayarlar"
IDS_2162 "Daha erken sürüş"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "Сигнал завершення ACPI"
IDS_2161 "Налаштування машини"
IDS_2162 "Більш ранній дисковод"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI 关机"
IDS_2161 "设置"
IDS_2162 "早先的驱动器"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -522,6 +522,9 @@ BEGIN
IDS_2160 "ACPI 關機"
IDS_2161 "設定"
IDS_2162 "早先的光碟機"
IDS_2163 "no dynarec"
IDS_2164 "old dynarec"
IDS_2165 "new dynarec"
END
STRINGTABLE DISCARDABLE

View File

@@ -45,9 +45,22 @@ AboutDialogCreate(HWND hwnd)
wchar_t emu_version[256];
i = swprintf(emu_version, sizeof(emu_version), L"%ls v%ls", EMU_NAME_W, EMU_VERSION_FULL_W);
#ifdef EMU_GIT_HASH
swprintf(&emu_version[i], sizeof(emu_version) - i, L" [%ls]", EMU_GIT_HASH_W);
i += swprintf(&emu_version[i], sizeof(emu_version) - i, L" [%ls]", EMU_GIT_HASH_W);
#endif
#if defined(__arm__) || defined(__TARGET_ARCH_ARM)
# define ARCH_STR L"arm"
#elif defined(__aarch64__) || defined(_M_ARM64)
# define ARCH_STR L"arm64"
#elif defined(__i386) || defined(__i386__) || defined(_M_IX86)
# define ARCH_STR L"i386"
#elif defined(__x86_64) || defined(__x86_64__) || defined(__amd64) || defined(_M_X64)
# define ARCH_STR L"x86_64"
#else
# define ARCH_STR L"unknown"
#endif
swprintf(&emu_version[i], sizeof(emu_version) - i, L" [%ls, %ls]", ARCH_STR, plat_get_string(IDS_DYNAREC));
tdconfig.cbSize = sizeof(tdconfig);
tdconfig.hwndParent = hwnd;
tdconfig.hInstance = hinstance;