This commit is contained in:
Wengier
2021-11-20 01:03:44 -05:00
parent d1a2cb4c0f
commit 0e2c9793d4
2 changed files with 7 additions and 1 deletions

View File

@@ -113,6 +113,8 @@
working when using the 4DOS shell. (Wengier) working when using the 4DOS shell. (Wengier)
- Fixed "DIR>NUL" freeze/crash when only disk or CD - Fixed "DIR>NUL" freeze/crash when only disk or CD
images are mounted. (nanshiki) images are mounted. (nanshiki)
- Fixed display glitches in the game "Continuing
adventures of Cyberbox". (Wengier)
- Make memory B0000-B7FFF unmapped for the CGA - Make memory B0000-B7FFF unmapped for the CGA
emulation. Fixes "Backgammon 5.0" detecting that emulation. Fixes "Backgammon 5.0" detecting that
an MDA is also present when using CGA. (Allofich) an MDA is also present when using CGA. (Allofich)

View File

@@ -642,15 +642,19 @@ uint8_t *GetDbcsFont(Bitu code)
jfont_cache_dbcs_16[code] = 1; jfont_cache_dbcs_16[code] = 1;
return &jfont_dbcs_16[code * 32]; return &jfont_dbcs_16[code * 32];
} }
} else if (dos.loaded_codepage == 950 && !(fontsize16%15) && isKanji1(code/0x100)) { } if (((dos.loaded_codepage == 936 && gbk) || dos.loaded_codepage == 950) && !(fontsize16%15) && isKanji1(code/0x100)) {
Bitu c = code;
if (dos.loaded_codepage == 936) code = GetConvertedCode(code, 950);
int offset = -1, ser = (code/0x100 - 161) * 157 + ((code%0x100) - ((code%0x100)>160?161:64)) + ((code%0x100)>160?64:1); int offset = -1, ser = (code/0x100 - 161) * 157 + ((code%0x100) - ((code%0x100)>160?161:64)) + ((code%0x100)>160?64:1);
if (ser >= 472 && ser <= 5872) offset = (ser-472)*30; if (ser >= 472 && ser <= 5872) offset = (ser-472)*30;
else if (ser >= 6281 && ser <= 13973) offset = (ser-6281)*30+162030; else if (ser >= 6281 && ser <= 13973) offset = (ser-6281)*30+162030;
if (offset>-1) { if (offset>-1) {
code = c;
memcpy(&jfont_dbcs_16[code * 32], fontdata16+offset, 30); memcpy(&jfont_dbcs_16[code * 32], fontdata16+offset, 30);
jfont_cache_dbcs_16[code] = 1; jfont_cache_dbcs_16[code] = 1;
return &jfont_dbcs_16[code * 32]; return &jfont_dbcs_16[code * 32];
} }
code = c;
} }
} }
if(code >= 0x849f && code <= 0x84be) { if(code >= 0x849f && code <= 0x84be) {