[HOME]  [リストへもどる] [全部表示 会議室風]  [全部表示 保存用] 
一括表示

  DOSVAXJ3 備忘録 CHEV コマンド - konno 23/12/01-00:26 No.10960
 ┣ DOSVAXJ3 起動時 NumLk が OFF になってしまう - konno 23/12/13-16:30 No.10982
 ┃┗ Re: DOSVAXJ3 起動時 NumLk が OFF になってしまう - めざら 23/12/13-19:48 No.10984
 ┃ ┗ Re^2: DOSVAXJ3 起動時 NumLk が OFF になってしまう - konno 23/12/13-22:32 No.10985
 ┃  ┗ Re^3: DOSVAXJ3 起動時 NumLk が OFF になる原因判明 - konno 23/12/13-23:09 No.10986
 ┗ DOSVAXJ3 備忘録 起動時ウィンドウが枠外にはみ出る場合 - konno 23/12/14-18:00 No.10989
  ┗ 起動時の窓位置の問題その他諸々、キーコード - konno 23/12/21-16:52 No.11003

(10960) 10960DOSVAXJ3 備忘録 CHEV コマンド  投稿者:konno   2023/12/01(金) 00:26
   コメント数 2

DOS6 付属の QBASIC.COM は、日本語モードでは動かないので、DOSVAXJ3 英語モードでやってみました。

chev us
Change to the US environment.
Current video mode is 03h

QBASIC.COM
日本語モードでは実行できません.


実際の表示は英語モードなので、文字化けした読めないメッセージになっています。
日本語モードにするとこの表示になっていました。
あれれ? もしかして chev us コマンドでは完全な英語モードになっていない?


chev us を実行すると以下の表示になります。chev コマンド自体は表示されません。

Change to the US environment.
Current video mode is 03h

ここで、chej でモード状態の表示をしてみると

D:\NC>CHEJ.EXE <MultiMode CHEV> ver 6.10 by Natrium.
現在 DOS/V(Normal)、日本語環境です。
現在のビデオモードは 03h です。

こう表示されました。
どうやら chev コマンドでは完全な USモードになっていないようです。

chej us を実行すると

D:\NC>CHEJ.EXE <MultiMode CHEV> ver 6.10 by Natrium.

Change to the US environment.
Current video mode is 03h.

ここで、chej でモード状態の表示をしてみると

CHEJ.EXE <MultiMode CHEV> ver 6.10 by Natrium.

This is the US environment.
Current video mode is 03h.

この状態で QBASIC.COM 実行すると、無事に動きました。
QBASIC.COM は、完全な USモードでないと動かないようです。
実行してもカーソルだけが表示されるので、謎のモードで動いているようです。

そういえば、最新の DOSVAXJ3 の更新では
> 拡張 CGA テキストモード 73h, 71h に対応しました。
とあって、試してみた過去記事が

#10927: Re: DOSVAXJ3 230919 更新 投稿者: konno   2023/09/20(水)

> モード切替を試してみると、CHEV 71 とかではモード70 になってしまって切り替え出来ない?
>
> CHEJ 71
>
> これでモード71 に切り替わりました。
> 見た目は 70 と変らないですね。(^^;

これも同じ原因かもしれないdすね。
関係あるかどうかわかりませんが、過去ログで

#6100: Re^2: DOSBOXでVZはFEP制御不可なのか 投稿者: konno   2012/12/02(日)

> > > VZ側ではまったく制御できていないようですね。
> DOSBOXは本当に日本語環境になっているのか、ふと思いついて、調べてみました。
>
> CHEJ /C で、
>
> Current CodePage is 437.
>
> と出ました。そうです。コードページは英語のままだったのです。
> これですべてのつじつまが合います。VZはDBCSのモードをチェックしているので
> 英語モードと判断してFEP制御していなかったわけですね。
> おそらくキーボードも英語のままなので制限が多いのでしょう。

2012年の古い DOSBOX ですが、モード切替に不備があるようです。
DOSVAXJ3 ではコードページはキチンと切り替え出来ているようですが、何かが足りないのでしょうか。

      - No.10960 -    このTreeへ           [リストへもどる] soft


(10960) 10982DOSVAXJ3 起動時 NumLk が OFF になってしまう  投稿者:konno   2023/12/13(水) 16:30
    10960 番 konno さんへのコメント    コメント数 1

DOSVAXJ3 備忘録 2つ目です。

dosvaxj3 起動時に NumLk が OFF になってしまいます。
NumLk のランプは ON のままなので、ON操作をすると、ランプが消えます。

テンキー付きのPC では、これに気づかず、誤操作してしまいます。
起動時に 自動的に NumLk ON にする方法はわかりません。

NumLk ON コマンドなどは効かないようです。

dosvaxj3 起動時に NumLk の制御を何もしなければ、問題無くなると思うのですが。

次回はキーバインドの問題ですね。
纏めるのに時間が必要です。

      - No.10982 -    このTreeへ    コメント元:10960 へ [リストへもどる] soft


(10960) 10984Re: DOSVAXJ3 起動時 NumLk が OFF になってしまう  投稿者:めざら   2023/12/13(水) 19:48
参照先:http://mezala.la.coocan.jp/
    10982 番 konno さんへのコメント    コメント数 1

Numlock の問題は,自宅のデスクトップ(フルキーボード)では再現できませんでした。

テンキーの付いている幅広ノートで発生するということでしょうか?

      - No.10984 -    このTreeへ    コメント元:10982 へ [リストへもどる] soft


(10960) 10985Re^2: DOSVAXJ3 起動時 NumLk が OFF になってしまう  投稿者:konno   2023/12/13(水) 22:32
    10984 番 めざら さんへのコメント    コメント数 1

> Numlock の問題は,自宅のデスクトップ(フルキーボード)では再現できませんでした。
> テンキーの付いている幅広ノートで発生するということでしょうか?

ええ!? まさか!! と思って、デスクトップ機で確認してみました。
本当だ! Numlock が効いています!!

もしかしたら、ノートPCで常用している dosboxj.conf が壊れているかもしれない。
そう思って、最新の dosboxj.conf に、[autoexec] の内容を張り付けてみました。

げげぇ!! Numlock が効いている!!

どうやら今年の怒涛の dosvaxj3更新の時に色々 dosboxj.conf を弄ったのをそのまま使っていたのが原因だったようです。
テキストとしては壊れていないと思うので、どこが原因になったのか調べてみます。
問題が解決できてホッとしました。ありがとうございます。m(__)m


# 作者様に報告していたらまた恥をかくところでした。(^^;;

ていうか、新しい版が出てるし。(^^;

      - No.10985 -    このTreeへ    コメント元:10984 へ [リストへもどる] soft


(10960) 10986Re^3: DOSVAXJ3 起動時 NumLk が OFF になる原因判明  投稿者:konno   2023/12/13(水) 23:09
    10985 番 konno さんへのコメント

起動時 NumLk が OFF になる原因が判明しました。

dosboxj.conf の [sdl] セクションで
videodriver       = 
これを、

videodriver       = directx

このように変えていたのが原因だったようです。
videodriver       = 
に戻したら正常になりました。
当時は表示が遅いのをなんとか速く出来ないか色々試行錯誤していたのでした。(^^;

お騒がせしてすみませんでした。
問題点に気づかせてくれためざらさんに感謝です。m(__)m


dosboxj.conf は新しい版に変えましたが、デフォルトの状態だとやはりかなり遅いようです。
[cpu] セクションの
cycles    = auto

ここを

cycles= auto 50000 100% limit 100000

こう変更すると、爆速になります。(^_^)
拙作の STIME.EXE のカレンダーを ←→ キー押しっぱなしすると違いがよくわかります。(^^;
カレンダーマクロでもいいかとやってみたら違いがよくわからなかったです。(^^;
STIME.EXE はかなり負荷の高い処理をしているんですね。(^^;
      - No.10986 -    このTreeへ    コメント元:10985 へ [リストへもどる] pre


(10960) 10989DOSVAXJ3 備忘録 起動時ウィンドウが枠外にはみ出る場合  投稿者:konno   2023/12/14(木) 18:00
    10960 番 konno さんへのコメント    コメント数 1

備忘録のため、#10988 のコメントをこちらでします。m(__)m

> ところで,キーバインドの不具合の問題は konno さんから報告されていますか?

以前気がついた一部のキーは報告して対応していただきました。
今回は、改めて調べ直して纏めてから報告しようと思っていたので、まだ報告できていません。

> 起動時に,ウィンドウの下の方がディスプレイの枠外になってしまうのを何とか
> 直してもらえないかなとか思っているのですが,メールするしかないのかな……

これは以前報告した時のやり取りを引用しますね。

---------------------------------------------------------------------
> いまさらですが、画面の設定が実画面をはみ出す設定の時は、ALT[Enter] でフルスク
> リーンにしようとすると落ちてしまうのですね。
 フルスクリーンの場合、実際のディスプレイの解像度より大きい解像度は
設定できないような気がします。
 フルスクリーンで SXGA の解像度と一致するモードがない場合、それより
大きな解像度を選択して中央に表示といった動作になると思われますが、
SXGA と同じか、より大きい解像度が存在せず、画面解像度の設定でエラー
になっているものと思われます。
 dosboxj.conf で [sdl] fullresolution=1366x768 output=opengl とする
と落ちなくなると思いますが、スケーリングが入るので文字が綺麗にでない
と思います。
---------------------------------------------------------------------

それで、dosboxj.conf の [sdl] セクションを見てみると

#    fullresolution: What resolution to use for fullscreen: original, desktop or a fixed size (e.g. 1024x768).
#                      Using your monitor's native resolution with aspect=true might give the best results.
#                      If you end up with small window on a large screen, try an output different from surface.
#                      On Windows 10 with display scaling (Scale and layout) set to a value above 100%, it is recommended
#                      to use a lower full/windowresolution, in order to avoid window size problems.


これを見て、下のように、画面サイズを指定したらはみでなくなったようです。

fullresolution    = original
#fullresolution    = e.g. 1336x768
#fullresolution    = 100%

今は対応されたのか、元に戻しています。

窓状態の時は

#  windowresolution: Scale the window to this size IF the output device supports hardware scaling.
#                      (output=surface does not!)

これが設定のようですが、読めないので、適当にサイズ指定してみました。

#windowresolution  = original
windowresolution  = 1336x768

これで画面枠からはみ出なくなると思います。
お使いのPCの画面サイズを入れて試してみてください。

 追記

過去記事で設定例を出していました。 
 
 #10765: DOSVAXJ3の dosboxj.conf 設定例 投稿者: konno   2023/04/15(土) 
> [sdl]
> windowresolution  = 1336x768
> # 私の画面サイズ これを入れると画面をはみ出す行サイズでもフルスクリーンモードが使えるかも


12/20 追記

#10997 より
> 以前の設定例は見ていて,手元の画面解像度に合わせて値を入れているのですが,
> それでも下端がはみ出してしまうので,先の発言でした。

これを聞いて私が勘違いしていることに気が付きました。

windowresolution  = 1336x768

この指定では行数制限を入れていないとはみ出てしまうようです。
行数制限とは、[dosbox] セクションで

vtext1        = svga,40
#  vt1          svga,40 解像度  800× 600  文字 100×37〜40 (40行なら画面をはみ出さない)
vtext2        = xga,44
#  vt2          xga     解像度 1024× 768  文字 128×48〜80 (44行なら画面をはみ出さない)
vtext3        = sxga,44
#  vt3          sxga    解像度 1280×1024  文字 160×64〜75 (44行なら画面をはみ出さない)
#vtext4        = vga
#  vt4          vga     解像度  640× 480  文字  80×30〜51 (44行なら画面をはみ出さない)
vtext4        = sxga24,29
#               sxga24  解像度 1280×1024  文字 106×42〜51 (29) 24ドットフォント
#               xga24   解像度 1024× 768  文字  85×32〜60 (29) 24ドットフォント

このように各自のディスプレイで、はみ出ない行数を指定することで、はみ出なくなります。
ややこしいので私は上のようにコメントを入れています。

      - No.10989 -    このTreeへ    コメント元:10960 へ [リストへもどる] pre


(10960) 11003起動時の窓位置の問題その他諸々、キーコード  投稿者:konno   2023/12/21(木) 16:52
    10989 番 konno さんへのコメント

作者様からメールのお返事をいただき、掲示板も見てもらえたようです。

起動時の窓位置の問題は

>  起動時の座標については DOSBox-X では設定ファイルの [sdl]
> windowposition で指定できるようになってますので、この処理を持って
> こようかと考えております。

これで解決できそうです。

> また、chev us で qbasic が動作しない件はこちらでも確認しましたの
>で修正します。

これも解決できそうでうれしいです。

> キー入力の不具合等もあるようですので、可能でしたら詳細をご連絡ください。

BIOSコールでVTDOSとの違いを見てみました。★印が相違しています。

F1	F2	F3	F4	F5	F6	F7	F8	F9	F10	F11	F12	
3B00	3C00	3D00	3E00	3F00	4000	4100	4200	4300	4400	8500	8600	VTDOS
3B00	3C00	3D00	3E00	3F00	4000	4100	4200	4300	4400	8500	8600	DOSVAXJ3

\F1	\F2	\F3	\F4	\F5	\F6	\F7	\F8	\F9	\F10	\F11	\F12
5400	5500	5600	5700	5800	5900	5A00	5B00	5C00	5D00	8700	8800	VTDOS
5400	5500	5600	5700	5800	5900	5A00	5B00	5C00	5D00	no★	no★	DOSVAXJ3

^F1	^F2	^F3	^F4	^F5	^F6	^F7	^F8	^F9	^F10	^F11	^F12
5E00	5F00	6000	6100	6200	6300	6400	6500	6600	6700	8900	8A00	VTDOS
keymap★5F00	6000	6100	no★	no★	6400	6500	終了★	IME★	no★	no★	DOSVAXJ3

@F1	@F2	@F3	@F4	@F5	@F6	@F7	@F8	@F9	@F10	@F11	@F12
6800	6900	6A00	6B00	6C00	6D00	6E00	6F00	7000	7100	8B00	8C00	VTDOS
6800	6900	6A00	6B00	6C00	6D00	6E00	6F00	7000	no★	no★	no★	DOSVAXJ3

^1	^2	^3	^4	^5	^6	^7	^8	^9	^0	^-	^^	
02FF	0300	04FF	05FF	06FF	071E	08FF	09FF	0AFF	0BFF	0C1F	0DFF	VTDOS	
0300	no★	no★	no★	no★	071E	no★	no★	no★	no★	0C1F	0D00★	DOSVAXJ3


no★ はキーコードが出ていないところです。
^F1〜 ^F12 は keymap を弄った所もあるので、修正可能な範囲でお願いします。


★印のところはVZで使えません。^F9 はDOSVAXJ3 が強制終了してしまうのでご注意を。
この表をメールしました。


BIOSキーコード表作成は

== KEYin.def ==
*m
80 ^^  "key in?" 
k=ks1, (k>=8)?{(&m("hennkann").}
&w(50)  &m("BIOS key in? ")
:a c0,
:A
ax$0000,&i($16)  a=r,
(c==0)?b=ax,d=dx,
(a!=0&&c==0)?{c++,>A}
 &m("BIOS key in? AX=%04x dx=%04x b=%04x r%d  %c",ax,dx,b,r,ax%256)
&w(20)
(AX==$011B)?>Q	;int16h
(ax==$061B)?>Q	;int21h
(ax==$0600)?>A
 &?("%04x%c",ax,9)		;★ キーコード+TAB を書き込む
>A
:Q  &m("") .
*

これで作りました。

      - No.11003 -    このTreeへ    コメント元:10989 へ [リストへもどる] pre