
  DOSVAXJ3

●概要
　DOSBox 派生版の DOSVAX を元に作成した AX & J-3100 & DOS/V Emulator です。
　東芝 DOS or PC DOS/V or MS-DOS/V、J-3100 or DOS/V 用 FEP、FONTX2 形式のフォ
ントファイル、Visual C++ のランタイム等は不要です。フォントファイルを使用して
画面を実機に近づける事も可能です。
　日本語キーボードに対応しています。
　Windows, macOS の IME、Linux の XIM を使用して日本語入力ができます。
　Wengier Wu 氏による DOSBox-lfn の修正を取り込み、ロングファイルネームや画面
上の文字のクリップボードへのコピー等に対応しています。

●dosboxj.conf の設定
　Windows の場合、dosboxj.exe と同じフォルダの dosboxj.conf を読み込みますが、
存在しない場合 %APPDATA%\DOSBoxJ\dosboxj.conf を作成し、それを使用します。
　Linux の場合 ~/.dosboxj/dosboxj.conf を読み込みます。存在しない場合は
~/.dosboxj/dosboxj.conf を作成し、それを使用します。
　macOS の場合 ~/Library/Preferences/dosboxj.conf となります。

・[sdl] セクション
clipboardmodifier  クリップボードのコピー・ペーストの指定をします。
                   none の場合、右クリックでペースト、右ドラッグで選択開始し、
                   右ボタンオフで選択範囲の文字がクリップボードにコピーされま
                   す。
                   alt, lalt, ralt の場合は ALT キーを押しながら clipboardbutton
                   で指定したマウスボタンやキーボードで操作します。
                   lalt は左 ALT のみ、ralt は右 ALT のみとなります。
                   ctrl, lctrl, rctrl の場合は Ctrl キー、shift, lshift, rshift
                   の場合は Shift キーとなります。
                   他に ctrlshift, ctrlalt, altshift といった組み合わせも指定
                   可能です。
                   none の場合は使用しません。
                   Linux の場合、xclip をインストールしておけば使用可能です。
clipinputbutton    clipboardmodifier と組み合わせる操作を指定します。
                   middle でマウス中ボタン、right でマウス右ボタン、arrow でキー
                   ボード操作となります。
                   キーボードの場合、Alt + Home で選択開始、Alt + End でコピー、
                   Alt + 矢印キーで選択位置や範囲を変更できます。
                   none の場合は使用しません。

                   上記の操作とは別に、Alt+F10 でクリップボードから文字列をペー
                   ストする事ができます。こちらは mapper で変更できます。

videodriver        SDL のビデオドライバを指定します。Windows 版のみの設定です。
                   デフォルトは windib で、他に directx が指定できます。
windowposition     起動時の画面位置を指定します。X座標,Y座標 で指定します。
                   例) windowposition=200,100
                   , のみの場合デスクトップ中央となります。
                   - の場合 OS 依存の位置となります。
resetkeyboardstate 画面サイズが変更になった際にキーボード押下状態をリセットする
                   かどうかの設定です。
                   false でリセットしません。デフォルト値は true です。

・[dosbox] セクション
machine        dcga を指定すると J-3100 モードで起動します。ビデオカードは
               ET-4000 相当です。
               dosv を指定すると DOS/V モードでビデオカード S3 Trio 相当で起動
               します。
               dosv_et4000 を指定すると DOS/V モードでビデオカード ET-4000 相
               当で起動します。
               jega を指定すると AX モードで起動します。
               上記以外の場合は DOSBox のそれぞれのモードで起動します。

jfontname      描画に使用する Windows フォント名
               フォントファイル名は Shift JIS で記述してください。
               Windows の場合、IME の変換中文字列の表示フォントの指定にも使用
               されます。
               macOS, Linux では使用しません。
jfontsbcs      半角表示用 FONTX2 フォントファイルへのパス サイズ:8×19
jfontsbcs16    半角表示用 FONTX2 フォントファイルへのパス サイズ:8×16
jfontdbcs      全角表示用 FONTX2 フォントファイルへのパス サイズ:16×16
jfontdbcs24    全角表示用 FONTX2 フォントファイルへのパス サイズ:24×24
               ファイルの指定がないサイズのフォントは Windows の場合は jfontname
               で指定したフォントから生成して使用します。
               Linux の場合 16 ドットフォントは内蔵している東雲フォントを使用
               します。24 ドットフォントは Xorg のフォントでサイズが一致してい
               るものがあればそれを使用します。
               macOS の場合 16 ドットフォントは内蔵している東雲フォントを使用
               します。
               半角 8×19 は AX, DOS/V モード用で、J-3100 モードでは使用しませ
               ん。
               Windows の場合フォントファイルは dosboxj.exe と同じフォルダに置
               いてください。
               Linux の場合、フォントファイルは ~/.dosboxj に置いてください。
               macOS の場合、フォントファイルは ~/Library/Preferences に置いて
               ください。
jfontuse20     true とすると Windows のフォントを使用する場合に 24 ドットフォ
               ントを 20 ドットフォントで代用します。
               macOS, Linux では使用しません。

gaijistart     J-3100 の外字領域の開始コードを指定します。未定義の場合 f040 と
               なります。
gaijiend       J-3100 の外字領域の終了コードを指定します。未定義の場合 f0a3 と
               なります
               最大 100 文字分までしか使用できません。
yen            FONTX2 半角フォントの 7fh に \ が入っている場合 true としてくだ
               さい。

im             IM の有効/無効を指定します。true で有効、false で無効です。
fepcontrol     DOS の FEP 制御用 API を選択します。
               ias で $IAS.SYS、mskanji で MS-KANJI API、both で両方有効となり
               ます。
kanjikey       漢字キーに割り当てるキーを指定します。
               althanzen  ALT＋半角全角
               hanzen     半角全角
               rightalt   右 ALT
               none       指定なし
               設定する場合 im=false としてください。ただし rightalt の場合は
               im=true でも大丈夫です。
               none 以外を指定するとイメージファイルから DOS をブートした後で
               も DOSVAXJ3 のキーボードの設定が有効になります。

languagejp     日本語メッセージ定義ファイルを指定します。
               内容は Shift JIS で記述する必要があります。
               Windows の場合、dosboxj.exe と同じフォルダのファイルが読み込ま
               れます。japanese.lng を同梱しています。
               macOS, Linux の場合、make install で /usr/local/share/dosboxj
               に japanese.lng がコピーされ、それを使用します。

j3textcolor    J-3100 の文字色  RRGGBB でそれぞれ 0～ff まで指定できます。
j3backcolor    J-3100 の背景色  RRGGBB でそれぞれ 0～ff まで指定できます。

j3100          J-3100 の機種名を指定します。画面の色とキーボード BIOS のシステ
               ムコードの返値が変わります。
               gt, sgt, gx, sgx, sxp  プラズマディスプレイ風
               gl, sl, ss, gs, sx     青液晶風
               sxw, ez                白液晶風
               zs, zx                 白黒画面
               16 進数を指定した場合、画面の色は変わらず、システムコード値のみ
               変更します。

               j3100 で機種名を指定した場合でも j3textcolor, j3backcolor の指
               定が優先されます。
               j3100, j3textcolor, j3backcolor 全て指定がない場合は、文字色は
               白、背景色は黒となり、システムコードは 0x6a74 となります。

debug          J-3100 用の MS-DOS イメージからブートした際に半角英数字が文字化
               けする場合は debug=true としてブートし、半角英数字データのアド
               レスを取得して下の j3sbcsaddress に指定してください。
               詳しくは J-3100 モードでの注意事項を参照してください。
j3sbcsaddress  J-3100 用の半角フォントの開始アドレスを指定します。
               未指定の場合 ca00 となります。
j3colordriver  true にすると int 10h ax=8205h の返値が bl=01h となります。
               J-3100 の DCGA モード上で Windows 3.1 の CGA/EGA キットの
               setup.exe を使用する場合に true としてください。
               true の場合、Windows 3.1 のディスプレイドライバで東芝 EGA が使
               用できるようになります。

vtext1         chev vt/vt1 で切り替わる V-text モードを指定します。
vtext2         chev vt2 で切り替わる V-text モードを指定します。
vtext3         chev vt3 で切り替わる V-text モードを指定します。
vtext4         chev vt4 で切り替わる V-text モードを指定します。
               vga     解像度  640× 480  文字  80×30 (最大  80×51)
               svga    解像度  800× 600  文字 100×37 (最大 100×40)
               xga     解像度 1024× 768  文字 128×48 (最大 128×80)
               sxga    解像度 1280×1024  文字 160×64 (最大 160×75)
               xga24   解像度 1024× 768  文字  85×32 (最大  85×60)
               sxga24  解像度 1280×1024  文字 106×42 (最大 106×51)
               xga24 と sxga24 は 24 ドットフォントとなります。
               Windows で FONTX2 ファイルを指定せずに 24 ドットフォントを使用
               する場合、MS ゴシックや MS 明朝は 24 ドットのビットマップデータ
               を持っていないため、綺麗な表示になりません。
               FONTX2 ファイルを使用するか、jfontuse20=true を指定することを推
               薦します。
               行数についてはモードの後に , をつけて指定できます。
               例えば vtext1=vga,51 と設定すると chev vt1 で 51 行となります。
               vtext1=vga,40 vtext2=vga,51 といった設定も可能です。
               chev 実行時に行数を指定する事もできます。
               J-3100 モードで起動した場合はデフォルトより大きな行数は指定でき
               ません。
               拡張 CGA テキストモード 71h の画面サイズ・フォントは vtext1 で
               指定します。71h を使用する場合は行数はデフォルト値でご使用くだ
               さい。

・[dos] セクション
keyboardlayout 日本語キーボードの場合 jp、英語キーボードの場合 none としてくだ
               さい。jp と設定した場合、ファイル jp.kl を読み込みます。
               Windows の場合、dosboxj.exe と同じフォルダのファイルが読み込ま
               れます。jp.kl を同梱しています。
               macOS, Linux の場合、make install で /usr/local/share/dosboxj
               に jp.kl がコピーされ、それを使用します。

ver            DOS のバージョンを指定します。指定がない場合 7.10 となります。
               起動後に ver set コマンドで変更できます。

lfn            ロングファイルネームの設定を指定します。
               true でロングファイルネーム有効、false で無効、auto は DOS バー
               ジョンが 7 以上でロングファイルネーム有効となります。

lfn_space      true で通常の DOS ファンクションでスペース入りのロングファイル
               ネームを受け付けるようにします。
               false でも通常の DOS ファンクションでスペースが入っていないロン
               グファイルネームは受け付けます。

automount      オートマウントの設定を行います。
               true でオートマウント有効、auto で Y/N の問い合わせを行わずマウ
               ント、false で無効です。
               オートマウント有効の場合、C: [enter] で実 PC 上の C ドライブを
               C:\ にマウントします。
               macOS, Linux では使用できません。

autoreload     オートリロード(ディレクトリキャッシュ更新)の設定を行います。
               カレントディレクトリもしくは使用ファイルのドライブのディレクト
               リキャッシュを自動更新します。
               cmd でコマンド入力毎、dos で DOS ファンクションのファイル関連実
               行時、all で両方のタイミングでディレクトリキャッシュの更新を行
               います。false で更新は行いません。

hosttime       DOS function (ah=2ah, 2ch) で日時をホスト OS から取得します。
               false で以前通り tick 値から算出、true でホスト OS から取得とな
               ります。

idle           true とすると int 28h や int 2fh ax=1680h といったアイドル割り
               込みで HLT を実行し、コマンドプロンプト等で CPU 使用率が下がる
               ようになります。

　DOSVAXJ3 関連の初期設定値は下記の通りです。
[sdl]
clipboardmodifier=alt
clipinputbutton=right

[dosbox]
languagejp=japanese.lng
machine=dosv
jfontname=ＭＳ 明朝
yen=false
im=true
fepcontrol=both
jfontuse20=true
vtext1=svga
vtext2=xga
vtext3=sxga
vtext4=vga

[dos]
keyboardlayout=jp
ver=7.10
lfn=auto
automount=true
autoreload=cmd
hosttime=false
lfn_space=false
idle=true

●Windows 版起動時オプション
　Windows 版はデフォルトでステータスウインドウ非表示となっています。

オプションなし  ステータスウインドウ非表示
-console        ステータスウインドウ表示

●注意事項
　英語/日本語/日本語(V-Text)/J-3100 の各モードに切り替えるには内蔵コマンドの
chev を使用します。
　chev us で英語モード、chev jp で日本語モード(AX 以外は DOS/V)、chev vt1/vt2/
vt3/vt4 で日本語モード(DOS/V V-Text)、chev j3 で J-3100 モードとなります。
　vt1 はこれまで同様に vt でも指定可能です。
　DOS/V V-Text の場合、chev で行数も指定できます。
　例えば vtext1=xga で chev vt1 40 を実行した場合、文字表示領域は 128×40 とな
ります。単に chev vt1 の場合は文字表示領域は 128×48 ですが、vtext1=xga,50 と
設定している場合は chev vt1 で 128×50 となります。
　vga の場合 51 行、svga の場合 40 行、xga の場合 80 行、sxga の場合 75 行、
xga24 の場合 60 行、sxga24 の場合 51 行まで指定可能となっています。
　指定できる最小行数は 10 です。
　デフォルト値より大きな行数は J-3100 モードでは指定できません。

　日本語モードの場合、コマンドの応答メッセージや日付表示の並びが日本向けとなり
ます。日本語メッセージはファイル japanese.lng で定義しています。定義されていな
いメッセージは英語のままとなります。

　keyboardlayout=jp の場合、Ctrl+F1 で呼び出される mapper も日本語キーボードの
並びの表示になります。
　JP190621 以前のバージョンで Ctrl+F1 の mapper でキー割り当てを変更している場
合、mapperj.map (Windows の場合 dosboxj.exe と同じフォルダ、Linux の場合
~/.dosboxj にあります)を削除して起動し、再度割り当て直してください。

　MS-DOS 用の FEP を入手するのは困難と思われましたので、Windows や macOS の IME,
Linux の XIM を使用可能としています。
　Windows 10 で MS-IME を使用する場合、Windows 10 のバージョンを 1803 以上にアッ
プデートしてください。バージョン1709 以前の MS-IME の場合、$IAS.SYS や MS-KANJI
のファンクションによる FEP 制御ができません。
　Windows 8.1 の場合は現行の最新版でも $IAS.SYS や MS-KANJI のファンクションに
よる FEP 制御はできません。ATOK 等、他の IME を使用する事を推薦します。
　Linux の XIM の場合、変換文字列や候補が通常とは異なる表示にはなりますが、入
力自体は可能です。
　日本語キーボード設定かつ DOS 用の IME がインストールされている DOS/V イメー
ジからブートした場合でもキーの表記通りに入力可能ですが、Windows で 半角/全角 
キーを有効にしたい場合、[dosbox] im=false とするか、Ctrl+F1 で呼び出される
mapper で 半角/全角キーの機能を他のキーに割り当ててください。
　macOS, Linux で 半角/全角 キーを使用したい場合も mapper で他のキーに割り当て
てください。

　imgmount は 8G までのイメージファイルをマウントできますが、拡張 DOS 区画は使
用できず、基本 DOS 領域の 2G までしか使用できません。
　VMware 等で作成したイメージファイルは、固定サイズかつ MBR が書き込まれている
状態であれば、オプション指定なしでマウント可能です。
　bximage で作成した 528M より大きいサイズのイメージファイルをマウントする場合、
通常通りに -size 512,63,16,cyl (cyl は cyl= で表示される値) と指定してください。
　bximage で作成した 2G 前後のサイズのイメージファイルをマウントして PC DOS 等
をインストールする場合、ハードディスクの空き容量の一部を DOS に割り振るを選択
し、基本DOS 区画の作成の最大容量で作成しますかは N として手動でサイズを入力し
てください。割り当てを自動で行うと、小さいサイズで確保されてしまう可能性があり
ます。

　全角 16×16、全角 24×24 フォントに Windows のフォントを使用する場合、罫線は
内蔵のフォントデータを使用します。これは Windows フォントからデータを生成する
と罫線が繋がらないためです。

　autoreload=dos, all の場合、DOS ファンクション(int 21h)の ah=39h, 3ah, 3bh,
3dh, 4eh の実行前にディレクトリキャッシュの更新を行います。
　4eh(FindFirst) でも更新しますので、ファイル検索プログラム等で検索速度が低下
する可能性があります。

　Vz や Xscript によるコンソール出力の参照も可能です。
　LFN 対応版の Vz を使用する場合、バックアップファイルの作成のオプションは
OFF (Eb-) としてください。ON (Eb+) の場合、ロングファイルネームのファイルを保
存するとショートファイルネームで保存されてしまいます。

　JP210423 版から adddev で登録したキャラクタデバイスに対して DOS ファンクショ
ンでの各種操作(READ/WRITE/IOCTL)ができるようになりました。
　adddev で MCDPC.EXE を登録して BBS ホストプログラムを動作させたり、日本語
FEP を登録して MS KANJI API で操作する事ができます。
　adddrv で日本語 FEP を登録する場合、[dosbox] im=false としてください。

　hosttime=ture とすると、int 21h ah=2ah, 2ch の日時をホスト OS から取得します。
　長時間動作させる際に日時がずれるのが問題になる場合は設定してください。
　int 1ah で取得できる tick 値から算出される日時とは、ずれが発生しますのでご注
意ください。

　Windows 用の JP241122 版から Windows 用のコンソールプログラムを実行し、出力
を DOSVAXJ3 で表示できるようになっています。デスクトッププログラムも実行可能
です。
　実行するプログラムやプログラムで使用するファイルは mount したドライブにある
必要があります。
　プログラムの出力が表示されない場合、環境変数 DOSVAXJ3 に novc を設定して試
してみてください。novc を設定して表示が出るプログラムの場合、入力ができなかっ
たり、プログラムが終了しないと出力が表示されない場合があります。
　環境変数 DOSVAXJ3 に setenv を設定すると、コンソールプログラムに現在の環境
変数を渡します。その場合、PATH 等の Windows 上でも存在する環境変数は上書きされ
ますが COMSPEC は上書きしません。
　Visual C++ のコマンドライン版コンパイラを使用する場合、vcvars32.bat 等は使用
できませんが、dosboxj.conf で [dos] lfn=true, lfn_space=true とし、mount c c:\
とし、環境変数の PATH、LIB、INCLUDE に Visual C++ 関連の設定を行い、DOSVAXJ3
に setenv も設定すればコンパイル可能です。
　novc と setenv を両方設定する場合 set DOSVAXJ3=novc,setenv としてください。

・AX モードでの注意事項
　AX モードで起動した場合、chev jp では AX 日本語モードとなります。
　DOS/V や J-3100 の日本語モードには切り替えできません。
　日本語キーボード対応や Windows IME での入力、Windows フォント使用等の機能は
AX モードにも反映しています。

・J-3100 モードでの注意事項
　J-3100 モードの場合、EMS のフレームセグメントは D000 となり、UMB は未使用と
なります。
　漢字 ROM からフォントデータを直接取得しているプログラムも動作します。
　スクロールはソフトウェアのみとなりますが、速度的には問題ないと思われます。
　RS-232C BIOS(int 14h) の ah=04h, 05h, 06h, 80h, 81h, 82h, 84h, 85h, 87h, f0h
は実装していません。
　キーボード BIOS(int 16h) の ah=f0h, f1h, f2h は実装していません。
　プリンタ BIOS(int 17h) の ah=84h, 85h は実装していません。
　J-3100 システム BIOS(int 60h) の ah=05h、ax=0f02h は実装していません。
　ATOK5 割り込み(int 6fh) には対応していますが、IME の ON/OFF や現在のモード取
得程度しか機能しません。ah=0fh, 10h, 11h, 12h は実装していません。
　東芝 MS-DOS のイメージファイルからのブートにも対応しています。
　その場合、キーボード配列は英語相当になりますのでご注意ください。
　漢字キーは Ctrl+F1 で呼び出される mapper 画面の Kanji にキーを割り当ててくだ
さい。
　辞書 ROM やハードウェアによる EMS は使用できません。
　東芝 MS-DOS のイメージファイルでブートした際に半角英数字が正しく表示されない
場合、dosboxj.conf の [dosbox] debug=true として Windows の場合は -console オ
プション付きで起動し、イメージファイルからのブート時にコンソールに表示される 
"font address XXXX" の XXXX の部分を dosboxj.confの [dosbox] j3sbcsaddress で
指定してください。
　JP200807 版からパレットの設定方法を変更し、VGA DAC で設定するようになったた
め、j3textcolor, j3backcolor の下位 2 bit は無効になり、ffffff は 3f3f3f 相当
となります。
　内蔵 DOS で東芝版日本語 Windows 3.1 をインストールする場合、loadfix を実行し
てコンベンショナルメモリを減らして setup.exe を実行してください。
　[dosbox] j3colordriver=true とすれば J-3100 の DCGA モード上で CGA/EGA キッ
トの setup.exe も使用可能です。カスタムセットアップを選択し、ディスプレイを東
芝 CGA または東芝 EGA に変更してインストールしてください。

・DOS/V モードでの注意事項
　DOS/V モードで起動した場合、chev j3 で J-3100 モードに変更できません。
　対応している日本語での画面モードは下記の通りです。
　　03h: CGA テキスト互換モード
　　70h: V-Text モード
　　71h: 拡張 CGA テキストモード(V-Text)
　　72h: VGA グラフィックスモード
　　73h: 拡張 CGA テキストモード
　拡張 CGA テキストモード 71h は vtext1 の設定と同じ画面サイズ・フォントになり
ます。71h を使用する場合は vtext1 の行数はデフォルト値でご使用ください。
　拡張 CGA テキストモード 73h の行数可変には対応していません。
　vtext2 で指定する V-Text モードは設定時に 78h を指定していますが、画面変更後
は 70h となります。同様に vtext3 は 79h、vtext4 は 7ah を指定しています。
　V-Text の設定で行数を指定している場合、int 10h ah=00h で 78h, 79h, 7ah に切
り替えると指定した行数にならない場合があります。chev を使用してください。
　日本語フォントドライバは DOSVAXJ3 に内蔵しており、8×19, 8×16, 16×16,
12×24, 24×24 サイズのフォントが使用可能となっています。
　Linux で Xorg の 24 ドットフォントがインストールされていない場合や、macOS で
は 24 ドットフォントは FONTX2 ファイルで指定しないと表示が空白になりますのでご
注意ください。
　dspVV は /hs=off として使用してください。
　fepcontrol で ias または both が指定されている場合、キーボード BIOS(int 16h)
ax=1300h では dl の bit 7 or Bit0 ON で IME ON、bit 7 OFF で IME OFF となりま
す。ax=1301h では IME OFF で dl=00h、IME ON で dl=81h を返します。ah=14h でシ
フト情報を表示に設定しても FEP用のラインは確保されません。
　fepcontrol で mskanji または both が指定されている場合、MS-KANJI API のファ
ンクション 1 とファンクション 5 が使用可能になります。変換位置は常にカーソル位
置となります。
　ディスクの直接読込(int 25h) に対応していないため、fd でファイル一覧が表示さ
れない場合はオプション -D をつけて起動するか、FD.CFG の設定を ReadMode=1 に変
更し、FDCUST を実行して設定を書き換えてください。
　また、DOS バージョンが 7.1 以上であれば fd は int 25h を使用しないようです。
　内蔵 DOS でマイクロソフト版日本語 Windows 3.1 をインストールする場合、カスタ
ムセットアップを選択し、キーボードの設定を変更してください。高速セットアップの
場合 AX 日本語キーボードが選択されてしまい IME の切り替えができなくなります。
　キーボードはインストール後に Windows セットアップで切り替える事も可能です。
　Windows 3.1 の IME を使用する場合、[dosbox] im=false としてください。

●変更履歴
・build J31SS001 (2019/4/26)
　最初のバージョン

・build J31SS02E (2019/4/30)
　英語モードに切り替え可能としました。
　日本語メッセージを別ファイルとし、languagejp で指定するように変更しました。
　textcolor, backcolor の設定は j3100 での色指定に優先するように変更しました。

・build J31SX0VW (2019/5/5)
　DOS/V に対応しました。
　内蔵コマンド chev を追加し、日本語/英語/J-3100 の各モードへの切り替えができ
るようにしました。
　Wengier Wu 氏による DOSBox-lfn の修正を取り込み、ロングファイルネームや画面
上の文字のクリップボードへのコピー等に対応しました。
　textcolor, backcolor を j3textcolor, j3backcolor に変更しました。

・build J31SL0VW (2019/5/7)
　クリップボードから日本語文字列がペーストできなかったのを修正しました。
　DOS/V の $IAS.SYS のファンクションに対応しました。ただし FEP ON/OFF の設定や
取得程度しかできません。

・build JP190510 (2019/5/10)
　DOS ファンクションのファイル検索(ah=4eh, 4fh)で同時に異なる複数の検索を行っ
ている場合、正しく検索できていなかったのを修正しました。
　J-3100 モードでマウスドライバが有効になるよう修正しました。
　J-3100 モードのピクセル読み出し(int 10h ah=0dh)の不具合を修正しました。
　DOS/V モードでキーボードシフト情報(int 16h ah=14h)で状態保持を行うよう修正し
ました。
　ディレクトリキャッシュの自動更新オプション autoreload を追加しました。
　dir の表示中のみ Ctrl-C が効くようにしました。
　build 文字列を JP + 日付に変更しました。

・build JP190520 (2019/5/20)
　V-Text モードで XGA, SXGA に対応しました。
　V-Text のモードを二種類指定可能としました。
　Windows 版はデフォルトでステータスウインドウ非表示に変更しました。
　DOS/V での外字設定および表示に対応しました。
　設定項目に IM の有効無効を追加しました。
　Linux でビルド、実行できるようにしました。Ubuntu 18.04 で動作確認しています。
　DOSVAX build 4000AX12 の修正を取り込みました。

・build JP190523 (2019/5/23)
　Windows で MS-IME を使用していると、終了時に固まる場合があったのを修正しまし
た。
　ロングファイルネームのファイルが、ショートファイルネームを指定しないとオープ
ンできなくなっていたのを修正しました。JP190510 の複数検索対応によって発生して
いた不具合です。

・build JP190527 (2019/5/27)
　Windows で MS-IME を使用している場合に、キー入力が入りっぱなしになってしまう
現象の対策を行いました。
　J-3100 モードで起動した場合でも XGA, SXGA の V-Text モードを使用可能としまし
た。
　Linux でのクリップボードコピーに対応しました。ただし xclip をインストールし
ておく必要があります。
　Linux で Wayland を使用している場合にカーソルキーが正しく入力できなかったの
を修正しました。

・build JP190531 (2019/5/31)
　Windows IME の変換中文字列のフォントサイズを現在の V-Text のフォントサイズに
合わせました。jfontname が IME の変換中文字列のフォントの指定となります。
　ショートファイルネーム生成時に、漢字の 2 文字目に ~ が入ると文字化けしていた
のを修正しました。
　24×24 フォントの罫線データを内蔵しました。また、8×16、8×19 フォントの内蔵
罫線データのデザインを修正しています。

・build JP190621 (2019/6/21)
　ALT を押しながらのキー入力が効いていなかったのを修正しました。
　日本語キーボード対応処理を見直しました。スキャンコードが DOS/V と同じになる
ように変更しましたので、日本語キーボード設定の DOS/V のイメージからのブートで
もキーボードの表記通りで入力できます。
　keyboardlayout=jp の場合、Ctrl+F1 の mapper 画面も日本語キーボードの配列にな
るよう修正しました。
　J-3100 の漢字 ROM の直接読み出しに対応しました。
　J-3100 用の MS-DOS のイメージファイルを使用した場合にブートができなかったの
を修正しました。

・build JP190624 (2019/6/24)
　半角/全角キー押下時に ` が入ってしまっていたのを修正しました。
　日本語キーボードで右 Shift が使えるようにしました。

・build JP190710 (2019/7/10)
　EMS の set handle name (int 64h, ax=5301h) が正しく動作していなかったのを修
正しました。
　dir で日付表示がおかしかったのを修正しました。
　Windows でサイズが 2G を超えているファイルが imgmount で使用できなかったり、
mount したディレクトリ上の dir で表示されていなかったのを修正しました。
　英語モードでも疑似テキストバッファの取得 (int 10h ah=feh) でバッファアドレス
を返してしまっていたのを修正しました。
　拡張国別情報取得 (int 21h ax=6501h) がおかしな処理になっていたのを修正しまし
た。
　DOS/V のイメージファイルからブートして HDD のイメージファイルをフォーマット
するとエラーになっていたのを修正しました。

・build JP190820 (2019/8/20)
　imgmount で -t cdrom を指定した場合に落ちていたのを修正しました。
　上記の修正に伴い外字領域を最大 100 文字までに縮小しました。これは DOS の内部
ワーク領域が不足しているためです。
　Num Lock, Caps Lock ON で起動すると、入力が実際の Caps Lock, Num Lock の状態
と逆になっていたのを修正しました。
　imgmount で 8G までのイメージファイルをマウントできるよう修正しました。ただ
し使用可能なのは基本 DOS 領域の 2G までとなります。
　LFN が有効状態で FreeDOS の command.com を常駐させるとディレクトリ操作で暴走
してしまうのを修正しました。

・build JP200807 (2020/8/7)
　J-3100 モードの場合、CGA 320×200 4色モード(ビデオモード 4, 5)を DCGA で疑似
表示するよう修正しました。文字色、背景色も j3textcolor, j3backcolor が適用され
ます。また、ビデオモード6 の文字色、背景色も j3textcolor, j3backcolor が適用さ
れるように修正しています。それとパレットの定義方法が少し変わったため、プラズマ
等の色が以前と比べると微妙に違うように思われるかもしれません。
　日本語モードの状態から直接ビデオモード 4, 5 に切り替えると画面表示がおかしく
なっていたのを修正しました。
　背景色付きのプロンプト表示に設定した場合、最下行で改行すると背景色が一行全体
に適用されてしまっていたのを修正しました。
　コマンドプロンプト最下行でコマンドを入力せずに Enter を押した際に空行が入っ
ていたのを修正しました。
　DOS/V 日本語モードでマウスカーソルが 200 ラインより下に移動できなかったのを
修正しました。
　Linux 版で環境変数 PATH を小文字で記述していると PATH 内のプログラムの起動が
できない場合があったのを修正しました。(takamichih 氏提供)

・build JP200904 (2020/9/4)
　AX or J-3100 or DOS/V モードの場合、エスケープシーケンス処理を int 29h 内部
で行うよう修正しました。
　Vz のコンソール取り込みで内部コマンド実行部分に文字化けが入る事があったのを
修正しました。
　DOS ファンクションで Ctrl-C が効くように修正しました。内部コマンドに BREAK
を追加しています。(参考 DOSBox-X のソース)
　コマンドラインで copy con file とした場合に入力文字がエコーバックされない等
の不具合を修正しました。(参考 DOSBox-X のソース)
　コマンドラインで Ctrl-A 等を入力した際に ^A と表示するように修正しました。

・build JP210212 (2021/2/12)
　MS-KANJI API に対応しました。ただし FEP ON/OFF 程度にしか対応していません。
　JW_CAD での文字入力時の FEP 自動 ON/OFF や Windows 版でカーソル位置での変換
が可能となるよう修正しました。
　automount に Y/N の問い合わせをせずにマウントする設定 auto を追加しました。
　Windows 版付属の dosboxj.conf の [midi] や [sblaster] の項目名が間違っていた
のを修正しました。他の各項目の設定もデフォルトの値になるよう修正していますので、
ご注意ください。
　J-3100 の MS-DOS イメージファイルブート時の文字化け対策用の情報表示方法を変
更しました。

・build JP210416 (2021/4/16)
　Windows 版で Alt+英文字入力の際に警告音が出てしまっていたのを修正しました。
　Windows 版で Alt+Tab で他のウインドウに切り替えた際に Tab キーが押されたまま
の状態になる事があったのを修正しました。

・build JP210423 (2021/4/23)
　adddev で登録したキャラクタデバイスに対して DOS ファンクションでの各種操作が
できるように修正しました。
　adddev で日本語 FEP を登録可能となるよう修正しました。

・build JP210512 (2021/5/12)
　int 21h ah=2ah, 2ch の日時をホスト OS から取得する設定を追加しました。

・build JP210721 (2021/7/21)
　Windows 版 SDL のビデオドライバ windib で IME 入力可能となるように修正し、デ
フォルトで使用するビデオドライバも windib に変更しました。
　オプション videodriver で以前のビデオドライバ directx も選択可能です。
　BILING.SYS のコードページ取得に対応し、MS-DOS/V のエディタが日本語モードでも
動作するようになりました。
　Windows のフォントを使用する設定の際に 24 ドットフォントを 20 ドットフォント
で代用するオプションを追加しました。
　Linux で一部の全角記号が正しく表示できなかったのを修正しました。

・build JP210726 (2021/7/26)
　LFN 関連処理の改善を行いました。(Wengier 氏提供)
　設定に clipinputbutton を追加し、キーボードでのクリップボード操作に対応しま
した。(Wengier 氏提供)

・build JP210728 (2021/7/28)
　IME 有効状態で半角/全角キーを押下すると ` が入ってしまう場合があったのを修正
しました。
　英語キーボード設定で ` が入力できない場合があったのを修正しました。
　変換・無変換・カタカナひらがなキーの入力が受け取れていなかったのを修正しまし
た。
　ビデオドライバが directx の場合 IME を無効にできなかったのを修正しました。

・build JP211015 (2021/10/15)
　内蔵 DOS で日本語 Windows 3.1 の setup.exe が起動できなかったのを修正しまし
た。
　内蔵 DOS でマイクロソフト版の日本語 Windows 3.1 がエンハンスドモードで起動で
きなかったのを修正しました。
　内蔵 DOS で東芝版日本語 Windows 3.1 CGA/EGA キットの setup.exe が起動できな
かったのを修正しました。int 10h ax=8205h の返値を修正しています。
　int 21h ah=38h 国別情報取得の返値が正しくなかったのを修正しました。
　IME 有効状態で一部の特殊キーや、右 Ctrl や Alt との同時押しのキー入力ができ
ていなかったのを修正しました。
　AX のキャラクタコード 00h～1fh の文字が実機と異なっていたのを修正しました。
　(Ｏｈ！石 氏情報提供)

・build JP220220 (2022/2/20)
　J-3100 の日本語モードでのキャラクタコード 00h～1fh の文字が実機と異なってい
たのを修正しました。
　int 10h ax=8205h の返値を有効にするかどうかをオプション j3colordriver で指定
できるように修正しました。
　Linux で LFN 有効の場合に小文字入力でコマンド実行ができなかったのを修正しま
した。
　DIR /P での停止状態を Ctrl-C で解除可能になるよう修正しました。(Wengier 氏提
供)
　シェル入力で複数行になった際の削除処理を修正しました。(Wengier 氏提供)

・build JP220330 (2022/3/30)
　言語設定が日本語以外となっている Windows 上でも日本語ファイル名が使用できる
ように修正しました。(Wengier 氏提供)
　DOSBox SVN r4473 までの更新分を適用しました。ただし DOSVAXJ3 独自の修正(LFN
やシェル、CON デバイス等)と干渉して修正が難しい項目については適用していません。
　DOSVAX の Build 4467AX13 の一部の修正を適用しました。PS/55 関連については対
応の予定はありません。
　DOSBox-X のデバイスドライバ read/write の修正を適用しました。(DOSBox-X #3347)

・build JP220408 (2022/4/8)
　ビデオカードが S3 の設定でも V-Text で XGA/SXGA の モードが使用可能になるよ
う修正しました。vtext/vtext2 で xga/sxga/xga24/sxga24 が指定可能になります。
　それに伴い machine=dosv の設定の場合、ビデオカードは S3 となるよう変更しまし
た。
　これまで通り ET-4000 を使用したい場合 machine=dosv_et4000 としてください。
　J-3100 モードで起動した際に V-Text でのスクロール行数がおかしくなっていたの
を修正しました。

・build JP230123 (2023/1/23)
　ビデオモード 72h で文字属性上位 4 ビットの解釈が正しくなかったのを修正しまし
た。
　漢字の右半分と左半分で属性が異なる場合の描画を修正しました。
　J-3100 モードの場合、ビデオモード 40h (DCGA Olivetti M24, AT&T 6300 日本語不
可) が有効になるよう修正しました。
　macOS でビルド、実行できるようにしました。ARM 機での動作は未確認です。
　macOS の場合 8x16, 8x19, 16x16 フォントは内蔵の東雲フォントを使用します。
　Linux でも Xorg のフォントが取得できない場合東雲フォントを使用するように変更
しました。

・build JP230216 (2023/2/16)
　名前に 2 バイト目が 5ch の文字("表" 等)が入っているディレクトリからの相対移
動や、ディレクトリ内のファイル操作の処理が正しく動作していなかったのを修正しま
した。
　. より文字コードが小さい文字("-" 等)で始まっているディレクトリが一覧取得で .
や .. より先に取得されてしまうのを修正しました。
　Vz 常駐中に more の出力の改行が二重になるのを修正しました。
　ロングファイルネームにスペースが入っている場合でも開けるようにするオプション
lfn_space を追加しました。

・build JP230403 (2023/4/3)
　int 21h ax=7160h で末尾に \ があるパス名が渡された場合、返されるパス名の末尾
に \ が付いていなかったのを修正しました。(DOSBox-X #4087)
　int 21h ax=7160h cl=00h で返されるパス名が "" で囲われていたのを修正しました。
(DOSBox-X #4087)
　DOS の標準入力で Raw mode が設定できるように修正しました。(DOSBox-X #4098,
#4101)
　DOS の標準入力のキー入力待ち時に int 28h を呼び出すように修正し、int 28h,
int 2fh ax=1680h といったアイドル割り込みで HLT を実行し CPU 使用率を下げるよ
うに修正しました。(DOSBox-X #3985)
　ロングファイルネーム有効時に +,;=[] が入った名前のファイルやディレクトリが使
用できなかったのを修正しました。
　Windows で x64 ビルドを追加し、64bit 版の実行ファイルを提供開始しました。
　このバージョンから Windows 版は Visual Studio 2022 でビルドしています。

・build JP230414 (2023/4/14)
　日本語キーボードで、一部のキーが Ctrl との組み合わせで入力ができなかったり、
入力ができてもキーコードが正しくなかったのを修正しました。
　V-Text のモードを 4 つまで指定可能としました。それに伴い dosboxj.conf の
[dosbox] vtext は vtext1 に名称変更しています。
　V-Text で行数を指定できるようにしました。上限はありますが、本来の行数より大
きな値も指定可能です。
　Linux も 16 ドットフォントは東雲フォントを使用するように変更しました。

・build JP230417 (2023/4/17)
　シェルのファイルコピーでファイルの日時情報がコピー先ファイルに反映されていな
かったのを修正しました。
　漢字の入ったロングファイルネームのショートファイルネームがおかしくなっていた
のを修正しました。これは JP230403 で発生した不具合です。

・build JP230501 (2023/5/1)
　64bit 版で [cpu] core=dynamic を指定すると落ちていたのを修正しました。
　int 21h ax=5701h のファイル日時設定が有効になるよう修正しました。
　FAT イメージファイルの場合でもファイルコピーの日時情報がコピー先ファイルに反
映されるよう修正しました。
　8 文字以下のファイル名でも小文字だった場合はロングファイルネームを生成してし
まっていたのを修正しました。
　DOS/V 日本語モードの場合、int 10h ax=1100h～1114h の処理は実行しないよう修正
しました。
　echo off 状態の場合、Vz のコンソール取り込みでコマンドの改行が入らなかったの
を修正しました。
　V-Text が XGA, SXGA 設定の場合 Vz の編集画面にゴミが出る事があったのを修正し
ました。
　chev で V-Text に切り替えた際のメッセージに画面の文字設定を表示するよう修正
しました。
　DOS/V 日本語モードでイメージファイルからブートした際に画面が乱れていたのを修
正しました。
　CD-ROM とその他のイメージファイルを imgmount した際にファイルコピーで固まっ
ていたのを修正しました。

・build JP230707 (2023/7/7)
　Windows 版で IME ON 時のカーソルキー等の処理を修正しました。SDL-IM+ 側の修正
も行っています。
　Windows 版で int 21h ah=43h のファイル属性の取得・設定が正常動作するように修
正しました。
　Windows 版で mount されたドライブ上のファイルを読み込みモードで開いた場合で
も日時変更可能となるよう修正しました。
　Linux、macOS 版でショートファイル名の生成がうまくいっていなかったのを修正し
ました。

・build JP230922 (2023/9/19)
　拡張 CGA テキストモード 73h, 71h に対応しました。
　PC-DOS 付属のエディタ(E, TE)でカーソル表示がおかしかったのを修正しました。

・build JP231212 (2023/12/12)
　int 21h ax=714eh, 714fh で 2 バイト余計にバッファに書き込みしていたのを修正
しました。
　int 21h ax=714eh, 714fh, 71a6h で返されるファイル情報の日時等の値が間違って
いたのを修正しました。
　int 21h ax=71a7h の日時変換が正しくなるよう修正しました。
　J-3100 ビデオモード 75h (640×400 16色) に対応しました。

・build JP240110 (2024/1/10)
　[sdl] windowposition で起動時の位置を指定できるようにしました。
　Ctrl, Alt, Shift との組み合わせで一部のキーコードが正しくなかったのを修正し
ました。
　英語や日本語モードに切り替えた際に int 2fh ax=4f01h で返されるコードページが
切り替わっていなかったのを修正しました。
　DPB (Drive Parameter Block) を正しく設定するよう修正しました。
　イメージファイルをマウントしたドライブで int 25h, int 26h が使用できるよう修
正しました。
　パレット設定を RGB 全ての値を設定した所で更新するよう修正しました。
　DOSBox SVN r4483 までの更新分を適用しました。
　DOSVAX Build 4483PS13 までの修正を適用しました。ただし PS/55 関連は適用して
いません。

・build JP240130 (2024/1/30)
　[sdl] windowposition の位置指定が画面モード変更でも有効になっていたのを修正
しました。

・build JP240315 (2024/3/15)
　J-3100 ビデオモード 64h (640×400 2色 文字80×20)に対応しました。
　MS-DOS/V 6.2 をイメージファイルからブートした場合に jkeyb.sys の /106 設定
が有効にならず英語キーボード配列になっていたのを修正しました。(DOSBox-X から
移植)
　[dosbox] kanjikey を追加しました。漢字キーを ALT+半角全角、半角全角、右 ALT
に割り当てる事ができます。
　int 21h ah=5ch に対応しました。Windows 3.1 用の MS-Office が起動可能になり
ます。(DOSBox-X から移植)
　内蔵 BIOS 割り込みのエントリアドレスを F000:C000 以降に変更しました。

・build JP240410 (2024/4/10)
　J-3100 モードで起動できなくなっていたのを修正しました。半角フォントのデータ
と重なるため、J-3100 モードでは内蔵 BIOS 割り込みのエントリアドレスは F000:B000
以降となります。
　Linux, macOS でビルドできなくなっていたのを修正しました。

・build JP240502 (2024/5/2)
　J-3100 モードの場合、int 10h ah=02h のカーソル位置指定で bh のページ番号は
使用せず常に 0 となるよう修正しました。
　J-3100 の int 10h ax=8200h でスクロールモードを変更した後に画面クリアするよ
う修正しました。
　macOS 上での SDL-IM+ の不具合を修正しました。
　Raspberry Pi 64bit OS で SDL-IM+ がビルドできなかったのを修正しました。

・build JP240514 (2024/5/14)
　タイトルバーに表示する文字列を指定する [sdl] titlebar が有効になっていなかっ
たのを修正しました。
　タイトルバーに表示する文字列を変更するコマンド title を追加しました。
　macOS Sonoma 上での SDL-IM+ の不具合を修正しました。

・build JP240909 (2024/9/9)
　Vz 常駐時のコンソール履歴でコマンドラインの文字列が正しく取得できていなかっ
たのを修正しました。
　画面サイズが変更になった際にキーボード押下状態をリセットするかどうかの設定
[sdl] resetkeyboardstate を追加しました。
　Linux 版も SDL_FlushIMString() で確定文字列を取得するよう修正しました。

・build JP240918 (2024/9/18)
　Windows 版で IME の入力文字列を Ctrl-M や Ctrl-Enter で確定すると Ctrl キー
が離された状態になってしまうのを修正しました。
　日本語環境から VESA のファンクション(int 10h ax=4f02h)を使ってビデオモード
を変更した場合に画面表示がおかしくなっていたのを修正しました。

・build JP241011 (2024/10/11)
　int 2Fh ax=1703h のクリップボードセットで文字列末尾が欠けるのを修正しました。

・build JP241122 (2024/11/22)
　Windows 版で Windows 用のコンソールプログラムを実行し、出力を DOSVAXJ3 上で
表示できるようにしました。また、デスクトッププログラムも実行できます。
　これらの対応用に環境変数領域を増やしたため、コンベンショナルメモリが少し減っ
ています。

・build JP241128 (2024/11/28)
　copy コマンドでワイルドカードでリネームしながらのコピーができるように修正し
ました。
　echo コマンドで echo: という書式も使用可能にしました。

・build JP250527 (2025/5/27)
　attrib コマンドを実装しました。Linux や macOS で mount したドライブではリー
ドオンリー以外の属性は正しく取得・設定できませんのでご注意ください。リードオン
リーは所有者の書き込み権限の有無で判定しています。(DOSBox-X から移植)
　dir コマンドの属性指定やソートオプションを追加しました。(DOSBox-X から移植)
　Windows 98 付属の XCOPY コマンドが使用できなかったのを修正しました。
　不足していた日本語メッセージを追加しました。

・build JP250702 (2025/7/2)
　Ctrl+Break が入力可能となるように修正しました。(DOSBox-X から移植および一部
修正)
　VZ 常駐中に DOS プログラムを Ctrl+C で終了させると ^C が入りっぱなしになって
操作できなくなっていたのを修正しました。

・build JP251105 (2025/11/5)
　mount したドライブの容量等の取得(int 21h ah=36h, ax=7303h)は親 OS から値を取
得して返すように修正しました。ah=36h の場合 2G 超えの容量のドライブでは全体容
量は 2G、空き容量は調整した値を返します。ax=7303h の場合は 2G 超えでも正しい全
体容量と空き容量が取得できます。(ah=36h の場合の空き容量は DOSBox-X から移植)
　mount したドライブで dir した際に正しい空き容量を表示するよう修正しました。
　DOSVAXJ3 上で動作しているかどうかの判定(int 2fh ax=7476h で返値 ax=0002h)を
追加しました。

●ライセンス
　GPL v2
　ソースコードや ABOUT_LIB、README_AX.txt も参照してください。

●最後に
　DOSBox, DOSVAX, DOSBox-lfn, DOSBox-X, SDL, libpng, zlib, 東雲フォントの作者
の方々に感謝します。


                                                                      takapyu
