home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 August / VPR9708A.ISO / OLS / DOS / WTDOC902 / wtdoc902.lzh / WMACRO.DOC < prev    next >
Text File  |  1997-02-08  |  390KB  |  9,650 lines

  1.                                                                                
  2.                                                                                
  3.                                                                                
  4.               通信ソフト  WTERM      PC98/EPSONシリーズ                       
  5.                           WTERM      J3100/J3300/DynaBOOK                    
  6.                           WTERM      DOS/V AT AX IBM-5550-S/T/V/W          
  7.                           WTERM      FMR50/70/FM-TOWNS/Panacom M            
  8.                           WTERM      IF-800 NTT/BS21                          
  9.                                                                                
  10.                         【   マクロ機能説明書   】                             
  11.                                                                                
  12.                                                                                
  13.                                                                                
  14.                                                                                
  15.                                                                                
  16.                                                                                
  17.                                                                                
  18.                                                                                
  19.                                                                                
  20.                                                                                
  21.                                                                                
  22.                                                                                
  23.                                                                                
  24.                                                                                
  25.                                                                                
  26.                                                                                
  27.                                                                                
  28.                                                                                
  29.                                                                                
  30.                                                                                
  31.                                                                                
  32.                    ・・・・・・・・・・・・・ 1997年02月08日 ・・・・・・・・・・・・・                  
  33.                                                                                
  34.                                                                                
  35.                                                                                
  36.                                                                                
  37.                                                                                
  38.                                                                                
  39.                                                                                
  40.                                                                                
  41.                                                                                
  42.                                                                                
  43.                                                                                
  44.                                                                                
  45.                                                                                
  46.                                                                                
  47.                                                                                
  48.                                                                                
  49.                                                                                
  50.                                                                                
  51. ======================================================================== [0051]
  52.                                 目            次                   行数 LINE No
  53. ===============================================================================
  54.                                                                                
  55.   【ご挨拶】                                                        698        
  56.                                                                                
  57.   【 謝辞 】                                                        708        
  58.                                                                                
  59.   【第 1章】  マクロの使用方法  及び  実行方法                      727        
  60.                                                                                
  61.               呼びだし方法                                          739        
  62.                                                                                
  63.               中断もしくは、中止方法                                814        
  64.                                                                                
  65.   【第 2章】  マクロをデバッグする方へ                              832        
  66.                                                                                
  67.   【第 3章】  マクロの制限事項について                              940        
  68.                                                                                
  69.   【第 4章】  実行時また実行中のエラーについて                      990        
  70.                                                                                
  71.   【第 5章】  ラベルとコメントについて                             1292        
  72.                                                                                
  73.   【第 6章】  マクロ中に使用できる  変数について                   1348        
  74.                                                                                
  75.   【第 7章】  マクロの作り方入門                                   1463        
  76.                                                                                
  77.                1. マクロとは                                       1467        
  78.                                                                                
  79.                2. 実際に使ってみよう                               1489        
  80.                                                                                
  81.                3. さらに発展させて                                 1588        
  82.                                                                                
  83.                4. まとめ                                           1743        
  84.                                                                                
  85.   【第 8章】  マクロハイテク講座                                   1811        
  86.                                                                                
  87.                1. イベントドリブン                                 1816        
  88.                                                                                
  89.                2. 多方向分岐                                       1875        
  90.                                                                                
  91.                3. 選択項目の検査                                   1927        
  92.                                                                                
  93.                4. 動的実行制御                                     1977        
  94.                                                                                
  95.                5. フラグを使う                                     2050        
  96.                                                                                
  97.                   A) 変数の特定の位置にフラグを納める              2069        
  98.                                                                                
  99.                   B) 名前を使った方法                              2098        
  100.                                                                          [0100]
  101.                6. 時間監視                                         2146        
  102.                                                                                
  103.                7. 末尾最適化                                       2204        
  104.                                                                                
  105.                8. マクロファイルのサブルーチン呼び出し             2261        
  106.                                                                                
  107.                   A) マクロの切り替え命令(CHAIN)                 2275        
  108.                                                                                
  109.                   B) 外部マクロの実現方法                          2297        
  110.                                                                                
  111.                   C) 外部マクロの実装                              2310        
  112.                                                                                
  113.                9. マクロテクニックいろいろ                         2355        
  114.                                                                                
  115.                   A) リターン値                                    2358        
  116.                                                                                
  117.                   B) 引用に気を付けろ                              2386        
  118.                                                                                
  119.                   C) 前方一致の検査                                2446        
  120.                                                                                
  121.                   D) A または B                                    2461        
  122.                                                                                
  123.                   E) 引用に気を付けろ 2                            2474        
  124.                                                                                
  125.                   F) 文字列エスケープは大変だ                      2499        
  126.                                                                                
  127.                   G) 禁断の反則技 (^_^;)                           2592        
  128.                                                                                
  129.               10. 高速テキスト送信テクニック                       2625        
  130.                                                                                
  131.                   A) シンプルテキスト送信                          2645        
  132.                                                                                
  133.                   B) テキスト送信の高速化                          2687        
  134.                                                                                
  135.               11. 最後に                                           2751        
  136.                                                                                
  137.   【第 9章】  マクロ  コマンド(パラメーター)説明                 2808        
  138.                                                                                
  139.           ADD(変数1,変数2または文字列2,変数3または文字列3)         2898        
  140.                                                                                
  141.           APS(変数,全長数,R(ight右寄せ) か L(eft左寄せ))           2925        
  142.                                                                                
  143.           AUTOUD(ON,OFF)                                           2952        
  144.                                                                                
  145.           BELL(文字列または変数,文字列または変数,文字列または変数) 2981        
  146.                                                                                
  147.           BLINK(色指定,BLINK回数,間隔)                             3001        
  148.                                                                                
  149.           BREAK                                                    3033        
  150.                                                                          [0150]
  151.           CALL(ラベル)                                             3046        
  152.                                                                                
  153.           CALL(ラベル,変数1,変数2または文字列)                     3046        
  154.                                                                                
  155.           CASE                                                     3077        
  156.                                                                                
  157.           CAT(変数1,変数2または文字列1)                            3087        
  158.                                                                                
  159.           CAT(変数1,変数2または文字列1,変数3または文字列2)         3087        
  160.                                                                                
  161.           CDCHK(ON,OFF)                                            3117        
  162.                                                                                
  163.           CHAIN(変数1またはファイル名)                             3129        
  164.                                                                                
  165.           CHAIN(変数1またはファイル名,変数2または文字列)           3129        
  166.                                                                                
  167.           CHANGE(変数1,置換前文字列または変数2,変数3)              3159        
  168.                                                                                
  169.           CHANGE2(変数,置換前文字列または変数2,変数3)              3198        
  170.                                                                                
  171.           CHILD(変数1または文字列1)                                3231        
  172.                                                                                
  173.           CHILD(変数1または文字列1,変数2,文字列2または変数3)       3231        
  174.                                                                                
  175.           CHKPATH(変数1または文字列,変数2)                         3327        
  176.                                                                                
  177.           CLS                                                      3345        
  178.                                                                                
  179.           COLOR(変数)                                              3360        
  180.                                                                                
  181.           COMMODE(文字列)                                          3389        
  182.                                                                                
  183.           CONVERT(ON,OFF)                                          3420        
  184.                                                                                
  185.           COPY(変数または文字列,指定開始数値,複写終了文字数数値)   3441        
  186.                                                                                
  187.           CRT(ON,OFF)                                              3476        
  188.                                                                                
  189.           CUTFILE(変数1または文字列1,変数2または文字列2,変数3)     3505        
  190.                                                                                
  191.           DATE(変数,区分挿入文字列[任意])                          3555        
  192.                                                                                
  193.           DATEADD(変数1,区分挿入文字列(任意),変数2または文字列)    3593        
  194.                                                                                
  195.           DATESUB(変数1,区分挿入文字列(任意),変数2または文字列)    3633        
  196.                                                                                
  197.           DEL(変数,削除開始数値,削除文字分数数値)                  3680        
  198.                                                                                
  199.           DELAY(文字列または変数)                                  3710        
  200.                                                                          [0200]
  201.           DELAY(文字列または変数)                                  3728        
  202.                                                                                
  203.           DELFILE(変数または文字列)                                3749        
  204.                                                                                
  205.           DELSPACE(変数1,変数2)                                    3770        
  206.                                                                                
  207.           DISKSIZE(変数1,変数2または文字列)                        3790        
  208.                                                                                
  209.           DISKFSIZE(変数1,変数2または文字列)                       3822        
  210.                                                                                
  211.           DIV(変数1,変数2 or 文字列2,変数3 or 文字列3)             3854        
  212.                                                                                
  213.           DOWNLOAD(番号,ファイル名) No  1 - No  6                  3883        
  214.                                                                                
  215.           DOWNLOAD(番号)            No  7 - No 14,No 21,No 23      3883        
  216.                                                                                
  217.           DOWNLOAD(番号,MODE)       No 99                          3883        
  218.                                                                                
  219.           ELSE                                                     4003        
  220.                                                                                
  221.           END                                                      4011        
  222.                                                                                
  223.           ESCEXIT(ON,OFF)                                          4020        
  224.                                                                                
  225.           EXIT                                                     4047        
  226.                                                                                
  227.           EXIT(変数または文字列)                                   4047        
  228.                                                                                
  229.           EXIT(変数1または文字列1,変数2または文字列2)              4047        
  230.                                                                                
  231.           FCLOSE                                                   4123        
  232.                                                                                
  233.           FCOPY(変数1または文字列1,変数2または文字列2)             4138        
  234.                                                                                
  235.           FCOPY(変数1 or 文字列1,変数2 or 文字列2,変数3 or 字列3)  4138        
  236.                                                                                
  237.           FDIR(変数1または文字列1,変数2または文字列2)              4189        
  238.                                                                                
  239.           FDIR(変数1 or 文字列1,変数2 or 文字列2,変数3 or 文字列3) 4189        
  240.                                                                                
  241.           FDIRA(変数1または文字列1,変数2または文字列2)             4253        
  242.                                                                                
  243.           FDIRA(変数1 or 文字列1,変数2 or 文字列2,変数3 or 文字列3)4253        
  244.                                                                                
  245.           FEXPAND(変数)                                            4313        
  246.                                                                                
  247.           FILESIZE(変数1または文字列,変数2)                        4334        
  248.                                                                                
  249.           FILETIME(変数1,変数2または文字列)                        4357        
  250.                                                                          [0250]
  251.           FILER(ファイル名,変数)                                   4381        
  252.                                                                                
  253.           FILER(ファイル名,変数,ラベル)                            4381        
  254.                                                                                
  255.           FLHA(変数1 or 文字列1,変数2 or 文字列2,変数3 or 文字列3) 4432        
  256.                                                                                
  257.           FLINE(ファイル名,変数)                                   4481        
  258.                                                                                
  259.           FMOVE(変数1または文字列1,変数2または文字列2)             4519        
  260.                                                                                
  261.           FOPEN(ファイル名)                                        4580        
  262.                                                                                
  263.           FOPEN(ファイル名,ラベル)                                 4580        
  264.                                                                                
  265.           FPOINT(変数1)                                            4615        
  266.                                                                                
  267.           FPOINT(変数1,変数2または文字列)                          4615        
  268.                                                                                
  269.           FREAD(変数名)                                            4666        
  270.                                                                                
  271.           FREAD(変数名,ラベル)                                     4666        
  272.                                                                                
  273.           FREN(変数1または文字列1,変数2または文字列2)              4705        
  274.                                                                                
  275.           FRENAME(変数または文字列)                                4739        
  276.                                                                                
  277.           FSEARCH(変数1,変数2)                                     4761        
  278.                                                                                
  279.           FSPLIT(変数1,変数2,変数3)                                4787        
  280.                                                                                
  281.           FTYPE(変数1または文字列1,変数2または文字列2)             4816        
  282.                                                                                
  283.           FTYPEA(変数1または文字列1,変数2または文字列2)            4853        
  284.                                                                                
  285.           GET(変数,長さ)                                           4890        
  286.                                                                                
  287.           GETC(変数,文字または文字列)                              4905        
  288.                                                                                
  289.           GETC(変数,文字または文字列,"+")                          4905        
  290.                                                                                
  291.           GETC(変数,文字または文字列,+時間)                        4905        
  292.                                                                                
  293.           GETC(変数,文字または文字列,監視時間)                     4905        
  294.                                                                                
  295.           GETCRTS(変数,変数2または文字列)                          4947        
  296.                                                                                
  297.           GETDATAD(変数)                                           4967        
  298.                                                                                
  299.           GETDIR(変数,変数または文字列)                            4986        
  300.                                                                          [0300]
  301.           GETDOWND(変数)                                           5020        
  302.                                                                                
  303.           GETENV(変数,変数または文字列)                            5039        
  304.                                                                                
  305.           GETID(変数)                                              5066        
  306.                                                                                
  307.           GETLOGD(変数)                                            5084        
  308.                                                                                
  309.           GETMACROD(変数)                                          5103        
  310.                                                                                
  311.           GETMACROD(変数,変数2)                                    5103        
  312.                                                                                
  313.           GETMRES(変数)                                            5132        
  314.                                                                                
  315.           GETS(変数,文字または文字列)                              5154        
  316.                                                                                
  317.           GETS(変数,文字または文字列,"+")                          5154        
  318.                                                              
  319.           GETS(変数,文字または文字列,+時間)                        5154
  320.  
  321.           GETS(変数,文字または文字列,監視時間)                     5154
  322.  
  323.           GETTXUPD(変数)                                           5196
  324.  
  325.           GETUPD(変数)                                             5215
  326.  
  327.           GETUSERD(変数1,変数2または文字列)                        5234
  328.  
  329.           GETUSERD(変数1,変数2または文字列,変数3または文字列)      5234
  330.  
  331.           GOTO(ラベル名)                                           5358
  332.  
  333.           GOTO(ラベル名,変数1,変数2または文字列)                   5358
  334.  
  335.           HANGUP                                                   5386
  336.  
  337.           HANGUPT(文字列または変数)                                5401
  338.  
  339.           HANGUPT(文字列または変数,ラベル)                         5401
  340.  
  341.           IF<(変数1,変数2または数字文字列)                         5460
  342.  
  343.           IF<>(変数1,変数2または文字列)                            5484
  344.  
  345.           IF>(変数1,変数2または数字文字列)                         5508
  346.  
  347.           IFE(変数1,変数2または数字文字列)                         5532
  348.  
  349.           IFE<(変数1,変数2または数字文字列)                        5556
  350.                                                                          [0350]
  351.           IFE>(変数1,変数2または数字文字列)                        5580
  352.  
  353.           IFFILEN(変数または文字列)                                5603
  354.  
  355.           IFFILEY(変数または文字列)                                5627
  356.  
  357.           IFSRCHN(変数1,比較文字列または変数2)                     5654
  358.  
  359.           IFSRCHY(変数1,比較文字列または変数2)                     5677
  360.  
  361.           INPUT(変数1)                                             5701
  362.  
  363.           INPUT(変数1,変数2または文字列2)                          5701
  364.  
  365.           INPUT(変数1,変数2または文字列2,変数3または文字列3)       5701
  366.  
  367.           INPUTF(変数,文字列)                                      5827
  368.  
  369.           INPUTF(変数,文字列1,文字列2)                             5827
  370.  
  371.           INS(変数1,挿入開始数値,挿入文字列または変数2)            5878
  372.  
  373.           ISKANJI(文字列または変数1,変数2または文字列2,変数3)      5901
  374.  
  375.           JUMP<(変数1,変数2または数字文字列,ラベル)                5931
  376.  
  377.           JUMP<>(変数1,比較文字列または変数2,ラベル)               5954
  378.  
  379.           JUMP>(変数1,変数2または数字文字列,ラベル)                5977
  380.  
  381.           JUMPE(変数1,比較文字列または変数2,ラベル)                6000
  382.  
  383.           JUMPE<(変数1,変数2または数字文字列,ラベル)               6032
  384.  
  385.           JUMPE>(変数1,変数2または数字文字列,ラベル)               6055
  386.  
  387.           JUMPFILEN(変数または文字列,ラベル)                       6078
  388.  
  389.           JUMPFILEY(変数または文字列,ラベル)                       6102
  390.  
  391.           JUMPSRCHN(比較元文字列または変数1,変数2,ラベル)          6126
  392.  
  393.           JUMPSRCHY(比較元文字列または変数1,変数2,ラベル)          6151
  394.  
  395.           LAPTIME(変数1,変数2)                                     6176
  396.  
  397.           LASTDATE(変数,区分挿入文字列[任意])                      6200
  398.  
  399.           LASTTIME(変数,区分挿入文字列[任意])                      6241
  400.                                                                          [0400]
  401.           LASTSTIME(変数,区分挿入文字列[任意])                     6282
  402.  
  403.           LEFT(変数1,左側よりカット指定(文字数または変数2))        6323
  404.  
  405.           LEFT(変数1,左側よりカット指定(文字数または変数2),変数3)  6323
  406.  
  407.           LENGTH(変数1,変数2)                                      6360
  408.  
  409.           LOGCLOSE                                                 6379
  410.  
  411.           LOGOPEN(変数または文字列)                                6394
  412.  
  413.           LOGTIME(変数,区分挿入文字列[任意])                       6493
  414.  
  415.           LOWCASE(変数1,変数2)                                     6536
  416.  
  417.           MACROVER(変数)                                           6556
  418.  
  419.           MAKERB(変数1,変数2)                                      6587
  420.  
  421.           MASKCRT(ON,OFF)                                          6637
  422.  
  423.           MDUMP(変数または文字列)                                  6659
  424.  
  425.           MDUMP(変数または文字列,変数 2または文字列)               6659
  426.  
  427.           MKDIR(変数または文字列)                                  6710
  428.  
  429.           MOD(変数1,変数2または文字列2,変数3または文字列3)         6732
  430.  
  431.           MUL(変数1,変数2または文字列2,変数3または文字列3)         6762
  432.  
  433.           NJUMP(変数または文字列,ラベル)                           6784
  434.  
  435.           OFF                                                      6819
  436.  
  437.           OCLOSE                                                   6831
  438.  
  439.           OOPEN(ファイル名)                                        6848
  440.  
  441.           OOPEN(ファイル名,ラベル)                                 6848
  442.  
  443.           OPENCHK(変数,文字列または変数名)                         6884
  444.  
  445.           OREAD(変数名)                                            6924
  446.  
  447.           OREAD(変数名,ラベル)                                     6924
  448.  
  449.           PAUSE                                                    6964
  450.                                                                          [0450]
  451.           PAUSE(変数または文字列)                                  6964
  452.                                                                      
  453.           PAUSE(変数1または文字列1,変数2または文字列2)             6964
  454.  
  455.           PICKWORD(変数1,変数2,変数3または文字列3[区切り文字])     7010
  456.  
  457.           POS(変数1,変数2または文字列,検索文字)                    7051
  458.  
  459.           PRINT(変数または文字列)                                  7081
  460.  
  461.           PRINT(変数1または文字列1,変数2または文字列2)             7081
  462.  
  463.           PRINTCR(変数または文字列)                                7121
  464.  
  465.           PRINTCR(変数1または文字列1,変数2または文字列2)           7121
  466.  
  467.           PRINTER(ON,OFF)                                          7160
  468.  
  469.           QUIT                                                     7184
  470.  
  471.           QUIT(文字列または変数)                                   7184
  472.  
  473.           RCLOSE                                                   7210
  474.  
  475.           RETURN                                                   7223
  476.  
  477.           RIGHT(変数1,右側よりカット指定(文字数または変数2))       7245
  478.  
  479.           RIGHT(変数1,右側よりカット指定(文字数または変数2),変数3) 7245
  480.  
  481.           ROPEN(ファイル名)                                        7282
  482.  
  483.           ROPEN(ファイル名,ラベル)                                 7282
  484.  
  485.           RPOINT(変数1)                                            7318
  486.  
  487.           RPOINT(変数1,変数2または文字列)                          7318
  488.  
  489.           RREAD(変数名)                                            7370
  490.  
  491.           RREAD(変数名,ラベル)                                     7370
  492.  
  493.           SAVEWDAT(変数1,変数2または文字列,変数3または文字列)      7401
  494.  
  495.           SAVEW5B(変数1または文字列1,変数2または文字列2,変数3)     7474
  496.  
  497.           SAVEW5D(変数1または文字列1,変数2または文字列2,変数3)     7502
  498.  
  499.           SEND(文字列または変数)                                   7531
  500.                                                                          [0500]
  501.           SEND(文字列,文字列2または変数2)                          7531
  502.  
  503.           SEND(文字列,文字列2または変数2,文字列3または変数3)       7531
  504.  
  505.           SETTIME                                                  7596
  506.  
  507.           SMENU(変数1,変数2,変数3)                                 7614
  508.  
  509.           STIMEOUT(文字列または変数,ラベル)                        7708
  510.                                                                     
  511.           STRCAT(変数,変数または文字列)                            7747
  512.  
  513.           STRCAT(変数1,変数2または文字列2,変数3または文字列3)      7747
  514.  
  515.           SUB(変数1,変数2または文字列2,変数3または文字列3)         7776
  516.  
  517.           SWITCH                                                   7799
  518.  
  519.           SWITCH(文字列または変数)                                 7799
  520.  
  521.           SWITCH(文字列または変数,ラベル)                          7799
  522.  
  523.             CASE(文字列またはコントロールコード)                   7801
  524.  
  525.             END                                                    7803
  526.  
  527.           TABSPACE(変数1)                                          7863
  528.  
  529.           TAPPEND(ファイル名)                                      7874
  530.  
  531.           TAPPEND(ファイル名,ラベル)                               7874
  532.  
  533.           TCLOSE                                                   7910
  534.  
  535.           TELFEE(変数1,変数2)                                      7923
  536.  
  537.           TIME(変数,区分挿入文字列[任意])                          7952
  538.  
  539.           TIMED(ON,OFF)                                            7980
  540.  
  541.           TIMEOUT(文字列または変数,ラベル)                         7999
  542.  
  543.           TOPEN(ファイル名)                                        8036
  544.  
  545.           TOPEN(ファイル名,ラベル)                                 8036
  546.  
  547.           UPCASE(変数1,変数2)                                      8062
  548.  
  549.           UPLOAD(番号,ファイル名)                                  8083
  550.                                                                          [0550]
  551.           UPLOAD(番号,ファイル名,ラベル)                           8083
  552.  
  553.           UPTEXT(番号,ファイル名)                                  8141
  554.  
  555.           UPTEXT(番号,ファイル名,ラベル)                           8141
  556.  
  557.           VCLEAR                                                   8191
  558.  
  559.           VCLEAR(文字列[変数名])                                   8191
  560.  
  561.           VCLEAR(文字列1[変数名1],文字列2[変数名2])                8191
  562.  
  563.           VCLEAR2                                                  8142
  564.  
  565.           VCLEAR2(文字列[変数名])                                  8142
  566.  
  567.           VCLEAR2(文字列1[変数名1],文字列2[変数名2])               8142
  568.  
  569.           VCONVERT(ON,OFF)                                         8293
  570.  
  571.           VLIST                                                    8321
  572.  
  573.           VSWAP(変数1,変数2)                                       8346
  574.  
  575.           VSWITCH(変数)                                            8376
  576.  
  577.             CASE(文字列またはコントロールコード)                   8376
  578.  
  579.             ELSE                                                   8380
  580.  
  581.             END                                                    8382
  582.  
  583.           VTACHG                                                   8422
  584.  
  585.           VTCLEAR                                                  8444
  586.  
  587.           VTCLEAR(文字列[変数名])                                  8444
  588.  
  589.           VTCLEAR(文字列1[変数名1],文字列2[変数名2])               8444
  590.  
  591.           VTCOPY                                                   8496
  592.  
  593.           VTCOPY(文字列[変数名])                                   8496
  594.  
  595.           VTCOPY(文字列1[変数名1],文字列2[変数名2])                8496
  596.  
  597.           VTLIST                                                   8554
  598.  
  599.           VTOCHG(変数1,文字列[変数名])                             8582
  600.                                                                          [0600]
  601.           VTOCHG2(文字列[変数名])                                  8605
  602.  
  603.           VTOCHG2(文字列1[変数名1],文字列2[変数名2])               8605
  604.  
  605.           VTSWAP(文字列1[変数名1],文字列2[変数名2])                8664
  606.  
  607.           WAIT(変数または文字列)                                   8690
  608.  
  609.           WAIT(変数1または文字列1,変数2または文字列2,ラベル)       8690
  610.  
  611.           WAPPEND(ファイル名)                                      8761
  612.  
  613.           WAPPEND(ファイル名,ラベル)                               8761
  614.  
  615.           WCLOSE                                                   8801
  616.  
  617.           WEEK(変数)                                               8817
  618.  
  619.           WEEK(変数1,変数2または文字列)                            8817
  620.  
  621.           WOPEN(ファイル名)                                        8865
  622.  
  623.           WOPEN(ファイル名,ラベル)                                 8865
  624.  
  625.           WRITE(変数名)                                            8908
  626.  
  627.           WRITE(変数名,ラベル)                                     8908
  628.                                                                     
  629.           WRITELOG(変数または文字列)                               8938
  630.  
  631.           YJUMP(変数または文字列,ラベル)                           8964
  632.  
  633.   【第10章】  SAMPLE.MAC                                           9011
  634.  
  635.   【第11章】  マクロを制作され、公開される方々へ                   9052
  636.  
  637.   【第12章】  実行時表示 ・ その他                                 9153
  638.  
  639.   【第13章】  マクロ機能別分類表                                   9181
  640.  
  641.                1. 送信関係コマンド                                 9185
  642.  
  643.                2. ファイル操作関係コマンド                         9257
  644.  
  645.                3. キーボード入力関係コマンド                       9339
  646.  
  647.                4. 画面表示関係コマンド                             9357
  648.  
  649.                5. 数値操作関数                                     9373
  650.                                                                          [0650]
  651.                6. 文字列操作関数                                   9384
  652.  
  653.                7. 日時操作関連                                     9413
  654.  
  655.                8. 変数および待避変数関連                           9432
  656.  
  657.                9. その他                                           9458
  658.  
  659.   【第14章】  WTERM の使用者の方へ、また再配布される方へ           9502
  660.  
  661.   【第15章】  免責事項                                             9581
  662.  
  663.   【第16章】  著作権について                                       9696
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697. ===============================================================================
  698. 【ご挨拶】
  699. ===============================================================================
  700.                                                                          [0700]
  701.   みなさま、ますますご活躍の事とお喜び申し上げます。
  702.   平素は、WTERM に格別の御愛顧を賜り心よりお礼申し上げます。
  703.   スピード、プログラムサイズの増大を極力抑えるように作りましたが、機能的に
  704.   は、一般の通信ソフト並には機能向上を致しました。一度ご利用下さるようお願
  705.   い致します。
  706.  
  707. ===============================================================================
  708. 【謝辞】
  709. ===============================================================================
  710.                                                                           
  711.   本ドキュメントの添削及び、マクロの拡張及び多種にわたるアイデア、また数多
  712.   くの御指摘をいただきまして皆様には大変感謝しております。
  713.   その中でも、NIFTY-Serve の会員である   KAZの宮(森氏)・HALKON (紺野氏)
  714.   ・Teru(小橋氏)・遊一郎(槙奥氏)には、バグ取り、また多彩なアイデアの提
  715.   供をしていただきまして大変感謝しております。
  716.   またマクロを作ってみようの章では、AlphineII (野村氏)の文章を使用させて
  717.   いただきました。
  718.   また、マクロハイテク講座の章では安富伸浩氏の文章を、転記させていただきま
  719.   した。
  720.  
  721.   また、MAKERB機能に関しては、TAKA(井村氏)にはご協力ならびに制作負担をお
  722.   かけいたしまして感謝しております。
  723.   NIFTY FWTERM、マクロ専用会議室及び、PC-VAN  JWTERMで、マクロ製作者からの
  724.   多数のアイデアを求め、さらなる改良に繋がりありがとうございました。
  725.  
  726. ===============================================================================
  727. 【第 1章】  マクロの使用方法  及び  実行方法  及び  実行中断             
  728. ===============================================================================
  729.  
  730.                                                                           
  731.   ・マクロファイルは、指定しなければ必ず MACRODIR に、おいて下さい。
  732.     指定していなければ カレントディレクトリーです。
  733.  
  734.     用語  MACRODIR  F7 -[4]-5  MACRO用格納PATHで  指定した場所
  735.  
  736.   ・マクロファイルは、テキストファイルです。お手持ちのエディター等で作成し
  737.     てください。
  738.  
  739.   [ 呼びだし方法 ]
  740.   ------------------------------------------------------------------------
  741.  
  742.     1.マクロファイルの指定は、WTERM のオートログイン文字列をチェックし、
  743.       "\#"を見つけた場合、それ以降の文字列をマクロファイル名とみなして、マ
  744.       クロを実行します。
  745.       通常マクロ名だけの場合はマクロファイル格納ドライブから読み込みます。
  746.  
  747.       1.1 マクロを先頭から実行する場合。
  748.  
  749.           書式例
  750.             [in:]\I[rd:]\P\#WWIV.MAC                                     [0750]
  751.                                                                          
  752.           結果
  753.             MACRODIRのWWIV.MACを読み込みマクロを実行します。
  754.  
  755.           書式例
  756.             [in:]\I[rd:]\P\#B:\DATA\WWIV.MAC
  757.                             ^^^^^^^^
  758.           結果
  759.             B:\DATA\WWIV.MACを読み込みマクロを実行します。
  760.                                                                           
  761.  
  762.       1.2 マクロの指定したラベルから実行したい場合は、ファイル名に$ を付け、
  763.           その後にラベル名を書きます。
  764.  
  765.           書式例
  766.             [in:]\I[rd:]\P\#WWIV.MAC$START   
  767.  
  768.           結果
  769.             MACRODIRのWWIV.MACを読み込み、その中のラベル[START] から実行開
  770.             始します。
  771.  
  772.     2.SHIFT+ F・6 の 6番目で任意のマクロを呼び出す事も可能です。 
  773.       書式は上記と同じです。 \#マクロファイル名
  774.  
  775.     3.別途送出文字列定義で、任意のマクロを実行する事が可能です。
  776.       書き込みは、F7-3です。
  777.       呼び出し方法は、左矢印キー(←)です。
  778.  
  779.       書式例
  780.         \#WWIV.MAC
  781.  
  782.       結果
  783.         MACRODIRのWWIV.MACを読み込みマクロを実行します。
  784.  
  785.       書式例
  786.         \#B:\DATA\WWIV.MAC
  787.         ^^^^^^^^
  788.       結果
  789.         B:\DATA\WWIV.MACを読み込みマクロを実行します。
  790.  
  791.  
  792.       書式例
  793.         \#WWIV.MAC$START   
  794.                                                                           
  795.       結果
  796.         MACRODIRのWWIV.MACを読み込み、その中のラベル[START] から、実行開始
  797.         します。
  798.  
  799.     4.起動直後から起動する。
  800.                                                                          [0800]
  801.       書式例
  802.         WTERM -_ 
  803.  
  804.         WTERM -_macro_file 
  805.  
  806.       -_は、マクロテストモードです。
  807.  
  808.       -_以降の指定のマクロファイルを起動後単独実行します。
  809.  
  810.       拡張命令を使用すれば、マクロのインストール等可能です。
  811.       その場合には、通信中に限られるSENDや、WAIT命令などは使用できません。
  812.  
  813.  
  814.   [ 中断もしくは、中止方法 ]
  815.   ------------------------------------------------------------------------
  816.  
  817.     マクロの途中中断は、ESC キーを押して下さい。(通常時)
  818.        
  819.     ESCEXIT(OFF)とした場合
  820.                                                                   
  821.       通常は、ESC キーで中断しますが、ESCEXIT(OFF)とした場合は、SHIFT+ ESC
  822.       (SHIFT キーを押しながら、同時にESC キーを押す)でしか中断しません。
  823.       このモードの際は、F1の位置に"SHIFT" F2の位置に "+ESC" F3の位置には、 
  824.       "=中断" と表示されます。
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831. ===============================================================================
  832. 【第 2章】  マクロをデバッグする方へ    
  833. ===============================================================================
  834.  
  835.                                                                           
  836.   マクロデバッグ用に、システム設定(F7)のその他設定項目に、マクロログの記
  837.   録の有無を追加しました。
  838.  
  839.   通常は記録しないでお使いください。
  840.  
  841.   記録するに設定すると、マクロ実行中に実行した行を 1行づつ、MACRO.DMP とい
  842.   うファイルに記録していきます。なお記録ファイルは、設定の[F7-5]の、DATA格
  843.   納場所に設定してあるドライブ、またはディレクトリーに作られます。
  844.                                                                           
  845.   なお、MACRO.DMP は、MIFES 等のエデイタのタグジャンプ機能が使えます。
  846.                                                                          
  847.     MDUMP(変数または文字列)
  848.     MDUMP(変数または文字列,変数 2または文字列)
  849.                                                                           
  850.     用途  マクロDUMPの記録をON/OFF します。                             [0850]
  851.           最初から記録せず任意の場所前後のみ記録したい場合に便利です。
  852.           第 2パラメーターを指定した場合は、時間等の記録もします。
  853.           それを指定した場合には、一層実行速度が低下します。
  854.  
  855.     注意  MACRO.DMP をONにしている状態で有効です。
  856.  
  857.  
  858.   [ 一言ポイント 1 ]
  859.   ------------------------------------------------------------------------
  860.  
  861.     記録した場合  実行速度は異常に遅くなります。
  862.                                                                           
  863.     またSENDや、WAIT以外の構文チェック等のデバッグでは、下記の方法もありま
  864.     す。
  865.                                                                           
  866.       WTERM -~  もしくは、 WTERM -_ または、WTERM -_ マクロ名 で起動する。
  867.       F5/F6の表示がでる(通常は接続中のみ)。このまま  SHIFT+F・6 を押して
  868.       下さい。マクロ文入力で  チェックしてみたいマクロを入力してください。
  869.       すると、まずマクロ文を読み込みチェックします。OKでなければ、その旨を
  870.       表示します。
  871.  
  872.       また、ありえない命令文やスペルチェック(命令の)で該当しないものは、
  873.       その旨表示してマクロを中断します。
  874.       うまく動作終了すれば、マクロモードから通常モードに戻ります。        
  875.  
  876.   [ 一言ポイント 2 ]
  877.   ------------------------------------------------------------------------
  878.                                                                           
  879.     マクロDUMPファイルを取るように設定して、そのログを見ながら確認すると便
  880.     利です。
  881.     無論エラーの箇所や行数等も、MACRO.DMP に記載されます。
  882.     またオプションで、最初から記録せず、任意の場所前後のみ記録したい場合な
  883.     ども可能です。
  884.     さらにオプションで、時間等も記録できますので、処理系の時間配分、分析に
  885.     有効かとおもわれます。
  886.  
  887.                                                                           
  888.     MACRO.DMP 記載例
  889.                                                                          [0900]
  890.       NIFTY    95.11.20 00:00:00
  891.       -=-= MACRO DUMP -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  892.       A:\MACRO\LOGIN.MAC 350 Line Reading ......OK
  893.       コマンド数=884(1280) 文字数=5318(12288) ラベル数=131(160)
  894.       A:\MACRO\LOGIN.MAC   9  LOGCLOSE
  895.       A:\MACRO\LOGIN.MAC  11  INPUT(,何をしますか?,3.10)
  896.       A:\MACRO\LOGIN.MAC  12  JUMPE(FGALWT,,OVER)
  897.       A:\MACRO\LOGIN.MAC  13  SEND(GO )
  898.       A:\MACRO\LOGIN.MAC  14  SEND(FGALWT)
  899.       A:\MACRO\LOGIN.MAC  15  SEND(\r)
  900.       A:\MACRO\LOGIN.MAC  16  SWITCH
  901.       A:\MACRO\LOGIN.MAC  17  CASE(1:お知らせ) 
  902.       A:\MACRO\LOGIN.MAC  18  CALL(EXPSET)
  903.       A:\MACRO\LOGIN.MAC  263  CALL(PROMPT)
  904.  
  905.              ~~~~~~~  中  略  ~~~~~~~
  906.  
  907.       A:\MACRO\LOGIN.MAC  118  LOGOPEN(NIF)
  908.       A:\MACRO\LOGIN.MAC  119  EXIT
  909.  
  910.                                                                           
  911.       解説
  912.  
  913.         コマンド数= 884(1280) 
  914.                      ↑ 現在マクロ有効行数(コメントを除く) ()内は最大コマンド数
  915.  
  916.         文字数    =5318(12288)
  917.                      ↑ 現在マクロ全体の文字数  ()内は最大文字数
  918.  
  919.         ラベル数  = 131(160)
  920.                      ↑ 現在使用中のラベル数    ()内は最大ラベル数
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939. ===============================================================================
  940. 【第 3章】  マクロの制限事項について
  941. ===============================================================================
  942.                                                                           
  943.    1. マクロファイルは、最大1280行までです。
  944.  
  945.    2. 定義できるラベルの数は160 個までです。
  946.  
  947.    3. 1 つのCALLに対してのネストは、最大30までです。
  948.  
  949.    4. 構文に対するネストは、最大20までです。
  950.                                                                          [0950]
  951.    5. パラメーターの中に使用できる文字列の総バイト数は、12000 文字までです。
  952.  
  953.    6. CASEで同時に定義できる受信待ち文字列は50個までです。
  954.                                                                          
  955.    7. 変数は、すべて""でかこまれた文字型です。
  956.       最大99文字(全角文字でいえば漢字48字相当)です。(8 を除く)
  957.                                                                           
  958.    8. " クォート (")  は、特別の意味でつかっているので、まれに7 番の形式で
  959.       はうまくいかなくなる状況があります。
  960.       その場合はクォートをはずしてやってみてください。
  961.       うまくいくケースがあります。今後の修正課題ですので、不自由な点もあり
  962.       ますがご了承ください。
  963.                                                                           
  964.    9. 演算の場合(ADD MOD DIV SUB)
  965.       範囲は  -2147483648  から 2147483647 までの範囲です。
  966.  
  967.   10.  1つの変数に、記憶できる文字列は、最大99文字までです。
  968.  
  969.   11.  1行は、なるべく行末までに納めてください。
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989. ===============================================================================
  990. 【第 4章】  実行時また実行中のエラーについて
  991. ===============================================================================
  992.  
  993.  
  994.   [ 実行時 ][ 未定義コマンド  ]
  995.                                                                           
  996.     Q.WTERM のマクロ実行しようとして、未定義コマンド行数というエラーがでま
  997.       した。どうすればよいのでしょうか?
  998.  
  999.     A.マクロ命令の綴が間違っている場合があります。
  1000.       または、最新版でないWTERM を使用していて、最近サポートされた関数、 [1000]
  1001.       または命令を使っている場合に、該当命令がないために表示されます。
  1002.       綴を確認して、間違いなければ、WTERM の Versionをご確認ください。
  1003.       そして最新版のご利用をおすすめします。
  1004.  
  1005.  
  1006.   [ 実行時 ][ ★Open error    ]
  1007.  
  1008.     Q.WTERM のマクロ実行時に、マクロファイル★Open errorというエラーがでま
  1009.       した。どのようにすればよいのでしょうか?
  1010.                                                                           
  1011.     A.実行しようとする、マクロファイルが存在しません。マクロファイル格納場
  1012.       所を確認するか、指定したドライブまたは、ディレクトリーを確認してくだ
  1013.       さい。
  1014.  
  1015.  
  1016.   [ 実行時 ][ 文字数オーバー    ]
  1017.  
  1018.     Q.WTERM のマクロ実行時に、文字数オーバーというエラーがでました。どのよ
  1019.       うにすればよいのでしょうか?
  1020.  
  1021.     A. 1つのマクロファイルに書ける最大文字列(命令/代入文すべてを含む)は、
  1022.       最大  12288半角文字(総バイト数)までです。
  1023.       漢字を含む全角文字は、 1文字に対し 2バイト計算になります。
  1024.       それ以内に納めるか、チェイン命令を利用して分割してください。
  1025.  
  1026.  
  1027.   [ 実行時 ][ コマンド数オーバー ]
  1028.  
  1029.     Q.WTERM のマクロ実行時に、コマンド数オーバーというエラーがでました。
  1030.       どのようにすればよいのでしょうか?
  1031.  
  1032.     A. 1つのマクロの最大行数は、最大1280行までです。それをオーバーしている
  1033.       ので分割してください。
  1034.  
  1035.  
  1036.   [ 実行時 ][ ラベル数オーバー    ]
  1037.  
  1038.     Q.WTERM のマクロ実行時に、ラベル数オーバーというエラーがでました。
  1039.       どのようにすればよいのでしょうか?
  1040.  
  1041.     A. 1つのマクロにおけるラベルの最大数は、160 個までです。それを守ってく
  1042.        ださい。
  1043.  
  1044.  
  1045.   [ 実行中 ][ ラベル長が 8文字オーバー ]
  1046.  
  1047.     Q.WTERM のマクロ実行中に、ラベル長が 8文字オーバーというエラーがでまし
  1048.       た。どのようにすればよいのでしょうか?
  1049.                                                                         
  1050.     A.ラベル定義の際の最大ラベル長さは、8 文字まで(半角)です。         [1050]
  1051.       それを守ってください。
  1052.  
  1053.  
  1054.   [ 実行中 ][ 代入値が変数では ]
  1055.  
  1056.     Q.WTERM のマクロ実行中に、代入値が変数ではありません、というエラーがで
  1057.       ました。どのようにすればよいのでしょうか?
  1058.  
  1059.     A.マクロのドキュメントをみていただければ理解していただけますが、代入値
  1060.       が必ず変数でなければならない場合があります。
  1061.       これが発生した場合には、そのマクロ構文を確認してください。変数かどう
  1062.       か確認して、マクロ命令に添って確認してください。
  1063.  
  1064.                                                                           
  1065.   [ 実行中 ][ SWITCH~END のネストが正しく対応していない[マクロ構文エラー]
  1066.  
  1067.     Q.WTERM のマクロ実行中に、「SWITCH~END のネストが正し対応していない[ 
  1068.       マクロ構文エラー ]」、というエラーがでました。どのすればよいのでしょ
  1069.       うか?
  1070.  
  1071.     A. 1つの、SWITCH命令に対して、対になる1 つの END がかならず必要です。
  1072.       このエラーの場合、SWITCH 1に対しEND が少ないか、多いかの場合です。
  1073.       マクロ構文を、よく確認してください。
  1074.  
  1075.  
  1076.   [ 実行中 ][File open Error ]
  1077.                                                                           
  1078.     Q.WTERM のマクロ実行中に、File open Error + ファイル名というエラーがで
  1079.       ました。どのようにすればよいのでしょうか?
  1080.  
  1081.     A.以下の命令で、ファイルをOPENしようとして、OPENできないのが原因で発生
  1082.       するエラーです。
  1083.       ファイルが存在しない場合は、違うエラーをかえします。(FILE NOT OPEN)
  1084.       以下のマクロ命令で、表示されるエラーです。
  1085.  
  1086.         FOPEN
  1087.         WOPEN
  1088.         OOPEN
  1089.         WAPPEND
  1090.         FLINE
  1091.         FILER
  1092.         FILETIME
  1093.  
  1094.  
  1095.   [ 実行中 ][ File Not Open  ]
  1096.                                                                           
  1097.     Q.WTERM のマクロ実行中に、File Not Open というエラーがでました。
  1098.       どのようにすればよいのでしょうか?
  1099.  
  1100.     A.OPENすべきファイルが存在しません。ディスク及び格納場所をご確認下さ [1050]
  1101.       い。下のマクロ命令で、表示されるエラーです。 
  1102.                                                                          
  1103.         FCLOSE
  1104.         OCLOSE
  1105.         RCLOSE
  1106.         WCLOSE
  1107.         FREAD 
  1108.         RREAD 
  1109.         WRITE 
  1110.  
  1111.  
  1112.   [ 実行中 ][ File Read Error  ] 
  1113.                                                                           
  1114.     Q.WTERM のマクロ実行中に、File Read Error というエラーがでました。
  1115.       どのようにすればよいのでしょうか?
  1116.  
  1117.     A.READするファイルが、OPENされていないか(FOPEN ROPEN 命令)、ファイルの
  1118.       終りきた(EOF)場合にでるエラーです。
  1119.       以下のマクロ命令で、表示されるエラーです。
  1120.  
  1121.         FREAD
  1122.         OREAD
  1123.         RREAD
  1124.  
  1125.  
  1126.   [ 実行中 ][ File Write Error ]
  1127.                                                                           
  1128.     Q.WTERM のマクロ実行中に、File Write Error +  ファイル名というエラーが
  1129.       でました。どのようにすればよいのでしょうか?
  1130.  
  1131.     A.WAPPEND でOPENされた書き込み用ファイルに、書き込む事ができないか、デ
  1132.       ィスクの空き容量がなくなった場合に表示されるエラーです。
  1133.       以下のマクロ命令で、表示されるエラーです。
  1134.  
  1135.         WRITE
  1136.  
  1137.  
  1138.   [ 実行中 ][ File Not Found   ]
  1139.                                                                           
  1140.     Q.WTERM のマクロ実行中に、File Not Found +  ファイル名というエラーがで
  1141.       ました。どのようにすればよいのでしょうか?
  1142.                                                                          
  1143.     A.以下の命令使用時において、ファイルが存在しない場合に表示されるエラー
  1144.       です。
  1145.       指定ファイルが指定の場所にあるかどうかご確認下さい。
  1146.       以下のマクロ命令で、表示されるエラーです。
  1147.  
  1148.         UPTEXT       テキスト送信しようとするファイルが存在しない。
  1149.         UPLOAD       UPLOADすべきファイルが存在しない。
  1150.         DELFILE      消すファイルが存在しない。                          [1150]
  1151.         FILETIME     タイムスタンプを呼び出すべきファイルがない。
  1152.  
  1153.  
  1154.   [ 実行中 ][ Division by zero ] 
  1155.                                                                           
  1156.     Q. WTERM のマクロ実行中に、Division by zeroというエラーがでました。
  1157.        どのようにすればよいのでしょうか?
  1158.  
  1159.     A.これは以下の命令使用の際に間違った数値を入れた場合に、出るエラーです。
  1160.       意味は、ある数値を、 0で除算しようとした場合です。
  1161.       例  
  1162.         B$ = "100"  C$ = "0" 
  1163.         MOD(A$,B$,C$)
  1164.       解説
  1165.         100 ÷ 0 というのは、できません。
  1166.       以下のマクロ命令で、表示されるエラーです。
  1167.  
  1168.         MOD 
  1169.  
  1170.  
  1171.   [ 実行中 ][ MKDIRエラー指定    ]
  1172.                                                                           
  1173.     Q.WTERM のマクロ実行中に、MKDIRエラー指定 + 名前というエラーがでました。
  1174.       どうすればよいのでしょうか?
  1175.  
  1176.     A.メイクディレクトリー(サブディレクトリー作成命令)をしようとした場合
  1177.       に、既に同名のディレクトリーが存在するか、同名のファイルが存在する場
  1178.       合に表示されるエラーメッセージです。
  1179.       以下のマクロ命令で、表示されるエラーです。
  1180.  
  1181.         MKDIR
  1182.  
  1183.  
  1184.   [ 実行時 ][ Label Not Found  ]
  1185.                                                                           
  1186.     Q.WTERM のマクロ実行中に、Label Not Found + ラベル名というエラーがでま
  1187.       した。どうすればよいのでしょうか?
  1188.         
  1189.     A.これは、ジャンプすべきラベル(GOTO命令等)が、マクロ中に存在しない場
  1190.       合に出るエラーメッセージです。
  1191.       ラベル名をご確認ください。
  1192.       以下のマクロ命令や、判定時やエラー時で、ジャンプする命令のマクロ命令
  1193.       使用時に表示されます。
  1194.  
  1195.         GOTO
  1196.         エラー処理でラベルにジャンプするようなマクロ命令
  1197.  
  1198.  
  1199.   [ 実行時 ][ File Already open]
  1200.                                                                          [1200]
  1201.     Q.WTERM のマクロ実行中に、File Already opened というエラーがでました。
  1202.       どうすればよいのでしょうか?
  1203.                                                                          
  1204.     A.これは、以下のマクロ命令で、OPENしようとした場合に、すでに同命令で、
  1205.       ファイルがOPENされていた場合にでる、エラーメッセージ( 2重にOPENし
  1206.       ようとした)
  1207.       以下のマクロ命令で、表示されるエラーです。
  1208.  
  1209.         FOPEN  
  1210.         ROPEN  
  1211.         WOPEN  
  1212.         WAPPEND
  1213.  
  1214.  
  1215.   [ 実行中 ][ DELETE ERROR     ]
  1216.  
  1217.     Q.WTERM のマクロ実行中に、DELETE ERROR +ファイル名というエラーがでまし
  1218.       た。どうすればよいのでしょうか?
  1219.                                                                           
  1220.     A.指定されたファイルが、削除できない場合に表示されるエラーメッセージで
  1221.       す。
  1222.       削除禁止などがしてある場合にでます。
  1223.       以下のマクロ命令で、表示されるエラーです。
  1224.  
  1225.       DELFILE
  1226.  
  1227.  
  1228.   [ 実行中 ][ ウィンドウエリアの解放に失敗しました  リセットして下さい]
  1229.  
  1230.     Q.WTERM のマクロ実行中もしくは、実行しようとして、ウィンドウエリアの解
  1231.       放に失敗しました  リセットして下さい
  1232.       FAILED IN OPENING WINDOW AREA!!  PLEASE RESET !! 
  1233.       といエラーメッセージがでました。どうすればよいのでしょうか?
  1234.  
  1235.     A.そのマクロ文の中の、以下の命令に関して、命令文の中の文字数が多かった
  1236.       り、判定文字列が長すぎたりした場合、表示される可能性が多いエラーです。
  1237.       以下のマクロ命令をよくご確認ください。
  1238.  
  1239.         CASE
  1240.         WAIT
  1241.         SWITCHI ~ END
  1242.         VSWITCHI ~ END
  1243.         ELSE
  1244.  
  1245.       例
  1246.         SWITCH文の中に、CALL文がはいってる場合など
  1247.  
  1248.  
  1249.   [ 実行中 ][ マクロの途中中断ができない]                                
  1250.                                                                          [1250]
  1251.     Q.WTERM のマクロ実行中に、ESC キーを押して中断しようとしているのに、中
  1252.       断できません。
  1253.                                                                          
  1254.     A.マクロ文中に、ESCEXIT(OFF)  としてありませんか?
  1255.       この命令を、実行したあとは、再度 ESCEXIT(ON)と指定しない限り、ESC が
  1256.       中断ではなく、SHIFT+ ESC(SHIFT キーを押しながら、同じにESC キーを押
  1257.       す)でしか中断しません。
  1258.       このモードの際は、F1の位置に"SHIFT" F2の位置に "+ESC" F3の位置には、 
  1259.       "=中断" と表示されます。
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285.  
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291. ===============================================================================
  1292. 【第 5章】 ラベルとコメントについて
  1293. ===============================================================================
  1294.  
  1295.   [ ラベルについて ]
  1296.   --------------------------------------------
  1297.  
  1298.     GOTO,CALL等でジャンプ先を示す場合の印です。
  1299.  
  1300.      8文字以内で記述し、最後に : を付けてください                        [1300]
  1301.  
  1302.     ラベルは行の先頭に記述しなければなりません。(スペース、タブはOK)
  1303.                                                                           
  1304.  
  1305.     書式例
  1306.       ラベル:           
  1307.  
  1308.       START:                   # ラベルの定義
  1309.         wait("Help=> ? ")      # コマンド(パラメーター)       
  1310.         send("O")              # 送る     (パラメーター)       
  1311.  
  1312.        1行の形式は、上記の通りです。
  1313.  
  1314.     行中のスペース、タブは無視します。("  "で囲まれた所は別です)
  1315.  
  1316.   [ コメント ]
  1317.   --------------------------------------------
  1318.  
  1319.      マクロ命令の後に続く # 以降の文字列はコメントとされます。
  1320.  
  1321.      例                                コメント
  1322.         GOTO(START)                  # STARTにジャンプ
  1323.         CASE("読みますか?")          # 文字列待ち
  1324.           SEND(" ")                  # スペ-スを送る
  1325.  
  1326.  
  1327.   [ マクロ命令からコメントまでの間の制限 ]
  1328.   --------------------------------------------
  1329.  
  1330.     また、マクロ命令からコメントまでの間に、半角スペース以外のコードが、
  1331.  
  1332.     記入されているとエラーになります。(例  全角スペースやTAB など)
  1333.                                                                           
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347. ===============================================================================
  1348. 【第 6章】  マクロ中に使用できる  変数について
  1349. ===============================================================================
  1350.                                                                          [1350]
  1351.   マクロの中では、A$  ~ Z$ と、A%  ~ Z% と、TEMP_A$ ~ TEMP_Z$  
  1352.   迄の変数が使えます。
  1353.  
  1354.   変数には、文字列または変数を、代入することが出来ます。
  1355.                                                                           
  1356.     例  A$="ABCD"           変数A$に文字列 ABCD を代入します。
  1357.         B$=C$               変数B$に変数 C$ の内容を代入します。
  1358.  
  1359.   [ マクロ使用可能な変数名 ]
  1360.  
  1361.     A$ , B$ , C$ , D$ , E$ , F$ , G$ , H$ , I$ , J$ , K$ , L$ , M$ ,
  1362.     N$ , O$ , P$ , Q$ , R$ , S$ , T$ , U$ , V$ , W$ , X$ , Y$ , Z$
  1363.  
  1364.     A% , B% , C% , D% , E% , F% , G% , H% , I% , J% , K% , L% , M% ,
  1365.     N% , O% , P% , Q% , R% , S% , T% , U% , V% , W% , X% , Y% , Z%
  1366.  
  1367.     TEMP_A$ , TEMP_B$ , TEMP_C$ , TEMP_D$ , TEMP_E$ , TEMP_F$ , TEMP_G$ ,
  1368.     TEMP_H$ , TEMP_I$ , TEMP_J$ , TEMP_K$ , TEMP_L$ , TEMP_M$ , TEMP_N$ ,
  1369.     TEMP_O$ , TEMP_P$ , TEMP_Q$ , TEMP_R$ , TEMP_S$ , TEMP_T$ , TEMP_U$ ,
  1370.     TEMP_V$ , TEMP_W$ , TEMP_X$ , TEMP_Y$ , TEMP_Z$
  1371.  
  1372.  
  1373.     現在使用中の変数の内容を、表示する命令があります。
  1374.                                                                           
  1375.       命令  VLIST
  1376.  
  1377.     変数の内容を、すべてクリアする命令もあります。
  1378.  
  1379.       命令  VCLEAR        ( A$ ~ Z $ )
  1380.       命令  VCLEAR2       ( A% ~ Z % )
  1381.  
  1382.     変数の指定範囲をクリアする命令もあります。
  1383.     複数の指定なら、その指定すべてを初期化します。
  1384.  
  1385.       命令  VCLEAR(文字列[変数名])             ( A$ ~ Z $ )
  1386.       命令  VCLEAR2(文字列[変数名])            ( A% ~ Z % )
  1387.  
  1388.     変数の指定範囲を第 1パラメーターで指定された変数から第 2パラメータで指
  1389.     定された変数までの間すべてを初期化します。
  1390.                                                                           
  1391.       命令  VCLEAR(文字列1[変数名1]、文字列2[変数名2])     ( A$ ~ Z $ )
  1392.       命令  VCLEAR2(文字列1[変数名1]、文字列2[変数名2])    ( A% ~ Z % )
  1393.  
  1394.     退避中の変数の内容を、すべてクリアする命令もあります。
  1395.  
  1396.       命令  VTCLEAR
  1397.  
  1398.     退避中の変数の複数指定すべてを初期化します。
  1399.  
  1400.       命令  VTCLEAR(文字列[変数名])                                      [1400]
  1401.  
  1402.     退避中の変数の第1 パラメーターで指定された変数から第2 パラメータで指定
  1403.     された退避中の変数までの間すべてを初期化します。                     
  1404.  
  1405.       命令  VTCLEAR(文字列1[変数名1]、文字列2[変数名2]) 
  1406.  
  1407.     変数の内容を、すべて一時退避する命令もあります。    (有効 A$ ~ Z$ ) 
  1408.   
  1409.       命令  VTCOPY
  1410.  
  1411.     変数の内容を、複数指定で一時退避する命令もあります。(有効 A$ ~ Z$ )
  1412.  
  1413.       命令  VTCOPY(文字列[変数名]) 
  1414.  
  1415.     変数の内容を、第2 パラメーターで指定された変数の内容のみを、第 1パラメ
  1416.     ーターで指定された内部バッファーに格納します。      (有効 A$ ~ Z$ )
  1417.  
  1418.       命令 VTCOPY(文字列[変数名]、文字列2[変数名2]) 
  1419.      
  1420.     現在退避中の変数の内容を、表示する命令があります。
  1421.  
  1422.       命令  VTLIST
  1423.                                                                           
  1424.     現在退避中の変数の内容を、変数A-Z$ にそのまま戻す命令があります。
  1425.                                                        (有効 A$ ~ Z$ )
  1426.       命令  VTACHG
  1427.  
  1428.     現在退避中の任意の変数の内容を指定の変数にそのまま戻す命令があります。
  1429.                                                        (有効 A$ ~ Z$ )
  1430.       命令  VTOCHG(変数1、文字列[変数名]) 
  1431.  
  1432.     現在退避中の変数の複数指定のすべてに対し内容を指定の変数にそのまま戻し
  1433.     ます。                                             (有効 A$ ~ Z$ )
  1434.  
  1435.       命令  VTOCHG2(文字列[変数名]) 
  1436.  
  1437.     現在退避中の変数の第 1パラメーターで指定された退避変数から、第 2パラメ
  1438.     ーターで指定された退避変数の内容を、同名の変数に格納します。
  1439.  
  1440.       命令  VTOCHG2(文字列1[変数名1]、文字列2[変数名2]) 
  1441.  
  1442.     指定変数の内容を入れ換える命令もあります。         (有効 A$ ~ Z$ )
  1443.  
  1444.       命令  VSWAP(変数1、変数2) 
  1445.  
  1446.     指定退避変数の内容を入れ換える命令もあります。
  1447.  
  1448.       命令  VTSWAP(変数1、変数2)                                         
  1449.  
  1450.                                                                          [1450]
  1451.  
  1452.  
  1453.  
  1454.  
  1455.                                                                          
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462. ===============================================================================
  1463. 【第 7章】  マクロの作り方入門 
  1464. ===============================================================================
  1465.  
  1466.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1467.    1. マクロとは
  1468.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1469.                                                                           
  1470.     通信ソフトとはマシンのRS-232C を制御し、モデムをコントロールすることに
  1471.     よってホストコンピュータと回線を繋ぐというのが目的です。    
  1472.     しかし、大抵のネットワークではIDとパスワードを聞いてきます。これにいち
  1473.     いち人間が対応して入力してやってもいいんですが、必ず聞いてくると分って
  1474.     いるんですから、この辺まで通信ソフトが受持ってくれた方が使いやすいに決
  1475.     まっています。
  1476.  
  1477.     しかし、ひとりひとりアクセスする方法が異なり、ネットワーク毎にやり取り
  1478.     する内容は異なります。また、受けたいサービスの内容も異なります。従って、
  1479.     色々な場合に対応するために、通信ソフトはある程度の自由度を持ったものに
  1480.     なってしまいます。自由度を大きくするために通信ソフトではマクロ(補助言
  1481.     語)によるプログラミングが可能なのが普通です。
  1482.     WTERM もそうした他の通信ソフトと同様マクロ機能が搭載されています。
  1483.     Ver7.80まではマクロでできることがかなり限られていましたが、Versionが上
  1484.     がるに従い機能追加をして、ほぼ現在では市販の通信ソフト並びもしくは、そ
  1485.     れ以上の機能が搭載され、通信中にやりたいことは大抵マクロで出来る様にな
  1486.     りました。
  1487.  
  1488.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1489.    2. 実際に使ってみよう
  1490.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1491.  
  1492.     通信という性格から、こういう文字が送られてきたら、こういう文字を送り返
  1493.     すというのが基本になります。
  1494.     ホスト側から送られてくる文字を待ち、それに対応する文字をホスト側に返し
  1495.     ます。以上の動作をマクロで行こなう場合に使用する命令は、送られてくる文
  1496.     字を待つ命令は WAIT です。また、文字列を送る命令は SEND です。
  1497.     これらは、次の様に使います。
  1498.  
  1499.       WAIT("<<文字列>>")  <<文字列>> という文字列を受信するまで待ちます。
  1500.       SEND("<<文字列>>")  <<文字列>> という文字列を送信します。          [1500]
  1501.                                                                          
  1502.     送信したい文字列に改行、ID、パスワードといった特別な意味を持つ物は、
  1503.     "\" + アルファベット 1文字で送ることが可能です。(改行は "\R"、IDは、
  1504.     "\I"、パスワードは "\P" 、文字コードを送る場合は  "\nnn"[nnnは0- 255ま
  1505.     での、10進数]などがあります)。  
  1506.  
  1507.     では、一例として、NIFTY(FENICS ROAD 1)にログインする時を考えてみまし
  1508.     ょう。
  1509.  
  1510.     接続後                                                               
  1511.       .00+                              [センターへ接続する命令]
  1512.       COM
  1513.       Enter Connection-ID  --->SVC      [NIFTY-Serveへ ]
  1514.       Enter User-ID  --->ABC01234       [IDを入力      ]
  1515.       Enter Password --->               [PASSWORDを入力]
  1516.  
  1517.       ようこそNIFTY-Serveへ
  1518.       Copyright (C) 1991
  1519.       by NIFTY Corporation
  1520.       All Rights Reserved
  1521.  
  1522.       前回LOG OUT 91/12/01    00:00:00
  1523.  
  1524.     この時の動作をまとめると次の様になります。
  1525.  
  1526.       1)".00+" を送る。
  1527.       2)"Enter Connection-ID  --->" とメッセージが送られて入力待ちになる。
  1528.       3)"SVC" と送る。
  1529.       4)"Enter User-ID  --->" とメッセージが送られて入力待ちになる。
  1530.       5)"ABC01234"(ID)を送る
  1531.       6)"Enter Password --->" とメッセージが送られて入力待ちになる。
  1532.       7)パスワードを送る。但し、これは画面に表示されない。
  1533.       8)NIFTYのウエルカムメッセージが表示されログイン完了。
  1534.  
  1535.     まず、送るという所を SEND を使って作って見ましょう。
  1536.       1)は次の様に出来ると思います。
  1537.  
  1538.       SEND(".00+")
  1539.                                                                           
  1540.     この調子で3)、5)、7) を書き換えて見て下さい。次の様になっていれば、
  1541.     正解です。
  1542.  
  1543.       SEND("SVC\R")
  1544.       SEND("\I\R")
  1545.       SEND("\P\R")
  1546.                                                                           
  1547.     メッセージの後ろに \R が付いていますが、これは改行を行うためです。
  1548.     1) の場合は改行がいらないのでついていないわけです。
  1549.     次に文字列を待っている部分を書き換えて見ましょう。 2)はこの様になりま
  1550.     す。                                                                 [1550]
  1551.  
  1552.       WAIT("Enter Connection-ID  --->")
  1553.  
  1554.     これをまねて4)6)を書き換えてみて下さい。次の様になれば正解です。
  1555.                                                                           
  1556.       WAIT("Enter User-ID  --->")
  1557.       WAIT("Enter Password --->")
  1558.  
  1559.     以上ですべて書き換えました。順番通りに並べてみましょう。
  1560.                                                                          
  1561.       SEND(".00+")
  1562.       WAIT("Enter Connection-ID  --->")
  1563.       SEND("SVC\R")
  1564.       WAIT("Enter User-ID  --->")
  1565.       SEND("\I")
  1566.       WAIT("Enter Password --->")
  1567.       SEND("\P")
  1568.                                                                          
  1569.     これで、ログイン部分のマクロができた訳です。 これを LOGIN.MAC というフ
  1570.     ァイル名でセーブしておいて下さい。
  1571.                                                                           
  1572.     せっかく作ったマクロですが、WTERM の方が勝手に実行してくれるという訳で
  1573.     はありません。これも指定してやらなければなりません。さきほど作ったマク
  1574.     ロは、LOGIN.MAC というファイル名でセーブされている筈ですから、このファ
  1575.     イルを設定F7-5-4のマクロ指定ドライブに格納してください。
  1576.     そして、オートログイン文字列の設定の所に、
  1577.  
  1578.       \#LOGIN.MAC
  1579.  
  1580.     としておくか、回線が繋がった後にマクロの実行で、LOGIN.MAC を選択して下
  1581.     さい。
  1582.     これは接続後  SHIFT+F6の 8(マクロファイル名を入力 実行)をおして下さ
  1583.     い。
  1584.     さて、実際にアクセスしてみましょう。うまくいったでしょ。基本はたったの
  1585.     これだけです。簡単でしょ。
  1586.  
  1587.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1588.    3. さらに発展させて、、、
  1589.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1590.  
  1591.     たとえば、 A君は必ず FWTERM に入って会議室の未読を読むというのが、アク
  1592.     セスした時の決まりになっているとしましょう。A 君の場合、FWTERMにいって
  1593.     会議室を読むというのも、IDやパスワードの送信と同じく毎回することですか
  1594.     ら、マクロにしておいた方がよさそうです。さて、さきほどのログの続きです。
  1595.     まず、フォーラムに入りましょう。目的のフォーラムに直接入るためには、GO
  1596.     コマンドが便利なのでこれを使います。
  1597.  
  1598.       >GO FWTERM 
  1599.  
  1600.       WTERM ユーザースでのログインネーム《 A君 》                        [1600]
  1601.  
  1602.        ---------------------------------------------------------------- 
  1603.             WTERM の仲間!みんな集まれ。ようこそ  FGALWT
  1604.        ----------------------------------------------------------------
  1605.             質問等は掲示板ではなく会議室へお願いします
  1606.             定例RTは、金曜日の22~23時です。お気軽にどうぞ!!
  1607.        ----------------------------------------------------------------
  1608.  
  1609.       <FGAL・WTERM ユーザーズ>    FWTERM
  1610.       1:お知らせ            2:掲示板      3:電子会議
  1611.       4:データライブラリ    5:会員情報    6:リアルタイム会議
  1612.       7:SYSOP 宛メール      8:オプション  E:終了
  1613.       >                                                                   
  1614.  
  1615.     ここで、3 を入力し、電子会議に入り、そして、未読を全部読む命令MRE を、
  1616.     実行すれば目的が果されます。
  1617.                                                                           
  1618.       >3
  1619.  
  1620.       --------------------------------------------------------------------
  1621.          WTERMに関するご質問は,2番会議室に、お寄せ下さい。
  1622.          マクロに関する話題・ご質問は使用されるマクロによって分かれており  
  1623.          4,5,6,9番会議室にお願い致します。
  1624.       --------------------------------------------------------------------
  1625.  
  1626.       番号  発言 (未読)   最新    会議室名
  1627.        1     258 ( 258)   02/16   □F : 名刺交換:こんにちはどうぞよろしく
  1628.        2     716 ( 716)   02/16   □W : WT質疑:WTERM・?・Q&A?
  1629.        3     472 ( 472)   02/16   □T : 金粉ショー:幸せのキーボードは桃色☆
  1630.        4     293 ( 293)   02/16   □E : 特定会議:WTNIF    マクロ道場
  1631.        5     244 ( 244)   02/16   □R : 特定会議:NIFMCR3マクロ道場
  1632.        6     228 ( 228)   02/16   □M : 特定会議:その他の      マクロ道場
  1633.        7      11 (  11)   02/01   □   : 特定会議:NIF_AUTO      マクロ道場
  1634.        8      40 (  40)   02/16   □   : 特定会議:NIFカンタンA      マクロ道場
  1635.        9     127 ( 127)   02/16   □   : 特定会議:NEST          マクロ道場
  1636.       10      87 (  87)   02/16   □   : 総合案内 FGALWT SYSTEM INFORMATION
  1637.       11      34 (  34)   02/09   (^o^)/一問一答:WTERM 活用 Q&A 講座
  1638.       12      15 (   0)   02/01   □   : 軟件活用:WTERMを巡るソフト達
  1639.       13     184 (   0)   02/16   ■Win: 特別会場 :WTERM for Win
  1640.       14     210 (   0)   02/16   △   : WT要望:次 Versionを考える検討会
  1641.       16     999 (   0)   02/16   ◎壁 : =-=-= K A B E =-=-=    (-。-)y-゚゚゚゚
  1642.       18    2450 (   0)   02/09   □   : WT広場:いわゆるフリートーキング
  1643.       19     660 (   0)   02/10   △   : 特設会議: ------------------------
  1644.       20     410 (  10)   02/16   □   : 新着案内★ライブラリソフト新鮮情報
  1645.       >MRE
  1646.   
  1647.   
  1648.     こんな具合にログは続いていきます。では、これからマクロを作成していきま
  1649.     しょう。この時の動作は以下の様になると思います。
  1650.                                                                          [1650]
  1651.       1)"GO FWTERM" を送る。                                             
  1652.       2)">" を待つ。
  1653.       3)"3" を送る。
  1654.       4)">" を待つ。
  1655.       5)"MRE" を送る。
  1656.       6)">" を待つ。
  1657.                                                                           
  1658.     これらは既にやったことだけです。簡単にマクロにすることができますね。
  1659.     やってみましょう。
  1660.  
  1661.       SEND("GO FWTERM\R")
  1662.       WAIT(">") 
  1663.       SEND("3\R")
  1664.       WAIT(">")
  1665.       SEND("MRE\R")
  1666.       WAIT(">")
  1667.  
  1668.     こんな具合になったでしょうか。しかしこれは完全という訳ではありません。
  1669.  
  1670.                                                                          
  1671.       <FGAL・WTERM ユーザーズ>    FWTERM 
  1672.     
  1673.     の行を見て下さい。"ーズ" の後ろに ">" があるためここで 3 を送ってしま
  1674.     うのです。もう一度動作をよく考えてみましょう。 "ーズ"の後ろの ">"とプ
  1675.     ロンプトの">"を区別してやらなければなりません。違いを判断材料にすれば
  1676.     よいわけですね。相違点は、プロンプトの場合は  ">"で改行していますが、
  1677.     "ーズ>"の場合は改行せず、次にFWTERMと続いて改行しています。
  1678.     そこで次の様にしましょう。
  1679.                                                                           
  1680.       1)"GO FWTERM" を送る。
  1681.       2)改行文字 + ">" を待つ。
  1682.       3)"3" を送る。
  1683.       4)改行文字 + ">" を待つ。
  1684.       5)"MRE" を送る。
  1685.       6)改行文字 + ">" を待つ。
  1686.  
  1687.     これなら "ーズ" の後ろの ">" には反応しませんね。改行文字を待つには、
  1688.     次の様にします。
  1689.  
  1690.       WAIT("\010")
  1691.  
  1692.     "\" の後ろに文字コードを入れてやればいいんです。ですから、マクロはこの
  1693.     様に直しましょう。 
  1694.   
  1695.       SEND("GO FWTERM\R")
  1696.       WAIT("\010>")
  1697.       SEND("3\R")
  1698.       WAIT("\010>")
  1699.       SEND("MRE\R")
  1700.       WAIT("\010>")                                                     [1700]
  1701.  
  1702.     さて、実はまだこれでも誤動作を起こしてしまうのです。え?と思われるかも
  1703.     知れませんが、事実です。仮に誰かがアーティクルの中で行頭に ">" を使っ
  1704.     ていたとしましょう。そうするとこれはまさしく、改行文字 + ">"ですから、
  1705.     最後の WAIT 命令が実行されてしまい、次の命令に勝手に進んでしまいます。
  1706.     このことから、マクロを作る時は注意深く作らなければいけない、また、アー
  1707.     ティクル中にプロンプトとまぎらわしい文字を入れることは迷惑なことだとい
  1708.     うことが分って頂けると思います。
  1709.                                                                           
  1710.     WTNIF(by HALKON)ではこんな具合にしてMRE コマンドの終了を判定しています。
  1711.     (全く同じではありません。)
  1712.                                                                          
  1713.       PRMPT:
  1714.           TIMEOUT(0)
  1715.           SWITCH
  1716.                CASE(">")
  1717.                GOTO(CHK)
  1718.           END
  1719.       CHK:
  1720.           TIMEOUT(2)                                                       
  1721.           SWITCH
  1722.               CASE("\R")
  1723.                   GOTO(PRMPT)
  1724.               CASE(" ")
  1725.                   GOTO(PRMPT)
  1726.               CASE("  ")                                                   
  1727.                   GOTO(PRMPT)
  1728.           END
  1729.   
  1730.     詳しい説明は、ここではしませんが、">"を受信した後で、よく使われるはず
  1731.     の文字が送られてこないことで表示が終ったと判断している訳です。
  1732.                                                                           
  1733.     新たな命令が幾つかでてきましたが、BASICやCを御存知なら大体やっているこ
  1734.     とが想像つくと思います。 GOTO は対応しているラベルにジャンプする命令で
  1735.     す。ラベルは、"CHK:"の様に文字列の後ろに":" を付けることで表わします。
  1736.     SWITCH~CASE~END は受信文字列に該当するものがあれば、それに対応して反
  1737.     応するという分岐命令です。TIMEOUT 命令はWAITで待つ時間を設定する命令で
  1738.     す。ですから、"CHK:"の後ろのSWITCHでは、2 秒間しか待ちません。0 という
  1739.     のは、いつまででも待つ様にしているのです。
  1740.  
  1741.  
  1742.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1743.    4. まとめ
  1744.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1745.  
  1746.     以上をまとめるとこんな感じのマクロになるでしょうか。
  1747.  
  1748.       SEND(".00+")
  1749.       WAIT("Enter Connection-ID  --->")
  1750.       SEND("SVC\R")                                                      [1750]
  1751.       WAIT("Enter User-ID  --->")                                        
  1752.       SEND("\I")
  1753.       WAIT("Enter Password --->")
  1754.       SEND("\P")
  1755.       SEND("GO FWTERM\R")
  1756.       WAIT("\010>")
  1757.       SEND("3\R")
  1758.       WAIT("\010>")
  1759.       SEND("MRE\R")
  1760.  
  1761.       PRMPT:
  1762.          TIMEOUT(0)
  1763.          SWITCH
  1764.              CASE(">")
  1765.              GOTO(CHK)                                                     
  1766.          END
  1767.  
  1768.       CHK:
  1769.          TIMEOUT(2)
  1770.          SWITCH
  1771.              CASE("\R")
  1772.                  GOTO(PRMPT)
  1773.              CASE(" ")
  1774.                  GOTO(PRMPT)
  1775.              CASE("  ")                                                    
  1776.                  GOTO(PRMPT)
  1777.          END
  1778.  
  1779.     いかにもマクロって感じになってきましたね。
  1780.                                                                           
  1781.     初めにも書いたようにマクロの基本はSENDとWAITです。               
  1782.     それと動作制御のGOTO, SWITCH~CASE~END などと組み合わせるだけです。
  1783.     マクロの命令自体は単純です。難しいのは手順を考えることです。
  1784.     これさえしっかり出来れば、もうあなたもマクロプログラマです。
  1785.     それでは、頑張って下さい。
  1786.  
  1787.  
  1788.                                                     この章    野村  和正
  1789.  
  1790.  
  1791.  
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.                                                                          [1800]
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.  
  1807.  
  1808.  
  1809.  
  1810. ===============================================================================
  1811. 【第 8章】  マクロハイテク講座
  1812. ===============================================================================
  1813.  
  1814.  
  1815.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1816.    1. イベントドリブン
  1817.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1818.  
  1819.                                                                           
  1820.     イベントドリブンは、最近のはやりのプログラミングの方法論[*1]の一つで、 
  1821.     す。なにかの事象(イベント)が起こったことに反応して動くやり方を、示し
  1822.     ています。Windows のプログラミングなどでは基本的なテクニックになってい
  1823.     ます。
  1824.  
  1825.       [*1]パラダイムなんて呼ぶとそれっぽいやつですね。何のことはない
  1826.           単なる考え方のことです。
  1827.                                                                           
  1828.     さて、WTERM のマクロでこの方法を使うと、面倒なやり取りが簡単に記述でき
  1829.     ます。実際には  switch case end を使ったループを作るだけで実現できます。
  1830.     マクロで捕まえるべきイベントとは、ホストから送られてくる文字列ですから、
  1831.     これで可能なわけです。
  1832.  
  1833.     次に示すのが、実際マクロを書く場合の基本形です。特定の文字列が到着す
  1834.     るごとに対応した処理をします。                                       
  1835.  
  1836.         REPEAT:                                                          
  1837.             SWITCH
  1838.                 CASE("XXX")
  1839.                    "XXX" をに対応した処理
  1840.                 CASE("YYY")
  1841.                    "YYY" をに対応した処理
  1842.                 CASE("ZZZ")
  1843.                    "ZZZ" をに対応した処理
  1844.             END
  1845.         GOTO(REPEAT)
  1846.   
  1847.     例えば、NIFTY のオートログイン処理を考えると以下のような記述になります。
  1848.   
  1849.         LOGIN:                                                           
  1850.             SWITCH                                                       [1850]
  1851.                CASE("tion-ID  --->")    # サービス名称
  1852.                   SEND("SVC\r")
  1853.                CASE("User-ID  --->")    # ユーザー名
  1854.                   SEND("\i\r")
  1855.                CASE("Password --->")    # パスワード
  1856.                   SEND("\p\r")
  1857.                CASE("\010>")           # 終了
  1858.                   GOTO(ENDLOGIN)
  1859.             END
  1860.         GOTO(LOGIN)
  1861.         ENDLOGIN:
  1862.  
  1863.     もちろん、WAIT()を使っても同じことが可能です。しかし、この方法の利点は、
  1864.     順番を厳密にしなくて済む、変更が容易、ホストの仕様変更に強い、いくつか
  1865.     の条件を同時に待つことができる、などの手段がいくつもあります。
  1866.                                                                           
  1867.     上記のログイン処理では、文字化けなどでの再入力の要求の処理を特に記述し
  1868.     なくても実現できます。このように柔軟な性質を持っている訳です。
  1869.                                                                          
  1870.     これは、初心者マクロプログラマにもお薦めの常套手段です。
  1871.  
  1872.  
  1873.  
  1874.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1875.    2. 多方向分岐
  1876.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=                                  
  1877.  
  1878.     WTERM のマクロの面白いところは、引数がすべて文字列であり、そのすべてが
  1879.     平等に扱われている点にあります。
  1880.                                                                          
  1881.     数も数字で構成された文字列であり、命令の引数としてかかれたものは、変数
  1882.     以外は文字列として格納されます。そして、変数は実行時には文字列を表すわ
  1883.     けです。                                                         
  1884.                                                                           
  1885.     無条件ジャンプ命令のGOTO() の飛び先を示すラベルも実は単なる文字列で
  1886.     す。したがって、
  1887.  
  1888.         GOTO(foo)
  1889.  
  1890.     と
  1891.  
  1892.         A$="foo"
  1893.         GOTO(A$)
  1894.  
  1895.     は、ともに FOO: と名前のついたラベルに分岐します。
  1896.     CALL()  でも同様です。これが何の役に立つのでしょうか。NIFMCR3 では積極
  1897.     的にこの性質を使っています。
  1898.                                                                          
  1899.     例えば、NIFMCR3 の命令語判定し、それぞれの処理へ分岐する部分を素直に書
  1900.     くと次のようになります。                                             [1900]
  1901.  
  1902.         PICWORD(R$, L$, ":")    # キーワード取り出し
  1903.         JUMPE(r$, "TO", TO)     # メイルの送信
  1904.         JUMPE(r$, "MES", MES)   # 会議室の発言
  1905.         JUMPE(r$, "DOWN", DOWN) # ライブラリのダウンロード
  1906.         JUMPE(r$, "LIST", LIST) # ライブラリの一覧
  1907.         : 以下同様
  1908.  
  1909.     これを変数を使った分岐で処理すると、次のようにわずかなマクロ命令で同じ
  1910.     処理ができます。
  1911.  
  1912.         PICWORD(R$, L$, ":")    # キーワード取り出し
  1913.         GOTO(r$)                # 処理ルーチンへ分岐
  1914.                                                                          
  1915.     この方法を使った場合、ラベルの名前がある程度制限される欠点があります。
  1916.     しかし、この欠点は分岐前に名前の変換処理などをすれば容易に解決できる程
  1917.     度のものです。上手に使うと大変効果があります。
  1918.  
  1919.     初期のBASIC などでも似たような技が使えました。今でもLispなどでは、こう
  1920.     いったことができます。インタプリタ言語ならではのおもしろいさが感じられ
  1921.     ます。
  1922.                                                                           
  1923.  
  1924.  
  1925.  
  1926.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1927.    3. 選択項目の検査
  1928.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1929.  
  1930.  
  1931.     前回の多方向分岐は、うまく使えば強力な使い方になります。しかし、問題は
  1932.     それほど簡単ではありません。
  1933.     たとえは、分岐のひな型を考えてみましょう。
  1934.  
  1935.         FREAD(L$)               # ファイルから 1 行読む                  
  1936.         PICKWORD(R$, L$, ":")   # ":" までを取り出す。
  1937.         GOTO(R$)                # TO/MES/DOWN などへ分岐する
  1938.  
  1939.     これでも、一応動作はします。しかし、このままでは問題が起きる場合が存在
  1940.     します。どういう場合でしょうか?
  1941.  
  1942.     それは、必ずしも正しい命令がくると保証できないからです。
  1943.     たとえば、MES: と書くべきところを MESS: と書いた場合はどうでしょう。
  1944.     そのようなラベルはない(エラー)か、全く意図したとは別のところへ行くこ
  1945.     とになります。
  1946.                                                                           
  1947.     そのラベルが存在するかどうか、あらかじめチェックする必要があります。
  1948.     なるべく簡単に、正しいかどうか検査する方法はないでしょうか。この方法の
  1949.     ヒントは、文字列の検索判定を活用するところにあります。
  1950.                                                                          [1950]
  1951.         JUMPSRCHN("TO MES DOWN LIST HP ...", R$, ERROR)
  1952.         GOTO(r$)                # TO/MES/DOWN などへ分岐する
  1953.  
  1954.     このほうほうなら、文字列に含まれないものは  ERROR に行くので問題がなく
  1955.     なります。
  1956.  
  1957.     これで、問題がすべて解決かと言うとそうでもありません。 R$ が "LI" など
  1958.     という短いものだと誤判定をしてしまいます。そこで、工夫として判定前に前
  1959.     後に文字を追加します。
  1960.  
  1961.         INS(R$, 1, ":")         # 判定用文字の追加
  1962.         CAT(R$, ":")
  1963.         JUMPSRCHN(":TO:MES:DOWN:LIST:HP:...", R$, ERROR)
  1964.         CHANGE(R$, ":", "")     # 判定用文字を除く
  1965.         GOTO(R$)                # TO/MES/DOWN などへ分岐する
  1966.     
  1967.     こうすれば、判定ミスもなくなります。いろいろ余分なものが付きましたが、
  1968.     分岐先が多いならばこれでも効果があります。
  1969.  
  1970.     このテクニックの応用は分岐先の検査以外にも、パラメーターの検査、フラグ
  1971.     の検査などに使っています。前処理をサブルーチンにすれば、面倒さも軽減で
  1972.     きます。
  1973.                                                                          
  1974.  
  1975.  
  1976.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1977.    4. 動的実行制御
  1978.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  1979.  
  1980.  
  1981.     ハイテク講座  2.で取り上げたように変数には飛び先を納めることができます。
  1982.     このことをうまく使うと、さまざまな応用ができます。
  1983.  
  1984.     例えば、A B C と言う 3 つの処理があったとします。講座 (1) で紹介した方
  1985.     法で書くと次のようになります。    
  1986.  
  1987.         LOOP:
  1988.           SWITCH
  1989.              CASE("A の条件")
  1990.                 A の処理
  1991.              CASE("B の条件")
  1992.                 B の処理
  1993.              CASE("C の条件")
  1994.                 C の処理
  1995.           END
  1996.        GOTO(LOOP)
  1997.     
  1998.     次に条件は同じで処理だけちょっと異なる、A B C'  と言うのが必要になると
  1999.     どうしますか。そこで変数に飛び先きを入れて制御すると簡単です。     
  2000.                                                                          [2000]
  2001.         S$="PROCC"              # 最初の処理ラベル
  2002.         LOOP:
  2003.           SWITCH
  2004.              CASE("A の条件")
  2005.                 A の処理
  2006.              CASE("B の条件")
  2007.                 B の処理
  2008.              CASE("C の条件")
  2009.                 GOTO(S$)        # 指定された処理へ移る
  2010.           end
  2011.         GOTO(LOOP)
  2012.         PROCC: C の処理
  2013.             S$="CDASH"          # 次の処理を指示する
  2014.         GOTO(LOOP)                                                       
  2015.         CDASH: C' の処理
  2016.         GOTO(LOOP)
  2017.     
  2018.     こういったパターンは意外によく現れますから、うまく使うとかなり効果的な
  2019.     テクニックになります。
  2020.  
  2021.     また、GOTO() でなく CALL()  でも同様に使えます。サブルーチンを呼ぶ前に
  2022.     処理ルーチンを変数に与えるのも一つの手ですね。
  2023.  
  2024.             S$="PROCA"          # 最初は A
  2025.             CALL(SUB)
  2026.             S$="PROCB"          # 次に B
  2027.             CALL(SUB)
  2028.             S$="PROCC"          # そして C
  2029.             CALL(SUB)
  2030.               :
  2031.         SUB:
  2032.               :
  2033.             CALL(S$)            # ここは指示された処理を行う
  2034.                :
  2035.         RETURN
  2036.                                                                          
  2037.     こういった使い方の利点は、マクロが短くなるだけではありません。
  2038.     同じ処理が、 1箇所に集まってくれるので修正などを加えた場合など、修正忘
  2039.     れがなくなります。
  2040.  
  2041.     逆に欠点としては、制御構造が不透明になることです。何をやろうとしている
  2042.     のか、しっかりコメントを書いて対処することにしましょう。
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2050.    5. フラグを使う                                                       [2050]
  2051.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2052.  
  2053.  
  2054.     メイルが到着している、センドはされないように、この処理は先にする、など
  2055.     など。後で処理をどうするか指示状態を変数に記録しておくものをフラグとい
  2056.     います。
  2057.  
  2058.     たとえは、最初に "--メールが" と表示されたら、M$="MAIL" と設定すれば、
  2059.     後で読み出し処理を始めることができます。
  2060.  
  2061.     さて、WTERM のマクロでは、変数は A$ ~ Z$ の26個しか使えません。
  2062.            (注  現在では、変数は A% ~ Z% の26個も使用できます。 H.INOUE)
  2063.     かなり貴重な資源です。対してフラグの情報量はあるかないかだけで非常に少
  2064.     ないのです。つまり、フラグと変数を 1 対 1 で割り当てるのはもったいない
  2065.     となります。
  2066.  
  2067.     そこで、1 つの変数に複数のフラグを納める方法を考えてみましょう。     
  2068.  
  2069.     A)変数の特定の位置にフラグを納める
  2070.     -------------------------------------
  2071.  
  2072.       変数は文字列ですから長さを持ちます。この長さ方向に値を納める方法です。
  2073.  
  2074.           N$="0000000000" # 10 個のフラグをクリア
  2075.              :                                                         
  2076.           P$=1            # フラグ #1 をセット
  2077.           CALL(SET)
  2078.              :
  2079.           P$=3            # フラグ #3 を検査
  2080.           CALL(CHECK)
  2081.           JUMPE(S$, "1", MAIL)
  2082.              :
  2083.  
  2084.           #------- フラグを制御するサブルーチン ---------------
  2085.  
  2086.           CHECK:          # フラグの状態を検査(p$: フラグ番号)
  2087.              S$ = N$
  2088.              COPY(S$, P$, 1)      # 指定位置の取り出し
  2089.           RETURN
  2090.           RESET:S$="0"    # フラグを消す                               
  2091.              GOTO(flag)
  2092.           SET:  S$="1"    # フラグを設定
  2093.           FLAG:DEL(N$, P$, 1)
  2094.              INS(N$, P$, S$)
  2095.           RETURN                                                       
  2096.  
  2097.  
  2098.     B)名前を使った方法
  2099.     -------------------------------------
  2100.                                                                          [2100]
  2101.       A)で紹介した方法は変数の使用効率は大変いいものですが、取り扱いが面倒
  2102.       です。また、フラグの解釈が機械的で判りにくい欠点もあります。
  2103.                                                                           
  2104.       そこで、フラグの数はたかだか十数個として、もう少し冗長な手法を考えて
  2105.       みましょう。
  2106.  
  2107.       フラグには、文字列による名前を与えます。例えばメイル到着なら"MAIL"、
  2108.       センドを切るのは "NOSEND" などとします。フラグは文字列の中に":MAIL:
  2109.       NOSEND:" のように詰め込みます。(区切り ":" の意味は講座 3でやったも
  2110.       のですね)
  2111.  
  2112.       扱いが面倒になりそうですが、実は a)よりも簡単に済んでしまいます。
  2113.       サブルーチンを用意する必要さえ無いのです。
  2114.  
  2115.  
  2116.           N$=":FLAG:"                     # すべてのフラグをクリア
  2117.              :
  2118.             INS(N$, ":NOSEND", 1)         # フラグの設定               
  2119.              :
  2120.             JUMPSRCHY(N$, ":MAIL:", MAIL) # フラグの検査
  2121.              :
  2122.             CHANGE(N$, ":MAIL:", ":")     # フラグのクリア
  2123.              :
  2124.  
  2125.       フラグの設定は、 INS()(あるいは CAT()を使う)で行い、検査はSRCH系の
  2126.       命令 {JUMP|IF}SRCH{Y|N}() で行い、フラグのクリアはCHANGE() です。
  2127.       これなら、単独の変数を使った手間(ステップ数)と変わりません。
  2128.  
  2129.       また、マクロのデバッグとして、フラグの状態を見る場合にもその内容は、
  2130.       一目瞭然です。
  2131.  
  2132.  
  2133.     【ワンポイント】
  2134.     -------------------------------------
  2135.  
  2136.       N$が、全くの空や ":" だけになると、SRCH が思ったように働かないため、
  2137.       初期値として ":FLAG:" のようにダミーのフラグを与えます。
  2138.       なぜそうなるかは、自分で考えて見ましょう。
  2139.  
  2140.  
  2141.  
  2142.  
  2143.                                                                          
  2144.  
  2145.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2146.    6. 時間監視
  2147.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2148.  
  2149.     マクロに限らず、通信用プログラムの重要な概念に時間監視(タイムアウト)
  2150.     があります。通信は相手のあることですから、相手のトラブルを常に考慮   [2150]
  2151.     する必要があるわけです。
  2152.  
  2153.     WTERM マクロには、時間監視の命令として TIMEOUT()/STIMEOUT()  がありま
  2154.     す。WAIT() や SWITCH CASE() END で待ちに入って指定された時間が経過して
  2155.     も応答が無い場合の制御を行います。
  2156.  
  2157.     さて、この時間監視をどう決めるかは簡単ではありません。ある処理は30秒で
  2158.     応答がなければ異常でとか、ある処理は 300秒を越えても正常とか、とにかく
  2159.     いろいろあります。
  2160.  
  2161.     一番難しいのは、どれくらいかかるか見当が付かない場合です。例えば、会議
  2162.     室の読み出しには、どの位かかるのが正常でしょうか。毎日読んでいるなら、
  2163.      5分位でしょうか、月に 1度なら、30分かかっても不思議はありません。
  2164.  
  2165.     そこで NIFMCR3では、行送りの時間を基準にする方法を使っています。行送り
  2166.     が止まって一定時間が経過したら、タイムアウトをとります。
  2167.  
  2168.     この方法の実現は、イベントドリブン(講座 1を参照)を使っていれば非常に
  2169.     簡単です。
  2170.  
  2171.         STIMEOUT(30, ERROR)     # 30 秒応答が無ければ ERROR へ行く
  2172.         LOOP:
  2173.           SWITCH
  2174.             CASE()
  2175.               処理
  2176.             CASE()
  2177.                :
  2178.             CASE("\R")          # 行が送られたら
  2179.               GOTO(LOOP)        # やり直し(タイムアウトのリセット)     
  2180.           END
  2181.         GOTO(LOOP)
  2182.  
  2183.     この方法なら、タイムアウトの時間をあまり気にする必要がありません。
  2184.     また、トラブルを検知した場合の応答も一定の時間で応答してくれます。
  2185.  
  2186.     NIFMCR.MAC  や、私の作った外部マクロには、このようなフレーズが繰り返し
  2187.     て現れています。最近は、一種のスタイルのように使っています。
  2188.  
  2189.     トラブルは、ホストの障害ばかりではありません。マクロの予想していないプ
  2190.     ロムプトで待ちに入った(ホストの仕様変更でよく起こる)などのリカバリ(
  2191.     障害処理)が可能になります。                                     
  2192.  
  2193.     もちろん、この方法は万能ではありません。改行ばかりが送られる、改行が異
  2194.     常に遅いなどのケースで誤動作します。まあ、そういうのは故意でもなければ
  2195.     起こらないとは思いますが。
  2196.  
  2197.  
  2198.  
  2199.     
  2200.                                                                          [2200]
  2201.  
  2202.  
  2203.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2204.    7. 末尾最適化
  2205.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2206.  
  2207.     LISP や PROLOG  と言った言語をご存じでしょうか。人工知能用の言語として
  2208.     結構有名です。これらの言語で行う繰り返し処理の基本形は、再帰呼び出しと
  2209.     言ってループの代わりに、何度もサブルーチンコール繰り返す方法です。
  2210.  
  2211.     再帰呼び出しは、ループが終わるまで(戻る位置を記憶するため)メモリーを
  2212.     どんどん使うので効率が良くありません。そこで、呼び出すのがそのルーチン
  2213.     の最後なら戻る位置を記録せずに制御を移す(つまり単なる分岐をする)方法
  2214.     が考えだされました。
  2215.  
  2216.     これが、末尾最適化と呼ばれる方法です。通常これは言語処理系(コンパイラ
  2217.     やインタプリタ)がすることですが、プログラマが直接書いても悪いことでは
  2218.     ありません。WTERM マクロでも実は同じテクニックが使えます。
  2219.  
  2220.     例えば、次のようなパターンでサブルーチン呼び出しをしたものを考えます。
  2221.  
  2222.         CALL(A)
  2223.           :
  2224.  
  2225.         A:
  2226.           :
  2227.           CALL(B)
  2228.         RETURN
  2229.         B:
  2230.           :                                                              
  2231.           CALL(C)
  2232.         RETURN                                                           
  2233.         C:
  2234.           :
  2235.         RETURN
  2236.  
  2237.     サブルーチンを活用したときによく現れるパターンです。さて、これを次のよ
  2238.     うに書き換えたらどうなるでしょうか。
  2239.  
  2240.         CALL(A)
  2241.           :
  2242.  
  2243.         A:
  2244.           :
  2245.         GOTO(B)         # CALL() を GOTO() にする                        
  2246.         B:
  2247.           :
  2248.         GOTO(C)         #   同上
  2249.         C:
  2250.           :                                                              [2250]
  2251.         RETURN
  2252.  
  2253.     最終的な動作は同じですが、ステップ数は減り、RETURN  の処理が減った分高
  2254.     速になったはずです。これだけのことですが、大きなマクロでは、このパター
  2255.     ンは結構多くなるので全体ではかなりのステップ削減に貢献してくれます。
  2256.                                                                          
  2257.  
  2258.  
  2259.  
  2260.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2261.    8. マクロファイルのサブルーチン呼び出し
  2262.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=                              
  2263.  
  2264.     NIFMCR 3.7  から外部マクロという機構が追加されました。これは一定の規約
  2265.     を守ってマクロを作れば 1つのマクロファイルをサブルーチンのように扱うこ
  2266.     とができるしくみです。
  2267.  
  2268.     さて、この外部マクロの考え方は単純ですが、実際にこれを行うのは楽ではあ
  2269.     りません。WTERM 自身は、このような機構を用意していないのです。
  2270.  
  2271.     いかにして「外部マクロ」を実現するか考えていきます。
  2272.                                                                          
  2273.  
  2274.  
  2275.     A)マクロの切り替え命令(chain)
  2276.     -------------------------------------
  2277.  
  2278.       WTERM  でマクロをファイル単位で切り替えるには、CHAIN()  を使います。
  2279.       たとえば、CHAIN("A.MAC")  とするだけです。開始する位置(ラベル)の指
  2280.       定も CHAIN("A.MAC$FOO") などとすることができます。   
  2281.  
  2282.       CHAIN() は、ファイル単位での GOTO() として働きます。CHAIN() では変数
  2283.       の内容はそのまま引き継がれるため、切り替えたマクロで連携して処理を進
  2284.       めることも簡単です。
  2285.  
  2286.       しかし、CHAIN() と GOTO() は全く同じ働きではありません。たとえば、A.
  2287.       MAC の中で、GOTO(FOO) と CHAIN("A.MAC$FOO") は共に FOO: に制御が移り
  2288.       ます。しかし、これには動作上の違いがあります。それは、
  2289.  
  2290.       CHAIN() は CALL() の記録をすべて破棄する
  2291.  
  2292.       と言うことです。これは CHAIN() を使うと CALL()で呼んだところに、戻っ
  2293.       てこれないことになります。
  2294.  
  2295.                                                                          
  2296.  
  2297.     B)外部マクロの実現方法
  2298.     -------------------------------------
  2299.                                                                         
  2300.       CHAIN() すると、現在のマクロ実行位置情報が失われます。しかし、マク [2300]
  2301.       ロファイルを切り替えるには、CHAIN() しかありません。そこで、なんとか
  2302.       戻ってくる機構を作り上げることにします。
  2303.                                                                          
  2304.       方法論としては、記録を残せるものは変数しかありません。したがって、変
  2305.       数にどこまで実行しているのかを記録しておき、外部マクロから制御が戻っ
  2306.       た時点でこの記録をもとに実行状態を復元することにします。
  2307.  
  2308.  
  2309.  
  2310.     C)外部マクロの実装
  2311.     -------------------------------------
  2312.  
  2313.       ・呼び出し処理
  2314.  
  2315.         外部マクロへ制御を移すこと自体は簡単です。パラメーターとして渡され
  2316.         たマクロ名で CHAIN() するだけで可能です。
  2317.  
  2318.         ただし、呼び出し前に、戻るべき状況を記録する必要があります。
  2319.         NIFMCR.MACでは、中断する節目となる処理ステップを数えるようにしてい
  2320.         ます。(数え方はちょっと不規則ですが)
  2321.  
  2322.         後は、外部マクロの呼び出し指示を見つけると、この中断点記録をもって
  2323.         制御を CHAIN() で引き渡すことになります。
  2324.  
  2325.       ・復帰処理                                                       
  2326.  
  2327.         外部マクロでは、CHAIN("NIFMCR.MAC$RESUME")  と言う決まり文句を使っ
  2328.         て終了することになっています。つまり、外部マクロは、何も考えずにこ
  2329.         の命令を実行すれば、NIFMCR.MAC  が続きの処理を再開してくれます。
  2330.  
  2331.         さて、実際の復帰処理は、次のような手順で行います。               
  2332.  
  2333.            1. 復帰処理中のフラグを立てる
  2334.  
  2335.            2. 中断記録をもとに処理ステップ分岐する
  2336.  
  2337.            3. フラグを元にサブルーチン呼び出しを重ねる
  2338.  
  2339.            4. 目的のポイントまできたらフラグをクリアする
  2340.  
  2341.            5. 復帰処理終了
  2342.  
  2343.       以上のような方法により、外部マクロの呼び出しが行われています。
  2344.       また、NIFMCR 3.8  からは、使用中のファイルを閉じて復帰時にオープンし
  2345.       なおすように改良しています。これにより、外部マクロでのファイルの読み
  2346.       出しが自由にできるようになっています。                   
  2347.  
  2348.  
  2349.  
  2350.                                                                          [2350]
  2351.  
  2352.  
  2353.  
  2354.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2355.    9. マクロテクニックいろいろ
  2356.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2357.  
  2358.     A)リターン値
  2359.     -------------------------------------
  2360.  
  2361.       NIFMCR.MAC  では常套手段として、サブルーチンの終了には戻り値を、与え
  2362.       ています。特定の変数[*2]にサブルーチンの処理が成功したのか、失敗した
  2363.       のかを設定して戻します(例外もありますが)。
  2364.  
  2365.       いちいち設定するのは面倒なようですが、サブルーチンをとして次のような
  2366.       値を設定するものを作っておきます。                           
  2367.  
  2368.           TRUE: S$="TRUE"
  2369.           RETURN                                                       
  2370.           FAIL: S$="FAIL"
  2371.           RETURN
  2372.  
  2373.       これを使うのは、必ず RETURN の前ですから、講座 7の、末尾最適化が使え
  2374.       ます。つまり、RETURN を書く代わりに、GOTO(TRUE), GOTO(FAIL) とするだ
  2375.       けです。マクロ全体で 4 行増えるだけのことです。
  2376.  
  2377.       これにより、サブルーチンの組み立て方に統一性とれて、結局自分が混乱し
  2378.       なくてすむのが利点です。また、論理的な戻り値が必要なサブルーチンを作
  2379.       る場合にはとても効果的です。
  2380.  
  2381.         [*2]  STATUS と言うことで S$ を使っています。
  2382.  
  2383.                                                                        
  2384.  
  2385.  
  2386.     B)引用に気を付けろ
  2387.     -------------------------------------
  2388.  
  2389.       NIFTYのプロムプトには、紛らわしいものがあります。たとえば、MREadの終
  2390.       了は ">" だけです。途中の発言で使われているものと見分けることが必要
  2391.       です。
  2392.  
  2393.       引用と本物のプロムプトの違いはなんでしょうか。人間はなぜ見分けること
  2394.       ができるのでしょうか..そう、単に時間の問題です。本物のプロムプトの後
  2395.       には、何もメッセージ(文字)が送られてこないのです。
  2396.  
  2397.       WAIT() 命令には、引数が 1つのものと 3つのものがあります。 1つのWAIT()
  2398.       命令は、単に文字列を(TIMEOUTまで)待つだけですが、 3つの引数の WAIT()
  2399.       は次に何も送られてこないと言う条件を待つことができます。
  2400.                                                                        [2400]
  2401.       つまり、 3引数の WAIT() は、まさにプロムプト検知のためにあるわけです。
  2402.       たとえば、単一の ">" をプロムプトを待つには次のようにすることができ
  2403.       ます。
  2404.  
  2405.       # 待ち状態の確認
  2406.  
  2407.         MPROMPT:
  2408.         WAIT(">", 1, MPROMPT)
  2409.  
  2410.       つまり、">"を受信して、 1秒以内に何か受信すればやり直し、という感じ
  2411.       です。( 1秒を選んだのは 0 でない最小の引数のため)
  2412.  
  2413.       さて、待つべきプロムプトが必ず 1つなら、これで十分ですが一般的にはい
  2414.       ろいろなプロムプトの可能性があるとおもいます。実際、">"あるいは、
  2415.       "CCS(N)>" を待つといったケースが多々あります。
  2416.                                                                        
  2417.       この場合次のような使い方で実現できます。
  2418.  
  2419.       MRELOOP:                                                         
  2420.           STIMEOUT(30, ERROR)
  2421.           SWITCH
  2422.                CASE("\010>")      # プロムプト ">"
  2423.                    WAIT("", 1, MRELOOP)
  2424.                CASE("\010CCS(N)>") # プロムプト "CCS(N)>"
  2425.                    WAIT("", 1, MRELOOP)
  2426.                CASE("\r")
  2427.                    GOTO(MRELOOP)
  2428.           END
  2429.  
  2430.       空の文字列を待つ、ことで何も来ないと言う条件を調べる訳です。
  2431.  
  2432.       確実にプロムプトを待つと言うのは、ログを引用される可能性もあって
  2433.       、なかなか難しいことです。時間条件付きの wait() は、この可能性に対す
  2434.       る強力な命令となります。
  2435.  
  2436.       *       *       *
  2437.  
  2438.       何も来ないと言う条件の検出は、プリミティブで WTERM  のマクロの弱点で
  2439.       した。この拡張によって、引用による誤動作の確率は非常に小さくできるの
  2440.       です。
  2441.  
  2442.           CALL(WAITOUT)     # 確認                               
  2443.  
  2444.  
  2445.  
  2446.     C)前方一致の検査
  2447.     -------------------------------------
  2448.  
  2449.       最初の文字だけが一致したかどうかで判定するにはどうすれば良いでしょう。
  2450.       NIFMCR.MAC ではつぎのようにしています。                            [2450]
  2451.                                                                        
  2452.           INS($R, 1, ":")
  2453.           CAT($R, ":")
  2454.           JUMPSRCHY(R$, ":SUB", SUBJECT)  # SUB* の判定
  2455.  
  2456.       複数の値を検査するときの逆の要領です。文字列の操作は、うまく組み合わ
  2457.       せるといろんな使い方ができます。この辺がアイディアの見せ所です。
  2458.  
  2459.  
  2460.  
  2461.     D)A または B
  2462.     -------------------------------------
  2463.  
  2464.       確実に値の内容が判るなら、そのなかに含まれているか否かの検査だけなら
  2465.       ば手抜きをしても大丈夫。講座 (3)の選択項目の検査で示した最初のパター
  2466.       ンを使えます。                                           
  2467.  
  2468.           JUMPSRCHY("FAIL|ERROR", S$, ERROR)                           
  2469.  
  2470.       中途半端なものでも、適用範囲を間違えなければ十分役に立ちます。
  2471.  
  2472.  
  2473.  
  2474.     E)引用に気を付けろ 2
  2475.     -------------------------------------
  2476.  
  2477.       NIFTY のプロムプトは、2行で初めて意味を持つものが少なくありません。
  2478.       そこで NIFMCR.MAC では、次のようなパターンをよく使っています。
  2479.  
  2480.           STIMEOUT(30, FAIL)
  2481.           LOOP:
  2482.             SWITCH
  2483.               CASE("\010続き (改行で次文書")
  2484.                 WAIT("\010>")
  2485.                 SEND("\R")                # 改行を送って進める        
  2486.               CASE("\010FOURM>")                                      
  2487.                 GOTO(NEXTSTEP)
  2488.               CASE("\R")
  2489.                 GOTO(LOOP)
  2490.             END
  2491.           GOTO(LOOP)
  2492.  
  2493.       この方法の欠点は、WAIT("\010 > ")  が成立しない場合、いつまでも待ち
  2494.       つづける可能性があることです。そこで STIMEOUT() と共に、TIMEOUT(1, LOOP)
  2495.       を入れておきます。1 秒以内に成立しなければ、誤検知と判定するわけです。
  2496.  
  2497.  
  2498.                                                                          
  2499.     F)文字列エスケープは大変だ
  2500.     -------------------------------------                                [2500]
  2501.  
  2502.       WTERM  のマクロでは、
  2503.           LOGOPEN(LOGFILE.LOG)
  2504.       を
  2505.           LOGOPEN("LOGFILE.LOG")
  2506.       と書いても同じ意味になります。
  2507.       これは特別な場合を除いて、WTERM のマクロは何でも文字列と解釈するよう
  2508.       になっているためです。ところが、この特別な場合の兼ね合いで、クォート
  2509.        (") をつけると、うまくいかないケースがあります。
  2510.  
  2511.       さて、特別な場合を除いてクォートが要らないのですから、その特別な場合
  2512.       をまず考えてみましょう。たとえば次のような文字列です。
  2513.  
  2514.           SEND("MREAD ROOM:1,4,6\R")
  2515.           WAIT("  >> ")
  2516.  
  2517.       これは、クォートをとると全く意味が変わってしまいます。
  2518.       したがって、こういう使い方の時にクォートを忘れてはいけません。
  2519.  
  2520.       では、文字列の中にダブルクォートの文字 (")  自体を入れたいときは、ど
  2521.       うしますか。そう、\ でエスケープするのです。send("\"") とすれば、" 
  2522.       だけが送信されます。
  2523.       しかし、ちょっと待ってください。\を送る場合を考えてみましょう。
  2524.       \ を指定する場合は?それに send に送られるものと、" 自体も実は違うも
  2525.       のです。
  2526.  
  2527.       たとえば、A$="\"" とした場合、A$ に入るのは何でしょうか。
  2528.       実は、A$ には、\" と言う 2文字の文字列が納められます。つまり特別な処
  2529.       理(エスケープ)をしているのは、SENDなのです。
  2530.       ところが文字列指定にも特別なことがあります。つまり、\" となった場合、
  2531.       後ろの " を文字列の終わりと考えないのです。
  2532.  
  2533.       ここまでわかったところで、\ や "  のみを変数に入れるにはどうすれば良
  2534.       いでしょうか?・・・面倒だから、答を出しておきましょう。
  2535.       どうしてこれで良いのか、考えてみてください。
  2536.  
  2537.         ・基礎編
  2538.  
  2539.             A$=\
  2540.             B$="
  2541.  
  2542.         ・応用編
  2543.  
  2544.             F$="\\USR\BIN\\\DIR.LST"
  2545.             CHANGE(F$, \\, \)
  2546.             A$="
  2547.             CAT(A$, F$)
  2548.             CAT(A$,"                                                   
  2549.             PRINTCR(A$)
  2550.                                                                          [2550]
  2551.       最後の括弧がないのは、間違いではありません。ただし、保証された書式で
  2552.       もありませんので、将来正しく動作しなくなる恐れがあります。
  2553.  
  2554.       つまり、これらがクォートをつけると意図した動作にならないケースです。
  2555.       マクロトレースなどで、これらがどう動いているか追ってみると分かりやす
  2556.       いですよ。
  2557.  
  2558.         %%  実際は、この動きをつかむのに結構悩んだのでした。(^_^;)
  2559.  
  2560.       また一文字に限って、というわけではありません。問題はパリティ(奇遇)
  2561.       と出現位置なのです。たとえば、次のような指定はどうなるか?
  2562.  
  2563.         A$="""   これは " が代入される
  2564.         A$=\""   これは \""
  2565.         A$=123   これは A$="123" と同じ
  2566.  
  2567.       一見ばらばらに見えますが、明確なルールがあります。まず、最初の'=' ま
  2568.       たは '('のところで前後に分けます。前の文字列が、X$(X は任意の英字)
  2569.       ならば、変数への代入として、後ろの文字列を入れます。それ以外は命令語
  2570.       と解釈します。
  2571.       そして、文字列を取り出すときには、最初と最後をペアで "  が揃っている
  2572.       ときはじめて、クォート文字として働くのです。
  2573.       私の場合、一部を除いて意図的に使い分けています。文字列として扱う場合
  2574.       は、必ずクォートします。数字やラベルの直値は、クォートしません。そう
  2575.       いうルールを定めて使い分けています。これは、マクロを組むために、引数
  2576.       をどういうクラス(数字、文字列、記号)で扱っているか明示する配慮です。
  2577.  
  2578.       ところで、こういう性質が分かってくるといろいろ危ない書き方が
  2579.       できたりします。:-)
  2580.  
  2581.         PRINT="HELLO "
  2582.         K$(DOCTOR)
  2583.         PRINTCR=K$)
  2584.  
  2585.       ま、こういう書き方をして、ある日突然動かなくなってもだれにも文句は言
  2586.       えませんが。
  2587.  
  2588.         %%  あんどきゅめんてっど・だぶるたーむ」とか言ったりして:-)
  2589.  
  2590.  
  2591.  
  2592.     G)禁断の反則技 (^_^;)
  2593.     -------------------------------------                                
  2594.  
  2595.       さて、最後に示すこの技は、WTERM マクロの実装法を考えるとできるだろう
  2596.       と思って調べたものです。確かに動作はします。以下がそのテストプログラ
  2597.       ムですが、どう動くは判りますか?
  2598.  
  2599.           REPEAT:
  2600.               CALL(SUPPLY)                                               [2600]
  2601.               JUMPE(A$, "", STOP)
  2602.               PRINT("SUPPLY>")
  2603.               PRINTCR(A$)
  2604.           GOTO(REPEAT)
  2605.           STOP:EXIT
  2606.  
  2607.           SUPPLY:
  2608.               PICKWORD(A$, "AAA BBB CCC DDD", " ")
  2609.           RETURN
  2610.  
  2611.       なんと、定数を破壊読み出しすると言う恐ろしい手法です。
  2612.       順序制御などに使えると思っていますが、副作用が強すぎて私も使うのは、
  2613.       躊躇している恐ろしいテクニックです。(^_^;)
  2614.  
  2615.  
  2616.  
  2617.  
  2618.  
  2619.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2620.   10. 高速テキスト送信テクニック
  2621.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2622.  
  2623.     WTERM には、ホスト局の特性によっていくつかのテキスト送信方法が用意され
  2624.     ています。決められたファイルをそのまま送信するなら、マクロでもこの送信
  2625.     機能が利用できます。しかし、マクロを使う場合、動作の指示とメッセージを
  2626.     同じファイルに入れたいものです。
  2627.  
  2628.     たとえば、メイルの送信を考えると、
  2629.  
  2630.        |
  2631.        |*SENDMAIL    ← 指示
  2632.        |TO:AAA00000  ← 以降送信文
  2633.        |SUB:こんにちは
  2634.        |ぼく元気です。
  2635.        |  :
  2636.  
  2637.     指示はマクロが READ() 命令 (FREAD/RREAD) で読み出し、以降を UPLOAD() 
  2638.     で送信する、と言った方法は残念ながら使えません(UPLOADはファイル全体を
  2639.     送信するため)。
  2640.  
  2641.     このため、指示と本文を混在させるなら、マクロが送信の操作をする必要があ
  2642.     ります。
  2643.                                                                          
  2644.  
  2645.     A)シンプルテキスト送信
  2646.     -------------------------------------
  2647.  
  2648.       さて、送信と言う作業は、結局メッセージを送っているだけです。
  2649.       つまり、単純に言えば、SEND() を続けて行えば良いことになります。      
  2650.                                                                          [2650]
  2651.         STEXT:FREAD(L$, TEXTEND)  # FOPEN() されているとする
  2652.             SEND(L$)
  2653.             SEND("\R")
  2654.             GOTO(STEXT)
  2655.         TEXTEND:SEND("/POST\R")
  2656.  
  2657.       これでも動作はしますが、受信処理をするきっかけがないので、送信中なに
  2658.       も表示されないことになります。また、相手の都合を考えず次々メッセージ
  2659.       を送るため、ホストによっては障害を起こすことがあります。
  2660.  
  2661.       そこで、次のようにします。
  2662.  
  2663.         STEXT:FREAD(L$, TEXTEND)  # FOPEN() されているとする
  2664.             CONVERT(OFF)
  2665.             SEND(L$)
  2666.             CONVERT(ON)
  2667.             SEND("\R")
  2668.             WAIT("\R")            # 復帰文字を待つ
  2669.         GOTO(STEXT)
  2670.         TEXTEND:SEND("/POST\R")
  2671.  
  2672.       つまり、ホスト局が送った復帰文字 (\R:CR) を返してくる[*1] まで次の行
  2673.       を送るのを待ってやるわけです。
  2674.  
  2675.       なお、読み込んだ文字列に '\'などが含まれていたら、WTERM は特殊文字と
  2676.       思ってしまうので CONVERT(OFF) で抑制します。
  2677.  
  2678.       さて、この方法(改行を待ちながらの送信)は、「低速テキスト送信」に相
  2679.       当します。障害は起こりにくいのですが、名前が示す通りあまり効率は良く
  2680.       ありません。そこで高速化の工夫を考えてみましょう。
  2681.  
  2682.       [*1]  送った文字を無条件に返すところでは WAIT("\010") として、行送り
  2683.             文字 (LF) を待つ方がよいかもしれません。
  2684.  
  2685.  
  2686.  
  2687.     B)テキスト送信の高速化
  2688.     -------------------------------------
  2689.  
  2690.       
  2691.       一般に、NIFTY のような接続網[*2]を経由するサービスは通常行単位で、パ
  2692.       ケット(送信単位)を組み立てます。ここで、前行の処理が済まないまま、
  2693.       次の行を送ると中継装置のバッファー(作業用のメモリー)があふれて障害
  2694.       を起こす[*3]のです。                                      
  2695.       つまり、テキスト送信を高速化するには、障害を起こさない範囲で行の先送
  2696.       りをしてやれば良いのです。
  2697.  
  2698.         [*2]  NIFTY では FENICS のこと。PC-VAN なら C&C-VAN を使っています。
  2699.               (他にもありますが)
  2700.                                                                          [2700]
  2701.         [*3]  昔の ROAD1 は、2 行以上先送りすると落とされることが良くあり
  2702.               ました。最近の ROAD1 は、使ったことが無いのでしりません
  2703.                                                                        
  2704.       さて、行を先送りするには、どうすれば良いでしょう。一行余計に送る場合
  2705.       を考えてみましょう。
  2706.  
  2707.         1) 最初の行を送る
  2708.         2) CR を待たず次の行を送り 1 行目の CR を待つ
  2709.         3) 3 行目を送り 2 行目の CR を待つ
  2710.         4) 4 行目を送り 3 行目の CR を待つ
  2711.         :  以下同様
  2712.  
  2713.       最初の行を送った時点で CR を待たず次の行を送り、2 行目の後(あるいは
  2714.        3行目を送る前)から CR を待ってやればれば良いことになります。
  2715.        これで常に 1 行の先送りが可能となります。
  2716.  
  2717.       さて、これを一般的にして n 行先送りを WTERM のマクロで作ってみましょう。
  2718.  
  2719.         S$=5                  # 先送り行数
  2720.         STEXT:FREAD(L$, TEXTEND)  # FOPEN() されているとする
  2721.             CONVERT(OFF)
  2722.             SEND(L$)
  2723.             CONVERT(ON)
  2724.             SEND("\R")
  2725.             JUMP>(S$, 0, NOWAIT)
  2726.             WAIT("\R")        # 復帰文字を待つ
  2727.             GOTO(STEXT)
  2728.  
  2729.         NOWAIT:               # 先送りのため復帰を待たない
  2730.             SUB(S$, S$, 1)
  2731.         GOTO(STEXT)
  2732.         TEXTEND:SEND("/POST\R")
  2733.  
  2734.       さて、この例で先送り数を無限に取った場合は、最初の WAIT() を入れない
  2735.       例と同じ動作になります。実はこの場合は、WTERM の超高速テキスト送信の
  2736.       方式に相当します[*4]。
  2737.  
  2738.       後は、いろいろなバランスの上で、先送りの行数を決めるだけです。
  2739.       たとえば、NIFMCR3 では、高速指定時で先送り数を 5 行にしています。
  2740.       この辺は実験的に決めるしかないでしょうね。
  2741.  
  2742.         [*4]  手順的に同じと言うこと。マクロでやるとオーバーヘッドのため超
  2743.               高速動作にはならないでしょうね。(2400くらいならほぼ同じ動作
  2744.               になります)                                           
  2745.  
  2746.  
  2747.  
  2748.  
  2749.  
  2750.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=                                  [2750]
  2751.   11. 最後に
  2752.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  2753.  
  2754.     これで、WTERM のマクロハイテク講座は終りです。このシリーズでは、NIFMCR.
  2755.     MAC を記述するのに使った方法で、割と使えそうなものを取り上げました。
  2756.  
  2757.     ここで取り上げた方法は、良いものでも唯一の方法でもありません。また、マ
  2758.     クロ入門としては、やや難しい面もあると思います。工夫次第でこんな面白い
  2759.     方法があるんだよ、と言ったマニア的楽しみですね。
  2760.  
  2761.  
  2762.                                                  この章      安富  伸浩  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.  
  2777.  
  2778.  
  2779.  
  2780.  
  2781.  
  2782.  
  2783.  
  2784.  
  2785.  
  2786.  
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.  
  2794.  
  2795.  
  2796.  
  2797.  
  2798.  
  2799.  
  2800.                                                                          [2800]
  2801.  
  2802.  
  2803.  
  2804.  
  2805.  
  2806.  
  2807. ===============================================================================
  2808. 【第 9章】  マクロ  コマンド(パラメーター)説明
  2809. ===============================================================================
  2810.  
  2811.  
  2812.  
  2813.   [ 実行命令文 ]
  2814.  
  2815.       BELL        BLINK       BREAK       CHILD       CLS         COLOR  
  2816.       CRT         CUTFILE     DELAY       DELAYM      DELFILE     DOWNLOAD
  2817.       FCLOSE      FCOPY       FDIR        FDIRA       FILER       FLHA
  2818.       FLINE       FMOVE       FOPEN       FPOINT      FREAD       FREN
  2819.       FRENAME     FTYPE       FTYPEA      GET         GETC        GETS
  2820.       HANGUP      INPUT       INPUTF      ISKANJI     LOGCLOSE    LOGOPEN
  2821.       MAKERB      MKDIR       OFF         CLOSE       OOPEN       OPENCHK
  2822.       OREAD       PRINT       PRINTCR     PRINTER     RCLOSE      ROPEN
  2823.       RPOINT      RREAD       SEND        SETTIME     SMENU       TABSPACE
  2824.       TAPPEND     TIMED       TOPEN       TCLOSE      UPLOAD      UPTEXT
  2825.       VCLEAR      VCLEAR2     VLIST       VSWAP       VTACHG      VTCLEAR
  2826.       VTCOPY      VTLIST      VTOCHG      VTOCHG2     VTSWAP      WAIT
  2827.       WAPPEND     WCLOSE      WOPEN       WRITE
  2828.  
  2829.  
  2830.       UPTEXT    1.低速テキスト送信   2.高速テキスト送信  3.超高速テキスト
  2831.  
  2832.       UPLOAD    1.XMODEM-SUM         2.XMODEM-CRC        3.XMODEM-CRC/1024
  2833.                 4.FlyingX 128/S     5.FlyingX-128/C    6.FlyingX-1024/C
  2834.                 7.YMODEM             8.YMODEM-G          9.未使用       
  2835.                10.MLINK             11.ZMODEM           12.Quick-VAN    
  2836.                13.BP or BPL         14.TRANSIT                      
  2837.                21.ZM or ZMIBM(ZMODEM内蔵版の際使用)
  2838.                23.BP or BPL(BP内蔵版の際使用)
  2839.  
  2840.       DOWNLOAD  1.XMODEM-SUM         2.XMODEM-CRC        3.XMODEM-CRC/1024
  2841.                 4.FlyingX 128/S     5.FlyingX-128/C    6.FlyingX-1024/C
  2842.                 7.YMODEM             8.YMODEM-BAT        9.YMODEM-G/BAT 
  2843.                10.MLINK             11.ZMODEM           12.Quick-VAN    
  2844.                13.BP or BPL                                     
  2845.                21.ZM or ZMIBM(ZMODEM内蔵版の際使用)
  2846.                23.BP or BPL(BP内蔵版の際使用)
  2847.  
  2848.  
  2849.    [ 制御文 ]
  2850.                                                                          [2850]
  2851.       AUTOUD      CALL        CASE        CHAIN       COMMODE     CONVERT
  2852.       ELSE        END         ESCEXIT     EXIT        GOTO        HANGUPT
  2853.       IF<         IF<>        IF>         IFE         IFE<        IFE>   
  2854.       IFFILEN     IFFILEY     IFSRCHN     IFSRCHY     JUMP<       JUMP<> 
  2855.       JUMP>       JUMPE       JUMPE<      JUMPE>      JUMPFILEN   JUMPFILEY 
  2856.       JUMPSRCHN   JUMPSRCHY   MASKCRT     MDUMP       NJUMP       PAUSE 
  2857.       QUIT        RETURN      STIMEOUT    SWITCH      TIMEOUT     VCONVERT
  2858.       VSWITCH     YJUMP                 
  2859.          
  2860.  
  2861.    [ マクロ  ビルトイン関数 ]
  2862.  
  2863.  
  2864.       ADD         APS         CAT         CHANGE      CHANGE2     CHKPATH
  2865.       COPY        DATE        DATEADD     DATESUB     DEL         DELSPACE
  2866.       DISKSIZE    DISKFSIZE   DIV         FEXPAND     FILESIZE    FILETIME
  2867.       FSEARCH     FSPLIT      GETCRTS     GETDATAD    GETDIR      GETDOWND
  2868.       GETENV      GETID       GETLOGD     GETMACROD   GETMRES     GETTXUPD  
  2869.       GETUPD      GETUSERD    INS         LAPTIME     LASTDATE    LASTTIME
  2870.       LASTSTIME   LEFT        LENGTH      LOGTIME     LOWCASE     MACROVER
  2871.       MOD         MUL         PICKWORD    POS         RIGHT       SAVEWDAT
  2872.       SAVEW5B     SAVEW5D     STRCAT      SUB         TELFEE      TIME    
  2873.       UPCASE      WEEK        WRITELOG  
  2874.  
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.                                                                          
  2892.  
  2893.  
  2894.   以下  解説他  ABCD順です。
  2895.  
  2896.  
  2897.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2898.     ADD        [関  数]           ADD
  2899.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2900.                                                                          [2900]
  2901.     ADD(変数1,変数2または文字列2,変数3または文字列3)
  2902.  
  2903.       用途  変数 2に、変数 3の内容を足し(足し算)、変数 1にその解答(整数)
  2904.             が代入されます。代入される内容は、数字の文字列形式です。     
  2905.             変数 1 = (変数 2 or 文字列 2)+(変数 3 or 文字列 3)
  2906.  
  2907.       使用例1
  2908.           B$ = "1000"  C$ = "5"
  2909.           ADD(A$,B$,C$)
  2910.  
  2911.       結果  1
  2912.           A$=B$+C$  A$は A$ = "1005" になる
  2913.  
  2914.       使用例2
  2915.           ADD(A$,"50","20")
  2916.  
  2917.       結果  2
  2918.           A$=50+20  A$は A$ = "70"  になる
  2919.  
  2920.     関連項目  SUB,MUL,DIV,MOD
  2921.  
  2922.  
  2923.  
  2924.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2925.     APS        [関  数]           Adjust Postion String
  2926.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2927.  
  2928.     APS(変数,全長数,R(ight右寄せ) か L(eft左寄せ))
  2929.  
  2930.       用途  変数の文字列に、全長数文までの半角スペースを付加して文字列にし
  2931.             その変数文字が右寄せか左寄せかを指定する。
  2932.  
  2933.       使用例 1
  2934.           A$ = "WTERM"
  2935.           APS(A$,"10","L")
  2936.  
  2937.       結果  1
  2938.           A$="WTERM     "
  2939.  
  2940.       使用例2
  2941.           A$ = "WTERM"
  2942.           APS(A$,"10","R")
  2943.  
  2944.       結果  2
  2945.           A$="     WTERM"
  2946.  
  2947.     関連項目  CAT,COPY,DEL,INS,LEFT,RIGHT
  2948.  
  2949.  
  2950.                                                                          [2950]
  2951.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2952.     AUTOUD     [制御文]           AUTO UpDown on or off                   
  2953.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2954.                                                                          
  2955.     AUTOUD(ON,OFF)
  2956.  
  2957.       用途  マクロ中は本来  ZMODEM(ZM.EXE/ZMIBM.EXE) BPLUS(BP/BPL.EXE)の、
  2958.             自動起動の送信/受信モードを、OFFにします。
  2959.             これを  AUTODU(ON)で、ONにします。上記のプロトコル専用コードを
  2960.             確認したら  マクロ中でも自動起動します。 
  2961.             AUTOUD(OFF) で、ONにしたものを解除しデフォルトの自動起動解除に
  2962.             戻します。
  2963.  
  2964.       使用例 1
  2965.             AUTOUD(ON)
  2966.  
  2967.       結果   1
  2968.             自動起動  送信/受信モードをONにします。
  2969.  
  2970.       使用例 2
  2971.           AUTOUD(OFF)
  2972.  
  2973.       結果   2
  2974.           自動起動  送信/受信モードをOFFにします。
  2975.  
  2976.     関連項目  DOWNLOAD,UPLOAD
  2977.  
  2978.  
  2979.  
  2980.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2981.     BELL       [実行文]           BELL
  2982.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  2983.  
  2984.     BELL(文字列または変数,文字列または変数,文字列または変数)         
  2985.  
  2986.       用途  ある一定時間、BEEPを鳴らします。
  2987.             回数設定
  2988.                 鳴らす長さ単位ミリ秒   1/1000  秒  から   9  秒まで 
  2989.                 回数                   1        回  から  99  回まで
  2990.                 間隔      単位ミリ秒   1/1000  秒  から   9  秒まで 
  2991.  
  2992.       使用例 
  2993.           BELL("500","5","1000")
  2994.  
  2995.       結果
  2996.           0.5 秒の長さを、1 秒間隔で、 5回鳴らす。
  2997.  
  2998.  
  2999.  
  3000.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[3000]
  3001.     BLINK      [実行文]           BLINK of screen                        
  3002.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3003.  
  3004.     BLINK(色指定,BLINK回数,間隔)                                         
  3005.  
  3006.       用途  上記設定時間、画面を点滅させます。
  3007.  
  3008.             色指定         0  BLACK   黒       1  BLUE    青  
  3009.                            2  RED     赤       3  YELLOW  黄  
  3010.                            4  GREEN   緑       5  MAGENTA 紫  
  3011.                            6  CYAN    水色     7  WHITE   白  
  3012.                           10  BLACK   黒反転  11  BLUE    青反転
  3013.                           12  RED     赤反転  13  YELLOW  黄反転
  3014.                           14  GREEN 緑反転    15  MAGENTA 紫反転
  3015.                           16  CYAN  水色反転  17  WHITE   白反転
  3016.             BLINK 回数     1  回から
  3017.             間隔           1/1000  秒  から  4000( 4秒)まで       
  3018.  
  3019.       使用例
  3020.           BLINK("2","5","40")
  3021.           
  3022.       結果
  3023.           赤色と白色のリバースで、交互に 5回を、40ミリ秒間隔で点滅します。
  3024.  
  3025.       注意
  3026.           FMR /TOWNS 版では、正常に表示できない場合もあります。
  3027.  
  3028.     関連項目  CLS,CRT
  3029.  
  3030.  
  3031.  
  3032.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3033.     BREAK      [実行文]           send BREAK
  3034.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3035.  
  3036.     BREAK
  3037.  
  3038.       用途  ブレーク信号を送ります。
  3039.  
  3040.       使用例
  3041.           BREAK
  3042.  
  3043.  
  3044.  
  3045.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3046.     CALL       [制御文]           CALL label
  3047.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3048.  
  3049.     CALL(ラベル)
  3050.     CALL(ラベル,変数1,変数2または文字列)                                 [3050]
  3051.  
  3052.       用途  指定されたラベルに制御を移し、RETURN文で、CALLの次の行に戻って
  3053.             きます。変数 1(必ず変数)と変数 2または文字列が指定してある場
  3054.             合には、変数 1に、変数 2、または文字列の内容を格納します。   
  3055.  
  3056.       注意  SWITCH  ~ END の構文中に、CALL文をいれないでください。
  3057.  
  3058.       使用例 1                               # 解説
  3059.           CASE("読みますか ? ☆ ([Yes]/No)") # 文字列待ち
  3060.               SEND(" ")                      # スペースを送る
  3061.               A$="SET PAUSE OFF"             # NIFTYの命令
  3062.               CALL(MAIL)                     # ラベル MAILをコールする
  3063.           CASE("Help=>]")                    # Help=>] という文字列待ち
  3064.  
  3065.       使用例 2                               # 解説
  3066.           CASE("Help=>]")                    # Help=>] という文字列待ち
  3067.               SEND(" ")                      # スペースを送る
  3068.               CALL(MAIL,A$,"SET PAUSE OFF")  # ラベル MAILをコールする
  3069.           CASE("Help=>]")                    # Help=>] という文字列待ち
  3070.  
  3071.       解説  例 1と例 2では、 1行少なくなります。
  3072.  
  3073.     関連項目  CASE,RETURN
  3074.  
  3075.  
  3076.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3077.     CASE       [制御文]           CASE
  3078.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3079.  
  3080.     ※※  SWITCH  の項目参照
  3081.  
  3082.     ※※  VSWITCHの項目参照
  3083.  
  3084.  
  3085.  
  3086.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3087.     CAT        [関  数]           CAT strings
  3088.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3089.     
  3090.     CAT(変数1,変数2または文字列1)
  3091.     CAT(変数1,変数2または文字列1,変数3または文字列2)
  3092.  
  3093.       用途  変数の文字列に、指定の文字列を追加連結をします。
  3094.              3つまでの連結が可能です。
  3095.  
  3096.       使用例  
  3097.           A$ = "ABC"
  3098.           CAT(A$,"12345")
  3099.  
  3100.       結果                                                               [3100]
  3101.           A$ = "ABC12345"                                                
  3102.  
  3103.       使用例  
  3104.           A$ = "ABC"                                                     
  3105.           B$ = "12345"
  3106.           C$ = "789"
  3107.           CAT(A$,B$,C$)
  3108.  
  3109.       結果
  3110.           A$="ABC12345789"
  3111.  
  3112.     関連項目  COPY,DEL,INS,LEFT,RIGHT,STRCAT
  3113.  
  3114.  
  3115.  
  3116.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3117.     CDCHK      [関  数]           CD CHecK
  3118.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3119.     
  3120.     CDCHK(ON,OFF)
  3121.  
  3122.       用途  CD信号を、常時ON(接続中)と仮定させます。
  3123.             OFF で、回線断とみせかけます。
  3124.             使用方法はいろいろありますが、 1つには通常は回線切断後マクロ
  3125.             は終了しますが、これを利用すれば動作の継続が可能になります。
  3126.  
  3127.  
  3128.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3129.     CHAIN      [制御文]           CHAIN
  3130.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3131.  
  3132.     CHAIN(変数1またはファイル名)
  3133.     CHAIN(変数1またはファイル名,変数2または文字列)
  3134.  
  3135.       用途  指定された文字列(または変数)を、マクロファイル名として、別の
  3136.             マクロを実行します。機能は、GOTOと同じです。             
  3137.              2番目の引数に、ドライブまたはディレクトリーが指定してあれば、
  3138.              2番目の引数ドライブにある、指定された文字列(または変数)を、
  3139.             マクロファイル名として、別のマクロを実行します。
  3140.             機能は、GOTOと同じです。
  3141.  
  3142.       使用例 1
  3143.           CHAIN("WWIV1.MAC$START") 
  3144.           
  3145.       解説   1
  3146.           マクロ WWIV1.MACの、ラベル STARTにジャンプします。
  3147.                                                                          
  3148.       使用例 2 
  3149.           CHAIN("WWIV1.MAC$START","B:\DATA\")
  3150.                                                                          [3150]
  3151.       解説   2
  3152.           マクロ  B:\DATA\WWIV1.MAC の、ラベル STARTにジャンプします。
  3153.  
  3154.     関連項目  GOTO                                                       
  3155.  
  3156.  
  3157.  
  3158.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3159.     CHANGE     [関  数]           CHANGE strings
  3160.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3161.       
  3162.     CHANGE(変数1,置換前文字列または変数2,置換後文字列または変数3)
  3163.  
  3164.       用途  変数 1から置換前文字列を検索し、該当文字があれば置換後文字列と、
  3165.             入れ換えます。
  3166.  
  3167.       注意  文字列の先頭から置換前文字列を検索して、該当した文字列全部を置
  3168.             換します。
  3169.             但、同一文字置換の場合、全域置換検索方式の為に、無限ループに陥
  3170.             り、WTERM から戻ってこれません。一応、文字列範囲を越えた場合、
  3171.             戻れる事は戻りますが通常は、やめておいてください。
  3172.             同一文字を置換する場合は、CHANGE2 をご使用ください。
  3173.  
  3174.       使用例 1
  3175.           A$ = "私の名前はAといいます。" 
  3176.           CHANGE(A$,"A","H.INOUE") 
  3177.  
  3178.       結果   1
  3179.           A$ = "私の名前はH.INOUEといいます。" 
  3180.  
  3181.       駄目な使用例
  3182.           A$="ABC..."
  3183.           CHANGE(A$,"ABC","ABCD")
  3184.  
  3185.       結果
  3186.           ABC...という文字をABCDに置換しても、置換後A$に、格納される文字列
  3187.           は、ABCD... で、またこれに置換文字 (ABC)が含まれているので、無
  3188.           限ループにはいってしまいます。このような使用方法はやめましょう。
  3189.           ちなみに結果は、以下のようになりますが。.
  3190.  
  3191.           A$="ABCDDDDDDDDDDDDDDDDDDDDDDDD..."
  3192.  
  3193.     関連項目  CAT,COPY,DEL,INS,CHANGE2
  3194.  
  3195.  
  3196.                                                                       
  3197.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3198.     CHANGE2    [関  数]           CHANGE strings part2               
  3199.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3200.                                                                          [3200]
  3201.     CHANGE2(変数1,置換前文字列または変数2,置換後文字列または変数3)
  3202.  
  3203.       用途  変数 1の先頭から置換前文字列を検索し該当文字があればその最初の
  3204.             文字列のみ置換します。複数の場合は、CHANGE2 を使って下さい。 
  3205.  
  3206.       注意  文字列の先頭から置換前文字列を検索して、最初に該当した文字列を
  3207.              1つのみ置換します。
  3208.             文中の該当文字全部を置換する場合は、CHANGE2 をご使用ください。
  3209.             同一文字置換でも、置換するのは前方一致する最初の文字列の 1回だ
  3210.             けです。
  3211.             
  3212.       使用例 1
  3213.           A$ = "こんにちは私は" 
  3214.           CHANGE2(A$,"にち","ばん") 
  3215.  
  3216.       結果   1
  3217.           A$ = "こんばんは私は"
  3218.  
  3219.       使用例 2
  3220.           A$="...ABC..."
  3221.           CHANGE2(A$,"ABC","XYZ")
  3222.  
  3223.       結果   2
  3224.           A$="...XYZ..."
  3225.  
  3226.     関連項目  CAT,COPY,CHANG,DEL,INS
  3227.  
  3228.  
  3229.  
  3230.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3231.     CHILD      [実行文]           execute CHILD process
  3232.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3233.  
  3234.     CHILD(変数1または文字列1)
  3235.     CHILD(変数1または文字列1,変数2,文字列2または変数3)
  3236.  
  3237.       用途  指定された文字列(または変数)をコマンド名として、子プロセスを
  3238.             起動します。変数 1もしくは文字列 1が、"FREE_MEMORY" という文字
  3239.             列の場合のみ、変数 2に空きメモリーの値を返します。この場合には、
  3240.             なにも実行しません。
  3241.  
  3242.       仕様1 CHILD(変数1または文字列1)の場合
  3243.  
  3244.             変数 1、または文字列 1のコマンド等を実行します。異常終了コード
  3245.             等は返しません。
  3246.  
  3247.       仕様2 CHILD(変数1または文字列1、変数2、文字列2または変数3)の場合
  3248.                                                                       
  3249.             変数 2は必ず変数でなければなりません。変数 1、または文字列 1の
  3250.             内容を実行し、プログラムのリザルト(返り値)を、変数 2に代入 [3250]
  3251.             します。なお変数 1、または文字列に書く起動プログラム名は必ず拡
  3252.             張子まで明記してください。また、それはカレントドライブに存在す
  3253.             る事が必要です。                                     
  3254.             変数 3または文字列 2は、その起動プログラムのオプションパラメー
  3255.             タを書きます。(なければ明記する必要はありません)
  3256.  
  3257.             正常終了であれば、 0を返します。
  3258.             但  異常であってもプログラムそのものが値を返さない場合は、 0に
  3259.             なります。なお、MS-DOSが返すエラーに関してのみ、以下のように記
  3260.             入されます。それ以外のプログラムが返すエラーは、数字(文字表記) 
  3261.             です。正常なら 0 です。
  3262.  
  3263.             DOS ERROR  2  意味  変数 1のプログラムが存在しない。
  3264.             DOS ERROR  8  意味  起動に必要な空きメモリーがない。
  3265.             DOS ERROR 10  意味  Irregal Enviroment
  3266.             DOS ERROR 11  意味  Irregal Format
  3267.  
  3268.       使用例 1
  3269.           CHILD("DIR B:")
  3270.  
  3271.       結果   1
  3272.           B ドライブのディレクトリ内容を表示します。
  3273.  
  3274.       使用例 2
  3275.           A$="DIR "
  3276.           B$=""
  3277.           GETLOGD(B$)
  3278.           CAT(A$,B$)
  3279.           CHILD(A$)
  3280.  
  3281.       解説   2
  3282.           GETLOGD(B$) で、ユーザー指定のログドライブを、B$へ格納します。
  3283.           CAT で、A$="DIR " と、B$="USER指定の、LOG 格納登録ドライブディレ
  3284.           クトリー" を連結します。                                      
  3285.           CHILD(A$ = "DIR USER指定のLOG格納登録ドライブディレクトリー")
  3286.           USER指定の、ドライブのファイル内容を表示します。
  3287.  
  3288.       使用例 3
  3289.           A$="ER"           
  3290.           CHILD("MLP.EXE",A$)
  3291.  
  3292.       結果   3
  3293.           この例の場合に、ファイルが開く事ができませんでした。
  3294.           MLP.EXEの場合 エラーコード   8 :ファイルオープン不良      
  3295.           PRINTCR(A$)
  3296.           8                               <-  画面
  3297.  
  3298.       解説   3
  3299.           MLP.EXE をチャイルドプロセスで起動したが、ファイルOPENエラーが発
  3300.           生して、異常コード 8をMLP.EXE が返しました。正常終了であれば   [3300]
  3301.           A$ には 0が代入されます。
  3302.                                         
  3303.       使用例 4
  3304.           A$="1"                          <-- 必ず 0 以外の数値          
  3305.           CHILD("MLP.EXE",A$,"-O -W -N") :以下  MLPのエラーコード解説
  3306.           JUMPE(A$,1,JUMPER1)             1 : 起動オプションエラー
  3307.           JUMPE(A$,2,JUMPER2)             2 : メモリー不足
  3308.           JUMPE(A$,3,JUMPER3)             3 : キーボードから転送中断
  3309.           JUMPE(A$,4,JUMPER4)             4 : 相手側から転送中断       
  3310.           JUMPE(A$,5,JUMPER5)             5 : ディスク・エラー
  3311.           JUMPE(A$,6,JUMPER6)             6 : タイムアウト
  3312.  
  3313.       結果   4
  3314.           この例の場合には、エラーコードを、JUMPE で比較して、その指定ラべ
  3315.           ルに、JUMPするようになっています。
  3316.  
  3317.       使用例 5
  3318.           CHILD("FREE_MEMORY",A$)         
  3319.                  ^^^^^^^^^^^      これ以外の文字列または、小文字等では不可
  3320.       結果  5
  3321.           この例の場合に、チャイルドプロセスのメモリー残量を、A$に格納しま
  3322.           す。これは、MS-DOS Version 3.XX 以上でしか動作しません。
  3323.  
  3324.  
  3325.  
  3326.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3327.     CHKPATH    [関  数]           CHecK PATH
  3328.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3329.       
  3330.     CHKPATH(変数1または文字列,変数2)
  3331.  
  3332.       用途  変数 1、または文字列に指定してあるドライブ、またはディレクトリ
  3333.             ーのPATHを調べて、存在するドライブであれば、変数 2に半角数字の
  3334.              1を返します。なければ半角数字の 0を返します。
  3335.             
  3336.       使用例
  3337.           CHKPATH("A:\LOG\",A$)
  3338.  
  3339.       結果
  3340.           A:\LOG\ は存在するので、A$には 1が返された。
  3341.  
  3342.  
  3343.  
  3344.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3345.     CLS        [実行文]           CLear Screen
  3346.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3347.  
  3348.     CLS
  3349.  
  3350.       用途  画面をクリアーします。                                       [3350]
  3351.                                                                        
  3352.       使用例
  3353.           CLS
  3354.                                                                          
  3355.     関連項目  BLINK,CRT
  3356.  
  3357.  
  3358.  
  3359.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3360.     COLOR      [実行文]           set COLOR
  3361.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3362.     
  3363.     COLOR(変数)
  3364.  
  3365.       用途  画面表示文字のカラー指定です。
  3366.  
  3367.             色指定         0  BLACK   黒       1  BLUE    青  
  3368.                            2  RED     赤       3  YELLOW  黄  
  3369.                            4  GREEN   緑       5  MAGENTA 紫  
  3370.                            6  CYAN    水色     7  WHITE   白  
  3371.                           10  BLACK   黒反転  11  BLUE    青反転
  3372.                           12  RED     赤反転  13  YELLOW  黄反転
  3373.                           14  GREEN 緑反転    15  MAGENTA 紫反転
  3374.                           16  CYAN  水色反転  17  WHITE   白反転
  3375.  
  3376.       使用例 
  3377.           COLOR(17)
  3378.           PRINTCR("メモです")
  3379.  
  3380.       解説
  3381.           表示色を、白反転に指定します。
  3382.           上記設定色で、画面に"メモです"と表示します。
  3383.  
  3384.     関連項目  PRINT,PRINTCR
  3385.  
  3386.  
  3387.  
  3388.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3389.     COMMODE    [制御文]           COM MODE CHG
  3390.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3391.  
  3392.     COMMODE(文字列)
  3393.  
  3394.     用途  通信中に、 RS232-Cモードの変更をしたい場合など有効です。
  3395.           文字列は、半角 3文字で指定し、それぞれの意味は以下の通りです。
  3396.           回線が切れると、この設定は無効になります。回線接続のままなら、マ
  3397.           クロを終了しても、この設定は有効になっています。
  3398.           また、ファイルのダウンロード時は、あらかじめホストの設定で指定さ
  3399.           れているファイル転送モードが、優先します。
  3400.                                                                          [3400]
  3401.     使用例
  3402.           COMMODE("N81")
  3403.           COMMODE("E72")                                               
  3404.                                                                          
  3405.            1文字目  パリティの指定           
  3406.                       N: パリティなし
  3407.                       O:奇数パリティ
  3408.                       E:偶数パリティ
  3409.            2文字目  ビットの指定
  3410.                       8: 8ビット
  3411.                       7: 7ビット
  3412.            3文字目  ストップビットの指定
  3413.                       1:  1ビット
  3414.                       2:  2ビット
  3415.                       5:1.5ビット
  3416.  
  3417.  
  3418.  
  3419.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3420.     CONVERT    [制御文]           extra word CONVERT on/off
  3421.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3422.  
  3423.     CONVERT(ON,OFF)
  3424.  
  3425.       用途  SEND、WAIT命令等で使用する、特殊文字を有効もしくは無効にします。
  3426.             なお、初期値は CONVERT(ON)です。                           
  3427.             ただし、\1文字だけの場合は有効になりませんので、その場合は命令
  3428.             (A$,"\")  を  命令(A$,\)のようにしてください。
  3429.  
  3430.       使用例                  # 解説
  3431.           CONVERT(ON)
  3432.           SEND("WTERM\R")     # WTERM"+CRを送信します  
  3433.           CONVERT(OFF)
  3434.           SEND("WTERM\R")     # "WTERM\R"を送信します(\RをCRに変換しない)
  3435.  
  3436.     関連項目  SEND,VCONVERT
  3437.  
  3438.  
  3439.  
  3440.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3441.     COPY       [関  数]           COPY string
  3442.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3443.  
  3444.     COPY(変数または文字列,指定開始数値,複写終了文字数数値)
  3445.  
  3446.       用途  変数の複写開始位置から、複写文字数だけ文字を複写し、変数に代入
  3447.             します。
  3448.             数値は、バイト単位で、何番目か漢字の場合は1 文字 2バイトです。
  3449.  
  3450.       使用例 1                                                           [3450]
  3451.           A$ = "123456789" 
  3452.           COPY(A$,"5","4")  
  3453.  
  3454.       解説   1                                                           
  3455.           変数 A$の、 5文字から 8文字までを、A$に代入します             
  3456.  
  3457.       結果   1 
  3458.           A$ = "5678"
  3459.  
  3460.       使用例 2
  3461.           A$ = "こんにちはXYさん" 
  3462.           COPY(A$,"12","4")  
  3463.  
  3464.       解説   2
  3465.           文字列変数  A$の、12文字(漢字で6 文字目)から、15文字までを 4文
  3466.           字を、A$に代入します。
  3467.  
  3468.       結果   2
  3469.           A$ = "XY"
  3470.  
  3471.     関連項目  APS,CAT,DEL,INS,LEFT,LENGTH,POS,RIGHT
  3472.  
  3473.  
  3474.  
  3475.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3476.     CRT        [実行文]           CRT indication on/off
  3477.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3478.  
  3479.     CRT(ON,OFF)
  3480.  
  3481.       用途   CRT画面表示を、一時中断します。但  表示内容はログ(記録中に限
  3482.             る)と、スクロールバッファーには記録されます。          
  3483.              OFFにした時点で、マクロが終了する(途中でオンにしない限り)ま
  3484.             で有効です。また、マクロが終了した時点(異常終了も含む)に表示
  3485.             する状態に戻ります。 9600BPS以上の高速ホストで、画面表示しない
  3486.             にすると多少早くなります。
  3487.  
  3488.       使用例 1
  3489.           CRT("OFF")
  3490.  
  3491.       結果   1 
  3492.           画面表示を、一時的に中断します。
  3493.       
  3494.       使用例 2
  3495.           CRT("ON")
  3496.  
  3497.       結果   2
  3498.           画面表示を再開します。
  3499.  
  3500.     関連項目  BLINK,CLS                                                  [3500]
  3501.  
  3502.                                                                          
  3503.  
  3504.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3505.     CUTFILE    [実行文]           CUT FILE                                  
  3506.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3507.  
  3508.     CUTFILE(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  3509.  
  3510.       用途  第 1パラメーターで指定されたファイルから、第 3パラメーターで指
  3511.             定された行数を、第 2パラメーターで指定されたファイルに書き込み
  3512.             、第 1パラメーターで指定されたファイルは書き込んだ分だけ減りま
  3513.             す。
  3514.             なお、第 2パラメーターで指定されたファイルは、以前の内容は保存
  3515.             されず、新規書き込み分のみになります。それを回避したい場合は、
  3516.             下記を参照ください。
  3517.       
  3518.       仕様  第 3パラメーターで指定された行数で、行数指定だけではなく、最初
  3519.             に、"A" を指定すると、第 2パラメーターで指定されたファイルに書
  3520.             き込む際は、アペンドモードになります。その場合、第 2パラメータ
  3521.             ーで指定されたファイルは、以前の内容はそのままで、追加書き込み
  3522.             になります。
  3523.  
  3524.       使用例 1
  3525.           A$ = "C:\MACRO\FILELIST.TXT"
  3526.           B$ = "C:\TEMP.TXT"
  3527.           C$ = "30"
  3528.           CUTFILE(A$,B$,C$)
  3529.  
  3530.       結果   1
  3531.           A$で指定されたファイル"C:\MACRO\FILELIST.TXT" から、C$で指定され
  3532.           た30行分を、B$で指定された"C:\TEMP.TXT" に書き込みます。
  3533.                                                                       
  3534.       使用例 2
  3535.           CUTFILE("C:\MACRO\FILELIST.TXT","C:\TMP.TXT","40")
  3536.  
  3537.       結果   2
  3538.           "C:\MACRO\FILELIST.TXT" から、30行分を"C:\TMP.TXT"に書き込みます。
  3539.  
  3540.       使用例 3
  3541.           A$ = "C:\MACRO\UP.TXT"
  3542.           B$ = "C:\EMP.TXT"
  3543.           C$ = "A20"
  3544.           CUTFILE(A$,B$,C$)
  3545.  
  3546.       結果   1
  3547.           A$で指定されたファイル"C:\MACRO\FILELIST.TXT" から、C$で指定され
  3548.           た30行分を、B$で指定された"C:\EMP.TXT"に、追加書き込みます。
  3549.  
  3550.     関連項目                                                             [3550]
  3551.  
  3552.  
  3553.  
  3554.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3555.     DATE       [関  数]           system DATE
  3556.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3557.  
  3558.     DATE(変数,区分挿入文字列[任意])  
  3559.  
  3560.       用途  変数に現在のシステム西暦年月日を代入します。
  3561.  
  3562.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。
  3563.  
  3564.       使用例 1   
  3565.           DATE(A$,"/") 
  3566.  
  3567.       結果   1
  3568.           A$ = "93/01/01"
  3569.  
  3570.       使用例 2   
  3571.           DATE(A$,":") 
  3572.  
  3573.       結果   2
  3574.           A$ = "93:01:01"
  3575.  
  3576.       使用例 3   
  3577.           DATE(A$,".")
  3578.  
  3579.       結果   3
  3580.           A$ = "93.01.01"
  3581.  
  3582.       使用例 4   
  3583.           DATE(A$)  
  3584.  
  3585.       結果   4
  3586.           A$ = "930101"
  3587.  
  3588.     関連項目  TIME,DATEADD,DATESUB,LASTDATE,WEEK
  3589.  
  3590.                                                                        
  3591.  
  3592.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3593.     DATEADD    [関  数]           DATE ADD
  3594.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3595.  
  3596.     DATEADD(変数1,区分挿入文字列(任意),変数2または文字列)
  3597.  
  3598.       用途  変数 1に入っている任意の日付け文字列に、変数 2(日数)を足した
  3599.             内容を、西暦年月日に修正して代入します。                  
  3600.             A$が、空白であれば、マシン側の年月日(システムデート)を代   [3600]
  3601.             入します。(A$="")
  3602.  
  3603.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。
  3604.                                                                          
  3605.       注意  計算可能範囲  1980.01.01 - 2038.01.01までです。
  3606.  
  3607.       使用例 1   
  3608.           A$ ="95.01.01"
  3609.           DATEADD(A$,"/","5")
  3610.  
  3611.       結果   1
  3612.           A$ = "95/01/06"
  3613.  
  3614.       使用例 2   
  3615.           A$ ="950101"
  3616.           DATEADD(A$,":","10") 
  3617.  
  3618.       結果   2
  3619.           A$ ="95:01:11"
  3620.  
  3621.       使用例 3   
  3622.           A$ ="95.01.01"
  3623.           DATEADD(A$,".","15")
  3624.  
  3625.       結果   3
  3626.           A$ ="95.01.16"
  3627.  
  3628.     関連項目  DATE,DATESUB,LASTDATE                           
  3629.  
  3630.  
  3631.  
  3632.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3633.     DATESUB    [関  数]           DATE SUBtract
  3634.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3635.  
  3636.     DATESUB(変数1,区分挿入文字列(任意),変数2または文字列)
  3637.                                                                        
  3638.       用途  変数 1に入っている任意の日付け文字列に、変数 2(日数)を引いた
  3639.             内容を、西暦年月日に修正して代入します。
  3640.             A$が、空白であれば、マシン側の年月日(システムデート)を代入し
  3641.             ます。(A$="")
  3642.  
  3643.       注意  計算可能範囲  1980.01.01 - 2038.01.01までです。
  3644.  
  3645.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。
  3646.  
  3647.       使用例 1   
  3648.           A$ ="95.01.01"                                               
  3649.           DATESUB(A$,"/","5")
  3650.                                                                          [3650]
  3651.       結果   1
  3652.           A$ = "94/12/27"
  3653.  
  3654.       使用例 2                                                           
  3655.           A$ ="950101"
  3656.           DATESUB(A$,"/","5")
  3657.  
  3658.       結果   2
  3659.           A$ = "94/12/27"
  3660.  
  3661.       使用例 3   
  3662.           A$ ="95.01.01"
  3663.           DATESUB(A$,":","10")
  3664.  
  3665.       結果   3
  3666.           A$ = "94:12:22"
  3667.  
  3668.       使用例 4   
  3669.           A$ ="950101"
  3670.           DATESUB(A$,".","20")
  3671.  
  3672.       結果   4
  3673.           A$ = "94.12.12"
  3674.  
  3675.     関連項目  DATE,DATEADD,LASTDATE
  3676.  
  3677.  
  3678.  
  3679.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3680.     DEL        [関  数]           DELete string
  3681.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3682.  
  3683.     DEL(変数,削除開始数値,削除文字分数数値)
  3684.                                                                        
  3685.       用途  変数の削除開始位置から、削除文字数だけ文字を削除し、再度変数に
  3686.             代入します。
  3687.             数値は、バイト単位で、何番目か漢字の場合は1 文字 2バイトです。
  3688.  
  3689.       使用例 1
  3690.           A$ = "123456789"
  3691.           DEL(A$,"5","4")    
  3692.  
  3693.       結果   1
  3694.           A$ = "12349"
  3695.                                                                        
  3696.       解説  変数A$の、 5文字目から 4文字分を削除し、A$に代入しました。
  3697.  
  3698.       使用例 2
  3699.           A$ = "こんにちは" 
  3700.           DEL(A$,"5","4")                                                [3700]
  3701.  
  3702.       結果   2
  3703.           A$ = "こんは"
  3704.                                                                          
  3705.     関連項目  APS,CAT,COPY,INS,LEFT,LENGTH,POS,RIGHT
  3706.  
  3707.  
  3708.  
  3709.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3710.     DELAY      [実行文]           DELAY
  3711.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3712.  
  3713.     DELAY(文字列または変数)
  3714.  
  3715.       用途  ある一定時間待ちます。単位は、 1秒  から  9999秒までです。
  3716.  
  3717.       使用例 
  3718.           DELAY(10) 
  3719.  
  3720.       結果
  3721.           10秒待ちます。
  3722.  
  3723.     関連項目  PAUSE
  3724.  
  3725.  
  3726.  
  3727.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3728.     DELAYM     [実行文]           DELAY Milli second
  3729.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3730.  
  3731.       DELAY(文字列または変数)
  3732.  
  3733.       用途  ある一定時間待ちます。
  3734.  
  3735.       単位  1000分の 1秒単位です。 1000分の 1秒  から  9.999 秒までです。 
  3736.             DELAYM(1000)で 1秒です。
  3737.  
  3738.       使用例 
  3739.           DELAY(2500)
  3740.  
  3741.       結果                                                               
  3742.           2.5 秒待ちます。
  3743.  
  3744.     関連項目  DELAY,PAUSE
  3745.  
  3746.  
  3747.  
  3748.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3749.     DELFILE    [実行文]           DELete FILE
  3750.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[3750]
  3751.  
  3752.     DELFILE(変数または文字列)
  3753.  
  3754.       用途  変数にかかれたファイルを削除します。                         
  3755.             その場合、正確にドライブやパス名等も記載してください。削除でき
  3756.             ない場合や、ファイルが存在しない場合は、マクロを中断します。
  3757.  
  3758.       注意  オープン中のファイルは、絶対に指定しないでください。
  3759.  
  3760.       使用例
  3761.           B$ = "A:\WTERM\TEMP.FIL"
  3762.           DELFILE(A$)
  3763.  
  3764.       結果
  3765.           A:\WTERMにある、TEMP.FIL を削除します。
  3766.  
  3767.  
  3768.  
  3769.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3770.     DELSPACE   [関  数]           DELete SPACE in Strings
  3771.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3772.  
  3773.     DELSPACE(変数1,変数2)
  3774.  
  3775.       用途  変数 2から、半角スペースや全角スペースをすべて削除し、変数 1に
  3776.             代入します。
  3777.  
  3778.       使用例
  3779.           B$ = "WTERM   .LZH  "                                  
  3780.           DELSPACE(A$,B$)
  3781.  
  3782.       結果
  3783.           A$ = "WTERM.LZH"
  3784.  
  3785.     関連項目  CAT,COPY,DEL,INS,CHANGE,CHANGE2
  3786.  
  3787.  
  3788.  
  3789.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3790.     DISKSIZE   [関  数]           DISK SIZE
  3791.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3792.  
  3793.     DISKSIZE(変数1,変数2または文字列)
  3794.                                                                        
  3795.       用途  変数 2で指定したディスクドライブの総バイト数を、変数 1に格納し
  3796.             ます。結果は、バイトで文字列です。
  3797.             空きサイズを表示する場合は、命令DISKFSIZE でお求めください。
  3798.  
  3799.       仕様  文字列のドライブは、半角小文字もしくは、A,B,C.....Z もしくは、
  3800.             番号で指定します。A = 1  B = 2  C = 3  Z = 26 となります。   [3800]
  3801.  
  3802.       注意  ドライブ指定が、正しくなければ、"-1"を返します。
  3803.  
  3804.       使用例 1                                                           
  3805.           B$="A"
  3806.           DISKSIZE(A$,B$) 
  3807.  
  3808.       結果   1
  3809.           A$ = "2654000"    * ドライブ Aの総バイト数の値
  3810.  
  3811.       使用例 2
  3812.           DISKFSIZE(A$,"") 
  3813.  
  3814.       結果   2
  3815.           A$ = "現在のドライブの総バイト数の値"
  3816.  
  3817.     関連項目  FILESIZE,FILETIME,FEXPAND,FSEARCH,FSPLIT,,DISKSIZE,GETENV
  3818.  
  3819.  
  3820.  
  3821.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3822.     DISKFSIZE  [関  数]           DISK Free SIZE
  3823.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3824.  
  3825.     DISKFSIZE(変数1,変数2または文字列)
  3826.                                                                        
  3827.       用途  変数 2で指定したディスクドライブの未使用領域のバイト数を、 
  3828.             変数 1に格納します。結果はバイトで文字列です。
  3829.             空きサイズを表示する場合は、命令DISKFSIZE でお求めください。
  3830.  
  3831.       仕様  文字列のドライブは、半角小文字もしくは、A,B,C.....Z もしくは、
  3832.             番号で指定します。A = 1   B = 2   C = 3   Z = 26  となります。
  3833.  
  3834.       注意  ドライブ指定が、正しくなければ、"-1"を返します。
  3835.  
  3836.       使用例 1                                                         
  3837.           B$="A"                                                        
  3838.           DISKFSIZE(A$,B$) 
  3839.  
  3840.       結果   1
  3841.           A$ = "1354000"    * ドライブAの空き領域の値
  3842.  
  3843.       使用例 2
  3844.           DISKFSIZE(A$,"") 
  3845.  
  3846.       結果   2
  3847.           A$ = "現在のドライブの空き領域の値"
  3848.  
  3849.     関連項目  FILESIZE,FILETIME,FEXPAND,FSEARCH,FSPLIT,DISKSIZE,GETENV
  3850.                                                                          [3850]
  3851.  
  3852.  
  3853.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3854.     DIV        [関  数]           DIVision                               
  3855.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3856.  
  3857.     DIV(変数1,変数2 or 文字列2,変数3 or 文字列3)
  3858.  
  3859.       用途  変数 2を、変数 3の内容で割って(除算)、変数 1には商(整数)が、代
  3860.             入されます。(内容は、数字の文字列形式)
  3861.             変数 1 =  (変数 2 or 文字列 2) ÷  (変数 3 or 文字列 3)
  3862.  
  3863.       使用例 1
  3864.           B$ = "1000" 
  3865.           C$ = "5"
  3866.           DIV(A$,B$,C$)
  3867.  
  3868.       結果   1
  3869.           A$= B$ DIV C$  
  3870.           A$は、 1000  ÷  5 = "200"
  3871.           
  3872.       使用例 2
  3873.           DIV(A$,"50","20")
  3874.  
  3875.       結果   2
  3876.           A$= 50 DIV 20  A$は A$ = "2"
  3877.                                                                        
  3878.     関連項目  ADD,SUB,MUL,MOD
  3879.  
  3880.  
  3881.                                                                        
  3882.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3883.     DOWNLOAD   [実行文]           DOWNLOAD file
  3884.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  3885.                                                                          
  3886.     DOWNLOAD(番号,ファイル名) No  1 - No  6                             
  3887.     DOWNLOAD(番号)            No  7 - No 14,No 21,No 23
  3888.     DOWNLOAD(番号,MODE)       No 99                      
  3889.  
  3890.       用途  ファイルの受信を行います。番号は受信方法を指定します。
  3891.  
  3892.       DOWNLOAD(番号、ファイル名)   ファイル名は必ず必要です。
  3893.  
  3894.         番号  プロトコルの種類
  3895.            1  XMODEM-128(SUM)
  3896.            2  XMODEM-128(CRC)
  3897.            3  XMODEM-1024(CRC)
  3898.            4  Flying/XMODEM-128(SUM)
  3899.            5  Flying/XMODEM-128(CRC)
  3900.            6  Flying/XMODEM-1024(CRC)                                  [3900]
  3901.   
  3902.       DOWNLOAD(番号)              ファイル名は必ず必要ありません。
  3903.   
  3904.         番号  プロトコルの種類                                           
  3905.            7  YMODEM
  3906.            8  YMODEM-G
  3907.            9  YMODEM-G/B
  3908.           10  MLINK           (MLP/F/I/J.EXE  使用  注 1)
  3909.           11  ZMODEM          (ZM/ZMIBM.EXE     使用  注 2)
  3910.           11  ZMODEM          (内蔵プロトコル    使用  注 2)
  3911.           12  Quick-VAN       (QV.EXE            使用      )
  3912.           13  BPLUS           (BP/BPL.EXE       使用  注 2)
  3913.           13  BPLUS           (内蔵プロトコル    使用  注 2)
  3914.           14  Transit        (内蔵版のみ              注 3)
  3915.           21  ZMODEM          (ZM/ZMIBM.EXE     使用      ) 
  3916.           23  BPLUS           (BP/BPL.EXE       使用      )
  3917.          107  ZMODEM          (ZM/ZMIBM.EXE     使用  YMODEM  受信)
  3918.          108  ZMODEM          (ZM/ZMIBM.EXE     使用  YMODEM/G受信)
  3919.          123  BPLUS           (BP/BPL.EXE       使用  7bitで使用の場合)
  3920.     
  3921.       DOWNLOAD(番号、MODE)        モード指定が必要です。          
  3922.   
  3923.         番号  プロトコルの種類
  3924.           99  BPLUS           (BP内蔵版のみ          
  3925.       
  3926.           99番指定のモード指定(SUPER版及び、BPLUS内蔵版)
  3927.  
  3928.         MODE  オプションの種類
  3929.            0  指定
  3930.  
  3931.               DOWNLOAD(99)
  3932.               DOWNLOAD(99,0)
  3933.               内蔵BPLUS でダウンロードしようとした場合に、指定ファイルと同
  3934.               名ファイルがあった場合、マニュアル動作と同じく、WINDOWが開き、
  3935.               +------------------------------------------------------+
  3936.               |             同名のファイルが存在します               |
  3937.               |     途中から継続する場合は Y を押して下さい[Yes/No]  |
  3938.               |                           上書きなら N を押して下さい|
  3939.               +------------------------------------------------------+
  3940.  
  3941.               と表示されます。その際は、御自分で選択入力してください。
  3942.                                                                        
  3943.            1  指定            (強制レジュームモード)
  3944.               DOWNLOAD(99,1)    強制レジュームモード
  3945.               内蔵BPLUS で、ダウンロードしようとした場合に、指定ファイルと
  3946.               同名のファイルがあった場合、ダウンロード異常中断ファイルとし
  3947.               て認識、レジュームダウンロードモードにはいります。
  3948.               この場合、そのファイルが不正なファイルや、クラッシュリカバリ
  3949.               ーできない場合は、WTERM 側が判断して中断します。
  3950.               その場合は、マクロはそのまま続行します。                   [3950]
  3951.  
  3952.            2  指定            (強制上書きモード    )
  3953.               DOWNLOAD(99,2)
  3954.               内蔵BPLUS でダウンロードしようとした場合に、指定ファイルと同
  3955.               名のファイルがあった場合、同名ファイルとして現在のファイル 
  3956.               を消して、同名の新規ファイルとして、ダウンロードします。
  3957.  
  3958.       ファイル名とは
  3959.         ファイル名とは、受信するファイル名です。
  3960.         ダウンロードファイルは、指定のダウンロードドライブに格納されます。
  3961.          1から 6番の、XMODEMや、Flying-XMODEMの場合のみ、指定します。 
  3962.          7番以降は、指定する必要ありません。
  3963.  
  3964.       使用例 1
  3965.           DOWNLOAD(1,"WTERM.LZH")
  3966.                                                                        
  3967.       結果   1                                                           
  3968.           WTERM.LZHをXMODEM-SUMで受信します。
  3969.  
  3970.       使用例 2
  3971.           DOWNLOAD(11)
  3972.           
  3973.       結果   2
  3974.           ZMODEMで、ファイルを受信します。  
  3975.  
  3976.       使用例 3
  3977.           DOWNLOAD(99,3)
  3978.           
  3979.       結果   3
  3980.           内蔵BPLUS で、ダウンロードとした場合に、指定ファイルと同名のファ
  3981.           イルがあったが、同名の新規ファイルとして、ダウンロードしました。
  3982.  
  3983.       注 1
  3984.           SUPER版、DN版のみ、内蔵プロトコルになります。
  3985.           それ以外は、MLシリーズ等の外部起動になります。
  3986.  
  3987.       注 2
  3988.           プトコル内蔵版の場合
  3989.           既存のマクロで、11/13を指定してある場合、内蔵のプロトコルが起動
  3990.           しますので、マクロは変更しなくても結構です。
  3991.           マクロ実行中で、なおかつZMODEM/BPLUS 自動送信をしないという設定
  3992.           の場合には、それぞれ送信は、ZM/ZMIBM BP/BPL.EXEを使用します。
  3993.           その場合は、マクロ文のDOWNLOAD UPLOADとも番号を変更してください。
  3994.  
  3995.       注 3
  3996.           SUPER版、DN版のみ
  3997.  
  3998.     関連項目  UPTEXT,UPLOAD,AUTOUD
  3999.  
  4000.                                                                          [4000]
  4001.  
  4002.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4003.     ELSE       [制御文]           ELSE
  4004.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4005.  
  4006.    ※※  VSWITCHの項目参照
  4007.  
  4008.  
  4009.  
  4010.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4011.     END        [制御文]           END
  4012.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4013.  
  4014.    ※※  SWITCHの項目参照
  4015.    ※※  VSWITCHの項目参照
  4016.  
  4017.  
  4018.  
  4019.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4020.     ESCEXIT    [制御文]           ESC key macro EXIT mode
  4021.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4022.  
  4023.       ESCEXIT(ON,OFF)                                                      
  4024.                                                                          
  4025.       用途  マクロの中断、もしくは中止は、通常は ESCキーでおこないますが、
  4026.             ESCEXIT(OFF)とした場合は、SHIFT+ESC(SHIFTキーを押しながら、同
  4027.             時に ESCキーを押す)でしか中断しません。
  4028.             このモードの際は、ファンクションキー(F1の位置)に "SHIFT"と、
  4029.             F2の位置に" + ESC"  F3の位置に、"=中断"と表示されます。
  4030.  
  4031.       使用例 1                                                         
  4032.           ESCEXIT(OFF)
  4033.           
  4034.       結果   1
  4035.           マクロ中断を、SHIFT+ESC(SHIFTキーを押しながら、同時にESCキーを
  4036.           押す)でしか受け付けません。
  4037.  
  4038.       使用例 2
  4039.           ESCEXIT(ON)
  4040.           
  4041.       結果   2
  4042.           マクロ中断を、ESC(ESCキーを押す)で、受け付けます。
  4043.  
  4044.  
  4045.  
  4046.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4047.     EXIT       [制御文]           EXIT macro
  4048.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4049.  
  4050.     EXIT                                                                 [4050]
  4051.     EXIT(変数1または文字列1)
  4052.     EXIT(変数1または文字列1,変数2または文字列2)
  4053.  
  4054.       用途  マクロを終了します。
  4055.             第 1パラメータ・第 2 パラメータになにもない場合は、マクロを
  4056.             終了します。(接続状況はそのまま)
  4057.             第 1パラメータに、A-Z までの文字列がある場合は、指定したA-Z
  4058.             までのグループを、接続している回線を強制切断した後、ダイヤル
  4059.             の実行をおこないます。
  4060.             第 2パラメータは、その次実行の時間を指定します。時間指定は、
  4061.             24時間表記です。(00:00 から 23:59)その指定時間までは、画面
  4062.             焼き付き防止処理で、起動時間+現在時刻の表示をします。
  4063.             中間の : は必ず必要です。
  4064.  
  4065.       仕様
  4066.             第 1パラメータ以降を指定した場合には、起動オプション等で指定
  4067.             したグループ内容は破棄され、指定したグループのみ有効になりま
  4068.             す。
  4069.  
  4070.       注意
  4071.             第 1パラメータに、設定していないグループ名やA-Z以外の文字列
  4072.             がある場合は、動作保証は致しません。(エラーチェックなし)
  4073.             第 2パラメータに、24時間表記以外の文字列がある場合も同様です。
  4074.  
  4075.       使用例 1                                                         
  4076.           EXIT
  4077.           
  4078.       結果   1
  4079.           接続中の場合には回線はそのまま、マクロのみ実行停止します。
  4080.  
  4081.       使用例 2   
  4082.           EXIT("A")
  4083.           
  4084.       結果   2
  4085.           接続中の場合には回線は切断します。
  4086.           正常切断後に、指定したAグループのアクセス実行をします。
  4087.  
  4088.       使用例 3   
  4089.           EXIT("A","09:00")
  4090.           
  4091.       結果   3
  4092.           接続中の場合には回線は切断します。
  4093.           正常切断後は、午前 9:00までスクリーンセーバーが起動します。
  4094.           午前 9:00になると、指定したAグループのアクセス実行をします。
  4095.  
  4096.       起動時間の設定をした場合の付加機能
  4097.           カレントドライブに、OTIMEMSG というテキストファイルがある場合
  4098.           には、その内容を以下のように画面に表示します。
  4099.           OTIMEMSGは、26byteまでしか表示しません。
  4100.           OTIMEMSG  がある場合                                           [4100]
  4101.              [ 起動時間 <年月日 現在時間> 表示メッセージ(OTIMEMSG内容)
  4102.           OTIMEMSG  がない場合
  4103.              [ WTERM Start time to 起動時間 < 現在時刻 > ]
  4104.           但し、OTIMEMSGが常時あると  -Oオプションで起動した時は毎回表示
  4105.           されます。
  4106.  
  4107.       使い方
  4108.           毎日定時に起動する場合など、アクセスポイントで不具合があった等
  4109.           の障害が発生した場合、既存ではそれを回避する事は不可能でした。
  4110.           そこで、QUIT にエラーレベルを追加してバッチで起動したりする手段
  4111.           の他に、これを設けました。もし通常接続しない場合には(たまたま
  4112.           メンテ日であった等)、ログインのマクロでエラーの処理部分に、
  4113.           EXIT(X,現在時間より+ 1時間後を指定)とかすれば、 1時間後に起動
  4114.           することが可能になります。
  4115.           他にもいろいろな利用方法があると思います。
  4116.  
  4117.  
  4118.     関連項目  QUIT
  4119.  
  4120.  
  4121.  
  4122.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4123.     FCLOSE     [実行文]           Fopened file CLOSE
  4124.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4125.  
  4126.     FCLOSE
  4127.  
  4128.       用途  FOPEN でオープンしたファイルを、CLOSE します。
  4129.  
  4130.       使用例
  4131.           FCLOSE                
  4132.  
  4133.     関連項目  FOPEN,FREAD,ROPEN,RREAD                                
  4134.  
  4135.  
  4136.  
  4137.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4138.     FCOPY      [実行文]           File COPY
  4139.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4140.  
  4141.     FCOPY(変数1または文字列1,変数2または文字列2)
  4142.     FCOPY(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  4143.  
  4144.       用途  変数 1または文字列 1で指定したファイルを、変数 2または文字列 2
  4145.             で指定したディレクトリーに複写します。もしくは、変数 1または文
  4146.             字列 1で指定したファイルを、変数 2または文字列 2で指定したディ
  4147.             レクトリーに複写します。コピー先に同名のファイルが存在した場合
  4148.             は拡張子を変更し、"FILE名.OLD"とリネームして保存します。さらに
  4149.             同名の"FILE名.OLD"が存在すれば、そのファイルは、FILE名.000とし
  4150.             て保存されます。"FILE名.000 ~ FILE名.999と積算します"       [4150]
  4151.       
  4152.       オプションパラメータの種類(変数 3または文字列 3で指定)
  4153.             /V 新しいファイルが正しいかどうかベリファイします。
  4154.  
  4155.       仕様  COPY ABC.EXE+A.EXE /B というような使用はできません。
  4156.  
  4157.       注意  エラーには対応しません。
  4158.  
  4159.       解説  MS-DOSのCOPYとほぼ同じです。
  4160.  
  4161.       使用例 1
  4162.           A$ = "C:\DOWN\WTERM.EXE"
  4163.           B$ = "D:\TERM"
  4164.           C$ = "/V"
  4165.           FCOPY(A$,B$)                                                   
  4166.                                                                          
  4167.       結果   1
  4168.           ドライブ C:\DOWN\にある WTERM.EXEを、ドライブ D:\TERMに複写します。
  4169.           その際、ベリファイします。
  4170.  
  4171.       使用例 2
  4172.           FCOPY("D:\TERM\WTERM.EXE")  
  4173.                                                                      
  4174.       結果   2
  4175.           ドライブ D:\TERM\にある WTERM.EXEを、カレントドライブに複写します。
  4176.           
  4177.       使用例 3
  4178.           FCOPY("D:\TERM\WTERM.EXE","C:\TEST")  
  4179.                                                                      
  4180.       結果   3
  4181.           ドライブ D:\TERM\にある WTERM.EXEを、C:\TEST\に複写します。
  4182.  
  4183.  
  4184.     関連項目  CHILD,FREN,FRENAME,FTYPE,FTYPEA,FDIR,FDIRA,FMOVE,FLHA
  4185.  
  4186.  
  4187.  
  4188.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4189.     FDIR       [実行文]           File Dir 
  4190.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4191.  
  4192.     FDIR(変数1または文字列1,変数2または文字列2)
  4193.     FDIR(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  4194.  
  4195.       用途  変数 1または文字列 1で指定したディレクトリー中のサブディレ
  4196.             クトリーやファイルの一覧を、変数 2または文字列 2で指定した
  4197.             ファイルを新規作成し、その内容を記載します。
  4198.             変数 3または文字列 3はオプションパラメーターです。
  4199.             オプションパラメーターは重複する際には、その命令の間に半角
  4200.             スペースを入れてください。前後はいりません。                 [4200]
  4201.       
  4202.       オプションパラメータの種類(変数 3または文字列 3で指定)
  4203.             /W   画面いっぱいに一覧形式を表示します。
  4204.  
  4205.             /A   指定した属性を持つファイルを表示します。
  4206.                  属性      D  ディレクトリー      R  読み出し専用ファイル
  4207.                            H  隠しファイル        S  システム・ファイル  
  4208.                            A  保存属性            -  指定の属性以外
  4209.  
  4210.             /O   ソート順で表示します。
  4211.                  ソート順  N  名前 (ABC順)        S  サイズ (小さい順) 
  4212.                            E  拡張子 (ABC順)      D  日付/時刻 (古い順)
  4213.                            G  ディレクトリー優先  -  逆順
  4214.  
  4215.             /S   指定ディレクトリー下の全サブディレクトリー中のファイル
  4216.                  を表示します。                                          
  4217.  
  4218.             /B   ファイル名のみを表示します。
  4219.  
  4220.             /L   小文字で表示します。
  4221.  
  4222.       注意  エラーには対応しません。
  4223.  
  4224.       解説  DIR [ドライブ:][パス][ファイル名] [/W] [/A[[:]属性]][/O[[:]ソ-ト順]]
  4225.             [/S] [/B] [/L] > ファイル名 2
  4226.             DIR [ドライブ:][パス][ファイル名]  > ファイル名 2
  4227.             と同じです。
  4228.  
  4229.       使用例 1
  4230.           A$ = "C:\*.*"
  4231.           B$ = "CDRV.LST"
  4232.           C$ = "/S /L"
  4233.           FDIR(A$,B$)  
  4234.                                                                      
  4235.       結果   1
  4236.           ドライブ C:にある 全てのファイル一覧(*.*)を表示し、かつサブディ
  4237.           レクトリー以下のファイル一覧も表示し(/S)、小文字で(/L) CDRV.LST
  4238.           というファイルを新規作成し、それにその内容を記載します。
  4239.  
  4240.       使用例 2
  4241.           FDIR("C:\*.*","CDRV.LST")  
  4242.                                                                      
  4243.       結果   2
  4244.           ドライブ C:\にある 全てのファイル一覧(*.*)を表示し、CDRV.LSTと
  4245.           いうファイルを新規作成し、それにその内容を記載します。
  4246.  
  4247.  
  4248.     関連項目  CHILD,FREN,FRENAME,FTYPE,FTYPEA,FDIRA,FMOVE,FCOPY,FLHA
  4249.  
  4250.                                                                          [4250]
  4251.  
  4252.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4253.     FDIRA      [実行文]           File Dir Append
  4254.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4255.  
  4256.     FDIRA(変数1または文字列1,変数2または文字列2)
  4257.     FDIRA(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  4258.  
  4259.       用途  変数 1または文字列 1で指定したディレクトリー中のサブディレ
  4260.             クトリーやファイルの一覧を、変数 2または文字列 2で指定した
  4261.             ファイルにその内容を記載します。ファイルが存在しなければ新
  4262.             規作成します。
  4263.             変数 3または文字列 3はオプションパラメーターです。
  4264.             オプションパラメーターは重複する際には、その命令の間に半角
  4265.             スペースを入れてください。前後はいりません。
  4266.                                                                          
  4267.       オプションパラメータの種類(変数 3または文字列 3で指定)
  4268.             /W   画面いっぱいに一覧形式を表示します。
  4269.             /A   指定した属性を持つファイルを表示します。
  4270.                  属性      D  ディレクトリー      R  読み出し専用ファイル
  4271.                            H  隠しファイル        S  システム・ファイル  
  4272.                            A  保存属性            -  指定の属性以外
  4273.             /O   ソート順で表示します。
  4274.                  ソート順  N  名前 (ABC順)        S  サイズ (小さい順) 
  4275.                            E  拡張子 (ABC順)      D  日付/時刻 (古い順)
  4276.                            G  ディレクトリー優先  -  逆順
  4277.             /S   指定ディレクトリー下の全サブディレクトリー中のファイル
  4278.                  を表示します。
  4279.             /B   ファイル名のみを表示します。
  4280.             /L   小文字で表示します。
  4281.  
  4282.       注意  エラーには対応しません。
  4283.  
  4284.       解説  DIR [ドライブ:][パス][ファイル名] [/W] [/A[[:]属性]][/O[[:]ソ-ト順]]
  4285.             [/S] [/B] [/L] >> ファイル名 2
  4286.             DIR [ドライブ:][パス][ファイル名]  >> ファイル名 2
  4287.             と同じです。
  4288.  
  4289.       使用例 1
  4290.           A$ = "C:\*.*"
  4291.           B$ = "CDRV.LST"
  4292.           C$ = "/S /L"
  4293.           FDIRA(A$,B$)  
  4294.                                                                      
  4295.       結果   1
  4296.           ドライブ C:にある 全てのファイル一覧(*.*)を表示し、かつサブディ
  4297.           レクトリー以下のファイル一覧も表示し(/S)、小文字で(/L) CDRV.LST
  4298.           というファイルにその内容を記載します。
  4299.  
  4300.       使用例 2                                                           [4300]
  4301.           FDIRA("C:\*.*","CDRV.LST")  
  4302.                                                                      
  4303.       結果   2
  4304.           ドライブ C:\にある 全てのファイル一覧(*.*)を表示し、CDRV.LSTと
  4305.           いうファイルにその内容を追加記載します。
  4306.  
  4307.  
  4308.     関連項目  CHILD,FREN,FRENAME,FTYPE,FTYPEA,FDIR,FMOVE,FCOPY,FLHA
  4309.  
  4310.  
  4311.                                                                          
  4312.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4313.     FEXPAND    [関  数]           Filename EXPAND                        
  4314.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4315.  
  4316.     FEXPAND(変数)                                                        
  4317.  
  4318.       用途  ファイル名を、ドライブ名や、ディレクトリーを含む、完全なPATHを
  4319.             含むファイル名に拡張します。
  4320.             ファイルがなければ  現在のカレントドライブ名を返します。
  4321.                                                                        
  4322.       使用例 
  4323.           現在のカレントドライブが、A:\WTERM\DATA とします。
  4324.           A$ = "MACROS.DMP"
  4325.           FEXPAND(A$) 
  4326.  
  4327.       結果
  4328.           A$ = "A:\WTERM\DATA\MACROS.DMP"
  4329.  
  4330.     関連項目  DISKSIZE,DISKFSIZE,FILESIZE,FILETIME,FSEARCH,FSPLIT,GETENV
  4331.  
  4332.  
  4333.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4334.     FILESIZE   [関  数]           FILESIZE
  4335.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4336.  
  4337.     FILESIZE(変数1または文字列,変数2)
  4338.  
  4339.       用途  変数 2で、指定したファイル名のカレントサイズを、変数 1に格納し
  4340.             ます。結果は、バイトで文字列です。
  4341.  
  4342.       制限  ファイルが存在しなければ、空白を返します。
  4343.  
  4344.       使用例                                                             
  4345.           B$ = "B:\TOOL\BP.EXE"
  4346.           FILESIZE(A$,B$) 
  4347.  
  4348.       結果
  4349.           BP.EXE のサイズを、変数A$に格納します。
  4350.           A$ = "23657"                                                   [4350]
  4351.  
  4352.     関連項目  DISKSIZE,DISKFSIZE,FILETIME,FEXPAND,FSEARCH,FSPLIT,GETENV,
  4353.               GETDIR
  4354.  
  4355.  
  4356.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4357.     FILETIME   [関  数]           get FILE TIME
  4358.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4359.                                                                          
  4360.     FILETIME(変数1,変数2または文字列)                                 
  4361.  
  4362.       用途  変数 2、または文字列で、指定したファイル名のDATE/TIMEを、
  4363.             変数 1に格納します。
  4364.  
  4365.       仕様  変数 1は、必ず変数でなければいけません。
  4366.             ファイルは、テキストでもバイナリファイルでも構いません。     
  4367.  
  4368.       使用例
  4369.           B$ = "B:\TOOL\MLP.EXE"
  4370.           FILETIME(A$,B$)                                              
  4371.  
  4372.       結果
  4373.           MLP.EXE のタイムスタンプ、変数A$に格納します。
  4374.           A$ = "95-05-15 01:00:30"
  4375.  
  4376.     関連項目  DISKSIZE,DISKFSIZE,FILESIZE,FEXPAND,FSEARCH,FSPLIT,GETENV,
  4377.               GETDIR
  4378.  
  4379.  
  4380.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4381.     FILER      [実行文]           FilE Read
  4382.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4383.  
  4384.     FILER(ファイル名,変数)
  4385.     FILER(ファイル名,変数,ラベル)
  4386.  
  4387.       用途  任意のファイルの、任意の行数の内容を、変数に格納します。
  4388.             ラベルを指定した場合は、オープンエラー(ファイルが存在しない場
  4389.             合)のとき、指定したラベルにジャンプします。
  4390.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  4391.             中断します。
  4392.                                                                          
  4393.       仕様  ファイルは、テキストファイルに限ります。
  4394.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  4395.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  4396.             存在するものと見なします。
  4397.  
  4398.       注意  指定ファイルの総行数以上の行数を指定した場合には、変数に格納さ
  4399.             れる内容は最終行の内容です。
  4400.                                                                          [4400]
  4401.       メモ  ファイルの総行数を簡単に求めるには、マクロ命令 FLINE  を使用す
  4402.             ると便利です。
  4403.  
  4404.       使用例 1
  4405.           A$ = "20"
  4406.           FILER("123.DAT",A$)  
  4407.                                                                      
  4408.       解説   1                                                           
  4409.           MACRO DATA DIR[F・7]-(5)-5にある、123.MAC の20行目の内容を、A$に
  4410.           格納します。ファイル"123.MAC" がオープンできない場合は、マクロを
  4411.           中断します。
  4412.  
  4413.       結果   1
  4414.          A$ = "123.DATの20行目の内容"
  4415.  
  4416.       使用例 2                                                           
  4417.           A$ = "30"
  4418.           FOPEN("A:\DATA\123.DAT",ERROR)
  4419.                                                                        
  4420.       解説   2
  4421.           A:\DATA\にあるファイル"123.DAT" の30行目の内容を、変数A$に格納し
  4422.           ます。オープンエラーの場合は、ラベル ERRORにジャンプします。
  4423.  
  4424.       結果   2
  4425.          A$="A:\DATA\123.DATの30行目の内容"
  4426.  
  4427.     関連項目  FCLOSE,FREAD,RCLOSE,RREAD,WOPEN,WAPPEND
  4428.  
  4429.  
  4430.  
  4431.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4432.     FLHA       [実行文]           FILE LHA 
  4433.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4434.  
  4435.     FLHA(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  4436.  
  4437.       用途  変数 1または文字列 1は、"LHA.EXE"の命令またはオプションです。
  4438.             変数 2または文字列 2で指定したファイルを作成します。
  4439.             変数 3または文字列 3は解凍場所または、作成ファイル指定です。
  4440.  
  4441.       仕様  変数 3または文字列 3は解凍場所または、作成ファイル指定ですが、
  4442.             特殊な使用方法や指定をしたい場合は、以下のように形式で表記し
  4443.             てください。/で区切ります。
  4444.             ある圧縮ファイルから 1つのファイルを出し入れする場合例
  4445.             MS-DOS上での場合(一例)
  4446.              1. LHA e -n2 C:\TEMP\WTERM A:\TEMP1\ WTERM.LOG         (解凍)
  4447.              2. LHA m -n2 C:\TEMP\WTERM A:\TEMP1\ WTERM.LOG         (格納)
  4448.             FLHA    での場合(一例)
  4449.              1. FLHA("e -n2","C:\TEMP\WTERM","A:\TEMP1\/WTERM.LOG")#(解凍)
  4450.              2. FLHA("m -n2","C:\TEMP\WTERM","A:\TEMP1\/WTERM.LOG")#     [4450]
  4451.  
  4452.       LHAの命令・オプションパラメータの種類(変数 1または文字列 1で指定)
  4453.       は、LHAのドキュメントをご覧ください。代表的な物は以下です。
  4454.             命令   a: ファイルを追加   
  4455.                    m: 新ファイルを移動
  4456.                    e: ファイルを復元    
  4457.                                                                          
  4458.       注意  エラーには対応しません。
  4459.  
  4460.       使用例 1
  4461.           A$ = "A"
  4462.           B$ = "C:\UP\UPLOAD.LZH"
  4463.           C$ = "D:\UP\*.*"
  4464.           FLHA(A$,B$,C$)  
  4465.                                                                      
  4466.       結果   1                                                           
  4467.           D:\UP\の全てのファイルを、C:\UP\に"UPLOAD.LZH"という名前のファイ
  4468.           ルに圧縮します。
  4469.  
  4470.       使用例 2
  4471.           FLHA("E","C:\UP\UPLOAD.LZH","D:\)  
  4472.                                                                      
  4473.       結果   2
  4474.           ドライブ C:\UP\にある UPLOAD.LZHのファイルを、D:\に解凍します。
  4475.  
  4476.  
  4477.     関連項目  CHILD,FREN,FRENAME,FTYPE,FTYPEA,FDIR,FDIRA,FMOVE,FCOPY
  4478.  
  4479.  
  4480.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4481.     FLINE      [実行文]           File LINEs
  4482.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4483.  
  4484.     FLINE(ファイル名,変数)
  4485.     FLINE(ファイル名,変数,ラベル)
  4486.  
  4487.       用途  任意のファイルの、総行数を変数に格納します。
  4488.             ラベルを指定した場合は、オープンエラー(ファイルが存在しない場
  4489.             合)のとき、指定したラベルにジャンプします。
  4490.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  4491.             中断します。                                                 
  4492.  
  4493.       仕様  ファイルは、テキストファイルに限ります。
  4494.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  4495.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  4496.             存在するものと見なします。
  4497.  
  4498.       メモ  ファイルの総行数を求めたあと、任意の内容を知るには、マクロ命令
  4499.             FILER を使用すると便利です。
  4500.                                                                          [4500]
  4501.       使用例 1
  4502.           FLINE("MACR.DAT",A$)  
  4503.                                                                        
  4504.       解説   1
  4505.           MACRO DATA DIR[F・7]-(5)-5 にあるファイル、"MACR.DAT"の総行数を求
  4506.           めます。ファイルオープンエラーの場合は、マクロを中断します。   
  4507.  
  4508.       使用例 2
  4509.           FLINE("A:\DATA\MACR.DAT",A$,ERROR)
  4510.  
  4511.       解説   2
  4512.           A:\DATA\にある、ファイル "MACR.DAT" の総行数を求めます。
  4513.           オープンエラーの場合は、指定ラベル ERROR  にジャンプします。
  4514.  
  4515.     関連項目  FCLOSE,FILER,FREAD,RCLOSE,RREAD,WOPEN,WAPPEND
  4516.                                                                          
  4517.  
  4518.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4519.     FMOVE      [実行文]           File MOVE
  4520.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4521.  
  4522.     FMOVE(変数1または文字列1,変数2または文字列2
  4523.  
  4524.       用途  変数 1または文字列 1で指定したファイルを、変数 2または文字列 2
  4525.             で指定したディレクトリーに移動します。移動先に同名のファイルが
  4526.             存在した場合は拡張子を変更し、"FILE名.OLD"とリネームして保存し
  4527.             ます。さらに同名の"FILE名.OLD"が存在すれば、そのファイルは"FIL
  4528.             E名.000"として保存されます。"FILE名.000 ~ FILE名.999と積算"
  4529.             もしくは、
  4530.             変数 1または文字列 1で指定したディレクトリ名を、変数 2または文
  4531.             字列 2で指定したディレクトリー名に変更します。
  4532.       
  4533.       移動  ファイルを移動するには:
  4534.  
  4535.             FMOVE  [ドライブ1:][パス1]ファイル名 [ドライブ2:][パス2]
  4536.  
  4537.               [ドライブ1:][パス1]ファイル名1  
  4538.                   移動したいファイルの場所と名前を指定します。
  4539.               [ドライブ2:][パス2]
  4540.                   移動する先のディレクトリーを指定します。
  4541.                   1個のファイルを移動する場合にファイル名を指定すると移
  4542.                   動時にファイル名が変更されます。
  4543.  
  4544.       変更  ディレクトリー名を変更するには:
  4545.             FMOVE [ドライブ:][パス]ディレクトリー名1 ディレクトリー名2
  4546.               [ドライブ:][パス]ディレクトリー名1 
  4547.                   変更したいディレクトリーの名前を指定します。
  4548.               ディレクトリー名2
  4549.                   新しいディレクトリーの名前を指定します。
  4550.                                                                          [4550]
  4551.       注意  エラーには対応しません。
  4552.  
  4553.       解説  MS-DOSのMOVEとほぼ同じです。
  4554.  
  4555.       使用例 1                                                           
  4556.           A$ = "C:\ABC.DAT"
  4557.           B$ = "D:\DOWN"                                                 
  4558.           FMOVE(A$,B$)  
  4559.                                                                      
  4560.       結果   1
  4561.           ドライブ C:にある ABC.DATを、ドライブ D:\DOWN に移動します。
  4562.  
  4563.       使用例 2
  4564.           FMOVE("C:\ABC.DAT","D:\DOWN"
  4565.                                       ^の末尾の )は付けない。(注意)
  4566.       結果   2                                                           
  4567.           ドライブ C:にある ABC.DATを、ドライブ D:\DOWN に移動します。
  4568.  
  4569.       使用例 3
  4570.           FMOVE("C:\DOWN\TEST","TEST1"
  4571.                                       ^の末尾の )は付けない。(注意)
  4572.       結果   3
  4573.           ドライブ C:\DOWN\にある ディレクトリー TESTを、TEST1という名称
  4574.           に変更します。
  4575.  
  4576.     関連項目  CHILD,FREN,FRENAMEM,FTYPE,FTYPEA,FDIR,FDIRA,FCOPY,FLHA
  4577.  
  4578.  
  4579.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4580.     FOPEN      [実行文]           File OPEN
  4581.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4582.  
  4583.     FOPEN(ファイル名)
  4584.     FOPEN(ファイル名,ラベル)
  4585.  
  4586.       用途  FREAD する為に、ファイルをオープンします。
  4587.             ラベルを指定した場合は、オープンエラー(ファイルが存在しない場
  4588.             合)のとき、指定したラベルにジャンプします。
  4589.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  4590.             中断します。
  4591.  
  4592.       仕様  ファイルは、テキストファイルに限ります。
  4593.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  4594.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  4595.             存在するものと見なします。
  4596.  
  4597.       使用例 1
  4598.           FOPEN("MACR.DAT")
  4599.                           
  4600.       解説   1                                                           [4600]
  4601.           MACRO DATA DIR[F・7]-(5)-5にあるファイル、"MACR.DAT"をオープン 
  4602.           します。ファイルオープンエラーの場合は、マクロを中断します。
  4603.  
  4604.       使用例 2                                                   
  4605.           FOPEN("A:\DATA\WT.DAT",ERROR) 
  4606.  
  4607.       解説   2
  4608.           A:\DATA\にあるファイル"WT.DAT"をオープンします。
  4609.           オープンエラーの場合は、指定ラベル ERROR  にジャンプします。
  4610.                                                                        
  4611.     関連項目  FCLOSE,FREAD,RCLOSE,RREAD,WOPEN,WAPPEND,OOPEN,OCLOSE,OREAD
  4612.  
  4613.  
  4614.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4615.     FPOINT     [実行文]           FOPEN File POINTer
  4616.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4617.  
  4618.     FPOINT(変数1)
  4619.     FPOINT(変数1,変数2または文字列)
  4620.  
  4621.       用途  FREAD しているファイルの、現在読み込み済みの行数を求めます。
  4622.             第 2パラメーターに指定されている場合は、リードポインターを任意
  4623.             の行まで移動し、以降 FREADからはその指定された行数から読み込み
  4624.             をするように変更します。
  4625.  
  4626.       仕様  FPOINT(変数1)                      の場合
  4627.             変数 1に、FREAD されているファイルの現在の読み込み済み行数を、
  4628.             変数 1に格納します。
  4629.  
  4630.       仕様  FPOINT(変数1,変数2または文字列)    の場合
  4631.             変数 1の読み込み済み行数(FREAD ファイルのリードポイント)を、
  4632.             変数 2、または文字列で指定された行数に変更し、変数 1に格納しま
  4633.             す。ただし、FREAD されているファイルの総行数を上回る場合は、最
  4634.             終行の数に変更されます(次回FREAD後)。
  4635.  
  4636.       使用例 1
  4637.           FPOINT(A$)  
  4638.  
  4639.       解説   1
  4640.           現在FOPEN 命令で、オープンされているファイルの、読み込み済み行数
  4641.           を表示します。
  4642.  
  4643.       使用例 2
  4644.           FPOINT(A$,"20")  
  4645.                                                                        
  4646.       解説   2
  4647.           現在FOPEN 命令で、オープンされているファイルの、読み込み済み行数
  4648.           を(リードポイント)を、20行目から読み込むようにリードポインター
  4649.           を移動します。以降 FREADで読む込む場合は、その指定された行数( 
  4650.           この場合は20行目)からになります。                             [4650]
  4651.  
  4652.       使用例 3
  4653.           B$="15"
  4654.           FPOINT(A$,B$)  
  4655.  
  4656.       解説   3
  4657.           現在FOPEN 命令で、オープンされているファイルの、読み込み済み行数
  4658.           を(リードポイント)を、15行目から読み込むように、リードポインタ
  4659.           ーを変更します。以降 FREADで読む込む場合は、その指定された行数(
  4660.           ここでは15行目)からになります。             
  4661.  
  4662.     関連項目  FREAD,RREAD,FLINE,FILER,OOPEN,OCLOSE,OREAD
  4663.  
  4664.  
  4665.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4666.     FREAD      [実行文]           Fopened file READ                      
  4667.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4668.  
  4669.     FREAD(変数名)
  4670.     FREAD(変数名,ラベル)
  4671.  
  4672.       用途  指定した変数に、 FOPENされているファイルから 1行読み込みます。
  4673.             ラベルを指定した場合、ファイルエンド(またはリードエラー)の場合、
  4674.             指定したラベルにジャンプします。ラベルを指定していない場合は、
  4675.             マクロを中断します
  4676.  
  4677.       仕様  ファイルは、テキストファイルに限ります。
  4678.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  4679.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  4680.             存在するものと見なします。
  4681.  
  4682.       メモ  任意の行数から 1行のみ読み込みたい場合は、マクロ命令 FILERをご
  4683.             利用ください。
  4684.  
  4685.       使用例
  4686.           FREAD(B$)
  4687.  
  4688.       解説   1
  4689.           FOPEN されているファイルから、変数 B$ に、一行読み込みます。
  4690.           ファイルエンド(EOF)、またはエラーの場合はマクロを中断します。
  4691.  
  4692.       使用例 2                                                         
  4693.           FREAD(Z$,ERROR)    
  4694.                                                                        
  4695.       解説   2                                                           
  4696.           FOPEN 命令でオープンされているファイルから、変数 Z$ に一行読み込
  4697.           みます。
  4698.           ファイルエンド(EOF)、またはエラーの場合は、指定ラベル ERROR に 
  4699.           ジャンプします。
  4700.                                                                          [4700]
  4701.     関連項目  FOPEN,FCLOSE,ROPEN,RCLOSE,OOPEN,OCLOSE,OREAD
  4702.  
  4703.  
  4704.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4705.     FREN       [実行文]           File REName
  4706.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4707.  
  4708.     FREN(変数1または文字列1,変数2または文字列2)
  4709.  
  4710.       用途  変数 1または文字列 1で指定した任意のファイルを、変数 2または文
  4711.             字列 2にファイル名を変更します。
  4712.       
  4713.       注意  エラーには対応しません。
  4714.             変数 2または、ファイル名 2には新しいドライブ・パスを指定するこ
  4715.             とはできませんので注意して下さい。
  4716.                                                                          
  4717.       解説  REN [ドライブ :][パス]ファイル名1 ファイル名2 と同じです。
  4718.  
  4719.       使用例 1
  4720.           A$ = "C:\UP\FILE.LST"
  4721.           B$ = "UPLIST.LST"
  4722.           FREN(A$,B$)  
  4723.                                                                      
  4724.       結果   1
  4725.           C:\UP\にある FILE.LSTという名称のファイルを、UPLIST.LSTという名前
  4726.           に名称変更します。
  4727.  
  4728.       使用例 2
  4729.           FREN("C:\UP\FILE.LST","UP.LST")  
  4730.                                                                      
  4731.       結果   2
  4732.           C:\UP\にある FILE.LSTという名称のファイルを、UP.LSTという名前に名
  4733.           称変更します。
  4734.  
  4735.     関連項目  CHILD,FREN,FTYPE,FTYPEA,FDIR,FDIRA,FMOVE,FCOPY,FLHA,FRENAME
  4736.  
  4737.  
  4738.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4739.     FRENAME    [実行文]           File REName
  4740.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4741.  
  4742.     FRENAME(変数または文字列)
  4743.  
  4744.       用途  変数または、文字列で指定した任意の存在するファイルの拡張子を
  4745.             FILE名.000 に変更します。同名の"FILE名.000"が存在すれば、その
  4746.             ファイルは"FILE名.001"として保存されます。"FILE名.000 ~ FILE
  4747.             名.999"と拡張子が増加していきます。
  4748.  
  4749.       使用例 1
  4750.           A$ = "C:\UP\FILE.LST"                                          [4750]
  4751.           FRENAME(A$)  
  4752.                                                                      
  4753.       結果   
  4754.           C:\UP\にある FILE.LSTという名称のファイルを、UPLIST.000という名前
  4755.           に名称変更します。
  4756.  
  4757.     関連項目  CHILD,FREN,FTYPE,FTYPEA,FDIR,FDIRA,FMOVE,FCOPY,FLHA,FREN
  4758.  
  4759.  
  4760.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4761.     FSEARCH    [関  数]           File SEARCH
  4762.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4763.                                                                        
  4764.     FSEARCH(変数1,変数2)
  4765.  
  4766.       用途  変数 1で、指定されたファイルを、変数 2で指定した複数のディレク
  4767.             リーから探し結果を、変数 1に代入します。変数 2のドライブ指定は、
  4768.             MS-DOSのPATHコマンドのように; で区切ってください。ファイルがな
  4769.             ければ、空白を返します。
  4770.  
  4771.       使用例
  4772.           A$ = "WTERM.EXE"   
  4773.           B$ = "A:\;B:\TOOL;C:\WTERM;"
  4774.  
  4775.           もしくは、 GETENV(B$,"PATH")で得られた内容 B$ = "PATH指定"
  4776.  
  4777.           FSEARCH(A$,B$)
  4778.  
  4779.       結果
  4780.           A$ = "C:\WTERM\WTERM.EXE"
  4781.  
  4782.     関連項目  DISKSIZE,DISKFSIZE,FILESIZE,FILETIME,FEXPAND,FSPLIT,GETENV
  4783.  
  4784.  
  4785.  
  4786.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4787.     FSPLIT     [関  数]           Filename SPLIT
  4788.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4789.  
  4790.     FSPLIT(変数1,変数2,変数3)
  4791.  
  4792.       用途  変数 1で指定されたファイル名を、 3分割して返します。
  4793.             変数 1に  ドライブ名とディレクトリー名
  4794.             変数 2に  ファイル名のみ
  4795.             変数 3に  拡張子のみが  代入されます。
  4796.             変数 1と変数 2と変数 3で、元の指定されたファイル名と同じ内容に
  4797.             なります。
  4798.                                                                        
  4799.       メモ  FEXPAND や、FSEARCH で得られた内容を代入して分解する場合は、便
  4800.             利です。                                                     [4800]
  4801.  
  4802.       使用例
  4803.           A$ = "A:\WT\TOOL\WTERM.EXE"                                   
  4804.           FSPLIT(A$,B$,C$)                                             
  4805.  
  4806.       結果 
  4807.           A$ = "A:\WT\TOOL\" 
  4808.           B$ = "WTERM" 
  4809.           A$ = ".EXE" 
  4810.  
  4811.     関連項目  DISKSIZE,DISKFSIZE,FILESIZE,FILETIME,FEXPAND,FSEARCH,GETENV
  4812.  
  4813.  
  4814.  
  4815.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4816.     FTYPE      [実行文]           File TYPE                              
  4817.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4818.  
  4819.     FTYPE(変数1または文字列1,変数2または文字列2)
  4820.  
  4821.       用途  変数 1または文字列 1で指定したテキストファイルの内容を、変数 2
  4822.             または文字列 2で指定したファイル名を新規作成し、その内容を記載
  4823.             します。
  4824.       
  4825.       注意  エラーには対応しません。
  4826.             表示するファイルは、テキストファイルに限ります。バイナリファイ
  4827.             ルかどうかチェックしていません。
  4828.  
  4829.       解説  TYPE [ドライブ :][パス]ファイル名1 > ファイル名2 と同じです。
  4830.  
  4831.       使用例 1
  4832.           A$ = "C:\UP\FILE.LST"
  4833.           B$ = "UPLIST.LST"
  4834.           FTYPE(A$,B$)  
  4835.                                                                      
  4836.       結果   1
  4837.           C:\UP\にある FILE.LSTというテキストファイルの内容を、UPLIST.LSTと
  4838.           いう名前のファイルを新規作成し、その内容を記載します。
  4839.  
  4840.       使用例 2
  4841.           FTYPER("C:\UP\FILE.LST","UPLIST.LST")  
  4842.                                                                      
  4843.       結果   2
  4844.           C:\UP\にある FILE.LSTというテキストファイルの内容を、UPLIST.LSTと
  4845.           いう名前のファイルを新規作成し、その内容を記載します。
  4846.  
  4847.  
  4848.     関連項目  CHILD,FREN,FRENAME,FTYPE,FTYPEA,FDIR,FDIRA,FMOVE,FCOPY,FLHA
  4849.  
  4850.                                                                          [4850]
  4851.  
  4852.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4853.     FTYPEA     [実行文]           File TYPE Append
  4854.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4855.  
  4856.     FTYPEA(変数1または文字列1,変数2または文字列2)
  4857.  
  4858.       用途  変数 1または文字列 1で指定したテキストファイルの内容を、変数 2
  4859.             または文字列 2で指定したファイル名に、その内容を追加記載します。
  4860.             指定したファイルが存在しない場合は、新規作成し記載します。
  4861.       
  4862.       注意  エラーには対応しません。
  4863.             表示するファイルは、テキストファイルに限ります。バイナリファイ
  4864.             ルかどうかチェックしていません。
  4865.  
  4866.       解説  TYPE [ドライブ:][パス]ファイル名1 >> ファイル名2 と同じです。
  4867.  
  4868.       使用例 1
  4869.           A$ = "C:\UP\FILE.LST"
  4870.           B$ = "UPLIST.LST"
  4871.           FTYPEA(A$,B$)  
  4872.                                                                      
  4873.       結果   1
  4874.           C:\UP\にある FILE.LSTというテキストファイルの内容を、UPLIST.LSTと
  4875.           いう名前のファイルに、その内容を追加記載します。
  4876.  
  4877.       使用例 2
  4878.           FTYPEA("C:\UP\FILE.LST","UPLIST.LST")  
  4879.                                                                      
  4880.       結果   2
  4881.           C:\UP\にある FILE.LSTというテキストファイルの内容を、UPLIST.LSTと
  4882.           いう名前のファイルに、その内容を追加記載します。
  4883.  
  4884.  
  4885.     関連項目  CHILD,FREN,FRENAME,FTYPE,FTYPEA,FDIR,FDIRA,FMOVE,FCOPY,FLHA
  4886.  
  4887.  
  4888.  
  4889.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4890.     GET        [実行文]           GET word
  4891.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4892.  
  4893.     GET(変数,長さ)
  4894.  
  4895.       用途  通信文字を変数に、指定のバイト数だけ取り込みます。
  4896.  
  4897.       使用例  
  4898.           GET(A$,12)
  4899.  
  4900.     関連項目  GETC,GETS                                                  [4900]
  4901.  
  4902.  
  4903.  
  4904.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4905.     GETC       [実行文]           GET Charcter
  4906.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4907.  
  4908.     GETC(変数,文字または文字列)
  4909.     GETC(変数,文字または文字列,"+")
  4910.     GETC(変数,文字または文字列,+時間)
  4911.     GETC(変数,文字または文字列,監視時間)
  4912.  
  4913.       用途  通信文字を、文字が一致するまで取り込みます。
  4914.             第 3パラメーターが指定されていない場合は、上記のままです。
  4915.             第 3パラメーターに "+"を指定すると、その取り込んだ内容に、文字
  4916.             または、文字列の内容を付加します。(機能は、GETSと同じです) 
  4917.             第 3パラメーターに、時間(秒数)を指定すると、その時間を経過す
  4918.             ると強制的に脱出します。その場合取り込み内容は空白になります。
  4919.             第 3パラメーターに、"+時間" を指定すると上記の複合になります。
  4920.  
  4921.       画面に[  わたしは、H.INOUEです。こんにちは  ]と表示した場合
  4922.  
  4923.       使用例 1
  4924.           GETC(A$,"こんにちは")                                          
  4925.                                                                        
  4926.       結果   1                                                         
  4927.           A$="わたしは、H.INOUEです。"
  4928.  
  4929.       使用例 2
  4930.           GETC(A$,"こんにちは","+") 
  4931.  
  4932.       結果   2                                                        
  4933.           A$="わたしは、H.INOUEです。こんにちは"
  4934.                                                                      
  4935.       使用例 3
  4936.           GETC(A$,"こんばんは","20") 
  4937.  
  4938.       結果   3                                                        
  4939.           20秒以内に、"こんばんは"という文字列を受信しなかったので、A$=""と
  4940.           なりました。
  4941.  
  4942.     関連項目  GETS,GET
  4943.  
  4944.  
  4945.  
  4946.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4947.     GETCRTS    [実行文]           GET CRT Strings
  4948.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4949.  
  4950.     GETCRTS(変数,変数2または文字列)                                      [4950]
  4951.  
  4952.       用途  現在の行数から、変数 2、または文字列に指定してある行数を遡った
  4953.             行の、画面の表示列内容を取得をします。
  4954.  
  4955.       仕様  CRT ON(画面表示を行なう)で、なおかつ現在の表示画面範囲のみ。
  4956.  
  4957.       使用例
  4958.           GETSRTS(A$,"5")
  4959.           
  4960.       結果  
  4961.           この命令を実行した時点での、実行画面のカーソル位置の 5行上の表示
  4962.           内容を、変数 A$ に格納します。
  4963.  
  4964.  
  4965.  
  4966.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4967.     GETDATAD   [関  数]           GET DATA's file Directory
  4968.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4969.  
  4970.     GETDATAD(変数)
  4971.                                                                        
  4972.       用途  変数に、F7-5-7で、設定してある料金ファイル等の指定ドライブを、
  4973.             代入します。
  4974.                                                                          
  4975.       使用例
  4976.           GETDATAD(A$)
  4977.  
  4978.       結果
  4979.           A$ = "USER指定のDATA登録ドライブディレクトリー"        
  4980.  
  4981.     関連項目  GETLOGD,GETTXUPD,GETUPD,GETDOWND,GETMACROD,GETUSERD
  4982.  
  4983.  
  4984.  
  4985.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4986.     GETDIR     [関  数]           GET DIRectory
  4987.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  4988.  
  4989.     GETDIR(変数,変数または文字列)                                     
  4990.  
  4991.       用途  指定したドライブの、カレントディレクトリーを返します。
  4992.             "0" または、省略した場合は、現在のドライブを返します。
  4993.             文字列のドライブは、半角小文字(A,B,C......Z)もしくは、番号で
  4994.             指定します。 A = 1  B = 2   C =3    Z = 26
  4995.  
  4996.       仕様  ドライブのルートディレクトリー以外のサブディレクトリーの場合、
  4997.             末尾に、\はつきません。                                      
  4998.  
  4999.       使用例 1
  5000.           GETDIR(A$,"A")                                                 [5000]
  5001.                                                                        
  5002.       結果   1                                                         
  5003.           A$ = "A:\WTERM"   
  5004.  
  5005.       解説   1
  5006.           A:\WTERM  は、現在の Aドライブのカレントディレクトリー
  5007.  
  5008.       使用例 2                                                         
  5009.           GETDIR(A$,"")
  5010.                                                                       
  5011.       結果   2
  5012.           A$ = "現在のカレントドライブ"
  5013.  
  5014.     関連項目  DISKSIZE,DISKFSIZE,FILESIZE,FILETIME,FEXPAND,FSEARCH,
  5015.               FSPLIT,GETENV,GETMACROD,GETUSERD
  5016.                                                                          
  5017.  
  5018.  
  5019.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5020.     GETDOWND   [関  数]           GET DOWNload file Directory
  5021.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5022.                                                                        
  5023.     GETDOWND(変数)
  5024.                                                                          
  5025.       用途  変数に、F7-5-2で設定してある、DOWNロード指定ドライブの内容を、
  5026.             代入します。
  5027.  
  5028.       使用例
  5029.           GETDOWND(A$)
  5030.  
  5031.       結果
  5032.           A$ = "USER指定のDOWNLOAD登録ドライブディレクトリー"
  5033.  
  5034.     関連項目  GETLOGD,GETTXUPD,GETUPD,GETDATAD,GETMACROD,GETUSERD
  5035.  
  5036.  
  5037.  
  5038.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5039.     GETENV     [関  数]           GET ENVironmental variables
  5040.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5041.  
  5042.     GETENV(変数,変数または文字列)                                     
  5043.  
  5044.       用途  指定した環境変数の値を、返します。
  5045.             指定された環境変数がなければ、空の文字列を返します。
  5046.  
  5047.       使用例 1                                                         
  5048.           GETENV(A$,"WTERM")
  5049.                                                                        
  5050.       結果   1                                                           [5050]
  5051.           A$ = "A:\WTERM\WTERM5A.DAT"
  5052.  
  5053.  
  5054.       使用例 2
  5055.           GETENV(A$,"PATH")
  5056.  
  5057.       結果   2
  5058.           A$ = "A:\;B:\;"
  5059.                                                                        
  5060.     関連項目  DISKSIZE,DISKFSIZE,FILESIZE,FILETIME,FEXPAND,FSEARCH,
  5061.               FSPLIT,GETDIR,GETUSERD
  5062.  
  5063.  
  5064.  
  5065.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5066.     GETID      [関  数]           GET IDentification of bbs              
  5067.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5068.  
  5069.     GETID(変数) 
  5070.  
  5071.       用途  変数に、現在接続中のホストに登録してある登録IDを代入します。
  5072.                                                                        
  5073.       使用例
  5074.           GETID(A$)                                                      
  5075.  
  5076.       結果
  5077.           A$ = "接続中のホスト登録ID"
  5078.  
  5079.     関連項目  GETLOGD,GETTXUPD,GETUPD,GETDOWND,GETMACROD,GETUSERD
  5080.  
  5081.  
  5082.  
  5083.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5084.     GETLOGD    [関  数]           GET LOGfiles Directory
  5085.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5086.  
  5087.     GETLOGD(変数)
  5088.  
  5089.       用途  変数に、F7-5-1で設定してある、 LOG格納指定ドライブの内容を代入
  5090.             します。
  5091.  
  5092.       使用例
  5093.           GETLOGD(A$)  
  5094.                                                                        
  5095.       結果
  5096.           A$ = "USER指定のLOG格納登録ドライブディレクトリー"
  5097.                                                                        
  5098.     関連項目  GETTXUPD,GETUPD,GETDOWND,GETDATAD,GETMACROD,GETUSERD
  5099.  
  5100.                                                                          [5100]
  5101.  
  5102.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5103.     GETMACROD  [関  数]           GET MACRO data Directory
  5104.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5105.  
  5106.     GETMACROD(変数)
  5107.     GETMACROD(変数,変数2)
  5108.  
  5109.       用途  変数 1に、F7-5-4で、設定してあるマクロファイル格納指定ドライブ
  5110.             の内容を代入します。
  5111.             変数 2に、現在のマクロファイル読みだし用ドライブ(\#ドライブ名
  5112.             \マクロファイル名で指定したドライブ名)の内容を代入します。
  5113.                                                                       
  5114.       使用例 1
  5115.           GETMACROD(A$)
  5116.                                                                          
  5117.       結果   1
  5118.           A$ = "USER指定の、マクロファイル格納登録ドライブディレクトリー"
  5119.  
  5120.       使用例 2
  5121.           GETMACROD(A$,B$)
  5122.  
  5123.       結果   2
  5124.           A$ = "USER指定のマクロファイル格納登録ドライブディレクトリー"  
  5125.           B$ = "読みだし時に \# 以降で指定したマクロファイルドライブ"
  5126.  
  5127.     関連項目  GETLOGD,GETUPD,GETDOWND,GETDATAD,GETMACROD,GETUSERD
  5128.  
  5129.  
  5130.  
  5131.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5132.     GETMRES    [関  数]           GET connected Modem RESult word
  5133.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5134.  
  5135.     GETMRES(変数)
  5136.  
  5137.       用途  変数に、モデムが接続した際に、モデムから返されるリザルトコード
  5138.             の内容を変数に代入します。
  5139.             モデム初期化文字列の内容で、V0なら数字形式の状態で、V1なら文字
  5140.             形式の状態をかえします。
  5141.  
  5142.       使用例
  5143.           GETMRES(A$)
  5144.  
  5145.       結果
  5146.           ATQ0V1E0X4とあった場合に、9600 LAPM-V で接続した。
  5147.           A$ = "CONNECT 9600 LAPM-V"
  5148.  
  5149.     関連項目  GETLOGD,GETUPD,GETDOWND,GETDATAD,GETMACROD,GETUSERD
  5150.                                                                          [5150]
  5151.  
  5152.  
  5153.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5154.     GETS       [実行文]           GET Strings
  5155.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5156.                                                                        
  5157.     GETS(変数,文字または文字列)
  5158.     GETS(変数,文字または文字列,"+")
  5159.     GETS(変数,文字または文字列,+時間)
  5160.     GETS(変数,文字または文字列,監視時間)
  5161.                                                                         
  5162.       用途  通信文字を、文字が一致するまで取り込みます。
  5163.             第 3パラメーターが指定されていない場合は、上記のままです。
  5164.             第 3パラメーターに "+"を指定すると、その取り込んだ内容に、文字
  5165.             または、文字列の内容を付加します。(機能は、GETSと同じです)
  5166.             第 3パラメーターに、時間(秒数)を指定すると、その時間を経過 
  5167.             すると強制的に脱出します。その場合取り込み内容は空白になります。
  5168.             第 3パラメーターに、"+時間" を指定すると上記の複合になります。
  5169.  
  5170.       画面に[  わたしは、H.INOUEです。こんにちは  ]と表示した場合
  5171.  
  5172.       使用例 1
  5173.           GETS(A$,"こんにちは、")
  5174.                                                                          
  5175.       結果   1
  5176.           A$="わたしは、H.INOUEです。"
  5177.  
  5178.       使用例 2
  5179.           GETS(A$,"こんにちは","+") 
  5180.  
  5181.       結果
  5182.           A$="わたしは、H.INOUEです。こんにちは"
  5183.  
  5184.       使用例 3
  5185.           GETC(A$,"こんばんは","20") 
  5186.  
  5187.       結果   3                                                        
  5188.           20秒以内に、"こんばんは"という文字列を受信しなかったので、A$=""と
  5189.           なりました。
  5190.  
  5191.     関連項目  GET,GETC
  5192.  
  5193.  
  5194.  
  5195.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5196.     GETTXUPD   [関  数]           GET TeXt UPload Directory
  5197.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5198.  
  5199.     GETTXUPD(変数)
  5200.                                                                          [5200]
  5201.       用途  変数に、F7-5-4で設定してある、テキストUPロード指定ドライブの内
  5202.             容を代入します。
  5203.             
  5204.       使用例                                                          
  5205.           GETTXUPD(A$)
  5206.  
  5207.       結果
  5208.           A$ = "USER指定のTXET UP登録ドライブディレクトリー"
  5209.  
  5210.     関連項目  GETLOGD,GETUPD,GETDOWND,GETDATAD,GETMACROD
  5211.  
  5212.  
  5213.  
  5214.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5215.     GETUPD     [関  数]           GET UPload file Directory            
  5216.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5217.  
  5218.     GETUPD(変数)
  5219.  
  5220.       用途  変数に、F7-5-2で設定してある、UPロード指定ドライブの内容を代入
  5221.             します。
  5222.  
  5223.       使用例
  5224.           GETUPD(A$)                                                     
  5225.  
  5226.       結果 
  5227.           A$ = "USER指定のUPLOAD登録ドライブディレクトリー"
  5228.  
  5229.     関連項目  GETLOGD,GETTXUPD,GETDOWND,GETDATAD,GETMACROD
  5230.  
  5231.  
  5232.  
  5233.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5234.     GETUSERD   [関  数]           GET USERS DATA
  5235.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5236.  
  5237.     GETUSERD(変数1,変数2または文字列)
  5238.     GETUSERD(変数1,変数2または文字列,変数3または文字列)
  5239.  
  5240.       用途  変数 1に、変数 2または第 2パラメーターの文字列の指定数項目デー
  5241.             ターの内容を代入します。
  5242.  
  5243.       注意  変数 3は、各ホストごとの任意の番号に該当し(1-60番)指定がなけ
  5244.             れば現在のアクセス中のホストのデーターです。
  5245.             79番、別枠外部起動プログラムもしくは、80番の別途定義文字列の場
  5246.             合は、それぞれ該当する番号(1 - 9) もしくは、(A - Z) を明記
  5247.             してください。
  5248.  
  5249.       項目(変数2または文字列に指定する番号)
  5250.                                                                          [5250]
  5251.         注意  1-15番はホスト関係です。
  5252.           各ホストごとの番号指定は、変数 3または、第 3パラメータで可能です。
  5253.  
  5254.          1  ホストの名前                    [ダイヤル F・5]-(M)-1
  5255.          2  ホストの電話番号                [ダイヤル F・5]-(M)-2
  5256.          3  グループ名(A-G)               [ダイヤル F・5]-(M)-9
  5257.          4  アクセス開始時間                [ダイヤル F・5]-(M)-A
  5258.          5  アクセス終了時間                [ダイヤル F・5]-(M)-B
  5259.          6  ログの取得                      [ダイヤル F・5]-(M)-G  (返り値数字)
  5260.              1なら記録する、 0なら記録しない
  5261.          7  ログの名前                      [ダイヤル F・5]-(M)-M
  5262.          8  テキスト送信桁折指定行          [ダイヤル F・5]-(M)-I
  5263.          9  ラストログイン日付      
  5264.         10  ラストログイン開始時刻  
  5265.         11  ラストログイン終了時刻                                       
  5266.         12  ラストログイン接続時間                                       
  5267.         13  AUTOPILOT文字列                 [ダイヤル F・5]-(M)-O
  5268.         14  ID                              [ダイヤル F・5]-(M)-Q
  5269.         15  PASSWORD                        [ダイヤル F・5]-(M)-R
  5270.         17  スピード(BPS)                   [ダイヤル F・5]-(M)-6  (返り値数字)
  5271.              0  =     300 BPS
  5272.              1  =    1200 BPS
  5273.              2  =    2400 BPS
  5274.              3  =    4800 BPS                                            
  5275.              4  =    9600 BPS             5  =   19200 BPS
  5276.              6  =   38400 BPS             7  =   57600 BPS
  5277.              8  =   20800 BPS             9  =   41600 BPS
  5278.             10  =   62400 BPS            11  =  115200 BPS
  5279.         19  現在接続中のホスト番号
  5280.         20  ホストの指定漢字モード         [ダイヤル F・5]-(M)-9
  5281.              0  =   SIFT-JIS              1  =   JIS 
  5282.              2  =   OJIS                  3  =   NEC
  5283.              4  =   EUC
  5284.  
  5285.         注意  30-50 番は、USER設定DATA関係です。
  5286.           この項目は変数3、または第3パラメーターは必要ありません。
  5287.  
  5288.         30  ログ格納ドライブ名              [設定 F・7]-(5)-1
  5289.         31  ダウンロードファイル格納PATH    [設定 F・7]-(5)-2
  5290.         32  アップロードファイル格納PATH    [設定 F・7]-(5)-3
  5291.         33  テキストアップファイル格納PATH  [設定 F・7]-(5)-4
  5292.         34  MACROファイル  ファイル格納PATH [設定 F・7]-(5)-5
  5293.         35  料金ファイル等 ファイル格納PATH [設定 F・7]-(5)-7
  5294.         36  料金ファイル名                  [設定 F・7]-(5)-6
  5295.         37  モデムの基本初期設定コマンド    [設定 F・7]-(1)-D
  5296.         38  モデム初期化コマンド設定 2番    [設定 F・7]-(1)-E
  5297.         39  モデム初期化コマンド設定 3番    [設定 F・7]-(1)-F
  5298.         40  モデム初期化コマンド設定 4番    [設定 F・7]-(1)-G
  5299.         41  モデム初期化コマンド設定 5番    [設定 F・7]-(1)-H
  5300.         42  モデム初期化コマンド設定 6番    [設定 F・7]-(1)-I            [5300]
  5301.         43  起動登録エディター名            [設定 F・7]-(2)-1
  5302.         44  外部 登録 ファイル1             [設定 F・7]-(2)-2
  5303.         45  外部 登録 ファイル2             [設定 F・7]-(2)-3
  5304.         46  外部 登録 ファイル3             [設定 F・7]-(2)-4
  5305.         47  外部 登録 ファイル4             [設定 F・7]-(2)-5
  5306.         48  送出定義文字列 1                [設定 F・7]-(2)-7
  5307.         49  送出定義文字列 2                [設定 F・7]-(2)-8
  5308.         50  送出定義文字列 3                [設定 F・7]-(2)-9
  5309.         51  送出定義文字列 4                [設定 F・7]-(2)-A
  5310.         52  送出定義文字列 5                [設定 F・7]-(2)-B
  5311.         53  送出定義文字列 6                [設定 F・7]-(2)-C
  5312.  
  5313.         60  現在のログファイル名の取得
  5314.  
  5315.         79  別枠外部起動プログラム 1-Z      [設定 F・7]-(3)-1-Z
  5316.         80  別途送出定義文字列  1-Z         [設定 F・7]-(4)-1-Z          
  5317.                                                                    
  5318.         注意  79/80番は別途送出文字列定義  1-9,A-Zです。
  5319.           この項目は、変数 3、または第 3パラメーターに、1-9 ないしは、A-Z 
  5320.           を書かなければ無効になります。
  5321.  
  5322.       使用例 1
  5323.           GETUSERD(A$,"7")                                             
  5324.                                                                          
  5325.       結果   1
  5326.           A$ = "現在アクセス中のホストのログファイル名" 
  5327.  
  5328.  
  5329.       使用例 2
  5330.           GETUSERD(A$,"7","1")
  5331.  
  5332.       結果   2
  5333.           A$ = "ホスト番号 1のログファイル名"                
  5334.  
  5335.       使用例 3
  5336.           GETUSERD(A$,"44")
  5337.  
  5338.       結果   3
  5339.           A$ = "USER指定の外部登録ファイル 1"        
  5340.  
  5341.       使用例 4
  5342.           GETUSERD(A$,"79","1")
  5343.  
  5344.       結果   4
  5345.           A$ = "USER指定の別枠 外部起動プログラム 1番の内容" 
  5346.  
  5347.       使用例 5
  5348.           GETUSERD(A$,"80","D")
  5349.  
  5350.       結果   5                                                           [5350]
  5351.           A$ = "USER指定の別途送出文字列定義の Dの内容"        
  5352.  
  5353.     関連項目  GETLOGD,GETTXUPD,GETUPD,GETDOWND,GETMACROD
  5354.  
  5355.  
  5356.  
  5357.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5358.     GOTO       [制御文]           GOTO
  5359.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5360.                                                                        
  5361.     GOTO(ラベル名)
  5362.     GOTO(ラベル名,変数1,変数2または文字列)
  5363.  
  5364.       用途  指定されたラベルに制御を移します。CALLと違い、RETURNで戻っては
  5365.             きません。変数 1(必ず変数)と変数 2、または文字列が指定してある
  5366.             場合には、変数 1に、変数 2または文字列の内容を格納します。   
  5367.  
  5368.       使用例 1                                # 解説
  5369.           START:                              # ラベルの定義
  5370.               A$="PAUSE ON"                   # NIFTYの命令
  5371.               SWITCH                          # SWITCH
  5372.                   CASE("Help=>]")             # Help=>] という文字列待ち
  5373.                      GOTO(READ)               # READにジャンプ          
  5374.                                                                          
  5375.       使用例 2                                # 解説 例1より1行少ない。
  5376.           START:                              # ラベルの定義
  5377.               SWITCH                          # SWITCH
  5378.                   CASE("Help=>]")             # Help=>] という文字列待ち
  5379.                      GOTO(READ,A$,"PAUSE ON") # READにジャンプ
  5380.  
  5381.     関連項目  RETURN,CASE
  5382.  
  5383.  
  5384.  
  5385.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5386.     HANGUP     [実行文]           HANG UP
  5387.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5388.  
  5389.     HANGUP
  5390.  
  5391.       用途  回線を切断します。
  5392.  
  5393.       使用例
  5394.           HANGUP
  5395.  
  5396.     関連項目  HANGUPT,QUIT,OFF
  5397.  
  5398.  
  5399.  
  5400.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[5400]
  5401.     HANGUPT    [制御文]           HANG UP Time
  5402.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5403.                                                                   
  5404.     HANGUPT(文字列または変数)           (回線断の場合)
  5405.     HANGUPT(文字列または変数,ラベル)    (LABELにJUMPする場合)
  5406.  
  5407.       用途  TIMEOUT/STIMEOUT と違い、時間差ではなく指定時刻を超過したら、
  5408.             直ちに以下の作業をします。
  5409.             指定時刻のみ明記した場合は、指定時刻を超過したら直ちに後述の
  5410.             作業をします。
  5411.             先頭に、半角 +を付加する事により、そのマクロを読み込んだ時刻と、
  5412.             指定時刻経過後に、後述の作業をいたします。作業内容ラベルがない
  5413.             場合、回線切断をしてマクロを終了します。
  5414.             JUMPラベルが指定されている場合は、そのラベルにジャンプします。
  5415.             その場合は、HANGUPT の値は初期化されます。
  5416.             JUMPラベルは、同一マクロ内のみ有効です。                     
  5417.  
  5418.       注意  単位は、24時間表記で、"00:00" から "23:59"までです。
  5419.             もしくは、"+00:00" - "+23:59" までです。
  5420.             HANGUPT 数値は、グローバル値です。
  5421.                                                                        
  5422.       使用例 1
  5423.           HANGUPT("23:00")
  5424.                                                                          
  5425.       結果   1
  5426.           23:00(深夜11時) を過ぎた時点で、マクロを中断して終了します。
  5427.           RTなどでは、ホスト側からのTIMEOUT が有効にならない場合があります
  5428.           ので、マクロ自動実行を、RTなどでする場合は便利かと思います。
  5429.  
  5430.  
  5431.       使用例 2 
  5432.           HANGUPT("23:00",TERR)
  5433.                                                                        
  5434.       結果   2
  5435.           23:00(深夜11時)を過ぎた時点で、ラベル TERRから実行します。
  5436.  
  5437.  
  5438.       使用例 3 
  5439.           HANGUPT("+01:10")       現在時刻を 22:00(PM10:00)と仮定
  5440.  
  5441.       結果   3
  5442.           現在時刻から 1時間10分を過ぎた時点(上記例からいえば23:10)で、
  5443.           マクロを中断し終了します。
  5444.           RTなどでは、ホスト側からのTIMEOUT が有効にならない場合があります
  5445.           ので、マクロ自動実行を、RTなどでする場合は便利かと思います。
  5446.  
  5447.  
  5448.       使用例 4 
  5449.           HANGUPT("+01:10",TERR)  現在時刻を 22:00(PM10:00)と仮定
  5450.                                                                          [5450]
  5451.       結果   4
  5452.           現在時刻から、 1時間10分を過ぎた時点(上記例からいえば23:10)で、
  5453.           ラベル TERR から実行します。
  5454.  
  5455.     関連項目  HANGUP,QUIT,OFF
  5456.  
  5457.  
  5458.  
  5459.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5460.     IF<        [制御文]           IF less than(<)
  5461.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5462.  
  5463.     IF<(変数1,変数2または数字文字列)
  5464.  
  5465.       用途  変数 1の値が、変数 2、または数字文字列の値より小さければ、次の
  5466.             行のマクロ命令を実行します。                                 
  5467.  
  5468.       使用例
  5469.           A$ = "1000" 
  5470.           IF<(A$,"2000") 
  5471.           PRINT(A$)                                                    
  5472.  
  5473.       結果
  5474.           上記では、A$と "2000" を比較した場合、A$が小さい時は次行マクロ(
  5475.           PRINT) 文を実行します。
  5476.  
  5477.     関連項目  IFE,IF<>,IFE<,IF>,IFE>,IFSRCHY,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5478.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5479.               JUMPFILEY,JUMPFILEN
  5480.  
  5481.  
  5482.  
  5483.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5484.     IF<>       [制御文]           IF not equal(<>)
  5485.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5486.  
  5487.     IF<>(変数1,変数2または文字列)
  5488.  
  5489.       用途  変数 1の値と、変数 2、または文字列の値と比較して違えば、次の行
  5490.             のマクロ命令を実行します。
  5491.  
  5492.       使用例
  5493.           A$ = "WTERM"           or  A$="120"
  5494.           IF<>(A$,"TERMW")       or  IF<>(A$,"130") 
  5495.           PRINT(A$)
  5496.  
  5497.       結果
  5498.           上記では、A$と TERMW or  A$と "130" を比較した場合に、A$と違う時
  5499.           は、次行 マクロ(PRINT)文を実行します。
  5500.                                                                          [5500]
  5501.     関連項目  IFE,IF<,IFE<,IF>,IFE>,IFSRCHY,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5502.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5503.               JUMPFILEY,JUMPFILEN
  5504.  
  5505.  
  5506.  
  5507.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5508.     IF>        [制御文]           IF greater than(>)
  5509.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5510.  
  5511.     IF>(変数1,変数2または数字文字列)
  5512.  
  5513.       用途  変数 1の値が、変数 2、または数字文字列の値より大きいのであれば、
  5514.             次の行のマクロ命令を実行します。
  5515.  
  5516.       使用例                                                             
  5517.           A$ = "1000" 
  5518.           IF>(A$,"500") 
  5519.           PRINT(A$)
  5520.  
  5521.       結果                                                             
  5522.           上記では、A$と "500" を比較した場合  A$ の方が大きい時は、次行の
  5523.           マクロ命令(PRINT) を実行します。
  5524.                                                                          
  5525.     関連項目  IFE,IF<>,IF<,IFE<,IFE>,IFSRCHY,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5526.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5527.               JUMPFILEY,JUMPFILEN
  5528.  
  5529.  
  5530.  
  5531.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5532.     IFE        [制御文]           IF Equal(=)
  5533.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5534.  
  5535.     IFE(変数1,変数2または数字文字列)
  5536.  
  5537.       用途  変数 1と、変数 2、または数字文字列の値を比較して、等しければ、
  5538.             次行のマクロ命令を、実行します。
  5539.  
  5540.       使用例
  5541.           A$ = "WTERM"          or  A$="120"
  5542.           IFE(A$,"WTERM")       or  IFE(A$,"120")
  5543.           PRINT(A$)
  5544.  
  5545.       結果
  5546.           上記では、A$と WTERM  or  A$と "120"  を比較した場合、A$と等しい
  5547.           場合には、次行マクロ(PRINT) 文を実行します。
  5548.  
  5549.     関連項目  IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5550.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,      [5550]
  5551.               JUMPFILEY,JUMPFILEN
  5552.  
  5553.  
  5554.  
  5555.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5556.     IFE<       [制御文]           IF less than Equal(<=)
  5557.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5558.  
  5559.     IFE<(変数1,変数2または数字文字列)
  5560.  
  5561.       用途  変数 1の値が、変数 2、または数字文字列の値と比べて小さい、もし
  5562.             くは等しければ、次の行のマクロ(PRINT) を実行します。
  5563.  
  5564.       使用例
  5565.           A$="999" or A$="1000"
  5566.           IFE<(A$,"1000")                                                
  5567.           PRINT(A$)
  5568.  
  5569.       結果
  5570.           上記では  A$(1000 or 999) と "1000" を比較した時
  5571.           A$  が等しいか 小さい場合  次行マクロ(PRINT)を実行します。     
  5572.  
  5573.     関連項目  IFE,IF<>,IF<,IF>,IFE>,IFSRCHY,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5574.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,      
  5575.               JUMPFILEY,JUMPFILEN
  5576.  
  5577.  
  5578.  
  5579.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5580.     IFE>       [制御文]           IF greater than Equal(>=)
  5581.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5582.  
  5583.     IFE>(変数1,変数2または数字文字列)                                 
  5584.  
  5585.       用途  変数 1の値が、変数 2、または数字文字列の値よりが大きいか、もし
  5586.             くは等しければ、次の行のマクロ命令を実行します。
  5587.  
  5588.       使用例
  5589.           A$ = "1000"  or   A$="1001"
  5590.           IFE>(A$,"1000") 
  5591.           PRINT(A$)
  5592.  
  5593.       結果
  5594.           上記では、A$(1000 or 1001)と "1000" を比較した場合、A$のほうが大
  5595.           きいか等しい場合に、次行のマクロ命令(PRINT) を実行します。
  5596.  
  5597.     関連項目  IFE,IF<>,IF<,IFE<,IF>,IFSRCHY,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5598.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5599.               JUMPFILEY,JUMPFILEN
  5600.                                                                          [5600]
  5601.  
  5602.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5603.     IFFILEN    [制御文]           If Find FILE No
  5604.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5605.  
  5606.     IFFILEN(変数または文字列)
  5607.  
  5608.       用途  変数に、書かれたファイルを調べて存在しなければ、次行のマクロ命
  5609.             令を実行します。ファイル名には *.* や *. や .*  は使用できませ
  5610.             ん。
  5611.  
  5612.       使用例
  5613.           A$ = "A:\TOOL\ML.EXE" 
  5614.           IFFILEN(A$)
  5615.           PRINT(A$)                                                      
  5616.                                                                          
  5617.       結果
  5618.           A:\TOOL\ML.EXEが無かった場合に、次行のマクロ命令(PRINT) を実行し
  5619.           ます。
  5620.                                                                        
  5621.     関連項目  IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,IFSRCHN,IFFILEY,JUMPE,
  5622.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5623.               JUMPFILEY,JUMPFILEN                                        
  5624.  
  5625.  
  5626.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5627.     IFFILEY    [制御文]           If Find FILE Yes
  5628.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5629.  
  5630.     IFFILEY(変数または文字列)
  5631.     IFFILEY(変数または文字列1,文字列2)
  5632.                                                                        
  5633.       用途  変数に書かれたファイルを調べて存在すれば、次行のマクロ命令を実
  5634.             行します。ファイル名には *.*  や *. や .* は使用できません。
  5635.             ファイルが存在し、文字列2に"REN"と書いてあればそのファイルは、
  5636.             拡張子が、FILE名.OLDとリネームして保存します。同名のFILE名.OLD
  5637.             が存在すれば、そのファイルは、FILE名.000として保存されます。
  5638.  
  5639.       使用例
  5640.           A$ = "A:\TOOL\MLP.EXE" 
  5641.           IFFILEY(A$)
  5642.           PRINT(A$)
  5643.  
  5644.       結果
  5645.           A:\TOOL\MLP.EXEが、存在した場合
  5646.           次行のマクロ命令(PRINT) を実行します。
  5647.  
  5648.     関連項目  IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,IFSRCHN,IFFILEN,JUMPE,
  5649.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5650.               JUMPFILEY,JUMPFILEN                                        [5650]
  5651.  
  5652.  
  5653.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5654.     IFSRCHN    [制御文]           IF SeaRCH word No
  5655.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5656.  
  5657.     IFSRCHN(変数1,比較文字列または変数2)
  5658.  
  5659.       用途  変数 1から 2番目に代入した変数 2、または文字列があるかを検索し、
  5660.             存在しなければ(Noの場合)、次行のマクロ命令を実行します。
  5661.  
  5662.       使用例
  5663.           A$ = "ABCDEF" 
  5664.           IFSRCHN(A$,"GH")
  5665.           PRINT(A$)
  5666.                                                                          
  5667.       結果                                                               
  5668.           上記では、A$(ABCDEF)の中に、比較文字("GH")が、含まれない場合、次
  5669.           行のマクロ命令(PRINT) を、実行します。
  5670.                                                                        
  5671.     関連項目  IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,IFFILEY,IFFILEN,JUMPE,
  5672.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5673.               JUMPFILEY,JUMPFILEN
  5674.  
  5675.  
  5676.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5677.     IFSRCHY    [制御文]           IF SeaRCH word Yes
  5678.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5679.  
  5680.     IFSRCHY(変数1,比較文字列または変数2)
  5681.  
  5682.       用途  変数 1から 2番目に代入した変数 2、または文字列があるか検索し、
  5683.             存在すれば( Yesの場合)、次行のマクロ命令を実行します。
  5684.         
  5685.       使用例
  5686.           A$ = "ABCDEF"
  5687.           IFSRCHY(A$,"AB")
  5688.           PRINT(A$)                                                    
  5689.  
  5690.       結果
  5691.           上記では、A$(ABCDEF)の中に、比較文字("AB")が含まれる場合、次行の
  5692.           マクロ命令(PRINT)を、実行します。
  5693.  
  5694.     関連項目  IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHN,IFFILEY,IFFILEN,JUMPE,
  5695.               JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,JUMPSRCHN,
  5696.               JUMPFILEY,JUMPFILEN
  5697.  
  5698.  
  5699.  
  5700.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[5700]
  5701.     INPUT      [実行文]           INPUT
  5702.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5703.  
  5704.     INPUT(変数1)
  5705.     INPUT(変数1,変数2または文字列2)
  5706.     INPUT(変数1,変数2または文字列2,変数3または文字列3)
  5707.  
  5708.       用途  キーボードから文字列を読み取り、変数 1に格納します。
  5709.              2番目のパラメーターを指定した場合は、変数 2、または文字列 2を
  5710.             表示してから入力状態になります。(コメントをつけたい場合)
  5711.              3番目のパラメーターを指定した場合は、入力ボックスでの入力にな
  5712.             なります。
  5713.             変数 3、または文字列 3で、入力ボックスの位置を指定します。
  5714.             範囲は、 2 - 20 の範囲です。
  5715.  
  5716.       カラー指定は変数 3、または文字列 3に付加します。                   
  5717.    
  5718.             入力ボックス枠のカラー(通常は黄色)を変更したい場合は、 3番目
  5719.             のパラメーターの指定位置に、百の位をつけてください。
  5720.                                                                        
  5721.         書式                                                       
  5722.           色指定 nnは、ボックス位置 
  5723.                1nn   青枠     2nn  赤枠    3nn   黄枠     4nn  緑枠
  5724.                5nn   紫枠     6nn  水色枠  7nn   白枠                    
  5725.  
  5726.         書式例
  5727.           上から、 5行目の場合であれば          105   青枠    205   赤枠
  5728.           上から、10行目の場合であれば          510   紫枠    710   白枠
  5729.  
  5730.         タイムアウト指定は、変数 3、または文字列 3に、 .nnで付加します。   
  5731.  
  5732.           単位    
  5733.             秒数です。最大値は、600 秒です。
  5734.         
  5735.           書式 
  5736.             カラー指定 and 桁指定 +  .nn で、付加します。
  5737.  
  5738.           書式例                                                     
  5739.              上から 5行目の場合であり、なおかつ60秒で、時間切れの場合。
  5740.                  105.60  青枠     205.60   赤枠
  5741.              表示行が 5行目で、30秒でタイムアウトしたい場合。
  5742.                  5.30
  5743.  
  5744.       特殊仕様 1
  5745.           第 3パラメータの最初に文字列 ! を付加した場合には、ESCキーでの
  5746.           マクロアウトは無効となり、既存の(入力前の第 1パラメータの内容) 
  5747.           が、そのまま戻されマクロは続行します。
  5748.                                                                          
  5749.           書式例  INPUT(H$,"ファイル名入力","!316/34.180")
  5750.  
  5751.       特殊仕様 2
  5752.           第 3パラメータのタイム秒数に、+1000を付加した場合には、入力前の[5750]
  5753.           第 1パラメータの内容が、そのまま入力ボックスの入力欄に表示され
  5754.           ます。推奨ファイル名などを入力する場合に大変便利です。
  5755.           また、入力ボックス内の変更は可能です。
  5756.  
  5757.           書式例  H$ = "WTERM.LZH"
  5758.                   INPUT(H$,"ファイル名入力","!316/34.1180")
  5759.                                                      ^ +1000
  5760.  
  5761.       用語  INPUT 文タイムアウト
  5762.             キーをなにも押されていない状態が続くと入力処理を中断します。
  5763.  
  5764.       使用例 1                                                         
  5765.           INPUT(C$)  
  5766.           
  5767.       結果   1
  5768.           キーボードから入力された文字列を、C$に格納します。
  5769.  
  5770.       使用例 2   
  5771.           INPUT(C$,"input No. : ")
  5772.  
  5773.       結果   2
  5774.           "input No. : "を表示の後、入力待ちになります。
  5775.  
  5776.       使用例 3   
  5777.           INPUT(C$,"番号を指定して下さい","5")
  5778.  
  5779.       結果   3
  5780.           入力ボックスでの入力になります。
  5781.           +---------------------------------------------------------+
  5782.           |    INPUT [ MACRO 実行中 ]  番号を指定して下さい         |
  5783.           |                                                         |
  5784.           |                                       ESC -> 入力中断   |
  5785.           +-----黄色枠----------------------------------------------+
  5786.  
  5787.       使用例 4   
  5788.           INPUT(A$,"FILE名を入力して下さい","705.45") 
  5789.  
  5790.       結果   4
  5791.           入力ボックスでの入力になります。(ボックスカラー白)
  5792.  
  5793.           +---------------------------------------------------------+
  5794.           |   INPUT [ MACRO 実行中 ]  FILE名を入力して下さい        |
  5795.           |                                                         |
  5796.           |                                       ESC -> 入力中断   |    
  5797.           +-----白色枠で 45 秒入力がないと入力のみ中断します--------+
  5798.  
  5799.       注意  INPUT TIME OUT の場合は、入力前に内容が、A$に保存されます。
  5800.             中断時(ESCキーを押した場合)は、MACROは即時実行停止します。   [5800]
  5801.             この場合入力時の入力欄は、空白です。
  5802.                                                                          
  5803.       使用例 5   
  5804.           INPUT(A$,"FILE名を入力して下さい","!705.1045")
  5805.  
  5806.       結果   5
  5807.           入力ボックスでの入力になります。(ボックスカラー白)
  5808.           ESC キーはマクロ実行停止にはなりません。
  5809.           この例の、A$の内容はそのまま入力欄に代入されます。
  5810.  
  5811.           +---------------------------------------------------------+
  5812.           |   INPUT [ MACRO 実行中 ]  FILE名を入力して下さい        |
  5813.           | WTERM.LZH                                               |
  5814.           |                          [ESC->( 変数 C$の内容 )を選択] |
  5815.           +-----白色枠で 45 秒入力がないと入力のみ中断します--------+
  5816.  
  5817.       注意  INPUT TIME OUT の場合は、入力前に内容が、A$に保存されます。
  5818.             中断(ESCキーを押した場合)は、入力前に内容が、A$に保存されます。
  5819.             この場合入力時の入力欄は、C$の内容です。
  5820.  
  5821.  
  5822.     関連項目  INPUTF
  5823.  
  5824.  
  5825.  
  5826.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5827.     INPUTF     [実行文]           INPUT Filename
  5828.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5829.  
  5830.     INPUTF(変数,文字列)
  5831.     INPUTF(変数,文字列1,文字列2)
  5832.  
  5833.       用途  ファイル選択画面を起動し、選択したファイル名を変数に格納します。
  5834.             文字列 1は、最初に表示するディレクトリー名です。
  5835.             文字列 2は、上記ディレクトリーで表示したい拡張子です。空白の場
  5836.             合は *.*  が代入されます。
  5837.  
  5838.       注意   2分間入力がない場合は、入力を中断して戻ります。
  5839.  
  5840.       使用例 1
  5841.           INPUTF(A$,"")          
  5842.  
  5843.       結果   1
  5844.            カレントディレクトリーのファイル選択画面を開き(*.*)、選択したフ
  5845.            ァイル名を、A$に格納します。                                  
  5846.                                                                          
  5847.       使用例 2
  5848.           INPUTF(A$,"","*.DAT")  
  5849.       結果   2
  5850.           カレントディレクトリーの ファイル選択画面を開き(*.DAT)、       [5850]
  5851.           選択したファイル名をA$に格納します。     
  5852.  
  5853.       使用例 3
  5854.           INPUTF(B$,"A:\WTERM")  
  5855.       結果   3
  5856.           A:\WTERM\*.* で ファイル選択画面を開き、選択したファイル名を、B$
  5857.           に格納します。
  5858.                                                                          
  5859.       使用例 4
  5860.           INPUTF(B$,"A:\WT","*.MAC") 
  5861.                                  
  5862.       結果   4
  5863.           A:\WT\*.MAC でファイル選択画面を開き、選択したファイル名を、B$に
  5864.           格納します。
  5865.  
  5866.       使用例 5
  5867.           INPUTF(Z$,D$)          
  5868.  
  5869.       結果   5
  5870.           D$の内容をディレクトリー名とみなしてファイル選択画面を開き、選択
  5871.           したファイル名を Z$に格納します。
  5872.  
  5873.     関連項目  INPUT
  5874.  
  5875.  
  5876.  
  5877.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5878.     INS        [関  数]           INSert string
  5879.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5880.     
  5881.     INS(変数1,挿入開始数値,挿入文字列または変数2)
  5882.  
  5883.       用途  変数の挿入開始位置の前に挿入文字列を挿入します。
  5884.             数値は、バイト単位で、何番目か漢字の場合は1 文字 2バイトです。
  5885.  
  5886.       使用例
  5887.           A$ = "123456789"
  5888.           INS(A$,"5","こんにちは")
  5889.  
  5890.       結果
  5891.           A$ = "1234こんにちは56789"
  5892.  
  5893.       解説  変数A$の 5文字目に、こんにちはを挿入します。
  5894.  
  5895.  
  5896.     関連項目  APS,CAT,COPY,INS,LEFT,LENGTH,POS,RIGHT                 
  5897.  
  5898.  
  5899.  
  5900.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[5900]
  5901.     ISKANJI    [実行文]           ISKANJI
  5902.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5903.  
  5904.     ISKANJI(文字列または変数1,変数2または文字列2,変数3)
  5905.  
  5906.       用途  文字列の変数 2の数値バイト目が、漢字コードの 2バイト目であるか
  5907.             どうか判定して、漢字コードの 2バイト目であれば、変数 3に 1を、
  5908.             なければ変数 3に 0を返します。                               
  5909.  
  5910.       使用例 1
  5911.           A$="SHIFT-JISの漢字"
  5912.           ISKANJI(A$,"11",B$)                                        
  5913.  
  5914.       結果   1
  5915.           B$ = 1
  5916.  
  5917.       使用例 2  
  5918.           A$="<<< a.doc for MS-DOS ( use ish ) [ 23 lines ] >>>"
  5919.           ISKANJI(A$,"1",C$)
  5920.           JUMPE(C$,"1",KANJI_Y)
  5921.           JUMP(KANJI_N)
  5922.  
  5923.       結果   2
  5924.           変数A$の 1バイト( 1文字)目が、漢字( 2バイト文字)であれば、KA
  5925.           NJI_Y に、でなければ、KANJI_N に、ジャンプします。
  5926.           上記の場合、ジャンプラベル、KANJ_Nにジャンプします。
  5927.  
  5928.  
  5929.  
  5930.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5931.     JUMP<      [制御文]           compare JUMP less than(<)
  5932.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5933.  
  5934.     JUMP<(変数1,変数2または数字文字列,ラベル)  
  5935.  
  5936.       用途  変数 1の値が  変数 2、または数字文字列より値が小さいければ、指
  5937.             定したラベルにジャンプします。
  5938.  
  5939.       使用例
  5940.           A$ = "1000" 
  5941.           JUMP<(A$,"2000",JUMPW2)
  5942.  
  5943.       結果
  5944.           上記では、A$と "2000" を比較した場合、A$が小さいので、指定ラベル
  5945.           JUMPW2に、ジャンプします。  
  5946.  
  5947.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP>,JUMPE>,JUMPSRCHY,
  5948.               JUMPSRCHN,JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,
  5949.               IFSRCHY,IFSRCHN,IFFILEY,IFFILEN
  5950.                                                                          [5950]
  5951.  
  5952.  
  5953.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5954.     JUMP<>    [制御文]           compare JUMP not equal(<>)
  5955.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5956.  
  5957.     JUMP<>(変数1,比較文字列または変数2,ラベル)
  5958.                                                                          
  5959.       用途  変数 1の値と、比較文字列または、変数 2に代入した値を比較して、
  5960.             違えば指定したラベルにジャンプします。
  5961.                                                                          
  5962.       使用例
  5963.            A$ = "WTERM"          or     A$="120"
  5964.            JUMP<>(A$,"TERMW",JUMPW2)    JUMP<>(A$,"130",JUMPW2) 
  5965.  
  5966.       結果
  5967.           上記では、A$と TERMW or A$と "130"  を比較した場合、A$の内容と違
  5968.           うので指定ラベルJUMPW2に、ジャンプします。
  5969.  
  5970.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<,JUMPE<,JUMP>,JUMPE>,JUMPSRCHY,
  5971.               JUMPSRCHN,JUMPFILEY,JUMPFILEN, IFE,IF<>,IF<,IFE<,IF>,IFE>,
  5972.               IFSRCHY,IFSRCHN,IFFILEY,IFFILEN
  5973.  
  5974.  
  5975.  
  5976.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5977.     JUMP>      [制御文]           compare JUMP greater Than(>)
  5978.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  5979.  
  5980.     JUMP>(変数1,変数2または数字文字列,ラベル)
  5981.  
  5982.       用途  変数 1の値が、変数 2、または、数字文字列の値より大きい場合に、
  5983.             指定したラベルに、ジャンプします。
  5984.  
  5985.       使用例
  5986.           A$ = "1000"                                                  
  5987.           JUMP>(A$,"500",JUMPW2) 
  5988.  
  5989.       結果
  5990.           上記では、A$と "500"  を比較した場合、A$が大きい場ので指定ラベル
  5991.           JUMPW2に、ジャンプします。
  5992.  
  5993.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP<,JUMPE>,JUMPSRCHY,
  5994.               JUMPSRCHN,JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,
  5995.               IFSRCHY,IFSRCHN,IFFILEY,IFFILEN
  5996.  
  5997.  
  5998.                                                                        
  5999.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6000.     JUMPE      [制御文]           compare JUMP Equal(=)                  [6000]
  6001.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6002.  
  6003.     JUMPE(変数1,比較文字列または変数2,ラベル)  
  6004.  
  6005.       用途  変数 1の値と 2番目に代入した値を比較して等しければ、指定したラ
  6006.       ベルに、ジャンプします。
  6007.  
  6008.       使用例 1                                                           
  6009.           A$ = "WTERM"                                                 
  6010.           JUMPE(A$,"WTERM",JUMPW2) 
  6011.  
  6012.       結果   1
  6013.           上記では、A$と比較文字列 WTERM  を比較した場合、同じ内容なので、
  6014.           指定ジャンプラベル JUMPW2に、ジャンプします。
  6015.  
  6016.  
  6017.       使用例 2
  6018.           A$ = "120"
  6019.           JUMPE(A$,"120",JUMPW2)
  6020.  
  6021.       結果   2
  6022.           上記では、A$と 120を比較した場合、同じ内容なので、指定ジャンプラ
  6023.           ベル JUMPW2に、ジャンプします。
  6024.  
  6025.     関連項目  YJUMP,NJUMP,JUMP<>,JUMP<,JUMPE<,JUMP>,JUMPE>,JUMPSRCHY,
  6026.               JUMPSRCHN,JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,
  6027.               IFSRCHY,IFSRCHN,IFFILEY,IFFILEN
  6028.  
  6029.  
  6030.  
  6031.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6032.     JUMPE<     [制御文]           compare JUMP less than Equal(<=)
  6033.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6034.  
  6035.     JUMPE<(変数1,変数2または数字文字列,ラベル)
  6036.                                                                        
  6037.       用途  変数 1の値が、変数 2、または、数字文字列の値にくらべ、小さいか
  6038.             もしくは等しければ、指定したラベルにジャンプします。
  6039.  
  6040.       使用例
  6041.           A$ = "999"  or A$="1000"
  6042.           JUMPE<(A$,"1000",JUMPW2) 
  6043.  
  6044.       結果
  6045.           上記では、A$(999 or 1000)と "1000"  を比較した場合、A$が等しいか
  6046.           小さい場合、指定ジャンプラベル JUMPW2に、ジャンプします。  
  6047.                                                                        
  6048.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,
  6049.               JUMPSRCHN,JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,
  6050.               IFSRCHY,IFSRCHN,IFFILEY,IFFILEN                            [6050]
  6051.  
  6052.  
  6053.  
  6054.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6055.     JUMPE>     [制御文]           compare JUMP greater than Equal(>=)
  6056.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6057.                                                                      
  6058.     JUMPE>(変数1,変数2または数字文字列,ラベル)                           
  6059.  
  6060.       用途  変数 1の値と、変数 2、または、数字文字列の値より、大きいもしは
  6061.             等しければ指定したラベルに、ジャンプします。
  6062.  
  6063.       使用例
  6064.           A$ = "1000"  or  A$ = "1001" 
  6065.           JUMPE>(A$,"1000",JUMPW2) 
  6066.  
  6067.       結果
  6068.           上記では、A$(1000 or 1001)と "1000" を比較した場合に、A$が等しい
  6069.           か大きい場合、指定ジャンプラベル JUMPW2に、ジャンプします。  
  6070.  
  6071.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPSRCHY,
  6072.               JUMPSRCHN,JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,
  6073.               IFSRCHY,IFSRCHN,IFFILEY,IFFILEN
  6074.                                                                        
  6075.  
  6076.  
  6077.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6078.     JUMPFILEN  [制御文]           JUMP if find FILE No
  6079.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6080.  
  6081.     JUMPFILEN(変数または文字列,ラベル)
  6082.  
  6083.       用途  変数に書かれたファイルを探して、存在しなければ指定したラベルに、
  6084.             ジャンプします。
  6085.             ファイル名には *.* や *. や .* は、使用できません。
  6086.  
  6087.       使用例                                                           
  6088.           A$ = "A:\TOOL\ML.EXE" 
  6089.           JUMPFILEN(A$,JUMPW2)
  6090.  
  6091.       結果
  6092.           A:\TOOL\ML.EXEが、存在しなかった場合、指定ジャンプラベル JUMPW2
  6093.           に、ジャンプします。
  6094.  
  6095.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,
  6096.               JUMPSRCHN,JUMPFILEY,IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,
  6097.               IFSRCHN,IFFILEY,IFFILEN
  6098.  
  6099.                                                                        
  6100.                                                                          [6100]
  6101.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6102.     JUMPFILEY  [制御文]           JUMP if find FILE Yes
  6103.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6104.  
  6105.     JUMPFILEY(変数または文字列,ラベル)                                 
  6106.                                                                        
  6107.       用途  変数に書かれたファイルを探して、存在すれば指定したラベルに、ジ
  6108.             ャンプします。                                               
  6109.             ファイル名には *.* や *. や .* は、使用できません。
  6110.  
  6111.       使用例
  6112.           A$ = "A:\TOOL\MLP.EXE" 
  6113.           JUMPFILEY(A$,JUMPW2) 
  6114.  
  6115.       結果
  6116.           A:\TOOL\MLP.EXEが、存在した場合、指定ジャンプラベル JUMPW2に、ジ
  6117.           ャンプします。  
  6118.  
  6119.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,
  6120.               JUMPSRCHN,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,    
  6121.               IFSRCHN,IFFILEY,IFFILEN
  6122.  
  6123.  
  6124.  
  6125.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6126.     JUMPSRCHN  [制御文]           JUMP if SeaRCH No
  6127.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6128.  
  6129.     JUMPSRCHN(比較元文字列または変数1,比較文字列または変数2,ラベル)
  6130.  
  6131.       用途  変数 1から、 2番目に代入した変数 2、または文字列があるかを検索
  6132.             して、該当する文字列がなければ、指定したラベルにジャンプします。
  6133.             文字列、または変数 1が空白であれば、検索できないのでジャンプし
  6134.             ます。
  6135.  
  6136.       使用例
  6137.           A$ = "ABCDEF" 
  6138.           JUMPSRCHN(A$,"GH",JUMPW2) 
  6139.  
  6140.       結果
  6141.           上記では、A$(ABCDEF)の中に、比較文字("GH")が含まれない場合、指定
  6142.           ジャンプラベル JUMPW2に、ジャンプします。                    
  6143.  
  6144.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHY,
  6145.               JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,
  6146.               IFSRCHN,IFFILEY,IFFILEN,
  6147.  
  6148.  
  6149.  
  6150.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[6150]
  6151.     JUMPSRCHY  [制御文]           JUMP if SeaRCH Yes
  6152.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6153.  
  6154.     JUMPSRCHY(比較元文字列または変数1,比較文字列または変数2,ラベル)    
  6155.  
  6156.       用途  変数 1から、 2番目に代入した変数 2、または文字列があるかを検索
  6157.             して、該当する文字列が存在すれば、指定したラベルにジャンプしま
  6158.             す。文字列または変数 1が、空白であれば検索できないのでジャンプ
  6159.             しません。
  6160.               
  6161.       使用例
  6162.           A$ = "ABCDEF" 
  6163.           JUMPSRCHY(A$,"AB",JUMPW2) 
  6164.  
  6165.       結果
  6166.           上記では、A$(ABCDEF)の中に比較文字("AB")が含まれる場合、指定ジャ
  6167.           ンプラベル JUMPW2に、ジャンプします。  
  6168.  
  6169.     関連項目  YJUMP,NJUMP,JUMPE,JUMP<>,JUMPE<,JUMP<,JUMP>,JUMPE>,JUMPSRCHN,
  6170.               JUMPFILEY,JUMPFILEN,IFE,IF<>,IF<,IFE<,IF>,IFE>,IFSRCHY,
  6171.               IFSRCHN,IFFILEY,IFFILEN
  6172.  
  6173.  
  6174.  
  6175.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6176.     LAPTIME    [関  数]           LAPTIME
  6177.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6178.  
  6179.     LAPTIME(変数1,変数2)
  6180.  
  6181.       用途  変数 1に、マクロを開始からの経過時間が、代入されます。
  6182.             変数 2に、SETTIME してからの経過時間が、代入されます。
  6183.  
  6184.       使用例
  6185.           LAPTIME(A$,B$)
  6186.             MACROSTARTした時点での時間が仮に 00:00:10
  6187.  
  6188.             SETTIMEした時点での時間が仮に    00:10:15
  6189.  
  6190.             現在時間は                       00:20:00
  6191.  
  6192.             A$="00:19:50"     マクロ START時からの経過時間の値
  6193.             B$="00:09:45"     SETTIME からの      経過時間の値
  6194.                                                                       
  6195.     関連項目  TIME,LOGTIME,SETTIME
  6196.  
  6197.  
  6198.  
  6199.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6200.     LASTDATE   [関  数]           LAST access DATE                       [6200]
  6201.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6202.     
  6203.     LASTDATE(変数,区分挿入文字列[任意])     
  6204.  
  6205.       用途  変数に、現在接続しているホストのラストログイン年月日を代入しま
  6206.             す。
  6207.                                                                        
  6208.       解説  区分挿入文字列(任意)は  "/"、"*"、"." です。                 
  6209.  
  6210.       仮に最終アクセス日が 95.01.01とした場合                              
  6211.  
  6212.       使用例 1
  6213.           LASTDATE(A$,"/")
  6214.  
  6215.       結果   1
  6216.           A$ = "95/01/01"
  6217.  
  6218.       使用例 2
  6219.           LASTDATE(A$,"*")  
  6220.  
  6221.       結果   2
  6222.           A$ = "95*01*01"
  6223.  
  6224.       使用例 3
  6225.           LASTDATE(A$,".")
  6226.  
  6227.       結果   3
  6228.           A$ = "95.01.01"
  6229.  
  6230.       使用例 4
  6231.           LASTDATE(A$) 
  6232.  
  6233.       結果   4
  6234.           A$ = "950101" 
  6235.  
  6236.     関連項目  DATE,DATEADD,DATESUB
  6237.  
  6238.  
  6239.  
  6240.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6241.     LASTTIME   [関  数]           LAST access TIME
  6242.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6243.  
  6244.     LASTTIME(変数,区分挿入文字列[任意])  
  6245.  
  6246.       用途  変数に、現在接続しているホストのラストログイン接続終了時間を代
  6247.             入します。
  6248.  
  6249.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。
  6250.                                                                          [6250]
  6251.       仮に最終アクセス時間が 21:10:05 とした場合
  6252.  
  6253.       使用例 1
  6254.           LASTTIME(A$,"/")
  6255.                                                                        
  6256.       結果   1
  6257.           A$ = "21/10/05"                                             
  6258.                                                                          
  6259.       使用例 2
  6260.           LASTTIME(A$,"*")  
  6261.  
  6262.       結果   2
  6263.           A$ = "21*10*05"
  6264.  
  6265.       使用例 3
  6266.           LASTTIME(A$,".")
  6267.  
  6268.       結果   3
  6269.           A$ = "21.10.05"
  6270.  
  6271.       使用例 4
  6272.           LASTTIME(A$) 
  6273.  
  6274.       結果   4
  6275.           A$ = "211005"
  6276.  
  6277.     関連項目  TIME,LASTDATE,LASTSTIME
  6278.  
  6279.  
  6280.  
  6281.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6282.     LASTSTIME  [関  数]           LAST access Stat TIME
  6283.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6284.  
  6285.     LASTSTIME(変数,区分挿入文字列[任意])  
  6286.  
  6287.       用途  変数に、現在接続しているホストのラストログイン時点のアクセス開
  6288.             始続時間を代入します。
  6289.  
  6290.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。   
  6291.  
  6292.       仮に、最終アクセスした際のその開始時間が 20:10:05 とした場合
  6293.  
  6294.       使用例 1
  6295.           LASTSTIME(A$,"/")
  6296.  
  6297.       結果   1
  6298.           A$ = "20/10/05"
  6299.  
  6300.       使用例 2                                                           [6300]
  6301.           LASTSTIME(A$,"*")                                            
  6302.                                                                          
  6303.       結果   2
  6304.           A$ = "20*10*05"
  6305.  
  6306.       使用例 3
  6307.           LASTSTIME(A$,".")
  6308.                                                                          
  6309.       結果   3
  6310.           A$ = "20.10.05"
  6311.  
  6312.       使用例 4
  6313.           LASTSTIME(A$) 
  6314.  
  6315.       結果   4
  6316.           A$ = "201005"
  6317.  
  6318.     関連項目  TIME,LASTDATE,LASTTIME,
  6319.  
  6320.  
  6321.  
  6322.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6323.     LEFT       [関  数]           insert LEFT
  6324.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6325.  
  6326.     LEFT(変数1,左側よりカット指定(文字数または変数2))
  6327.     LEFT(変数1,左側よりカット指定(文字数または変数2),変数3)
  6328.  
  6329.       用途  変数 1の左側より、変数 2、または文字列で指定した文字数分取り出
  6330.             して、変数 1に代入します。
  6331.             第 3パラメーターに、変数 3がある場合は、変数 3にカットする前の
  6332.             変数 1の内容を代入します。
  6333.             数値はバイト単位で、漢字の場合は 1文字 2バイトで計算します。
  6334.  
  6335.       使用例 1
  6336.           A$ = "123456789"
  6337.           LEFT(A$,"5")  
  6338.  
  6339.       結果   1
  6340.           A$ = "12345"
  6341.                                                                       
  6342.       解説  変数A$の左側から、 5文字分取りだし、変数A$に、代入します。
  6343.  
  6344.       使用例 2
  6345.           A$ = "123456789"
  6346.           LEFT(A$,"5",C$)  
  6347.  
  6348.       結果   3
  6349.           A$ = "12345"
  6350.           C$ = "123456789"                                               [6350]
  6351.  
  6352.       解説  変数A$の左側から、 5文字分取りだし、変数A$に、代入します。
  6353.             変数C$には、カットする前の、A$の内容が代入されます。
  6354.  
  6355.     関連項目  APS,CAT,COPY,DEL,INS,RIGHT
  6356.  
  6357.  
  6358.                                                                          
  6359.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6360.     LENGTH     [関  数]           LENGTH of strings
  6361.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6362.  
  6363.     LENGTH(変数1,変数2)                                               
  6364.                                                                        
  6365.       用途  変数 2の文字列の、文字列長を、変数 1に代入します。
  6366.  
  6367.       使用例
  6368.           B$ = "123456789ABC"
  6369.           LENGTH(A$,B$)
  6370.  
  6371.       結果
  6372.           A$ = "12"              (12文字)
  6373.  
  6374.     関連項目  CAT,COPY,DEL,INS,POS                                   
  6375.  
  6376.  
  6377.  
  6378.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6379.     LOGCLOSE   [実行文]           LOG file CLOSE
  6380.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6381.  
  6382.     LOGCLOSE
  6383.  
  6384.       用途  現在記録中のログファイルを、クローズ(記録中断)します。
  6385.  
  6386.       使用例
  6387.           LOGCLOSE 
  6388.  
  6389.     関連項目  LOGOPEN
  6390.  
  6391.  
  6392.   
  6393.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6394.     LOGOPEN    [実行文]           LOG file OPEN
  6395.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6396.  
  6397.     LOGOPEN(変数または文字列)
  6398.  
  6399.       用途  指定された文字列(または変数)をログファイル名として、ログファ
  6400.             イルを記録開始しはじめます。                                 [6400]
  6401.             すでにログファイルが記録状態の場合は、中断したのち、再度記録開
  6402.             始します。
  6403.  
  6404.       仕様  TEMP  という文字列の場合のみ、TEMP.LOGという名前のログに追加し
  6405.             ていきます。
  6406.             STOP  という文字列の場合のみ、ログを取るのを中止します。
  6407.             指定ファイルと、同名のファイルがある場合はそれに追加します。
  6408.             存在しない場合は、新規に作ります。                           
  6409.                                                                         
  6410.  
  6411.       ポイント
  6412.             下記使用例での違いは、ファイル名が 4文字以内であるかどうかです。
  6413.             ファイル名に、日時を付加したい場合は 4文字以下にして下さい。
  6414.             なお。拡張子なしでも .  があれば、月日はつけません。
  6415.  
  6416.       使用例 1   
  6417.           LOGOPEN("WWIV") 
  6418.  
  6419.       結果   1
  6420.           ログ格納ディレクトリーに、WWIV0301.LOGを作成します。
  6421.           拡張子を指定しない場合、後ろに"月日.LOG"を付けます。
  6422.           ファイル名が、 4文字以下あれば、ファイル名に月日を付加します。
  6423.  
  6424.       使用例 2   
  6425.           LOGOPEN("WWIV1")     
  6426.  
  6427.       結果   2
  6428.           カレントドライブに、WWIV1 というログファイルを作成します。
  6429.  
  6430.       使用例 3   
  6431.           LOGOPEN("A:\WWIV")
  6432.  
  6433.       結果   3
  6434.           A:\に、WWIV0301.LOGというログファイルを作成します。
  6435.           ファイル名が、 4文字以下あれば、ファイル名に月日を付加します。
  6436.  
  6437.       使用例 4   
  6438.           LOGOPEN("A:\WWIV.")
  6439.  
  6440.       結果   4
  6441.           A:\に、WWIV というログファイルを、作成します。
  6442.  
  6443.       使用例 5   
  6444.           LOGOPEN("A:\WT\WWIV")
  6445.                                                                       
  6446.       結果   5
  6447.           A:\WT\に、WWIV月日.LOG を 作成します。
  6448.           ファイル名が、 4文字以下あれば、ファイル名に月日を付加します。
  6449.                                                                      
  6450.       使用例 6                                                           [6450]
  6451.           LOGOPEN("A:\WT\WWIV1") 
  6452.  
  6453.       結果   6
  6454.           A:\に、WWIV1 というログファイルを、作成します。
  6455.                                                                        
  6456.       使用例 7   
  6457.           LOGOPEN("WWIV.LOG")    
  6458.                                                                          
  6459.       結果   7
  6460.           ログ格納ディレクトリーに、WWIV.LOGを作成します。
  6461.  
  6462.       使用例 8   
  6463.           LOGOPEN("A:\WWIV.LOG")
  6464.  
  6465.       結果   8
  6466.           A:\に、WWIV.LOG というログファイルを、作成します。
  6467.  
  6468.       使用例 9   
  6469.           LOGOPEN("A:\WT\WW.LOG")
  6470.  
  6471.       結果   9
  6472.           A:\に、WW.LOG というログファイルを、作成します。
  6473.  
  6474.       使用例10   
  6475.           LOGOPEN("") 
  6476.  
  6477.       結果  10
  6478.           現在接続中のホスト設定で指定してある名前のログに追加します。
  6479.           空白""は、忘れないようにしてください。
  6480.  
  6481.       使用例11
  6482.           LOGOPEN("TEMP") 
  6483.  
  6484.       結果  11
  6485.           TEMP.LOGという名前に追加します。
  6486.           同じ名前で、ログファイルを記録したい場合はこれにしてください。
  6487.  
  6488.     関連項目  LOGCLOSE
  6489.  
  6490.  
  6491.                                                                         
  6492.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6493.     LOGTIME    [関  数]           LOGon TIME
  6494.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6495.                                                                        
  6496.     LOGTIME(変数,区分挿入文字列[任意])
  6497.                                                                       
  6498.       用途  変数に、接続中のホストに接続してからの経過時間を代入します
  6499.  
  6500.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。        [6500]
  6501.  
  6502.       仮に、アクセス開始時間が、 21:10:05 とした場合、現在時刻 21:25:25
  6503.  
  6504.       使用例 1
  6505.           LOGTIME(A$,":")  
  6506.  
  6507.       結果   1
  6508.           A$ = "00:15:20"                                                
  6509.                                                                        
  6510.  
  6511.       使用例 2
  6512.           LOGTIME(A$,"/")  
  6513.  
  6514.       結果   2
  6515.           A$ = "00/15/20"
  6516.  
  6517.  
  6518.       使用例 3
  6519.           LOGTIME(A$,".")  
  6520.  
  6521.       結果   3
  6522.           A$ = "00.15.20"
  6523.  
  6524.  
  6525.       使用例 4
  6526.           LOGTIME(A$)      
  6527.  
  6528.       結果   4
  6529.           A$ = "001520"
  6530.  
  6531.     関連項目  TIME,SETTIME,LAPTIME
  6532.  
  6533.  
  6534.  
  6535.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6536.     LOWCASE    [関  数]           LOWer CASE string
  6537.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6538.  
  6539.     LOWCASE(変数1,変数2)
  6540.                                                                          
  6541.       用途  変数 2の中の半角大文字を、半角小文字に変換して、変数 1に代入し
  6542.             ます。
  6543.       
  6544.       使用例
  6545.           B$ = "ABCDEF"
  6546.           LOWCASE(A$,B$)
  6547.                                                                        
  6548.       結果
  6549.           A$ = "abcdef"                                                 
  6550.                                                                          [6550]
  6551.     関連項目  CAT,COPY,DEL,INS,UPCASE
  6552.  
  6553.  
  6554.  
  6555.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6556.     MACROVER   [関  数]           MACRO VERsion date
  6557.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6558.                                                                          
  6559.     MACROVER(変数)
  6560.     MACROVER(変数1,変数2)
  6561.  
  6562.       用途  変数に、WTERM の製作発表時期が格納される。
  6563.             変数2があれば、"MSDOS"を変数2に格納します。
  6564.  
  6565.       現在発表時期において下記の種類があります。
  6566.  
  6567.           MACROVER   "920707"          MACROVER   "920928"
  6568.           MACROVER   "930127"          MACROVER   "930619"
  6569.           MACROVER   "930620"          MACROVER   "930910"
  6570.           MACROVER   "931020"          MACROVER   "931101"
  6571.           MACROVER   "931204"          MACROVER   "940610"
  6572.           MACROVER   "941001"          MACROVER   "950101"
  6573.           MACROVER   "950301"          MACROVER   "950303"
  6574.           MACROVER   "950415"          MACROVER   "950825"
  6575.           MACROVER   "951101"          MACROVER   "960127"
  6576.           MACROVER   "960301"          MACROVER   "960601"
  6577.       
  6578.       使用例
  6579.           MACROVER(A$)
  6580.  
  6581.       結果
  6582.           A$="950120"   95.01.27
  6583.  
  6584.  
  6585.  
  6586.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6587.     MAKERB     [実行文]           MAKE Read Batch command
  6588.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6589.                                           
  6590.     MAKERB(変数1,変数2)
  6591.  
  6592.       用途  ","と "-" で、区切られた数字文字列を、変数 1にパラメーターとし
  6593.             て与えると、PC-VANのRBコマンド用の文字列として、加工して変数 2
  6594.             に返します。
  6595.  
  6596.             変数 1の文字列を解析した結果、RBコマンド数字が 5個を越える時は、
  6597.             残りの数字文字列を、変数 1に返します。
  6598.                                                                        
  6599.             変数 1の文字列を解析した結果、RBの数字が 5個を越えない時は、解
  6600.             析が全て終了したという文字列を変数 1に "__RB_END__"          [6600]
  6601.             を返します。
  6602.             変数 1が空白の場合、変数 1に "__RB_END__" 変数 2に "__RB_ERR__"
  6603.             を 返します。
  6604.  
  6605.       制限  使用に当たって以下の制限があります。
  6606.             9999の次は、 1になりません。10000になります。
  6607.             A$は、"," や "-" で始まったり終わったりしている場合、その結果
  6608.             は保証しません。                                            [
  6609.                                                                        
  6610.       使用例 1                                                         
  6611.           A$ = "1,2,3,5-10" の時
  6612.           MAKERB(A$,B$)
  6613.                                                                        
  6614.       結果   1                                                        
  6615.           A$ = "7-10"
  6616.           B$ = "RB1,2,3,5,6"
  6617.                                                                        
  6618.       使用例 2 
  6619.           A$ = "100,50-52,200,300-310,400-410" の時
  6620.           MAKERB(A$,B$)
  6621.                                                                        
  6622.       結果   2   
  6623.           A$ = "300-310,400-410"
  6624.           B$ = "RB100,50,51,52,200"
  6625.                                                                        
  6626.       使用例 3                                                         
  6627.           A$ = "100,50-52,200" の時
  6628.           MAKERB(A$,B$)
  6629.                                                                        
  6630.       結果   3
  6631.           A$ = "__RB_END__"
  6632.           B$ = "RB100,50,51,52,200"
  6633.  
  6634.  
  6635.                                                                 
  6636.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6637.     MASKCRT    [制御文]           MASK CRT indication on or off
  6638.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6639.  
  6640.       MASKCRT(ON,OFF)
  6641.                        
  6642.       用途  画面出力表示をすべて、X に置き換えます。
  6643.             アクセス中に回りに人がいて不都合が招じる場合などで、画面出力を
  6644.             表示したくない場合など(電子メールを読む場合など)有効です。
  6645.             ログファイルや、バックスクロールなどには通常文字で記録されます。
  6646.             OFF とするか、マクロを終了した時点で正常表示に戻ります。
  6647.                                                                        
  6648.       使用例
  6649.           MASKCRT(ON)   画面出力表示をすべて  X に  置き換えます。
  6650.                                                                          [6650]
  6651.       実行例
  6652.           こんにちは    ->  XXXXXXXXXX
  6653.  
  6654.     関連項目  CRT
  6655.  
  6656.  
  6657.  
  6658.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6659.     MDUMP      [制御文]           Macro DUMP on or off
  6660.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6661.  
  6662.     MDUMP(変数または文字列)
  6663.     MDUMP(変数または文字列,変数 2または文字列)
  6664.  
  6665.       用途  マクロDUMPファイルの記録の、開始/中断を指定します。
  6666.             最初から記録せず任意の場所前後のみ記録したい場合に、便利です。
  6667.             第  2パラメーターを指定した場合は、実行時間等の記録もします。
  6668.             それを指定した場合には、なお一層実行速度が低下します。
  6669.  
  6670.       注意  ユーザー設定で、MACRO.DMP 記録を、するにしている状態で有効です。
  6671.  
  6672.       使用例                                                          
  6673.           MDUMP("OFF")      MACRO.DMP の記録を、中断します。
  6674.  
  6675.       使用例                                                          
  6676.           MDUMP("ON")       MACRO.DMP の記録を、再開します。
  6677.  
  6678.       使用例                                                          
  6679.           MDUMP("ON","ON")  MACRO.DMP の記録に、時間も書き込みます。
  6680.  
  6681.       使用例                                                          
  6682.           MDUMP("ON","OFF") MACRO.DMP の記録に、時間は書き込みません。
  6683.  
  6684.  
  6685.       MACRO.DMP 例
  6686.         NIFTY    95-01-01 00:00:00
  6687.         -=-= MACRO DUMP -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6688.         A:\MACRO\LOGIN.MAC 350 Line Reading ......OK
  6689.         コマンド数=884(1024) 文字数=5318(12288) ラベル数=131(150)              
  6690.         NIFTY    95-01-01 00:01:15          <-- 時間表示の場合
  6691.         A:\MACRO\LOGIN.MAC   9  LOGCLOSE
  6692.         NIFTY    95-01-01 00:01:18          <-- 時間表示の場合
  6693.         A:\MACRO\LOGIN.MAC  11  INPUT(,何をしますか?,3.10)
  6694.         NIFTY    95-01-01 00:01:22          <-- 時間表示の場合    
  6695.         A:\MACRO\LOGIN.MAC  12  JUMPE(FWTERM,,OVER)
  6696.         NIFTY    95-01-01 00:01:25          <-- 時間表示の場合
  6697.         A:\MACRO\LOGIN.MAC  13  SEND(GO )
  6698.         NIFTY    95-01-01 00:02:11          <-- 時間表示の場合
  6699.         A:\MACRO\LOGIN.MAC  14  SEND(FWTERM)
  6700.                                                                          [6700]
  6701.            ------------  中略  --------------                
  6702.  
  6703.         A:\MACRO\LOGIN.MAC  118  LOGOPEN(NIF)
  6704.         NIFTY    95-01-01 00:07:25          <-- 時間表示の場合
  6705.         A:\MACRO\LOGIN.MAC  119  EXIT                         
  6706.  
  6707.  
  6708.                                                                          
  6709.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6710.     MKDIR      [実行文]           MaKe DIRectory
  6711.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6712.  
  6713.     MKDIR(変数または文字列)
  6714.  
  6715.       用途  サブディレクトリーを作ります。
  6716.                                                                        
  6717.       制限  エラー(ディレクトリーが作成できない場合)時は、マクロは停止し
  6718.             ます。指定されたディレクトリーが、すでに存在する場合は、続行と
  6719.             なります。
  6720.                                                                        
  6721.       使用例
  6722.           MKDIR("A:\TEST")  #※MKDIR("A:\TEST\")のように最後に\は付けない。
  6723.  
  6724.       結果
  6725.           A:\に  TESTというサブディレクトリーを作ります。
  6726.                                                                        
  6727.     関連項目  DISKSIZE,DISKFSIZE
  6728.  
  6729.  
  6730.  
  6731.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-  
  6732.     MOD        [関  数]           MODulus
  6733.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6734.  
  6735.     MOD(変数1,変数2または文字列2,変数3または文字列3)
  6736.  
  6737.       用途  変数 2を、変数 3の内容で割って(除算)、変数 1には除算の余り(
  6738.             整数)が代入されます。代入される内容は、数字の文字列形式です。
  6739.             変数 1 = 変数 1 -((変数 2 or 文字列 2)÷(変数 3 or 文字列 3))
  6740.  
  6741.       使用例 1
  6742.           B$ = "1000"
  6743.           C$ = "5"
  6744.           MOD(A$,B$,C$)
  6745.                                                                   
  6746.       結果   1
  6747.           A$ = "0"
  6748.           B$(1000)を、C$( 5)で割算したが、割り切れたので、A$は 0。
  6749.  
  6750.       使用例 2                                                           [6750]
  6751.           MOD(A$,"50","20")
  6752.  
  6753.       結果   2
  6754.           A$ = "10"
  6755.           B$(50)を、C$(20)で割算したが、割り切れずに、10余るのでA$は10。
  6756.  
  6757.     関連項目  ADD,SUB,MUL,DIV
  6758.                                                                         
  6759.  
  6760.  
  6761.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6762.     MUL        [関  数]           MULtiply
  6763.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6764.  
  6765.     MUL(変数1,変数2または文字列2,変数3または文字列3)
  6766.  
  6767.       用途  変数 2に、変数 3の内容を掛算して(乗算)、変数 1にその解答(整
  6768.             数)が代入されます。代入される内容は、数字の文字列形式です。
  6769.             変数 1 = (変数 2 or 文字列 2)×(変数 3 or 文字列 3)
  6770.  
  6771.       使用例 
  6772.           B$ = "1000"  C$ = "5"
  6773.           MUL(A$,B$,C$)                                                
  6774.                                                                        
  6775.       結果   
  6776.           A$ = "5000"
  6777.           A$ = B$(1000)× C$(5)
  6778.  
  6779.     関連項目  ADD,SUB,DIV,MOD
  6780.  
  6781.  
  6782.  
  6783.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6784.     NJUMP      [制御文]           No JUMP
  6785.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6786.  
  6787.     NJUMP(変数または文字列,ラベル)                                   
  6788.  
  6789.       用途  第 1パラメーター(変数または文字列)で、指定したコメントを表示
  6790.             し、No(N or [Space or Return これはUSERの選択] )を押すと、指
  6791.             定したラベルにジャンプします。
  6792.             それ以外は、何もしないでつぎのマクロ命令を実行します。ラベルが
  6793.             ない場合や、ESCキー を押したときは、マクロを中断します。
  6794.             なにも入力しない状態で、 120秒が経過すると、 Nキーを押した状態
  6795.             と同じになり、マクロは進行し、指定ラベルにジャンプします。
  6796.                                                                        
  6797.       使用例 1
  6798.           A$="No なら ログアウトします"
  6799.           NJUMP(A$,LOGOUT)      # No(N key)で LOGOUT にジャンプします。
  6800.                                 # LOGOUT は Label                        [6800]
  6801.  
  6802.       結果   1
  6803.          +-----------------------------------------------+            
  6804.          |       << No or Return → Jump Label >>        |
  6805.          |   No なら ログアウトします(例)          [Yes/No]  |
  6806.          |                               [ ESC -> ABORT] |
  6807.          +-----黄色枠------------------------------------+
  6808.                                                                          
  6809.       注意  120 秒以内に選択しない場合は、指定ラベルにジャンプします。
  6810.             ラベル指定がされていない場合は、マクロを中断します。
  6811.             ESC キーを押した時は、マクロを中断します。
  6812.                                                                        
  6813.     関連項目  YJUMP,JUMPE,JUMP<>,JUMP<,JUMPE<,JUMP>,JUMPE>,JUMPSRCHY,
  6814.               JUMPSRCHN,JUMPFILEY,JUMPFILEN
  6815.  
  6816.  
  6817.  
  6818.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6819.     OFF        [実行文]           log OFF
  6820.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6821.                                                                        
  6822.     OFF
  6823.                                                                        
  6824.       用途  現在接続中の回線を切断し、マクロ実行を停止します。
  6825.                                                                        
  6826.     関連項目  QUIT
  6827.  
  6828.  
  6829.  
  6830.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6831.     OCLOSE     [実行文]           wOrk file CLOSE
  6832.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6833.  
  6834.     OCLOSE
  6835.  
  6836.       用途  OOPEN した任意のファイルを、CLOSEします。
  6837.  
  6838.       使用例                                                           
  6839.           OCLOSE
  6840.  
  6841.  
  6842.     関連項目  WOPEN,WAPPEND,WRITE,FCLOSE,RCLOSE,TCLOSE,TOPEN,FOPEN,ROPEN
  6843.               OOPEN,OREAD
  6844.  
  6845.  
  6846.  
  6847.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6848.     OOPEN      [実行文]           wOrk file OPEN
  6849.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6850.                                                                          [6850]
  6851.     OOPEN(ファイル名)
  6852.     OOPEN(ファイル名,ラベル)
  6853.  
  6854.       用途  OREAD する為に、ファイルをオープンします。
  6855.             ラベルを指定した場合は、オープンエラー(ファイルが存在しない場
  6856.             合)のとき、指定したラベルにジャンプします。
  6857.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  6858.             中断します。                                                 
  6859.  
  6860.       仕様  ファイルは、テキストファイルに限ります。
  6861.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  6862.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  6863.             存在するものと見なします。
  6864.  
  6865.       使用例 1
  6866.           OOPEN("MACR.DAT")
  6867.                           
  6868.       解説   1
  6869.           MACRO DATA DIR[F・7]-(5)-5にあるファイル、"MACR.DAT"をオープン 
  6870.           します。ファイルオープンエラーの場合は、マクロを中断します。
  6871.  
  6872.       使用例 2
  6873.           OOPEN("A:\DATA\WT.DAT",ERROR) 
  6874.  
  6875.       解説   2
  6876.           A:\DATA\にあるファイル"WT.DAT"をオープンします。
  6877.           オープンエラーの場合は、指定ラベル ERROR  にジャンプします。
  6878.                                                                        
  6879.     関連項目  FCLOSE,FREAD,RCLOSE,RREAD,WOPEN,WAPPEND,OOPEN,OCLOSE,OREAD
  6880.  
  6881.  
  6882.  
  6883.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6884.     OPENCHK    [実行文]           OPEN file name CHecK
  6885.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6886.                                                                        
  6887.     OPENCHK(変数,文字列または変数名)
  6888.                                                                        
  6889.       用途  FOPEN /ROPEN /WOPEN で、OPENされているファイル名を取得します。
  6890.                                                                        
  6891.       使用例 1
  6892.           OPENFCHK(A$,"F")
  6893.  
  6894.       結果   1
  6895.           変数 A$ に、現在オープンされている、FOPEN のファイル名が格納され
  6896.           ます。
  6897.  
  6898.       使用例 2
  6899.           OPENFCHK(D$,"R")
  6900.                                                                          [6900]
  6901.       結果   2
  6902.           変数 D$ に、現在オープンされている、ROPEN のファイル名が格納され
  6903.           ます。
  6904.  
  6905.       使用例 3
  6906.           OPENFCHK(Q$,"W")
  6907.  
  6908.       結果   3                                                           
  6909.           変数 Q$ に、現在オープンされている、WOPEN のファイル名が格納され
  6910.           ます。
  6911.                                                                          
  6912.       使用例 4
  6913.           OPENFCHK(Q$,"O")
  6914.  
  6915.       結果   4
  6916.           変数 Q$ に、現在オープンされている、OOPEN のファイル名が格納され
  6917.           ます。
  6918.                   
  6919.     関連項目  FOPEM,FCLOSE.ROPEN,RCLOSE,WOPEM.WCLOSE
  6920.  
  6921.  
  6922.  
  6923.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6924.     OREAD      [実行文]           wOrk Opened file READ
  6925.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6926.  
  6927.     OREAD(変数名)
  6928.     OREAD(変数名,ラベル)
  6929.  
  6930.       用途  指定した変数に、 OOPENされているファイルから 1行読み込みます。
  6931.             ラベルを指定した場合、ファイルエンド(またはリードエラー)の場合、
  6932.             指定したラベルにジャンプします。ラベルを指定していない場合は、
  6933.             マクロを中断します
  6934.  
  6935.       仕様  ファイルは、テキストファイルに限ります。
  6936.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  6937.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  6938.             存在するものと見なします。
  6939.  
  6940.  
  6941.       使用例
  6942.           OREAD(B$)
  6943.  
  6944.       解説   1
  6945.           OOPEN されているファイルから、変数 B$ に、一行読み込みます。
  6946.           ファイルエンド(EOF)、またはエラーの場合はマクロを中断します。
  6947.  
  6948.  
  6949.       使用例 2                                                         
  6950.           OREAD(Z$,ERROR)                                                [6950]
  6951.                                                                        
  6952.       解説   2                                                           
  6953.           OOPEN 命令でオープンされているファイルから、変数 Z$ に一行読み込
  6954.           みます。
  6955.           ファイルエンド(EOF)、またはエラーの場合は、指定ラベル ERROR に 
  6956.           ジャンプします。
  6957.  
  6958.  
  6959.     関連項目  FOPEN,FCLOSE,ROPEN,RCLOSE,OOPEN,OCLOSE,OREAD
  6960.  
  6961.  
  6962.  
  6963.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6964.     PAUSE      [制御文]           PAUSE
  6965.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  6966.  
  6967.     PAUSE
  6968.     PAUSE(変数または文字列)
  6969.     PAUSE(変数1または文字列1,変数2または文字列2)
  6970.  
  6971.       用途  マクロ実行中に、実行等を一時停止します。なにか、任意のキーを押
  6972.             せば解除し継続実行します。変数2、または文字列2があればそれを表
  6973.             示します。なければ下記の文字列を表示します。
  6974.             第 3パラは色指定です。この色指定はその場に限って有効です。
  6975.  
  6976.       色指定        
  6977.              0  BLACK   黒        1  BLUE    青  
  6978.              2  RED     赤        3  YELLOW  黄  
  6979.              4  GREEN   緑        5  MAGENTA 紫  
  6980.              6  CYAN    水色      7  WHITE   白  
  6981.             10  BLACK   黒反転   11  BLUE    青反転
  6982.             12  RED     赤反転   13  YELLOW  黄反転
  6983.             14  GREEN 緑反転     15  MAGENTA 紫反転
  6984.             16  CYAN  水色反転   17  WHITE   白反転
  6985.  
  6986.       使用例 1
  6987.           PAUSE  
  6988.           
  6989.       結果   1
  6990.           画面に、[ MACRO PAUSE ナニカ キ- ヲ オシテクダサイ ] と表示し入力待ちになり
  6991.           ます。  
  6992.  
  6993.       使用例 2
  6994.           PAUSE( "[ ちょっとまってね ]")
  6995.  
  6996.       結果   2
  6997.           画面に、[ ちょっとまってね ]  と表示し入力待ちになります。  
  6998.  
  6999.       使用例 3
  7000.           PAUSE( "[ ちょっとまってね ]",1)                               [7000]
  7001.  
  7002.       結果   3
  7003.           画面に、[ ちょっとまってね ]  と黄色で表示し入力待ちになります。  
  7004.  
  7005.     関連項目  DELAY,DELAYM
  7006.  
  7007.                                                                          
  7008.                                                                          
  7009.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7010.     PICKWORD   [関  数]           PICK up WORD
  7011.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7012.                                                     
  7013.     PICKWORD(変数1,変数2,変数3または文字列3[区切り文字])
  7014.  
  7015.       用途  変数 2から、変数 3の最初の区切り文字までの文字列を切り出し、変
  7016.             数 1に格納します。
  7017.             変数 2は、切り出した文字列分が削除されます。
  7018.  
  7019.       仕様  A$  B$  C$とも変数でなければなりません。
  7020.  
  7021.       注意  区切り文字は、空白を含む半角文字のみで、全角文字は区切り文字に
  7022.             はなりません。
  7023.             変数 3は、区切り文字  ""であれば " "が代入されます。
  7024.             最終的に、区切り文字に該当するものがなければ、変数 2には空白が
  7025.             代入されます。
  7026.                                                                        
  7027.       使用例 1
  7028.           A$ = ""
  7029.           B$ = "GO FWTERM MES4 RT"                                     
  7030.           C$ = ""
  7031.           PICKWORD(A$,B$,C$)
  7032.                                                                        
  7033.       結果   1
  7034.           A$ = "GO"
  7035.           B$ = "FWTERM MES4 RT"
  7036.                                                                        
  7037.  
  7038.       使用例 2
  7039.           結果 1のB$をそのままで
  7040.           PICKWORD(D$,B$,C$)
  7041.  
  7042.       結果   2
  7043.           D$="FWTERM"
  7044.           B$="MES4 RT"
  7045.  
  7046.     関連項目  CAT,COPY,DEL,INS,LEFT,RIGHT
  7047.  
  7048.  
  7049.  
  7050.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[7050]
  7051.     POS        [関  数]           POSition of strings
  7052.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7053.                                                                        
  7054.     POS(変数1,変数2または文字列,検索文字)
  7055.                                                                         
  7056.       用途  変数 2の中で、検索文字に最初に一致した位置を変数 1に代入します。
  7057.                                                                          
  7058.       注意  但  同文字が 1個以上ある場合は、先頭から最初の該当場所が、バイ
  7059.             ト単位で何番目かの値として代入されます。漢字(全角文字)の場合
  7060.             は、全角文字 1文字を、 2バイトで計算します。
  7061.  
  7062.       使用例 1
  7063.           B$ = "123456W789"                                            
  7064.           POS(A$,B$,"W")  
  7065.                                                                        
  7066.       結果   1
  7067.           A$ = "7"  ( 7番目にあります。)
  7068.  
  7069.  
  7070.       使用例 2
  7071.           B$ = "こんにちはWTERMです" 
  7072.           POS(A$,B$,"W")
  7073.  
  7074.       結果   2
  7075.           A$ = "11" (11番目にあります。)
  7076.                                                                        
  7077.     関連項目  CAT,COPY,DEL,INS
  7078.  
  7079.  
  7080.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7081.     PRINT      [実行文]           PRINT variable or word
  7082.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7083.                                                                        
  7084.     PRINT(変数または文字列)
  7085.     PRINT(変数1または文字列1,変数2または文字列2)
  7086.  
  7087.       用途  指定された文字列(または変数)を、画面に表示し改行しません。
  7088.             相手側には、送信されません。
  7089.             第 2パラは色指定です。この色指定はその場のみ有効です。
  7090.             次のマクロ文から、ディフォルトカラーになります。
  7091.  
  7092.       色指定        
  7093.              0  BLACK   黒        1  BLUE    青  
  7094.              2  RED     赤        3  YELLOW  黄  
  7095.              4  GREEN   緑        5  MAGENTA 紫  
  7096.              6  CYAN    水色      7  WHITE   白  
  7097.             10  BLACK   黒反転   11  BLUE    青反転
  7098.             12  RED     赤反転   13  YELLOW  黄反転
  7099.             14  GREEN 緑反転     15  MAGENTA 紫反転                      
  7100.             16  CYAN  水色反転   17  WHITE   白反転                      [7100]
  7101.                                                                            
  7102.       使用例 1
  7103.           PRINT("ABCD") 
  7104.  
  7105.       結果   1                                                           
  7106.           文字列、ABCDを画面に表示します。                               
  7107.           改行しない為、次の表示文字はこの後に続きます。
  7108.  
  7109.       使用例 2
  7110.           B$ = "こんにちは"
  7111.           PRINT(B$) 
  7112.  
  7113.       結果   2
  7114.           変数B$の内容、この場合はこんにちはを、画面に表示します。
  7115.           改行しない為、次の表示文字はこの後に続きます。
  7116.  
  7117.     関連項目  PRINTCR,COLOR
  7118.  
  7119.  
  7120.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7121.     PRINTCR    [実行文]           PRINT variables or word and CR
  7122.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7123.  
  7124.     PRINTCR(変数または文字列)
  7125.     PRINTCR(変数1または文字列1,変数2または文字列2)
  7126.                                                                        
  7127.       用途  指定された文字列(または変数)を、画面に表示し改行します。
  7128.             相手側には、送信されません。
  7129.             第 2パラは色指定です。この色指定はその場のみ有効です。
  7130.             次のマクロ文から、ディフォルトカラーになります。
  7131.  
  7132.       色指定        
  7133.              0  BLACK   黒        1  BLUE    青  
  7134.              2  RED     赤        3  YELLOW  黄  
  7135.              4  GREEN   緑        5  MAGENTA 紫  
  7136.              6  CYAN    水色      7  WHITE   白  
  7137.             10  BLACK   黒反転   11  BLUE    青反転
  7138.             12  RED     赤反転   13  YELLOW  黄反転
  7139.             14  GREEN 緑反転     15  MAGENTA 紫反転
  7140.             16  CYAN  水色反転   17  WHITE   白反転
  7141.  
  7142.  
  7143.       使用例 1
  7144.           PRINTCR("ABCD") 
  7145.  
  7146.       結果   1
  7147.           文字列、ABCDを画面に表示し改行します。
  7148.                                                                          
  7149.       使用例 2                                                         
  7150.           B$ = "こんにちは"                                              [7150]
  7151.           PRINTCR(B$,3) 
  7152.  
  7153.       結果   2                                                        
  7154.           変数B$の内容、こんにちはを、画面に黄色で表示し改行します。
  7155.                                                                          
  7156.     関連項目  PRINT,COLOR
  7157.                                                                        
  7158.                                                                        
  7159.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7160.     PRINTER    [実行文]           PRINER on or off
  7161.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7162.  
  7163.     PRINTER(ON,OFF)
  7164.  
  7165.       用途  通信内容を、プリンターに同時出力します。要プリンター接続
  7166.  
  7167.       注意  プリントできる環境に、設定してください。
  7168.             またWTERM で、この関数は動作しない機種もあります。
  7169.  
  7170.       使用例
  7171.           PRINTER(ON)
  7172.           
  7173.       結果   
  7174.           プリントを、開始します。
  7175.  
  7176.       使用例 2
  7177.           PRINTER(OFF)
  7178.  
  7179.       結果   2
  7180.           プリントを、中断します。
  7181.  
  7182.  
  7183.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7184.     QUIT       [制御文]           QUIT wtrem
  7185.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7186.           
  7187.     QUIT
  7188.     QUIT(変数または文字列)
  7189.           
  7190.       用途  WTERM 自身を終了します。
  7191.           
  7192.       使用例
  7193.           QUIT
  7194.  
  7195.       結果
  7196.           回線はその時点で強制切断し、ログファイル等をクローズして、     
  7197.           マクロ実行を中断し、WTERM 自身を終了します。
  7198.                                                                        
  7199.       使用例
  7200.           QUIT(1)                                                        [7200]
  7201.  
  7202.       結果
  7203.           回線はその時点で強制切断し、ログファイル等をクローズして、
  7204.           マクロ実行を中断し、WTERM 自身をエラーレベル 1で終了します。
  7205.  
  7206.     関連項目  HANGUP,HANGUPT,OFF
  7207.  
  7208.  
  7209.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7210.     RCLOSE     [実行文]           Ropened file CLOSE
  7211.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7212.  
  7213.     RCLOSE
  7214.    
  7215.       用途  ROPENで、オープンした任意のファイルをCLOSEします。
  7216.  
  7217.       使用例
  7218.           RCLOSE
  7219.           
  7220.     関連項目  FOPEN,FREAD,ROPEN,RREAD
  7221.  
  7222.  
  7223.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7224.     RETURN     [制御文]           RETURN to called line
  7225.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7226.  
  7227.     RETURN
  7228.  
  7229.       用途  CALLされた次の行に制御を戻す。
  7230.  
  7231.       使用例
  7232.           SWITCH              # 以降のCASEのどれかを受信します迄待つ
  7233.             CASE("ください")  # "ください"を受信したら、SEND(" ")を実行
  7234.              SEND(" ")        # 半角スペースを送信します
  7235.              RETURN           # サブルーチンから、メインルーチンへ戻る 
  7236.             CASE("Help=> ? ") # Help=> ? という文字列を待つ
  7237.              SEND("/N")       # /N を送信します
  7238.              GOTO(LOOP)
  7239.           END
  7240.  
  7241.     関連項目  CALL,CASE,GOTO
  7242.  
  7243.                                                                        
  7244.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7245.     RIGHT      [関  数]           insert RIGHT                       
  7246.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7247.  
  7248.     RIGHT(変数1,右側よりカット指定(文字数または変数2))
  7249.     RIGHT(変数1,右側よりカット指定(文字数または変数2),変数3)
  7250.                                                                          [7250]
  7251.       用途  変数 1の右側より、変数 2、または文字列で指定した文字数分取り出
  7252.             して、変数 1に代入します。
  7253.             第 3パラメーターに、変数 3がある場合は、変数 3にカットする前の
  7254.             変数 1の内容を代入します。
  7255.             数値はバイト単位で、漢字の場合は 1文字 2バイトで計算します。
  7256.  
  7257.       使用例 1                                                           
  7258.           A$ = "123456789"
  7259.           RIGHT(A$,"5")  
  7260.  
  7261.       結果   1
  7262.           A$ = "56789"
  7263.                                                                       
  7264.       解説  変数A$の右側から 5文字分取りだし、変数A$に代入します。
  7265.  
  7266.       使用例 2
  7267.           A$ = "123456789"
  7268.           RIGHT(A$,"5",C$)  
  7269.  
  7270.       結果   3
  7271.           A$ = "12345"
  7272.           C$ = "123456789"                                               
  7273.  
  7274.       解説  変数A$の右側から 5文字分取りだし、変数A$に代入します。
  7275.             変数C$には、カット前A$の内容が代入されます。
  7276.  
  7277.     関連項目  APS,CAT,COPY,DEL,INS,LEFT
  7278.  
  7279.  
  7280.  
  7281.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7282.     ROPEN      [実行文]           Read File OPEN
  7283.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7284.  
  7285.     ROPEN(ファイル名)
  7286.     ROPEN(ファイル名,ラベル)
  7287.  
  7288.       用途  RREAD する為に、任意の名前のファイルをOPENします。
  7289.             ラベルを指定した場合は、オープンエラー(ファイルが存在しない場
  7290.             合)のとき、指定したラベルにジャンプします。
  7291.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  7292.             中断します。
  7293.  
  7294.       仕様  ファイルは、テキストファイルに限ります。
  7295.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  7296.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  7297.             存在するものと見なします。
  7298.  
  7299.       使用例 1
  7300.           ROPEN("MAC.DAT")                                               [7300]
  7301.                           
  7302.       解説   1
  7303.           MACRO DATA DIR[F・7]-(5)-5、にあるファイル"MAC.DAT" を、オープン
  7304.           します。ファイルオープンエラーの場合は、マクロを中断します。
  7305.  
  7306.       使用例 2
  7307.           ROPEN("A:\DATA\WT.DAT",ERROR)                                  
  7308.                                                                        
  7309.       解説   2
  7310.           A:\DATA\にあるファイル "WT.DAT"をオープンします。            
  7311.           オープンエラーの場合は、指定ラベル  ERROR にジャンプします。
  7312.  
  7313.     関連項目  FCLOSE,FREAD,RCLOSE,RREAD,WOPEN,WAPPEND
  7314.  
  7315.  
  7316.  
  7317.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7318.     RPOINT     [実行文]           Read file POINTer
  7319.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7320.  
  7321.     RPOINT(変数1)
  7322.     RPOINT(変数1,変数2または文字列)
  7323.  
  7324.       用途  RREADしているファイルの、現在読み込み済みの行数を求めます。
  7325.             第 2パラメーターに指定されている場合は、リードポインターを任意
  7326.             の行まで変更し、以降  RREAD からはその指定された行数から読み込
  7327.             みをするように変更します。
  7328.  
  7329.       仕様  RPOINT(変数1)                      の場合
  7330.             変数 1に、RREAD されているファイルの現在の読み込み済み行数を、
  7331.             変数 1に、格納します
  7332.  
  7333.       仕様  RPOINT(変数1,変数 2または文字列)    の場合
  7334.             変数 1の読み込み済み行数( RREAD ファイルのリードポイント)を、
  7335.             変数 2、または文字列で、指定された行数に変更し、変数 1に格納しま
  7336.             す。ただし、RREAD されているファイルの総行数を上回る場合は、最
  7337.             終行の数に変更されます(次回  RREAD 後)。
  7338.  
  7339.       使用例 1
  7340.           RPOINT(A$)  
  7341.  
  7342.       解説   1                                                         
  7343.           現在  ROPEN で、オープンされているファイルの、読み込み済み行数を
  7344.           表示します。
  7345.  
  7346.       使用例 2
  7347.           RPOINT(A$,"20")  
  7348.  
  7349.       解説   2
  7350.           現在  ROPEN で、オープンされているファイルの、読み込み済み行数 [7350]
  7351.           を(リードポイント)を、20行目から読み込むように、リードポインタ
  7352.           ーを変更します。以降  RREAD で読む込む場合は、その指定された行数
  7353.           (ここでは20行目)からになります。
  7354.  
  7355.       使用例 3
  7356.           B$ = "15"
  7357.           RPOINT(A$,"15")                                                
  7358.  
  7359.       解説   3
  7360.           現在  ROPEN で、オープンされているファイルの、読み込み済み行数を(
  7361.           リードポイント)を、15行目から読み込むようにリードポインターを変更
  7362.           します。以降  RREAD で読む込む場合は、その指定された行数(ここでは
  7363.           15行目)からになります。
  7364.  
  7365.     関連項目  FREAD,RREAD,FLINE,FILER
  7366.  
  7367.  
  7368.  
  7369.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7370.     RREAD      [実行文]           Ropened file READ
  7371.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7372.  
  7373.     RREAD(変数名)
  7374.     RREAD(変数名,ラベル)
  7375.  
  7376.       用途  指定した変数に、ROPEN されているファイルから 1行読み込みます。
  7377.             ラベルを指定した場合、ファイルエンド(またはリードエラー)のとき
  7378.             指定したラベルにジャンプします。ラベルを指定していない場合は、
  7379.             マクロを中断します
  7380.                                                                        
  7381.       使用例
  7382.           RREAD(B$)
  7383.  
  7384.       解説   1
  7385.           ROPEN されているファイルから、変数 B$ に、 1行読み込みます。
  7386.           ファイルエンド(EOF)、 またはエラーの場合は、マクロを中断します。
  7387.                                                                        
  7388.       使用例 2
  7389.           RREAD(Z$,ERROR)    
  7390.  
  7391.       解説   2                                                          
  7392.           ROPEN されているファイルから、変数 Z$ に、 1行読み込みます。
  7393.           ファイルエンド(EOF)、またはエラーの場合は、ラベル ERROR にジャン
  7394.           プします。
  7395.  
  7396.     関連項目  FOPEN,FCLOSE,ROPEN,RCLOSE
  7397.  
  7398.  
  7399.  
  7400.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[7400]
  7401.     SAVEWDAT   [関  数]           SAVE Wterm bbs/base DATa
  7402.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7403.  
  7404.     SAVEWDAT(変数1,変数2または文字列,変数3または文字列)
  7405.  
  7406.       用途  各ホスト登録データーを書き換えます。
  7407.                                                                          
  7408.       仕様  パラ 1(変数 1)は、文字列でSAVE内容
  7409.             パラ 2(変数 2)は、各ホストごとの任意の番号に該当(1-60番)
  7410.             パラ 3(変数 3)は、変更項目に該当
  7411.  
  7412.       注意  正常に書き込みできれば、変数 1に OK が返されます。
  7413.             エラーの場合は、変数 1に該当番号を示唆します。
  7414.              300番台の書き込みの場合は変数 2に、1-60までの数字を記入してく
  7415.             ださい。
  7416.  
  7417.       項目  変数 3、または文字列に指定する番号
  7418.  
  7419.             201     ホストの名前                    [ダイヤル F・5]-(M)-1
  7420.             202     ホストの電話番号                [ダイヤル F・5]-(M)-2
  7421.             207     ログの名前                      [ダイヤル F・5]-(M)-I
  7422.             213     AUTO PILOT文字列                [ダイヤル F・5]-(M)-R
  7423.             240     ID                              [ダイヤル F・5]-(M)-S
  7424.             241     PASSWORD                        [ダイヤル F・5]-(M)-T
  7425.  
  7426.             330     ログ格納ドライブ名              [設定 F・7]-(4)-1
  7427.             331     ダウンロードファイル格納PATH    [設定 F・7]-(4)-2
  7428.             332     アップロードファイル格納PATH    [設定 F・7]-(4)-3
  7429.             333     テキスとアップファイル格納PATH  [設定 F・7]-(4)-4
  7430.             334     MACROファイル  ファイル格納PATH [設定 F・7]-(4)-5
  7431.             335     料金ファイル等 ファイル格納PATH [設定 F・7]-(4)-7
  7432.             336     送出定義文字列 1                [設定 F・7]-(2)-8
  7433.             337     送出定義文字列 2                [設定 F・7]-(2)-9
  7434.             338     送出定義文字列 3                [設定 F・7]-(2)-A
  7435.             339     送出定義文字列 4                [設定 F・7]-(2)-B
  7436.             340     送出定義文字列 5                [設定 F・7]-(2)-C
  7437.             341     送出定義文字列 6                [設定 F・7]-(2)-D
  7438.  
  7439.       使用例 1
  7440.           SAVEWDAT(A$,"7")                                            
  7441.  
  7442.       結果   1
  7443.           A$ = "現在アクセス中のホストのログファイル名" 
  7444.  
  7445.       使用例 2
  7446.           SAVEWDAT(A$,"7","1")
  7447.  
  7448.       結果   2
  7449.           A$ = "ホスト番号 1の設定ログファイル名" 
  7450.                                                                          [7450]
  7451.       使用例 3
  7452.           SAVEWDAT(A$,"44")
  7453.  
  7454.       結果   3
  7455.           A$ = "USER指定の外部登録ファイル 1"        
  7456.  
  7457.       使用例 4                                                           
  7458.           SAVEWDAT(A$,"80","1")
  7459.  
  7460.       結果   4
  7461.           A$ = "USER指定の別途送出文字列定義の 1番の内容"        
  7462.  
  7463.       使用例 5
  7464.           SAVEWDAT(A$,"80","D")
  7465.  
  7466.       結果   5
  7467.           A$ = "USER指定の別途送出文字列定義の Dの内容"        
  7468.  
  7469.     関連項目  GETLOGD,GETTXUPD,GETUPD,GETDOWND,GETMACROD
  7470.  
  7471.  
  7472.  
  7473.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7474.     SAVEW5B    [関  数]           SAVE Wterm5B.dat
  7475.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7476.  
  7477.     SAVEW5B(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  7478.  
  7479.       用途  WTERM5B.DAT (別途送出文字列定義ファイル)の内容を書き換えます。
  7480.  
  7481.       仕様  パラ 1(変数 1)は、1-9 / A-Zまでの指定               
  7482.             パラ 2(変数 2)は、送出文字列内容(最大 40 bytes)
  7483.             パラ 3(変数 3)は、そのメモ  内容(最大 20 bytes)
  7484.  
  7485.       注意  正常に書き込みできれば、変数 1に OK が返されます。
  7486.             エラーの場合は、変数 1に該当番号を示唆します。
  7487.             なお、書き込む際は、以前の内容の上に上書きします。
  7488.                                                                          
  7489.       使用例
  7490.           SAVEW5B("A","GO FWTERM'","NIFTY WTERM FORUM")
  7491.  
  7492.       結果  
  7493.           WTERM5B.DAT (別途送出文字列定義ファイル)の項目 Aに、上記内容が
  7494.           記録されました。
  7495.  
  7496.     関連項目  GETLOGD、GETTXUPD、GETUPD、GETDOWND、GETMACROD、SAVEWDAT,
  7497.               SAVEW5D
  7498.  
  7499.  
  7500.                                                                          [7500]
  7501.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7502.     SAVEW5D    [関  数]           SAVE Wterm5D.dat
  7503.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7504.  
  7505.     SAVEW5D(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  7506.  
  7507.       用途  WTERM5D.DAT (別枠外部起動プログラム登録ファイル)の内容を書き
  7508.             換えます。                                                   
  7509.  
  7510.       仕様  パラ 1(変数 1)は、1-9/A-Zまでの指定               
  7511.             パラ 2(変数 2)は、外部起動プログラム内容(最大 40 bytes)
  7512.             パラ 3(変数 3)は、そのメモ          内容(最大 20 bytes)
  7513.  
  7514.       注意  正常に書き込みできれば、変数 1に OK が返されます。
  7515.             エラーの場合は、変数 1に該当番号を示唆します。
  7516.             なお、書き込む際は、以前の内容の上に上書きします。
  7517.  
  7518.       使用例 1
  7519.           SAVEW5D("A","NIFP'","NIFTY LOG TOOL")
  7520.  
  7521.       結果   1
  7522.           WTERM5D.DAT (別枠外部起動プログラム登録ファイル)の項目 Aに、上
  7523.           記内容が記録されました。
  7524.  
  7525.     関連項目  GETLOGD、GETTXUPD、GETUPD、GETDOWND、GETMACROD、SAVEWDAT,
  7526.               SAVEW5B
  7527.  
  7528.  
  7529.  
  7530.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7531.     SEND       [実行文]           SNED  strings
  7532.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7533.                                                                      
  7534.     SEND(文字列または変数)
  7535.     SEND(文字列,文字列2または変数2)
  7536.     SEND(文字列,文字列2または変数2,文字列3または変数3)
  7537.  
  7538.       用途  文字列をホストに送信します。変数名または""で囲んだ文字列を指定
  7539.             してください。
  7540.             特殊文字として、以下のものがあります。                  
  7541.             また、特殊文字は、CONVERT 命令(後述)で抑制する事が出来ます。
  7542.  
  7543.             \*   :  1 秒間停止します。
  7544.             \!   :  ブレーク信号を、0.5 秒送出します。
  7545.             \R   :  CR (0DH)を、送信します。
  7546.             \F   :  LF (0AH)を、送信します。
  7547.             \E   :  ESC(1BH)を、送信します。
  7548.             \I   :  ID文字列を、  送信します。
  7549.             \P   :  パスワード文字列を、送信します。
  7550.             \nnn :  nnn は、0-255 までの、10進数を指定します。           [7550]
  7551.                     nnn に対応する文字コードを送信(末尾資料参考)
  7552.  
  7553.       使用例 1
  7554.           SEND("ABC")  
  7555.                                                                        
  7556.       結果   1             
  7557.           文字列、ABC を送信し、改行コード(CR)は送信しません。
  7558.  
  7559.       使用例 2                                                           
  7560.           SEND("ABC\R")   
  7561.           
  7562.       結果   2             
  7563.           文字列、ABC を送信し、改行コード(CR)も送信します。
  7564.  
  7565.       使用例 3
  7566.           SEND("\!\*XY\R")
  7567.  
  7568.       結果   3
  7569.           ブレーク信号を送出し、 1秒待ったのち XY を送信して、改行コード(
  7570.           CR)を送信します。
  7571.  
  7572.       使用例 4
  7573.           SEND(A$)          
  7574.           
  7575.       結果   4
  7576.           変数A$の内容を、送信します。
  7577.  
  7578.       使用例 5
  7579.           SEND("\007")     
  7580.           
  7581.       結果   5
  7582.           BLコード(07H)を送信します。
  7583.  
  7584.       使用例 6
  7585.           SEND("AB","\*\*XY") 
  7586.                                                                        
  7587.       結果   6
  7588.           文字列、ABを送信します。改行コード(CR)は、送信しません。
  7589.            2秒待って、XYを送信します。改行コード(CR)は、送信しません。
  7590.  
  7591.     関連項目  CASE,WAIT,COVERT
  7592.  
  7593.  
  7594.  
  7595.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7596.     SETTIME    [実行文]           SET TIME
  7597.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7598.  
  7599.     SETTIME                                                           
  7600.                                                                          [7600]
  7601.       用途  LAPTIME にて使用する内部タイマーに、現在時間を設定します。
  7602.  
  7603.       使用例
  7604.           SETTIME
  7605.  
  7606.       結果
  7607.           現在の時刻が、内部変数(LAPTIME )に代入されます。
  7608.  
  7609.     関連項目  TIME,LOGTIME,LAPTIME
  7610.                                                                          
  7611.  
  7612.  
  7613.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7614.     SMENU      [実行文]           Selection MENU
  7615.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7616.                                                                        
  7617.     SMENU(変数1,変数2,変数3)
  7618.  
  7619.       用途  ↑↓キーで、変数 1、変数 2、変数 3の中から選択します。
  7620.             入力ボックスから選んだ任意の番号を、変数 1に、格納します。
  7621.             ESC キーで選択を回避、もしくは拒否した場合は、変数 1に、0 が格
  7622.             納されます。変数 3の内容が、空白であれば選択枝は、 2になります。
  7623.  
  7624.       仕様  入力ウインドウ位置および色は固定です。
  7625.  
  7626.       □拡張モード
  7627.                                                                        
  7628.             基本的には、選択は 3つまでしかできませんが、拡張モードもありま
  7629.             す。書き方は、変数 1の文章の中を、"+" で連結してください。その
  7630.             場合では  "+" 以降が、選択 4になります。同様に、変数 2の場合は
  7631.             "+" 以降が、選択 5になり、同様に変数 3の場合は、選択 6になりま
  7632.             す。"+" は小文字です。また文中に、"+" が、不用意にあれば誤作動
  7633.             をします。
  7634.  
  7635.       使用例 1
  7636.           A$ = "FWTERMへ行きます"
  7637.           B$ = "未読メールを読みに行きます"
  7638.           C$ = "アクセスを終了します"
  7639.           SMENU(A$,B$,C$)
  7640.  
  7641.       結果   1
  7642.            +---------------------------------------------------------+
  7643.            |               MACRO 選択画面 [ 1 - 3 ]                  |
  7644.            |  1. FWTERMへ行きます                                    |
  7645.            |  2. 未読メールを読みに行きます                          |
  7646.            |  3. アクセスを終了します                                |
  7647.            |                                       ESC -> 入力中断   |
  7648.            +---------------------------------------------------------+ 
  7649.                                                                        
  7650.           ここで↑↓キーないしは数字で 3を選択したとします。             [7650]
  7651.           すると A$には "3" が  格納されます。
  7652.           ESCで選ばなかった場合は A$には "0" が 格納されます。
  7653.  
  7654.       使用例 2(拡張モード)
  7655.  
  7656.           A$ = "FWTERMへ行きます+FGALAVに未読を読みに行きます"
  7657.           B$ = "未読メールを読みに行きます+メールを出しにいきます"
  7658.           C$ = "アクセスを終了します+TOP メニューに戻ります"
  7659.           SMENU(A$,B$,C$)
  7660.                                                                          
  7661.       結果   2(拡張モード)
  7662.           +---------------------------------------------------------+
  7663.           |               MACRO 選択画面 [ 1 - 6 ]                  |
  7664.           |  1. FWTERMへ行きます                                    |
  7665.           |  2. 未読メールを読みに行きます                          |
  7666.           |  3. アクセスを終了します                                |
  7667.           |  4. FGALAVに未読を読みに行きます                        |
  7668.           |  5. メールを出しにいきます                              |
  7669.           |  6. TOP メニューに戻ります                              |
  7670.           |                                       ESC -> 入力中断   |
  7671.           +---------------------------------------------------------+
  7672.  
  7673.       使用例 3(拡張モード)
  7674.  
  7675.           上との比較  C$には "+" がない場合                     
  7676.           A$ = "FWTERMへ行きます+FGALAVに未読を読みに行きます"
  7677.           B$ = "未読メールを読みに行きます+メールを出しにいきます"
  7678.           C$ = "アクセスを終了します"
  7679.           SMENU(A$,B$,C$)        
  7680.  
  7681.       結果   3(拡張モード)
  7682.           +----------------------------------------------------------+
  7683.           |               MACRO 選択画面 [ 1 - 5 ]                   |
  7684.           |  1. FWTERMへ行きます                                     |
  7685.           |  2. 未読メールを読みに行きます                           |
  7686.           |  3. アクセスを終了します                                 |
  7687.           |  4. FGALAVに未読を読みに行きます                         |
  7688.           |  5. メールを出しにいきます                               |
  7689.           |                                       ESC -> 入力中断    |
  7690.           +----------------------------------------------------------+
  7691.  
  7692.       駄目な例 
  7693.           選択 2の、 B$の内容が空白の場合
  7694.           A$="FWTERMへ行きます+FGALAVに未読を読みに行きます"
  7695.           B$=""
  7696.           C$ = "アクセスを終了します"
  7697.  
  7698.           選択 2は、 1つしかないのに、C$のには"+"以降がある場合          
  7699.           A$ = "FWTERMへ行きます+FGALAVに未読を読みに行きます"
  7700.           B$ = "未読メールを読みに行きます"                              [7700]
  7701.           C$ = "アクセスを終了します+TOP メニューに戻ります"
  7702.  
  7703.     関連項目  TIMEOUT,SWITCH,VSWITCH,END
  7704.  
  7705.  
  7706.                                                                        
  7707.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7708.     STIMEOUT   [制御文]           Switch TIME OUT
  7709.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7710.                                                                          
  7711.     STIMEOUT(文字列または変数,ラベル)
  7712.  
  7713.       用途  SWITCH ~ END 文の、TIMEOUT を設定します。
  7714.             ラベルが指定していない場合は、TIMEOUT になると、対応する END文
  7715.             の次から実行します。
  7716.             ジャンプラベルが指定されている場合、タイムアウトが発生すると、
  7717.             そのラベルにジャンプします。その場合、ジャンプラベルは、同一マ
  7718.             クロ内のみ有効です。
  7719.             タイムアウト単位 1秒から、9999秒まで、 0秒は、TIMEOUT  文で設定
  7720.             されている秒数を使用します(デフォルト)。
  7721.             TIMEOUT  文も指定されていない場合は、TIMEOUT しません。
  7722.             TIMEOUT 数値は、グローバルです。
  7723.                                                                        
  7724.       使用例 1
  7725.           STIMEOUT(10)
  7726.             SWITCH
  7727.               WAIT("LOGIN:")
  7728.  
  7729.       解説
  7730.           LOGIN: を待つ。
  7731.           10秒過ぎても受信しない場合は、SWITCH文の次から実行します。    
  7732.  
  7733.       使用例 2 
  7734.           STIMEOUT(10,TERR)  
  7735.               SWITCH
  7736.                   WAIT("LOGIN:")
  7737.  
  7738.       結果   2
  7739.           LOGIN: を待つ。
  7740.           10秒過ぎても受信しない場合は、ラベルTERRから実行します。
  7741.  
  7742.     関連項目  TIMEOUT,SWITCH,VSWITCH,END
  7743.  
  7744.  
  7745.  
  7746.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7747.     STRCAT     [関  数]           Strings CAT  [7050]
  7748.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7749.  
  7750.     STRCAT(変数,変数または文字列)                                        [7750]
  7751.     STRCAT(変数1,変数2または文字列2,変数3または文字列3)
  7752.  
  7753.       用途  変数の文字列に追加連結をします。
  7754.  
  7755.       使用例  
  7756.           A$="ABC"
  7757.           STRCAT(A$,"12345")
  7758.  
  7759.       結果
  7760.           A$="ABC12345"                                                  
  7761.                                                                            
  7762.       使用例  
  7763.           A$="ABC"
  7764.           B$="12345"
  7765.           C$="789"
  7766.           STRCAT(A$,B$,C$)
  7767.  
  7768.       結果
  7769.           A$="ABC12345789"
  7770.  
  7771.     関連項目  CAT,COPY,DEL,INS,LEFT,RIGHT
  7772.                                                                        
  7773.  
  7774.  
  7775.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7776.     SUB        [関  数]           SUBtract
  7777.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7778.  
  7779.     SUB(変数1,変数2または文字列2,変数3または文字列3)
  7780.  
  7781.       用途  変数 2から、変数 3の内容を引き(引算)、変数 1にその解答(整
  7782.             数)が代入されます。代入される内容は、数字の文字列形式です。
  7783.             変数 1 = (変数 2 or 文字列 2)-(変数 3 or 文字列 3)
  7784.  
  7785.       使用例 1
  7786.           B$ = "1000" 
  7787.           C$ = "5"
  7788.           SUB(A$,B$,C$)
  7789.  
  7790.       結果   1
  7791.           A$=B$-C$  A$は 
  7792.           A$ = "955" 
  7793.  
  7794.     関連項目  ADD,MUL,DIV,MOD
  7795.                                                                        
  7796.  
  7797.                                                                       
  7798.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7799.     SWITCH     [制御文]           SWITCH
  7800.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[7800]
  7801.     CASE       [制御文]           CASE
  7802.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7803.     END        [制御文]           END
  7804.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7805.  
  7806.     SWITCH
  7807.     SWITCH(文字列または変数)
  7808.     SWITCH(文字列または変数,ラベル)
  7809.       CASE(文字列またはコントロールコード)
  7810.       END                                                                
  7811.  
  7812.       用途  CASEで指定された文字列(または変数)のどれかを受信するまで待ち、
  7813.             対応CASEフェーズの次から実行します。CASEフェーズが終了したら、
  7814.             SWITCHに対応する、END に制御を移します。              
  7815.             なお、STIMEOUT命令/TIMEOUT 命令で、待ち時間を設定できます。 
  7816.  
  7817.       用途   2
  7818.             第 2パラメーターで、SWITCH ~ END 文の TIMEOUTを変数、もしくは
  7819.             文字列で設定します。ラベルがない場合は、TIMEOUT になると対応す
  7820.             る END文の次から実行します。JUMPラベルが指定されている場合、タ
  7821.             イムアウトが発生すると、そのラベルにジャンプします。
  7822.             ただし、ジャンプラベルは同一マクロ内のみ有効です。
  7823.             単位 1秒から、9999秒まで、 0秒は、TIMEOUT 文で設定されている秒
  7824.             数を使用します(デフォルト)。TIMEOUT 文も指定されていない場合
  7825.             は、TIMEOUT しません(デフォルト)。
  7826.                                                                        
  7827.       注意  SWITCH文の中に、CALLをいれないでください。また、CASE文の次に動
  7828.             作命令を関係付けなかった場合、致命的エラーが発生します。
  7829.  
  7830.       使用例 1
  7831.           SWITCH              # SWITCHは以降のCASEのどれかを受信する迄待つ
  7832.             CASE("終了")      # 終了を受信したら、SEND(" ") を、実行します。
  7833.               SEND("END")     # END という文字を送信します。
  7834.             CASE("読みますか")# ""内の文字列を待ちます
  7835.               SEND("YES")     # YES という文字を送信します。
  7836.           END                                                          
  7837.  
  7838.       解説   1
  7839.           「終了」という文字列を受信したら、文字列 END を、実行します。
  7840.           「読みますか」という文字列を受信したら、文字列 YES を送信します。
  7841.           それか、 1つでも、CASE文が該当すれば  次行の命令を実行します。
  7842.           そして SWITCH に対応した ENDへ行きます。
  7843.  
  7844.       使用例 2
  7845.           SWITCH(10)     
  7846.              -------  略 (使用例 1と同じ)
  7847.  
  7848.       解説   2                                                          
  7849.           上記の例 1と、10秒過ぎても受信しない場合は、SWITCH文の次から実行
  7850.                                                                          [7850]
  7851.       使用例 3 
  7852.           SWITCH(10,TERR)  
  7853.              -------  略 (使用例 1と同じ)
  7854.  
  7855.       結果   3
  7856.           上記の例 1と、10秒過ぎても受信しない場合は、ラベルTREEにジャンプ
  7857.  
  7858.     関連項目  SEND,WAIT,STIMEOUT,VSWITCH
  7859.  
  7860.  
  7861.                                                                          
  7862.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7863.     TABSPACE   [実行文]           TAB to SPACE change Strings
  7864.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7865.  
  7866.     TABSPACE(変数1)
  7867.  
  7868.       用途  変数 1の、TAB コードをすべて半角スペースに変換し、変数 1に代
  7869.             入します。正常に置換されるのは正規表現のみです。1TAB(8byte)
  7870.  
  7871.  
  7872.  
  7873.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7874.     TAPPEND    [実行文]           Temp log file APPEND open
  7875.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7876.  
  7877.     TAPPEND(ファイル名)
  7878.     TAPPEND(ファイル名,ラベル)
  7879.  
  7880.       用途  ログと同じ内容の一時ファイルを、任意のファイル名で作成します。
  7881.             ファイルは、テキストファイルで、同名のファイルがあれば、そのフ
  7882.             ァイルに追加していきます。
  7883.             存在しない場合は、新規にファイルを作成します。
  7884.             ジャンプラベルを指定した場合は、オープンエラー(ファイルが存在
  7885.             しない場合)のとき、指定したラベルにジャンプします。
  7886.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  7887.             中断します。
  7888.                                                                       
  7889.       仕様  ファイルは、テキストファイルに限ります。
  7890.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  7891.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  7892.             存在するものと見なします。
  7893.  
  7894.       注意  TOPENで、他のファイルをオープン中はオープンはできません。
  7895.  
  7896.       使用例
  7897.           TAPPEND("TEMP.LOG")
  7898.           
  7899.       結果  
  7900.           MACRODIRにある TEMP.LOGに、Append(追加書き)します。          [7900]
  7901.           ファイルがオープンできない場合は、その名前のファイルを新規制作し
  7902.           てオープンします。
  7903.  
  7904.     関連項目  WOPEN,WAPPEND,WRITE,FCLOSE,RCLOSE,TCLOSE,TOPEN,FOPEN,ROPEN,
  7905.               TCLOSE
  7906.  
  7907.  
  7908.  
  7909.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7910.     TCLOSE     [関  数]           Temp log file CLOSE
  7911.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7912.  
  7913.     TCLOSE                                                               
  7914.                           
  7915.       用途  TOPEN、TAPPENDで、作成したファイルをCLOSEします。
  7916.  
  7917.     関連項目  WOPEN,WAPPEND,WRITE,FCLOSE,RCLOSE,TCLOSE,TOPEN,FOPEN,ROPEN.
  7918.               TAPPEND
  7919.  
  7920.  
  7921.  
  7922.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7923.     TELFEE     [関  数]           TELphone FEE
  7924.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7925.  
  7926.     TELFEE(変数1,変数2)
  7927.                           
  7928.       用途  変数 1に、現在の電話料金を、変数 2にあと何秒で次の料金加算にな
  7929.             るかの秒数を代入します。
  7930.                                                                        
  7931.       制限  通信中しか使用できません。また各ホストごとの設定で、秒数を設定
  7932.             する必要があります。
  7933.  
  7934.       使用例
  7935.             TELFEE(A$,B$) 
  7936.              3分10円の市内料金と仮定します。
  7937.             今現在、アクセスしはじめてから、 290秒( 4分50秒)が経過してい
  7938.             ると仮定します。
  7939.  
  7940.       結果  
  7941.             上記条件例とした場合に以下の値が代入されます。
  7942.             A$に、20      (20円)                                   
  7943.             B$に、70      (70秒)               
  7944.             その値から考えると、今時点で回線切断しても、70秒後に切断しても
  7945.             同じ電話料金体系です。
  7946.             その残り70秒以内に、まだなにかできるかもしれません。それを判定
  7947.             するための関数です。
  7948.  
  7949.  
  7950.                                                                          [7950]
  7951.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7952.     TIME       [関  数]           system TIME
  7953.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7954.  
  7955.     TIME(変数,区分挿入文字列[任意])
  7956.                                                                        
  7957.       用途  変数に、現在時刻を代入します。
  7958.  
  7959.       解説  区分挿入文字列(任意)は  "/"、":"、"."以外でもOKです。
  7960.  
  7961.       仮に現在時刻を、午後10時15分10秒とすると。
  7962.  
  7963.       使用例 1
  7964.           TIME(A$,"/")
  7965.                                                                          
  7966.       結果   1                                                           
  7967.           A$ = "22/15/10"                                                
  7968.                                                                        
  7969.       使用例 2
  7970.           TIME(A$) 
  7971.  
  7972.       結果   2
  7973.           A$ = "221510"
  7974.  
  7975.     関連項目  DATE,LASTTIME,LASTSTIME,LAPTIME,SETTIME,LOGTIME,WEEK   
  7976.  
  7977.  
  7978.  
  7979.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7980.     TIMED      [実行文]           TIME Display
  7981.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7982.  
  7983.     TIMED(ON,OFF)        
  7984.  
  7985.       用途  ファンクションキーF5/F6の、接続時間経過表示、及び電話料金表示
  7986.             を、表示したり、やめたりします。 
  7987.  
  7988.       仕様  ON で表示、OFF で表示しない。
  7989.  
  7990.       使用例
  7991.           TIMED("ON")                                                  
  7992.  
  7993.       結果  
  7994.           F5の接続時間経過表示及び、F6の電話料金表示をします。 
  7995.  
  7996.  
  7997.  
  7998.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  7999.     TIMEOUT    [制御文]           TIME OUT
  8000.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[8000]
  8001.  
  8002.     TIMEOUT(文字列または変数,ラベル)
  8003.  
  8004.       用途  CASE文、WAIT文で使用するタイムアウト数値(TIMEOUT)を設定します。
  8005.             ジャンプラベルがない場合は、TIMEOUT になると、対応する  END文 
  8006.             WAIT文の次から実行します。
  8007.             ジャンプラベルが指定されている場合、タイムアウトが発生すると、
  8008.             そのラベルにジャンプします。
  8009.             ただし、ジャンプラベルは、同一マクロ内のみ有効です。
  8010.             タイムアウト数値は、単位秒で、1秒から9999秒まで、0秒はTIMEOUT 
  8011.             文で設定されている秒数を使用します。
  8012.             TIMEOUT 文も指定されていない場合は TIMEOUTしません。
  8013.             TIMEOUT 数値は、グローバルです。
  8014.  
  8015.       使用例 1                                                         
  8016.           TIMEOUT(10)                                                    
  8017.           WAIT("LOGIN:") 
  8018.  
  8019.       解説   1
  8020.           LOGIN:を待つ。10秒過ぎてもなにも受信しない場合は、次の行から実行
  8021.           します。
  8022.  
  8023.       使用例 2 
  8024.           TIMEOUT(10,TERR)  
  8025.           WAIT("LOGIN:")
  8026.  
  8027.       解説   2
  8028.           LOGIN:を待つ。10秒過ぎても受信しない場合は、指定ジャンプラベル
  8029.           TERRから実行します。
  8030.                                                                        
  8031.     関連項目  STIMEOUT
  8032.  
  8033.  
  8034.  
  8035.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8036.     TOPEN      [実行文]           Temp log file OPEN
  8037.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8038.  
  8039.     TOPEN(ファイル名)
  8040.     TOPEN(ファイル名,ラベル)
  8041.  
  8042.       用途  ログと同じ内容の一時ファイルを、任意のファイル名で作成します。
  8043.             ファイルは、テキストファイルで、同名のファイルがあれば、そのフ
  8044.             ァイル削除したのち、新規作成します。
  8045.             ジャンプラベルを指定した場合は、オープンエラー(ファイルが存在
  8046.             しない場合)のとき、指定したラベルにジャンプします。
  8047.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  8048.             中断します。
  8049.  
  8050.       仕様  ファイルは、テキストファイルに限ります。                     [8050]
  8051.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  8052.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  8053.             存在するものと見なします。
  8054.  
  8055.       注意  GETC、GETSなどのマクロ構文の中での内容は、記録されません。
  8056.  
  8057.     関連項目  WOPEN,WCLOSE,WRITE,FOPEN,ROPEN,TOPEN,TCLOSE
  8058.  
  8059.  
  8060.  
  8061.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8062.     UPCASE     [関  数]           UPper CASE string
  8063.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8064.  
  8065.     UPCASE(変数1,変数2)
  8066.                                                                          
  8067.       用途  変数 2の中の半角小文字を、半角大文字に変換して変数 1に代入しま
  8068.             す。
  8069.             半角英数字以外には、変化はありません。                       
  8070.                                                                        
  8071.       使用例 
  8072.           B$ = "abcdef"
  8073.           UPCASE(A$,B$)
  8074.  
  8075.       結果   
  8076.           A$ = "ABCDEF"
  8077.  
  8078.     関連項目  CAT,COPY,DEL,INS,LOWCASE               
  8079.  
  8080.  
  8081.  
  8082.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8083.     UPLOAD     [実行文]           UPLOAD file
  8084.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8085.                                                                        
  8086.     UPLOAD(番号,ファイル名)
  8087.     UPLOAD(番号,ファイル名,ラベル)
  8088.  
  8089.       用途  ファイルの送信を行います。番号は送信方法を指定します。
  8090.             送信ファイルが存在しない場合、ジャンプラベルが指定されていれば、
  8091.             そのラベルにジャンプします。ただし、ジャンプラベルは、同一マク
  8092.             ロ内のみ有効です。
  8093.             ジャンプラベルが指定していない場合は、マクロを中断します。
  8094.  
  8095.       番号  送信プロトコルの種類
  8096.              1  XMODEM-128(SUM)
  8097.              2  XMODEM-128(CRC)
  8098.              3  XMODEM-1024(CRC)
  8099.              4  Flying/XMODEM-128(SUM)
  8100.              5  Flying/XMODEM-128(CRC)                                 [8100]
  8101.              6  Flying/XMODEM-1024(CRC)
  8102.              7  YMODEM                                     
  8103.              8  YMODEM-G
  8104.              9  未使用    
  8105.             10  MLINK           (MLP/F/I/J.EXE  使用  注 1)
  8106.             11  ZMODEM          (ZM/ZMIBM.EXE     使用      )
  8107.             12  Quick-VAN       (QV.EXE            使用      )
  8108.             13  BPLUS           (BP/BPL.EXE       使用  注 2)
  8109.             14  TRANSIT         (MLP/F/I/J/.EXE使用  注 1)
  8110.             21  ZMODEM          (ZM/ZMIBM.EX      使用      )
  8111.             23  Bplus           (BP/BPL.EXE       使用      )
  8112.            107  ZMODEM          (ZM/ZMIBM.EXE     使用  YMODEM  送信)
  8113.            108  ZMODEM          (ZM/ZMIBM.EXE     使用  YMODEM  送信)
  8114.            123  BPLUS           (BP/BPL.EXE       使用  7bitで使用の場合)
  8115.  
  8116.       注 1  WTERM SUPER 版は、内蔵プロトコルを使用します。               
  8117.       注 2  BPUSE 内蔵版は除く
  8118.  
  8119.       ファイル名は送信するファイル名です。ファイル名にディレクトリーが指
  8120.       定されていないときは、アップロードディレクトリーにあるものとします。
  8121.                                                                        
  8122.       BPLUS/ZMODEM内蔵版の場合
  8123.         既存のマクロで、11番/13番を指定してある場合、内蔵のプロトコルが
  8124.         起動しますので、マクロは変更しなくても結構です。         
  8125.         マクロ実行中で、なおかつZMODEM/BPLUS 自動受信をしないという設定
  8126.         の場合には、それぞれ送信は、ZM/ZMIBM BP/BPL.EXE使用します。
  8127.         マクロ文のDOWNLOAD、UPLOADとも番号を10番分ずらしてください。
  8128.  
  8129.       使用例
  8130.           UPLOAD(1,"WTERM.LZH")  
  8131.                                                                      
  8132.       解説
  8133.           アップロードディレクトリーにあるWTERM.LZHを、XMODEM(SUM)で送信し
  8134.           ます。
  8135.  
  8136.     関連項目  UPTEXT,DOWNLOAD,AUTOUD
  8137.  
  8138.  
  8139.  
  8140.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8141.     UPTEXT     [実行文]           UPload TEXTfile
  8142.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8143.  
  8144.     UPTEXT(番号,ファイル名)
  8145.     UPTEXT(番号,ファイル名,ラベル)
  8146.                                                                        
  8147.  
  8148.       用途  テキストファイルの送信を行います。
  8149.             番号は、送信方法(低速、高速、超高速送信)を指定します。
  8150.             番号が、1.2.3の場合で、送信ファイルが存在しない場合、ジャンプ[8150]
  8151.             ラベルが指定されていれば、そのラベルにジャンプします。ただしジャ
  8152.             ンプラベルは、同一マクロ内のみ有効です。ジャンプラベルが指定して
  8153.             いない場合はマクロを中断します。
  8154.             番号が、4.5.6の場合に、送信ファイルを任意で指定します。その場合
  8155.             に限りファイル名は必ず変数で空白にします。ファイル名を指定しても
  8156.             無視され、送信ファイル選択ボックスが開きます。ファイルが存在しな
  8157.             い場合や、ESCキーでABORTした場合には、ファイル名(変数)に、
  8158.             'ESC_TEXIUP'という文字が格納されます。なおその状態でもマクロは続
  8159.             行します。
  8160.  
  8161.       番号  テキスト送信の種類
  8162.              1      低速テキスト  送信(ファイル名は必ず指定)
  8163.              2      高速テキスト  送信(ファイル名は必ず指定)
  8164.              3      超高速テキスト送信(ファイル名は必ず指定)
  8165.              4      低速テキスト  送信(ファイル名は選択指定)
  8166.              5      高速テキスト  送信(ファイル名は選択指定)
  8167.              6      超高速テキスト送信(ファイル名は選択指定)             
  8168.  
  8169.  
  8170.       使用例
  8171.           UPTEXT(1,"A:\DOC\READ.ME") 
  8172.  
  8173.       解説
  8174.           A:\DOC\にあるREAD.MEを、低速テキスト送信にて送信します。
  8175.  
  8176.       使用例
  8177.           UPTEXT(5,A$) 
  8178.  
  8179.       解説
  8180.           任意のファイルを選ぶように高速テキスト送信選択画面にいきます。
  8181.           ファイルが存在しない場合や、ESCキーでABORTした場合には、
  8182.           A$ に'ESC_TEXIUP'という文字が格納されます。よって判定文は以下
  8183.           のように続ければよいかと思います。
  8184.           JUMPE(A$,"ESC_TEXIUP",ラベル名)
  8185.  
  8186.     関連項目  UPLOAD,DOWNLOAD
  8187.  
  8188.  
  8189.  
  8190.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8191.     VCLEAR     [実行文]           Variables CLEAR
  8192.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8193.  
  8194.     VCLEAR                                                            
  8195.     VCLEAR(文字列[変数名]) 
  8196.     VCLEAR(文字列1[変数名1],文字列2[変数名2]) 
  8197.  
  8198.       用途  パラメーター指定がない場合は、変数の内容(A$~Z$)をすべて初期化
  8199.             します。
  8200.             第 1パラメーターのみある場合はその指定変数の内容を初期化しま [8200]
  8201.             す。その場合、 1個だけならその変数を初期化します。複数の指定な
  8202.             ら、その指定すべてを初期化します。 
  8203.             第 1/第 2パラメーターがある場合は、その第 1パラメーターで指定
  8204.             された変数から、第 2パラメーターで指定された変数までの間すべて
  8205.             を初期化します。
  8206.  
  8207.       制限  パラメーターは、半角で  A - Z と書いてください。
  8208.             無効な文字列がある場合には、なにもしないか、複数指定の場合は、
  8209.             有効指定まで初期化をおこないます。
  8210.  
  8211.       使用例 1                                                         
  8212.           VCLEAR
  8213.  
  8214.       結果   1
  8215.           変数A$から、変数Z$の内容を、初期化します。
  8216.                                                                        
  8217.       使用例 2                                                         
  8218.           VCLEAR("D")
  8219.  
  8220.       結果   2
  8221.           変数D$の内容を、初期化します。
  8222.  
  8223.       使用例 3                                                        
  8224.           VCLEAR("ACZ")
  8225.  
  8226.       結果   3
  8227.           変数A$、変数C$、変数Z$の内容を、初期化します。
  8228.  
  8229.       使用例 4
  8230.           VCLEAR("C","V")
  8231.  
  8232.       結果   4
  8233.           変数C$から、変数H$までを、初期化します。この場合に初期化されるの
  8234.           は、C$ D$ E$ F$ G$ H$ です。
  8235.           VCLEAR("H","C") という逆の指定方法でも有効です。
  8236.  
  8237.     関連項目  VLIST,VSWAP,VTACHG,VCLEAR2,VTCLEAR,VTCOPY,VTOCHG,VTLIST    
  8238.  
  8239.  
  8240.  
  8241.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8242.     VCLEAR2    [実行文]           Variables CLEAR part2
  8243.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8244.                                                                        
  8245.     VCLEAR2                                                            
  8246.     VCLEAR2(文字列[変数名]) 
  8247.     VCLEAR2(文字列1[変数名1],文字列2[変数名2]) 
  8248.  
  8249.       用途  パラメーター指定がない場合は、変数の内容(A%~Z%)をすべて初期化
  8250.             します。                                                     [8250]
  8251.             第 1パラメーターのみある場合は、その指定変数の内容を初期化しま
  8252.             す。その場合、 1個だけならその変数を初期化します。複数の指定な
  8253.             ら、その指定すべてを初期化します。 
  8254.             第 1/第 2パラメーターがある場合は、その第 1パラメーターで指定
  8255.             された変数から、第 2パラメーターで指定された変数までの間すべて
  8256.             を初期化します。
  8257.  
  8258.       制限  パラメーターは、半角で  A - Z と書いてください。
  8259.             無効な文字列がある場合には、なにもしないか、複数指定の場合は、
  8260.             有効指定まで初期化をおこないます。
  8261.  
  8262.       使用例 1                                                         
  8263.           VCLEAR2
  8264.  
  8265.       結果   1
  8266.           変数A%から、変数Z%の内容を、初期化します。
  8267.                                                                        
  8268.       使用例 2                                                         
  8269.           VCLEAR2("D")
  8270.  
  8271.       結果   2
  8272.           変数D%の内容を、初期化します。
  8273.  
  8274.       使用例 3                                                        
  8275.           VCLEAR2("ACZ")
  8276.  
  8277.       結果   3
  8278.           変数A%、変数C%、変数Z%の内容を、初期化します。
  8279.  
  8280.       使用例 4
  8281.           VCLEAR2("C","V")
  8282.  
  8283.       結果   4
  8284.           変数C%から、変数H%までを、初期化します。この場合に初期化されるの
  8285.           は、C% D% E% F% G% H% です。
  8286.           VCLEAR2("H","C") という逆の指定方法でも有効です。
  8287.                                                                          
  8288.     関連項目  VLIST,VSWAP,VTACHG,VCLEAR,VTCLEAR,VTCOPY,VTOCHG,VTLIST     
  8289.  
  8290.  
  8291.  
  8292.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8293.     VCONVERT   [制御文]           extra word VCONVERT on/off
  8294.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8295.                                                                        
  8296.     VCONVERT(ON,OFF)
  8297.                                                                        
  8298.       用途  IF、JUMP、CASEで使用する特殊文字を有効/無効にします。
  8299.             なお、初期値は VCONVERT(OFF)です。    
  8300.                                                                          [8300]
  8301.       使用例 1
  8302.           VCONVERT(ON)
  8303.           IFE(A$,"WTERM\R")    
  8304.           
  8305.       結果   1
  8306.           変数A$と、"WTERM"+CRを比較します。
  8307.  
  8308.       使用例 2                                                         
  8309.           VCONVERT(OFF)
  8310.           IFE(A$,"WTERM\R")    
  8311.           
  8312.       結果   2
  8313.           変数A$と、"WTERM\R"を比較します。
  8314.           この場合は、\RをCRコードに変換しません。
  8315.  
  8316.     関連項目  IFE,JUMP,CASE
  8317.  
  8318.  
  8319.  
  8320.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8321.     VLIST      [実行文]           Variables LIST
  8322.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8323.  
  8324.     VLIST
  8325.  
  8326.       用途  画面に現在使用中の変数の内容を、表示します。
  8327.  
  8328.       制限  使用中の変数のみ表示します。(A$ ~ Z$ , A% ~ Z% )
  8329.  
  8330.       使用例
  8331.           VLIST
  8332.  
  8333.       結果
  8334.           A$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8335.           A%= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8336.           B$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8337.            ...                                                           
  8338.           Z$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                            
  8339.           Z%= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                            
  8340.  
  8341.     関連項目  VCLEAR,VCLEAR2,VSWAP,VTACHG,VTCLEAR,VTCOPY,VTOCHG,VTLIST
  8342.  
  8343.  
  8344.  
  8345.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8346.     VSWAP      [実行文]           Variables SWAP
  8347.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8348.  
  8349.     VSWAP(変数1,変数2) 
  8350.                                                                          [8350]
  8351.       用途  変数 1と、変数 2の値を入れ換えます。
  8352.  
  8353.       制限  変数 1も、変数 2も変数である必要があります。
  8354.                                                                        
  8355.       使用例
  8356.           A$ = "こんにちは"
  8357.           Z$ = "WTERM"
  8358.           PRINTCR(A$)
  8359.           PRINTCR(Z$)
  8360.           VSWAP(A$,Z$)
  8361.           PRINTCR(A$)                                                  
  8362.           PRINTCR(Z$)
  8363.  
  8364.       結果
  8365.           こんにちは        A$の内容を表示
  8366.           WTERM             Z$の内容を表示
  8367.                             VSWAP   ここで内容が入れ替わり
  8368.           WTERM             A$の内容を表示
  8369.           こんにちは        Z$の内容を表示
  8370.  
  8371.     関連項目  VCLEAR,VCLEAR2,VLIST,VTACHG,VTCLEAR,VTCOPY,VTOCHG,VTLIST,VTSWAP
  8372.  
  8373.  
  8374.  
  8375.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8376.     VSWITCH    [制御文]           Variables SWITCH
  8377.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8378.     CASE       [制御文]           CASE
  8379.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8380.     ELSE       [制御文]           ELSE
  8381.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8382.     END        [制御文]           END
  8383.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8384.  
  8385.     VSWITCH(変数)
  8386.       CASE(文字列またはコントロールコード)
  8387.       ELSE
  8388.       END                                                               
  8389.                                                                          
  8390.       用途  VSWITCH で指定された変数を、CASEで指定された文字列(又はコント
  8391.             ロールコード)と比較して、一致した場合対応した、CASEの次から実
  8392.             行します。
  8393.             一致するCASEが無く、ELSEが記述されている場合は、ELSEの次から実
  8394.             行します。
  8395.             CASEフェーズ、またはELSEフェーズが終了、または一致するCASEが無
  8396.             く、ELSEの記述もなかった場合、VSWITCH に対応する ENDに制御を移
  8397.             します。
  8398.  
  8399.       使用例                  # 解説
  8400.           VSWITCH(A$)         # A$をCASEの比較対象にします               [8400]
  8401.             CASE("MAIL")      # A$が"MAIL"なら
  8402.               GOTO(MAIL)      # MAILのラベルに制御を移す
  8403.             CASE("READ")      # A$が"READ"なら
  8404.               GOTO(READ)      # READのラベルに制御を移す              
  8405.             ELSE              # A$が"MAIL"でも"READ"でも無ければ
  8406.               GOTO(OTHERS)    # OTHERSのラベルに制御を移す
  8407.           END                 #
  8408.  
  8409.       解説
  8410.           上記例で説明しますと、VSWITCH 文に入り                         
  8411.             CASE("MAIL")      # A$が"MAIL"なら
  8412.             CASE("READ")      # A$が"READ"なら
  8413.           どれか 1つでもCASE文が該当すれば、次行以降を次のCASE、またはELSE
  8414.           か、END 迄を実行します。そして、 VSWITCHに対応した  ENDへ行きます。
  8415.            1つも一致するCASE文が無かった場合は、 ENDへ行きます。
  8416.  
  8417.     関連項目  GOTO,SWITCH
  8418.  
  8419.  
  8420.  
  8421.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8422.     VTACHG     [実行文]           Variables Temporary All CHanGe
  8423.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8424.  
  8425.     VTACHG 
  8426.  
  8427.       用途  現在WTERM の内部バッッファに退避中の変数を、変数A-Z$にそのまま
  8428.             戻します。
  8429.  
  8430.       制限  格納前の変数A$-Z$の内容は、初期化されます。
  8431.  
  8432.       使用例
  8433.           VTACHG
  8434.  
  8435.       結果
  8436.           変数A$-Z$に、退避中のA$-Z$の内容が格納されます。
  8437.           それにともない、格納前のA$-Z$の内容は、空白となり失われます。
  8438.                                                                       
  8439.     関連項目  VCLEAR,VCLEAR2,VLIST,VSWAP,VTCLEAR,VTCOPY,VTOCHG,VTLIST    
  8440.  
  8441.  
  8442.  
  8443.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8444.     VTCLEAR    [実行文]           Variables Temporary CLEAR
  8445.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8446.  
  8447.     VTCLEAR                                                           
  8448.     VTCLEAR(文字列[変数名]) 
  8449.     VTCLEAR(文字列1[変数名1],文字列2[変数名2]) 
  8450.                                                                          [8450]
  8451.       用途  パラメーター指定がない場合は、退避中(VTCOPY)の変数の内容をす
  8452.             べて初期化します。
  8453.             第 1パラメーターのみある場合は、その指定退避中(VTCOPY)の変数
  8454.             の内容を初期化します。その場合、 1個だけならその待避変数を初期
  8455.             化します。複数の指定なら、その指定範囲すべてを初期化します。 
  8456.             第 1/第 2パラメーターがある場合は、その第 1パラメーターで指定
  8457.             された待避変数から、第 2パラメーターで指定された待避変数までの
  8458.             間すべてを初期化します。
  8459.  
  8460.  
  8461.       制限  パラメーターは、半角で  A - Z と書いてください。
  8462.             無効な文字列がある場合には、なにもしないか、複数指定の場合は、
  8463.             有効指定まで初期化をおこないます。
  8464.  
  8465.       使用例 1                                                         
  8466.           VTCLEAR
  8467.  
  8468.       結果   1
  8469.           待避変数A$から、待避変数Z$の内容を、初期化します。
  8470.                                                                        
  8471.       使用例 2                                                         
  8472.           VTCLEAR("D")
  8473.  
  8474.       結果   2
  8475.           待避変数D$の内容のみを、初期化します。
  8476.  
  8477.       使用例 3                                                        
  8478.           VTCLEAR("ACZ")
  8479.  
  8480.       結果   3
  8481.           待避変数A$、待避変数C$、待避変数Z$の内容を、初期化します。
  8482.  
  8483.       使用例 4
  8484.           VTCLEAR("C","V")
  8485.  
  8486.       結果   4
  8487.           待避変数C$から、待避変数H$までを、初期化します。この場合に初期化
  8488.           されるのは、待避変数  C$ D$ E$ F$ G$ H$ です。
  8489.           VTCLEAR("H","C") という逆の指定方法でも有効です。              
  8490.  
  8491.     関連項目  VCLEAR,VCLEAR2,VLIST,VSWAP,VTACHG,VTCOPY,VTOCHG,VTLIST
  8492.                                                                       
  8493.  
  8494.  
  8495.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8496.     VTCOPY     [実行文]           Variables Temporary COPY
  8497.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8498.  
  8499.     VTCOPY 
  8500.     VTCOPY(文字列[変数名])                                               [8500]
  8501.     VTCOPY(文字列1[変数名1],文字列2[変数名2]) 
  8502.  
  8503.       用途  指定パラメーターがない場合は、現在の変数 A$ ~ Z$ の内容を、退
  8504.             避用のWTERM の内部バッファーに格納します。
  8505.             変数の内容が、空白でも格納コピーされます。
  8506.             第 1パラメーターのみがある場合で、単独指定の場合は、その変数の
  8507.             内容のみ、内部バッファーの同名格納変数に格納します。複数指定の
  8508.             指定なら、その指定すべてに対し同様の事をおこないます。
  8509.             第 1/第 2パラメーターがある場合は、その第 2パラメーターで指定
  8510.             された変数の内容のみを、第 1パラメーターで指定された内部バッフ
  8511.             ァに格納します。第 2パラメーターに、無効な文字列がある場合には、
  8512.             VTCOPY(文字列[変数名]) と同じ扱いになります。
  8513.             チェインした場合でも、内容は初期化されません。
  8514.  
  8515.       制限  退避した変数は、そのまま呼び出す事はできません。
  8516.             別途命令の VTACHG もしくは VTOCHG で、再度変数に格納して下さい。
  8517.  
  8518.       使用例 1
  8519.           VTCOPY
  8520.  
  8521.       結果   1
  8522.           変数 A$ - Z$ の内容を、WTERM の内部バッファーにある待避変数、
  8523.           TEMP_A$ - TEMP_Z$に格納します。
  8524.  
  8525.  
  8526.       使用例 2
  8527.           VTCOPY("F")
  8528.  
  8529.       結果   2
  8530.           変数 F$ の内容を、WTERM の内部バッファー にある待避変数、TEMP_F$
  8531.           に格納します。
  8532.  
  8533.  
  8534.       使用例 3
  8535.           VTCOPY("JFK")
  8536.  
  8537.       結果   3
  8538.           変数 J$ の内容を、WTERM の内部バッファー TEMP_J$ 
  8539.           変数 F$ の内容を、WTERM の内部バッファー TEMP_F$               
  8540.           変数 K$ の内容を、WTERM の内部バッファー TEMP_K$ 
  8541.           に格納しす。
  8542.  
  8543.       使用例 4
  8544.           VTCOPY("G","A")
  8545.  
  8546.       結果   4
  8547.           変数 G$ の内容を、WTERM の内部バッファー TEMP_A$ に格納します。
  8548.  
  8549.     関連項目  VCLEAR,VCLEAR2,VLIST,VSWAP,VTACHG,VTCLEAR,VTOCHG,VTLIST
  8550.                                                                          [8550]
  8551.  
  8552.  
  8553.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8554.     VTLIST     [実行文]           Variables Temporary LIST
  8555.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8556.  
  8557.     VTLIST 
  8558.  
  8559.       用途  画面に、WTERM の内部バッファーに退避中の変数の内容を表示します。
  8560.             VLIST との表示の混乱を避ける為に、TEMP_変数と表示します。
  8561.  
  8562.       制限  退避中の変数の内容のある物のみ表示します。
  8563.  
  8564.       使用例
  8565.           VTLIST
  8566.  
  8567.       結果
  8568.           TEMP_A$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8569.           TEMP_B$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8570.           TEMP_C$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8571.      
  8572.               ----  中略  ----
  8573.  
  8574.           TEMP_Y$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  8575.           TEMP_Z$= XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  
  8576.  
  8577.     関連項目  VCLEAR,VCLEAR2,VLIST,VSWAP,VTACHG,VTCLEAR,VTCOPY,VTOCHG
  8578.  
  8579.  
  8580.  
  8581.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8582.     VTOCHG     [実行文]           Variables Temporary Option CHanGe
  8583.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8584.                                                                       
  8585.     VTOCHG(変数1,文字列[変数名]) 
  8586.  
  8587.       用途  現在WTERM の内部バッッファに退避中の変数の中から、第 2パラメー
  8588.             ターで指定された変数の内容をひきだし、変数 1に格納します。  
  8589.                                                                          
  8590.       制限  第 2パラメーターは、半角で  A - Z と書いてください。
  8591.             無効な文字列がある場合には、無効になります。
  8592.  
  8593.       使用例
  8594.           VTOCHG(A$,"D")                                               
  8595.  
  8596.       結果
  8597.           変数A$に、退避中のD$(TEMP_D$)の内容が格納されます。
  8598.           それにともない格納前のA$の内容は、失われます。
  8599.  
  8600.     関連項目  VCLEAR,VCLEAR2,VLIST,VSWAP,VTACHG,VTCLEAR,VTCOPY,VTLIST    [8600]
  8601.  
  8602.  
  8603.  
  8604.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8605.     VTOCHG2    [実行文]           Variables Temporary Option CHanGe part2
  8606.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8607.                                                                       
  8608.     VTOCHG2(文字列[変数名]) 
  8609.     VTOCHG2(文字列1[変数名1],文字列2[変数名2]) 
  8610.  
  8611.       用途  現在、WTERM の内部バッッファに退避中の退避変数の中から、指定さ
  8612.             れた退避変数の内容をひきだし、同変数名に格納します。
  8613.             第 1パラメーターのみが指定してある場合で、単独指定の場合は、そ
  8614.             の退避変数の内容のみ、同名の変数に格納します。
  8615.             複数指定の指定なら、その指定の退避すべてに対し同様の事をおこな
  8616.             います。
  8617.             第 1/第 2パラメーターがある場合は、その第 1パラメーターで指定
  8618.             された退避変数から、第 2パラメーターで指定された退避変数の内容
  8619.             を、同名の変数に格納します。
  8620.  
  8621.       制限  第 1/ 2パラメーターは、半角で  A - Z と書いてください。
  8622.             無効な文字列がある場合にはなにもしないか、複数指定の場合は、有
  8623.             効指定まで初期化をおこないます。
  8624.  
  8625.       使用例 1
  8626.           VTOCHG("D") 
  8627.  
  8628.       結果   1
  8629.           変数 D$ に、退避中の D$(TEMP_D$)の内容が、格納されます。
  8630.  
  8631.       使用例 2                                                         
  8632.           VTOCHG("ABC")
  8633.                                                                         
  8634.       結果   2                                                          
  8635.           変数 X$ に、退避中の X$(TEMP_X$)の内容が、格納されます。
  8636.           変数 Y$ に、退避中の Y$(TEMP_Y$)の内容が、格納されます。 
  8637.           変数 Z$ に、退避中の Z$(TEMP_Z$)の内容が、格納されます。 
  8638.           
  8639.       使用例 3                                                           
  8640.           VTOCHG("CIA")
  8641.  
  8642.       結果   3
  8643.           変数 C$ に、退避中の C$(TEMP_C$)の内容が、格納されます。
  8644.           変数 I$ に、退避中の I$(TEMP_I$)の内容が、格納されます。 
  8645.           変数 A$ に、退避中の A$(TEMP_A$)の内容が、格納されます。 
  8646.  
  8647.  
  8648.       使用例 4
  8649.           VTOCHG("C","H")
  8650.                                                                          [8650]
  8651.       結果   4
  8652.           VTCOPYで、一時的に退避してある変数 C$ の内容すなわち、TEMP_C$ か
  8653.           ら、退避変数 H$ (TEMP_H$) までを、変数 C$ から H$ に格納します。
  8654.           C$ = TEMP_C$ / D$ = TEMP_D$ / E$ = TEMP_E$ / F$ = TEMP_F$ 
  8655.           G$ = TEMP_G$ / H$ = TEMP_H$ となります。
  8656.           VTOCHG("H","C")  という書き方でも有効です。A - Z の範囲なら特に、
  8657.           順序は決っていません。
  8658.  
  8659.     関連項目  VCLEAR,VCLEAR2,VLIST,VSWAP,VTACHG,VTCLEAR,VTCOPY,VTLIST
  8660.  
  8661.  
  8662.  
  8663.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8664.     VTSWAP     [実行文]           Variables Temp SWAP
  8665.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8666.  
  8667.     VTSWAP(文字列1[変数名1],文字列2[変数名2]) 
  8668.  
  8669.       用途  内部待避変数 1(TEMP_$)と、内部待避変数 2の内容を入れ換えます。
  8670.  
  8671.       制限  変数 1も、変数 2も、変数である必要があります。
  8672.  
  8673.       使用例
  8674.           A$="こんにちは"     (TEMP_A$)
  8675.           Z$="WTERM"          (TEMP_Z$)
  8676.           VSWAP(A$,Z$)
  8677.                                                                         
  8678.       結果
  8679.           こんにちは           TEMP_A$の内容の表示
  8680.           WTERM                TEMP_Z$の内容の表示
  8681.                (VTSWAP)        ここで内容が入れ替わり
  8682.           WTERM                TEMP_A$の内容の表示
  8683.           こんにちは           TEMP_Z$の内容の表示
  8684.  
  8685.     関連項目  VCLEAR,VCLEAR2,VLIST,VTACHG,VTCLEAR,VTCOPY,VTOCHG,VTLIST,VSWAP
  8686.  
  8687.  
  8688.  
  8689.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8690.     WAIT       [実行文]           WAIT for strings
  8691.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8692.  
  8693.     WAIT(変数または文字列)
  8694.     WAIT(変数1または文字列1,変数2または文字列2,ラベル)
  8695.  
  8696.       用途  指定された文字列(または変数またはコントロールコード)を受信す
  8697.             るまで、待ちます。
  8698.             なお、TIMEOUT 命令で、待ち時間を設定できます。
  8699.             第 1パラメーターのみが指定してある場合は、待つだけですが、第 2
  8700.             パラメーターで、変数 2、もしくは文字列が指定してある場合は、 [8700]
  8701.             変数 1の文字列が受信してその後、受信文字がまったくない場合(ホ
  8702.             スト側のプロンプト待ちの状態)で、変数 2の時間(指定秒)が経過
  8703.             した場合のみ、次のステップへ移動します。
  8704.             変数 1の文字列が受信してその後、受信文字が指定秒数以内にあった
  8705.             場合は、第 3パラメーターで指定したラベルへジャンプします。
  8706.             待つ文字列は、コントロールコードでも可能で、nnnは0-255までの10
  8707.             進数を指定し、その nnnに対応する文字コードを待ちます。
  8708.  
  8709.       使用例 1
  8710.           WAIT("login:")
  8711.           
  8712.       結果   1
  8713.           login: という文字列を受信するまで待ちます。
  8714.  
  8715.       使用例 2
  8716.           WAIT("\E[31m")     #   \E: ESC($1B)                     
  8717.          
  8718.       結果   2
  8719.           ESC^[31m という文字列を待ちます。                           
  8720.                                                                        
  8721.       使用例 3
  8722.           WAIT("WTERM\R")    #   \R: CR ($0D)
  8723.           
  8724.       結果   3
  8725.           WTERM と改行コードという文字列を待ちます。     
  8726.   
  8727.       使用例 4
  8728.           WAIT("\007\008")   
  8729.           
  8730.       結果   4
  8731.           BL BS という文字列を待ちます。
  8732.  
  8733.       使用例 5
  8734.           WAIT(">","30",STOP)
  8735.  
  8736.       解説   5
  8737.           >という文字列を受信するまで待ちます。
  8738.           その後、30秒間なにも受信文字がない場合は確実にプロンプトと判定で
  8739.           きるために、次のステップに進み次の命令の処理をします。         
  8740.           もし、指定秒数以内に、次の任意の文字を受信した場合は、ラベルSTOP
  8741.           へ、ジャンプします。
  8742.           もし引用文などで同一文字があれば、確実にすぐ次の文字を表示して、
  8743.           受信しますので、その場合はラベルSTOPへいきます。
  8744.  
  8745.       使用例 6
  8746.           WAIT("\042\060","20",END)
  8747.  
  8748.       解説   6
  8749.           \42\60(文字でいえば *> )という文字列を受信するまで待ちます。
  8750.           その後、20秒間なにも受信文字がない場合は確実にプロンプトと判定 [8750]
  8751.           できるために、次のステップに進み次の命令の処理をします。
  8752.           もし、指定秒数以内に、次の任意の文字を受信した場合は、ラベルSTOP
  8753.           へ、ジャンプします。もし引用文などで同一文字があれば、確実にすぐ
  8754.           次の文字を受信しますので、その場合はジャンプラベル ENDへいきます。
  8755.  
  8756.     関連項目  CASE,SEND
  8757.  
  8758.  
  8759.  
  8760.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8761.     WAPPEND    [実行文]           Writing file APPEND open [8000]
  8762.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8763.  
  8764.     WAPPEND(ファイル名)
  8765.     WAPPEND(ファイル名,ラベル)
  8766.  
  8767.       用途  WRITEする為の任意の名前のファイルを、OPENします。
  8768.             新規にファイルを作りたい場合は  WOPENを利用してください。
  8769.             ラベルを指定した場合は、OPENエラー(制作指定場所が存在しない)
  8770.             の場合、指定したラベルにジャンプします。ラベルを指定していない
  8771.             場合は、マクロを中断します。
  8772.                                                                       
  8773.       仕様  ファイルは、テキストファイルに限ります。
  8774.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  8775.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  8776.             存在するものと見なします。
  8777.  
  8778.       注意  WOPENで  他のファイルをオープン中はオープンはできません。
  8779.  
  8780.       使用例 1
  8781.           WAPPEND("TEMP.DAT")
  8782.           
  8783.       結果   1
  8784.           MACRODIRにある、TEMP.DATに、Append(追加書き)します。      
  8785.           ファイルがオープンできない場合(存在しない場合)は、その名前のフ
  8786.           ァイルを新規作成して、オープンします。
  8787.                                                                        
  8788.       使用例 2
  8789.           WAPPEND("A:\DATA\WT.DAT",ERROR)                                
  8790.  
  8791.       結果   2
  8792.           A:\DATA\にあるWT.DATを、Append(追加書き)します。 
  8793.           ファイルがオープンできない場合(新規作成もできない場合)は、指定
  8794.           ジャンプラベル ERRORに、ジャンプします。
  8795.  
  8796.     関連項目  WOPEN,WCLOSE,WRITE,FOPEN,ROPEN,TOPEN,TCLOSE
  8797.  
  8798.  
  8799.  
  8800.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=[8800]
  8801.     WCLOSE     [実行文]           Written file CLOSE
  8802.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8803.  
  8804.     WCLOSE
  8805.  
  8806.       用途  WOPEN 、またはWAPPEND した任意のファイルを、CLOSEします。
  8807.  
  8808.       使用例                                                           
  8809.           WCLOSE
  8810.  
  8811.  
  8812.     関連項目  WOPEN,WAPPEND,WRITE,FCLOSE,RCLOSE,TCLOSE,TOPEN,FOPEN,ROPEN
  8813.  
  8814.  
  8815.  
  8816.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8817.     WEEK       [関  数]           system WEEK
  8818.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8819.  
  8820.     WEEK(変数)
  8821.     WEEK(変数1,変数2または文字列)
  8822.  
  8823.       用途  第 1パラメーターしかない場合は、変数に本日の曜日を代入します。
  8824.             その場合、変数に代入される文字は、月、火、水、木、金、土、日で
  8825.             す。
  8826.             第 2パラメーターの変数 2、または文字列に、 0以外の数字があれば、
  8827.             本日の祝祭日を判定して、数字の形で、変数 1に代入します。
  8828.             その場合、変数 1に、代入される数字は、以下のようになっています。
  8829.              0 = 祝日でも祭日でも振り替え休日でもない。
  8830.              1 = 元旦            
  8831.              2 = 成人の日       
  8832.              3 = 建国記念の日
  8833.              4 = 春分の日        
  8834.              5 = 緑の日         
  8835.              6 = 憲法記念日
  8836.              7 = 国民の休日      
  8837.              8 = こどもの日     
  8838.              9 = 敬老の日
  8839.             10 = 秋分の日       
  8840.             11 = 体育の日                                                
  8841.             12 = 文化の日
  8842.             13 = 勤労感謝の日   
  8843.             14 = 天皇誕生日    
  8844.             15 = 振り替え休日
  8845.  
  8846.       使用例 1
  8847.           WEEK(A$)
  8848.       
  8849.       結果   1
  8850.           A$ = 土                                                        [8850]
  8851.           本日は土曜日
  8852.  
  8853.       使用例 
  8854.           WEEK(A$,'1')
  8855.       
  8856.       結果 
  8857.           A$ = 8
  8858.           本日は、子供の日
  8859.  
  8860.     関連項目  DATE,LASTTIME,LASTSTIME,LAPTIME,SETTIME,LOGTIME
  8861.                                                                        
  8862.  
  8863.  
  8864.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8865.     WOPEN      [実行文]           Writing file OPEN
  8866.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8867.  
  8868.     WOPEN(ファイル名)
  8869.     WOPEN(ファイル名,ラベル)
  8870.  
  8871.       用途  WRITE する為の  任意のファイルをOPENします。
  8872.             同名のファイルがあれば消して、新規作成しますので、同名のファイ
  8873.             ルの内容は失われます。それを回避したい場合は、WAPPENDを利用して
  8874.             ください。
  8875.             ラベルを指定した場合は、オープンエラー(ファイルが存在しない場
  8876.             合)のとき、指定したラベルにジャンプします。
  8877.             異常が発生して、なおかつラベルを指定していない場合は、マクロは
  8878.             中断します。
  8879.  
  8880.       仕様  ファイルは、テキストファイルに限ります。
  8881.             ファイル名に、ドライブ名やディレクトリー名指定がない場合は、ユ
  8882.             ーザー指定の、"MACRO用ファイル格納・PATH[設定 F・7]-(5)-5"  に
  8883.             存在するものと見なします。
  8884.  
  8885.       注意  WAPPEND で他のファイルをオープン中は、オープンはできません。
  8886.  
  8887.       使用例 1
  8888.           WOPEN("TEMP.DAT")
  8889.                           
  8890.       解説   1                                                           
  8891.           MACRO DATA DIR[F・7]-(5)-5にあるファイル"TEMP.DAT"を、オープンし
  8892.           ます。ファイルオープンエラーの場合は、マクロを中断します。
  8893.  
  8894.       使用例 2
  8895.           WOPEN("A:\DATA\WT.DAT",ERROR)                               
  8896.  
  8897.       解説   2
  8898.             
  8899.           A:\DATA\にあるファイル、"WT.DAT"をオープンします。
  8900.           オープンエラーの場合は、指定ジャンプラベルラベル ERRORに、     [8900]
  8901.           ジャンプします。                                          
  8902.  
  8903.     関連項目  WAPPEND,WCLOSE,WRITE,FOPEN,ROPEN
  8904.                                                                       
  8905.  
  8906.  
  8907.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8908.     WRITE      [実行文]           Written file wRITE
  8909.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8910.  
  8911.     WRITE(変数名)                                                      
  8912.     WRITE(変数名,ラベル)
  8913.  
  8914.       用途  WOPEN されている任意のファイルに  変数の内容を 1行書き込みます。
  8915.             ジャンプラベルを指定した場合、ファイルエンド(またはライトエラ 
  8916.             ー)のときは、指定したラベルにジャンプします。
  8917.             ラベルを指定していない場合は、マクロを中断します。
  8918.  
  8919.       使用例 1
  8920.           WRITE(B$)        
  8921.           
  8922.       結果   1
  8923.           変数 B$に、一行書き込みます。ファイルエンド(EOF)または、書き込
  8924.           みエラーの場合は、マクロを中断します。
  8925.  
  8926.       使用例 2
  8927.           WRITE(Z$,ERROR)        
  8928.  
  8929.       結果   2
  8930.           変数 Z$に、一行書き込みます。ファイルエンド(EOF)または、書き込
  8931.           みエラーの場合は、指定ジャンプラベル ERRORに、ジャンプします。
  8932.  
  8933.     関連項目  WOPEN,WAPPEND,WCLOSE
  8934.  
  8935.  
  8936.  
  8937.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8938.     WRITELOG   [関  数]           WRITE LOGfile
  8939.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8940.                                                                          
  8941.     WRITELOG(変数または文字列)
  8942.  
  8943.       用途  変数、または第 1パラメーターの文字列の内容を、現在記録中のログ
  8944.             ファイルに書き込みます。
  8945.  
  8946.       制限  ログファイル記録中のみ有効です。
  8947.  
  8948.       仕様  まず、最初に一行改行します。次の行に指定文字列を書き込みます。
  8949.  
  8950.       使用例                                                             [8950]
  8951.           WRITELOG("テストです")
  8952.  
  8953.       結果
  8954.           現在のログの内容例
  8955.  
  8956.           H.INOUEさんこんにちは、今は遊んでいます。
  8957.         
  8958.           テストです             ←  書き込んだ内容
  8959.           なにをしていますか。
  8960.  
  8961.  
  8962.  
  8963.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8964.     YJUMP      [制御文]           Yes JUMP
  8965.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  8966.  
  8967.     YJUMP(変数または文字列,ラベル)
  8968.  
  8969.       用途  第 1パラメーターの変数、または文字列で、指定したコメントを表示
  8970.             し、Yes(Y or [Space or Return これはUSERの選択])を、押すと指
  8971.             定したラベルにジャンプします。それ以外は、何もしないで次ののマ
  8972.             クロ命令を実行します。
  8973.             ジャンプラベルがない場合や、 ESCキーを押したときは、マクロを中
  8974.             断します。
  8975.             なにも入力しない状態で、 120秒が経過すると、 Yを押した状態と同
  8976.             じなり、指定ラベルにジャンプします。               
  8977.  
  8978.       使用例
  8979.           A$="Yes なら メールを読みます"
  8980.           YJUMP(A$,MAILREAD)    # Yes(Y key)で MAILREADにジャンプします。
  8981.                                 # MAILREAD は Label
  8982.  
  8983.       結果  
  8984.          +------------------------------------------------+
  8985.          |       << Yes or Space → Jump Label >>         |
  8986.          |   Yes なら メールを読みます(例) [Yes/No]       |
  8987.          |                               [ ESC -> ABORT]  |
  8988.          +-----黄色枠 ONLY -------------------------------+
  8989.  
  8990.       注意  120 秒以内に選択しない場合は、指定ラベルにジャンプします。   
  8991.             ラベル指定がされていない場合は、マクロを中断します。         
  8992.             ESC キーを押した時は、マクロを中断します。
  8993.                                                                        
  8994.     関連項目  NJUMP,JUMPE,JUMP<>,JUMP<,JUMPE<,JUMP>,JUMPE>,JUMPSRCHY,
  8995.               JUMPSRCHN,JUMPFILEY,JUMPFILEN                          
  8996.  
  8997.  
  8998.  
  8999.   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  9000.                                                                          [9000]
  9001.  
  9002.  
  9003.  
  9004.  
  9005.  
  9006.  
  9007.  
  9008.  
  9009.  
  9010. ===============================================================================
  9011. 【第10章】  SAMPLE.MAC
  9012. ===============================================================================
  9013.  
  9014.   マクロプログラムのサンプルとして、以下のマクロを添付します。
  9015.                                                                          
  9016.   オートログイン文字列のあとに、                                       
  9017.     
  9018.   [in:]\I[rd:]\P\#WWIV.MAC
  9019.                 ↑↑↑↑↑  \#  を付加してあとはマクロ名
  9020.  
  9021.   第 2パスワードがある場合
  9022.  
  9023.   [in:]\I[rd:]\P[rd:]PASSWORD'\#WWIV.MAC
  9024.                      PASSWORD ↑↑↑↑↑ \# を付加してあとはマクロ名
  9025.  
  9026.   マクロファイルは、通常は、F7 -[4]-5 MACRO 用格納PATHで指定した場所に、格納
  9027.   して下さい。(ドライブ等は任意に指定することができます)               
  9028.                                                                          
  9029.  
  9030.   添付サンプル例                                                            
  9031.   -------------
  9032.  
  9033.     WWIV.MAC          WWIV    系
  9034.     107WWIV.MAC       WWIV 107J系
  9035.     CATWWIV.MAC       WWIV-320B系(???)
  9036.  
  9037.   以前まで付加していた、NIFTY 用マクロは、今回より容量の関係で別途になりま
  9038.   した。
  9039.  
  9040.  
  9041.  
  9042.  
  9043.  
  9044.  
  9045.  
  9046.  
  9047.  
  9048.  
  9049.  
  9050.                                                                          [9050]
  9051. ===============================================================================
  9052. 【第11章】  マクロを制作され、公開される方々へ
  9053. ===============================================================================
  9054.  
  9055.   御自分の作られたマクロを、インストールしてもらう場合に結構わずらわしい手
  9056.   順を、事細かく説明しなければなりません。
  9057.   専用のインストーラーマクロを作ってみてはいかがでしょうか。
  9058.  
  9059.   WTERM の起動オプションに
  9060.  
  9061.     WTERM -_マクロ名               例  WTERM -_INST                      
  9062.                            
  9063.   のがあります。この命令は、上記のマクロ名が、ユーザー設定のマクロ格納場所
  9064.   に存在すれば、それを読み出し実行します。なお、ダイヤル等はいたしません。
  9065.   また以下のように指定することもできます。
  9066.  
  9067.     WTERM -_マクロ名.MAC           例  WTERM -_INST.MAC
  9068.     WTERM -_A:\DATA\マクロ名.MAC   例  WTERM -_A:\DATA\INST.MAC
  9069.  
  9070.   これを使用してマクロで、マクロ命令のチャイルド使用で、圧縮されているマク
  9071.   ロの解凍ができます。
  9072.   また同チャイルド命令を使ってのコピーや、移動などをできます。もしディレク
  9073.   トリー等がなければ、マクロ命令(MKDIR )で作成することも簡単に可能です。
  9074.   そしてそれらの命令を使って、新規作成したディレクトリー情報などを、WTERM 
  9075.   側のデーターに記載保存(WTERM5A.DAT F7-1-4項目)をしたり、ユーザー等が各
  9076.   自使用している、ホスト登録データ(WTERMN.DAT)などの、オートパイロット文
  9077.   字列などを、任意の文字列に交換が可能です。
  9078.   すべて正常に終了したのち、INST.MAC(仮名)の削除もマクロで可能ですので、
  9079.   超簡単インストールプログラムが書けることと思います。
  9080.  
  9081.   また任意のラベルにジャンプさせ個別命令が、実行可能なマクロであれば、その
  9082.   簡易説明とマクロ呼び出し方法を、拡張文字列定義(WTERM5B.DAT 設定  F7-3  
  9083.   1-9 .. A - Z )に、書き込み保存する事ができます。
  9084.   ただし  この場合  上書きなので以前の内容は消されてしまう為、そのあたりの
  9085.   説明は明記するのがトラブルを防ぐ手段です。
  9086.  
  9087.   上記をおこなうにあたり、以下の命令を新規追加しました。
  9088.   ご利用ください。
  9089.  
  9090.  
  9091.     ----------------------------------------------------------------------
  9092.     SAVEWDAT   [関  数]           SAVE Wterm bbs/base DATa
  9093.     ----------------------------------------------------------------------
  9094.     SAVEWDAT(変数1,変数2または文字列,変数3または文字列)
  9095.  
  9096.       用途  各ホスト登録データーを書き換えます。
  9097.  
  9098.       仕様  パラ 1(変数 1)は、文字列でSAVE内容
  9099.             パラ 2(変数 2)は、各ホストごとの任意の番号に該当(1-60番)
  9100.             パラ 3(変数 3)は、変更項目に該当                           [9100]
  9101.                                                                          
  9102.       注意  正常に書き込みできれば、変数 1に OK が返されます。
  9103.             エラーの場合は、変数 1に該当番号を示唆します。
  9104.              300番台の書き込みの場合は変数 2に、1-60までの数字を記入してく
  9105.             ださい。
  9106.  
  9107.  
  9108.     ----------------------------------------------------------------------
  9109.     SAVEW5B    [関  数]           SAVE Wterm5B.dat
  9110.     ----------------------------------------------------------------------
  9111.     SAVEW5B(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  9112.                                                                          
  9113.       用途  WTERM5B.DAT (別途送出文字列定義ファイル)の内容を書き換えます。
  9114.  
  9115.       仕様  パラ 1(変数 1)は、1-9 / A-Zまでの指定               
  9116.             パラ 2(変数 2)は、送出文字列内容(最大 40 bytes)
  9117.             パラ 3(変数 3)は、そのメモ  内容(最大 20 bytes)
  9118.  
  9119.       注意  正常に書き込みできれば、変数 1に OK が返されます。
  9120.             エラーの場合は、変数 1に該当番号を示唆します。
  9121.             なお、書き込む際は、以前の内容の上に上書きします。
  9122.                                                                          
  9123.  
  9124.  
  9125.     ----------------------------------------------------------------------
  9126.     SAVEW5D    [関  数]           SAVE Wterm5D.dat
  9127.     ----------------------------------------------------------------------
  9128.     SAVEW5D(変数1または文字列1,変数2または文字列2,変数3または文字列3)
  9129.  
  9130.       用途  WTERM5D.DAT (別枠外部起動プログラム登録ファイル)の内容を書き
  9131.             換えます。                                                 
  9132.  
  9133.       仕様  パラ 1(変数 1)は、1-9/A-Zまでの指定               
  9134.             パラ 2(変数 2)は、外部起動プログラム内容(最大 40 bytes)
  9135.             パラ 3(変数 3)は、そのメモ          内容(最大 20 bytes)
  9136.  
  9137.       注意  正常に書き込みできれば、変数 1に OK が返されます。
  9138.             エラーの場合は、変数 1に該当番号を示唆します。
  9139.             なお、書き込む際は、以前の内容の上に上書きします。
  9140.  
  9141.  
  9142.  
  9143.  
  9144.  
  9145.  
  9146.  
  9147.  
  9148.  
  9149.  
  9150.                                                                          [9150]
  9151.                                                                          
  9152. ===============================================================================
  9153. 【第12章】  実行時表示  ・  その他                                       
  9154. ===============================================================================
  9155.  
  9156.   接続中は、マクロ命令 TIMED("ON")にすることにより、接続経過時間、リアルタ
  9157.   イム電話料金表示、ログ記録中カウント行数、マクロ実行行数などの表示を致し
  9158.   ます。
  9159.                                                                          
  9160.     ファンクションキーの、F・ 5 の場所  接続経過時間
  9161.  
  9162.     ファンクションキーの、F・ 6 の場所  リアルタイム電話料金表示
  9163.  
  9164.     ファンクションキーの、F・ 9 の場所  マクロ実行行数表示
  9165.  
  9166.     ファンクションキーの、F・10 の場所  ログ記録中  ログカウント行数
  9167.  
  9168.     マクロの途中中断は、[ESCキー] を押して下さい。通常は、[ESCキー] で中断
  9169.     しますが、ESCEXIT(OFF)とした場合は、[SHIFT+ESCキー] でしか中断しません。
  9170.  
  9171.  
  9172.  
  9173.  
  9174.  
  9175.  
  9176.  
  9177.                                                                       
  9178.  
  9179.     
  9180. ===============================================================================
  9181. 【第13章】  マクロ機能別分類表   
  9182. ===============================================================================
  9183.  
  9184.  
  9185.    1. 送信関係コマンド                                               
  9186.   ------------------------------------------------------------------------
  9187.  
  9188.                                                                    
  9189.       AUTOUD(ON,OFF)                                           2952
  9190.       BREAK                                                    3033
  9191.       CALL(ラベル)                                             3046
  9192.       CALL(ラベル,変数1,変数2または文字列)                     3046
  9193.       CHAIN(変数1またはファイル名)                             3129
  9194.       CHAIN(変数1またはファイル名,変数2または文字列)           3129
  9195.       CHILD(変数1または文字列1)                                3231
  9196.       CHILD(変数1または文字列1,変数2,文字列2または変数3)       3231
  9197.       DOWNLOAD(番号,ファイル名) No  1 - No  6                  3883
  9198.       DOWNLOAD(番号)            No  7 - No 14,No 21,No 23      3883
  9199.       DOWNLOAD(番号,MODE)       No 99                          3883
  9200.       END                                                      4011      [9200]
  9201.       GET(変数,長さ)                                           4890
  9202.       GETC(変数,文字または文字列)                              4908
  9203.       GETC(変数,文字または文字列,"+")                          4908
  9204.       GETC(変数,文字または文字列,+時間)                        4908
  9205.       GETC(変数,文字または文字列,監視時間)                     4908
  9206.       GETS(変数,文字または文字列)                              5154
  9207.       GETS(変数,文字または文字列,"+")                          5154
  9208.       GETS(変数,文字または文字列,+時間)                        5154
  9209.       GETS(変数,文字または文字列,監視時間)                     5154
  9210.       GOTO(ラベル名)                                           5358
  9211.       GOTO(ラベル名,変数1,変数2または文字列)                   5358
  9212.       IF<(変数1,変数2または数字文字列)                         5460
  9213.       IF<>(変数1,変数2または文字列)                            5484
  9214.       IF>(変数1,変数2または数字文字列)                         5508
  9215.       IFE(変数1,変数2または数字文字列)                         5532
  9216.       IFE<(変数1,変数2または数字文字列)                        5556
  9217.       IFE>(変数1,変数2または数字文字列)                        5580
  9218.       IFFILEN(変数または文字列)                                5603
  9219.       IFFILEY(変数または文字列)                                5627
  9220.       IFSRCHN(変数1,比較文字列または変数2)                     5654
  9221.       IFSRCHY(変数1,比較文字列または変数2)                     5677
  9222.       JUMP<(変数1,変数2または数字文字列,ラベル)                5931
  9223.       JUMP<>(変数1,比較文字列または変数2,ラベル)               5954
  9224.       JUMP>(変数1,変数2または数字文字列,ラベル)                5977
  9225.       JUMPE(変数1,比較文字列または変数2,ラベル)                6000
  9226.       JUMPE<(変数1,変数2または数字文字列,ラベル)               6032
  9227.       JUMPE>(変数1,変数2または数字文字列,ラベル)               6055
  9228.       JUMPFILEN(変数または文字列,ラベル)                       6078
  9229.       JUMPFILEY(変数または文字列,ラベル)                       6102
  9230.       JUMPSRCHN(比較元文字列または変数1,変数2,ラベル)          6126
  9231.       JUMPSRCHY(比較元文字列または変数1,変数2,ラベル)          6151
  9232.       RETURN                                                   7224
  9233.       SEND(文字列または変数)                                   7531
  9234.       SEND(文字列,文字列2または変数2)                          7531
  9235.       SEND(文字列,文字列2または変数2,文字列3または変数3)       7531
  9236.       STIMEOUT(文字列または変数,ラベル)                        7708
  9237.       SWITCH                                                   7799
  9238.       SWITCH(文字列または変数)                                 7799
  9239.       SWITCH(文字列または変数,ラベル)                          7799
  9240.         CASE(文字列またはコントロールコード)                   7801
  9241.         END                                                    7803
  9242.       TIMEOUT(文字列または変数,ラベル)                         7999
  9243.       UPLOAD(番号,ファイル名)                                  8083
  9244.       UPLOAD(番号,ファイル名,ラベル)                           8083
  9245.       UPTEXT(番号,ファイル名)                                  8141
  9246.       UPTEXT(番号,ファイル名,ラベル)                           8141
  9247.       VCONVERT(ON,OFF)                                         8293
  9248.       VSWITCH(変数)                                            8376
  9249.         CASE(文字列またはコントロールコード)                   8376
  9250.         ELSE                                                   8380      [9250]
  9251.         END                                                    8382
  9252.       WAIT(変数または文字列)                                   8690
  9253.       WAIT(変数1または文字列1,変数2または文字列2,ラベル)       8690
  9254.  
  9255.  
  9256.  
  9257.    2. ファイル操作関係コマンド
  9258.   ------------------------------------------------------------------------
  9259.  
  9260.       CHKPATH(変数1または文字列,変数2)                         3327
  9261.       CUTFILE(変数1または文字列1,変数2または文字列2,変数3)     3505
  9262.       DELFILE(変数または文字列)                                3749
  9263.       DISKSIZE(変数1,変数2または文字列)                        3790
  9264.       DISKFSIZE(変数1,変数2または文字列)                       3822
  9265.       FCLOSE                                                   4123
  9266.       FCOPY(変数1または文字列1,変数2または文字列2)             4138
  9267.       FCOPY(変数1 or 文字列1,変数2 or 文字列2,変数3 or 字列3)  4138
  9268.       FDIR(変数1または文字列1,変数2または文字列2)              4189
  9269.       FDIR(変数1 or 文字列1,変数2 or 文字列2,変数3 or 文字列3) 4189
  9270.       FDIRA(変数1または文字列1,変数2または文字列2)             4253
  9271.       FDIRA(変数1 or 文字列1,変数2 or 文字列2,変数3 or 文字列3)4253
  9272.       FEXPAND(変数)                                            4313
  9273.       FILESIZE(変数1または文字列,変数2)                        4334
  9274.       FILETIME(変数1,変数2または文字列)                        4357
  9275.       FILER(ファイル名,変数)                                   4381
  9276.       FILER(ファイル名,変数,ラベル)                            4381
  9277.       FLHA(変数1 or 文字列1,変数2 or 文字列2,変数3 or 文字列3) 4432
  9278.       FLINE(ファイル名,変数)                                   4481
  9279.       FLINE(ファイル名,変数,ラベル)                            4481
  9280.       FMOVE(変数1または文字列1,変数2または文字列2)             4519
  9281.       FOPEN(ファイル名)                                        4580
  9282.       FOPEN(ファイル名,ラベル)                                 4580
  9283.       FPOINT(変数1)                                            4615
  9284.       FPOINT(変数1,変数2または文字列)                          4615
  9285.       FREAD(変数名)                                            4666
  9286.       FREAD(変数名,ラベル)                                     4666
  9287.       FREN(変数1または文字列1,変数2または文字列2)              4705
  9288.       FRENAME(変数または文字列)                                4739
  9289.       FSEARCH(変数1,変数2)                                     4761
  9290.       FSPLIT(変数1,変数2,変数3)                                4784
  9291.       FTYPE(変数1または文字列1,変数2または文字列2)             4816
  9292.       FTYPEA(変数1または文字列1,変数2または文字列2)            4853
  9293.       GETDATAD(変数)                                           4967
  9294.       GETDIR(変数,変数または文字列)                            4986
  9295.       GETDOWND(変数)                                           5020
  9296.       GETID(変数)                                              5066
  9297.       GETLOGD(変数)                                            5084
  9298.       GETMACROD(変数)                                          5103
  9299.       GETMACROD(変数,変数2)                                    5103
  9300.       GETMRES(変数)                                            5132      [9300]
  9301.       GETTXUPD(変数)                                           5196
  9302.       GETUPD(変数)                                             5215
  9303.       GETUSERD(変数1,変数2または文字列)                        5234
  9304.       GETUSERD(変数1,変数2または文字列,変数3または文字列)      5234
  9305.       LOGCLOSE                                                 6379
  9306.       LOGOPEN(変数または文字列)                                6394
  9307.       MKDIR(変数または文字列)                                  6710
  9308.       OCLOSE                                                   6831
  9309.       OOPEN(ファイル名)                                        6848
  9310.       OOPEN(ファイル名,ラベル)                                 6848
  9311.       OPENCHK(変数,文字列または変数名)                         6884
  9312.       OREAD(変数名)                                            6924
  9313.       OREAD(変数名,ラベル)                                     6924
  9314.       RCLOSE                                                   7210
  9315.       ROPEN(ファイル名)                                        7282
  9316.       ROPEN(ファイル名,ラベル)                                 7282
  9317.       RPOINT(変数1)                                            7318
  9318.       RPOINT(変数1,変数2または文字列)                          7318
  9319.       RREAD(変数名)                                            7370
  9320.       RREAD(変数名,ラベル)                                     7370
  9321.       SAVEWDAT(変数1,変数2または文字列,変数3または文字列)      7401
  9322.       SAVEW5B(変数1または文字列1,変数2または文字列2,変数3)     7474
  9323.       SAVEW5D(変数1または文字列1,変数2または文字列2,変数3)     7502
  9324.       TAPPEND(ファイル名)                                      7874
  9325.       TAPPEND(ファイル名,ラベル)                               7874
  9326.       TCLOSE                                                   7910
  9327.       TOPEN(ファイル名)                                        8036
  9328.       TOPEN(ファイル名,ラベル)                                 8036
  9329.       WAPPEND(ファイル名)                                      8761
  9330.       WAPPEND(ファイル名,ラベル)                               8761
  9331.       WCLOSE                                                   8801
  9332.       WOPEN(ファイル名)                                        8865
  9333.       WOPEN(ファイル名,ラベル)                                 8865
  9334.       WRITE(変数名)                                            8908
  9335.       WRITE(変数名,ラベル)                                     8908
  9336.       WRITELOG(変数または文字列)                               8938
  9337.  
  9338.  
  9339.    3. キーボード入力関係コマンド
  9340.   ------------------------------------------------------------------------
  9341.  
  9342.       ESCEXIT(ON,OFF)                                          4022
  9343.       INPUT(変数1)                                             5701
  9344.       INPUT(変数1,変数2または文字列2)                          5701
  9345.       INPUT(変数1,変数2または文字列2,変数3または文字列3)       5701
  9346.       INPUTF(変数,文字列)                                      5827
  9347.       INPUTF(変数,文字列1,文字列2)                             5827
  9348.       NJUMP(変数または文字列,ラベル)                           6784
  9349.       PAUSE                                                    6964
  9350.       PAUSE(変数または文字列)                                  6964      [9350]
  9351.       PAUSE(変数1または文字列1,変数2または文字列2)             6964
  9352.       SMENU(変数1,変数2,変数3)                                 7614
  9353.       YJUMP(変数または文字列,ラベル)                           8964
  9354.  
  9355.  
  9356.  
  9357.    4. 画面表示関係コマンド                                             
  9358.   ------------------------------------------------------------------------
  9359.  
  9360.       BLINK(色指定,BLINK回数,間隔)                             3001
  9361.       CLS                                                      3345
  9362.       COLOR(変数)                                              3360
  9363.       CRT(ON,OFF)                                              3476
  9364.       GETCRTS(変数,変数2または文字列)                          4947
  9365.       MASKCRT(ON,OFF)                                          6637
  9366.       PRINT(変数または文字列)                                  7081
  9367.       PRINT(変数1または文字列1,変数2または文字列2)             7081
  9368.       PRINTCR(変数または文字列)                                7121
  9369.       PRINTCR(変数1または文字列1,変数2または文字列2)           7121
  9370.  
  9371.  
  9372.  
  9373.    5. 数値操作関数
  9374.   ------------------------------------------------------------------------
  9375.  
  9376.       ADD(変数1,変数2または文字列2,変数3または文字列3)         2898
  9377.       DIV(変数1,変数2 or 文字列2,変数3 or 文字列3)             3854
  9378.       MOD(変数1,変数2または文字列2,変数3または文字列3)         6732
  9379.       MUL(変数1,変数2または文字列2,変数3または文字列3)         6762
  9380.       SUB(変数1,変数2または文字列2,変数3または文字列3)         7776
  9381.  
  9382.  
  9383.  
  9384.    6. 文字列操作関数
  9385.   ------------------------------------------------------------------------
  9386.  
  9387.       APS(変数,全長数,R(ight右寄せ) か L(eft左寄せ))           2925
  9388.       CAT(変数1,変数2または文字列1)                            3087
  9389.       CAT(変数1,変数2または文字列1,変数3または文字列2)         3087
  9390.       CHANGE(変数1,置換前文字列または変数2,変数3)              3159
  9391.       CHANGE2(変数,置換前文字列または変数2,変数3)              3198
  9392.       COPY(変数または文字列,指定開始数値,複写終了文字数数値)   3441
  9393.       DEL(変数,削除開始数値,削除文字分数数値)                  3680
  9394.       DELSPACE(変数1,変数2)                                    3770
  9395.       INS(変数1,挿入開始数値,挿入文字列または変数2)            5878
  9396.       ISKANJI(文字列または変数1,変数2または文字列2,変数3)      5901
  9397.       LEFT(変数1,左側よりカット指定(文字数または変数2))        6323
  9398.       LEFT(変数1,左側よりカット指定(文字数または変数2),変数3)  6323
  9399.       LENGTH(変数1,変数2)                                      6360
  9400.       LOWCASE(変数1,変数2)                                     6536      [9400]
  9401.       MAKERB(変数1,変数2)                                      6587
  9402.       PICKWORD(変数1,変数2,変数3または文字列3[区切り文字])     7010
  9403.       POS(変数1,変数2または文字列,検索文字)                    7051
  9404.       RIGHT(変数1,右側よりカット指定(文字数または変数2))       7245
  9405.       RIGHT(変数1,右側よりカット指定(文字数または変数2),変数3) 7245
  9406.       STRCAT(変数,変数または文字列)                            7747
  9407.       STRCAT(変数1,変数2または文字列2,変数3または文字列3)      7747
  9408.       TABSPACE(変数1)                                          7863
  9409.       UPCASE(変数1,変数2)                                      8062
  9410.  
  9411.  
  9412.  
  9413.    7. 日時操作関連                                                       
  9414.   ------------------------------------------------------------------------
  9415.  
  9416.       DATE(変数,区分挿入文字列[任意])                          3555
  9417.       DATEADD(変数1,区分挿入文字列(任意),変数2または文字列)    3593
  9418.       DATESUB(変数1,区分挿入文字列(任意),変数2または文字列)    3633
  9419.       LAPTIME(変数1,変数2)                                     6076
  9420.       LASTDATE(変数,区分挿入文字列[任意])                      6200
  9421.       LASTTIME(変数,区分挿入文字列[任意])                      6241
  9422.       LASTSTIME(変数,区分挿入文字列[任意])                     6282
  9423.       LOGTIME(変数,区分挿入文字列[任意])                       6393
  9424.       SETTIME                                                  7496
  9425.       TIME(変数,区分挿入文字列[任意])                          7952
  9426.       TIMED(ON,OFF)                                            7980
  9427.       WEEK(変数)                                               8817
  9428.       WEEK(変数1,変数2または文字列)                            8817
  9429.  
  9430.  
  9431.  
  9432.    8. 変数および待避変数関連
  9433.   ------------------------------------------------------------------------
  9434.  
  9435.       VCLEAR                                                   8191
  9436.       VCLEAR(文字列[変数名])                                   8191
  9437.       VCLEAR(文字列1[変数名1],文字列2[変数名2])                8191
  9438.       VCLEAR2                                                  8142
  9439.       VCLEAR2(文字列[変数名])                                  8142
  9440.       VCLEAR2(文字列1[変数名1],文字列2[変数名2])               8142
  9441.       VLIST                                                    8321
  9442.       VSWAP(変数1,変数2)                                       8346
  9443.       VTACHG                                                   8422
  9444.       VTCLEAR                                                  8444
  9445.       VTCLEAR(文字列[変数名])                                  8444
  9446.       VTCLEAR(文字列1[変数名1],文字列2[変数名2])               8444
  9447.       VTCOPY                                                   8496
  9448.       VTCOPY(文字列[変数名])                                   8496
  9449.       VTCOPY(文字列1[変数名1],文字列2[変数名2])                8496
  9450.       VTLIST                                                   8554      [9450]
  9451.       VTOCHG(変数1,文字列[変数名])                             8582
  9452.       VTOCHG2(文字列[変数名])                                  8605
  9453.       VTOCHG2(文字列1[変数名1],文字列2[変数名2])               8605
  9454.       VTSWAP(文字列1[変数名1],文字列2[変数名2])                8664
  9455.  
  9456.  
  9457.  
  9458.    9. その他
  9459.   ------------------------------------------------------------------------
  9460.  
  9461.       BELL(文字列または変数,文字列または変数,文字列または変数) 2981
  9462.       CASE                                                     3077
  9463.       CDCHK(ON,OFF)                                            3117
  9464.       COMMODE(文字列)                                          3389
  9465.       CONVERT(ON,OFF)                                          3420
  9466.       DELAY(文字列または変数)                                  3710
  9467.       DELAY(文字列または変数)                                  3728
  9468.       ELSE                                                     4003
  9469.       EXIT                                                     4047
  9470.       EXIT(変数1または文字列1)                                 4047
  9471.       EXIT(変数1または文字列1,変数2または文字列2)              4047
  9472.       GETCRTS(変数,変数2または文字列)                          4947
  9473.       GETENV(変数,変数または文字列)                            5039
  9474.       HANGUP                                                   5386
  9475.       HANGUPT(文字列または変数)                                5401
  9476.       HANGUPT(文字列または変数,ラベル)                         5401
  9477.       MACROVER(変数)                                           6556
  9478.       MDUMP(変数または文字列)                                  6659
  9479.       MDUMP(変数または文字列,変数 2または文字列)               6659
  9480.       OFF                                                      6819
  9481.       PRINTER(ON,OFF)                                          7160
  9482.       QUIT                                                     7184
  9483.       TELFEE(変数1,変数2)                                      7923
  9484. ===============================================================================
  9485.       
  9486.       
  9487.       
  9488.       
  9489.       
  9490.       
  9491.       
  9492.  
  9493.  
  9494.  
  9495.  
  9496.  
  9497.  
  9498.  
  9499.  
  9500.                                                                          [9500]
  9501. ===============================================================================
  9502. 【第14章】  WTERM の使用者の方へ、また再配布される方へ      
  9503. ===============================================================================
  9504.  
  9505.    1. WTERM は、フリーソフトウェアです。
  9506.  
  9507.    2. 著作権者は、使用者に対して通常使用に際しての、一切の金品の受託を求め
  9508.       ません。
  9509.  
  9510.    3. 配布は、圧縮ファイルの内容を一切改変せず、オリジナルの内容で行って下
  9511.       さい。
  9512.       また、圧縮形態変更(LZH 形式を、自己解凍型EXE にする等)は禁止します。
  9513.       中身のタイムスタンプの変更なども、これに準じます。
  9514.                                                                          
  9515.    4. 利益をあげることが目的でない限り、本ソフトを再配布・転載することは自
  9516.       由です。
  9517.       またパソコン通信上にての、配布に関して、著作権者の承諾等は、基本的に
  9518.       は不用です。                                                      
  9519.       それ以外の営利以外の目的(知人に渡す等)での配布の場合、メディア代、
  9520.       郵送料等の実費弁済の範囲を逸脱する金銭の授受が行われることを禁じます。
  9521.       なお、営利団体もしくはそれに準ずると解釈できうる、会員を目的としたフ
  9522.       リーソフトウェアの配布組織/団体においてWTERM の配布をされる事は、著
  9523.       作権者が許可をしない限りにおいては固くお断りいたします。ある団体にお
  9524.       いては、許可申請メールを他の人が転送して私の所に来ます。それくらい責
  9525.       任者が直接コンタクトしてほしいものです。この場合、回答を拒否しました
  9526.       ので、許可と解釈して再配布しないでほしいと思います)
  9527.  
  9528.    5. 雑誌等に、WTERM の内容を紹介される場合は、事前に著作権者に連絡する必
  9529.       要はありません。
  9530.       WTERM の動作画面等を使用される場合は、使用する旨をお知らせください。
  9531.       またその際には、文中に著作権の明示をしてください。
  9532.                                                                          
  9533.    6. 雑誌添付の、FD(フロッピーディスク)や、CD-ROM/MO(光ディスク)に、
  9534.       納める場合は、著作権者に許可を得てください。
  9535.       場合によっては、簡単な添付に関する文章を取り交わしておりますのでお願
  9536.       いいたします。
  9537.       また、添付の場合は、その時点の最新版 WTERM と WTERM.DOC(WTDOC.LZH)
  9538.       の一括でお願いしたいところですが、サイズ的に、本体だけ添付にしたい場
  9539.       合もあろうと思います。その際も事前に御連絡ください。
  9540.       また掲載誌につきましては、献本をお願いいたします。
  9541.                                                                          
  9542.    7. 許可なく販促物(販売促進の為の代償として付加する物)として配布しない
  9543.       でください。添付や配布に関しては、著作権者と添付に関する文章を取り交
  9544.       わしておりますので、お願いいたします。
  9545.  
  9546.    8. 営業行為もしくは、営利目的等の使用の場合(添付も含める)、企業が営業
  9547.       行為の中で(無料であるなしに関わらず)、WTERM を添付もしくは 2次利用
  9548.       する場合は、著作権者に文書等において許可を得てください。添付や配布に
  9549.       関しては、著作権者と添付に関する文章を取り交わしております。
  9550.                                                                          [9550]
  9551.    9. WTERM.DOC と、WMACRO.DOCを切り放して別々にして配布する事は、御遠慮く
  9552.       ださい。
  9553.  
  9554.   10. WTERM .DOC/WMACRO.DOCの内容を、一部、又はそのまま出版物等に記載/抜
  9555.       粋転記される場合は、必ず事前に文書等において著作権者の承諾を求めてく
  9556.       ださい。                                  
  9557.  
  9558.   11. WTERM を使用して、店頭での製品デモ使用、ショー等のデモ等の使用は、御
  9559.       自由に、これといって制限もありません。
  9560.                                                                          
  9561.  
  9562.   著作権者の連絡先は、NIFTY-Serve のSDI00598です。
  9563.  
  9564.   御用件は、電子メールにて送ってください。
  9565.  
  9566.   なお、WTERM が、Version UPした場合、できましたら転載者は、新しいWTERM の
  9567.   再転載をおねがいいたします。 
  9568.  
  9569.  
  9570.  
  9571.  
  9572.  
  9573.  
  9574.  
  9575.  
  9576.  
  9577.  
  9578.  
  9579.  
  9580. ===============================================================================
  9581. 【第16章】  免責事項
  9582. ===============================================================================
  9583.  
  9584.    1. 著作権者は、WTERM に関して一切の動作保証はいたしません。
  9585.  
  9586.    2. 著作権者は、WTERM の瑕疵および、使用により生じた障害に関して、一切の
  9587.       直接もしくは間接的損害については、責を負いません。
  9588.  
  9589.    3. 著作権者は、WTERM 及びそのドキュメントに不備があっても、訂正する義務
  9590.       は負いません。
  9591.  
  9592.    4. 著作権者は、WTERM の動作確認を行なって配布していますが、フリーソフト
  9593.       ウェアとしての性質上、使用者からのWTERM 及びそのドキュメントの改修等
  9594.       の要請に応じる義務はありません。                                   
  9595.  
  9596.    5. 著作権者は、WTERM の各種通常動作においての致命的な不都合においての修
  9597.       正はいたしますが、不都合を完全に修復することの責務は負いません。
  9598.  
  9599.                                                                          
  9600.                                                                          [9600]
  9601.  
  9602.  
  9603.  
  9604.  
  9605.  
  9606.  
  9607.  
  9608.  
  9609.  
  9610.  
  9611.  
  9612.  
  9613.  
  9614.  
  9615. ===============================================================================
  9616. 【第17章】  著作権について 
  9617. ===============================================================================
  9618.  
  9619.  
  9620.      本ドキュメントには著作権が有ります。
  9621.  
  9622.        WMACRO.DOC   Copyright (C) 1990,97  H.INOUE
  9623.  
  9624.  
  9625.  
  9626.  
  9627.  
  9628.  
  9629.  
  9630.  
  9631.  
  9632.  
  9633.  
  9634.  
  9635.  
  9636.  
  9637.  
  9638.  
  9639.  
  9640.  
  9641.  
  9642.  
  9643.  
  9644.  
  9645.  
  9646.  
  9647.  
  9648.  
  9649.  
  9650.                                                     1997-02-08         H.INOUE