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

一括表示


【乞検証】現環境で出来なくなったこと - めざら 23/03/26-11:12 No.10709
Re: 【乞検証】現環境で出来なくなったこと - 文太 23/03/26-14:58 No.10710
┃┗ Re^2: 【乞検証】現環境で出来なくなったこと - 文太 23/03/26-15:25 No.10711
┃┗ ゴミ2 - 文太 23/03/26-15:43 No.10712
┃┃┗ on WinME - 文太 23/03/26-22:45 No.10714
Re: 【乞検証】現環境で出来なくなったこと - konno 23/03/26-23:27 No.10715
Re^2: 【乞検証】現環境で出来なくなったこと - 文太 23/03/26-23:50 No.10716
┃┃┣ Re^3: ks&1 は変数に入れたほうが確実 - konno 23/03/27-00:05 No.10718
┃┃┗ Re^4: ks&1 は変数に入れたほうが確実 - 文太 23/03/27-00:26 No.10720
┃┗ Re^3: 【乞検証】現環境で出来なくなったこと - めざら 23/03/27-18:54 No.10722
┃┣ Re^4: 【乞検証】現環境で出来なくなったこと - shadow 23/03/27-19:49 No.10723
┃┃┃┣ Re^5: 原因はVTDOSのバックログ機能だった - konno 23/03/27-20:58 No.10725
┃┃┗ Re^5: 【乞検証】現環境で出来なくなったこと - めざら 23/03/27-21:01 No.10726
┃┃┗ Re^6: 【乞検証】現環境で出来なくなったこと - 文太 23/03/27-21:07 No.10727
┃┃┗ ゴミ3 - 文太 23/03/27-21:18 No.10728
┃┗ Re^4: 【乞検証】現環境で出来なくなったこと - めざら 23/03/27-20:51 No.10724
┃┗ Re^5: KS のシフトチェックの値 - konno 23/03/27-22:51 No.10729
┃┗ Re^6: KS のシフトチェックの値 - めざら 23/03/28-22:04 No.10731
┃┗ Re^7: KS のシフトチェックの値 - konno 23/03/29-02:50 No.10732
┃┗ Re^8: KS のシフトチェックの値 - 文太 23/03/29-13:27 No.10733
┃┗ Re^9: KS のシフトチェックの値 - konno 23/03/29-22:31 No.10735
┃┗ Re^10: KS のシフトチェックの値 - 文太 23/03/29-23:22 No.10738
Re^2: 【乞検証】現環境で出来なくなったこと - めざら 23/03/27-14:16 No.10721

(10709) 10709【乞検証】現環境で出来なくなったこと  投稿者:めざら   2023/03/26(日) 11:12
参照先:http://mezala.la.coocan.jp/
   コメント数 2

みなさまにお願いがあります.掲題のとおりの検証です.
各人の環境で以下の2点の現象が生じるかどうか教えてください.
(手元での発生条件がよくわからないのです)

(1) to Filer
60 \[CR] "" ?. #O #m	;to filer	;H_ear
コマンドライン専用コマンド #98 と操作を合わせるために v1.5 時代から使用.
このマクロを現環境で実行すると,#O #25 の動作になる.
ところが,GPD MicroPC の VTDOS 環境では所期のファイラが起動.訳がわからない.

どの版から発生しているかというと,下記のとおり.
2009/12/12 k07s5 ok
2010/01/04 k07t ok
---------------------------< ここが境界と思われるが上記のとおり確証得られず
2010/03/01 k07t01 NG (GPD MicroPC では ok !?)
2022/11/13 k07t02 NG


(2) mp0で次検索(少し長いです.ごめんなさい)
;= ^QF.def = H_ear mp0常用者のいきなり検索・次検索
55 ^QF "" ?. k20&ks, mp[, (ks&1)?{ &j(10) }
	#F &Cr &j(-1)
	(r)?{ mp], . }
	&s (k)?#r ?#c >01
35 ^R "" ?. (ks&1)??{ #r . } c-, >00
36 ^C "" ?. (ks&1)??{ #c . } c+, >00
0:	&s mp[=2, &o(#r+c) >>
1:	(r)?{ &o(#c-(cm-35)) &b(2) } mp], &d
	(r)?{ &m(19) }
	   ?{ &m("%c",cm+'÷' ) }	; ▲▽ (59:^_)('∞':↑↓)
;------ end of ^QF.def ------

マクロ 55 は正常動作だが,35,36が動作しない.
これは VTDOS 環境で発生しており,高橋版でも同じ.

VTDOS 環境では,@A 等の [Alt]+[英字] キーでコマンド/マクロを実行すると
Windows が警告音を鳴らしてくる.この現象と同根か?

お時間よろしきときに,お試しください.>みなさま
      - No.10709 -    このTreeへ           [リストへもどる] pre

(10709) 10710Re: 【乞検証】現環境で出来なくなったこと  投稿者:文太   2023/03/26(日) 14:58
    10709 番 めざら さんへのコメント    コメント数 1

=== Macrotmp by B ===; vtdos & k07t01
* M

36 ^E "" ?. (ks&1)?{ &m("shift") } ?{ &m("non-shift") } .

*

 面白いマクロだった! 使い方に習熟するのに時間がかかるだろうけど。
 あまりにあまりな基本動作なので。もらっちゃおう!
 ただ、上が効きませんでした。
 わお、^D なら効く!
 これ、重大問題だ。今晩、純DOSとWinMEでやります。
 ^C だけなの?

^A	OK
^B	OK
^C		NG
^D	OK
^E		NG	shift で秀丸起動!
^F	OK
^G	OK
^H	OK
^I			2 stroke key registered 問題ないと思う。
^J	OK
^K			2 stroke key registered ふだん使ってるから。
^L	OK
^M	OK
^N			2 stroke key registered
^O			2 stroke key registered
^P	OK
^Q			2 stroke key registered
^R	OK
^S	OK
^T	OK
^U	OK
^V	OK
^W	OK
^X	OK
^Y	OK
^Z	OK

 ^Cと^E がおかしい、という結果でした。Vzの版の問題なのですか?
 シフト付き^Cと^Eを、僕はふだん使ってなかったから気づきませんでした。
 さらなる調査希望。

追記:^Eですが、秀丸が何を開けたかというと、コンソールファイルと思しい。

-------------------------------------------------------------------------
VTDOS Version 1.53 Copyright (C) 2009-2017 by 10#  Build[Sep  5 2017]
 以下略
-------------------------------------------------------------------------
 こんなの。
 VTDOS 版が古いです。怠惰です。
 vtdos.exe & vz.com の両方に関わってしまってる?

 おお、ファイル名は、0f5a1dbc.txt.(秀丸を閉じようとした)
 c:\Users\xxx\AppData\Local\Temp\0f5a1dbc.txt だそうです。windows の tmp
ディレクトリですね。



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

(10709) 10711Re^2: 【乞検証】現環境で出来なくなったこと  投稿者:文太   2023/03/26(日) 15:25
    10710 番 文太 さんへのコメント    コメント数 1

=== Macrotmp by B ===; on VTDOS & k07t01
;(1)
* M

60 \[CR] "" ?. #O #m	;to filer		;H_ear, OK

;(2)

55 ^QF "" ?. k20&ks, mp[, (ks&1)?{ &j(10) }	;OK, shift IME ON OK
	#F &Cr &j(-1)
	(r)?{ mp], . }
	&s (k)?#r ?#c >01

35 ^R "" ?. (ks&1)??{ #r . } c-, >00
36 ^C "" ?. (ks&1)??{ #c . } c+, >00
0:	mp[=2, &o(#r+c) >>			;shift, str srch
1:	(r)?{ &o(#c-(cm-35)) &b(2) } mp], &d
	(r)?{ &m(19) }				;「文字列が見つかりません」
	   ?{ &m("%c",cm+'÷' ) }	; ▲▽ (59:^_)('∞':↑↓)

*


 ずいぶんと先走り、端折った書き方をしたので。少しちゃんと。

 上のマクロ 60 番に、僕の環境では問題ありませんでした。ふだん \[CR] は
デフォの #n で、これにも、上の60 番マクロにも、同機能をふだん実現する
マニュアル操作の「#O #m」も問題なし。

 55 番マクロ、問題なし。
 35 番マクロ、シフトもノンシフトも問題なし。
 36 番マクロ、シフトに問題あり。よって前発言の調査となりました。


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

(10709) 10712ゴミ2  投稿者:文太   2023/03/26(日) 15:43
    10711 番 文太 さんへのコメント    コメント数 1


see #10541
 いえいえ、
>VTDOS Version 1.53 Copyright (C) 2009-2017 by 10# Build[Sep 5 2017]

 最新版でした。バーアップしたんだった。
 で、新版が来ると。EMSがフィックスされて、もしかしたら、ほぼ1年越し
の問題が解決されるかもしれないと。イエイ! そしてまたまた新しい問題が
見つかると。ふにゃ。


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

(10709) 10714on WinME  投稿者:文太   2023/03/26(日) 22:45
    10712 番 文太 さんへのコメント

 すべてのテストを正常にパスしました。vz.comもまったく同一のものです。
 VTDOS環境、というかもしかしたら、Win7 (OS) のなせる技でしょうか。
 もしかしたら、一部、その英語キーボード付きマシンの特殊性?

 なお、先ほど、^\E を再びやったら、今回は、164c11bc.txtをオープンした。
これってもしかして、Vzが作るテンポラリーファイルでしょうか? Windows
以降で、ファイル名をユニークにした奴?
 中身は、前回と同じく、vtdos 起動時のコンソールファイルの中身。でも
Vz起動前ですから(vtdos, vz起動バッチの順)、そんなものがVzの
テンポラリーファイルの「中」に書き込まれるというのは、相当に変ですね。

 なお、うちでは、.txtが「秀丸」に関連付けされているから秀丸でした。
 164c11bc.txtみたいなのをオープンせよ、という命令がOSに送られている
のだと思います。

 純DOSのテストは要らない、という判断です。
 konnoさんが手元で検証(確認)できたら、10# さんに報告してくれると助かり
ます。

 alt のテストは以下。ごめんなさい(謝ることはない)問題なしです。


=== Macrotmp by B ===; vtdos & k07t01
*M

36 @A "" ?. (ks&1)?{ &m("shift") } ?{ &m("non-shift") } .

<cut>

36 @Y "" ?. (ks&1)?{ &m("shift") } ?{ &m("non-shift") } .
36 @Z "" ?. (ks&1)?{ &m("shift") } ?{ &m("non-shift") } .;これだけwindowsに登録
							;されてるアプリに取られるけど
*							;正常です。ホットキー。
							;警告音、鳴りません。

 Windows 7 Professional Service Pack 1 (32 bit) がOSです。							


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

(10709) 10715Re: 【乞検証】現環境で出来なくなったこと  投稿者:konno   2023/03/26(日) 23:27
    10709 番 めざら さんへのコメント    コメント数 2

> (1) to Filer
> 60 \[CR] "" ?. #O #m	;to filer	;H_ear

これは単独のマクロにして試しましたが、私の環境では、全てファイラーが開きました。
VZの種類もEMSも関係ないように思われました。DEF のオプションとか環境変数とか?
わかりません。

> (2) mp0で次検索(少し長いです.ごめんなさい)
> ;= ^QF.def = H_ear mp0常用者のいきなり検索・次検索

これは VTDOSではシフト実行が上手くいかないようですね。MS-DOS Player などでは問題なし。

ふと思いついて

> 35 ^R "" ?. (ks&1)??{ #r . } c-, >00
> 36 ^C "" ?. (ks&1)??{ #c . } c+, >00
      ↓
35 ^R "" ?. k=ks&1, (k)??{ #r . } c-, >00
36 ^C "" ?. k=ks&1, (k)??{ #c . } c+, >00

このように、変数に入れたら、VTDOSでも上手く動きました。
思うに、最近のCPUは速すぎて、シフトチェックのタイミングが微妙なのかと。
この辺の調整は可能なのかもしれませんが、要望したほうが宜しいですかねぇ。
シフトチェックは変数を介したほうが確実とどこかで見たような気が。

> VTDOS 環境では,@A 等の [Alt]+[英字] キーでコマンド/マクロを実行すると
> Windows が警告音を鳴らしてくる.この現象と同根か?

[Alt]+[英字] キーはWindowsで予約されている場合がありますからねぇ。
DOSを優先にするオプションとかあったかなぁ。

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

(10709) 10716Re^2: 【乞検証】現環境で出来なくなったこと  投稿者:文太   2023/03/26(日) 23:50
    10715 番 konno さんへのコメント    コメント数 2

konnoさん

 以下は、普通に行きますか?

=== Macrotmp by B ===;
* M

36 ^C "" ?. k=ks&1, (k)?{ &m("shift") } ?{ &m("non-shift") } .
36 ^E "" ?. k=ks&1, (k)?{ &m("shift") } ?{ &m("non-shift") } .

*

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

(10709) 10718Re^3: ks&1 は変数に入れたほうが確実  投稿者:konno   2023/03/27(月) 00:05
    10716 番 文太 さんへのコメント    コメント数 1

>  以下は、普通に行きますか?
> 36 ^C "" ?. k=ks&1, (k)?{ &m("shift") } ?{ &m("non-shift") } .
> 36 ^E "" ?. k=ks&1, (k)?{ &m("shift") } ?{ &m("non-shift") } .

はい、VTDOSで普通に表示されます。
文太さんのところでも問題ないですよね?
やはりカッコに入れると上手く動かないんですかね。

STKHLP にありました。

> ※常にその時点のキーの状態を示すため、SHIFT 押下げで動作を
>  変更するマクロでは、最初に k=ks&1 のように保存しておく。

やはりこのほうが確実ということでしょうね。

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

(10709) 10720Re^4: ks&1 は変数に入れたほうが確実  投稿者:文太   2023/03/27(月) 00:26
    10718 番 konno さんへのコメント

konnoさん

>文太さんのところでも問題ないですよね?
 あります!

>やはりカッコに入れると上手く動かないんですかね。
 k に保存してもダメです。

 あいかわらず、^\E では、秀丸です!
 まいったぁぁぁぁ。

 僕のところでは(vtdos環境)、^\C と ^\E だけなので、それを避ければ
いいのですが。何だか、奇妙な制限のつく環境になってるなぁ。


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

(10709) 10722Re^3: 【乞検証】現環境で出来なくなったこと  投稿者:めざら   2023/03/27(月) 18:54
参照先:http://mezala.la.coocan.jp/
    10716 番 文太 さんへのコメント    コメント数 2

きゃー! うちも [Shift][Ctrl]E でコンソールファイルみたいなテキストファイルが
notepad(メモ帳)でオープンされたし。うわー,コマンドラインでやったことが全部ある。
ぜんぶ見えてるの,恥ずかしー。(笑)
これ VTDOS の隠しコマンドか何かでしょうかね。

^C は両方とも non-shift だと思ったら,直前のメッセージがそのままっぽいです。
k=ks&1, &t としてみたら,トレースにも入らないです。つまり,無効キー。
^E も同様にしてみたら,やはりトレースする前に例のテキストオープン。


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

(10709) 10723Re^4: 【乞検証】現環境で出来なくなったこと  投稿者:shadow   2023/03/27(月) 19:49
    10722 番 めざら さんへのコメント    コメント数 2

> これ VTDOS の隠しコマンドか何かでしょうかね。

VTDOS.TXTより引用

■ホットキー

通常モード時に次のキーに機能が割り当てられています。
キーアサインはvtdos.cfgで変更できます。

Ctrl+Alt+PageUp	バックログモードへ移行
Ctrl+Alt+.	カレントディレクトリーでWindowsシェルを起動
Shift+Ctrl+C	バックログをクリップボードへコピー
Shift+Ctrl+E	バックログの内容でエディターを起動
Shift+Ctrl+F	カレントディレクトリーでファイラーを起動

これですね。

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

(10709) 10725Re^5: 原因はVTDOSのバックログ機能だった  投稿者:konno   2023/03/27(月) 20:58
    10723 番 shadow さんへのコメント

> これですね。

おお、さすが shadowさん、私はそこまで気が回りませんでした。
私の VTDOS.CFG は
NO_BACKLOG=1
このように、バックログ機能を無効にしていたので気が付かなかったのですね。(^^;

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

(10709) 10726Re^5: 【乞検証】現環境で出来なくなったこと  投稿者:めざら   2023/03/27(月) 21:01
参照先:http://mezala.la.coocan.jp/
    10723 番 shadow さんへのコメント    コメント数 1

shadow さん,ありがとうございます!

> Shift+Ctrl+C	バックログをクリップボードへコピー
> Shift+Ctrl+E	バックログの内容でエディターを起動

これですね。全然隠しじゃなかった。
おかげでスッキリしました。 m(_'_)m
      - No.10726 -    このTreeへ    コメント元:10723 へ [リストへもどる] pre

(10709) 10727Re^6: 【乞検証】現環境で出来なくなったこと  投稿者:文太   2023/03/27(月) 21:07
    10726 番 めざら さんへのコメント    コメント数 1

shadowさん、めざらさん、

>これですね。
 ですね! ちゃんと.doc 読め。
 サーンクス! ありが10匹!
 vtdos.txt、読みまーす!

NO_BACKLOG=1
 これで、^\C & ^\E 復活。

Ctrl+Alt+.	カレントディレクトリーでWindowsシェルを起動
 これはいけるかも。"explorer here" なんですけどね。「カレント」を
編集画面で一生懸命見るのだろうか? そんなマクロを書いたことがある記憶。
どうせファイラへ行くんだろうなぁ。


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

(10709) 10728ゴミ3  投稿者:文太   2023/03/27(月) 21:18
    10727 番 文太 さんへのコメント

 ゴミ・シリーズ、お気に入りみたい。

>「カレント」を編集画面で確認するのか?

--- vz.def ---
* T テキストウィンドウ
"Open File: <$pd> [Now $wc]",76
--------------

 と設定してあると、ファイル・オープン窓の上に見えますね。
 #O で、リターンでやっぱりそのままファイラに行っちゃいそうですけど。
カレントを調節するために。ぐるぐる、ぐるぐる。


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

(10709) 10724Re^4: 【乞検証】現環境で出来なくなったこと  投稿者:めざら   2023/03/27(月) 20:51
参照先:http://mezala.la.coocan.jp/
    10722 番 めざら さんへのコメント    コメント数 1

ksmiru.def 実行してみたら,うちのシフトキーは左右とも 3 だった。。。

何故だろう。謎だ。

= ksmiru.def =
* m
89 ^\ "ksを見る";システム変数 ks の変化を見る
	?.
:A	a=ks,
	(i8){pu.i--='1'-(a&1<<(7-i))!, }	;ビット表示
	&m("ks= %3d $%02x %8s",a,a,pu)
:B	(a-ks)?>A				;ks が変化したか?
	&k (r-$1B)?>B				;ESCが押されてない?
	&m("終了")
*



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

(10709) 10729Re^5: KS のシフトチェックの値  投稿者:konno   2023/03/27(月) 22:51
    10724 番 めざら さんへのコメント    コメント数 1

> ksmiru.def 実行してみたら,うちのシフトキーは左右とも 3 だった。。。
> 何故だろう。謎だ。

VTDOS での値ですか?

> = ksmiru.def =

これいいですね。
        無入力 左シフト 右シフト
VTDOS      32   35    35
MS-DOS Player  0    3     1
DOSVAXJ3    32   35    33
Win98ME DOS窓  32   35    33

私の環境ではこうなりました。
これは、純DOS と Win窓環境の違いでしょうか。
VTDOS だけ左右が同じなんですね。仕様なのでしょうか。
実用上問題は無いですが、気になりますね。

そういえば、VTDOS環境になってから、(ks&3)? が上手く動かなくて、変数に代入するようになったような。
VTDOSは、(KS&3)? ではシフトチェックの値取得が上手くいかない時があるのでしょうか。

この辺、ダメもとで 10#さんにメールしてみようかな。

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

(10709) 10731Re^6: KS のシフトチェックの値  投稿者:めざら   2023/03/28(火) 22:04
参照先:http://mezala.la.coocan.jp/
    10729 番 konno さんへのコメント    コメント数 1

ksmiru.def は榊原さんのナイスな小物マクロです。

konno さんの環境は常に Numlock が立ってるのですね。
もしかして,本体連動しないテンキーとか接続していたりします?
(それか,デスクトップのフルキーボードって Numlock 立ってるのでしたっけ?)

     無入力 左シフト 右シフト
VTDOS   0    3     3
所期の値 0    3     1

> この辺、ダメもとで 10#さんにメールしてみようかな。

ホットキーの事例もあることだし,まずは皆さまのコメントを待ちましょうか。(笑)

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

(10709) 10732Re^7: KS のシフトチェックの値  投稿者:konno   2023/03/29(水) 02:50
    10731 番 めざら さんへのコメント    コメント数 1

> ksmiru.def は榊原さんのナイスな小物マクロです。 

そうだったのですか、2進数の表示は凄いと思いました。読めないし。(^^;

> konno さんの環境は常に Numlock が立ってるのですね。
> もしかして,本体連動しないテンキーとか接続していたりします?
> (それか,デスクトップのフルキーボードって Numlock 立ってるのでしたっけ?)

富士通の10キー付ノートPCです。Numlock が無いと使えないのです。
そうか、$20  32 は、Numlock が立っていたのですね。全然気が付きませんでした。
このマクロでの数値は

STKHLP IBM版表示 VTDOS MSDOSPlayer DOSVAXJ3
  +1 :R[Shift]   3   1     1
 +3 :L[Shift]   3   3     3
 +4 : [Ctrl]   4   4     4
 +8 : [Alt]    8   8     8
 +16: [ScLk]            16
 +32: [NmLk]   32        32
 +64: [Caps]            64
 +128: [Ins]            128


DOSVAXJ3 の [Caps] は、1度押しでIME起動、2度目以降は [Caps]ON 表示のままになります。
他のエミュでは、IME に取られるのか、表示が出ないですね。

この KS の値は、AH02 INT16h BIOSコールの値とほぼ同じですが、シフトだけ違います。
	ax$0200,&i($16) k=ax,&m("key= %04x  %d",k,k%256)	;AH02h  shift check

STKHLP IBM版表示 VTDOS MSDOSPlayer DOSVAXJ3
  +1 :R[Shift]   3   1     1
  +3 :L[Shift]   3   2     2

これは、.vz1.5 の時の値ですね、1.6 ではvzが値を変更しているのかな。
AH12 INT16h BIOSコールは、AH02 の値とほぼ同じですが、違いもあります。

81 ^^  "keyshift?"
	?.
:a
;	ax$0200,&i($16) k=ax,&m("key= %04x  %d",k,k%256)	;AH02h  shift check
	ax$1200,&i($16) k=ax,&m("key= %04x  %d",k,k%256)	;AH12h  (enh) shift check
	&w(10)
	&k (r-$1B)?>a				;ESCが押されてない?
	&m("") &d .

*

AH12h (enh) shift check では、VTDOSで
  +16: [ScLk]  
key= 1000   0
このように、ah に 10h が入りますね。微妙な違いです。(^^;


> > この辺、ダメもとで 10#さんにメールしてみようかな。
> 
> ホットキーの事例もあることだし,まずは皆さまのコメントを待ちましょうか。(笑)

メールしちゃいました。(^^;
やっぱり WinAPIの仕様らしいです。

>Win32Consoleの仕様を理解して貰えれば話は早いのですが、
>VTDOSはDOSコマンドとWin32コンソールコマンドをシームレスに扱う為に、
>Win32ConsoleをUIとすることが第一要件になってます。
>DOSキー入力の元はCONIN$からのキーイベントで、シフト状態もこれから生成しています。
>これはキューイングされたイベントなのでリアルタイムなシフト状態という訳ではありませんが、
>概ねリアルタイムな物となります。
>このキーイベントの仕様としてシフトだけが何故か左右の区別がありません。
>この仕様に則った場合、コンソールでの貼り付けが利用可能になります。
>貼り付けをサポートするのもこの仕様を採用する理由ですが、貼り付けの仕様上、
>シフト状態がリアルタイムな物である事を保証するものではありません。

仕様ということで、あとは直に変数に代入することで問題なく使えると思います。

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

(10709) 10733Re^8: KS のシフトチェックの値  投稿者:文太   2023/03/29(水) 13:27
    10732 番 konno さんへのコメント    コメント数 1

 無意味な報告ですが。WinAPI の仕様。うーん、この手のことまで
処理してくれるAPIがあるものなんだ、、、。

     無入力 左シフト 右シフト
VTDOS   0    3     3
WinME   0    3     1

 でした。上はめざらさんのほぼ丸写しですが、実験はちゃんとしてます。


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

(10709) 10735Re^9: KS のシフトチェックの値  投稿者:konno   2023/03/29(水) 22:31
    10733 番 文太 さんへのコメント    コメント数 1

>  無意味な報告ですが。WinAPI の仕様。うーん、この手のことまで
> 処理してくれるAPIがあるものなんだ、、、。

必ずしもDOSコールの上位互換ではないというところが、痛しかゆしですよね。(^^;

>      無入力 左シフト 右シフト
> VTDOS   0    3     3
> WinME   0    3     1
>  でした。上はめざらさんのほぼ丸写しですが、実験はちゃんとしてます。

確認頂きありがとうございます。やはり同じですね。

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

(10709) 10738Re^10: KS のシフトチェックの値  投稿者:文太   2023/03/29(水) 23:22
    10735 番 konno さんへのコメント

konnoさん

 深追いしてもしょうがない話ですが。

STKHLP IBM版表示 VTDOS MSDOSPlayer DOSVAXJ3
  +1 :R[Shift]   3   1     1
  +3 :L[Shift]   3   3     3

 というのを見ると、そのAPI、C++か何かで書きなおせるん
だろうな、とか空想しました。
 MSDOSPlayer, DOSVAXJ3 の作者さんも、そのAPIを使ってますよね、
きっと。
 それより、上の調査、ありがとうございました。VTDOSしか使わない
にしても、他のエミュとの比較は有効ですね。自分ではしないのだけど、、、。
たしゃぁ〜 m(__)m


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

(10709) 10721Re^2: 【乞検証】現環境で出来なくなったこと  投稿者:めざら   2023/03/27(月) 14:16
参照先:http://mezala.la.coocan.jp/
    10715 番 konno さんへのコメント

> シフトチェックは変数を介したほうが確実とどこかで見たような気が。

うーん,でも,押しっぱなしなのに ks が変わらないとしたら変ですよね。
右シフトとか左シフトとかも何かあるのかなぁ……


to Filer の方は,版とは関係がなさそうで,いよいよ闇の中です。
確かに外部マクロに切り出すと問題がなかったりするのに,
内部マクロとして記述すると「動かない」ではなく「変な動き」。

記述の場所を変えてみるとかしてみるか……
ありえないとは思いつつも,前後の改行コードが変だったりして。

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