home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / comm / envoy100.zip / MANUAL < prev    next >
Text File  |  1990-03-15  |  115KB  |  2,496 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.                                TABLE OF CONTENTS
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.                                                           Page
  19.      
  20.            1.   Introduction
  21.                                                             2
  22.            2.   Fast Start
  23.            2.1     Use the Editor                           3
  24.            2.2     Call another computer
  25.            2.3     Execute a Line command
  26.            2.4     Assign commands to a key
  27.      
  28.            3.   Key Command Summary                         5
  29.      
  30.            4.   Command Files                              11
  31.      
  32.            5.   Initialization                             13
  33.      
  34.            6.   Line Command Definitions                   14
  35.      
  36.            7.   Character Codes and Keyboard Scan Codes    39
  37.            7.1     ASCII Character Codes
  38.            7.2     IBM Keyboard Scan Codes
  39.            7.3     IBM Extended Keyboard Scan Codes
  40.      
  41.            8.   Registration Information                   43
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.                             1  INTRODUCTION
  52.  
  53.  
  54.  
  55.  
  56.     ENVOY is a communications program which includes a full featured text
  57. editor, a powerful script file language, completely redefinable keys, help
  58. screens, and a menu-driven user interface.
  59.  
  60.     ENVOY will run on any IBM PC or compatible, including the IBM PC, PCjr,
  61. AT, XT or PS 2 and can use any modem.  192 Kilobytes of memory is required to
  62. run the program.
  63.  
  64.     The ENVOY editor can edit text files larger than 64 Kilobytes.  The size of
  65. an edit file is limited only by the amount of available memory.  Similarly, the
  66. amount of text which can be captured is limited only by the amount of available
  67. memory.  Captured text can be viewed and edited before being written to disk.
  68. You can edit and save captured text even after you have disconnected from the
  69. remote computer.
  70.  
  71.     ENVOY supports file transfers at baud rates up to 9600 bps.  ASCII file
  72. transfer is supported as well as the XMODEM and YMODEM file transfer protocols.
  73. ENVOY supports variants of the commonly used XMODEM protocol, including checksum
  74. or CRC error checking and packet lengths of 128 bytes or 1 Kilobyte.
  75.  
  76.     ENVOY can function as a terminal and remote text editor over most networks.
  77. However, some networks use XON/XOFF control characters which defeat the XMODEM
  78. and YMODEM protocols.  ENVOY can transfer text files, but not binary files, over
  79. these networks.
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.                             2  FAST START
  90.  
  91.  
  92.  
  93. 2.1  Use the Editor
  94.  
  95.   The fastest way to learn to use ENVOY is to just start using it.  Start the
  96.   program by typing 'ENVOY'.  Read in a text file by pressing the F3 key and
  97.   entering a file name at the prompt.  Now refer to the key command summary in
  98.   section 3 and edit the file.  The ENVOY editor is easy to use and so it
  99.   shouldn't take long to become familiar with the commands.  Practice marking
  100.   blocks of text and then moving or deleting the blocks.  Practice reading and
  101.   writing files.
  102.  
  103.   Press the alt-h key to see the Envoy help screens.  The help screens briefly
  104.   describe how to use Envoy and give definitions of all the Envoy key commands.
  105.   Pressing the alt-h key or entering the line command 'HELP' displays the
  106.   titles of the help screens which are available. Choose the topic you want by
  107.   using the up and down arrow keys.  Then press the enter key.  You can scroll
  108.   through the help screen using the up, down, PgUp, and PgDn keys.
  109.  
  110.   Press the alt-m key or enter the line command 'MENU' to use the Envoy menu.
  111.   The menu lets you choose the most important options.
  112.  
  113.   If your computer doesn't have one of the keys which executes a command which
  114.   you need you can probably refer to your owner's manual and find a combination
  115.   of keystrokes which will enter the same scan codes.  The most common
  116.   incompatibility is that many keyboards have only 10 function keys.  Enter
  117.   Shift-F1 for F11, Shift-F2 for F12, etc.  Later, you might want to re-assign
  118.   some of the key commands with MACRO definitions.
  119.  
  120.  
  121. 2.2  Call another computer
  122.  
  123.   When you are familiar with the editor commands you are ready to use ENVOY as a
  124.   terminal.  Here are the steps to log on to a remote computer :
  125.  
  126.         -Make sure that your computer has either an internal or external modem.
  127.          If you have an external modem check that it is turned on.  The serial
  128.          port which is connected to the modem is referred to as COM n, where n
  129.          is usually either 1 or 2.  Find out the serial port number from
  130.          someone who is familiar with the setup.
  131.  
  132.         -Find out the telephone number of the remote computer.
  133.  
  134.         -Find out the communications parameters for the remote computer.  You
  135.          need to know the baud rate(usually 300 or 1200), the Parity setting
  136.          (either Even, Odd, or None), the number of data bits(either 7 or 8)
  137.          and the number of stop bits(usually 1).
  138.  
  139.         -Bulletin board listings give these parameters in abbreviated form.  For
  140.          instance, 300/1200 E-8-1 means that you can use either 300 or 1200 baud
  141.          when calling the system and the other parameters are: Even parity,
  142.          8 data bits, and 1 stop bit.
  143.  
  144.         -Now press the alt-m key to see the ENVOY menu.  Press 3 to set the
  145.          communications parameters.  Enter the communications parameters for the
  146.          computer you want to call.  Leave the Duplex setting at Full Duplex for
  147.          now.  Change to Full Duplex later if you see doubled characters on the
  148.          screen.
  149.  
  150.         -Now press the F11 key.  If you don't have a F11 key press Shift-F1.
  151.          This puts ENVOY on line so that every character you type is sent to
  152.          the modem.
  153.  
  154.         -Now dial the remote computer.  If you have a Hayes compatible modem
  155.          type in AT DP 123-4567 <Enter> to dial telephone number 123-4567.  The
  156.          prefix AT DP is a command to the modem : ATtention ! Dial Pulse.  If
  157.          your phone system supports touch tone dialing use the command AT DT
  158.          123-4567.
  159.  
  160.         -The remote computer will then answer and prompt you for information.
  161.  
  162.         -When you are done Press F12 to go off line.
  163.  
  164.   Dialing will be much easier after you customize an ENVOY command file to
  165.   manage the call for you.  You will be able to go on-line and dial by pressing
  166.   a single key.
  167.  
  168.  
  169. 2.3  Execute a Line command
  170.  
  171.   Any ENVOY operation can be executed from the command line.  Section 6 gives
  172.   the definitions of all of the ENVOY operations.  Here is an example of how to
  173.   execute a Line Command :
  174.  
  175.         -Press the Escape key.  ENVOY will prompt you for a line command.
  176.  
  177.         -Type in the word "Beep" and then press Enter.
  178.  
  179.         -You will hear a short beep.
  180.  
  181.         -ENVOY will prompt you for another command.  Press Enter to return to
  182.          the editor.
  183.  
  184.  
  185. 2.4  Assign commands to a key
  186.  
  187.   You can assign commands to any key you wish.  For instance, you can
  188.   reconfigure the ENVOY editor keys to match your favorite editor.  You can also
  189.   assign a complex set of instructions to a single key or you can execute an
  190.   entire command file by pressing a single key.
  191.  
  192.  
  193.   You assign commands to a key with the MACRO command.  Here is an example of
  194.   how to use the MACRO command :
  195.  
  196.         -Press the Alt-a key.  This won't do anything at all because ENVOY
  197.          doesn't assign a default command to this key when it starts up.
  198.  
  199.         -Look at the ENVOY information line.  You see that the key number of
  200.          the Alt-a key is 286.  You could also look up the key number in
  201.          Table 7.3.
  202.  
  203.         -Now press the Escape key.  ENVOY will prompt you for a line command.
  204.  
  205.         -Type in the following line and then press the Enter key :
  206.  
  207.            Macro 286#Delay 5 .5#Beep#Pause 1.#Delay 5 .1#Beep
  208.  
  209.         -ENVOY will prompt you for another command.  Press the Enter key to
  210.          return to the editor.
  211.  
  212.         -Now press the Alt-a key.  You will hear a long beep, a 1 second pause,
  213.          and then a short beep. 
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.                             3  KEY COMMAND SUMMARY
  222.  
  223.  
  224. The following table gives the Envoy default key commands.  These key commands
  225. are simply MACRO strings which are assigned at startup.  The table gives the
  226. key, the MACRO command, the key scan code, and a description of what Envoy will
  227. do when you press the key.  Note that whenever the table shows a * character in
  228. a MACRO definition Envoy will prompt you for a parameter.
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.                         KEY COMMAND SUMMARY
  236.  
  237. |------------------------------------------------------------------------------|
  238. | Key         MACRO       Scan Code             Description                    |
  239. |------------------------------------------------------------------------------|
  240. |                                                                              |
  241. | Backspace   Backspace       8 Move the cursor to the left and delete the     |
  242. |                               character at that position.  Press the         |
  243. |                               Backspace key to correct typing mistakes.      |
  244. |                                                                              |
  245. | Tab Right   Go TabRight     9 Go right to the next Tab position.             |
  246. |                                                                              |
  247. | Enter       Enter          13 Move the cursor to the start of the next line  |
  248. |                               or to a position which you defined with the    |
  249. |                               alt-t key.  In Insert mode a new line is       |
  250. |                               inserted before moving down.                   |
  251. |                                                                              |
  252. | Escape      DoLine         27 After you press the Escape Key ENVOY will      |
  253. |                               prompt you for a line command.  The line       |
  254. |                               command is executed just as it would be from a |
  255. |                               command file.                                  |
  256. |                                                                              |
  257. | Tab Left    Go TabLeft    271 Go left to the next Tab position.              |
  258. |                                                                              |
  259. | Alt-q       Quit          272 Quit the program.                              |
  260. |                                                                              |
  261. | Alt-r       Replace * * * 275 Find and replace a character string.  ENVOY    |
  262. |                               will prompt you for the character string you   |
  263. |                               wish to find, for the new character string, and|
  264. |                               for search options.                            |
  265. |                                                                              |
  266. |                               When the program prompts you, enter the        |
  267. |                               options you want in any order.  Press the      |
  268. |                               Enter key if you don't want special search     |
  269. |                               options.                                       |
  270. |                                                                              |
  271. |                               Unless you specify the Y option, ENVOY will    |
  272. |                               ask you before replacing a string.             |
  273. |                                                                              |
  274. |                               Find and Replace Options  :                    |
  275. |                                    B  Search In Block                        |
  276. |                                    G  Global Search                          |
  277. |                                    U  Ignore Upper/Lower Case                |
  278. |                                    n  Replace n Occurrences                  |
  279. |                                    Y  Replace Without Asking                 |
  280. |                                                                              |
  281. |                               For example, B10Y tells ENVOY to search in the |
  282. |                               blocked region for ten occurrences of the      |
  283. |                               Search string and replace it with the new      |
  284. |                               string without asking.                         |
  285. |                                                                              |
  286. |------------------------------------------------------------------------------|
  287.          
  288.  
  289.  
  290.  
  291.  
  292.  
  293.                         KEY COMMAND SUMMARY
  294.  
  295. |------------------------------------------------------------------------------|
  296. | Key         MACRO       Scan Code             Description                    |
  297. |------------------------------------------------------------------------------|
  298. |                                                                              |
  299. | Alt-t       Retpos        276 Set the Return Position to the current cursor  |
  300. |                               position.  When you press the Enter key the    |
  301. |                               cursor will go to the Return Position instead  |
  302. |                               of to column 1.                                |
  303. |                                                                              |
  304. | Alt-d       Clear Line    288 Delete the current line.                       |
  305. |                                                                              |
  306. | Alt-f       Find * *      289 ENVOY will prompt you for the character string |
  307. |                               you wish to find and for search options.       |
  308. |                                                                              |
  309. |                               When the program prompts you, enter any        |
  310. |                               options you want in any order.                 |
  311. |                                                                              |
  312. |                               Find Options  :                                |
  313. |                                    B  Search In Block                        |
  314. |                                    G  Global Search                          |
  315. |                                    U  Ignore Upper/Lower Case                |
  316. |                                    n  Find the n'th Occurrence               |
  317. |                                                                              |
  318. |                               For example, B10 tells ENVOY to search in the  |
  319. |                               blocked region for the tenth occurrence of the |
  320. |                               character string.                              |
  321. |                                                                              |
  322. | alt-j       Joinline      292 Join the current line to the previous line.    |
  323. |                                                                              |
  324. | alt-b       Breakline     304 Break the current edit line at the cursor      |
  325. |                               position.                                      |
  326. |                                                                              |
  327. | Alt-n       Repeat        305 Repeat the last Find or Find and Replace       |
  328. |                               operation.                                     |
  329. |                                                                              |
  330. | alt-m       Menu          306 Show the ENVOY menu.                           |
  331. |                                                                              |
  332. | Func  1     Block Top     315 Mark the beginning of a Block region.  The     |
  333. |                               current cursor position becomes the start      |
  334. |                               of a block.                                    |
  335. |                                                                              |
  336. | Func  2     Block End     316 Mark the end of a Block region.  The current   |
  337. |                               cursor position becomes the end of a block.    |
  338. |                                                                              |
  339. | Func  3     ReadFile *    317 Read a new edit file.  ENVOY will prompt you   |
  340. |                               for the file name and then read the file into  |
  341. |                               memory so that you can edit it.  If you are    |
  342. |                               working on a file in memory, save it before    |
  343. |                               you read a new file or else you will lose all  |
  344. |                               of the changes which you have made.            |
  345. |                                                                              |
  346. |------------------------------------------------------------------------------|
  347.       
  348.  
  349.  
  350.  
  351.  
  352.  
  353.                         KEY COMMAND SUMMARY
  354.  
  355. |------------------------------------------------------------------------------|
  356. | Key         MACRO       Scan Code             Description                    |
  357. |------------------------------------------------------------------------------|
  358. |                                                                              |
  359. | Func  4     WriteFile *   318 Write the edit file to disk.  ENVOY will prompt|
  360. |                               you for the name of the file you wish to write.|
  361. |                               You may enter a full directory path name,      |
  362. |                               such as C:\MINE\FILE.TXT.  If you just press   |
  363. |                               the Enter key to enter a blank file name,      |
  364. |                               ENVOY will overwrite the current edit file.    |
  365. |                               The name of the current edit file is shown on  |
  366. |                               the ENVOY information line.                    |
  367. |                                                                              |
  368. | Func  5     Block Copy    319 Copy the blocked region to the current         |
  369. |                               position.  If lines are blocked, the lines are |
  370. |                               inserted below the current line.  The existing |
  371. |                               lines are moved down.  If a region is blocked, |
  372. |                               the block is copied to the current cursor      |
  373. |                               position.  Existing text is moved to the right |
  374. |                               to make room.                                  |
  375. |                                                                              |
  376. | Func  6     Block Move    320 Move the blocked region to the current         |
  377. |                               position.  If lines are blocked, the lines are |
  378. |                               inserted below the current line.  The existing |
  379. |                               lines are moved down. If a region is blocked,  |
  380. |                               the block is moved to the current cursor       |
  381. |                               position. Existing text is moved to the right  |
  382. |                               to make room.                                  |
  383. |                                                                              |
  384. | Func  7     Block Clear   321 The blocked region is deleted.                 |
  385. |                                                                              |
  386. | Func  8     Block Read *  322 ENVOY will prompt you for a file name.  The    |
  387. |                               file will be read into the current file at the |
  388. |                               current position.  The new text will be marked |
  389. |                               as a blocked region.                           |
  390. |                                                                              |
  391. | Func  9     Block Write * 323 ENVOY will prompt you for a file name.  The    |
  392. |                               blocked region will be written to the file you |
  393. |                               name.                                          |
  394. |                                                                              |
  395. | Func 10     Block Lines   324 ENVOY can be set to mark either lines or       |
  396. |                               regions.  Block regions,(default) if you want  |
  397. |                               to move words, insert or delete columns, etc.  |
  398. |                               Block lines to move paragraphs around in the   |
  399. |                               file.                                          |
  400. |                                                                              |
  401. | Home        Go TopFile    327 The cursor will move to the start of the first |
  402. |                               line in the edit file.                         |
  403. |                                                                              |
  404. |------------------------------------------------------------------------------|
  405.       
  406.  
  407.  
  408.  
  409.  
  410.  
  411.                         KEY COMMAND SUMMARY
  412.  
  413. |------------------------------------------------------------------------------|
  414. | Key         MACRO       Scan Code             Description                    |
  415. |------------------------------------------------------------------------------|
  416. |                                                                              |
  417. | Up Arrow    Go Up         328 The cursor will move up one line in the edit   |
  418. |                               file.                                          |
  419. |                                                                              |
  420. | Page Up     Go UpPage     329 The cursor will move up to display a full      |
  421. |                               screen of new text.                            |
  422. |                                                                              |
  423. | Left Arrow  Go Left       331 The cursor will move left one column.          |
  424. |                                                                              |
  425. | Right Arrow Go Right      333 The cursor will move right one column.         |
  426. |                                                                              |
  427. | End         Go EndFile    335 The cursor will move to the end of the last    |
  428. |                               line of the edit file                          |
  429. |                                                                              |
  430. | Down Arrow  Go Down       336 The cursor will move down one line.            |
  431. |                                                                              |
  432. | Page Down   Go DownPage   337 The cursor will move down to display a full    |
  433. |                               screen of new text.                            |
  434. |                                                                              |
  435. | Insert Key  InsertMode    338 In insert mode characters are inserted into    |
  436. |                               the line at the cursor position and the rest   |
  437. |                               of the line is shifted to the right.  In       |
  438. |                               overwrite mode any character already at the    |
  439. |                               cursor position is over-written.  Press the    |
  440. |                               Insert key to change from Insert mode to       |
  441. |                               Overwrite mode and back.  The current setting  |
  442. |                               is shown on the ENVOY display line.            |
  443. |                                                                              |
  444. | Delete Key  Clear Char    339 Delete the character at the cursor position.   |
  445. |                                                                              |
  446. | Shift F1    On            340 Go on-line.  This opens the communications     |
  447. |                               port so that you can communicate with a remote |
  448. |                               computer.                                      |
  449. |                                                                              |
  450. | Shift F2    Off           341 ENVOY goes off line and returns to edit mode.  |
  451. |                                                                              |
  452. | Shift F3    Dial          342 Dial a phone number.                           |
  453. |                                                                              |
  454. | Shift F4    Xget *        343 Receive a binary file.                         |
  455. |                                                                              |
  456. | Shift F5    XSend *       344 Send a binary file.                            |
  457. |                                                                              |
  458. |------------------------------------------------------------------------------|
  459.   
  460.  
  461.  
  462.  
  463.  
  464.                         KEY COMMAND SUMMARY
  465.  
  466. |------------------------------------------------------------------------------|
  467. | Key         MACRO       Scan Code             Description                    |
  468. |------------------------------------------------------------------------------|
  469. |                                                                              |
  470. | ^Right arr  Go TopLine    371 Go to the start of the current edit line.      |
  471. |                                                                              |
  472. | ^Left arr   Go EndLine    372 Go to the last character of the current edit   |
  473. |                               line.                                          |
  474. |                                                                              |
  475. | ^End        Clear EndLine 373 Delete all the characters from the cursor      |
  476. |                               position to the end of the current edit line.  |
  477. |                                                                              |
  478. | ^PgDn       Go EndBlock   374 Go to the end of the blocked region.           |
  479. |                                                                              |
  480. | ^PgUp       Go TopBlock   388 Go to the start of the blocked region.         |
  481. |                                                                              |
  482. |------------------------------------------------------------------------------|
  483.      
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.                             4  COMMAND FILES
  491.  
  492. You can set up a command file to reconfigure the ENVOY editor or to manage your
  493. call to a remote computer.  The ENVOY commands IF, ELSE and JUMP enable you to
  494. set up a command file which will prompt you for information and  act on that
  495. information.  You can set up a command file which will try to call another
  496. computer several times before giving up or one which will try several bulletin
  497. boards and give you control when it finds one that isn't busy.  You can even set
  498. up a menu driven auto-dialer for voice communications.
  499.  
  500. A command file consists of a series of ENVOY line commands.  The commands are
  501. executed in just the same way as if you had entered them from the ENVOY command
  502. line or had assigned the commands to keyboard keys with the MACRO command and
  503. then pressed the MACRO keys.
  504.  
  505. Execute a command file by entering the command DO filespec, where filespec is
  506. the DOS file name and can include a complete directory path.  If you don't enter
  507. a directory path, ENVOY will look for the file in the current directory.  If the
  508. file isn't in the current directory, ENVOY will look in the ENVOY directory.
  509. You can define the ENVOY directory before you start the ENVOY program by
  510. entering the DOS command SET ENVOY=pathname, where pathname is the complete path
  511. to the ENVOY directory.  You can put the SET command in your Autoexec.Bat file
  512. so that the ENVOY directory is defined every time you start your PC.
  513.  
  514. You can pass up to two parameters to a command file.  The first parameter
  515. replaces every occurrance of %P1 in the command file and the second parameter
  516. replaces every occurrance of %P2.  The commands in the command file are then
  517. executed normally.  You can use this feature to fully automate some procedures.
  518. For instance, the command 'DO Getfile newgame.exe' could execute the commands 
  519. in the command file Getfile to call up a favorite bulletin board, receive
  520. file getfile from the board, and then log off.  The command Do Getfile News.Doc
  521. would go through the same process to bring you News.Doc from the board.
  522.  
  523. A command file can use the DO command to call another command file.  When the
  524. the other command file finishes execution ENVOY continues to execute the
  525. original file.  Command files can be nested this way up to four deep.
  526.  
  527. When Envoy is first started it tries to execute file Initial.Env in the current
  528. directory.  If the file isn't on the current directory Envoy will look in the
  529. Envoy directory and then give up.  Use the initialization file to set options
  530. which you will want every time you run Envoy.  Use this file to choose screen
  531. colors and reconfigure the MACRO definitions to match your favorite editor.
  532.  
  533. After executing file Initial.Env, ENVOY will look to see if you entered the name
  534. of a command file when you called the program.  If you did ENVOY will execute
  535. that file.  You can also supply parameters when you call ENVOY.  For instance,
  536. entering ENVOY GETFILE NEWS.DOC could execute file Getfile to receive a file
  537. named News.Doc from a bulletin board.
  538.  
  539. If you want, you can put several ENVOY commands on a single line.  Separate
  540. the commands with the # character.
  541.  
  542. ENVOY doesn't check your control logic.  It is possible to set up an infinite
  543. loop in command file with the JUMP command which wants to execute forever.
  544. You can escape from a loop like this by pressing the alt-x key.
  545.  
  546. When you are writing a command file, or if you are have a problem with a
  547. command file, use the JOURNAL command to trace the execution of each line.
  548. The JOURNAL command echoes all of the commands you enter to a file named
  549. Journal.Env on the current directory.  JOURNAL ON should be the first command in
  550. the file and JOURNAL OFF should be the last command.  You can also use the
  551. REMARK command to write comments to the CRT screen as the file is executed.
  552.  
  553. Put comments into a command file by using the ; character.  Anything following a
  554. ; is ignored unless it was part of a string parameter.  For example, the command
  555. FIND ';' ; ...comment...  will find the next ; character.  The comment will be
  556. ignored.
  557.  
  558. The distribution disk gives several examples of useful command files.  Look
  559. them over before you write your own command files.
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.                             5  INITIALIZATION
  568.  
  569.      To run Envoy you type 'ENVOY' or 'ENVOY {name of a command file}' at the
  570.      DOS prompt.
  571.  
  572.      When Envoy starts up it first tries to execute the file Initial.Env on the
  573.      default directory.  As with any command file, If the file is not in the
  574.      current directory Envoy will look for it in the ENVOY directory.  You can
  575.      define the Envoy directory with the DOS command SET ENVOY=pathname.
  576.  
  577.      You can use the file Initial.Env to redefine the edit keys, set a default
  578.      phone number and communications parameters, or perform other set up tasks
  579.      which you want to do every time you use envoy.
  580.  
  581.      If you entered the name a command file as a parameter when you started
  582.      Envoy, that command file will be executed after ENVOY is finished executing
  583.      file Initial.Env.
  584.  
  585.      These initialization files are very powerful.  You can set up command files
  586.      for each of the many different jobs which Envoy can do.  For instance, you
  587.      could create a command file called Work which contained the commands to log
  588.      you on to your company computer.  Entering the DOS command ENVOY WORK would
  589.      then log you on and return control.  You could set up other commands to log
  590.      you onto other systems or to redefine the Envoy editor for special
  591.      purposes.
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.                             6  LINE COMMAND DEFINITIONS
  601.  
  602.  
  603. Envoy commands can be entered from the command line, from inside of a command
  604. file or can be assigned to keyboard keys.  All of the Envoy commands are
  605. described below.  Three important conventions which apply to all of the commands
  606. are:
  607.  
  608.       - Commands can be abbreviated.  The Syntax section of each of the
  609.         definitions capitalizes the minimum acceptable abbreviation.
  610.  
  611.       - Multiple commands can be given on a single line.  Separate the commands
  612.         with a # character.
  613.  
  614.       - Comments which follow a ; character are ignored.  Using comments,
  615.         especially in command files, will make it much easier to remember what
  616.         you have done.
  617.  
  618.  
  619.  
  620.  
  621. BACKSPACE - Erase the character you just typed.
  622.  
  623.      The BACKSPACE command moves the cursor one position to the left and deletes
  624.      that character.
  625.  
  626.      Syntax
  627.        BACKspace
  628.  
  629.  
  630. BAUD - Set baud rate
  631.  
  632.      The baud rate is the number of bits per second which can be sent or
  633.      received.  ENVOY uses a default baud rate of 1200 baud.
  634.  
  635.      The same baud rate must be used by the local computer, the remote computer,
  636.      and the modem.  Some computers analyze an incoming call and reset their own
  637.      communication parameters(baud rate, number of data bits, number of stop
  638.      bits, and parity) to match.  In the same way, most modems have a command
  639.      mode to automatically reset their baud rate to match the local computer.
  640.      You can reset the communication parameters of a Hayes compatible modem by
  641.      putting it in command mode(power on or send ++++) and then sending the
  642.      command AT to the modem.
  643.  
  644.      Syntax
  645.        BAud {baudrate}
  646.          Allowed values for  {baudrate} are 110, 150, 300
  647.          600, 1200, 2400, 4800 and 9600.
  648.  
  649.      Example
  650.        BAUD 1200          ;  Set the baud rate to 1200 bps.
  651.        STOP  1            ;  One Stop bit
  652.  
  653.  
  654. BEEP - Computer speaker will beep.
  655.  
  656.      The BEEP command generates a short beep.  The length of the beep can be set
  657.      with the DELAY command.  Use the BEEP command in command files to signal
  658.      that execution has finished.
  659.  
  660.      Syntax
  661.        BEep
  662.      Example
  663.        Delay 5 2.0    ;Reset beep time to 2 seconds
  664.        Beep           ;Long beep
  665.        ; Set macro to beep twice when you press the alt-b key
  666.        Macro 304 #delay 5 0.4 # beep #pause .5 #delay 5 .2 # beep
  667.  
  668. BLOCK - Block a region of the file for special editing
  669.  
  670.      The BLOCK commands work only on the blocked region in the file which you
  671.      have marked.  You can read, write, copy or delete the block.  You
  672.      can use the BLOCK LINES option to work with entire lines or with
  673.      rectangular regions.
  674.  
  675.      Syntax
  676.        BLock CLear          Delete the block
  677.        BLock COpy           Copy the block to the current cursor position
  678.        BLock Lines ON|OFF   Choose option to work with blocked lines or regions
  679.                             Your choices are :
  680.                                  ON  - BLOCK commands work on marked lines
  681.                                  OFF - BLOCK commands work on a region
  682.                                      - Option setting is reversed
  683.        BLock End            Mark the end of the block
  684.        BLock Top            Mark the start of the block
  685.        BLock Move           Move the block to the current cursor position
  686.        BLock Off            Remove any block marks
  687.        BLock Read filespec  Read file filespec into the current edit file at the
  688.                             current cursor position.  Filespec can include a
  689.                             full directory path.
  690.        BLock WOrd           The word at the present cursor position is marked.
  691.                             If the BLOCK LINES option is ON it is set to OFF.
  692.        BLock WRite filespec Write a block to a file which you specify.  The
  693.                             filespec can include a full directory path.  If the
  694.                             file already exists the blocked region is added at
  695.                             the end of the file.  You can use the BLOCK WRITE
  696.                             command to save selected information from a terminal
  697.                             session which has been captured.
  698.  
  699.      Example
  700.        BLock Read C:\Comdecks\newcom    ; Read the file newcom into a block
  701.        Block Clear                      ; Delete the block
  702.        MACRO 319 #Block Copy            ; F5 Key Copys the block
  703.        Block Lines                      : Block lines option is reversed
  704.  
  705.  
  706. BREAKLINE - Move the right side of the current edit line to a new line.
  707.  
  708.      The current line is truncated at the cursor position and a new line is
  709.      inserted below the current line.  The cursor moves down and all the text
  710.      which had been to the right of the cursor is moved to the new position.
  711.      The new line will be indented if you have used the RETPOS command to define
  712.      a new cursor position.  Otherwise, the new line will start in column 1.
  713.  
  714.      Syntax
  715.        BReakline
  716.           Break line at cursor.
  717.  
  718.      Example
  719.        MACRO 304 #Breakline         ; Alt-b key Breaks the current line
  720.  
  721.  
  722. CAPTURE - Start/stop capturing to a disk file.
  723.  
  724.      Envoy always captures a session to memory.  Incoming data is saved up to
  725.      the limit of available memory.  The captured data can be edited and then
  726.      written to a disk file just like any other edit file.  This is the easiest
  727.      way to download and save text files from a remote computer.
  728.  
  729.      Sometimes it is necessary to capture a text file directly to a disk file.
  730.      One case would be if your computer doesn't have enough memory to hold the
  731.      entire file.  The CAPTURE command can be used to do this.
  732.  
  733.      You cannot use the CAPTURE command to download a binary file from a remote
  734.      computer.  You must use the XGET command to do this.
  735.  
  736.      Syntax
  737.        CApture filespec
  738.          Starts capturing to the specified file.  The filespec can include a
  739.          complete directory path.
  740.        CApture
  741.          Stops capturing.
  742.  
  743.      Example
  744.        CA Mydata.sv        ; Start capturing to file Mydata.sv
  745.        CA                  ; Stop capturing and close the file
  746.  
  747.  
  748. CLEAR - Delete a file, a block, etc.
  749.  
  750.      The CLEAR commands are used to delete a block, a single character, a file,
  751.      a line, or to delete the current working file from memory.  If the working
  752.      file has been changed Envoy will give you the choice of saving the file
  753.      before deleting it.
  754.  
  755.      Syntax
  756.        CLear Block          Delete the current block(same as BLOCK CLEAR)
  757.        CLear Char           Delete the character at the current cursor position
  758.        CLear Edit           Delete the entire edit file from memory.  Disk files
  759.                             are not affected.
  760.        CLear Endline        Delete the characters to the right of the cursor
  761.        CLear Help           Delete Help screens from memory.(See HELP)
  762.        CLear File {filespec}Delete a file(same as the DOS DEL command)
  763.        CLear Line           Delete the current line
  764.  
  765.      Example
  766.        Clear File zz.*        ; Deletes all the files which match
  767.        MACRO 288 # Clear Line ; Alt-d key deletes the current line
  768.  
  769.  
  770. COLOR - Change display color
  771.  
  772.      There are six colors used by the program for different purposes.  The COLOR
  773.      command lets you redefine these colors.  The first parameter of the COLOR
  774.      command chooses which color you want to redefine.  The choices are:
  775.  
  776.                    EDIT   => Edit characters
  777.                    BLOCK  => Blocked region
  778.                    INFO   => Information line
  779.                    QUES   => Envoy questions and error messages
  780.                    FOUND  => Mark search string
  781.                    HELP   => Help Screens and Menus
  782.  
  783.      The second parameter of the COLOR command defines the new foreground color.
  784.      The choices for foreground colors are:
  785.                0 => Black               8  => Dark Gray
  786.                1 => Blue                9  => Light Blue
  787.                2 => Green               10 => Light Green
  788.                3 => Cyan                11 => Light Cyan
  789.                4 => Red                 12 => Light Red
  790.                5 => Magenta             13 => Light Magenta
  791.                6 => Brown               14 => Yellow
  792.                7 => Light Gray          15 => White
  793.  
  794.      The third parameter of the COLOR command defines the new background color.
  795.      The choices for background colors are:
  796.  
  797.  
  798.                0 => Black               8  => Black with Blink
  799.                1 => Blue                9  => Blue with Blink
  800.                2 => Green               10 => Green with Blink
  801.                3 => Cyan                11 => Cyan with Blink
  802.                4 => Red                 12 => Red with Blink
  803.                5 => Magenta             13 => Magenta with Blink
  804.                6 => Brown               14 => Brown with Blink
  805.                7 => Light Gray          15 => Light Gray with Blink
  806.  
  807.      Use the Envoy Color Menu to change the Envoy default color scheme.  When
  808.      you are happy with your choices, put COLOR commands in the command file
  809.      INITIAL.ENV.  This will redefine the defaults every time you run Envoy.
  810.  
  811.      Syntax
  812.        COlor {keyword} {foreground} {background}
  813.          Where keyword chooses which color you wish to redefine and the
  814.          foreground and background colors are given above.
  815.  
  816.      Example
  817.        COLOR Edit    0  1; Edit Screens - Black characters on blue background
  818.        COLOR Info   13  7; Info Line    - Lt Magenta on lt grey background
  819.        COLOR Found  14 14; Found String - Blinking yellow on brown background
  820.  
  821.  
  822. COM - Set the Communication port.
  823.  
  824.      Personal Computers often have more than one serial port installed.  For
  825.      instance, one might be connected to a printer and the other to a modem.
  826.      The COM command tells ENVOY which port to use for communications.  COM
  827.      is initially set to 1.
  828.  
  829.      Syntax
  830.        COM n
  831.          Where n is 1,2,3 or 4
  832.  
  833.      Example
  834.        COM  1      ;  Use Communications port number 1
  835.  
  836.  
  837. COUNT - Add one to the value of the ENVOY internal counter
  838.  
  839.      ENVOY has an internal counter which is useful for program control while
  840.      executing command files.  You can test the value of the counter with the IF
  841.      command.  This lets you try something a certain number of times before
  842.      giving up.
  843.  
  844.      The value of the counter is set to 1 when Envoy starts up.  Use the SET
  845.      COUNT command to re-initialize the value of the counter at the start of a
  846.      command file.
  847.  
  848.      The COUNT command increments the value of the Envoy internal counter by 1.
  849.  
  850.      See Section 4 for a description of how to use command files.
  851.  
  852.      Syntax
  853.        COUnt
  854.          Adds 1 to the value of the ENVOY counter
  855.  
  856.      Example
  857.        Set Count 1      ;  Initialize counter.
  858.        Label Loop       ;  ENVOY will jump back here three times
  859.        Dial             ;  Dial a number
  860.        If Connect       ;  Check to see if a connection was made
  861.          Exit
  862.        Else             ;  Connection wasn't made
  863.          If Count 3     ;  Check to see if there have been three tries
  864.           Exit          ;  Give up if three tries
  865.          Else
  866.           Count         ;  Increment counter by one
  867.           Jump Loop     ;  Go to the top of the file
  868.          Endif
  869.        Endif
  870.  
  871.  
  872. DATA - Set the number of data bits
  873.  
  874.      Every byte which is sent through a serial port is converted to a stream of
  875.      bits.  First a start bit is sent to tell the connected equipment that a
  876.      byte is being sent.  Next the data bits are sent, possibly followed by a
  877.      parity bit.  Finally, one or two stop bits tell the connected equipment
  878.      that the transmission of the byte is complete.
  879.  
  880.      Since a byte is, by definition, eight bits long it might seem that 8 data
  881.      bits are required to send a byte.  This isn't necessarily true.  If you
  882.      are using your computer as a terminal and are only sending normal text
  883.      characters, seven bits are enough to use the ASCII character set which is
  884.      made up of 128 characters.  Many systems use seven data bits.
  885.  
  886.      You must know the number of data bits which a remote computer expects(as
  887.      well as the baud rate, the parity, and the number of stop bits) before you
  888.      can make a successful connection.  If you use an incompatible set of
  889.      communication parameters you will see a string of garbage on your screen.
  890.  
  891.      If you don't know what convention the remote computer uses you can usually
  892.      find out by trial and error.  The most common setting for bulletin boards
  893.      is 8 data bits, no parity bit, one stop bit.  Most mainframe computers use
  894.      7 data bits, either even or odd parity, and one stop bit.  Try these
  895.      settings until you get a good connection.  If this doesn't work try other
  896.      settings or else give up until you find the documentation for the system
  897.      you are trying to call.
  898.  
  899.      Syntax
  900.        DAta 7 | 8
  901.  
  902.      Example
  903.        DATA 7      ;  Use seven data bits.
  904.        DATA 8      ;  Use eight data bits(default).
  905.  
  906.  
  907. DELAY - Set timing delays
  908.  
  909.      Envoy inserts a short delay time after each cursor movement and after each
  910.      transmission to a remote computer, etc.  These delays can be changed to
  911.      slow down or speed up Envoy response.
  912.  
  913.      Depending on your reaction time, you may wish to adjust the delay which is
  914.      inserted after each cursor movement.  If the delay is too short you may
  915.      find it difficult to move the cursor to a new location on the screen
  916.      without overshooting.
  917.  
  918.      Computers can have similar problems with their reaction time.  If you are
  919.      running Envoy on a personal computer with a fast clock and have made a
  920.      connection with a computer which is slower than yours (or busy with other
  921.      jobs), the remote computer may lose some of the characters which you send.
  922.      Increase the transmission delay if this seems to be happening.
  923.  
  924.      The default setting for the adjustable delays are:
  925.  
  926.            DELAY  1  0.080 ;  First Keyboard Delay
  927.            DELAY  2  0.030 ;  Second Keyboard Delay for Repeat
  928.            DELAY  3  0.010 ;  Time delay after sending a character
  929.            DELAY  4  0.050 ;  Time delay after sending a line
  930.            DELAY  5  0.200 ;  Length of error beep
  931.            DELAY  6  0.0   ;  Delay after executing a command file line
  932.            DELAY  7  0.0   ;  Delay before sending any byte
  933.  
  934.      These settings are can be reduced to improve performance.  Use care in
  935.      reducing the time delays for sending a character and for sending a line.
  936.      Many computer systems are set up to handle input only as fast a good 
  937.      typist can send.  If you send a sustained burst of text to these systems
  938.      you may overflow the other computer's input buffer.  
  939.  
  940.      DELAY 3 and DELAY 4 are only applied when you give a command to the 
  941.      remote computer(or a smart modem) with the SEND STRING command.  These
  942.      delays will not slow down file transfer.  DELAY 6 is always applied and
  943.      will slow down file transfer.
  944.      
  945.      Syntax
  946.        DELAy index tdelay
  947.           Where index is the index number of the delay to be set and
  948.           tdelay is the new setting.  tdelay must be less than 5 sec
  949.           and is entered in decimal format.
  950.  
  951.      Example
  952.        DELAY 3 .1              ; Wait 100 milliseconds after sending a character
  953.        DELAY 1 .2 # DELAY 2 .2 ; Very slow keyboard response 
  954.  
  955.  
  956. DEL - Delete a DOS file
  957.  
  958.      The DEL command is the same as the DOS DEL command.  Wild card characters
  959.      are allowed.
  960.  
  961.      Syntax
  962.        DEl filespec
  963.  
  964.      Example
  965.        DEL Old.txt            ; Delete an unneeded file.
  966.        DEL Old.*              ; Delete several files.
  967.        DEL C:/Mine/Save/Old.* ; Delete files in a directory.
  968.  
  969.  
  970. DIAL - Dial a phone number and wait for a connection
  971.  
  972.      The DIAL command tells Envoy to enter terminal mode and dial a telephone
  973.      number.  Envoy will then wait for a Carrier Detect signal from the modem,
  974.      which indicates that a connection to a remote computer has been made.
  975.  
  976.      If a connection is not mode, Envoy will go off line.
  977.  
  978.      Envoy dials the number by sending a character string to the modem.  The
  979.      string consists of a modem command(defined by the SET PREFIX command)
  980.      followed by the number to be dialed.
  981.  
  982.      Syntax
  983.        DIAl  '{phone number}' t
  984.           Where t is the time in seconds which envoy will wait for a
  985.           carrier detect signal.  If n is omitted, the default wait
  986.           time of 40 seconds is used.
  987.      OR
  988.        DIAl * t
  989.            Envoy will prompt you for a phone number
  990.      OR
  991.        DIAl Number t
  992.            Envoy will Dial the phone number which you defined with the
  993.            SET NUMBER command
  994.  
  995.        
  996.      Example
  997.        SET PREFIX 'AT DT'     ; Hayes compatible command-ATtention Dial Pulse
  998.        SET NUMBER '123-4567'  ; Phone number of the remote computer
  999.        DIAL Number 30.0       ; Dial the number and wait 30 seconds for a
  1000.                               ; connection
  1001.        DIAL '123-5678'        ; Envoy will dial the phone number 123-5678
  1002.        DIAL * 30.0            ; Envoy will prompt you for the phone number,
  1003.                               ; dial it, and then wait 30 seconds.
  1004.  
  1005. DIR - List the files on a disk or in a subdirectory
  1006.  
  1007.      The DIR command is the same as the DOS DIR command.  Envoy shows a list of
  1008.      the files in the specified directory.  Wild card characters ? and * are
  1009.      allowed.
  1010.  
  1011.      Syntax
  1012.        DIR  filespec
  1013.        Where the filespec can include an complete directory path.
  1014.  
  1015.      Example
  1016.        DIR                  ; List all of the files on the default directory
  1017.        DIR B:               ; List all of the files on drive B:
  1018.        DIR C:MINE/OLD/*.Exe ; List all the .exe files in the subdirectory
  1019.  
  1020.  
  1021. DISCONNECT - Disconnect the modem
  1022.  
  1023.      When you enter the OFF command to leave terminal mode, or when you quit
  1024.      Envoy, the modem is not disconnected.  You can re-enter terminal mode and
  1025.      continue your session later.  The DISCONNECT command disconnects the modem
  1026.      by clearing the Data Terminal Ready (DTR) signal.  The modem will then
  1027.      break the connection to the remote terminal.
  1028.  
  1029.      Syntax
  1030.        DISconnect
  1031.  
  1032.  
  1033. DO - Execute a command file
  1034.  
  1035.      Envoy will execute the commands in the file which you name.  The DO command
  1036.      can be used to execute a command file to define the edit keys, colors,
  1037.      tabs, etc., or to manage the log-on to a remote computer.
  1038.  
  1039.      A command file may contain a DO command and execute a second command
  1040.      file, and so on.  Command files may be nested this way up to four deep.
  1041.  
  1042.      Blank lines in a command file are ignored.  The ; character can be used
  1043.      for comments, as in the example.
  1044.  
  1045.      During initialization, Envoy tries to execute the file Initial.Env on the
  1046.      default directory.  You can use this file to redefine the edit keys, set a
  1047.      default phone number and communications parameters, or perform other set up
  1048.      tasks which you want to do every time you use envoy.  Section 5 describes
  1049.      the initialization in more detail.
  1050.  
  1051.      If Envoy tries to execute a command in a command file but cannot, an error
  1052.      results.  Envoy then closes the command file and returns to Edit mode.
  1053.  
  1054.      If you give Envoy a file name which includes a directory path, Envoy will
  1055.      look for the file in that directory and give up if the file isn't there.
  1056.      If you give Envoy a file name which does not include a directory path,
  1057.      Envoy will first look for the file in the current directory and then look
  1058.      in the ENVOY directory.  Use DOS command SET ENVOY=pathname in your
  1059.      AUTOEXEC.BAT file to define the Envoy directory.
  1060.  
  1061.      Syntax
  1062.        DO  filespec
  1063.          Envoy will execute the commands in the file.  The filespec can include
  1064.          a complete directory path.
  1065.  
  1066.      Example
  1067.        DO C:Mine/Compusrv  ; File Compusrv in directory C:Mine contains the
  1068.                            ; commands to log on to Compuserve
  1069.  
  1070.        DO Compusrv         ; Envoy will execute the file Compusrv in the current
  1071.                            ; directory.  If Envoy can't file the file in the
  1072.                            ; current directory it will look in the ENVOY
  1073.                            ; directory
  1074.  
  1075.  
  1076. DOLINE - Enter command mode
  1077.  
  1078.      The DOLINE command can be entered by pressing a macro key(default is the
  1079.      <Esc> key) or from a command file.  Envoy will then prompt you for
  1080.      commands.  Enter a blank line to leave command mode and return to the
  1081.      editor.
  1082.  
  1083.      Syntax
  1084.        DOLine
  1085.  
  1086.  
  1087. DOS - Shell to DOS
  1088.  
  1089.      ENVOY will prompt you for commands and pass the commands to the DOS
  1090.      command processor.  You can execute DOS commands or run programs.
  1091.      Enter the command 'EXIT' to leave the DOS shell and return to ENVOY.
  1092.  
  1093.      The DOS command can also be used to execute a single Dos command.  You
  1094.      can assign a command to a MACRO key and then execute a Dos command or
  1095.      another program by pressing a single key.
  1096.  
  1097.      When ENVOY executes a DOS command it first shrinks the memory it uses to
  1098.      the minimum required.  When you exit DOS, ENVOY reclaims its memory.  This
  1099.      means that you must not install any memory resident programs when you chain
  1100.      to DOS.  If you do ENVOY will have a hard failure(program halt) when it
  1101.      tries to reclaim memory.  In particular, if you want to use the DOS PRINT
  1102.      command from inside the ENVOY shell you must install the PRINT routine
  1103.      before you run ENVOY.  To do this just enter the command PRINT with no
  1104.      file name at the DOS prompt.
  1105.  
  1106.      Syntax
  1107.        DOS
  1108.          You will enter the Dos shell.  Enter the Dos command EXIT to return
  1109.          to Envoy.
  1110.      OR
  1111.        DOS '{doscommand}'
  1112.  
  1113.           The command will be executed and then Envoy will resume execution.
  1114.  
  1115.      Example
  1116.         Dos                        ; Enter the Dos shell
  1117.         Dos 'Dir C:'               : Lists the directory of drive C:
  1118.         MACRO 349 # Dos 'Dir C:/w' : Press the Shift F10 key to see directory
  1119.  
  1120.  
  1121. DUPLEX - Set Full/Half Duplex mode.
  1122.  
  1123.      Full Duplex means that the remote computer echoes any characters it
  1124.      receives back to you.  Half Duplex means it does not.
  1125.  
  1126.      In terminal mode Envoy will always display any characters received from the
  1127.      remote computer.  The DUPLEX command selects the option to also display the
  1128.      characters which you type.
  1129.  
  1130.      Many people are confused by Duplex setting.  If the remote computer is set
  1131.      up for full duplex and Envoy is set to Half Duplex, each character you type
  1132.      will be displayed twice ( ddiissppllaayyeedd ttwwiiccee).  The first
  1133.      character of each pair is displayed when you type it, the second is
  1134.      displayed when the remote computer echoes back what it received.  Similarly,
  1135.      if the remote computer is set up for Half Duplex and Envoy is set to Full
  1136.      Duplex, the characters which you type will not be displayed at all.  You
  1137.      will see responses from the remote computer.
  1138.  
  1139.      If you don't know the Duplex mode which the remote computer uses, set Envoy
  1140.      to Half Duplex.  Change to Full Duplex if you see double characters.
  1141.  
  1142.      The default setting for a Hayes compatible modem in command mode is Half
  1143.      duplex, which may be different than the setting for the remote computer.
  1144.      Because of this you might have to change the duplex setting twice while
  1145.      making a connection - first to match the modem setting and then to match
  1146.      the remote computer.  Alternately, you could just set the Envoy duplex to
  1147.      match the remote computer and ignore doubled characters while you send
  1148.      commands to the modem.
  1149.  
  1150.      Syntax
  1151.        DUplex FULL | HALF
  1152.  
  1153.      Example
  1154.        DUPLEX FULL ; Set Envoy to Full Duplex mode.
  1155.  
  1156.  
  1157. ELSE - Resume processing in a IF block
  1158.  
  1159.      Envoy command files can include If blocks which provides very powerful
  1160.      control over a log-on sequence.  The ELSE command tells Envoy to resume
  1161.      processing commands if lines are are being skipped after failing an IF
  1162.      test.  Alternately, when an ELSE command is found after passing an IF test
  1163.      Envoy will skip all of the following commands until a ENDIF statement is
  1164.      found.
  1165.  
  1166.      More details are given in the definition of the IF command.
  1167.  
  1168.      Syntax
  1169.        ELse
  1170.  
  1171.  
  1172. ENDIF - End an If Block
  1173.  
  1174.      Envoy command files can include If blocks which provides very powerful
  1175.      control over a log-on sequence.  The ENDIF command tells Envoy to close
  1176.      an IF block.
  1177.  
  1178.      More details are given in the definition of the IF command.
  1179.  
  1180.      Syntax
  1181.        ENDIf
  1182.  
  1183.  
  1184. END - Reset the end-of-line control characters
  1185.  
  1186.      Remote host computers expect to receive one or two control characters at
  1187.      the end of each line you send.  The Carriage Return character (ASCII code
  1188.      13) is most commonly used.  The CR character tells the host that the end of
  1189.      the current line has been reached.  The remote host computer then moves
  1190.      down to the next line and moves to the start of the line.
  1191.  
  1192.      Some systems use other line control characters.  The Line Feed character
  1193.      (ASCII code  10) tells the remote computer to move down to the next line
  1194.      but not to move to the beginning of the line.  The Home character
  1195.      (ASCII code 11) tells the remote computer to move to the start of the
  1196.      current line.  Some systems require that these two characters be sent at
  1197.      the end of each line instead of a carriage return.
  1198.  
  1199.      The END command lets you change the characters which Envoy sends
  1200.      at the end of each line.  The default is to send a CR character.
  1201.  
  1202.      Syntax
  1203.        END {first} {second}
  1204.          Where {first} and {second} are the character codes of the first and
  1205.      second characters to be sent.  A value of 0 for one of the end-of-line
  1206.      characters means don't send a character.
  1207.  
  1208.      Example
  1209.              ; Envoy Defaults
  1210.        END  13 0       ; Send a Carriage Return at the end of each line.
  1211.                        ; Don't send a second character.
  1212.  
  1213.              ; Reset end of line characters:
  1214.        END  10 11      ; Send a Line Feed.
  1215.                        ; Then send a Home character.
  1216.  
  1217.  
  1218. ENTER - Enter a line
  1219.  
  1220.      The ENTER command enters a line into the edit file.  This requires
  1221.      several actions :
  1222.              - If Envoy is in INSERT mode or if the current line is the last
  1223.                line in the file, a new line is created below the current
  1224.                line.
  1225.              - The cursor moves down from the current line to the line below.
  1226.              - The cursor moves to the Return Position on the line.  This is
  1227.                column 1 unless another position has been defined with the
  1228.                RETPOS command.
  1229.              - If Envoy is on-line, the two end-of-line characters defined
  1230.                by the END command are sent to the remote computer.
  1231.  
  1232.      Syntax
  1233.        ENTer
  1234.  
  1235.  
  1236. EXIT - Leave a Command File
  1237.  
  1238.      Usually, Envoy processes all the commands in a command file.  The file
  1239.      is closed when the end of the file is reached.  The EXIT command tells
  1240.      Envoy to close a command file even though the end of the file has not
  1241.      been reached.
  1242.  
  1243.      Syntax
  1244.        EXit
  1245.  
  1246.      Example
  1247.        Dial                           ; Dial a remote computer
  1248.        If Connect                     ; Check if a connection was made
  1249.          Remark 'Phone was answered ' ; Message to the user
  1250.        Else                           ; Connection was not made
  1251.          Exit                         ; Give up
  1252.        Endif                          ; Now continue with the command file
  1253.  
  1254.  
  1255. FIND - Find a Character String
  1256.  
  1257.      The FIND command finds a character string in the edit file.  You must
  1258.      specify the string which you wish to find and search options.
  1259.  
  1260.      Options for the FIND operation are :
  1261.                    B  Search In Block
  1262.                    G  Global Search
  1263.                    U  Ignore Upper/Lower Case
  1264.                    n  Find the n'th occurrence
  1265.  
  1266.      If you specify * for the character string or for the Search option string,
  1267.      Envoy will prompt you for this information.
  1268.  
  1269.      Syntax
  1270.         FInd '{character string}' '{option string}'
  1271.       OR
  1272.         FInd * *
  1273.      Envoy will prompt you to supply the search string and options.
  1274.  
  1275.      Example
  1276.         Find 'AnyWord' 'U'     ; Find the string, ignoring upper case
  1277.  
  1278.  
  1279. GO - Move the cursor
  1280.  
  1281.      The GO command moves the cursor throughout the file.  There are several
  1282.      options.
  1283.  
  1284.      Syntax
  1285.        GO Column n   Go to column n on the current line
  1286.        GO DOWNPage   Go down one screen page
  1287.        GO Down       Go down one line
  1288.        GO ENDBlock   Go to the end of the blocked region(see BLOCK command)
  1289.        GO ENDFile    Go to the end of the file
  1290.        GO ENDLine    Go to the end of the current line
  1291.        GO Left       Go left one space
  1292.        GO Line n     Go to line n in the current edit file
  1293.        GO Right      Go right one space
  1294.        GO TABLeft    Go to the next tab position to the left(see TABS command)
  1295.        GO TABRight   Go to the next tab position to the right(see TABS command)
  1296.        GO TOPBlock   Go to first line of the blocked region(see BLOCK command)
  1297.        GO TOPFile    Go to the first line in the file
  1298.        GO TOPLine    Go to the first character of the current line
  1299.        GO UPPage     Go up one screen page
  1300.        GO Up         Go up one line
  1301.        GO WLeft      Go to the start of the current word
  1302.        GO WLeft      Go to the start of the next word on the left
  1303.        GO WRight     Go to the start of the next word on the right
  1304.  
  1305.      Example
  1306.        Go L                    ; Go left one position
  1307.        Go Up # Go Up           ; Go up two lines
  1308.        MACRO 328 #go up #go Up ; Up arrow key moves cursor up two lines instead
  1309.                                ; of just one
  1310.  
  1311.  
  1312. HELP - Display Help screen
  1313.  
  1314.      The HELP command displays the Envoy help screens.  The help screens briefly
  1315.      describe how to use Envoy and give definitions of all the Envoy key
  1316.      commands.  The command HELP or just 'H' displays the titles of the help
  1317.      screens which are available. Choose the topic you want by using the up and
  1318.      down arrow keys.  Then press the enter key.  You can scroll through the
  1319.      help screen using the up, down, PgUp, and PgDn keys.
  1320.  
  1321.      All of the help screens are contained in file Help.env.  When you enter the
  1322.      HELP command, Envoy looks for this file in the current directory.  If the
  1323.      help file isn't in the current directory Envoy will look in the Envoy
  1324.      directory(set with the DOS command SET ENVOY={envoydirectory})  If you
  1325.      wish, you can modify the help file with the Envoy editor to add custom help
  1326.      screens.  You could put in phone numbers which you often call, command
  1327.      definitions for a remote computer system, etc.
  1328.  
  1329.      The first time you enter the HELP command, the entire help file is read
  1330.      into memory.  This is a fairly large file and could get in the way if you
  1331.      are editing another large file.  Use the command CLEAR HELP to reclaim the
  1332.      memory used by the help file.
  1333.  
  1334.      Syntax
  1335.  
  1336.        Help
  1337.  
  1338.          Show the list of available help screens.
  1339.  
  1340.  
  1341. IF - Test for a condition
  1342.  
  1343.      The IF command tests to see if some condition is true.  Use the IF, ELSE,
  1344.      and JUMP commands in a command file for program control.
  1345.  
  1346.      An IF block consists of:
  1347.                  - The word IF followed by the condition to be tested.
  1348.                  - Statements to be executed when the IF test was successful
  1349.                  - An ELSE statement is allowed but not required.
  1350.                  - Statements after the ELSE statement are executed only when
  1351.                    the IF test fails.
  1352.                  - End the IF block with an ENDIF statement
  1353.      An IF block can contain other IF blocks.  Blocks can be nested this way up
  1354.      to 40 deep.
  1355.  
  1356.      The IF command can test several conditions :
  1357.  
  1358.               IF COLUMN {n}
  1359.                    This test is successful if the cursor is on or past the
  1360.                    n'th column in the current edit file.
  1361.  
  1362.               IF CONNECT
  1363.                    This test is successful if the DTR signal from the modem is
  1364.                    set high.  This means that the modem has made connection with
  1365.                    another modem over the phone line.
  1366.  
  1367.               IF COUNT {n}
  1368.                    This test is successful if the value of the Envoy internal
  1369.                    counter is equal to {n}.  Set the initial value of the
  1370.                    counter with the SET COUNT command.  Increment the counter
  1371.                    every time you go through a loop with the COUNT command.
  1372.  
  1373.               IF ENDBLOCK
  1374.                    This test is successful if the cursor is on or past the
  1375.                    last block line.
  1376.  
  1377.               IF ENDFILE
  1378.                    This test is successful if the cursor is on the last line in
  1379.                    the file.
  1380.  
  1381.               IF ENDLINE
  1382.                    This test is successful if the cursor is past the last
  1383.                    character of the current line.
  1384.  
  1385.               IF FOUND
  1386.                    This test is successful if the last WAIT, FIND, or REPLACE
  1387.                    command was successful.
  1388.  
  1389.               IF STRING  '{teststring}'
  1390.                    This test is successful if the value of the Envoy internal
  1391.                    string variable is identical to the {teststring}.  The
  1392.                    string variable is defined with the SET STRING command.
  1393.                    Use the form SET STRING *  to prompt the user for information
  1394.                    or use the string variable to return information to a command
  1395.                    file from a second command file which it calls with the DO 
  1396.                    command.
  1397.  
  1398.      Syntax
  1399.        IF COLumn {n}
  1400.          True is cursor is at or beyond column {n}
  1401.        IF CONnect
  1402.          True if DTR signal is high
  1403.        IF COUnt {n}
  1404.          True if Envoy internal counter equals {n}
  1405.        IF ENDBlock
  1406.          True if cursor is at or beyond block
  1407.        IF ENDFile
  1408.          True if cursor is on the last line of the file
  1409.        IF ENDLine
  1410.          True if cursor is at or beyond the end of the current line
  1411.        IF Found
  1412.          True if last WAIT, FIND, or REPLACE command was successful
  1413.        IF String '{teststring}'
  1414.          True if Envoy internal string equals {teststring}
  1415.      Example
  1416.        Set Count 1      ;  Initialize counter.
  1417.        Label Loop       ;  ENVOY will jump back here three times
  1418.        Dial             ;  Dial a number
  1419.        If Connect       ;  Check to see if a connection was made
  1420.          Exit
  1421.        Else             ;  Connection wasn't made
  1422.          If Count 3     ;  Check to see if there have been three tries
  1423.           Exit          ;  Give up if three tries
  1424.          Endif
  1425.          Count         ;  Increment counter by one
  1426.          Jump Loop     ;  Go to the top of the file
  1427.        Endif
  1428.  
  1429.  
  1430. INSERT - Change Insert Mode
  1431.  
  1432.      When Envoy is in INSERT mode, characters which you type are inserted at the
  1433.      cursor position.  The character which had been at the cursor position is
  1434.      shifted to the right.  In OVERWRITE mode the character at the cursor
  1435.      position is overwritten.
  1436.  
  1437.      The Envoy information line tells you whether you are in INSERT mode or 
  1438.      overwrite mode.
  1439.  
  1440.      Syntax
  1441.        INSert ON
  1442.        INSert OFF
  1443.          Set INSERT mode.
  1444.      OR
  1445.        INSert
  1446.          Toggle the current setting.
  1447.  
  1448.  
  1449. JOIN - Join the current line to the previous line
  1450.  
  1451.      The JOIN command moves the current line to the right side of the line just
  1452.      above the current line.  Use the JOIN and BREAKLINE commands to reformat a
  1453.      paragraph.
  1454.  
  1455.      Syntax
  1456.        JOIn
  1457.  
  1458.  
  1459. JOURNAL - Write a Journal of an ENVOY session to a file.
  1460.  
  1461.      By default, the JOUrnal command writes a summary file of an Envoy session
  1462.      to file Journal.Env.  If you wish, you can write the journal information to
  1463.      another file.  Every line command, MACRO command, or command file command
  1464.      is written to the file as it is executed.
  1465.  
  1466.      The JOURNAL file is useful if you are having trouble getting a new MACRO
  1467.      definition or command file working.  You can try the new operation and
  1468.      then look at the journal file to see what went wrong.
  1469.  
  1470.      The JOURNAL file is also useful in creating a command file.  Enter the
  1471.      command JOURNAL ON before you dial a remote computer.  Later, you will
  1472.      be able to edit the file Journal.Env to create a command file which will
  1473.      manage the entire log-on automatically.
  1474.  
  1475.      If the file Journal.Env already exists when you enter the JOURNAL ON
  1476.      command the old file is overwritten.  If you want to save an old Journal
  1477.      file, rename the file you want to save or else supply a different file name
  1478.      in the JOURNAL ON statement.
  1479.  
  1480.      Syntax
  1481.        JOUrnal ON {filename}
  1482.        JOUrnal OFF
  1483.  
  1484.      Example
  1485.        JOURNAL ON \tmp\Journal.010  ; Write journal information to named file
  1486.        JOURNAL ON                   ; Write to file JOURNAL.ENV
  1487.        JOURNAL OFF                  ; Stop writing journal information
  1488.  
  1489.  
  1490. JUMP - Move to another line in a command file
  1491.  
  1492.      The JUMP command tells Envoy to find a LABEL in a command file and
  1493.      continue execution there.  Use the JUMP and LABEL commands and the IF and
  1494.      ELSE commands in a command file for program control.
  1495.  
  1496.      If you issue the JUMP command from inside an IF block all IF conditions are
  1497.      reset so that execution will continue with the command after the LABEL even
  1498.      if you JUMP into the middle of an IF command.
  1499.  
  1500.      Syntax
  1501.        JUmp {Labelname}
  1502.          The command file is rewound and Envoy finds the LABEL labelname.
  1503.          Execution continues with the command just after the LABEL.
  1504.  
  1505.      Example
  1506.        REM # REM # REM                      ; Three Blank lines
  1507.        REM 'Enter 1 to log on to System 1'
  1508.        REM 'Enter 2 to log on to System 2'
  1509.        SET String *                         ; User chooses 1 or 2
  1510.        If String '1' # Jump Sys1 # Endif
  1511.        If String '2' # Jump Sys2 # Endif
  1512.        Exit
  1513.  
  1514.        Label Sys1                           ; User chose system 1
  1515.        Set Number '111-1111'
  1516.        Dial
  1517.        Exit
  1518.  
  1519.        Label Sys2                           ; User chose system 2
  1520.        Set Number '222-2222'
  1521.        Dial
  1522.        Exit
  1523.  
  1524.  
  1525. LABEL - Mark a transfer point in a command file.
  1526.  
  1527.      The JUMP command tells Envoy to find a LABEL in a command file and continue
  1528.      execution there.  Use the JUMP and LABEL commands and the IF and ELSE
  1529.      commands in a command file for program control.
  1530.  
  1531.      Syntax
  1532.        LAbel {Labelname}
  1533.        The command JUMP {labelname} will cause Envoy to continue operation with
  1534.        the command just after this LABEL.
  1535.  
  1536.  
  1537. MACRO - Redefine the key which executes a command
  1538.  
  1539.      The MACRO command assigns a command to a keyboard key.  You can use the
  1540.      MACRO command to set up the Envoy editor to behave like your favorite
  1541.      editor.  You can also use the MACRO command to assign a complicated
  1542.      series of commands to a single key.
  1543.  
  1544.      Assign commands to a key by entering MACRO n #command1#command2#... where n
  1545.      is the key number.  The numbers assigned to each of the keys are listed in
  1546.      Tables 7.2 and 7.3.  You can also find out the number assigned to a key by
  1547.      pressing the key and looking at the Envoy information line.
  1548.  
  1549.      Once you have decided which commands should be assigned to your keys, you
  1550.      can put the MACRO commands into file Initial.Env.  The commands in this
  1551.      file are executed each time Envoy starts up.
  1552.  
  1553.      Enter the command MACRO LIST if you want to see all of the MACRO
  1554.      assignments.  This command writes all of the current MACRO assignment to
  1555.      the file Macdef.env.
  1556.  
  1557.      Use the MACRO DO command to execute a string of commands which have been
  1558.      assigned to a key without having to press the key.  The MACRO DO command
  1559.      is useful in a command file.
  1560.  
  1561.      Syntax
  1562.        MACRO n #command1#command2#.....
  1563.          Where n is the key number from Tables 7.2 and 7.3 or from the Envoy
  1564.          information line.  {commandi} can be any of the ENVOY line commands.
  1565.        MAcro List
  1566.          All of the current key assignments are written to file Macdef.Env.
  1567.        MACRO DO n
  1568.          Execute the commands which have been assigned to key number n.
  1569.  
  1570.      Example
  1571.        MACRO  328 # Go Up # Go Up   ; The Up-arrow key goes up two lines instead
  1572.                                     ; of one.
  1573.        MACRO  349 #Screen Clear# Dir C#Wait Key#Screen Show
  1574.                              ; Press Shift F10 to see the directory of drive C:,
  1575.                              ; wait for the user to press a key,
  1576.                              ; then show the current edit file.
  1577.  
  1578. MENU - Show the Envoy menu.
  1579.  
  1580.      You can use Envoy by using command keys, entering commands on the command
  1581.      line, executing command files or by choosing selections from the Envoy
  1582.      menu.  The menu is useful for beginners.  You can enter the main menu by
  1583.      pressing alt-m or by entering the MENU command.
  1584.  
  1585.      Syntax
  1586.        Menu
  1587.  
  1588.  
  1589. OFF - Go off line.
  1590.  
  1591.      Enter the OFF command to exit terminal mode.  Envoy will not break the
  1592.      connection to a remote computer even if you quit Envoy to execute DOS
  1593.      commands or run another program.  Use the DISCONNECT command to break the
  1594.      connection if you are completely done.
  1595.  
  1596.      Syntax
  1597.        OFf
  1598.  
  1599.      Example
  1600.        ON                                  ; Go on line
  1601.        SEND STRING 'AT DP 1-800-333-1234' ; Dial a number without using the
  1602.                                            ; DIAL command.
  1603.        OFF                                 ; Go off line
  1604.  
  1605.  
  1606. ON - Go on line.
  1607.  
  1608.      Enter the ON command to enter terminal mode.  After you enter this
  1609.      command all the ASCII key code of each key you press will be sent to the
  1610.      modem except for keys which generate an extended scan code or MACRO keys.
  1611.      If the modem is connected to a remote computer the key codes will be sent
  1612.      to that computer.  If the modem is in command mode the key codes will be
  1613.      treated as modem commands.
  1614.  
  1615.      You can use the ON and OFF commands to enter and leave terminal mode
  1616.      without breaking a connection to the remote computer.  You might want to
  1617.      do this to edit a text file or leave Envoy to execute another program.
  1618.      Use the DISCONNECT command to break the phone connection.
  1619.  
  1620.      Syntax
  1621.        ON
  1622.  
  1623.      Example
  1624.        ON                                 ; Go on line
  1625.        SEND STRING 'AT DP 1-800-333-1234' ; Dial a number without using the DIAL
  1626.                                           ; command
  1627.  
  1628.  
  1629. PARITY - Set the parity for serial communications
  1630.  
  1631.      Every byte which is sent through a serial port is converted to a stream of
  1632.      bits.  First a start bit is sent to tell the connected equipment that a
  1633.      byte is being sent.  Next the data bits are sent, possibly followed by a
  1634.      parity bit.  Finally, one or two stop bits tell the connected equipment
  1635.      that the transmission of the byte is complete.
  1636.  
  1637.      The parity bit is used by the serial port to check that a byte has been
  1638.      received correctly.  The serial port examines the data bits and then adds
  1639.      a parity bit.  If odd parity has been chosen, the parity bit is set so
  1640.      that an odd number of bits are ones in the transmission of the data bits
  1641.      Plus the parity bit.  If even parity has been chosen, there will be an
  1642.      even number of bits in the transmission.  If null parity has been chosen,
  1643.      no parity bit is sent.
  1644.  
  1645.      The parity bit is checked by the serial port when a byte is received.  The
  1646.      parity check will fail if one of the bits has been flipped by noise on the
  1647.      phone line.  Envoy sets characters which fail the parity check to '*' so
  1648.      that you can see on the screen that there is a line problem.
  1649.  
  1650.      Parity checking is a not an especially good way to check the integrity of
  1651.      the transmitted data.  It will fail to flag an error much of the time.
  1652.      Parity checking is being replaced by more sophisticated error checking.
  1653.      Data-checking modems and networks use CRC checking to make sure that each
  1654.      byte has been received correctly.  If there is an error the byte is resent
  1655.      so that neither the sending nor the receiving program ever sees an error.
  1656.      Similarly, File transfer programs (including Envoy) use CRC checking to
  1657.      check that an entire packet of data has been received correctly.
  1658.  
  1659.      Two computers which are connected by a modem must use the same parity
  1660.      checking.  If you don't know what convention the remote computer uses you
  1661.      can find out by trial and error.  The most common setting for bulletin
  1662.      boards is 8 data bits, no parity bit, one stop bit.  Most mainframe
  1663.      computers use 7 data bits, either even or odd parity, and one stop bit.  Try
  1664.      these settings and see if you get a good connection.  If this doesn't work
  1665.      try other settings or give up until you find out the right settings.
  1666.  
  1667.      Syntax
  1668.        PARity  NULL | EVEN | ODD
  1669.  
  1670.      Example
  1671.        DATA 8      ;  Use eight data bits(default)
  1672.        PARITY NULL ;  Don't send a parity bit(default)
  1673.  
  1674.  
  1675. PAUSE - Pause before executing the next command.
  1676.  
  1677.      The PAUSE command tells Envoy to wait awhile before processing the next
  1678.      command.  This allows time for a remote computer to process the previous
  1679.      instruction.
  1680.  
  1681.      Syntax
  1682.        PAuse  {seconds}
  1683.           Where {seconds} is the delay time in seconds expressed as a
  1684.           decimal fraction
  1685.  
  1686.      Example
  1687.        Send String  'myname'     ; Identify yourself to the remote computer
  1688.        Pause  3.5                ; Wait three and a half seconds
  1689.        Send String 'mypassword'  ; Supply your password
  1690.  
  1691.  
  1692. PRotocol - Choose File transfer protocol
  1693.  
  1694.      There are many file transfer schemes around.  The XMODEM protocol is one of
  1695.      the first and has become the closest thing to a standard around.
  1696.  
  1697.      The XMODEM file transfer protocol has several variants.  The original
  1698.      protocol uses a simple checksum to detect for transmission errors.  This
  1699.      isn't particularly reliable because it is fairly easy for a bad data packet
  1700.      to pass the checksum test.  The CRC(Cyclical Redundancy Check) test is much
  1701.      more reliable.  It is almost impossible for a bad data packet to pass a CRC
  1702.      test.  If a data packet fails the test the sending program retransmits
  1703.      until the packet has been received correctly.  Always use CRC error
  1704.      checking unless you are logged onto a system which only offers the checksum
  1705.      option.
  1706.  
  1707.      Another variant of the XMODEM protocol is to send 1K byte data packets
  1708.      versus the 128 bytes used by the original protocol.  Larger data packets
  1709.      speed up file transfer because less time is spent waiting for the receiving
  1710.      program to transmit the byte which indicates that the last packet has been
  1711.      received correctly.  On the other hand, a larger data packet is more likely
  1712.      to get 'hit' by line noise so that more time is spent retransmitting if you
  1713.      have a noisy connection.  If you have a very noisy line you will be better
  1714.      off using 128 byte packet size.
  1715.  
  1716.      The YMODEM protocol is a derivative of XMODEM.  YMODEM includes CRC error
  1717.      checking, 1K byte data packet size, and sends a packet during the initial
  1718.      handshaking which includes the file name, file creation date, and exact
  1719.      file size so that the received file is exactly identical to the file on the
  1720.      sending system.
  1721.  
  1722.      The Envoy default is to use the XMODEM protocol with CRC error checking and
  1723.      128 byte packet size.  You do not need to change this default when you are
  1724.      receiving a file even if the sending program is using one of the other
  1725.      XMODEM variants.  Envoy will automatically recognize which protocol is
  1726.      being used.  When you are sending a file to another computer you will have
  1727.      to be sure that Envoy is using the protocol which the remote computer
  1728.      expects.
  1729.  
  1730.      Syntax
  1731.        PRotocol {variant}
  1732.          Allowed values for {variant} are:
  1733.               X, XC, XK, Y
  1734.  
  1735.      Example
  1736.        Protocol Y         ;  Use YMODEM protocol
  1737.                 {now tell remote computer to get ready to receive a file}
  1738.        Xsend myfile       ;  Send the file
  1739.  
  1740.  
  1741. PUT - Put a character string into the file
  1742.  
  1743.      The PUT STRING command tells Envoy to put a character string into the edit
  1744.      file at the cursor position.  This command enables you to assign entire
  1745.      words or phrases to a single key.  The PUT BYTE command provides an easy
  1746.      way to put special characters into the file.
  1747.  
  1748.      Syntax
  1749.        PUT  BYTE  {number}
  1750.        PUT  BYTE  *
  1751.        PUT  STRING '{alphanumeric string}'
  1752.        PUT  STRING *
  1753.  
  1754.      Example
  1755.        PUT String  'word'           ; Puts the string into the file
  1756.        MACRO 300 # Put String 'REM' ; Press the alt-z key to put REM into the 
  1757.                                     ; file
  1758.  
  1759.  
  1760. QUIT - Quit Envoy and return to DOS.
  1761.  
  1762.      The QUIT command stops program execution and returns you to Dos.  If you
  1763.      have made any changes to the current edit file, Envoy will ask you if you
  1764.      want to save the file.
  1765.  
  1766.      Use the DISCONNECT command if you want to hang up the phone before you quit
  1767.      the program.  If you don't, Envoy will not hang up the phone and you will
  1768.      be able to restart Envoy later to continue where you left off.
  1769.  
  1770.      If you do plan to return to Envoy you might wish to use the DOS command
  1771.      to chain to DOS instead of QUITing the program.
  1772.  
  1773.      Syntax
  1774.        Quit
  1775.  
  1776.  
  1777. READ - Read a new text file.
  1778.  
  1779.      The Read command reads a new text file.  If the current edit file has been
  1780.      changed since the last time you saved it, Envoy will give you the choice of
  1781.      saving the current file before reading the new file.
  1782.  
  1783.      Syntax
  1784.        Read filespec [m,n]
  1785.          Where filespec is the name of the file to read and can contain a
  1786.          complete directory path.  If you specify the parameters m and n Envoy
  1787.          will read in the block of text between line number m and line number
  1788.          n in the file.  The defaults for m and n are 1 and 32000.
  1789.  
  1790.      Example
  1791.        READ  Newtext      ; Read file Newtext
  1792.        READ  C:\Mine\New  ; Read file New in directory C:\Mine
  1793.  
  1794.  
  1795. REMARK - Write a remark to the screen     
  1796.  
  1797.      The REMARK command writes a remark to the screen.  The line is not added to
  1798.      the edit file.  The line is written on the next to the last line on the
  1799.      screen, which is just above the Envoy information line.  When you use the
  1800.      REMARK command in a command file remember to first use the SCREEN CLEAR
  1801.      command and to use the SCREEN SHOW command when you are finished.  If you
  1802.      don't, the screen display might become confusing.
  1803.  
  1804.      Syntax
  1805.         REMark
  1806.  
  1807.      Example
  1808.         Screen Clear                        ; Blank the screen
  1809.         REM '' # REM ''#REM ''REM ''        ; Write 4 blank lines
  1810.         REM ' Do you want to continue? Y/N' ; Ask a question
  1811.         Set String *                        ; Get the answer from the user
  1812.         If String 'N'                       ; Exit the command file if the 
  1813.           Screen Show                       ; user wants to quit.
  1814.           Exit        # Endif               ;
  1815.  
  1816.  
  1817. REPEAT - Repeat last find or replace
  1818.  
  1819.      The REPEAT command repeats the last find or replace operation.  Search
  1820.      options for the operation are not changed.
  1821.  
  1822.      Syntax
  1823.         REPEat
  1824.  
  1825.      Example
  1826.         Replace 'BadWord' 'GoodWord'  'UY' ; Replace the next two
  1827.                            ; occurrences of the string.  Ignore upper case.
  1828.                            ; Replace without asking.
  1829.         Repeat             ; Replace the next two occurrences
  1830.  
  1831.  
  1832. REPLACE - Replace a Character String
  1833.  
  1834.      The REPLACE command finds a character string in the edit file and replaces
  1835.      it with another.  You must specify the string which you wish to find, its
  1836.      replacement, and search options.
  1837.  
  1838.      Options for the REPLACE operation are :
  1839.                    B  Search In Block
  1840.                    G  Global Search
  1841.                    U  Ignore Upper/Lower Case
  1842.                    n  Find the n'th occurrence
  1843.                    Y  Replace without asking
  1844.  
  1845.      If you specify * for the character strings or for the Search option
  1846.      string, Envoy will prompt you for this information.
  1847.  
  1848.      Syntax
  1849.         REPLace '{target}' '{replacement}'  '{option string}'
  1850.       OR
  1851.         REPLace * * *
  1852.  
  1853.           Envoy will prompt you to supply the target string, the replacement
  1854.           string and options.
  1855.  
  1856.      Example
  1857.         Replace 'Bad' 'Good' 'UY' ; Replace the next two occurrences of
  1858.                                   ; the string.  Ignore upper case.  Replace
  1859.                                   ; without asking.
  1860.  
  1861. RETPOS - Return position after entering a line
  1862.  
  1863.      RETPOS defines the column to which the cursor goes when you enter a line.
  1864.      It is useful in setting margins.  When the RETPOS command is entered the
  1865.      tab setting is set to the current position on the line.
  1866.  
  1867.      Syntax
  1868.        RETPos
  1869.  
  1870.  
  1871. SCREEN - Erase or refresh the screen
  1872.  
  1873.      The SCREEN command is used to erase or refresh the screen display.  The
  1874.      command is useful in a command file which writes messages to the screen
  1875.      with the REMARK command.
  1876.  
  1877.      Use the SCREEN CLEAR command to erase the screen.  Use the SCREEN SHOW
  1878.      command to display the current edit file and the Envoy information line.
  1879.  
  1880.      Syntax
  1881.        SCreen Clear
  1882.           or
  1883.        SCreen Show
  1884.  
  1885.      Example
  1886.         Screen Clear                        ; Blank the screen
  1887.         REM '' # REM ''#REM ''REM ''        ; Write 4 blank lines
  1888.         REM ' Do you want to continue? Y/N' ; Ask a question
  1889.         Set String *                        ; Get the answer from the user
  1890.         If String 'N'                       ; Exit the command file if the 
  1891.           Screen Show                       ; user wants to quit.
  1892.           Exit        # Endif               ;
  1893.  
  1894.  
  1895. SEND - Send to the modem
  1896.  
  1897.      Use the SEND command to send information to a remote computer or, if your
  1898.      modem is in command mode, to control the modem.  The SEND command has
  1899.      several options :
  1900.  
  1901.      The SEND BLOCK command sends the blocked region of your file to the remote
  1902.      computer.  You can use this command to transfer lines to a file on the
  1903.      remote computer.
  1904.  
  1905.      The SEND BREAK command sends a 'break' signal.  Some network systems require
  1906.      a user to send a 'break' signal to start a session or to abort a session
  1907.      which is in process.  A user sends a break signal by setting the data port
  1908.      line to a low voltage for a while, usually .20 to .50 seconds.  ENVOY uses
  1909.      a default duration of .40 seconds which will work on most systems.  You can
  1910.      choose another duration if you want to but this should never be necessary.
  1911.  
  1912.      The SEND BYTE command sends a single character to the modem.  You can send
  1913.      any alphanumeric character or control character.  Specify the ASCII code
  1914.      number of the character you wish to send.
  1915.  
  1916.      The SEND FILE command sends an entire text file.  Be sure that the remote
  1917.      computer is ready before you enter the SEND FILE command.  You can enter
  1918.      a file name which includes an entire directory path.
  1919.  
  1920.      The SEND STRING command sends a character string to the modem.  If the
  1921.      modem is in command mode the string will be treated as a modem command.
  1922.      If the modem has made a connection to a remote computer the string will be
  1923.      sent to that computer.  The SEND STRING command is used to transmit sends
  1924.      alphanumeric characters.  You would usually use the SEND BYTE command to
  1925.      send control characters.
  1926.  
  1927.      Syntax
  1928.        SEND  BLOCK
  1929.        SEND  BREAK {duration}
  1930.        SEND  BYTE  {number}
  1931.        SEND  FILE  {filespec}
  1932.        SEND  STRING '{alphanumeric string}'
  1933.  
  1934.      Example
  1935.        ON           ;  Enter terminal mode
  1936.        Send Break   ;  Send a break signal
  1937.        Pause 1.5    ;  Wait 1.5 seconds
  1938.        Send Break   ;  Send another break signal
  1939.  
  1940.        Wait String "Enter your password:" 30 ; Wait 30 seconds for the enquiry
  1941.        SEND String "MyWord"                  ; Log on
  1942.  
  1943.  
  1944. SET - Set one of the Envoy control parameters
  1945.  
  1946.      The SET command sets the value of one of the Envoy control strings or the
  1947.      Envoy counter.  You can set the modem dial prefix, the phone number which
  1948.      will be dialed by the DIAL command, the internal control string which is
  1949.      tested by the IF command, or the internal Envoy counter which can also be
  1950.      tested by the IF command.
  1951.  
  1952.      Syntax
  1953.  
  1954.        SET Prefix '{string}'  This is the command string which tells your modem
  1955.                               to dial a number(see DIAL command).
  1956.  
  1957.        SET Number '{string}'  Tell Envoy what phone number to Dial(see
  1958.                               DIAL command).
  1959.  
  1960.        SET String '{string}'  Defines the character string which will be tested
  1961.                               by the IF command.
  1962.  
  1963.        Set Count n            Defines the value of the Envoy internal counter
  1964.                               is tested by the IF command.
  1965.  
  1966.        For any of these commands, if you enter the '*' character Envoy will
  1967.        prompt you for the value.
  1968.  
  1969.      Example
  1970.        Set Prefix  "AT DP"    ; ATtention Dial Pulse Tells a Hayes compatible
  1971.                               ; modem to dial a phone number
  1972.        Set Number '123-4567'  ; Set phone number for the DIAL command
  1973.        SET String 'OK'        ; Wait 30 seconds for the enquiry
  1974.        Set String *           ; Envoy will prompt you for the value
  1975.        Set Count 1            ; Initialize counter
  1976.  
  1977.  
  1978. STRIP - Strip eighth bit from received characters
  1979.  
  1980.      You might occasionally have to communicate with a system which changes the
  1981.      parity setting during log in.  This can be frustrating because you must
  1982.      re-enter the PARITY command quickly or you will lose characters. The STRIP
  1983.      command can help in this situation.  You should set your communications
  1984.      protocol to 8 data bits with no parity bit before entering the STRIP
  1985.      command. STRIP ON tells Envoy to mask the eighth bit of every character it
  1986.      receives.
  1987.  
  1988.      The STRIP setting has no effect during binary file transfer.  
  1989.  
  1990.      Syntax
  1991.        STRip ON|OFF
  1992.          Masks the eighth bit of received data.
  1993.  
  1994.      Example
  1995.        DATA 8
  1996.        PARITY NONE
  1997.        STRIP  ON
  1998.  
  1999. STOP - Set the number of stop bits for serial communications
  2000.  
  2001.      Every byte which is sent through a serial port is converted to a stream
  2002.      of bits.  First a start bit is sent to tell the connected equipment that
  2003.      a byte is being sent.  Next the data bits are sent, possibly followed by
  2004.      a parity bit.  Finally, one or two stop bits tell the connected equipment
  2005.      that the transmission of the byte is complete.
  2006.  
  2007.      The STOP command tells Envoy how many(one or two) stop bits to use.  The
  2008.      Envoy default setting is to use one stop bit, which is the most common
  2009.      convention .
  2010.  
  2011.  
  2012.      Syntax
  2013.        STop   1 | 2
  2014.  
  2015.      Example
  2016.        Stop 2      ;  Use two stop bits
  2017.        Stop 1      ;  Reset the number of stop bits to the default
  2018.  
  2019.  
  2020. TABS - Set tab markers
  2021.  
  2022.      The TABS command sets the column to which the cursor will move when you
  2023.      press the tab-right or tab-left key.  Five tabs are available.
  2024.  
  2025.      The default setting for the tabs are:
  2026.              TABS[1] = 1        TABS[2] = 40       TABS[3] = 80
  2027.              TABS[4] = 255      TABS[5] = 255
  2028.  
  2029.      Syntax
  2030.        Tabs index setting
  2031.           Where index is the index number of the tab to be set and
  2032.           setting is the new tab setting.
  2033.  
  2034.      Example
  2035.        TABS 2 6     ;  Set the second tab to column six
  2036.        TABS 3 10    ;  Set the third tab to column ten
  2037.  
  2038.  
  2039. UNblock - Unblock region
  2040.  
  2041.      The UNBLOCK command removes any block markings which you set with the BLOCK
  2042.      command.  The text in the block is not changed.
  2043.  
  2044.      Example
  2045.        UNBLOCK    ;  Remove block marks
  2046.  
  2047.  
  2048. WAIT - Wait for something to happen
  2049.  
  2050.      Use the WAIT command to wait until some condition is satisfied.  The WAIT
  2051.      command has several options :
  2052.  
  2053.      The WAIT CONNECT command tells Envoy to wait for a Carrier detect signal
  2054.      from the modem, which indicates that a connection to a remote computer has
  2055.      been made.
  2056.  
  2057.      The WAIT KEY command tells Envoy to wait until you press a keyboard key.
  2058.      Use the WAIT KEY command file to give yourself time to think after writing
  2059.      a message from a command file with the REMARK command.
  2060.  
  2061.      The WAIT QUIET command tells Envoy to wait until the line has been quiet
  2062.      -no characters have been sent- for a while.
  2063.  
  2064.      The WAIT STRING command tells Envoy to wait for a string of characters to
  2065.      be transmitted from the remote computer.  The string of characters must be
  2066.      enclosed in single quotes.  The second parameter on the line is the
  2067.      number of seconds to wait for the string of characters.  If you do not
  2068.      enter the second parameter Envoy will wait for up to 10 seconds for the
  2069.      character string to be sent.
  2070.  
  2071.      The WAIT UNTIL command tells Envoy to wait until a set time is reached.
  2072.      This command is useful because many bulletin boards are busy during the
  2073.      daytime.  You can use the WAIT UNTIL command to log onto a remote computer
  2074.      and download files in the middle of the night when the system isn't busy
  2075.      and telephone rates are cheaper.  Specify the time setting for the
  2076.      WAIT UNTIL command in the form HH MM.  The time is specified using 24
  2077.      hour notation so that 9:30 PM is written as 21 30 .
  2078.  
  2079.      You can test the result of the WAIT commands with the IF FOUND command.
  2080.      FOUND is true if the condition you were  WAITing for was satisfied.  FOUND
  2081.      is false if the the WAIT timed out without the condition being satisfied or
  2082.      if you pressed the alt-X key to abort the WAIT.
  2083.  
  2084.      Syntax
  2085.        WAit  Connect   {waittime}
  2086.        WAit  Key       {waittime}
  2087.        WAit  Connect   {waittime}
  2088.        WAit  String    {waittime}
  2089.        WAit  Until      hh mm
  2090.  
  2091.      Example
  2092.        Wait Until 23 30                       : Wait until 11:30 PM
  2093.        Dial                                   ; Call the remote computer
  2094.        Wait String "Enter your password:"  30 ; Wait 30 seconds for the message
  2095.        If found  
  2096.         Send String "MyWord"                  ; Log on
  2097.        Else 
  2098.         Exit
  2099.        Endif
  2100.  
  2101.  
  2102. WRAP - Wrap around the output of the serial port
  2103.  
  2104.      The WRAP command is only useful for testing the computer hardware.  It is
  2105.      not used for a normal setup.
  2106.  
  2107.      The WRAP command connects the output of a serial port to the input of the
  2108.      same port.  Characters sent to the port are not transmitted to the modem.
  2109.      Instead, they circle around and are received by the serial port just as if
  2110.      they had been sent from a remote computer.
  2111.  
  2112.      Use the wrap command if you suspect that you have a problem with your
  2113.      hardware.
  2114.  
  2115.      Syntax
  2116.        WRAp  ON|OFF
  2117.           WRAP ON wraps the output of the serial port.  WRAP OFF resets the
  2118.           option to normal
  2119.  
  2120.      Example
  2121.        COM 1                           ; Com 1 is installed
  2122.        ON                              ; Go Online
  2123.        Wrap  On                        ; Wrap output
  2124.        SEND STRING 'Do you see this?'  ; If the string is echoed to the
  2125.                                        ; screen the serial port is OK.
  2126.        Wrap Off                        ; Return to normal
  2127.  
  2128.  
  2129. WRITE - Write edit file to disk.
  2130.  
  2131.      The WRITE command writes the entire edit file to a disk file.  The file
  2132.      specification can include a full directory path.  If the file you name
  2133.      already exists Envoy will ask you before overwriting the old file.
  2134.  
  2135.      When you read a file or write a file to disk, Envoy remembers the name of
  2136.      the file and displays it on the information line.  If you enter the WRITE
  2137.      command without giving a file name, Envoy will use the last file name which
  2138.      you entered as a default.  This saves you the trouble of having to type in
  2139.      the file name and prevents problems caused by typographical errors.
  2140.  
  2141.      Syntax
  2142.        WRIte filespec
  2143.           Where filespec is the name of the file to be written and can include
  2144.           a full directory path.  If filespec is omitted the current file name
  2145.           is used.
  2146.  
  2147.      Example
  2148.        READ  C:\Mine\Manual.Txt
  2149.           {edit the file}
  2150.        WRITE                            ; Write blocked region to file.
  2151.        WRITE C:\Mine\Save\Backup02.Txt  ; Save another copy of the file
  2152.  
  2153.  
  2154. XSEND - Send a file to a remote computer
  2155.  
  2156.      Envoy can send files to a remote computer using the XMODEM or YMODEM
  2157.      protocols.  Envoy automatically recognizes which variant of these protocols
  2158.      is being used by the remote computer.
  2159.  
  2160.      Before entering the XSEND command you must tell the remote computer to send
  2161.      the file and select the protocol.  Tell the remote computer to use YMODEM
  2162.      or to use XMODEM with CRC.  If neither of these protocols is available,
  2163.      tell the remote computer to use XMODEM with Checksum error checking.
  2164.  
  2165.      Syntax
  2166.        XSend filespec
  2167.          Where filespec is the name of file which will be created and can
  2168.          include a complete path
  2169.  
  2170.      Example
  2171.        XSend C:Games/Arcade.exe  ; Send file Arcade.Exe in directory Games
  2172.  
  2173.  
  2174. XGET - Receive a file from a remote computer
  2175.  
  2176.      Envoy will receive files from a remote computer sent with the XMODEM or
  2177.      YMODEM protocols.  Envoy automatically recognizes which variant of these
  2178.      protocols is being used.
  2179.  
  2180.      Before entering the XGET command you must tell the remote computer to send
  2181.      the file and select the protocol.  Tell the remote computer to use YMODEM
  2182.      or to use XMODEM with CRC.  Usually file transfer is quicker if you use 1
  2183.      Kilobyte(rather than 128 byte) data packets.  Do not choose 1 Kilobyte data
  2184.      packets if there is noise on the line because retransmitting bad packets
  2185.      will take too much time.
  2186.  
  2187.      Syntax
  2188.        XGet filespec
  2189.          Where filespec is the name of file which will be created and can
  2190.          include a complete path
  2191.  
  2192.      Example
  2193.        XGET C:Games/Arcade.exe  ; Receive file Arcade.Exe in directory Games
  2194.  
  2195.       
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202.                             7  CHARACTER CODES AND SCAN CODES
  2203.  
  2204.     A character code relates a character set (e.g. 'a','b'...) to the binary
  2205. representation used by the computer.  This subject can be confusing because
  2206. there are several incompatible character codes.
  2207.  
  2208.     The ASCII character set is shown in Table 7.1.  The ASCII set is a standard
  2209. way of representing alphanumeric and computer control characters.
  2210.  
  2211.     IBM compatible computers use 256 display codes based on the ASCII character
  2212. set.  The IBM display codes define what you see on the CRT screen when you write
  2213. a character.  The first 128 characters of the IBM set are loosely based on the
  2214. ASCII set.  The second 128 characters were chosen by IBM and be interpreted
  2215. differently by non-IBM hardware, such as your printer.  This is why you
  2216. sometimes see garbage when you print your screen display.
  2217.  
  2218.      IBM compatible computers also use a keyboard character set which defines
  2219. what number is generated when you press a keyboard key.  The first 128 codes are
  2220. based on the ASCII character set.  Table 7.2 shows the first 128 keyboard scan
  2221. codes.
  2222.  
  2223.      The IBM extended keyboard character set includes the Function keys, the Alt
  2224. keys, etc.  ENVOY uses a character set based on the IBM character set.  The
  2225. ENVOY extended codes are formed by adding 256 to the scan codes for the IBM
  2226. extended character set.  Table 7.3 shows the extended keyboard set used by
  2227. ENVOY.
  2228.  
  2229.      You should use keys from the extended character set when you define ENVOY
  2230. MACROs.  If you use a key which generates one of the ASCII codes in the range
  2231. 0 to 127 you will not be able to send that code to a remote computer.
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.                                    Table 7.1
  2241.  
  2242.                             ASCII Character Codes
  2243.  
  2244.  
  2245. --------------------------------------------------------------------------------
  2246. | ASCII Character  |  ASCII Character  |  ASCII Character  |  ASCII Character  |
  2247. | Value            |  Value            |  Value            |  Value            |
  2248. --------------------------------------------------------------------------------
  2249. |    0     NUL     |    32   (space)   |    64      @      |    96      `      |
  2250. |    1     SOH     |    33      !      |    65      A      |    97      a      |
  2251. |    2     STX     |    34      "      |    66      B      |    98      c      |
  2252. |    3     ETX     |    35      #      |    67      C      |    99      c      |
  2253. |    4     EOT     |    36      $      |    68      D      |   100      d      |
  2254. |    5     ENQ     |    37      %      |    69      E      |   101      e      |
  2255. |    6     ACK     |    38      %      |    70      F      |   102      f      |
  2256. |    7     BEL     |    39      '      |    71      G      |   103      g      |
  2257. |    8     BS      |    40      (      |    72      H      |   104      h      |
  2258. |    9     HT      |    41      )      |    73      I      |   105      i      |
  2259. |   10     LF      |    42      *      |    74      J      |   106      j      |
  2260. |   11     VT      |    43      +      |    75      K      |   107      k      |
  2261. |   12     FF      |    44      ,      |    76      L      |   108      l      |
  2262. |   13     CR      |    45      -      |    77      M      |   109      m      |
  2263. |   14     SO      |    46      .      |    78      N      |   110      n      |
  2264. |   15     SI      |    47      /      |    79      O      |   111      o      |
  2265. |   16     DLE     |    48      0      |    80      P      |   112      p      |
  2266. |   17     DC1     |    49      1      |    81      Q      |   113      q      |
  2267. |   18     DC2     |    50      2      |    82      R      |   114      r      |
  2268. |   19     DC3     |    51      3      |    83      S      |   115      s      |
  2269. |   20     DC4     |    52      4      |    84      T      |   116      t      |
  2270. |   21     NAK     |    53      5      |    85      U      |   117      u      |
  2271. |   22     SYN     |    54      6      |    86      V      |   118      v      |
  2272. |   23     ETB     |    55      7      |    87      W      |   119      w      |
  2273. |   24     CAN     |    56      8      |    88      X      |   120      x      |
  2274. |   25     EM      |    57      9      |    89      Y      |   121      y      |
  2275. |   26     SUB     |    58      :      |    90      Z      |   122      z      |
  2276. |   27     ESC     |    59      ;      |    91      [      |   123      {      |
  2277. |   28     FS      |    60      <      |    92      \      |   124      |      |
  2278. |   29     GS      |    61      =      |    93      ]      |   125      }      |
  2279. |   30     RS      |    62      >      |    94      ^      |   126      ~      |
  2280. |   31     US      |    63      ?      |    95      _      |   127            |
  2281. --------------------------------------------------------------------------------
  2282.  
  2283.  
  2284.  
  2285.  
  2286.  
  2287.  
  2288.  
  2289.  
  2290.                                    Table 7.2
  2291.  
  2292.  
  2293.                             IBM Keyboard Scan Codes
  2294.                                     (0-127)
  2295.  
  2296. --------------------------------------------------------------------------------
  2297. | Keyboard   Code  |  Keyboard   Code  |  Keyboard   Code  |  KeyBoard   Code  |
  2298. |   Key            |    Key            |    Key            |    Key            |
  2299. --------------------------------------------------------------------------------
  2300. |  (none)       0  |   SpaceBar    32  |     @         64  |     `         96  |
  2301. |   c-a         1  |     !         33  |     A         65  |     a         97  |
  2302. |   c-b         2  |     "         34  |     B         66  |     c         98  |
  2303. |   c-c         3  |     #         35  |     C         67  |     c         99  |
  2304. |   c-d         4  |     $         36  |     D         68  |     d        100  |
  2305. |   c-e         5  |     %         37  |     E         69  |     e        101  |
  2306. |   c-f         6  |     %         38  |     F         70  |     f        102  |
  2307. |   c-g         7  |     '         39  |     G         71  |     g        103  |
  2308. |   c-h         8  |     (         40  |     H         72  |     h        104  |
  2309. |   c-i         9  |     )         41  |     I         73  |     i        105  |
  2310. |   c-j        10  |     *         42  |     J         74  |     j        106  |
  2311. |   c-k        11  |     +         43  |     K         75  |     k        107  |
  2312. |   c-l        12  |     ,         44  |     L         76  |     l        108  |
  2313. |   c-m        13  |     -         45  |     M         77  |     m        109  |
  2314. |   c-n        14  |     .         46  |     N         78  |     n        110  |
  2315. |   c-o        15  |     /         47  |     O         79  |     o        111  |
  2316. |   c-p        16  |     0         48  |     P         80  |     p        112  |
  2317. |   c-q        17  |     1         49  |     Q         81  |     q        113  |
  2318. |   c-r        18  |     2         50  |     R         82  |     r        114  |
  2319. |   c-s        19  |     3         51  |     S         83  |     s        115  |
  2320. |   c-t        20  |     4         52  |     T         84  |     t        116  |
  2321. |   c-u        21  |     5         53  |     U         85  |     u        117  |
  2322. |   c-v        22  |     6         54  |     V         86  |     v        118  |
  2323. |   c-w        23  |     7         55  |     W         87  |     w        119  |
  2324. |   c-x        24  |     8         56  |     X         88  |     x        120  |
  2325. |   c-y        25  |     9         57  |     Y         89  |     y        121  |
  2326. |   c-z        26  |     :         58  |     Z         90  |     z        122  |
  2327. | Escape       27  |     ;         59  |     [         91  |     {        123  |
  2328. | (none)       28  |     <         60  |     \         92  |     |        124  |
  2329. | (none)       29  |     =         61  |     ]         93  |     }        125  |
  2330. | (none)       30  |     >         62  |     ^         94  |     ~        126  |
  2331. | (none)       31  |     ?         63  |     _         95  |   (none)     127  |
  2332. --------------------------------------------------------------------------------
  2333.  
  2334.  
  2335.  
  2336.  
  2337.                                    Table 7.3
  2338.  
  2339.  
  2340.                        IBM Extended Keyboard Scan Codes
  2341.                                   (256-388)
  2342.  
  2343.  
  2344. --------------------------------------------------------------------------------
  2345. |    Keyboard      Scan  |      Keyboard      Scan  |     Keyboard        Scan |
  2346. |      Key         Code  |        Key         Code  |       Key           Code |
  2347. --------------------------------------------------------------------------------
  2348. |                  256   |      alt-x         301   |         S-F7        346  |
  2349. |                  257   |      alt-c         302   |         S-F8        347  |
  2350. |                  258   |      alt-v         303   |         S-F9        348  |
  2351. |                  259   |      alt-b         304   |         S-F10       349  |
  2352. |                  260   |      alt-b         305   |         c-F1        350  |
  2353. |                  261   |      alt-n         306   |         c-F2        351  |
  2354. |                  262   |      alt-m         307   |         c-F3        352  |
  2355. |                  263   |                    308   |         c-F4        353  |
  2356. |                  264   |                    309   |         c-F5        354  |
  2357. |                  265   |                    310   |         c-F6        355  |
  2358. |                  266   |                    311   |         c-F7        356  |
  2359. |                  267   |                    312   |         c-F8        357  |
  2360. |                  268   |                    313   |         c-F9        358  |
  2361. |                  269   |                    314   |         c-F10       359  |
  2362. |                  270   |      F1            315   |         a-F1        360  |
  2363. |     TabLeft      271   |      F2            316   |         a-F2        361  |
  2364. |      alt-q       272   |      F3            317   |         a-F3        362  |
  2365. |      alt-w       273   |      F4            318   |         a-F4        363  |
  2366. |      alt-e       274   |      F5            319   |         a-F5        364  |
  2367. |      alt-r       275   |      F6            320   |         a-F6        365  |
  2368. |      alt-t       276   |      F7            321   |         a-F7        366  |
  2369. |      alt-y       277   |      F8            322   |         a-F8        367  |
  2370. |      alt-u       278   |      F9            323   |         a-F9        368  |
  2371. |      alt-i       279   |      F10           324   |         a-F10       369  |
  2372. |      alt-o       280   |                    325   |         PrtSc       370  |
  2373. |      alt-p       281   |                    326   |     c-LeftArrow     371  |
  2374. |                  282   |      Home          327   |     c-RightArrow    372  |
  2375. |                  283   |     UpArrow        328   |         c-End       373  |
  2376. |                  284   |      PgUp          329   |         c-PgDn      374  |
  2377. |                  285   |                    330   |         c-Home      375  |
  2378. |      alt-a       286   |    LeftArrow       331   |         alt-1       376  |
  2379. |      alt-s       287   |                    332   |         alt-2       377  |
  2380. |      alt-d       288   |   RightArrow       333   |         alt-3       378  |
  2381. |      alt-f       289   |                    334   |         alt-4       379  |
  2382. |      alt-g       290   |      End           335   |         alt-5       380  |
  2383. |      alt-h       291   |    DownArrow       336   |         alt-6       381  |
  2384. |      alt-j       292   |      PgDn          337   |         alt-7       382  |
  2385. |      alt-k       293   |      Ins           338   |         alt-8       383  |
  2386. |      alt-l       294   |      Del           339   |         alt-9       384  |
  2387. |                  295   |      S-F1          340   |         alt--       385  |
  2388. |                  296   |      S-F2          341   |         alt-=       387  |
  2389. |                  297   |      S-F3          342   |         c-PgUp      388  |
  2390. |                  298   |      S-F4          343   |          F11        389  |
  2391. |                  299   |      S-F5          344   |          F12        390  |
  2392. |    alt-z         300   |      S-F6          345   |                          |
  2393. --------------------------------------------------------------------------------
  2394.  
  2395.  
  2396.  
  2397.  
  2398.  
  2399.  
  2400.  
  2401.  
  2402.  
  2403.                             7  REGISTRATION INFORMATION
  2404.  
  2405.  
  2406.  
  2407.  
  2408.  
  2409.  
  2410. Private Use
  2411.  
  2412. ENVOY is being distributed as shareware.  You may use the program without charge
  2413. while you decide if it is useful to you.  If you find it useful you should
  2414. register as an ENVOY user.
  2415.  
  2416. Registration is not required for clubs or user groups distributing the software
  2417. on a SHAREWARE basis, providing that the entire ENVOY program package with
  2418. accompanying documentation files is included in the distribution, and no more
  2419. than a nominal fee (not to exceed $10) is charged for such distribution.
  2420.  
  2421.  
  2422. Corporate and Governmental Site License
  2423.  
  2424. This is a license for use of the software within your company or goverment
  2425. agency, and is not transferable.  This allows internal use and copying of the
  2426. software for as many sites / computers as contracted for.  Distributing,
  2427. repackaging, or reselling of the software to third parties is not allowed.
  2428.  
  2429.  
  2430. Source Code
  2431.  
  2432. The source code for the ENVOY program is available for a fee.  You may modify
  2433. the source code to build a custom version of the ENVOY code for your own use.
  2434. You may not distribute the source code or any modified version of the ENVOY
  2435. code.
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.                     ENVOY COMMUNICATIONS PROGRAM
  2447.  
  2448.  
  2449.  
  2450.  
  2451.                      SINGLE USER REGISTRATION
  2452.  
  2453.     Registration, program disk and documentation........... $40     _______
  2454.  
  2455.  
  2456.  
  2457.                         SITE LICENSE RATES
  2458.  
  2459.     Site license for the use of ENVOY
  2460.     (Includes one diskette with program disk & documentation.)
  2461.  
  2462.     2 to  24 computers ..... at $35 each    # computers ___x $35    _______
  2463.  
  2464.    25 to  49 computers ..... at $25 each    # computers ___x $25    _______
  2465.  
  2466.    50 to  99 computers ..... at $20 each    # computers ___x $20    _______
  2467.  
  2468.   100 or more computers .... $2000 one time fee                     _______
  2469.  
  2470. Diskette format (choose one)   5.25" disk ____    3.5" disk ____
  2471.  
  2472. Extra program disk & documentation at $10.00 each.      ___x $10    _______
  2473.  
  2474.  
  2475.  
  2476.                      SOURCE CODE
  2477.  
  2478.          C Language Source...................................$150   _______
  2479.  
  2480.          Pascal Language Source..............................$150   _______
  2481.  
  2482.          Source code in both C and Pascal....................$200   _______
  2483. ---------------------------------------------------------------------------
  2484.  
  2485.                                                             TOTAL   _______
  2486.  
  2487.  
  2488.  
  2489.                   Mail payment to :
  2490.  
  2491.                     North Granby Software
  2492.                     60 Mountain Road
  2493.                     North Granby, CT
  2494.                     06060
  2495.  
  2496.