[HOME]  [現在掲示板へもどる]  [ツリー表示]   

過去ログ 0030 番号順 全部表示   FGALVZ  


11906/11906 BQO00549  konno            MSDOS Player 2025/1/22
( 1) 25/01/23 21:35 コメント数:1
MSDOS Player 2025/1/22 が更新されていました。
最近頻繁に更新されているんですが、あまり関係ないかと思っていました。(^^;
が、2025/1/12 の更新で、#11905 に関係ありそうな変更があったようです。

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

2025/1/22 省略
2025/1/21 省略
2025/1/13 省略
2025/1/12
VDD(Virtual Device Driver)を部分的にサポートしました。
cracyc様のforkを基に、多少の変更をしています。
i386以降かつ32bit版のバイナリでのみ使用可能です。
同梱しているntvdm.exeをmsdos.exeと同じフォルダに入れてお使いください。

これにあわせて、INT 21H, AH=30Hの返すDOSのバージョンを5.00に、
INT 21H, AX=3306Hの返す真のDOSのバージョンを5.50に変更しました。
Windows NTのNTVDMと同じバージョンとなります。
また、INT 2Fh, AX=122Fh, DX=0000hで、5.00に戻すようにしました。

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

で、最新の MSDOS Player でやってみると

>ver
FreeCom ver 0.85b_DBCS - WATCOMC - XMS_Swap (IBMPC) [Dec 4 2024 23:06:01]
>verk
Dos Ver 7.00
True Ver 5.50

こうなりました。
これは、起動時の引数に v7.00 と入れているので DosVerは 7.00 と表示されます。
FreeCom ver 0.85b の真のバージョンは True Ver 7.10 のはずですが、5.50 となっています。
これは MSDOS Player が、NTVDM に準拠しているからこう変えたのでしょうか。
うーむ、なんだかもやもやするなぁ。(^^;


ちなみに 64ビットのコマンドプロンプトでは verk.com は動かないので MSDOS Player を咬ませてみたら

>msdos verk
Dos Ver 5.00
True Ver 5.50

こうなりました。完全に「NTVDM」です、と言っているようにみえますね。(^^;


12307/11906 DGF01024  めざら           MS-DOS Player 2025/5/2
( 1) 25/05/04 11:25 11906へのコメント(konnoさん) コメント数:1
参照先:http://mezala.la.coocan.jp/
MS-DOS Player が更新されていました。

少し高速化されたとのことですね。

12308/11906 BQO00549  konno            Re: MS-DOS Player 2025/5/2
( 1) 25/05/04 23:30 12307へのコメント(めざらさん) コメント数:1
> MS-DOS Player が更新されていました。
> 少し高速化されたとのことですね。

更新は気づいていましたが、高速化されていたんですね。
-----------------------------------------------------------
025/5/2 (20:00)
COMMAND.COMからバージョンを取得する処理が壊れていたのを修正しました。

2025/5/2
NP21/WのI386コアを、ver0.86 rev94β4相当に更新しました。
ModR/Mの先読み以外の高速化を有効にしています。
testi386で試した限りでは、10%くらい高速化しているようです。
また、FPUタイプをDOSBOX2からSOFTFLOATに変更しました。

COMMAND.COMから自動取得した、または-vで指定したバージョンについて、
INT 21H, AX=3306Hの返す真のDOSのバージョンに反映するようにしました。
-----------------------------------------------------------

素数表示の PRIME2.EXE で実行時間を比較してみました。

Number.20000 0: 0'20 Prime Number = 2262 25-03-27 i386_x64
Number.20000 0: 0'20 Prime Number = 2262 25-05-02 i386_x64

うーん、全く違わないようです。
> testi386で試した限りでは、10%くらい高速化しているようです。

この testi386 の所在がわからなかったので、cpubench.exe で試してみました。
1992/07/22 09:08 20,388 cpubench.exe Version 0.980 ZOBplus 速水 祐

Machine CPU Ratio Execute time
DOSVAXJ3 Cx486SLC(DLC) FPU i387SX 172.75 0.40
VTDOS 186AT 80186 153.55 0.45
MSDOS Player i386_x64 i386SX Real 115.16 0.60 25-03-27
MSDOS Player i386_x64 i386SX Real 6910.00 0.01 25-05-02

げげ! 新版は数値がおかしくなったかと思うほど爆速です!
このベンチの動作はネイティブCPUで動いているのですかね?
一方の素数表示はエミュレーションCPUで動いているということでしょうか。
testi386 は両方の動作を総合した数値なのかもしれませんね。(^^;
一部でも速くなったのならありがたいことです。


12309/11906 CTL00944  たけだ           Re^2: MS-DOS Player 2025/5/2
( 1) 25/05/06 20:40 12308へのコメント(konnoさん) コメント数:1
高速化したのは主にnp21wのi386コアなので、IA32版のバイナリをお試しください。

mameのi386コアも、allignでないアドレスへのword/dword/qwordアクセスが
高速化されていますが、そのようなアクセスはあまりされないかと思います。。。

CPUBENCHの方はちょっとわからないです。


12310/11906 BQO00549  konno            Re^3: MS-DOS Player 2025/5/2
( 1) 25/05/07 02:58 12309へのコメント(たけださん)
たけださん、お世話になっています。

> 高速化したのは主にnp21wのi386コアなので、IA32版のバイナリをお試しください。

あ、そちらでしたか、同じくPRIME2.EXE で実行時間を比較してみました。

ia32_64 3/27
Number.200000 0: 0' 9 Prime Number = 17984
ia32_64 5/2
Number.200000 0: 0'11 Prime Number = 17984

このプログラムでは速度アップの効果は見られないようです。

> mameのi386コアも、allignでないアドレスへのword/dword/qwordアクセスが
> 高速化されていますが、そのようなアクセスはあまりされないかと思います。。。
> CPUBENCHの方はちょっとわからないです。

CPUBENCH はループさせているそうなので、ちょうどその部分が当てはまっているとか
丸ごとキャッシュされているのかもとか想像しました。

MSDOS.EXEを削除したままアイコンをクリックしたら他から探してショートカットを
書換て起動してました。(>_<)
EXEを変えても数値が変わらなくなって、おかしいなぁ、と首をひねっていました。
暫く気が付かなかったのでこんな時間に。(;_;)


12317/12317 BNY00646  shadow           MSDOS Player 2025/5/11
( 1) 25/05/13 08:44 コメント数:1
MS-DOS Player が更新されていました。
VZでDOS画面の描画に不具合があります。

12318/12317 BQO00549  konno            Re: MSDOS Player 2025/5/11
( 1) 25/05/13 15:02 12317へのコメント(shadowさん) コメント数:1
> MS-DOS Player が更新されていました。
> VZでDOS画面の描画に不具合があります。

INT10関係が更新されたので確認してみましたが特に問題は感じませんでした。
コマンドラインの画面に不具合があるということですよね。
私の環境では問題なさそうに思いました。

MS-DOS Player のバイナリは ? ia32_64とか
command.com のバージョンは?
VZのバージョンは?
あと不具合が出る操作を具体的に書いていただけると助かります。


12319/12317 BNY00646  shadow           Re^2: MSDOS Player 2025/5/11
( 1) 25/05/13 20:05 12318へのコメント(konnoさん) コメント数:1
確かに情報不足でしたね。
MSDOSPlayer のショートカットのプロパティ
レイアウトの高さを38に設定
> MS-DOS Player のバイナリは ? ia32_64とか
検証したのは
i386_x64〜ia32_x64
> command.com のバージョンは?
msdos v622、v621、win98、その他
> VZのバージョンは?
MS-DOS Player でDOS画面の保存・復帰対応版のVZk07t05とk07v6p
> あと不具合が出る操作を具体的に書いていただけると助かります。
vz -z で常駐して escからfilerに移行すると26行目以降数行が文字化け(モザイク柄)
非常駐もvz enter でファイラー起動で同様の現象
ESCで文字化け(モザイク柄)は消えて26行目以降にMS-DOS Player起動時の環境設定条件set、path等再表示されます。

12320/12317 BQO00549  konno            Re^3: MSDOS Player 2025/5/11
( 1) 25/05/13 22:48 12319へのコメント(shadowさん) コメント数:1
> MSDOSPlayer のショートカットのプロパティ
> レイアウトの高さを38に設定

MSDOSPlayer が動いている窓のプロパティで行数を変更したということですよね。
2018年〜最新版まで試してみましたが、この操作ではローメモリの行数設定値は
変わらないようです。ChaN氏の v.com で変更後の行数を確認しました。
VZはローメモリの値を見るので行数が変わらないのだと思います。
ローメモリの行数設定値は MSDOSPlayer再起動で反映されるようです。

> > VZのバージョンは?
> MS-DOS Player でDOS画面の保存・復帰対応版のVZk07t05とk07v6p

古い MSDOSPlayerだとコンソールに何も表示しないので、便利さを実感しますね。

> vz -z で常駐して escからfilerに移行すると26行目以降数行が文字化け(モザイク柄)
> 非常駐もvz enter でファイラー起動で同様の現象
> ESCで文字化け(モザイク柄)は消えて26行目以降にMS-DOS Player起動時の環境設定条件set、path等再表示されます。

これは tv+ 強制的に EGA モードで起動 で解消されると思います。
うちは TV+ にしていました。


12321/12317 CTL00944  たけだ           Re^4: MSDOS Player 2025/5/11
( 1) 25/05/13 23:56 12320へのコメント(konnoさん) コメント数:1
前回の更新でEGAが存在しない状態にしました。
どうせテキスト画面しかないので大丈夫かなーと思ったのですが、
DOS/V的にはちょっとよろしくなかったみたいですね。

横着せずに、オプションで切り替えられるようにする方向で考えてみます。

12322/12317 BQO00549  konno            Re^5: MSDOS Player 2025/5/11
( 1) 25/05/14 00:25 12321へのコメント(たけださん) コメント数:1
> 前回の更新でEGAが存在しない状態にしました。

ああ、それで画面下にモザイクが出たと言っていたんですね。
私の想像力不足でした。すみません、shadowさん。m(__)m

> どうせテキスト画面しかないので大丈夫かなーと思ったのですが、
> DOS/V的にはちょっとよろしくなかったみたいですね。
> 横着せずに、オプションで切り替えられるようにする方向で考えてみます。

よろしくお願いします。m(__)m


12323/12317 BNY00646  shadow           Re^6: MSDOS Player 2025/5/11
( 1) 25/05/14 08:20 12322へのコメント(konnoさん) コメント数:1
 > > 前回の更新でEGAが存在しない状態にしました。
>
> ああ、それで画面下にモザイクが出たと言っていたんですね。
> 私の想像力不足でした。すみません、shadowさん。m(__)m
Tv+ って? vzeditor 1.6と私家版defを検索してもない・・・。
もしや高橋版?vzt.docにあったぁ、拡張されてたんですね。
●Tv+ : 強制的に EGA モードで起動する。
私家版を弄るとゴミが入ることがよくあり作り直した時に入れ忘れたんだと思います。

> > どうせテキスト画面しかないので大丈夫かなーと思ったのですが、
> > DOS/V的にはちょっとよろしくなかったみたいですね。
> > 横着せずに、オプションで切り替えられるようにする方向で考えてみます。
>
> よろしくお願いします。m(__)m
たけださん、よろしくお願いします。

12324/12317 BQO00549  konno            tv+  強制的に EGA モードで起動
( 1) 25/05/15 14:55 12323へのコメント(shadowさん) コメント数:1
補足てきななにか。(^^;

[tv+ 強制的に EGA モードで起動] は高橋版で追加されたフラグです。
オリジナルVZのファイラーで25行以上で不具合が出るので対応されたのだと思います。
scrnibm.asm
;--- Init VRAM ---
initvram proc
IFDEF IBM
test cs:tvzsw,TSW_EGA ; ##tvz 追加
jnz initv1 ; ##tvz 追加
mov bx,0FF10h ; BH=10h
bios_v 12h ; AH=12h INT10h
mov al,ID_IBM ; 25行固定
cmp bh,0FFh
_ifn e
initv1: ; ##tvz 追加
mov al,linecnt ; ##156.123
cmp al,50
_if b
mov al,50
_endif

このようにオリジナル版は bios_v 12h ; BH=10h AH=12h INT10h
を使用していて、ブラウンさんではこのように
Int 10/AH=12h/BL=10h - VIDEO - ALTERNATE FUNCTION SELECT (PS, EGA, VGA, MCGA) - GET EGA INFO
EGAチェックなんですかね。これに引っ掛かるので回避したということのようです。
モバイルギアのVZとかで症状が出たような気が・・・

NP2の改造版で30行表示のとき30行BIOSが無いと同じようなモザイクが出ていたような
VZ98版では TV+ にしても何もしないんですよね。(^^;


12325/12317 CRG00666  文太             すげえよ、やっぱり
( 1) 25/05/16 01:26 12324へのコメント(konnoさん) コメント数:1
konnoさん

 とりわけその領域で勉強をしていたわけではないのですが、
ありがとうございます。
 うん、これは永久保存ものの情報です!
 永久保存でなく、当たり前じゃん、と思える自分が、いつか、
いてくれることを、今は、夢見させていただきます。
 ありがとうございます。

 PCから離れたところで、おたおたしてる毎日です。けっこう
忙しいことになるのねぇ、とか独り言しながら。

 shadowさんにも、感謝です。m(_B_)m



12326/12317 BQO00549  konno            Re: 凄いのは高橋さん
( 1) 25/05/16 20:47 12325へのコメント(文太さん)
私の書き込みはいい加減なのであまり信用できません。
掲示板の過去ログで「EGA」で検索しても出てきませんでした。
そうか! FGALDCの過去ログだ! モザイクの初出は

> DC13 97/05/31 02230/02230 セベッタ DOSモードでVZのV-TEXT化は?
> (10)vzのファイラー起動
> (11)あれ?画面下4行がモザイクになっちゃった

その後不具合情報が複数出て高橋さんが解決策を出したので前半を引用します。(^^;

> 10549/10562 xxxxxxxx 高橋 洋光    ファイラーで25行以降にゴミ
> (15) 98/06/01 21:26 10528へのコメント コメント数:1
>
> #10528 くらと さん
> #10529 あむの さん
>
>  う〜ん、わかりました。t01a でスイッチ Tv を新設して対応しましょう。
>
> #if tVZ ; vz.def
> tv+ ; 強制的に EGA モードに。
> #endif
>
>
>  解説すると。
>  Vz が EGA なのか判断するために、OADG のガイドラインに規定されてい
> ない BIOS を使用してるためです。この BIOS にドライバが対応してないと、
> EGA と判断せずデフォルトの25行分しかバッファを確保しません。
>
>
> ;--- Init VRAM --- ; scrnibm.asm
>
> public initvram
> initvram proc
> IFDEF IBM
> mov bx,0FF10h
> bios_v 12h ; int10h/12h BL10h
> mov al,ID_IBM
> cmp bh,0FFh ; ノンサポートだと(BH が変化しない)
> _ifn e
> mov al,linecnt ;
> cmp al,50 ; ここが実行されず、
> _if b ; デフォルトの 25 行分。
> mov al,50 ;
> _endif ;
> mov ah,WD*2 ;
> mul ah ;
> mov tvsize,ax ; <- EGA なら50行分
> mov al,ID_EGA ;
> _endif
> <以下略>
> ;-------------------
>
>  この非公開の BIOS は知名度が高いから、ほとんどのドライバで対応して
> るので問題が出ないのでしょう。

これが正確で正しい詳細な解説ですね。私のはいい加減でした。m(__)m

追記
機種判別は PC.9 で、最新の MSDOSPlayer では 36 になっています。
ID_IBM equ 20h
ID_DOSV equ 04h
この2つをビット加算すると 36 になります。

TV+ でVZ起動すると
ID_EGA equ 21h
これが足されて 37 になります。他のDOSエミュはみんな 37 です。