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

タイトル 表示行数切替えマクロ 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


- 関連一覧ツリー (先頭の番号をクリックするとツリー全体を一括表示します)
10786.表示行数切替えマクロ v0.5 - konno 23/04/24-21:57
  ┣10787.Re: 表示行数切替えマクロ v0.5 - shadow 23/04/25-13:09
  ┃┗10788.DOSVAXJ3版で画面にゴミが表示される? - konno 23/04/25-19:54
  ┃ ┣10789.Re: DOSVAXJ3版で画面にゴミが表示される? - shadow 23/04/25-21:01
  ┃ ┃┗10790.Re^2: DOSVAXJ3版で画面にゴミが表示される? - konno 23/04/25-22:50
  ┃ ┃ ┗10791.Re^3: DOSVAXJ3版で画面にゴミが表示される? - shadow 23/04/26-09:26
  ┃ ┃  ┗10792.Re^4: DOSVAXJ3版の仕様かマクロ不具合か - konno 23/04/26-17:19
  ┃ ┗10794.DOSVAXJ3の編集画面でゴミが表示される件 - konno 23/04/26-20:35
  ┃  ┣10796.Re: DOSVAXJ3の編集画面でゴミが表示される件 - shadow 23/04/27-09:31
  ┃  ┃┗10798.Re^2: DOSVAXJ3の編集画面でゴミが表示される件 - konno 23/04/27-17:57
  ┃  ┗10808.DOSVAXJ3で画面切り替えマクロの起動キー - konno 23/04/29-17:49
  ┗10793.表示行数切替えマクロ v0.52 DOSVAXJ3差替え - konno 23/04/26-17:25
   ┗10795.Re: 表示行数切替えマクロ v0.52 DOSVAXJ3差替え - shadow 23/04/27-08:52
    ┗10797.Re^2: 表示行数切替えマクロ v0.52 DOSVAXJ3差替え - konno 23/04/27-17:55

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

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