タイトル | : 表示行数切替えマクロ v0.5 |
投稿日 | : 2023/04/24(月) 21:57 |
投稿者 | : konno | 番 号 | : 10786 コメント数 2 |
表示行数切替えマクロ v0.5 です。 === ^kl.def === DOSVAXJ3 と VTDOS 用の表示行数切替えマクロです。 各自の環境に合わせてカスタマイズしてください。(^^; ・#if 文で DOSVAXJ3 と VTDOS 用に分けているので、高橋版以降専用です。 ・コマンドラインと編集画面で使えるようになっています。 ・シフト実行で、未更新の画面パラメータを合わせます。 単独で切り替えコマンドを使った時やコンソール画面で合っていない時に使います。 ・VTDOSの切り替えはコンソールのゴミが出ないようにしたので複雑になっています。 *m 80 ^KL "表示行数切替え" ;2024-04-24 v0.5 #if 98 #66 . ;#else ; &z("lxdspd") >* #endif (s==1 || s>2)?. ;窓モードなら終了 k=ks&1, (k==1)?{w[=vp.26, &09 .};シフト実行で表テキストの設定調整 cx0, &s #if AXJ3 ; DOSVAXJ3 ※環境変数 VZSYM=AXJ3 を指定 (vp.26==106)?{&08 &00 &09 .} ;VT4の106*29行→vgaの80*25行 (vp.26==80&&lc<=25)?{&08 &01 &09 .} ;80*25行→80*44行 (vp.26==80)?{&08 &02 &09 .} ;VTの80*44行→VT2の128*44行 (vp.26<=128)?{&08 &03 &09 .} ;VT2の128*44行→VT3の160*44行 (vp.26>128)?{&08 &04 &09 .} ;VT3の160*44行→VT4の106*29行 . 00: &?("chev jp >nul") #m w[=80, ; vga 640x 480 文字 80×25 01: &?("chev vt >nul") #m w[=80, ; svga 800x 600 文字 100×37 02: &?("chev vt2 >nul") #m w[=128, ; xga 1024x 768 文字 128×48(44) 03: &?("chev vt3 >nul") #m w[=160, ; sxga 1280x1024 文字 160×64(44) 04: &?("chev vt4 >nul") #m w[=106, ; sxga24 1280x1024 文字 106×42(29) #endif #if VTDOS ; VTDOS ※環境変数 VZSYM=VTDOS を指定 (vp.26>136)?{&08 &00 &09 .} ;136*35行→80*25行 (vp.26==80 && lc<=25)?{&08 &01 &09 .} ;25行→80*35行 (vp.26<110)? { cx1, &08 &02 &09 .} ;80*35行→110*26行 ※ Win32 bug (vp.26<=110)?{&08 &03 &09 .} ;110*26行→136*35行 (vp.26<=136)?{&08 &04 &09 .} ;136*35行→168*39行 . ;Int 2F/AX=7476h/BX=0005h 画面サイズの変更 00: w[=80, dx=$5019, &05 ; 80*25 01: w[=80, dx=$5023, >05 ; 80*35 02: &00 cx0, w110, dx=$6E1A, >05 ; 110*26 ※ Win32 bug 03: w[=136, dx=$8823, >05 ; 136*35 04: w[=168, dx=$A827, >05 ; 136*35 05: ax=$7476, bx=$0005, &i($2F) ; Int 2F/AX=7476h/BX=0005h (cx==0)?{(wa==0)? &?("%c",$0a)} ; #m の代わりに LF で改行しない #endif 08: (s!=2)? #E ;コマンドラインに 09: (wa)?? { (s==2)?{ ;編集テキストが無ければ ep[-, #[ #[ ep], w], .} } ;[ESC]2回で整えて終了 (s==2)? {ep[-, #[ ep], } ;編集モードに(シフト実行時はスルー) &10 (wb)?{&s #W &10 #W } w], &d ;表/裏テキストの桁,行数調整 10: we=w, wa.55=w, wa.56=lc-2, wa.57=lc-3, wv=w>>1, wh=lc>>1, * 23-04-24 v0.5 VTDOSでの切り替えでコンソールのゴミが出ないように 23-04-22 v0.41 wv wh の画面分割パラメータ合わせた 23-04-21 v0.4 VTDOSのFコール版 23-04-21 v0.35 VTDOSのWin32バグ発覚、修正版 23-04-21 v0.34 wa.55 〜 wa.57 合わせアンダーラインカーソルも正常に 23-04-20 v0.2 VTDOS用も作ってみた。 23-04-08 v0.1 DOSVAXJ3用にとりあえず作ってみた。
- No.10786 一括表示へ - [ 返信 ] [引用無し] pre