関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Ask | msgか? (Y/N) | r=1:Yes, 0:No, -1:cancel |
引数の[number]は内部メッセージ番号に対応する.
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Beep | ビープを鳴らす | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Char | 1文字入力待ち | 破壊 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Display | 編集画面の再表示 | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Extern | マクロ文字列の実行 | サブルーチンの戻り値 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Find | 文字の検索 | r=0〜:Found, -1:Not found |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Get string | 文字列の取得 | r=0:数値でない, -1:ESC, -2:CRのみ |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Hexa | 十六進数の取得 | r=取得した整数, r=-1:16進数でない |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Interrupt | 割り込み/マシン語コード実行 | キャリーフラグ |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Japanese | 日本語FEPの制御:n=0:OFF, -1:Restore, else:ON | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Keyin | BIOSキー入力取得 | r=0:キー入力なし |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Line in | 1行入力待ち | 破壊 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Message | 書式付きメッセージ出力 | 保存 |
引数の[number]は内部メッセージ番号に対応する.
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
printf | 書式付き文字列出力 | 破壊 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Numeric | 十進数の取得 | r=取得した整数, -1:数値でない |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Output | 文字,コマンドの出力 | 破壊 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Pause | 文字,コマンドの入力待ち | r=文字 or コマンド |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Quit | ネストの1レベルスキップ | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Random | 乱数の発生 | r=0〜32767の乱数 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Silent | 画面出力の停止 | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Trace | トレースモード | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Upper | 大文字への変換 | r=文字コード |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Video | カーソル表示の制御:n=0:OFF, 1:ON | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Wait | プログラムの休止時間 time=1/60秒 | 保存 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
locate X | カーソルをx桁目へ移動 | 破壊 |
※改行より右にも移動するが,内部的には行末。
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
locate Y | カーソルをy行目へ移動 | 破壊 |
※不正な引数を与えると,実行結果は不定。
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
load macro | 外部マクロファイルのロード マクロファイル名[,番号] | 0:正常終了,else:エラーメッセージ番号 rr=ロードしたモジュールのn+1番目のマクロの実行ポインタ。 |
※cntで与えるマクロ番号は,ファイルに記述されたマクロ番号ではなく,先頭のグローバルマクロを0として数えた相対番号。
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
reset option | オプションを初期化 | 保存 |
初期化の際にpq..141(pn..-34)にあるinioptbufのテーブルを参照する。 なおVWなど一部のオプションが誤って初期化されるため,以下のように標準組込マクロを修正する必要がある。
r34&Jx, &^ Jx|=r, &d #] ;プッシュポップはsp(マクロスタックポインタ)初期化で不可
次のような別法もある。
&Sm(pq..149,pc+238,100) ps[, mp[, ;○ ;; ほげほげ mp], ps], &Sm(pc+238,pq..149,100) &Sm(pq..149,pc+238,100) ps[, mp[, ;× ;; ほげほげ &Sm(pc+238,pq..149,100) mp], ps], ;プッシュポップはsp初期化で不可
コマンド関数略称 | 機能 | 戻り値 |
---|---|---|
mc_pageup | n行ページアップ | ? |
コマンド関数略称 | 機能 | 戻り値 |
---|---|---|
mc_pagedn | n行ページダウン | ? |
コマンド関数略称 | 機能 | 戻り値 |
---|---|---|
se_textend | ファイルの最終行へ移動 | ? |
!Openイベント中に#42(#_)が記述できないという制限のために新設された。通常は#42(#_)を使って差し支えない。
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_lastpos | n番のマーク位置へジャンプ n=0〜4 | ? |
マーク位置は4バイトのロング整数でテキスト構造体内部に記録されるため,各テキスト毎に5箇所設定できる。ただしマーク0はコマンド#43(#U)とその他のジャンプコマンドの戻り先として共用されているため注意を要する。
マーク番号 | 格納アドレス |
---|---|
0 | wa+126 |
1 | wa+130 |
2 | wa+134 |
3 | wa+138 |
4 | wa+142 |
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_markpos | カーソル位置マーク n=0〜4 | ? |
マーク位置は4バイトのロング整数でテキスト構造体内部に記録されるため,各テキスト毎に5箇所設定できる。ただしマーク0はコマンド#44(#M)とその他のジャンプコマンドの戻り先として共用されているため注意を要する。
マーク番号 | 格納アドレス |
---|---|
0 | wa+126 |
1 | wa+130 |
2 | wa+134 |
3 | wa+138 |
4 | wa+142 |
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_jumpnum | nで指定した行番号の行へ移動 | ? |
引数nは移動先の行番号を与えるが,Dnの設定に依存する。
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_clrstack | テキストスタックのアドレスp以降をクリア | 0:すべてクリア |
引数pは再設定するkpということになる。通常はすべてクリアするために0を与えるが,テキストスタックの構造を理解すれば,特定の位置以降をクリアしたり,popする前の位置に復帰させたりすることもできる。
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_chgtext | 編集テキストの変更 n=編集テキスト番号/テキストID | ? |
引数nはwnを与えるが,wcの値を超えて与えると1に丸められる。
負の値でIDを指定することもできる。複数のテキストをオープン・クローズするときは,値が変動するwnよりもIDを与える方が確実に特定のファイルに切り替えることができる。
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_splitmode | 画面分割モードの変更 n=0,2〜5 | ? |
引数にはwtに対応する数値を与える。
値 | 画面分割モードとアクティブ・ウィンドウ |
---|---|
0 | 全画面 |
2 | 上下分割の上 |
3 | 上下分割の下 |
4 | 左右分割の左 |
5 | 左右分割の右 |
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_chgindent | スペース・タブの挿入 n=指定桁位置 | ? |
指定する桁位置までスペースあるいはタブを挿入する。挿入される文字はEuに依存し,htによる剰余分はスペースになる。
lx>nの場合は何もしない。最も注意すべきことは,En無効の環境ではnが論理行末の桁より大きくても挿入が行われない可能性があるという点である。論理行末より右で実行する場合は,#12(#>),#29(#?)等でカーソル位置を更新しておかないと所期の動作を得られない。
実行すると行バッファをクリアして修正フラグを立てる。
コマンド関数略称 | 機能・引数 | 戻り値 |
---|---|---|
mc_recust | モジュールの再カスタマイズ n=0 | ? |
コマンド#80(#K)「再カスタマイズ」のモジュール対応版。v1.6以降はコマンド関数を使用すること。
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_memcpy | ポインタpからqへnバイトコピー | ? |
※上書きなのでヒストリーバッファを対象とするときは注意が必要。ヒストリーは破壊される。
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strcpy | 文字列pをqへ[最大nバイト]コピー | r=コピー先の末尾ポインタ |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strcat | 文字列pを文字列qの後ろへ[最大nバイト]連結 | r=連結先の末尾ポインタ |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strcmp | 文字列pと文字列qを比較 | r=0:equal, 1:not equal |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_stricmp | 文字列pと文字列qをIgnore Caseで比較 | r=0:equal, 1:not equal |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strchr | 文字列pの中で文字cをサーチ | r=found ptr, 0:not found |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strichr | 文字列pの中で文字cをIgnore Caseでサーチ | r=found ptr, 0:not found |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strstr | 文字列pの中で文字列qをサーチ | r=found ptr, 0:not found |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_stristr | 文字列pの中で文字列qをIgnore Caseでサーチ | r=found ptr, 0:not found |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
strupr | 文字列pの英小文字を大文字に変換 | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
strlwr | 文字列pの英大文字を小文字に変換 | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_strlen | 文字列の長さ | r=バイト数 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_wrdlen | 文字列pのスペース/タブまでの文字数 | r=バイト数 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_skipspc | ポインタpからスペース/タブをスキップ | r=次の文字のポインタ |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_histcpy | 文字列pをヒストリーバッファqへ格納 [,1]指定時はファイルクローズ時と同じ方法で格納 | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_getenv | 環境変数pの内容をポインタqへ格納 | r=0:not found, else:found(コピー先の末尾) |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
sx_sprintf | 書式pの出力をポインタqへ格納 | ? |
関数略称 | 機能・引数 | 戻り値 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
sx_parsepath | パス名pを解析 |
|
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Equ long | ロング整数の代入 *p=*q(long *p, *q) | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Add long | ロング整数の加算 *p+=*q | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Sub long | ロング整数の減算 *p-=*q | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Cmp long | ロング整数の比較 *p:*q | r=0:*p==*q, 1:*p>*q, -1:*p<*q |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Add long,int | ロング整数に整数を加算 *p+=n | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Sub long,int | ロング整数から整数を減算 *p-=n | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Mul long,int | ロング整数に整数を乗算 *p*=n | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
Div long,int | ロング整数を整数で除算 *p/=n | r=mod(剰余) |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
fx_filer | パスマスクpでファイラー起動 | r=選択ファイル数 |
※この関数にファイルをオープンする機能はない
操作後fg.1+を実行してパス・マスクを初期化すること
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
fx_mbar | 文字cをメニューバー内でサーチ | r=-1:not found, else:r番目のメニュー |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
fx_initpool | 選択された最初のファイルへ | r=選択されているファイルの数 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
fx_nextpool | 選択された次のファイルへ | r=0:no more files |
関数略称 | 機能・引数 | 戻り値 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
fx_getpool | 選択されたファイル名をポインタqへ格納 [,1]指定時は常にフルパスで格納 |
r=ファイルの属性
|
関数略称 | 機能 | 戻り値 |
---|---|---|
emac_sedit | 編集モードになるまで次の命令を実行しない | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
zx_delmacro | モジュールの削除:n=モジュール番号 or モジュール名ポインタ | r=0:deleted, 1:not deleted |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
zx_schmodule | モジュールのサーチ | r=0:not found, else:found rr=見つかったモジュールのn+1番目のマクロの実行ポインタ |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
zx_macload | モジュールの検索,なければロード p=モジュール名,n=検索するグローバルマクロ番号 | r=0:正常終了, else:エラーメッセージ番号 rr=ロードしたモジュールのn番のグローバルマクロの実行ポインタ |
※高橋版の追加関数
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
zx_library | ライブラリモジュールのグローバルマクロを検索 p=グローバルマクロ名 | r=0:not found, else:found rr=マクロの実行ポインタ |
タイトル p のグローバルマクロを,モジュールオプション Libraryの付いたモジュール内で検索する。呼び出されるマクロのタイトルは'*' で始まっている必要があるが,&Zl() の引数の先頭には '*' は付けない。見つかった場合,マクロの実行ポインタを rr に返す。タイトル p のグローバルマクロが複数ある場合,後から組み込まれたマクロを優先する。
※DANNY版の追加関数
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
zx_malloc | マクロモジュールの確保 p=マクロモジュール名, n=サイズ | r=0:正常終了, else:エラー rr=ダミーマクロの先頭ポインタ |
名前 p のマクロモジュールを n バイト確保し,モジュールオプション Temporary を付加する。サイズ n を省略,もしくは同名のモジュールが存在する場合は,rr を再設定する。マクロ終了時,Temporary モジュールは削除される。
※DANNY版の追加関数
関数略称 | 機能 | 戻り値 |
---|---|---|
get_blkm | テキストスタックの先頭のブロックモード | r=0:行, 1:行ブロック, 2:文字ブロック, else:矩形ブロック |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
jx_iskanji | 2バイト文字の先頭文字の判断 | r=0:1バイト文字, 1:2バイト文字 |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
jx_cvtkana | カナロック時の半角カナから英字への変換 | r=chr |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
jx_nthctype | アドレス指定の文字タイプチェック [tVZ 03f1] | r=1:漢字2バイト目, 0:それ以外 |
※高橋版の追加関数(開発途中で関数シンボルが変更されている)
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
ex_emsalloc | EMSメモリの割り当て:n=ページ数 | r=EMSのハンドル, 0:エラー |
※製品版VZではファイラーでEMSを使用できないらしい。(高橋洋光)
EMSを操作する手順は,メモリの割当,マッピング,メモリの開放。
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
xmem_free | EMSメモリの解放:h=EMSのハンドル | ? |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
ex_emsmap | EMSメモリのマッピング:h=EMSのハンドル [,1]を指定した場合は後ろの2フレームへマッピング | r=フレームのセグメント |
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
lx_gethexl | 十六進数(ロング)の取得 | r=常に0 |
※高橋版の追加関数
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
lx_getdecl | 十進数(ロング)の取得 | r=常に0 |
※高橋版の追加関数
関数略称 | 機能・引数 | 戻り値 |
---|---|---|
tx_textsize | pのテキストレコードポインタのファイルサイズ取得 | dx:ax=filesize |
※高橋版の追加関数
&a(number) / &m(number) 関数の引数に対応するメッセージ.
番号 | 出力内容 |
---|---|
1 | [%filename%],'は見つかりません. 新規ファイルです' |
2 | [%filename%],'は入力できません' |
3 | [%filename%],'は出力できません' |
4 | 'テンポラリファイルエラー' |
5 | 'ラインバッファがいっぱいです' |
6 | 'オープンできません' |
7 | 'ディスクがいっぱいです' |
8 | 'テキスト領域がいっぱいです' |
9 | 'ブロックが大きすぎます' |
10 | 'メモリが足りません' |
11 | 'バッファがいっぱいです' |
12 | 'COMMAND.COMを起動できません' |
13 | 'カスタマイズエラー' |
14 | [%filename%],'を出力します' |
15 | [%filename%],'を出力中 ...' |
16 | '修正テキストを出力します' |
17 | 'テキストスタックを消去します' |
18 | 'エディタを終了します' |
19 | '文字列が見つかりません' |
20 | '全部一度に置換します' |
21 | '置換します' |
22 | '%5u 個の文字列を置換しました' |
23 | 'カーソルキーで位置を移動して[リターン]' |
24 | '一致しました' |
25 | '相違があります' |
26 | '括弧が見つかりません' |
27 | [%filename%],'はオープンされています' |
28 | 'マークしました' |
29 | '%5u 項目読み込みました.(%d bytes free)' |
30 | [%filename%],'はすでに存在します' |
31 | [%filename%],'は無効なパス名です' |
32 | [%filename%],'はリードオンリーです' |
33 | '新規ファイルです' |
34 | [%filename%],'はすでに存在します. 出力します' |
35 | [%filename%],'は存在しません. 新たに作成します' |
36 | '変更できません' |
37 | '編集テキストを放棄します' |
38 | '%u 個のファイルを削除します.よろしいです' (※v1.0 はメニューにおけるスイッチの表示「OFF ON」) |
39 | 'EXITでエディタへ戻ります' |
40 | '指定が違います' |
41 | '準備ができていません' |
42 | 'ハードエラー#%dです' |
43 | 'ドライブ%c:の' |
44 | '(Abort/Retry)?' |
46 | 'PCS□' |
&m() &a() &?() &Sp(p,q,...) で使用可能な書式制御文字は以下の通り。
%[-][0][n][,][l]{d|u|x|c|s} %[-][0][*][n][,][l][F]{b|d|u|x|c|s} (高橋版)
・次の書式指定によって出力形式を制御する。
%d | 符号付き十進数として出力(-32768〜32767) |
|
---|---|---|
%u | 符号なし十進数として出力(0〜65535) |
|
%x | 十六進数として出力(0h 〜 FFFFh) |
|
%c | 文字として出力(漢字対応)★ |
★下位バイトが 00 のものを %c で出力すると,00(ヌル) で後続文字列が切れる。 |
%s | 指定ポインタ以降を文字列として出力 |
|
%b | ビット表示で出力(高橋版) |
|
%F | ワークのセグメント以外の文字列を取得・表示(高橋版) 引数は,オフセット, セグメント の順に指定する。 |
|
・各制御文字には次のオプション指定が可能。
n | フィールド幅の指定 |
(指定した桁数に納まらなければ無効) |
---|---|---|
- | 左詰めで出力(通常は右詰め) |
|
0 | 先行 0 詰めを行う |
|
l | 2つのパラメータを合わせてロング整数を出力 |
|
, | 3桁ごとに ',' を挿入 |
|
* | 最小フィールド幅を変数で指定(高橋版) |
|