今日のテーマ   日々改造 (^_^;)         
[記事リスト(ツリー表示)]  [ 返信 ]   [新着記事] [最新50] [ワード検索] [過去ログ]

タイトル MS-DOS Player 12/30版
投稿日: 2021/12/31(金) 00:53
投稿者konno
 番 号 10145       コメント数 1

MS-DOS Player が更新されていました。12月30日の版です。
更新内容を張り付けます。

---------------------------------
2021/12/30
QEMUのtesti386.exeを参考に、NP21/WのI386コアを修正しました。
ia32_x86版のバイナリで、実機と同じ結果が得られるようになっています。
具体的な変更点は以下の通りです。

    DAA/DAS/AAA/AAS/AAM/AAD命令を、DOSBoxの実装を基に修正しました。
    SHLD/SHRD命令で、16bit以上シフトしたときの処理を修正しました。
    FCOM/FCOMI/FXAM命令で、NaNやINFのときのC1,C2,C3フラグの値を修正しました。
    FDECSTP/FINCSTP命令で、C1をクリアするよう修正しました。
    FLD系命令で、スタックオーバフローの有無でC1をセットまたクリアするよう修正しました。
    FSTENV/FLDENV/FSAVE/FLDENV命令で、data16プリフィックスを反映するよう修正しました。

なお、ia32_x64版だと、浮動小数点のテストで例外が発生してしまいます。
x86ビルドとx64ビルドで、何かしら処理が等価になっていないようですね、要調査。

---------------------------------------


さっそく使ってみましたが、ia32版では、自作のアプリでエラーが出ます。
自作アプリとは、turbo basic の古いプログラムで、VGAでないと動きません。

実は、今までの MS-DOS Player では、エラーが出て使えませんでした。
軟式さんの DOSVAXJ3 では使えていました。


確認のために、今回の版の全てのバイナリを試してみました。


i86_x86		VZ起動時に落ちる。VZは、186コードを含んでいます。
i86_x64		VZ起動時に落ちる。VZは、186コードを含んでいます。

i286_x86	問題なし。
i286_x64	問題なし。

i386_x86	問題なし。
i386_x64	問題なし。

i486_x86	問題なし。
i486_x64	問題なし。

ia32_x86	数字4桁の入力で、OE+2?? (??は数字によって変わる)エラーで止まる
ia32_x64	数字4桁の入力で、OE+2?? (??は数字によって変わる)エラーで止まる


数字4桁の入力は、裏で変換の計算をしているので、どこかで引っかかっているのかなと思いました。

私のプログラムか環境のせいだとは思いますが、一応作者の武田さんにご報告をさせていただきました。

今回、MS-DOS Playerで自作の古いアプリが動くようになりましたので、非常にありがたいです。
作者様に感謝いたします。m(__)m

    - No.10145 一括表示へ   -              [ 返信 ]    [引用無し] pre


- 関連一覧ツリー (先頭の番号をクリックするとツリー全体を一括表示します)
10145.MS-DOS Player 12/30版 - konno 21/12/31-00:53
  ┗10146.Re: MS-DOS Player 12/30版 - konno 21/12/31-19:55

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)   [引用無し]
おなまえ 
Eメール 
タイトル 
メッセージ auto soft pre(図表、プログラム) ※折り返さずに改行を入れてね
 参照先 
 暗証キー (英数字で8文字以内)
 プレビュー          

- 以下のフォームから自分の投稿記事を修正・削除することができます -
   処理   記事No   暗証キー
    [ページトップへ] [管理用]