-
Notifications
You must be signed in to change notification settings - Fork 388
Guide:East Asian language support in DOSBox‐X
Back to the DOSBox-X Wiki Welcome page.
DOSBox-X is designed to be complete DOS emulator and provides official support for East Asian languages and systems, including (Simplified and Traditional) Chinese, Japanese, and Korean languages in different emulation modes. These languages use double-byte character set (DBCS) to render text instead of using standard ASCII characters. All of these languages are well-supported in DOS/V modes and either the TrueType font (TTF) output or a standard (non-TTF) output with CJK code pages (932, 936, 949, and 950), with additional support for the Japanese language in the J-3100 DCGA, PC-98, and AX (JEGA) modes. There are also translation files for these languages available for use with DOSBox-X so that the user interfaces will be displayed in these languages:
Japanese language file: ja_JP.lng
Korean language file: ko_KR.lng
Simplified Chinese language file: zh_CN.lng
Traditional Chinese language file: zh_TW.lng
Inputting Chinese/Japanese/Korean characters is also supported via Windows or Linux system IMEs in these code pages, which can be controlled via the ime
option in [dosbox] section of the DOSBox-X configuration (dosbox-x.conf). They are supported on Windows and Linux systems and allow users to enter CJK characters as in other applications (such as Notepad) of these operating systems.
As a general DOS emulation environment, you can enable CJK support using the TrueType font (TTF) output with a CJK code page (932 for Japanese, 936 for Simplified Chinese, 949 for Korean, and 950/951 for Traditional Chinese). General information about DOSBox-X’s TrueType font output is available from the TrueType font output guide page. Set the code page with either the country
option in [config] section of the config file, or using CHCP
command, such as country=81,932
or CHCP 932
for Japanese. The default TTF font bundled with DOSBox-X does not support Chinese/Japanese/Korean characters, but there are many TTF fonts (or TTC/OTF fonts) available containing support for CJK characters, and you can load them for the TTF output via the font
config option in [ttf] section of the config file. Some of these fonts (such as GNU Unifont and Sarasa Gothic) are intended to cover all CJK languages, whereas other TTF fonts (e.g. MigMix or M+ fonts) are intended to cover only characters of a specific CJK language. TTF or TTC fonts like simkai.ttf
, simhei.ttf
, and mingliu.ttc
are included in some versions of Windows, so you need to only specify a setting like font=simkai
or font=mingliu.ttc
to load them in such cases. Otherwise, you will need to download TTF fonts and load them accordingly. The SarasaGothicFixed.ttf
and UnifontFullMediumMono.ttf
font files are also available in the DOSBox-X repository for download:
-
Sarasa-Gothic Fixed: Download here
-
UnifontFullMediumMono: Download here
As of DOSBox-X version 0.83.16, the SarasaGothicFixed.ttf
font file is also included in the Windows installer, and DOSBox-X will try to automatically load it if you start DOSBox-X with a CJK code page and no other TTF font is specified.
A screenshot of the TrueType font output with the Simplified Chinese code page (936) using the SarasaGothicFixed.ttf
font file:
For the Simplified Chinese, the GB2312 charset is supported by default, but you can optionally enable the GBK extension with the gbk
config option. Similar for the Traditional Chinese, where the ChinaSea (中國海字集) and Big5-2003 extension for the original Big5-1984 charset can be optionally enabled with the chinasea
config option. You can also enable either the GBK or ChinaSea extension from the drop-down menu (inside "Video" ⇒ "TTF options" menu group). Below are screenshots showing the TrueType font output running QuickBASIC 4.5 (Traditional Chinese version) and Hyper Editor 5.03 (漢書5) with the Traditional Chinese code page (950) and ChinaSea extension enabled:
There are other config options for the TrueType font relating to CJK support, such as automatic box-drawing recognition and SBCS <⇒ DBCS mode switch, as found in the [ttf] section of the config file (such as autodbcs
and autoboxdraw
options). These can also be toggled dynamically from the drop-down menu (inside "Video" ⇒ "TTF options" menu group), or via keyboard shortcuts as of DOSBox-X 0.83.24. Moreover, as of DOSBox-X 0.83.21 there is a UTF8
command which allows conversion of text encoded in UTF-8 to be viewed in the current code page.
Apart from the code page 950 for the Traditional Chinese, there is also a "hidden" code page 951 which enables the Big5-HKSCS charset (or Big5-UAO charset with the option uao
set to true
) instead of the Big5-1984 or the Big5-2003 charset. They are however not fully compatible with the ChinaSea extension. If you set chinasea
to true
, then a subset of either the Big5-HKSCS charset or the Big5-UAO charset will be replaced with ChinaSea characters.
DOSBox-X additionally allows running (Simplified or Traditional) Chinese DOS systems such as CCDOS 97, PDOS, or TechWay SCS (天汇汉字系统) to run when in the TTF output. DOSBox-X will automatically switch to a graphical output to let Chinese DOS systems to render correctly in this case. For the ETen Chinese DOS system (倚天中文系統) and running ET16V (飛碟五號) or ET24VA (飛碟24) it is strongly recommended setting the option vga fill active memory=true
(in [video] section, supported since DOSBox-X 0.83.19), and for the latter (ET24VA), also the option machine=svga_et4000
(in [dosbox] section) of the DOSBox-X configuration so that it will run properly.
Starting with DOSBox-X version 0.83.22, rendering of Chinese/Japanese/Korean characters is also supported in output options rather than the TrueType font output, when a DBCS code page is active (and without enabling DOS/V services as described in the next section). This is available for the VGA and EGA machine types, but not for CGA or Hercules machine types. 14-pixel and 16-pixel font options for the DOS/V modes as described in the next section are also supported for this mode. The setting of the fontxdbcs
option will apply to the VGA mode whereas the fontxdbcs14
option will apply to the EGA mode (and interfaces like the Configuration Tool). As with DOS/V modes DOSBox-X will try to get or use the fonts for the active code page, but you can also specify your own font files as described in the next section. If not specified, DOSBox-X will also try to load BDF bitmap font file wqy_12pt.bdf
and/or wqy_11pt.bdf
(if located in the DOSBox-X directory or user configuration directory) for the Chinese or Korean characters as of DOSBox-X version 0.84.1 (especially for non-Windows platforms).
A screenshot of the Simplified Chinese code page in DirectX output:
By default, DOSBox-X will render Chinese/Japanese/Korean characters in a DBCS code page with a standard (non-TTF) output (e.g. OpenGL, Direct3D, Surface) if a language file is loaded (or with setting autodbcs=true
in [ttf] section as of DOSBox-X 0.83.24). But you can change this behavior with the showdbcsdosv
config option. If it is set to true
, then DOSBox-X will enable the Chinese/Japanese/Korean character rendering in a DBCS code page regardless of whether a language file is loaded; if it is set to false
, then DOSBox-X will not render Chinese/Japanese/Korean characters in a DBCS code page in non-DOS/V and non-TTF modes. In every case you can also run external programs such as CCDOS 97, PDOS, and ETen so that Chinese/Japanese/Korean characters will be rendered by such programs.
Native DOS/V services are also supported by DOSBox-X, with options for Simplified and Traditional Chinese, Japanese, and Korean language modes. There is a [dosv] section in the config file, and you can enable different DOS/V modes with the dosv
config option, i.e. chs
(cn
) for Simplified Chinese DOS/V, cht
(tw
) for Traditional Chinese DOS/V, jp
for Japanese DOS/V, and ko
for Korean DOS/V. DOSBox-X will try to get or use the fonts for these languages in the DOS/V mode, but you can also specify your own font files (in FONTX2 format for Japanese, or HZK16 for Simplified Chinese, or STDFONT.15 from ETen Chinese DOS system for Traditional Chinese, or [as of DOSBox-X version 0.84.1] BDF/PCF format for all CJK languages, such as the WenQuanYi 16-pixel bitmap font) via config options starting with fontx
(such as fontxsbcs
and fontxdbcs
options) in the [dosv] section of the config file. Note that this mode is mainly designed to run DOS/V compatible programs or games, along with some normal DOS software; for a general DOS CJK environment it is recommended to use either the TrueType font or standard outputs with CJK support (described in the previous sections) instead.
A screenshot of the Japanese DOS/V mode:
In addition, there is a fontxdbcs14
option which is useful for displaying CJK characters in the Configuration Tool and Mapper Editor (if you use a language file). It is similar to the fontdbcs
option, but it accepts 14-pixel DBCS fonts rather than 16-pixel ones. Use HZK14 for Simplified Chinese, and STDFONT.15 (from ETen Chinese DOS system) for Traditional Chinese. As of DOSBox-X version 0.84.1 the BDF and PCF formats are also supported, such as the free bitmap fonts from WenQuanYi (use its 11-pt BDF fonts for the fontxdbcs14
option).
24-pixel fonts are also supported as of DOSBox-X version 0.83.19. You need to use the V-text function of DOS/V in order to enable it. There are 2 V-text modes available, namely vtext1 and vtext2. You can use either (or both) of them for different DOS/V screen modes. It is recommended to set machine=svga_et4000
in [dosbox] section in order to use all its screen modes. For example, you can set vtext1=xga24
(in addition to machine=svga_et4000
and the dosv
option) in the configuration, and use the command VTEXT 1
to enter vtext1. In such case you can set the fontxdbcs24
option which is useful for displaying CJK characters in this screen mode. Similar to the above fontxdbcs14
and fontxdbcs16
options, you can also use any of the HZK24? fonts (available in this link) for Simplified Chinese, and STDFONT.24 from ETen Chinese DOS system for Traditional Chinese for the fontxdbcs24
option.
Emulation modes for the Toshiba J-3100 are supported as of DOSBox-X 0.83.20. The J-3100 is the Japanese version of the Toshiba T3100, which was once popular as a Japanese-capable IBM AT-compatible machine. The J-3100 system in DOSBox-X can be activated by enabling support for both the Japanese DOS/V and the J-3100 machine for the DCGA emulation. In this case set the config option j3100
to a value other than off
along with dosv=jp
in [dosv] section. If you set j3100=on
or j3100=auto
(apart from dosv=jp
and a VGA machine type), then J-3100 support will be enabled automatically when DOSBox-X starts. On the other hand, if you set j3100=manual
(apart from dosv=jp
and a VGA machine type), then you will be in the Japanese DOS/V mode when DOSBox-X starts, but the J-3100 DCGA mode will be entered with DCGA
command. In either case you can return to the Japanese DOS/V mode with VGA
command, or re-enter the J-3100 DCGA mode with DCGA
command. There is also the j3100type
option to set the J-3100 machine type. With a different machine type the J-3100 color palette will be different. The following are the supported J-3100 machine types (other than default
) for the j3100type
option: gt
, sgt
, gx
, gl
, sl
, sgx
, ss
, gs
, sx
, sxb
, sxw
, sxp
, ez
, zs
, zx
DOSBox-X provides emulation for the Japanese NEC PC-98 mode, a platform that established NEC’s dominance in the Japanese PC market. With this support you can play PC-98 games or run PC-98 programs in DOSBox-X, such as the early Touhou (東方) games. The PC-98 mode can be started with the setting machine=pc98
, and it may also work in combination with the TrueType font output. See the PC‐98 emulation guide page for detailed information about PC-98 emulation in DOSBox-X.
DOSBox-X also provides emulation for the Japanese AX (JEGA) mode, a Japanese computing initiative starting in around 1986 to allow PCs to handle double-byte (DBCS) Japanese text via special hardware chips. The AX (JEGA) mode may be started with the setting machine=jega
, and it can also work in combination with the TrueType font output. In this mode you can press the right Ctrl key to toggle between romaji and kana input modes. Several config options related to DOS/V (see [dosv] section) can also be used for the JEGA mode.
Some external links with useful information: