From 2893a7dda1ae073bc6ac469391b514e338dd5451 Mon Sep 17 00:00:00 2001 From: Sasamiya <117635969+kzmidze@users.noreply.github.com> Date: Sun, 1 Dec 2024 15:08:38 +0800 Subject: [PATCH 1/2] Fixed SChinese and TChinese translations --- src/qt/languages/zh-CN.po | 6 +++--- src/qt/languages/zh-TW.po | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/qt/languages/zh-CN.po b/src/qt/languages/zh-CN.po index 95e770357..6b659b504 100644 --- a/src/qt/languages/zh-CN.po +++ b/src/qt/languages/zh-CN.po @@ -1372,13 +1372,13 @@ msgid "This machine might have been moved or copied." msgstr "这台机器可能被移动或复制过。" msgid "In order to ensure proper networking functionality, 86Box needs to know if this machine was moved or copied.\n\nSelect \"I Copied It\" if you are not sure." -msgstr "为了确保网络功能正常,86Box需要知道这台机器是否被移动或复制。\n\n如果您不确定,请选择\"我复制了它\"。" +msgstr "为了确保网络功能正常,86Box需要知道这台机器是否被移动或复制。\n\n如果您不确定,请选择\"我已复制这台机器\"。" msgid "I Moved It" -msgstr "我移动了它" +msgstr "我已移动这台机器" msgid "I Copied It" -msgstr "我复制了它" +msgstr "我已复制这台机器" msgid "86Box Monitor #" msgstr "86Box 监测器 " diff --git a/src/qt/languages/zh-TW.po b/src/qt/languages/zh-TW.po index 2d5576573..f9e917d98 100644 --- a/src/qt/languages/zh-TW.po +++ b/src/qt/languages/zh-TW.po @@ -1372,13 +1372,13 @@ msgid "This machine might have been moved or copied." msgstr "這台機器可能已被移動或複製。" msgid "In order to ensure proper networking functionality, 86Box needs to know if this machine was moved or copied.\n\nSelect \"I Copied It\" if you are not sure." -msgstr "為了確保正常的網路功能,86Box 需要知道這台機器是否被移動或複製。\n\n如果您不確定,請選擇「我複製了它」。" +msgstr "為了確保正常的網路功能,86Box 需要知道這台機器是否被移動或複製。\n\n如果您不確定,請選擇「我已複製這台機器」。" msgid "I Moved It" -msgstr "我移動了它" +msgstr "我已移動這台機器" msgid "I Copied It" -msgstr "我複製了它" +msgstr "我已複製這台機器" msgid "86Box Monitor #" msgstr "86Box Monitor " From f49cf628a2c8a037b4b6ad90c5003fdba968df86 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sun, 1 Dec 2024 20:59:53 +0100 Subject: [PATCH 2/2] Merged the PS/2 floppy drives into the normal ones, DENSEL polarity is now decided based on machine instead. --- src/floppy/fdd.c | 52 ++++++++++++++++++++++++++++++++++++------------ 1 file changed, 39 insertions(+), 13 deletions(-) diff --git a/src/floppy/fdd.c b/src/floppy/fdd.c index 81edcc8b8..f1b1eab69 100644 --- a/src/floppy/fdd.c +++ b/src/floppy/fdd.c @@ -26,6 +26,7 @@ #define HAVE_STDARG_H #include <86box/86box.h> #include <86box/timer.h> +#include <86box/machine.h> #include <86box/path.h> #include <86box/plat.h> #include <86box/ui.h> @@ -153,20 +154,16 @@ static const struct { { 43, FLAG_RPM_300 | FLAG_525 | FLAG_DS | FLAG_HOLE0, "5.25\" 360k", "525_2dd" }, /* 5.25" QD */ { 86, FLAG_RPM_300 | FLAG_525 | FLAG_DS | FLAG_HOLE0 | FLAG_DOUBLE_STEP, "5.25\" 720k", "525_2qd" }, - /* 5.25" HD PS/2 */ - { 86, FLAG_RPM_360 | FLAG_525 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP | FLAG_INVERT_DENSEL | FLAG_PS2, "5.25\" 1.2M PS/2", "525_2hd_ps2" }, /* 5.25" HD */ - { 86, FLAG_RPM_360 | FLAG_525 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP, "5.25\" 1.2M", "525_2hd" }, + { 86, FLAG_RPM_360 | FLAG_525 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP | FLAG_PS2, "5.25\" 1.2M", "525_2hd" }, /* 5.25" HD Dual RPM */ { 86, FLAG_RPM_300 | FLAG_RPM_360 | FLAG_525 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP, "5.25\" 1.2M 300/360 RPM", "525_2hd_dualrpm" }, /* 3.5" 1DD */ { 86, FLAG_RPM_300 | FLAG_HOLE0 | FLAG_DOUBLE_STEP, "3.5\" 360k", "35_1dd" }, /* 3.5" DD, Equivalent to TEAC FD-235F */ { 86, FLAG_RPM_300 | FLAG_DS | FLAG_HOLE0 | FLAG_DOUBLE_STEP, "3.5\" 720k", "35_2dd" }, - /* 3.5" HD PS/2 */ - { 86, FLAG_RPM_300 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP | FLAG_INVERT_DENSEL | FLAG_PS2, "3.5\" 1.44M PS/2", "35_2hd_ps2" }, /* 3.5" HD, Equivalent to TEAC FD-235HF */ - { 86, FLAG_RPM_300 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP, "3.5\" 1.44M", "35_2hd" }, + { 86, FLAG_RPM_300 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP | FLAG_PS2, "3.5\" 1.44M", "35_2hd" }, /* TODO: 3.5" DD, Equivalent to TEAC FD-235GF */ // { 86, FLAG_RPM_300 | FLAG_RPM_360 | FLAG_DS | FLAG_HOLE0 | FLAG_HOLE1 | FLAG_DOUBLE_STEP, "3.5\" 1.25M", "35_2hd_2mode" }, /* 3.5" HD PC-98 */ @@ -214,10 +211,19 @@ fdd_get_internal_name(int type) int fdd_get_from_internal_name(char *s) { - int c = 0; + int c = 0; + char *n; + + /* TODO: Remove this once the migration period is over. */ + if (!strcmp(s, "525_2hd_ps2")) + n = "525_2hd"; + else if (!strcmp(s, "35_2hd_ps2")) + n = "35_2hd"; + else + n = s; while (strlen(drive_types[c].internal_name)) { - if (!strcmp((char *) drive_types[c].internal_name, s)) + if (!strcmp((char *) drive_types[c].internal_name, n)) return c; c++; } @@ -282,11 +288,32 @@ fdd_current_track(int drive) return fdd[drive].track; } +static int +fdd_type_invert_densel(int type) +{ + int ret; + + if (drive_types[type].flags & FLAG_PS2) + ret = !strstr(machine_getname(), "PS/2"); + else + ret = drive_types[type].flags & FLAG_INVERT_DENSEL; + + return ret; +} + +static int +fdd_invert_densel(int drive) +{ + int ret = fdd_type_invert_densel(fdd[drive].type); + + return ret; +} + void fdd_set_densel(int densel) { for (uint8_t i = 0; i < FDD_NUM; i++) { - if (drive_types[fdd[i].type].flags & FLAG_INVERT_DENSEL) + if (fdd_invert_densel(i)) fdd[i].densel = densel ^ 1; else fdd[i].densel = densel; @@ -302,7 +329,7 @@ fdd_getrpm(int drive) hole = fdd_hole(drive); densel = fdd[drive].densel; - if (drive_types[fdd[drive].type].flags & FLAG_INVERT_DENSEL) + if (fdd_invert_densel(drive)) densel ^= 1; if (!(drive_types[fdd[drive].type].flags & FLAG_RPM_360)) @@ -340,10 +367,9 @@ fdd_doublestep_40(int drive) void fdd_set_type(int drive, int type) { - int old_type = fdd[drive].type; - fdd[drive].type = type; - if ((drive_types[old_type].flags ^ drive_types[type].flags) & FLAG_INVERT_DENSEL) + if (fdd_type_invert_densel(fdd[drive].type) != fdd_type_invert_densel(type)) fdd[drive].densel ^= 1; + fdd[drive].type = type; } int