250213 PS/55エミュ製作 [46]繁体中文IBM DOS
![Image: 250213 PS/55エミュ製作 [46]繁体中文IBM DOS](/blog/img/2025/ibmdost5_1.webp)
Slavotinek氏ほか協力者のおかげで、IBM DOS T5.0という繁体字版のPS/55用DOSを動かすことに成功した。(前回の記事で簡体字と書いていた部分は誤り。)
日本語環境と繁体字環境との間のハードウェアの違いは、ディスプレイ・アダプターのフォントROM(文字セット)だけであり、その他は全て共通している。繁体字版PS/55にはフォントROMサブボードが搭載されたDisplay Adapter IIIが搭載されている。その代わり、日本語版でフォントROMが搭載されているべき場所は空きランドになっている。
photo by Lorenzo Mollicone and published by Tomáš Slavotínek.
フォントのROMアドレスが重複しているので、日本語フォントROMを搭載したDisplay Adapterの空き端子にこれを取り付けても動作しない可能性がある。また、日本語フォントのROMはIBM野洲事業所製の特殊なカスタムチップであり、これを外すのは難しい。アダプター丸ごと入れ替えれば、日本向けPS/55でも動作する可能性は高い。
以下、繁体字版PS/55について判明したこと。
- Display Adapter IIIのハードウェア仕様は日本語版と同じで、文字セットだけが異なる。
- フォントROMの容量は日本語フォントが768KBに対し、こちらは1.5MB。
- フォントROMで全角平仮名と全角片仮名、全角英数字、一部の全角記号は同じ内部コードを使用している。
- 半角フォントの収録アドレスが異なる。理由は分からないが、DOS T5.0ではROMアドレスの外にあるミラーを介して半角フォントにアクセスしている。
- キーボードのスキャンコードセットは同じと思われる。スキャンコードセット8AhをサポートするPS/55キーボードであれば使用可能。
- 以上から繁体字版PS/55で日本語DOSを起動することはできるが、多くの文字が文字化けするので実用的ではない。
DOS T5.0ではDOS内部の文字コードにコードページ938が使われている(Windowsではコードページ20003として使用できる)。文字セットはBig 5とかなり似ているが、コード全体がシフトされていて互換性はない。また、冒頭にはシフトJISと同じ全角文字セットが同じコード位置に収録されている。
このスクリーンショットでは自作ユーティリティーでフォントを表示している。下記にて公開済み。
→ GitHub - akmed772/dbcsview: DBCS codepage font viewer for DOS and Windows
日本語アプリケーションを動かすと、平仮名などはそのまま表示できるが、漢字は全く異なる。
次のページからはシフトJISにない文字セット。Big 5の文字セットと同じ字形が多いが、コードは異なる。
シフトJISではJIS X 0201との互換性のため、半角片仮名があるコードポイントは2バイト文字の第1バイトになる範囲から除外されている。Big 5ではこの範囲も2バイト文字で使用でき、コードページ938も同様。このため収録文字数がシフトJISより多い。
エミュレーターの実装としては上記の2と4に注意するだけなので、手間はあまりかからなかった。