home *** CD-ROM | disk | FTP | other *** search
/ Mega Top 1 / os2_top1.zip / os2_top1 / APPS / DATACOM / TERM / PMCOM220 / PMCOMM.HLP (.txt) < prev    next >
Encoding:
OS/2 Help File  |  1994-06-26  |  138.8 KB  |  5,561 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Installation Help ΓòÉΓòÉΓòÉ
  3.  
  4. If you are using OS/2 1.3 you must use Pmcomm 1.11. If you are using OS/2 2.0 
  5. without the service pack then you can use either Pmcomm 1.11 or Pmcomm 2.01. 
  6. Pmcomm 2.10 and later can only be run on OS/2 2.1 or OS/2 2.0 with the service 
  7. pack. To obtain either Pmcomm 1.11 or 2.01 you may download them from our BBS 
  8. (503 883-8197). 
  9.  
  10. There are now two ways to install Pmcomm. First Pmcomm comes with an install 
  11. program which will install both Pmcomm and the host mode. To use this method 
  12. open the drive object for the drive that you are using to install Pmcomm from, 
  13. and double click on the install.exe program. This program will copy the files 
  14. to the specified directory and create objects on the Desktop for Pmcomm and 
  15. various other programs. 
  16.  
  17. The second method that can be used to install Pmcomm is to copy all of the 
  18. files on the distribution disk to a directory on your hard disk. Also, copy 
  19. RxPmcomm.dll and RxPmc32.dll into a .dll directory (i.e. C:\os2\dll). The 
  20. RxPmc32.dll can only be used with OS/2 2.0 or later. 
  21.  
  22. Note:  You must use the install program in order to install Pmcomm's Host Mode. 
  23.  
  24. Pmcomm can be run from a command line by typing pmcomm, but it is recommended 
  25. that it be installed in a "Group" under OS/2 1.3 or as an object under OS/2 2.0 
  26. or 2.1. If you used the install program the object will automatically be 
  27. created. 
  28.  
  29. To install Pmcomm in a group under OS/2 1.3, access the Program menu on the 
  30. "Group" menu and chose the New option. This will bring up a dialog box where 
  31. the following information must be entered. 
  32.  
  33. Program title: Pmcomm 
  34.  
  35. Path and filename: user_specified_path\pmcomm.exe 
  36.  
  37. Parameters: setup.dat 
  38.  
  39. Working directory: user_specified_path 
  40.  
  41. Program type: Presentation Manager 
  42.  
  43. The final step is to select the Add option at the bottom of the dialog box. 
  44.  
  45. Note:  setup.dat will be created if not in existence. 
  46.  
  47. To install Pmcomm as an object under OS/2 2.0 or 2.1, open the OS/2 System 
  48. object on the desktop and access the Template folder. Now, drag the Program 
  49. Object onto the desktop. When the settings dialog box comes up type the path to 
  50. Pmcomm and the filename Pmcomm.exe in the edit field reserved for that purpose. 
  51. Close the settings box and Pmcomm is on 
  52.  
  53. There is a program called timer.exe that is included with Pmcomm that will 
  54. allow you to execute Pmcomm at specified times. This will allow you to set up a 
  55. script to have Pmcomm dial numbers at certain times and capture mail, download 
  56. files, etc. 
  57.  
  58.  
  59. ΓòÉΓòÉΓòÉ 2. Command line options ΓòÉΓòÉΓòÉ
  60.  
  61. Pmcomm allows you to pass either the name of a setup file, or the name of a 
  62. script, on the command line. If the name of the file you pass has the extension 
  63. .dat, then the file will be treated as a setup file. If the .dat file does not 
  64. exist then Pmcomm will create it. If the file you pass has the extension .cmd 
  65. then it will be treated as a REXX script and executed on startup of Pmcomm. 
  66. Similarily, a file with the extension of .exe will be treated as an external 
  67. executable file. All other valid extensions, including the lack of an 
  68. extension, will be treated as an internal script. 
  69.  
  70.  
  71. ΓòÉΓòÉΓòÉ 3. Extended Help ΓòÉΓòÉΓòÉ
  72.  
  73. There is a collection of utilities in the File section such as; Scripts, 
  74. Capture, Log File, File Import, Extended Scroll Buffer, and Print. 
  75.  
  76. In the Edit section there are commands such as Copy, Append, Paste, and 
  77. Clear_Screen. These commands will help you manipulate on-screen information. 
  78.  
  79. The Connect command allows you to connect to another computer, either through a 
  80. modem, using the Dial command or direct connect, using the Send_Break command. 
  81. The Initialize Modem command will send the modem initialization string to the 
  82. modem. This command allows the user to re-initialize the modem without exiting 
  83. and rerunning Pmcomm. 
  84.  
  85. Transfer allows the use of different protocols to send and receive files to or 
  86. from a remote computer. The protocol options are Xmodem_Checksum, Xmodem_CRC, 
  87. 1K-Xmodem, Ymodem(batch), Ymodem-g(batch), Zmodem, Kermit, CISB, ASCII, and 
  88. IND$FILE (for downloads). Zmodem is probably the best selection when available 
  89. on the remote computer. Ymodem-G should only be used with error correcting 
  90. modems. 
  91.  
  92. Hang-up sends the hang-up command string (see the Option menu) and optionally 
  93. drops the DTR line to the modem. Dropping DTR is the most effective if your 
  94. modem is setup to hang-up when DTR is dropped. Using a hang-up string is also 
  95. slower, because Pmcomm has to get the modem into the command state before 
  96. sending the hang-up string. If you have DTR on and delete the hangup string the 
  97. hang-up will be much faster. 
  98.  
  99. Option allows you to tailor Pmcomm to your own tastes. The areas in option are 
  100. Port, Dial_Setup, Modem, Protocols, Paths, Macros_Setup, KeyMap, Screen, 
  101. Status_Line, Terminal, and Chat. The setup is not automatically saved. This 
  102. allows you to change things temporally without changing your default setup 
  103. file. If you do want to make the  changes permanent be sure to save the setup 
  104. file. To save the current setup file, use the Save_setup command under the File 
  105. menu option. 
  106.  
  107. Macros allows you to pick, with a mouse, the macro you wish to send. Macros can 
  108. also be selected with an Alt+corresponding number keystroke. Pmcomm allows you 
  109. to set up ten different macros. Scripts can be executed from macros by using 
  110. the shell command. An example of this would be: 
  111.  
  112. shell("c:\pmcomm\plane.cmd"); 
  113.  
  114. This would execute the REXX script called plane.cmd. This allows you a quick 
  115. and easy way to execute often used scripts. 
  116.  
  117. The key mapping ability of Pmcomm allows a user to re-map the keyboard to meet 
  118. the requirements of the host computer. It also allows the user to map the keys, 
  119. so that often executed functions can be programmed to a certain key. This is 
  120. commonly called a "Hot Key". 
  121.  
  122.  
  123. ΓòÉΓòÉΓòÉ 3.1. Keys Help ΓòÉΓòÉΓòÉ
  124.  
  125. The following is a list of default "Hot keys" available. These keys can be 
  126. re-mapped to other functions, and the use of these keys may vary with the 
  127. terminal emulation used. 
  128.  
  129.  F1      =   Help. 
  130.  
  131.  F3      =   Exit. 
  132.  
  133.  Alt-D     =   Dialing directory. 
  134.  
  135.  Alt-H     =   Hangup. 
  136.  
  137.  Alt-Q     =   Dial Queue entries. 
  138.  
  139.  Alt-X     =   Exit. 
  140.  
  141.  Ctrl-Break  =   Send break. 
  142.  
  143.  Ctrl-Insert  =   Copy. 
  144.  
  145.  Alt-Insert  =   Append. 
  146.  
  147.  Shift-Insert  =  Paste. 
  148.  
  149.  Page-Dn   =   Download. 
  150.  
  151.  Page-Up   =   Upload. 
  152.  
  153.  Print Scrn  =   Prints text in the visible 
  154.           window (full line length). 
  155.  
  156. The up and down arrow keys default to scrolling the window. You can change this 
  157. in the setup terminal dialog box so that when in ANSI mode the arrow keys will 
  158. be sent to the modem. 
  159.  
  160. In VT100 mode, some keys have been changed to try to closely emulate the VT100 
  161. keyboard. F1-F4 are now the PF keys. Because of this the F1 key will not 
  162. display the normal help, and F3 will not exit the program. The PF keys will 
  163. send the following characters: 
  164.  
  165.   F1 = ESCOP 
  166.  
  167.   F2 = ESCOQ 
  168.  
  169.   F3 = ESCOR 
  170.  
  171.   F4 = ESCOS 
  172.  
  173. Where ESC is equal to the ASCII character hex 1B. All other default hot keys 
  174. will not be available, unless they have been re-mapped. 
  175.  
  176. In VT220 mode additional keys have been redefined. While in this mode Pmcomm is 
  177. not CUA compliant, because of the need to use some of the hot keys that OS/2 
  178. would normally use. In VT220 mode the F1-F4 keys will send the same characters 
  179. as in VT100. In addition VT220 will also use other functions keys as follows: 
  180.  
  181.   F5  = BREAK (sends a break signal) 
  182.  
  183.   F6  = CSI17~ 
  184.  
  185.   F7  = CSI18~ 
  186.  
  187.   F8  = CSI19~ 
  188.  
  189.   F9  = CSI20~ 
  190.  
  191.   F10 = CSI21~ 
  192.  
  193.   F11 = CSI23~ 
  194.  
  195.   F12 = CSI24~ 
  196.  
  197.   Alt/F1  = CSI23~  (VT220 F11 function key) 
  198.  
  199.   Alt/F2  = CSI24~  (VT220 F12 function key) 
  200.  
  201.   Alt/F3  = CSI25~  (VT220 F13 function key) 
  202.  
  203.   Alt/F4  = CSI26~  (VT220 F14 function key) 
  204.  
  205.   Alt/F5  = CSI28~  (VT220 F15 function key) 
  206.  
  207.   Alt/F6  = CSI29~  (VT220 F16 function key) 
  208.  
  209.   Alt/F7  = CSI31~  (VT220 F17 function key) 
  210.  
  211.   Alt/F8  = CSI32~  (VT220 F18 function key) 
  212.  
  213.   Alt/F9  = CSI33~  (VT220 F19 function key) 
  214.  
  215.   Alt/F10 = CSI34~  (VT220 F20 function key) 
  216. CSI will be one of two values, either the CSI character or the ANSI ESC[. If 
  217. you are connected with 8 data bits and the host supports the 8 bit sequence 
  218. then the CSI character will be used. When the num lock key is off the numerical 
  219. key pad will be in the application mode. If you are connecting to a VT220 Host 
  220. you can use these keys to send the VT220 PF key values. For example pressing 
  221. the 1 on the numeric key pad will send the VT220 PF1 key. Pressing the 3 on the 
  222. numeric key pad will send the VT220 PF3 key, and so on. With the num lock on 
  223. the numbers will be sent. The plus key has been re-mapped to be a comma, again 
  224. to be compatible with the VT100 keyboard. 
  225.  
  226.  
  227. ΓòÉΓòÉΓòÉ 3.2. Button Bar Help ΓòÉΓòÉΓòÉ
  228.  
  229. The Button Bar allows, with the click of a mouse button, the user to execute 
  230. various utilities and any user defined macros. The name of the macro will 
  231. appear on the button. 
  232.  
  233. Phone Button 
  234.  
  235. There are many options that can be accessed by the Phone Button. If the 
  236. telephone is on-hook (hung up) and you click on the button, Pmcomm will dial 
  237. any numbers that you have selected in the dialing directory. If there aren't 
  238. any numbers selected, Pmcomm will "pop" up the dialing directory. 
  239.  
  240. If you select a dialing directory in File Manager and hold down the right mouse 
  241. button you can drag the dialing directory to the phone button. Once the mouse 
  242. button is released over the phone button, Pmcomm will dial any selected 
  243. numbers. If there aren't any numbers selected, Pmcomm will "pop" up the dialing 
  244. directory. 
  245.  
  246. Once online the phone button will be taken off-hook. If the phone is off-hook 
  247. and you click on the button, Pmcomm will hang-up. If Monitor DCD is turned off 
  248. and you click on the button, Pmcomm will dial any selected numbers in the 
  249. dialing directory. If there aren't any numbers selected, Pmcomm will "pop" up 
  250. the dialing directory. 
  251.  
  252. Disk Button 
  253.  
  254. The Disk Button allows a quick and easy way to turn the Capture option on and 
  255. off. If only the disk appears on the button and you click on the button Pmcomm 
  256. will then prompt you for the filename of the capture file. If the disk appears 
  257. to have arrows pointing it, Pmcomm is already executing the Capture command. If 
  258. you click on the button when it is in this form, Pmcomm will cancel the Capture 
  259. command. 
  260.  
  261. Log Buttom 
  262.  
  263. By clicking on the Log Button, Pmcomm will turn logging on. When logging is on, 
  264. the log will appear with logging equipment (crosscut saw and an axe), if you 
  265. click on this button Pmcomm will turning logging off. 
  266.  
  267. Printer Button 
  268.  
  269. By clicking on the Printer Button you can print any selected text. If there 
  270. isn't any selected text, Pmcomm will execute the Print Continuous command. 
  271. Clicking on the button again will turn the Print Continuous command off. 
  272.  
  273. Generator Button 
  274.  
  275. Clicking on the Generator Button will turn on the Script Generator. Pmcomm will 
  276. then prompt you for a filename for the script. If you click on the button 
  277. again, Pmcomm will turn off the Script Generator. The Generator Button will 
  278. have yellow arrows pointing away from the generator when a script is being 
  279. generated. 
  280.  
  281. Book Button 
  282.  
  283. Clicking on the Book Button will execute a script. If Pmcomm is executing a 
  284. script, clicking on the button will cancel the script. You can also use the 
  285. drag and drop feature of Pmcomm to select any executable file (extensions .exe, 
  286. .cmd and .scr) from the File Manager and executing that file by dragging and 
  287. dropping the file on the Book Button. 
  288.  
  289. Port Button 
  290.  
  291. Clicking on the Port Button will access the Port Setup dialog box. This allows 
  292. the user to make any changes to the port setup as needed. 
  293.  
  294. Scroll Button 
  295.  
  296. Clicking on the Scroll Button accesses Pmcomm's Extended Scroll Buffer. 
  297.  
  298.  
  299. ΓòÉΓòÉΓòÉ 4. File ΓòÉΓòÉΓòÉ
  300.  
  301. There is a collection of utilities in this section such as; Save_setup, 
  302. Scripts, Capture, Log File, File Import, Extended Scroll Buffer, and Print. 
  303.  
  304.  
  305. ΓòÉΓòÉΓòÉ 4.1. Save Setup ΓòÉΓòÉΓòÉ
  306.  
  307. Saves user definable configurations as well as screen size and position. The 
  308. default file name that is used for the setup file is setup.dat. Different setup 
  309. file names can be used by specifying a different file name as a parameter when 
  310. starting Pmcomm. You can use any name as long as it has an extension of dat. 
  311.  
  312.  
  313. ΓòÉΓòÉΓòÉ 4.2. Capture ΓòÉΓòÉΓòÉ
  314.  
  315. Capture saves everything that is received from the modem to a file. For 
  316. example, you can capture all new messages and then read them after you hang up. 
  317. If you specify PRN as the filename everything will be captured to the printer. 
  318. If you have Monitor_DCD selected then the capture file will be closed when you 
  319. log off. This will happen if you started the capture file from the menu or from 
  320. a internal script. 
  321.  
  322.  
  323. ΓòÉΓòÉΓòÉ 4.2.1. Start Capture ΓòÉΓòÉΓòÉ
  324.  
  325. When selecting this option you will be prompted for a file name and then 
  326. everything that comes in from the modem will be saved to that file. If PRN is 
  327. selected then everything will be sent to the printer. If the file exists you 
  328. will be asked if you wish to overwrite the file. If you select no, the new 
  329. information will be appended to the end of the file. Select cancel if you wish 
  330. to abort the capture. 
  331.  
  332. You may also start the capture by clicking on the disk button located on the 
  333. Button_Bar. 
  334.  
  335.  
  336. ΓòÉΓòÉΓòÉ 4.2.2. Cancel Capture ΓòÉΓòÉΓòÉ
  337.  
  338. This command will turn off capture. This command will only work if capture was 
  339. started with the Start_Capture command. 
  340.  
  341. You may also cancel the capture command by clicking on the disk button located 
  342. on the Button_Bar. 
  343.  
  344.  
  345. ΓòÉΓòÉΓòÉ 4.3. Scripts ΓòÉΓòÉΓòÉ
  346.  
  347. Scripts allow you to have the computer perform certain tasks automatically. The 
  348. internal commands available are: 
  349.  
  350. wait_for 
  351. puts 
  352. sleep 
  353. call 
  354. capture_on 
  355. capture_off 
  356. change_option 
  357. dial 
  358. shell 
  359. exit 
  360.  
  361. The REXX commands that are available are: 
  362.  
  363. init_dll 
  364. init_32dll 
  365. setcom 
  366. sendb 
  367. dcd 
  368. char_avail 
  369. read_timeout 
  370. Get_ch 
  371. ring_detect 
  372. drop_dtr 
  373. raise_dtr 
  374. Wait_for 
  375. Wait_fore 
  376. Put_s 
  377. Sleep 
  378. beep 
  379. get_cursor_position 
  380. get_char_at 
  381. capture_on 
  382. capture_off 
  383. change_option 
  384. dial 
  385. get_dial_memo 
  386. clipboard_paste 
  387. clipboard_copy 
  388. clipboard_append 
  389. xmodem_send 
  390. xmodem_receive 
  391. xmodem_chk_send 
  392. xmodem_chk_receive 
  393. xmodem_1k_send 
  394. xmodem_1k_receive 
  395. ymodem_send 
  396. ymodem_receive 
  397. ymodemg_send 
  398. ymodemg_receive 
  399. zmodem_send 
  400. zmodem_receive 
  401. kermit_send 
  402. kermit_receive 
  403. ascii_send 
  404. ascii_receive 
  405. cisb_send 
  406. cisb_receive 
  407. set_download_path 
  408. os2_shell 
  409.  
  410. The 'C' library commands that are available are: 
  411.  
  412. init_lib 
  413. setcom 
  414. sendb 
  415. dcd 
  416. char_avail 
  417. read_timeout 
  418. get_ch 
  419. ring_detect 
  420. drop_dtr 
  421. raise_dtr 
  422. wait_for 
  423. wait_fore 
  424. put_s 
  425. sleep 
  426. beep 
  427. get_cursor_position 
  428. get_char_at 
  429. capture_on 
  430. capture_off 
  431. change_option 
  432. dial 
  433. get_dial_memo 
  434. clipboard_paste 
  435. clipboard_copy 
  436. clipboard_append 
  437. xmodem_send 
  438. xmodem_receive 
  439. xmodem_chk_send 
  440. xmodem_chk_receive 
  441. xmodem_1k_send 
  442. xmodem_1k_receive 
  443. ymodem_send 
  444. ymodem_receive 
  445. ymodemg_send 
  446. ymodemg_receive 
  447. zmodem_send 
  448. zmodem_receive 
  449. kermit_send 
  450. kermit_receive 
  451. ascii_send 
  452. ascii_receive 
  453. cisb_send 
  454. cisb_receive 
  455. set_download_path 
  456. os2_shell 
  457.  
  458. The scripts command is only available in the commercial version of Pmcomm. 
  459.  
  460.  
  461. ΓòÉΓòÉΓòÉ 4.3.1. Start Scripts ΓòÉΓòÉΓòÉ
  462.  
  463. With this command you can start a pre-written script at any time, just enter 
  464. the file name of the script when prompted. If only the file name is entered, 
  465. the script path will be searched for the file. Full path and file names are 
  466. allowed. 
  467.  
  468. You may also start a script be clicking on the book button located on the 
  469. Button_Bar. 
  470.  
  471.  
  472. ΓòÉΓòÉΓòÉ 4.3.2. Script Dialog ΓòÉΓòÉΓòÉ
  473.  
  474. The Script Dialog displays information and options about the current script. 
  475. When the dialog is displayed you have the option of either aborting the script, 
  476. closing the dialog box, or skipping the currently executing command. 
  477.  
  478.  
  479. ΓòÉΓòÉΓòÉ 4.3.3. Cancel Script ΓòÉΓòÉΓòÉ
  480.  
  481. This command is used to stop a script that is already running. The script will 
  482. be canceled at the time this is selected unless the script is at a sleep 
  483. command. In this case the script will stop after the sleep time interval has 
  484. expired. 
  485.  
  486. You may also cancel a script by clicking on the book button located on the 
  487. Button_Bar. 
  488.  
  489.  
  490. ΓòÉΓòÉΓòÉ 4.3.4. Start Script Generator ΓòÉΓòÉΓòÉ
  491.  
  492. This is the command that executes Pmcomm's script generator. The script 
  493. generator will write a script in either REXX or Internal script syntax. A REXX 
  494. script must have a cmd extension, and an Internal script must have a scr 
  495. extension. If you want a script that will log you on to a BBS turn the script 
  496. generator on and log on normally. Once finished logging on cancel the script 
  497. generator. You now have a script that will log you onto that BBS. If you start 
  498. the script generator before you dial the remote system a dial command will be 
  499. in the script. With this script you can just start the script and the script 
  500. will dial the number. If you start the script generator after connected to the 
  501. remote system, the script that will be created is designed to be entered into 
  502. the dialing directory. In some cases you may have to start the script generator 
  503. before you dial and then delete the dial command from the script. Some remote 
  504. systems send information as soon as you connect, this does not allow the user 
  505. enough time to start the script generator. 
  506.  
  507. You may also start the script generator by clicking on the generator button 
  508. located on the Button_Bar. 
  509.  
  510.  
  511. ΓòÉΓòÉΓòÉ <hidden> Filename ΓòÉΓòÉΓòÉ
  512.  
  513. Pmcomm allows you to choose either a path and filename or just the filename. If 
  514. only the filename is entered, Pmcomm will use the script directory that is 
  515. setup under the Paths option. Be sure that all REXX scripts have an extension 
  516. of .cmd and all Internal scripts have an extension of .scr. If these extensions 
  517. are not used Pmcomm will create the script but the script will not be able to 
  518. be executed. 
  519.  
  520.  
  521. ΓòÉΓòÉΓòÉ <hidden> Description ΓòÉΓòÉΓòÉ
  522.  
  523. This description will appear as the first line of the script. The description 
  524. will hopefully avoid any confusion about the purpose of the script at later 
  525. date. 
  526.  
  527.  
  528. ΓòÉΓòÉΓòÉ <hidden> REXX Script ΓòÉΓòÉΓòÉ
  529.  
  530. This will create a script using the REXX language. The filename must have an 
  531. extension of .cmd in order for it to be executed by the REXX interpreter. A 
  532. REXX script will execute a little slower than an Internal script, but it is 
  533. more flexible. 
  534.  
  535.  
  536. ΓòÉΓòÉΓòÉ <hidden> Internal Script ΓòÉΓòÉΓòÉ
  537.  
  538. This will create a script using Pmcomm's Internal script syntax. The filename 
  539. must have an .scr extension in order for it to be executed by Pmcomm. 
  540.  
  541.  
  542. ΓòÉΓòÉΓòÉ <hidden> Number of Characters in wait_fore ΓòÉΓòÉΓòÉ
  543.  
  544. The Number of Characters in wait_fore will decide the length of the wait_fore 
  545. statements. The default is 10 characters which for most purposes will be 
  546. adequate. 
  547.  
  548.  
  549. ΓòÉΓòÉΓòÉ 4.3.5. Cancel Script Generator ΓòÉΓòÉΓòÉ
  550.  
  551. This command turns off the script generator. You can also cancel the script 
  552. generator by clicking on the generator button located on the Button_Bar. 
  553.  
  554.  
  555. ΓòÉΓòÉΓòÉ 4.4. Log File ΓòÉΓòÉΓòÉ
  556.  
  557. Logging writes to a file named pmcomm.log in the main pmcomm directory. The 
  558. type of information written is the time, date and name of the number called. 
  559. The time, date, cps and name of files transferred will also be saved. If you 
  560. are setup to monitor DCD the time and date of when the call was terminated will 
  561. also be recorded. 
  562.  
  563.  
  564. ΓòÉΓòÉΓòÉ 4.4.1. Start Logging ΓòÉΓòÉΓòÉ
  565.  
  566. The file named pmcomm.log in the main pmcomm directory will be opened. Any 
  567. logging information will be appended to the end of the file. 
  568.  
  569. You may also start logging by clicking on the log button located on the 
  570. Button_Bar. 
  571.  
  572.  
  573. ΓòÉΓòÉΓòÉ 4.4.2. Cancel Logging ΓòÉΓòÉΓòÉ
  574.  
  575. The log file will be closed and no other information will be written to the log 
  576. file until it is reopened using the Start Log option. 
  577.  
  578. You may also cancel logging by clicking on the log button located on the 
  579. Button_Bar. 
  580.  
  581.  
  582. ΓòÉΓòÉΓòÉ 4.5. File Import ΓòÉΓòÉΓòÉ
  583.  
  584. This command copies a file from disk and sends it to a remotely connected 
  585. computer. This can be handy for sending previously saved files as messages, or 
  586. during a chat session. At times this is handier then using the clipboard. The 
  587. delay time specified in the file import delay parameter under Options, 
  588. Protocols, will pause the specified number of seconds after each line has been 
  589. sent. This can be useful if the receiver can not process the information as 
  590. fast as Pmcomm can send it. 
  591.  
  592.  
  593. ΓòÉΓòÉΓòÉ 4.6. Extended Scroll Buffer ΓòÉΓòÉΓòÉ
  594.  
  595. The extended scroll buffer allows a user to store information in memory, that 
  596. can later be displayed. As information comes in from the com port Pmcomm will 
  597. store it in both the regular scroll buffer (accessed by using the scroll bars), 
  598. and into the extended scroll buffer (accessed by using this command). The size 
  599. of the extended buffer can be set under Options, Screen. The extended scroll 
  600. buffer size will be rounded down to the nearest 4K (4096 bytes) in size. This 
  601. is to make the memory usage more efficient in OS/2. The user has the ability to 
  602. read and write to the extended scroll buffer. A user can copy information from 
  603. the extended scroll buffer into the OS/2 clipboard. Once in the OS/2 clipboard 
  604. the information can be pasted into word processors, spread sheets, etc.. A user 
  605. can also import a text file into the extended scroll buffer and then send the 
  606. file to the modem. 
  607.  
  608.  
  609. ΓòÉΓòÉΓòÉ 4.6.1. File ΓòÉΓòÉΓòÉ
  610.  
  611. There is a collection of functions under this menu option that allows a user to 
  612. transport the text in various ways. The functions are: 
  613.  
  614. Import text file 
  615.  
  616. Save as 
  617.  
  618. Print selected 
  619.  
  620. Print all 
  621.  
  622. Exit buffer 
  623.  
  624.  
  625. ΓòÉΓòÉΓòÉ 4.6.2. Import Text File ΓòÉΓòÉΓòÉ
  626.  
  627. This function allows the user to import a text file into the extended scroll 
  628. buffer. 
  629.  
  630.  
  631. ΓòÉΓòÉΓòÉ 4.6.3. Save as ΓòÉΓòÉΓòÉ
  632.  
  633. This function allows the user to save the text in the extended scroll buffer to 
  634. a file. 
  635.  
  636.  
  637. ΓòÉΓòÉΓòÉ 4.6.4. Print selected ΓòÉΓòÉΓòÉ
  638.  
  639. If any text in the buffer has been highlighted with the mouse, selecting this 
  640. function will send the selected text to the printer. 
  641.  
  642.  
  643. ΓòÉΓòÉΓòÉ 4.6.5. Print all ΓòÉΓòÉΓòÉ
  644.  
  645. This function will send all of the text, in the buffer, to the printer. 
  646.  
  647.  
  648. ΓòÉΓòÉΓòÉ 4.6.6. Exit buffer ΓòÉΓòÉΓòÉ
  649.  
  650. This will exit the extended scroll buffer and return you to the main screen of 
  651. Pmcomm. 
  652.  
  653.  
  654. ΓòÉΓòÉΓòÉ 4.6.7. Edit ΓòÉΓòÉΓòÉ
  655.  
  656. There are a collection of functions under this menu option that allow a user to 
  657. manipulate text in the extended scroll buffer. The functions are: 
  658.  
  659. Search 
  660.  
  661. Find next 
  662.  
  663. Copy 
  664.  
  665. Paste 
  666.  
  667. Cut 
  668.  
  669. Clear selected 
  670.  
  671. Clear all 
  672.  
  673. Undo 
  674.  
  675.  
  676. ΓòÉΓòÉΓòÉ 4.6.8. Search ΓòÉΓòÉΓòÉ
  677.  
  678. This function allows the user to search for any character sequence that may be 
  679. in the extended scroll buffer. The search always starts at the top of the 
  680. extended scroll buffer. 
  681.  
  682.  
  683. ΓòÉΓòÉΓòÉ 4.6.9. Find next ΓòÉΓòÉΓòÉ
  684.  
  685. This function allows the user to find the next occurrence of the selected 
  686. character sequence. 
  687.  
  688.  
  689. ΓòÉΓòÉΓòÉ 4.6.10. Copy ΓòÉΓòÉΓòÉ
  690.  
  691. This function copies any selected text into the clipboard. The text can then be 
  692. pasted into other applications as well as the main terminal screen of Pmcomm. 
  693.  
  694.  
  695. ΓòÉΓòÉΓòÉ 4.6.11. Paste ΓòÉΓòÉΓòÉ
  696.  
  697. This inserts any text that is in the clipboard into the extended scroll buffer. 
  698.  
  699.  
  700. ΓòÉΓòÉΓòÉ 4.6.12. Cut ΓòÉΓòÉΓòÉ
  701.  
  702. This command deletes the selected text from the extended scroll buffer but 
  703. saves a copy of the text in the clipboard so it can be pasted at another 
  704. location. 
  705.  
  706.  
  707. ΓòÉΓòÉΓòÉ 4.6.13. Clear selected ΓòÉΓòÉΓòÉ
  708.  
  709. This command deletes all selected text from the extended scroll buffer. 
  710.  
  711.  
  712. ΓòÉΓòÉΓòÉ 4.6.14. Clear all ΓòÉΓòÉΓòÉ
  713.  
  714. This command clears the entire extended scroll buffer of any text. 
  715.  
  716.  
  717. ΓòÉΓòÉΓòÉ 4.6.15. Undo ΓòÉΓòÉΓòÉ
  718.  
  719. This command will undo the last editing command. 
  720.  
  721.  
  722. ΓòÉΓòÉΓòÉ 4.6.16. Options ΓòÉΓòÉΓòÉ
  723.  
  724. There are two functions under this menu option that allows a user to manipulate 
  725. the screen appearance. The functions are: 
  726.  
  727. Font 
  728.  
  729. Color 
  730.  
  731.  
  732. ΓòÉΓòÉΓòÉ 4.6.17. Font ΓòÉΓòÉΓòÉ
  733.  
  734. This command allows the user to change the font characteristics in the extended 
  735. scroll buffer. All of the fonts available for OS/2 2.0 are recognized by 
  736. Pmcomm. 
  737.  
  738.  
  739. ΓòÉΓòÉΓòÉ 4.6.18. Color ΓòÉΓòÉΓòÉ
  740.  
  741. This command allows the user to set both the foreground and background colors 
  742. in extended scroll buffer. 
  743.  
  744.  
  745. ΓòÉΓòÉΓòÉ 4.7. Print ΓòÉΓòÉΓòÉ
  746.  
  747. Print allows you to send information that was previously received out to the 
  748. printer. You can either send the information that is displayed on the visible 
  749. part of the window, or you can print the whole scroll back buffer. The print 
  750. function uses PRN as the device name for printing. 
  751.  
  752.  
  753. ΓòÉΓòÉΓòÉ 4.7.1. Print visible screen ΓòÉΓòÉΓòÉ
  754.  
  755. This command can also be sent by pressing the Print Screen key. When Pmcomm 
  756. receives this message it prints all of the lines on the visible part of the 
  757. screen. 
  758.  
  759.  
  760. ΓòÉΓòÉΓòÉ 4.7.2. Print buffer ΓòÉΓòÉΓòÉ
  761.  
  762. When this is selected all of the scroll back buffer is sent out to the printer. 
  763. There are about 240 lines available in the scroll back buffer, so this command 
  764. may take awhile to complete. This does not mean that you can't do anything 
  765. else. Pmcomm will print in the background while you go on. 
  766.  
  767.  
  768. ΓòÉΓòÉΓòÉ 4.7.3. Print selected ΓòÉΓòÉΓòÉ
  769.  
  770. This will print previously selected text (by using the mouse) to the PRN 
  771. device. 
  772.  
  773. You may also print any selected text by clicking on the printer button located 
  774. on the Button_Bar. 
  775.  
  776.  
  777. ΓòÉΓòÉΓòÉ 4.7.4. Print continuous ΓòÉΓòÉΓòÉ
  778.  
  779. This will print everything that comes in from the communication port to the PRN 
  780. device. 
  781.  
  782.  
  783. ΓòÉΓòÉΓòÉ 4.7.5. Start continuous printing ΓòÉΓòÉΓòÉ
  784.  
  785. This will start continuous printing. Everything will be printed to the PRN 
  786. device. It is not recommended that you use this command unless you have the 
  787. OS/2 print spooler active. 
  788.  
  789. You may also start continuous printing by clicking on the printer button 
  790. located on the Button_Bar. 
  791.  
  792.  
  793. ΓòÉΓòÉΓòÉ 4.7.6. Cancel continuous printing ΓòÉΓòÉΓòÉ
  794.  
  795. This will cancel printing, that was started with the Start continuous printing 
  796. command. 
  797.  
  798. You may also cancel continuous printing by clicking on the printer button 
  799. located on the Button_Bar. 
  800.  
  801.  
  802. ΓòÉΓòÉΓòÉ 4.8. Product Information ΓòÉΓòÉΓòÉ
  803.  
  804. The product information box has information about this program, such as BBS 
  805. support telephone number, company name, version number, serial number, and 
  806. copyright information. 
  807.  
  808.  
  809. ΓòÉΓòÉΓòÉ 4.9. Exit ΓòÉΓòÉΓòÉ
  810.  
  811. Ends current session with Pmcomm. Before exiting Pmcomm will restore the state 
  812. of the com port. Pmcomm closes the communication port when exiting which drops 
  813. DTR. The hang-up string is also sent to the modem, after the main Pmcomm window 
  814. disappears. Because of this if Pmcomm is immediately rerun the com port may not 
  815. be able to be reopened until the previous execution of Pmcomm completes. If you 
  816. get a device open error when doing this, just wait a few seconds and try again. 
  817.  
  818.  
  819. ΓòÉΓòÉΓòÉ 5. Edit ΓòÉΓòÉΓòÉ
  820.  
  821. In this section there are commands such as Copy, Append, Paste, and 
  822. Clear_Screen. 
  823.  
  824.  
  825. ΓòÉΓòÉΓòÉ 5.1. Copy ΓòÉΓòÉΓòÉ
  826.  
  827. Copy transfers selected information from the screen and places it into the 
  828. Clipboard. Any information already in the Clipboard, will be deleted. Other 
  829. applications, such as a word processor, can then use this information. 
  830.  
  831.  
  832. ΓòÉΓòÉΓòÉ 5.2. Append ΓòÉΓòÉΓòÉ
  833.  
  834. Append adds selected text to information that is already in the Clipboard. If 
  835. there is existing information of the same type (CF_TEXT), then the selected 
  836. text will be added to the end of the existing information. One use of this 
  837. would be to save file names into the Clipboard, so they maybe used to download. 
  838.  
  839.  
  840. ΓòÉΓòÉΓòÉ 5.3. Paste ΓòÉΓòÉΓòÉ
  841.  
  842. Paste, copies information from the clipboard and sends it out to the modem. 
  843. Care must be taken that the information sent can be handled by the remote 
  844. computer. A use for this command would be that you could enter a message in a 
  845. word processor, copy that message into the clipboard and then paste it into 
  846. Pmcomm. 
  847.  
  848.  
  849. ΓòÉΓòÉΓòÉ 5.4. Clear Screen ΓòÉΓòÉΓòÉ
  850.  
  851. Clears the whole screen including the scroll back buffer and resets the 
  852. attribute to the attribute defined in the setup area. 
  853.  
  854.  
  855. ΓòÉΓòÉΓòÉ 6. Connect ΓòÉΓòÉΓòÉ
  856.  
  857. This command allows you to connect to another computer, either through a modem, 
  858. using the Dial command or direct connect, using the Send_Break command. 
  859.  
  860.  
  861. ΓòÉΓòÉΓòÉ 6.1. Dial ΓòÉΓòÉΓòÉ
  862.  
  863. Dial uses a dialing_directory to store phone numbers and other information 
  864. about the remote computer. This provides a easy way to connect to remote 
  865. computers. 
  866.  
  867.  
  868. ΓòÉΓòÉΓòÉ 6.1.1. Dial Dialog Help ΓòÉΓòÉΓòÉ
  869.  
  870. The dial dialog box allows you to add, select, modify, or delete entries in the 
  871. current dialing directory. An entry can also be selected to be automatically 
  872. selected (or optionally dialed) when Pmcomm is first started. 
  873.  
  874. To add an entry, select the add button in the dialog box. You will then be 
  875. prompted to enter the name of the new entry. The directory will be sorted and 
  876. the new entry will be selected. The cursor will be positioned at the number 
  877. entry field so that the number for the new entry can be entered. After the 
  878. number has been entered, pressing the enter key will save the dialing directory 
  879. and dial the number(s). Pressing the tab key will allow you to edit the other 
  880. fields. 
  881.  
  882. To select a number, using a mouse, "click" on the number (or numbers) that you 
  883. wish to dial. To deselect an entry "click" on the number once again. If you are 
  884. not using a mouse the arrow keys will move the highlight bar through the 
  885. directory. To select your choices press the space bar, a second time will 
  886. deselect the entry, then press enter. Multiple entries may be selected. This 
  887. will form a dialing queue, in which Pmcomm will dial the selected entries until 
  888. a connection is made. 
  889.  
  890. To modify an entry, select the entry to be edited and then use the tab key to 
  891. move the cursor to the field you wish to change. Use the Change button to 
  892. change the name of an entry. Pressing the save button will save the 
  893. modifications to the disk. 
  894.  
  895. To change a name, select the entry to be edited and then use press the change 
  896. button. The change will automatically be saved to the disk. 
  897.  
  898. To delete an entry, select the entry to be deleted and select the delete button 
  899. in the dialog box. 
  900.  
  901. Information for each number such as last time called, number of times called, 
  902. file cps on downloading, file cps on uploading, files downloaded, files 
  903. uploaded and protocol, can be accessed by selecting an entry and then clicking 
  904. on the Info button. 
  905.  
  906. CAUTION:
  907. If multiple entries are selected, only the first selected entry will be 
  908. deleted. 
  909.  
  910. The dial dialog box can also be accessed by clicking on the phone button on the 
  911. Button_Bar. 
  912.  
  913.  
  914. ΓòÉΓòÉΓòÉ 6.1.2. Dial Prefix ΓòÉΓòÉΓòÉ
  915.  
  916. Pmcomm sends the selected dial prefix to the modem before sending the phone 
  917. number. The default string for the prefixes is ATDT which tells the modem to 
  918. dial using tone (ie. touch tone). If your phone system does not support touch 
  919. tone then you could use the ATDP command. Pmcomm allows you to setup multiple 
  920. prefixes, so that if you need to dial a special code for long distance calls 
  921. you can set up a separate prefix for those calls. 
  922.  
  923.  
  924. ΓòÉΓòÉΓòÉ 6.1.3. Dial Suffix ΓòÉΓòÉΓòÉ
  925.  
  926. Pmcomm sends the selected dial suffix to the modem after sending the phone 
  927. number. The default string for the suffixes is ^M which is a carriage return 
  928. and line feed. 
  929.  
  930.  
  931. ΓòÉΓòÉΓòÉ 6.1.4. Automatically Selected ΓòÉΓòÉΓòÉ
  932.  
  933. If a dialing entry is marked as being automatically selected then each time 
  934. Pmcomm is started this entry will be selected to be dialed. You can have as 
  935. many entries automatically selected as you want, and this will form a dialing 
  936. queue. A dialing queue allows you to try the first number and if it is busy it 
  937. will then dial the next number in the queue. If the Dial Auto Selected Entries 
  938. on program Startup is selected then any entries in the dialing directory that 
  939. are marked as auto selected, will automatically be dialed. This option will 
  940. allow you to automatically dial selected numbers when Pmcomm is first invoked. 
  941.  
  942.  
  943. ΓòÉΓòÉΓòÉ 6.1.5. Dial List Box ΓòÉΓòÉΓòÉ
  944.  
  945. The Dial List Box is a multiple selection list box. This means that you can 
  946. select more than one entry at a time. The information on the right side of the 
  947. Dialog Box is on the first item selected. The reason for using a multiple 
  948. selection list box, is that you can select more than one item and these items 
  949. will be dialed in order. For example, if the first number selected is busy then 
  950. Pmcomm will dial the next number selected. If all selected numbers are busy, 
  951. Pmcomm will start over again. If you have multiple items selected and select 
  952. the Delete button, only the first item will be deleted. If an item is selected 
  953. and you double click on that item then the selected items will be dialed. 
  954.  
  955.  
  956. ΓòÉΓòÉΓòÉ 6.1.6. Baud Rate ΓòÉΓòÉΓòÉ
  957.  
  958. In the Dialing Dialog Box you can enter any baud supported by the device driver 
  959. you are using. Currently the maximum baud rate supported by the device driver 
  960. included with OS/2 is 115,200. Commonly used baud rates are: 300, 1200, 2400, 
  961. 9600, 19200 and 38,400. To select a baud rate use the drop down list box and 
  962. choose the appropriate rate. If you select the Default option for the baud rate 
  963. Pmcomm will use the baud rate set up under Options, Port and the default baud 
  964. option. 
  965.  
  966.  
  967. ΓòÉΓòÉΓòÉ 6.1.7. Parity ΓòÉΓòÉΓòÉ
  968.  
  969. The supported parities are: None, Even, Odd, Marked, and Space. To enter a 
  970. parity, type in one of the above words. The two most widely used parities are 
  971. None and Even. If you are calling most BBS's you would want to enter None, but 
  972. most packet networks (such as CompuServe and Telenet) normally require Even 
  973. parity. 
  974.  
  975.  
  976. ΓòÉΓòÉΓòÉ 6.1.8. Data Bits ΓòÉΓòÉΓòÉ
  977.  
  978. Currently supported data bits are 5, 6, 7, and 8. The most popular values are 7 
  979. and 8. For most BBS's 8 data bits are necessary, however, for systems such as 
  980. CompuServe, 7 data bits are required. 
  981.  
  982.  
  983. ΓòÉΓòÉΓòÉ 6.1.9. Stop Bits ΓòÉΓòÉΓòÉ
  984.  
  985. Currently supported stop bits are 1, 1.5 and 2. Most systems will require 1 
  986. stop bit. 
  987.  
  988.  
  989. ΓòÉΓòÉΓòÉ 6.1.10. Dial Script ΓòÉΓòÉΓòÉ
  990.  
  991. The script name can be up to 12 characters long. The script must be in the 
  992. script path (see Paths for more information). Any REXX script, Internal script, 
  993. or any OS/2 executable can be executed. Once Pmcomm is connected to the remote 
  994. computer this script will be executed. 
  995.  
  996.  
  997. ΓòÉΓòÉΓòÉ 6.1.11. Dial Terminal ΓòÉΓòÉΓòÉ
  998.  
  999. The currently available terminal emulations are TTY, ANSI, VT100, and VT220. 
  1000. Pmcomm will switch to the terminal emulation listed once connected to the 
  1001. remote computer. 
  1002.  
  1003.  
  1004. ΓòÉΓòÉΓòÉ 6.1.12. Dial Memo ΓòÉΓòÉΓòÉ
  1005.  
  1006. The Dial Memo field allows a user to store information that pertains to that 
  1007. number. An example would be to store a password in this field, so that a user 
  1008. would not forget what their password is. A user can setup a macro key to send 
  1009. the information in the memo field (see Macros_Setup, for more information). 
  1010.  
  1011.  
  1012. ΓòÉΓòÉΓòÉ 6.1.13. Dial KeyMap ΓòÉΓòÉΓòÉ
  1013.  
  1014. The Dial KeyMap field allows a user to load a different key map for each 
  1015. dialing entry. If you wish to use a new key map, then just type the name of the 
  1016. key map (it must have a .map extension), in this field and a key map with some 
  1017. default definitions will be created. If you wish to use an existing key map 
  1018. just select it from the drop down list. If you select default then the default 
  1019. key map for the terminal emulation selected will be used. 
  1020.  
  1021.  
  1022. ΓòÉΓòÉΓòÉ 6.2. Send Break ΓòÉΓòÉΓòÉ
  1023.  
  1024. Some computers when directly connected with a serial cable, need a break signal 
  1025. in order to initialize a connection. See your system administrator to see if 
  1026. this needs to be used with your system. 
  1027.  
  1028.  
  1029. ΓòÉΓòÉΓòÉ 6.3. Initialize Modem ΓòÉΓòÉΓòÉ
  1030.  
  1031. Pmcomm automatically sends the modem initialization string to the 
  1032. communications port when the user first starts Pmcomm. If for some reason you 
  1033. need to re-initialize the modem, you can use the Initialize Modem command to do 
  1034. so. 
  1035.  
  1036.  
  1037. ΓòÉΓòÉΓòÉ 6.4. Comm Error ΓòÉΓòÉΓòÉ
  1038.  
  1039. When this command is used, Pmcomm queries the com device driver to see if the 
  1040. com device driver has detected an error. There are four error messages that can 
  1041. be displayed. 
  1042.  
  1043. The first is "Receive queue overrun", which means that there was no room in the 
  1044. device driver receive queue for a character read in from the receive hardware. 
  1045. This is normally caused by the flow control not being setup correctly. Make 
  1046. sure that you have hardware flow control turned on, in both your modem and in 
  1047. Pmcomm. 
  1048.  
  1049. The second message is "Receive hardware overrun", and means that a character 
  1050. was not read from the hardware before the next character arrived causing a 
  1051. character to be lost. When this error is received, it normally means that you 
  1052. are trying to receive characters faster then your hardware is capable of. Try 
  1053. reducing the baud rate that you are connected at. This error is more likely to 
  1054. happen with a non-buffered UART, and on an ISA bus computer. 
  1055.  
  1056. The third message is "Hardware detected parity error", and the fourth message 
  1057. is "Hardware detected framing error". These last two messages are normally 
  1058. caused by phone line noise, and by themselves, are not normally a problem. 
  1059.  
  1060. After the errors are displayed, Pmcomm clears the errors and they will not be 
  1061. displayed again, unless the error occurs again. 
  1062.  
  1063.  
  1064. ΓòÉΓòÉΓòÉ 7. Transfer ΓòÉΓòÉΓòÉ
  1065.  
  1066. Transfer allows the use of different protocols to send and receive files from a 
  1067. remote computer. The protocol options are Xmodem_Checksum, Xmodem_CRC, 
  1068. 1K-Xmodem, Ymodem(batch), Ymodem-g(batch), Zmodem, Kermit, CISB, and ASCII. 
  1069. Zmodem is probably the best selection, when available on the remote computer. 
  1070. Ymodem-G should only be used with error correcting modems. 
  1071.  
  1072. IND$FILE is available for downloads using the VT100, and VT220 terminal 
  1073. emulations only. 
  1074.  
  1075. CAUTION:
  1076. IND$FILE currently does not have any error detection available in Pmcomm. 
  1077.  
  1078.  
  1079. ΓòÉΓòÉΓòÉ 7.1. Transfer Dialog Box Help ΓòÉΓòÉΓòÉ
  1080.  
  1081. This dialog box displays the current status of your file transfer. The box 
  1082. displays the latest status message from Pmcomm, the protocol being used, the 
  1083. file name of the file being transferred, the file size, bytes already 
  1084. transferred, the time remaining, and the current cps (characters per second). 
  1085. There is also a status bar that visually shows the approximate percentage of 
  1086. the file yet to be transferred. 
  1087.  
  1088. The file transfer dialog box has a "Show" button that when pushed will display 
  1089. the main window of Pmcomm. This option allows you to access the main window 
  1090. while doing a transfer. You may do anything you wish as long as it doesn't 
  1091. interfere with the com port (ie. changing the com port settings). One way this 
  1092. would be useful is in viewing the scroll buffer while doing a transfer. Once 
  1093. the show button has been pushed, the button will change to "Hide". If the 
  1094. button is pushed at this time the main window of Pmcomm will be hidden from 
  1095. view. 
  1096.  
  1097.  
  1098. ΓòÉΓòÉΓòÉ 7.2. Download ΓòÉΓòÉΓòÉ
  1099.  
  1100. The download command brings up a dialog box for you to select the proper 
  1101. protocol. If the protocol selected is not a batch protocol ( ASCII, 
  1102. Xmodem_Checksum, Xmodem_CRC or 1K-Xmodem ) you will be prompted for a filename. 
  1103. If you have Auto-Zmodem or Auto_CISB selected in the protocol options area, 
  1104. Pmcomm will automatically start transferring as soon as the remote computer 
  1105. starts to send. Zmodem is not available in the demonstration version. 
  1106.  
  1107.  
  1108. ΓòÉΓòÉΓòÉ 7.3. Upload ΓòÉΓòÉΓòÉ
  1109.  
  1110. When sending a file to a remote computer you must select the same protocol that 
  1111. the remote computer will use to receive the file. After selecting the proper 
  1112. protocol, a file open dialog box will have you select the file you wish to 
  1113. send. You can either double click on the file name or select the file and click 
  1114. on the OK button. If you have Auto_CISB selected in the protocol options area, 
  1115. Pmcomm will automatically start the transfer as soon as the remote computer 
  1116. sends the transfer request. With a CISB transfer the filename is specified on 
  1117. the host and the file open dialog box is not displayed. 
  1118.  
  1119. You may also use the drag and drop feature of Pmcomm. When files are dragged 
  1120. from a drive object and dropped onto Pmcomm, the transfer protocol that is 
  1121. listed for that phone number will be invoked and the file(s) will be sent to 
  1122. the remote computer. If you have Monitor_DCD selected then drag options will 
  1123. not be allowed until connected with another computer. 
  1124.  
  1125. To drag files from a drive object, select a file (or files) and then click on 
  1126. the selected file(s) with the LEFT mouse button and then press and hold the 
  1127. button RIGHT mouse button down. Once you have begun to drag the files with the 
  1128. mouse the mouse pointer will change shape. If the mouse pointer is over a 
  1129. program that does not accept drag and drop the pointer will again change shape. 
  1130. When the mouse pointer is over any part of Pmcomm you can release the right 
  1131. mouse button. This will drop the files onto Pmcomm and Pmcomm will send them. 
  1132. This will even work if Pmcomm is an icon. 
  1133.  
  1134. To change the protocol for the current phone number, select upload from the 
  1135. menu and then select the protocol you want (make sure that the save to dialing 
  1136. directory is selected). After pressing the OK button the file open dialog box 
  1137. will be displayed. Just press cancel and you can now use the drag and drop with 
  1138. the new protocol. 
  1139.  
  1140. If a file is dropped onto Pmcomm before it has been invoked, while it is an 
  1141. icon in a folder or on the Desktop, this file will be used as a setup file, and 
  1142. Pmcomm will be invoked. 
  1143.  
  1144.  
  1145. ΓòÉΓòÉΓòÉ 7.3.1. Xmodem Checksum ΓòÉΓòÉΓòÉ
  1146.  
  1147. Xmodem Checksum is one of the oldest protocols around and some people still use 
  1148. it exclusively. It is a moderately fast protocol that has fairly good error 
  1149. detection. 
  1150.  
  1151.  
  1152. ΓòÉΓòÉΓòÉ 7.3.2. Xmodem CRC ΓòÉΓòÉΓòÉ
  1153.  
  1154. Xmodem CRC and Xmodem_Checksum are similar except CRC has better error 
  1155. detection than Checksum. Almost anywhere you call will offer at least one of 
  1156. these protocols. 
  1157.  
  1158.  
  1159. ΓòÉΓòÉΓòÉ 7.3.3. 1k-Xmodem ΓòÉΓòÉΓòÉ
  1160.  
  1161. 1k-Xmodem uses the same error detection as Xmodem_CRC, but uses 1024 byte 
  1162. blocks instead of 128 byte blocks. This allows for greater throughput (higher 
  1163. characters per second) with roughly the same error detection. 
  1164.  
  1165.  
  1166. ΓòÉΓòÉΓòÉ 7.3.4. Ymodem ΓòÉΓòÉΓòÉ
  1167.  
  1168. Ymodem uses the same error detection and block size as 1k-Xmodem but is a batch 
  1169. protocol. This means that in the first block the file size and name are sent. 
  1170. This keeps the receiver from having to type in the filename. It also allows you 
  1171. to send more than one file without having to start the transfer again. This 
  1172. protocol is second to Zmodem, in our opinion, when using non-error correcting 
  1173. modems. 
  1174.  
  1175.  
  1176. ΓòÉΓòÉΓòÉ 7.3.5. Ymodem-g ΓòÉΓòÉΓòÉ
  1177.  
  1178. Ymodem-g is identical to Ymodem except it has no error correction. If an error 
  1179. is detected the transfer aborts. Because of this Ymodem-g should only be used 
  1180. with error correcting modems. Pmcomm will allow you to use this protocol 
  1181. anytime, but again care should be taken on what hardware it is used with. With 
  1182. the proper hardware Ymodem-g has the fastest cps (characters per second). 
  1183.  
  1184.  
  1185. ΓòÉΓòÉΓòÉ 7.3.6. Zmodem ΓòÉΓòÉΓòÉ
  1186.  
  1187. Zmodem is almost as fast as Ymodem-g, however Zmodem does support error 
  1188. correction and file recovery. It only takes one aborted Ymodem-g transfer to 
  1189. lose all it's advantages. Zmodem has many advantages as far as the user is 
  1190. concerned. It is probably the easiest protocol to use. If using Pmcomm with the 
  1191. Auto-Zmodem download feature, the whole download is done automatically from the 
  1192. Pmcomm end. You have to select the file from the sender (BBS etc..) and once 
  1193. the sender starts sending, the transfer will begin on Pmcomm. It may take a 
  1194. moment before the sender sends the first sequence, so wait a moment. Some of 
  1195. the advanced features of Zmodem are listed below. Zmodem supports: 
  1196.  
  1197.  1. CRC-32 and CRC-16. The additional error detection of 32 bit CRC is 
  1198.     supported. 
  1199.  
  1200.  2. File recovery. If a Zmodem download is aborted for any reason the transfer 
  1201.     will resume at the point where it was  aborted. You don't have to start the 
  1202.     whole transfer over. 
  1203.  
  1204.  3. Auto-Download. When a Zmodem sending program starts up it first sends a rz 
  1205.     and then a carriage return. Pmcomm will monitor for the startup sequence 
  1206.     and automatically start the Zmodem download. Great care has been taken to 
  1207.     make sure that it really is a Zmodem transfer and not someone typing it in 
  1208.     at the keyboard (at either end). This feature makes downloading with Zmodem 
  1209.     much faster and much easier. 
  1210.  
  1211.  4. Variable length headers. This reduces the amount of overhead that accrues 
  1212.     with sending Zmodem headers. This is only used if supported by both the 
  1213.     sender and receiver. 
  1214.  
  1215.  5. Variable length receive buffers. Some Zmodem receive programs have problems 
  1216.     with writing to the disk and receiving from the communication port at the 
  1217.     same time. If necessary Zmodem will wait for an ACK from the receiver after 
  1218.     the specified buffer size has been sent. This will only be done if it is 
  1219.     requested by the receiver. 
  1220.  
  1221.  6. Retains original file size. Some people say that because Zmodem headers are 
  1222.     larger that there is two much overhead. This really isn't the case. For 
  1223.     example if comparing Zmodem to Ymodem-g (full flow Ymodem), Ymodem-g has 
  1224.     less overhead with each packet. However Ymodem-g rounds the file size up to 
  1225.     an even 128 byte size. In some cases it is even rounded up 1024 bytes. This 
  1226.     is done because Ymodem (g or otherwise) only supports two block sizes, 128 
  1227.     and 1024 (the block size is actually 133 and 1029 to allow for the block 
  1228.     header, STX or SOH, and the CRC value), so it has to send full blocks. 
  1229.     However, Zmodem uses variable block sizes. The block sizes adjust from 32 
  1230.     bytes to 1024 bytes. If telephone line quality is poor smaller blocks are 
  1231.     sent so that if an error does occur less data will have to be resent. As 
  1232.     the line quality improves the size of the blocks will be increased. The 
  1233.     starting block size is variable depending on the connected baud rate. 
  1234.  
  1235.  7. Error recovery. Because Zmodem can resend from any place in the file, 
  1236.     aborted transfers are rare. 
  1237.  
  1238. By reading this you can tell our favorite protocol is Zmodem. Once you have 
  1239. used Zmodem it's hard to get used to using other protocols. 
  1240.  
  1241.  
  1242. ΓòÉΓòÉΓòÉ 7.3.7. ASCII ΓòÉΓòÉΓòÉ
  1243.  
  1244. The ASCII protocol can be used to transfer text files. There is no error 
  1245. detection or correction available with this protocol. It is recommended that 
  1246. one of the other protocols be used, even with text files. 
  1247.  
  1248.  
  1249. ΓòÉΓòÉΓòÉ 7.3.8. CISB ΓòÉΓòÉΓòÉ
  1250.  
  1251. The CIS B protocol can be used to transfer files to and from CompuServe. 
  1252. CompuServe B, B+ and Quick B are supported. Quick B is the fastest variant of 
  1253. the B protocol and is automatically selected when it is supported on the host 
  1254. computer. The CIS B protocol is an automatic protocol where the host initiates 
  1255. the transfer and Pmcomm will automatically go into the send or receive mode. If 
  1256. you are sending a file, the file must exist in the download directory of 
  1257. Pmcomm. If Pmcomm is unable to find the file then the transfer will abort. 
  1258. Pmcomm can be configured to ignore the CIS B protocol by deselecting the 
  1259. Automatic CIS B option in the Protocol Option Dialog. Pmcomm may run slightly 
  1260. faster in terminal mode without this selection. Under most systems the 
  1261. difference will not be detectable. 
  1262.  
  1263. Another option for CIS B is for file recovery. What this option will do is if 
  1264. you started a download and aborted the transfer you can then restart the 
  1265. transfer and CIS B will resume from the place where it was aborted. This can be 
  1266. very handy in poor phone line conditions. The packet size for CIS B is adjusted 
  1267. by the connecting baud rate. For example, if you are connected to CompuServe at 
  1268. 2400 baud the packet size will be 1024 bytes. If you connect at 1200 baud the 
  1269. packet size will be 512 bytes. This allows for speedy error recovery in case a 
  1270. error occurs because of phone line noise. Downloads will automatically be 
  1271. placed in the Pmcomm download directory and the download directory will 
  1272. automatically searched for any uploaded files. If you specify a path with the 
  1273. filename when CompuServe asks for a filename for your computer, then this path 
  1274. will be used. CIS B should be the protocol used when transferring files to and 
  1275. from CompuServe. 
  1276.  
  1277. CAUTION:
  1278. If you are having throughput problems with the CISB transfer protocol, due to 
  1279. multiple errors, you should switch to a different com driver. The com driver 
  1280. that is currently being shipped with OS/2 has problems handling the CISB 
  1281. transfer protocol at higher baud rates. There is a com driver on our support 
  1282. BBS called SIO*.zip (the asterick is the lastest version, search on that file 
  1283. name), that corrects the IBM com driver problem. You can also select Ymodem 
  1284. from CompuServe, and then Ymodem-g from Pmcomm, and you will receive the file 
  1285. at a high baud rate. This should only be attempted if you have an error 
  1286. correction connection. 
  1287.  
  1288.  
  1289. ΓòÉΓòÉΓòÉ 7.3.9. Kermit ΓòÉΓòÉΓòÉ
  1290.  
  1291. Kermit is the slowest protocol offered here and should only be used when no 
  1292. other protocol is available. Kermit does have advantages and it is offered on 
  1293. many minicomputers as well as mainframes. Kermit will also transfer binary 
  1294. files when connected at 7,E,1. The maximum packet size that is allowed is 94 
  1295. bytes which is one of the reasons that makes Kermit slow. There is a variation 
  1296. of Kermit that allows larger packet size, but it is not implemented in Pmcomm. 
  1297. Kermit allows batch transfers, both in sending and receiving, and will attempt 
  1298. to preserve the file names. If Pmcomm gets an error when trying to create the 
  1299. file name received from the sender it will convert it to a "8.3" type of file 
  1300. name. Kermit allows variable packet sizes so the original file size is 
  1301. maintained. 
  1302.  
  1303. Pmcomm allows you to change the "End of Line" character (also called end of 
  1304. packet), the "Quoting character" (sent before control codes), the "pad 
  1305. character", and the number of pad characters you want. You can also tell Pmcomm 
  1306. to force an 8 bit transfer even if it is on at 7,E,1. This comes in handy if 
  1307. you are downloading files from CompuServe. If this option is not selected and 
  1308. you are on at 7 data bits, Pmcomm will use what is called the 7 bit quoting. 
  1309. The 7 bit quote character that Pmcomm uses is a &. 
  1310.  
  1311.  
  1312. ΓòÉΓòÉΓòÉ 7.3.10. IND$FILE ΓòÉΓòÉΓòÉ
  1313.  
  1314. IND$FILE currently is only supported under VT100 and VT220 terminal emulations 
  1315. through a 3708 protocol converter. Because of problems with character 
  1316. conversion through the protocol converter error detection is not currently 
  1317. available. Because of this, files received using IND$FILE maybe CORRUPTED! Use 
  1318. this protocol at your own risk! IND$FILE is not a very efficient protocol 
  1319. because every byte that is transferred must be checked to see if it will pass 
  1320. through a 7 bit data stream and escaped if it will not. This can greatly reduce 
  1321. the amount of data that can be sent in each packet. 
  1322.  
  1323.  
  1324. ΓòÉΓòÉΓòÉ <hidden> PC File Name ΓòÉΓòÉΓòÉ
  1325.  
  1326. This is the file name which will be used on the receiver. If a full path and 
  1327. file name are used the file will reside at that address. If just a file name is 
  1328. specified the file will be stored in the upload directory set in the Paths menu 
  1329. option. This file name must be specified or the transfer will not work. 
  1330.  
  1331.  
  1332. ΓòÉΓòÉΓòÉ <hidden> Host File Name ΓòÉΓòÉΓòÉ
  1333.  
  1334. This is the file name as it resides on the Host. If this filename is not 
  1335. specified, Pmcomm will default to the PC File Name as the Host File Name. 
  1336.  
  1337.  
  1338. ΓòÉΓòÉΓòÉ <hidden> Binary ΓòÉΓòÉΓòÉ
  1339.  
  1340. This option will tell the Host to send the file as a Binary file. 
  1341.  
  1342.  
  1343. ΓòÉΓòÉΓòÉ <hidden> Ascii ΓòÉΓòÉΓòÉ
  1344.  
  1345. This option will tell the Host to send the file as an Ascii file. 
  1346.  
  1347.  
  1348. ΓòÉΓòÉΓòÉ <hidden> CRLF ΓòÉΓòÉΓòÉ
  1349.  
  1350. This option will tell the Host to send a "carriage return line feed" after each 
  1351. record. This option will be needed on most Ascii file transfers while rarely 
  1352. needed with a Binary file transfer. 
  1353.  
  1354.  
  1355. ΓòÉΓòÉΓòÉ 7.3.11. Save to Dial Directory ΓòÉΓòÉΓòÉ
  1356.  
  1357. When this option is selected the file transfer protocol that is selected will 
  1358. be saved into the dialing directory for this number. The next time a file 
  1359. transfer is used when connected to this number this same protocol will be 
  1360. selected and all the user will have to do is press the OK button. If you do not 
  1361. want this protocol save then deselect this option. 
  1362.  
  1363.  
  1364. ΓòÉΓòÉΓòÉ 8. Hangup ΓòÉΓòÉΓòÉ
  1365.  
  1366. Hang-up sends the hang-up command string (see the Option menu) and optionally 
  1367. drops the DTR line to the modem. Dropping DTR is the most effective if your 
  1368. modem is setup to hang-up when DTR is dropped. Using a hang-up string is also 
  1369. slower because Pmcomm has to get the modem into the command state before 
  1370. sending the hang-up string. If you have DTR on and delete the hang-up string 
  1371. the hang-up will be much faster. The default string is : +++~~~~ATH^M. The +++ 
  1372. is the default modem attention string, which puts the modem into the command 
  1373. state. The ~~~~ will make Pmcomm pause 2 seconds (.5 seconds per ~) and then 
  1374. the ATH will force the modem to go on-hook (hangup). The ^M sends a carriage 
  1375. return line feed combination. 
  1376.  
  1377.  
  1378. ΓòÉΓòÉΓòÉ 9. Options ΓòÉΓòÉΓòÉ
  1379.  
  1380. Option allows you to tailor Pmcomm to your own tastes. The areas in option are: 
  1381. Port, Dial_Setup, Modem, Protocols, Paths, Macros_Setup, KeyMap, Screen, 
  1382. Terminal, and Chat. The setup is not automatically saved. This allows you to 
  1383. change things temporally without changing your default setup file. If you do 
  1384. want to make the  changes permanent be sure to save the setup file. To save the 
  1385. current setup file, use the Save_setup command under the File menu option. 
  1386.  
  1387.  
  1388. ΓòÉΓòÉΓòÉ 9.1. Port ΓòÉΓòÉΓòÉ
  1389.  
  1390. The device name should be a valid communication device name. Some third party 
  1391. device drivers allow you to use names other then COM1, COM2, etc., so Pmcomm 
  1392. does not limit you to these names. Hardware flow control and DTR should be on 
  1393. for most modems. 
  1394.  
  1395.  
  1396. ΓòÉΓòÉΓòÉ 9.1.1. Device Open Error Retries ΓòÉΓòÉΓòÉ
  1397.  
  1398. This is the number of attempts Pmcomm will try to open a device. After the 
  1399. specified number of attempts Pmcomm will exit. If 0 is entered, Pmcomm will not 
  1400. retry the device. This option is generally used to access a shared 
  1401. communication port (i.e. modem pool). 
  1402.  
  1403.  
  1404. ΓòÉΓòÉΓòÉ 9.1.2. Seconds Between Retries ΓòÉΓòÉΓòÉ
  1405.  
  1406. This is the number of seconds Pmcomm will wait before retrying to open a 
  1407. device. 
  1408.  
  1409.  
  1410. ΓòÉΓòÉΓòÉ 9.1.3. Device Name ΓòÉΓòÉΓòÉ
  1411.  
  1412. The device name should be a valid communication device name. Some third party 
  1413. device drivers allow you to use, and in some cases require that you use, names 
  1414. other then COM1, COM2, etc., so Pmcomm does not limit you to these names. If 
  1415. you are using Pmcomm across a LAN then normally there will be an Alias name for 
  1416. the communication port you are using on the server. See your LAN administrator 
  1417. for the Alias name(s) that you should use to access the modem(s). If you get a 
  1418. device open error when trying to open a com port, you can change the com port 
  1419. by just typing in a new com port name. For example if you had COM1 as the 
  1420. device name, and that device is used by your mouse, you will get a dialog box 
  1421. that will allow you to change the name by just typing in the new name. To see 
  1422. if a device is valid, you can go to an OS/2 prompt and type in mode COM1 (where 
  1423. COM1 is the device you want to check). If you get an error from OS/2 about the 
  1424. device not being available, the one of the follow problems exists: 1. Device 
  1425. already in use. 2. The com.sys driver is not installed in your config.sys (not 
  1426. needed if use a com port on a server). 3. OS/2 could not install that com port 
  1427. when you booted your computer. 
  1428.  
  1429. If this last problem exists then you should contact IBM OS/2 defect support for 
  1430. help getting your com port to install. 
  1431.  
  1432.  
  1433. ΓòÉΓòÉΓòÉ 9.1.4. Hardware Flow Control ΓòÉΓòÉΓòÉ
  1434.  
  1435. Hardware Flow Control is generally the most reliable method of flow control. 
  1436. There are two basic times when flow control is needed. First, if Pmcomm is 
  1437. sending information to the modem faster than the modem is able to send the 
  1438. information flow control is needed. If flow control is not enabled then a 
  1439. transmission error will occur. Second if the modem is sending information to 
  1440. Pmcomm faster then Pmcomm can receive it, then Pmcomm will try to tell the 
  1441. modem to stop sending the information. This can occur when an excessive amount 
  1442. of processing is being performed on the computer. Hardware Flow Control uses 
  1443. two modem signals to control the flow of information. For send flow control the 
  1444. CTS modem line is used. For receive flow control the RTS modem line is used. If 
  1445. your modem supports these flow control signals, then setup your modem and 
  1446. Pmcomm for Hardware Flow Control. 
  1447.  
  1448.  
  1449. ΓòÉΓòÉΓòÉ 9.1.5. XON/XOFF Flow Control ΓòÉΓòÉΓòÉ
  1450.  
  1451. Xon/Xoff Flow Control should only be used when Hardware_Flow_Control is not 
  1452. available and when flow control is necessary. The only two file transfers that 
  1453. will work correctly with Xon/Xoff are ASCII and Zmodem. The only other protocol 
  1454. that should need flow control is Ymodem-g. 
  1455.  
  1456.  
  1457. ΓòÉΓòÉΓòÉ 9.1.6. Use DTR ΓòÉΓòÉΓòÉ
  1458.  
  1459. DTR stands for Data Terminal Ready, which by lowering DTR you can signal the 
  1460. device you are communicating with (usually a modem) that you wish to go off 
  1461. line. If you are connected to a modem you should set the modem up to go on-hook 
  1462. when the modem detects a drop in DTR. The command for a Hayes 2400 baud modem 
  1463. is AT&D2. If this option is selected in Pmcomm, then DTR will be dropped when 
  1464. the hangup command is selected, or after each redial attempt. 
  1465.  
  1466.  
  1467. ΓòÉΓòÉΓòÉ 9.1.7. Monitor DCD ΓòÉΓòÉΓòÉ
  1468.  
  1469. DCD stands for Data Carrier Detect and is pin 8 on an RS-232C cable. When a 
  1470. carrier is detected by the modem, Pmcomm assumes that you are connected to a 
  1471. remote computer. If DCD is not supported by your modem or other hardware, then 
  1472. this option should be turned off. With this option turned on, if no DCD is 
  1473. present then Pmcomm will not Hangup, or go into a file transfer. The drag and 
  1474. drop from the file manager will also be disabled. The command for a Hayes 2400 
  1475. baud modem is AT&C1. This will have the modem track the state of DCD. 
  1476.  
  1477.  
  1478. ΓòÉΓòÉΓòÉ 9.1.8. Default Baud ΓòÉΓòÉΓòÉ
  1479.  
  1480. The default baud is the baud rate that the communication port is set to when 
  1481. Pmcomm is first executed. The baud rate is changed to the value in the dialing 
  1482. directory when a number is dialed. Normally the default baud should be set to 
  1483. the highest baud rate supported by your modem. If you have Pmcomm connected 
  1484. directly to another computer with a NULL modem cable, then you want to set this 
  1485. baud to the same baud rate that the other computer is using. 
  1486.  
  1487.  
  1488. ΓòÉΓòÉΓòÉ 9.1.9. Default Data Bits ΓòÉΓòÉΓòÉ
  1489.  
  1490. This selection allows you to select the number of data bits that will be used 
  1491. when the communications port is initially opened. This option will be 
  1492. overridden with the parameters listed in the dialing directory once you have 
  1493. connected with a remote computer. 
  1494.  
  1495.  
  1496. ΓòÉΓòÉΓòÉ 9.1.10. Default Parity ΓòÉΓòÉΓòÉ
  1497.  
  1498. This selection allows you to select the parity that will be used when the 
  1499. communications port is initially opened. This option will be overridden with 
  1500. the parameters listed in the dialing directory once you have connected with a 
  1501. remote computer. 
  1502.  
  1503.  
  1504. ΓòÉΓòÉΓòÉ 9.1.11. Default Stop Bits ΓòÉΓòÉΓòÉ
  1505.  
  1506. This selection allows you to select the number of stop bits that will be used 
  1507. when the communications port is initially opened. This option will be 
  1508. overridden with the parameters listed in the dialing directory once you have 
  1509. connected with a remote computer. 
  1510.  
  1511.  
  1512. ΓòÉΓòÉΓòÉ 9.1.12. Exit on Hangup ΓòÉΓòÉΓòÉ
  1513.  
  1514. This selection will cause Pmcomm to exit, once you have called a remote 
  1515. computer and then DCD has dropped. You must have monitor dcd selected in order 
  1516. for this command to work. This command is useful if you wish to just call one 
  1517. number and then have Pmcomm exit. 
  1518.  
  1519.  
  1520. ΓòÉΓòÉΓòÉ 9.2. Dial Setup ΓòÉΓòÉΓòÉ
  1521.  
  1522. This allows you to select a dialing_directory from a list box and also lets you 
  1523. setup the prefix and suffix of the number to be dialed. There is a list box 
  1524. that will allow you to select how the dialing directory will be sorted. You can 
  1525. sort the dialing directory by name, number, baud rate, last on, number of times 
  1526. called, download cps, upload cps, dial prefix, and dial suffix. You can also 
  1527. select either ascending or descending order. 
  1528.  
  1529.  
  1530. ΓòÉΓòÉΓòÉ 9.2.1. Dial Auto Selected Entries ΓòÉΓòÉΓòÉ
  1531.  
  1532. If the Dial Auto Selected Entries on program Startup is selected then any 
  1533. entries in the dialing directory that are marked as automatically_selected , 
  1534. will automatically be dialed. This option will allow you to automatically dial 
  1535. selected numbers when Pmcomm is first invoked. This can be very useful if you 
  1536. dial the same numbers each time you run Pmcomm. 
  1537.  
  1538.  
  1539. ΓòÉΓòÉΓòÉ 9.2.2. Sort Dialing Directory ΓòÉΓòÉΓòÉ
  1540.  
  1541. The dialing_directory can be sorted by either the name, phone number, baud 
  1542. rate, last time called, number of times called, download characters per second, 
  1543. upload characters per second, dial prefix, or dial suffix. The directory can be 
  1544. sorted in either ascending or descending order. For example you can sort the 
  1545. dialing directory by last time called in descending order, and all the most 
  1546. recently called numbers will be displayed at the top of the dialing directory. 
  1547.  
  1548.  
  1549. ΓòÉΓòÉΓòÉ 9.2.3. Dialing Directory List ΓòÉΓòÉΓòÉ
  1550.  
  1551. A list of the available dialing_directories are displayed in a list box, so 
  1552. that a default directory can be selected. The selected directory will 
  1553. automatically be loaded when Pmcomm is started. You can add additional 
  1554. directories by pressing the add button. 
  1555.  
  1556.  
  1557. ΓòÉΓòÉΓòÉ 9.3. Modem ΓòÉΓòÉΓòÉ
  1558.  
  1559. The initialization string should have the commands in it to enable word result 
  1560. codes, hang-up when DTR is dropped and enable hardware flow control. Not all of 
  1561. these are supported by all modems but use them when possible. Pause before 
  1562. redial is the time Pmcomm waits before trying to redial a number. "Seconds to 
  1563. wait for carrier" is how long Pmcomm will wait for a connection before 
  1564. redialing. 
  1565.  
  1566. By clicking on the configure button you may add new modems to Pmcomm. 
  1567.  
  1568.  
  1569. ΓòÉΓòÉΓòÉ 9.3.1. Modem Name ΓòÉΓòÉΓòÉ
  1570.  
  1571. These are the names of the modems that you have stored in Pmcomm. The 
  1572. initialization string for that particular modem shows in the Modem 
  1573. Initialization String edit field. To add a new modem or change an existing 
  1574. modem, click on the configure button. 
  1575.  
  1576.  
  1577. ΓòÉΓòÉΓòÉ 9.3.2. Modem Initialization String ΓòÉΓòÉΓòÉ
  1578.  
  1579. Initialization string should have the commands in it to enable word result 
  1580. codes, hang-up when DTR is dropped and enable hardware flow control. Not all of 
  1581. these are supported by all modems, but use them when possible. Pmcomm's default 
  1582. modem string is for a Hayes 2400 baud modem. This is the default string: 
  1583.  
  1584. AT&F&D2&C1M0Q0S2=255S10=30X4 
  1585.  
  1586.  
  1587. ΓòÉΓòÉΓòÉ 9.3.3. Modem Pause Before Redial ΓòÉΓòÉΓòÉ
  1588.  
  1589. Pmcomm will pause for the specified number of seconds before attempting to 
  1590. redial a phone number. Some phone systems take a few seconds before you can 
  1591. redial a phone number. The default value is 3 seconds and should work for most 
  1592. phone systems. 
  1593.  
  1594.  
  1595. ΓòÉΓòÉΓòÉ 9.3.4. Modem Dial Timeout ΓòÉΓòÉΓòÉ
  1596.  
  1597. Pmcomm will wait for a Connect or Carrier message from the modem for up to 64 
  1598. seconds. The S7 register of the modem must also be set to a value at least as 
  1599. great as the dial timeout value. This can be done by issuing the following 
  1600. command to the modem: ATS7=30. This would set the modem to timeout after 30 
  1601. seconds. Setting the dial timeout to a value greater then 30 would not be 
  1602. effective because the modem would still timeout after 30 seconds. The default 
  1603. timeout value for Pmcomm is 60 seconds. 
  1604.  
  1605.  
  1606. ΓòÉΓòÉΓòÉ 9.4. Protocols ΓòÉΓòÉΓòÉ
  1607.  
  1608. The options under protocols are: 
  1609.  
  1610. Auto Zmodem Download. 
  1611.  
  1612. Auto Zmodem String. 
  1613.  
  1614. Overwrite Existing Files 
  1615.  
  1616. Rename Duplicate Files 
  1617.  
  1618. Zmodem Resume. 
  1619.  
  1620. Compare File Dates. 
  1621.  
  1622. Ignore File Dates. 
  1623.  
  1624. Zmodem CRC-32. 
  1625.  
  1626. Zmodem CRC-16. 
  1627.  
  1628. Zmodem Variable Headers. 
  1629.  
  1630. Auto CISB Transfer. 
  1631.  
  1632. CISB file recovery. 
  1633.  
  1634. Import File line delay. 
  1635.  
  1636. Force 8 bit transfer. 
  1637.  
  1638. End of line character. 
  1639.  
  1640. Control quote character. 
  1641.  
  1642. Number of pad characters. 
  1643.  
  1644. Pad character. 
  1645.  
  1646. IND$FILE. 
  1647.  
  1648. Auto Zmodem makes Pmcomm check for a Zmodem start sequence. The string that 
  1649. Pmcomm checks for can be changed. This is the Auto Zmodem String. The standard 
  1650. string is an rz followed by a carriage return (to enter a carriage return hold 
  1651. down the ALT key and press 1,3 on the numeric key pad). When this string is 
  1652. received, Pmcomm will automatically start receiving the file. 
  1653.  
  1654. The options to overwrite or rename existing files only are in effect if a 
  1655. Zmodem resume fails. If you have rename selected, and a file exists with that 
  1656. name then Pmcomm will rename the new file with a number for an extension. For 
  1657. example if you have a file called allfiles.txt in your download directory, and 
  1658. you download a file with the same name (without Zmodem resume) the new file 
  1659. will be named allfile1.txt. If allfile1.txt exists then the new file will be 
  1660. called allfile2.txt. 
  1661.  
  1662. Zmodem resume allows Zmodem to resume a file transfer that was previously 
  1663. aborted. The compare and ignore file dates options, determines if Pmcomm will 
  1664. check the date of the file on the disk, to see if it should resume the 
  1665. transfer. These options are only in effect if the Zmodem resume is selected. 
  1666. Some Zmodem systems do not send the date in the Zmodem header. If a resume is 
  1667. required for these systems, then ignore file dates should be selected. 
  1668.  
  1669. CRC-32 has improved error correction but is slightly slower. If CRC-32 is not 
  1670. available Pmcomm will switch to CRC-16. 
  1671.  
  1672. If the Zmodem Variable headers has been selected then Pmcomm will allow for 
  1673. variable length headers. Use this option only if it is supported by the host. 
  1674.  
  1675. Zmodem is only available on commercial versions. 
  1676.  
  1677. Auto CISB is similar to Auto Zmodem except that both uploads and downloads can 
  1678. be started this way. This feature is for the CISB file transfer protocol. CISB 
  1679. file recovery allows CISB to resume a file transfer that was previously 
  1680. aborted. 
  1681.  
  1682. The IND$FILE protocol may also be selected for downloads. 
  1683.  
  1684. CAUTION:
  1685. The IND$FILE file transfer protocol in Pmcomm, currently, does not support any 
  1686. error detection. 
  1687.  
  1688. The rest are Kermit options and should be made to match your host. 
  1689.  
  1690.  
  1691. ΓòÉΓòÉΓòÉ 9.5. Paths ΓòÉΓòÉΓòÉ
  1692.  
  1693. The working path MUST be set to the path that Pmcomm is installed in. The 
  1694. working path is stored in the os2.ini file. This is done so that the pmcomm.exe 
  1695. file can reside on a server, but yet each requester can have there own 
  1696. setup.dat file. The download path allows you to have the files that you 
  1697. download put into a different directory. The upload path is the path that the 
  1698. fileopen dialog will default to when doing a upload. The script path is where 
  1699. Pmcomm looks for the scripts listed in the dialing directory. The startup 
  1700. script is a script that will be executed each time Pmcomm is started. The 
  1701. default name is startup.scr. The capture path is where all screen captures are 
  1702. stored. These paths must contain a valid directory. It defaults to the 
  1703. directory that Pmcomm was started from. There is also a call logging option 
  1704. here which when turned on will start call logging as soon as Pmcomm is run. 
  1705.  
  1706.  
  1707. ΓòÉΓòÉΓòÉ 9.6. Macros Setup ΓòÉΓòÉΓòÉ
  1708.  
  1709. There are 10 user definable keyboard macros. These can be invoked by holding 
  1710. down the Alt key and pressing 1-0 or by clicking on the appropriate button on 
  1711. the Button Bar. Use this option to setup your macros. 
  1712.  
  1713.  
  1714. ΓòÉΓòÉΓòÉ 9.6.1. Macro Command ΓòÉΓòÉΓòÉ
  1715.  
  1716. Macros can be implemented by using combinations of the following commands. 
  1717.  
  1718. Use ^M to send a carriage return. When the macro is invoked it will send the 
  1719. string that you have defined to the modem. Once you have setup the macro 
  1720. string, it can also be selected from the main menu using a mouse. Other special 
  1721. characters are: 
  1722.  
  1723. ^H = tab character. 
  1724.  
  1725. ^J = carriage return without a line feed. 
  1726.  
  1727. ^L = form feed. 
  1728.  
  1729. ^[ = escape character (Ascii 27) 
  1730.  
  1731. ^C = send the Ctrl-C character (Ascii 3) 
  1732.  
  1733. ^K = XON character 
  1734.  
  1735. ^S = XOFF character 
  1736.  
  1737. ~  = sleep for half a second 
  1738.  
  1739. You can also send any other special character by holding down the Alt key and 
  1740. typing in the ASCII number on the numeric key pad. For example, if you want to 
  1741. enter the escape character into a macro you could hold down the Alt key and 
  1742. then press the two and the seven on the numeric key pad (while still holding 
  1743. down the Alt key). When you then release the Alt key the escape character would 
  1744. be inserted into the macro. Scripts can be executed from macros by using the 
  1745. shell command. An example of this would be: 
  1746.  
  1747. shell("c:\pmcomm\plane.cmd"); 
  1748.  
  1749. This would execute the REXX script called plane.cmd. This allows you a quick 
  1750. and easy way to execute often used scripts. 
  1751.  
  1752. The information in a memo field (in the dialing directory), for the number 
  1753. connected, can also be sent by entering the word memo in a macro. This would 
  1754. allow a user to send information (such as a password) to the remote computer. 
  1755. By doing this it allows a user to use the same macro key to send different 
  1756. passwords, for each dialing directory entry. 
  1757.  
  1758.  
  1759. ΓòÉΓòÉΓòÉ 9.6.2. Macro Name ΓòÉΓòÉΓòÉ
  1760.  
  1761. Enter the name of your macro in this field. We suggest using names that will be 
  1762. meaningful to you at a later date. 
  1763.  
  1764.  
  1765. ΓòÉΓòÉΓòÉ 9.7. Keymap ΓòÉΓòÉΓòÉ
  1766.  
  1767. The Key Map function of Pmcomm allow you to re-map the keys on the board to 
  1768. different functions. The name of the current key map will be displayed in the 
  1769. title bar of the Key Map dialog box. Different default key maps can be assigned 
  1770. to each terminal emulation. Key maps can also be selected for each dialing 
  1771. entry in the dialing directory, and this dialing entry will be the one used 
  1772. once connected to the remote computer. This key map will still be in effect 
  1773. until the next number is dialed, even after being disconnected from the remote 
  1774. computer. 
  1775.  
  1776. Keys can be re-mapped to send different characters, for example you could 
  1777. re-map the z key to send a Z, or any other character. 
  1778.  
  1779. Keys can also send strings instead of single characters. The same rules applies 
  1780. to the strings in key mapping as it does to the macro commands (see Macro 
  1781. Command for more information). 
  1782.  
  1783. Keys can be re-mapped to perform any of the Pmcomm menu commands, or OS/2 
  1784. system menu commands (see Key Command for more information). 
  1785.  
  1786. Combination keys can also be re-mapped. An example is if you wanted to re-map 
  1787. the ^P key ( sent by holding down the Ctrl button on the key board and then 
  1788. pressing the P key). To re-map this key you would select the P button (on the 
  1789. Key Map dialog box), and the Control check box. 
  1790.  
  1791. Note:  The alpha numeric keys (a-z, 1-0, etc) are Caps Lock sensitive. For 
  1792. example if you want re-map the ^P key you must have the Caps check box selected 
  1793. in the Key Map dialog box. If you want to re-map the ^p key then the Caps check 
  1794. box would not be selected. Also, ^P with the Caps check box selected, is not 
  1795. the same as ^P and the Shift check box selected. Selecting the Shift check box, 
  1796. means that you will be holding down the shift key when you press the other key, 
  1797. or keys. The keys on the numeric key pad are sensitive to the state of the Num 
  1798. Lock, in much the same way. This allows you to define both the 1, and the End 
  1799. keys (for example) on the numeric key pad. 
  1800.  
  1801. You can also use multiple combinations, such as Control, Alt, P. Normally the 
  1802. biggest confusion when using the key map is that you can define so many 
  1803. combinations. Make sure that you do define all the combinations that you are 
  1804. going to use (ie. caps lock on, caps lock off, etc). 
  1805.  
  1806. The Shift check box would be selected when you plan on holding down the shift 
  1807. key when press the other key. The same follow for the Control and Alt check 
  1808. boxes. You can also combine these, for example you could re-map a key that you 
  1809. want to have the Control and Shift key pressed. 
  1810.  
  1811. Note:  The Lone Key check box is a special case, and can not be used in most 
  1812. cases. The only time that it can be used is in conjuction with the Shift, Ctrl, 
  1813. and Alt keys on your keyboard, when you wish to re-map just those keys. If one 
  1814. of these keys are pressed and released without another key being pressed then 
  1815. Pmcomm will check to see if one of these keys have been re-mapped with the Lone 
  1816. key option. 
  1817.  
  1818. By selecting the Lone Key check box you can assign a map to the shift, ctrl, or 
  1819. alt, keys and not effect there operation when they are used with other keys. 
  1820.  
  1821.  
  1822. ΓòÉΓòÉΓòÉ 9.7.1. Key Command ΓòÉΓòÉΓòÉ
  1823.  
  1824. There are four types of commands: 
  1825.  
  1826. Character. 
  1827.  
  1828. String. 
  1829.  
  1830. Pmcomm menu. 
  1831.  
  1832. OS/2 system menu. 
  1833.  
  1834. Characters are sent just by typing the character you want to send in the 
  1835. Current Key Assignment combination box in the Key Map dialog box. Single 
  1836. characters are not parsed in anyway, but just sent directly to the com port. 
  1837.  
  1838. Strings are series of characters that you type into the Key Map dialog box, and 
  1839. are parsed just as Macros are (see Macro Command for more information). 
  1840.  
  1841. Pmcomm menu commands are any of the commands that you can execute from the 
  1842. Pmcomm menu. These commands can be selected from the Key Assignment combination 
  1843. box. They are as follows: 
  1844.  
  1845. <HELP> 
  1846.  
  1847. <DIAL> 
  1848.  
  1849. <QUEUE DIAL> 
  1850.  
  1851. <EXIT> 
  1852.  
  1853. <KEY MAP> 
  1854.  
  1855. <SCROLL BUFFER> 
  1856.  
  1857. <COM ERROR> 
  1858.  
  1859. <CHAT> 
  1860.  
  1861. <ABOUT> 
  1862.  
  1863. <DOWNLOAD> 
  1864.  
  1865. <UPLOAD> 
  1866.  
  1867. <HANGUP> 
  1868.  
  1869. <SETUP PORT> 
  1870.  
  1871. <SETUP MODEM> 
  1872.  
  1873. <SETUP PROTOCOL> 
  1874.  
  1875. <SETUP PATHS> 
  1876.  
  1877. <SETUP STATUS> 
  1878.  
  1879. <SETUP SCREEN> 
  1880.  
  1881. <SETUP TERMINAL> 
  1882.  
  1883. <SETUP MACROS> 
  1884.  
  1885. <SETUP DIAL> 
  1886.  
  1887. <SAVE SETUP> 
  1888.  
  1889. <SEND BREAK> 
  1890.  
  1891. <INIT MODEM> 
  1892.  
  1893. <CANCEL SCRIPT> 
  1894.  
  1895. <START SCRIPT> 
  1896.  
  1897. <START SCRIPT GEN> 
  1898.  
  1899. <CANCEL SCRIPT GEN> 
  1900.  
  1901. <SHOW SCRIPT DIALOG> 
  1902.  
  1903. <START CAPTURE> 
  1904.  
  1905. <CANCEL CAPTURE> 
  1906.  
  1907. <CLIPBOARD PASTE> 
  1908.  
  1909. <CLIPBOARD COPY> 
  1910.  
  1911. <CLIPBOARD APPEND> 
  1912.  
  1913. <PRINT SCREEN> 
  1914.  
  1915. <PRINT SCREEN BUFFER> 
  1916.  
  1917. <PRINT SELECTED> 
  1918.  
  1919. <START CONTINUOUS PRINTING> 
  1920.  
  1921. <CANCEL CONTINUOUS PRINTING> 
  1922.  
  1923. <FILE IMPORT> 
  1924.  
  1925. <START LOGGING> 
  1926.  
  1927. <CANCEL LOGGING> 
  1928.  
  1929. <CLEAR SCREEN> 
  1930.  
  1931. <SEND MACRO 1> 
  1932.  
  1933. <SEND MACRO 2> 
  1934.  
  1935. <SEND MACRO 3> 
  1936.  
  1937. <SEND MACRO 4> 
  1938.  
  1939. <SEND MACRO 5> 
  1940.  
  1941. <SEND MACRO 6> 
  1942.  
  1943. <SEND MACRO 7> 
  1944.  
  1945. <SEND MACRO 8> 
  1946.  
  1947. <SEND MACRO 9> 
  1948.  
  1949. <SEND MACRO 10> 
  1950.  
  1951. OS/2 system commands are commands that OS/2 processes. These commands can also 
  1952. be selected from the Key Assignment combination box. They are as follows: 
  1953.  
  1954. <SC_CLOSE> 
  1955.  
  1956. <SC_MOVE> 
  1957.  
  1958. <SC_MINIMIZE> 
  1959.  
  1960. <SC_MAXIMIZE> 
  1961.  
  1962. <SC_SIZE> 
  1963.  
  1964. <SC_NEXT> 
  1965.  
  1966. <SC_APPMENU> 
  1967.  
  1968. <SC_SYSMENU> 
  1969.  
  1970. <SC_RESTORE> 
  1971.  
  1972. <SC_TASKMANAGER> 
  1973.  
  1974. <SC_HELPKEYS> 
  1975.  
  1976. <SC_HELPINDEX> 
  1977.  
  1978. <SC_HELPEXTENDED> 
  1979.  
  1980. <SC_HIDE> 
  1981.  
  1982. There are three variables that can also be used to send special characters. 
  1983. They are: 
  1984.  
  1985. <CSI> 
  1986.  
  1987. <SS3> 
  1988.  
  1989. <ESC> 
  1990.  
  1991. The < and > must be used, and they are case sensitive. These variables are very 
  1992. useful when using the VT100 and VT220 terminal emulations. The <CSI> and the 
  1993. <SS3> will change depending on if you are using 7 or 8 data bits, and if your 
  1994. host wants 7 or 8 bit escape codes. The CSI is generally used for the leading 
  1995. characters of the function keys. The SS3 is used for the leading characters for 
  1996. the application keys (the numeric key pad keys). The default for CSI in 7 bit 
  1997. mode is ESC[ and for SS3 it's ESCO, where ESC is the escape character (Ascii 
  1998. 0x1b). If a key map has not re-mapped the keys then Pmcomm defaults to the 
  1999. standard VT100 and VT220 key definitions as in past versions. 
  2000.  
  2001.  
  2002. ΓòÉΓòÉΓòÉ 9.8. Screen ΓòÉΓòÉΓòÉ
  2003.  
  2004. This command allows you to tailor the screen handling to your tastes. The best 
  2005. thing to do is try them to see if you like them. Some features like the 
  2006. automatic horizontal scroll will probably only be used when typing messages and 
  2007. chatting. 
  2008.  
  2009.  
  2010. ΓòÉΓòÉΓòÉ 9.8.1. Font ΓòÉΓòÉΓòÉ
  2011.  
  2012. Allows you to select from a list of font sizes. The sizes depend on the display 
  2013. adapter and version of OS/2 you are using. Pmcomm queries the video device 
  2014. driver to see what font sizes it supports and lists them for you to select. 
  2015.  
  2016.  
  2017. ΓòÉΓòÉΓòÉ 9.8.2. Foreground ΓòÉΓòÉΓòÉ
  2018.  
  2019. Sets up the color to be used for the text used in the Pmcomm window. There are 
  2020. 16 different background and foreground colors available, allowing for 256 
  2021. different color combinations. 
  2022.  
  2023.  
  2024. ΓòÉΓòÉΓòÉ 9.8.3. Background ΓòÉΓòÉΓòÉ
  2025.  
  2026. Sets up the color to be used for the Pmcomm window background. There are 16 
  2027. different background and foreground colors available, allowing for 256 
  2028. different color combinations. 
  2029.  
  2030.  
  2031. ΓòÉΓòÉΓòÉ 9.8.4. Extended Scroll Size ΓòÉΓòÉΓòÉ
  2032.  
  2033. The Extended Scroll Size options allows you to set the maximum size of the 
  2034. buffer that Pmcomm will use to store the extended scroll information into. When 
  2035. this buffer fills up Pmcomm will delete the oldest information, to allow room 
  2036. for new information. Pmcomm will only allocate memory as it is needed to store 
  2037. the scroll information, and it will not allocate more memory then is set in the 
  2038. Extended Scroll Size option. If the size is set to 0 then Pmcomm will not use 
  2039. the Extended Scroll buffer. 
  2040.  
  2041.  
  2042. ΓòÉΓòÉΓòÉ 9.8.5. German Umlaut Filter ΓòÉΓòÉΓòÉ
  2043.  
  2044. This feature will display some special characters that appear in the German 
  2045. language. The translations are as follows: 
  2046.  
  2047. ^U  =  @ 
  2048.  
  2049.  ╨₧  =  [ 
  2050.  
  2051.  ╨⌐  =  \ 
  2052.  
  2053.  ╨¬  =  ] 
  2054.  
  2055.  ╨ö  =  { 
  2056.  
  2057.  ╨ñ  =  | 
  2058.  
  2059.  ╨æ  =  } 
  2060.  
  2061.  ╤ü  =  ~ 
  2062.  
  2063.  
  2064. ΓòÉΓòÉΓòÉ 9.8.6. Hide Window While Dialing ΓòÉΓòÉΓòÉ
  2065.  
  2066. The hide window while dialing option will make the screen less "busy" while 
  2067. dialing. 
  2068.  
  2069.  
  2070. ΓòÉΓòÉΓòÉ 9.8.7. Hide Window During a File Transfer ΓòÉΓòÉΓòÉ
  2071.  
  2072. The hide window during a file transfer option will make the screen less "busy" 
  2073. while executing a file transfer. If you use the show button on the file 
  2074. transfer dialog box, the main window will reappear. 
  2075.  
  2076.  
  2077. ΓòÉΓòÉΓòÉ 9.8.8. Automatic Vertical Scroll ΓòÉΓòÉΓòÉ
  2078.  
  2079. The Automatic vertical scroll option will make Pmcomm keep the cursor 
  2080. vertically in the Pmcomm window. 
  2081.  
  2082.  
  2083. ΓòÉΓòÉΓòÉ 9.8.9. Automatic Horizontal Scroll ΓòÉΓòÉΓòÉ
  2084.  
  2085. The Automatic horizontal scroll option will keep the cursor horizontally in the 
  2086. Pmcomm window. 
  2087.  
  2088.  
  2089. ΓòÉΓòÉΓòÉ 9.8.10. Retain Dialing Dialog's Position ΓòÉΓòÉΓòÉ
  2090.  
  2091. The retain dialing dialog's position option will make Pmcomm restore the last 
  2092. position of the dialing dialog each time it is invoked. If this option is not 
  2093. selected then OS/2 will decide where to place the dialog boxes. 
  2094.  
  2095.  
  2096. ΓòÉΓòÉΓòÉ 9.8.11. Retain Transfer Dialog's Position ΓòÉΓòÉΓòÉ
  2097.  
  2098. The retain transfer dialog's position option will make Pmcomm restore the last 
  2099. position of the transfer dialog each time it is invoked. If this option is not 
  2100. selected then OS/2 will decide where to place the dialog boxes. 
  2101.  
  2102.  
  2103. ΓòÉΓòÉΓòÉ 9.8.12. Show Dial Message Box ΓòÉΓòÉΓòÉ
  2104.  
  2105. The Show Dial Message Box option makes Pmcomm display a message box and beeps 
  2106. at the user, when Pmcomm obtains a remote connection, until the OK button is 
  2107. pressed. This will make sure you notice that Pmcomm has a remote connection. 
  2108.  
  2109.  
  2110. ΓòÉΓòÉΓòÉ 9.8.13. Local Echo On ΓòÉΓòÉΓòÉ
  2111.  
  2112. The local echo on option will make Pmcomm echo all keystrokes to the local 
  2113. screen as well as to the remote computer. 
  2114.  
  2115.  
  2116. ΓòÉΓòÉΓòÉ 9.8.14. Turn Sound On ΓòÉΓòÉΓòÉ
  2117.  
  2118. The turn sound on option will make Pmcomm alert the user when certain functions 
  2119. have been completed. The sound must also be turned on in OS/2 for this option 
  2120. to work. In the System Setup object in the OS/2 System folder there is an 
  2121. object labeled Sound. Make sure the Warning Beep box is checked. 
  2122.  
  2123.  
  2124. ΓòÉΓòÉΓòÉ 9.9. Status Line ΓòÉΓòÉΓòÉ
  2125.  
  2126. This option will activate Pmcomm's Status Line. The Status Line shows the time 
  2127. connected to a remote computer and the terminal type. If the mouse cursor is 
  2128. moved over the top of a button on the button bar, the Status Line also shows a 
  2129. brief description of the button. If the mouse cursor is moved over the top of 
  2130. the port button, the current port statistics are displayed on the Status Line. 
  2131.  
  2132. The elapsed timer starts as soon as you are connected to another computer. The 
  2133. timer displays the elapsed time in hours and minutes. You may also set two 
  2134. warning levels. The first will change the connect time to yellow and the second 
  2135. level will turn the connect time red. These warning levels are useful to keep 
  2136. track of how of the time you are connected to a remote computer. 
  2137.  
  2138.  
  2139. ΓòÉΓòÉΓòÉ 9.9.1. Show Status Line ΓòÉΓòÉΓòÉ
  2140.  
  2141. The "Show status line" option will display Pmcomm's Status Line at the bottom 
  2142. of the Pmcomm window. For more information see Status_Line. 
  2143.  
  2144.  
  2145. ΓòÉΓòÉΓòÉ 9.9.2. Connect time for first warning ΓòÉΓòÉΓòÉ
  2146.  
  2147. After the amount of time specified in this option expires, Pmcomm will turn the 
  2148. connect time yellow. The time must be specified in the hh:mm format. 
  2149.  
  2150.  
  2151. ΓòÉΓòÉΓòÉ 9.9.3. Connect time for second warning ΓòÉΓòÉΓòÉ
  2152.  
  2153. After the amount of time specified in this option expires, Pmcomm will turn the 
  2154. connect time red. The time must be specified in the hh:mm format. 
  2155.  
  2156.  
  2157. ΓòÉΓòÉΓòÉ 9.10. File Open ΓòÉΓòÉΓòÉ
  2158.  
  2159. Pmcomm uses the standard OS/2 file open dialog, when the user needs to open an 
  2160. existing file. When multiple files can be opened (such as when doing batch 
  2161. uploads), Pmcomm allows the user to select multiple files. If a user types in a 
  2162. file name with wild cards, such as *.cmd, then all the files that end with a 
  2163. cmd extension will be displayed in the File list box. A user may also type in 
  2164. the file name directly, instead of selecting the file with the mouse. 
  2165.  
  2166. Different disk drives may be selected with the drive combo box, and different 
  2167. directories can be selected using the directory list box. Pmcomm will display 
  2168. either the Pmcomm working directory, or the script directory (if starting a 
  2169. script), or the upload directory (if uploading or importing a file). If a user 
  2170. uploads a file from other then the upload directory, the next time (as long as 
  2171. Pmcomm is not closed) the user uploads a file Pmcomm will display that 
  2172. directory. The same thing works when starting scripts. 
  2173.  
  2174.  
  2175. ΓòÉΓòÉΓòÉ 9.11. Terminal ΓòÉΓòÉΓòÉ
  2176.  
  2177. Terminal allows you to select which emulation you wish to use. There are also 
  2178. some options for the different emulations. 
  2179.  
  2180.  
  2181. ΓòÉΓòÉΓòÉ 9.11.1. Default Key Map ΓòÉΓòÉΓòÉ
  2182.  
  2183. The default key map combination box allows you to select a different default 
  2184. key map for each terminal emulation. This key map may be overridden by a key 
  2185. map that is selected in the dialing directory. If you wish to create a new key 
  2186. map, just type in the name of the key map you wish to create (key map's must 
  2187. have a .map extension). If you wish to use an existing key map just select it 
  2188. from the drop down list box. 
  2189.  
  2190.  
  2191. ΓòÉΓòÉΓòÉ 9.11.2. TTY emulation ΓòÉΓòÉΓòÉ
  2192.  
  2193. The TTY emulation makes Pmcomm act as a teletype device. Generally this is the 
  2194. least used emulation, however, it is also the fastest. The reason for this is 
  2195. that there are very few special commands that Pmcomm has to process. None of 
  2196. the special ANSI control codes are processed. 
  2197.  
  2198.  
  2199. ΓòÉΓòÉΓòÉ 9.11.3. ANSI emulation ΓòÉΓòÉΓòÉ
  2200.  
  2201. The ANSI emulation is probably the most used. It will execute the special ANSI 
  2202. screen control commands. This allows the remote program to be able to clear the 
  2203. screen, position the cursor and change the colors. There are other screen 
  2204. control commands but these are the most commonly used ones. There are also 
  2205. options to have Pmcomm ignore the ANSI color changes so that you can use the 
  2206. colors you want, instead of the ones the remote computer uses, and to send the 
  2207. ANSI cursor position commands with the arrow keys. When using the ANSI 
  2208. emulation you can also have Pmcomm strip off the ANSI commands before saving 
  2209. the information into a capture file. This will make the capture file much more 
  2210. readable. You can also change the length of the page, to correspond to the size 
  2211. of your screen. The default for the ANSI page length is 25 lines, and under 
  2212. most cases should be left there. 
  2213.  
  2214.  
  2215. ΓòÉΓòÉΓòÉ 9.11.4. VT100 and VT220 emulation ΓòÉΓòÉΓòÉ
  2216.  
  2217. In VT100 and VT220 emulation, some keys have been changed to try to more 
  2218. closely emulate the VT100 keyboard. F1-F4 are now the PF keys. Because of this 
  2219. the F1 key will not display the normal help and F3 will not exit the program. 
  2220. The PF keys will send the following characters: 
  2221.  
  2222.   F1 = ESCOP 
  2223.  
  2224.   F2 = ESCOQ 
  2225.  
  2226.   F3 = ESCOR 
  2227.  
  2228.   F4 = ESCOS 
  2229.  
  2230. Where ESC is equal to the ASCII character hex 1B. All other hot keys will not 
  2231. be available. When the num lock key is off, the numerical key pad will be in 
  2232. the application mode. If you are connecting to a VT220 Host you can use these 
  2233. keys to send the VT220 PF key values. For example pressing the 1 on the numeric 
  2234. key pad will send the VT220 PF1 key. Pressing the 3 on the numeric key pad will 
  2235. send the VT220 PF3 key, and so on. With the num lock on the numbers will be 
  2236. sent. The plus key has been re-mapped to be a comma, again to be compatible 
  2237. with the VT100 keyboard. In most cases it is best to tell the host that you are 
  2238. a VT220 terminal. The VT100 emulation of Pmcomm supports most of the VT220 
  2239. commands, and will allow you to use the extra support that VT220 allows. If you 
  2240. tell the host that you are a VT220 terminal, for example, you will be able to 
  2241. use the Ctrl-R for reset and the Ctrl-C for clear. These are just a couple of 
  2242. examples of the additional benefit that you can get from VT220. 
  2243.  
  2244. The send DEL for backspace option is the default for many VT100 keyboards. When 
  2245. this is selected, Pmcomm will send a hex 7f character instead of the backspace 
  2246. character. You can still send a backspace character by pressing Ctrl-Backspace. 
  2247. This allows you to have both these characters available at one time. 
  2248.  
  2249. The translate CR/LF for LF option will act as if it received a carriage return 
  2250. and a line feed, each time it receives a line feed. 
  2251.  
  2252. The line wrap option will make Pmcomm wrap the line if the line is longer than 
  2253. the page width. If this option is off the line will be truncated. 
  2254.  
  2255. The Insert mode option will allow you to insert characters into the middle of a 
  2256. line and the rest of the line will be shifted to the right to allow room for 
  2257. the new characters. 
  2258.  
  2259. The cursor visible option determines if the cursor will be shown on the screen 
  2260. or not. 
  2261.  
  2262. The Screen origin relative option determines if Pmcomm will keep everything on 
  2263. a 25 line screen or allow it to use the scroll back buffer. In most cases this 
  2264. option should be selected. 
  2265.  
  2266. The last two options are to set the width of the screen. Either 80 or 132 
  2267. columns are supported. 
  2268.  
  2269. Most of these options can be changed from the host. The default setup should 
  2270. work for most applications, and the host can change the options to meet 
  2271. different needs. 
  2272.  
  2273.  
  2274. ΓòÉΓòÉΓòÉ 9.12. Chat ΓòÉΓòÉΓòÉ
  2275.  
  2276. This sets up Pmcomm to "chat" when connected to another computer that is also 
  2277. running Pmcomm. This mode automatically sets Pmcomm to echo characters locally 
  2278. and to send a carriage return line feed combination when the enter key is 
  2279. pressed. 
  2280.  
  2281.  
  2282. ΓòÉΓòÉΓòÉ 10. Macros ΓòÉΓòÉΓòÉ
  2283.  
  2284. Allows you to pick, with a mouse, the macro you wish to send. Can also be 
  2285. selected with an Alt+corresponding number keystroke. Pmcomm allows you to set 
  2286. up ten different macros. Scripts can be executed from macros by using the shell 
  2287. command. An example of this would be: 
  2288.  
  2289. shell("c:\pmcomm\plane.cmd"); 
  2290.  
  2291. This would execute the REXX script called plane.cmd. This allows you a quick 
  2292. and easy way to execute your most popular scripts. 
  2293.  
  2294.  
  2295. ΓòÉΓòÉΓòÉ 11. Script Syntax ΓòÉΓòÉΓòÉ
  2296.  
  2297. Both, internal and REXX, syntaxes are described in this section. 
  2298.  
  2299.  
  2300. ΓòÉΓòÉΓòÉ 11.1. REXX Functions ΓòÉΓòÉΓòÉ
  2301.  
  2302. This describes the function calls that are available in the rxpmcomm.dll. 
  2303. Before using any of these calls you must include these lines in your REXX 
  2304. program: 
  2305.  
  2306. Call RxFuncadd " init_dll ","RxPmcomm","init_dll" 
  2307.  
  2308. Parse arg port portname screen_handle dde_output dde_input semaphore 
  2309.  
  2310. Call init_dll 
  2311.  
  2312. The rxpmcomm.dll must reside in a directory listed in your LIBPATH statement in 
  2313. config.sys. One of the default directories is \os2\dll. If you are using OS/2 
  2314. 2.0 or later, then you can use the init_32dll, which is in the RxPmc32.dll. 
  2315. This is a 32 bit dll, which will use less memory and maybe faster in some 
  2316. cases. These functions are designed to make it easier to preform tasks 
  2317. necessary when writing scripts for asynch communications. To invoke a REXX 
  2318. program from a script, use the shell( ) function in the script. The format of 
  2319. the shell function is as follows: 
  2320.  
  2321. shell("\path\filename.cmd"); 
  2322. where filename.cmd is your REXX program. These functions have been tested with 
  2323. the REXX that comes with OS/2 1.3 and 2.0, but should work with any totally 
  2324. function compatible REXX. There are some sample REXX programs included. 
  2325.  
  2326.  
  2327. ΓòÉΓòÉΓòÉ 11.1.1. init_dll ΓòÉΓòÉΓòÉ
  2328.  
  2329. The init_dll function will register the functions in the rxpmcomm.dll, with 
  2330. REXX. This function must be called before any other rxpmcomm.dll function is 
  2331. called. The RxFuncadd must be called before init_dll to register this function 
  2332. with REXX. 
  2333.  
  2334.  
  2335. ΓòÉΓòÉΓòÉ 11.1.2. init_32dll ΓòÉΓòÉΓòÉ
  2336.  
  2337. The init_32dll function will register the functions in the rxpmc32.dll, with 
  2338. REXX. This function must be called before any other rxpmc32.dll function is 
  2339. called. The RxFuncadd must be called before init_32dll to register this 
  2340. function with REXX. The rxpmc32.dll and the init_32dll function can only be 
  2341. used with OS/2 2.0 and later. 
  2342.  
  2343.  
  2344. ΓòÉΓòÉΓòÉ 11.1.3. os2_shell ΓòÉΓòÉΓòÉ
  2345.  
  2346. os2_shell port,port 
  2347.  
  2348. Example 
  2349.  
  2350. Call os2_shell port,port 
  2351.  
  2352. Description 
  2353.  
  2354. This command will allow a caller to shell to OS/2, remotely. The first 
  2355. parameter is the input handle and the second is the output handle. In the 
  2356. example above, the command will receive and send the information to the 
  2357. communication port. 
  2358.  
  2359. Returns 
  2360.  
  2361. 1 if successful and 0 if unsuccessful. 
  2362.  
  2363.  
  2364. ΓòÉΓòÉΓòÉ 11.1.4. set_download_path ΓòÉΓòÉΓòÉ
  2365.  
  2366. set_download_path directory,dde_output 
  2367.  
  2368. Example 
  2369.  
  2370. Call set_download_path "c:\pmcomm",dde_output 
  2371.  
  2372. Description 
  2373.  
  2374. The above example will set the download path to c:\pmcomm. This will store all 
  2375. of the files received in that directory. The dde_output, is the dde_output 
  2376. value passed on the command line. 
  2377.  
  2378. Returns 
  2379.  
  2380. 1 if successful and 0 if unsuccessful. 
  2381.  
  2382.  
  2383. ΓòÉΓòÉΓòÉ 11.1.5. setcom ΓòÉΓòÉΓòÉ
  2384.  
  2385. setcom baud,parity,data_bit,stop_bits,port 
  2386.  
  2387. Example 
  2388.  
  2389. Call setcom "2400","N","8","1",port 
  2390.  
  2391. Description 
  2392.  
  2393. This would set the communication port to 2400 baud, no parity, 8 data bits, 1 
  2394. stop bit. Baud can be from 300 to 19200 with the standard OS/2 device driver. 
  2395. Parity can be N(none), O(odd), E(even), M(marked), or S(spaced). Data bits can 
  2396. be 5, 6, 7 or 8. Stop bits can be 1 or 2 (2 can only be used with 5 data bits). 
  2397. If a parameter is an empty string (i.e. setcom "","E","7","1",port) this leaves 
  2398. the baud at the current rate but set the line characteristics to 7, Even, 1. 
  2399.  
  2400. Returns 
  2401.  
  2402. 1 if successful and 0 if unsuccessful. 
  2403.  
  2404.  
  2405. ΓòÉΓòÉΓòÉ 11.1.6. sendb ΓòÉΓòÉΓòÉ
  2406.  
  2407. sendb length,port 
  2408.  
  2409. Example 
  2410.  
  2411. Call sendb "300",port 
  2412.  
  2413. Description 
  2414.  
  2415. This call sends a break signal a certain time in milliseconds. The above 
  2416. example would send a break signal for 300 milliseconds. This call is mostly 
  2417. used to establish direct connects (not using a modem). Three hundred 
  2418. milliseconds should be okay for most situations. 
  2419.  
  2420. Returns 
  2421.  
  2422. 1 if successful and 0 if unsuccessful. 
  2423.  
  2424.  
  2425. ΓòÉΓòÉΓòÉ 11.1.7. dcd ΓòÉΓòÉΓòÉ
  2426.  
  2427. dcd port 
  2428.  
  2429. Example 
  2430.  
  2431. Call dcd port 
  2432.  
  2433. Description 
  2434.  
  2435. This call checks to see if there is a carrier detected on the modem. You can 
  2436. use this to see if Pmcomm is still online to a remote computer. For this 
  2437. information to be correct the modem must support dcd and the modem must be 
  2438. configured to support dcd. To find the command refer to your owner's manual. 
  2439.  
  2440. Returns 
  2441.  
  2442. 1 if carrier detected and 0 if no carrier. 
  2443.  
  2444.  
  2445. ΓòÉΓòÉΓòÉ 11.1.8. char_avail ΓòÉΓòÉΓòÉ
  2446.  
  2447. char_avail port 
  2448.  
  2449. Example 
  2450.  
  2451. Call char_avail port 
  2452.  
  2453. Description 
  2454.  
  2455. This call checks to see how many characters are available in the device 
  2456. driver's receive buffer. You can use this function to check to see if the 
  2457. device driver has received any characters from the communication port. 
  2458.  
  2459. Returns 
  2460.  
  2461. Number of characters in device driver receive queue. 
  2462.  
  2463.  
  2464. ΓòÉΓòÉΓòÉ 11.1.9. read_timeout ΓòÉΓòÉΓòÉ
  2465.  
  2466. read_timeout timeout,port 
  2467.  
  2468. Example 
  2469.  
  2470. Call read_timeout 20000,port 
  2471.  
  2472. Description 
  2473.  
  2474. This call sets the length of time (in milliseconds) that wait_for, wait_fore, 
  2475. Get_ch will wait for a character from the communication port. The above example 
  2476. will make the functions wait for 20 seconds. 
  2477.  
  2478. Returns 
  2479.  
  2480. 1 if successful and 0 if unsuccessful. 
  2481.  
  2482.  
  2483. ΓòÉΓòÉΓòÉ 11.1.10. Get_ch ΓòÉΓòÉΓòÉ
  2484.  
  2485. Get_ch port 
  2486.  
  2487. Example 
  2488.  
  2489. Call Get_ch port 
  2490.  
  2491. Description 
  2492.  
  2493. This call will get a character from the communication port. If no character is 
  2494. available by the time set with read_timeout the function will return with a 
  2495. value of -1. Otherwise the function will return with the character read. 
  2496.  
  2497. Returns 
  2498.  
  2499. char value if successful and -1 if unsuccessful. 
  2500.  
  2501.  
  2502. ΓòÉΓòÉΓòÉ 11.1.11. ring_detect ΓòÉΓòÉΓòÉ
  2503.  
  2504. ring_detect port 
  2505.  
  2506. Example 
  2507.  
  2508. Call ring_detect port 
  2509.  
  2510. Description 
  2511.  
  2512. This call can be used to inform a program if the phone is ringing. 
  2513.  
  2514. Returns 
  2515.  
  2516. 1 if ring detected, 0 if no ring, and 2 if invalid number of parameters. 
  2517.  
  2518.  
  2519. ΓòÉΓòÉΓòÉ 11.1.12. drop_dtr ΓòÉΓòÉΓòÉ
  2520.  
  2521. drop_dtr port 
  2522.  
  2523. Example 
  2524.  
  2525. Call drop_dtr port 
  2526.  
  2527. Description 
  2528.  
  2529. This call is usually used to make a modem hang up. The modem must be configured 
  2530. to allow this. To find the command for your modem, check your owner's manual. 
  2531. Dtr needs to be dropped for about 2-3 seconds to make sure the modem sees the 
  2532. drop in DTR. After that length of time raise_dtr can be called to bring DTR 
  2533. back up. On a Hayes 2400 the above command will also keep the modem from doing 
  2534. an auto answer until you raise_dtr again. 
  2535.  
  2536. Returns 
  2537.  
  2538. 1 if successful and 0 if unsuccessful. 
  2539.  
  2540.  
  2541. ΓòÉΓòÉΓòÉ 11.1.13. raise_dtr ΓòÉΓòÉΓòÉ
  2542.  
  2543. raise_dtr port 
  2544.  
  2545. Example 
  2546.  
  2547. Call raise_dtr port 
  2548.  
  2549. Description This call is usually used after drop_dtr to allow the modem to 
  2550. process commands and enable it to answer the phone. 
  2551.  
  2552. Returns 
  2553.  
  2554. 1 if successful and 0 if unsuccessful. 
  2555.  
  2556.  
  2557. ΓòÉΓòÉΓòÉ 11.1.14. Wait_for (REXX) ΓòÉΓòÉΓòÉ
  2558.  
  2559. Wait_for string,string,string...,port 
  2560.  
  2561. Example 
  2562.  
  2563. Call Wait_for "first name?","last name?",port 
  2564.  
  2565. Description 
  2566.  
  2567. The above example would wait for either first name?, or last name?, from the 
  2568. communication port. The function will return the index of the string that 
  2569. matched. For example if the Wait_for received last name?, then the result would 
  2570. be 2. You can specify any number of strings depending on memory available. 
  2571.  
  2572. Returns 
  2573.  
  2574. Index of matched string or zero if timeout or error. 
  2575.  
  2576.  
  2577. ΓòÉΓòÉΓòÉ 11.1.15. Wait_fore ΓòÉΓòÉΓòÉ
  2578.  
  2579. Wait_fore string,string,string...,port,screen_handle 
  2580.  
  2581. Example 
  2582.  
  2583. Call Wait_fore "first name?","last name?",port,screen_handle 
  2584.  
  2585. Call Wait_fore "first name?",port,1 
  2586.  
  2587. Call Wait_fore "first name?","raw",port,1 
  2588.  
  2589. Description 
  2590.  
  2591. The first example would wait for either first name?, or last name?, from the 
  2592. communication port and echo the out_put to the Pmcomm screen. The second 
  2593. example would do the same except it would write the out put to StdOut(value 1) 
  2594. which would be the REXX screen. The third example would look for an exact match 
  2595. coming across the communication port, including any ANSI sequences. 
  2596.  
  2597. Returns 
  2598.  
  2599. Index of matched string or zero if timeout or error. 
  2600.  
  2601.  
  2602. ΓòÉΓòÉΓòÉ 11.1.16. Put_s ΓòÉΓòÉΓòÉ
  2603.  
  2604. Put_s string,port 
  2605.  
  2606. Example 
  2607.  
  2608. Call Put_s "first name",port 
  2609.  
  2610. Description 
  2611.  
  2612. This call will send string out to port. In the above example first name will be 
  2613. sent to the communication port. If port is not specified then 'string' will be 
  2614. sent to the REXX screen. If screen_handle is specified instead of port then the 
  2615. string will be sent to the Pmcomm screen. 
  2616.  
  2617. Returns 
  2618.  
  2619. Length of string actually written. 
  2620.  
  2621.  
  2622. ΓòÉΓòÉΓòÉ 11.1.17. Sleep (REXX) ΓòÉΓòÉΓòÉ
  2623.  
  2624. Sleep time 
  2625.  
  2626. Example 
  2627.  
  2628. Call Sleep "1000" 
  2629.  
  2630. Description 
  2631.  
  2632. This call will delay the program for the amount of milliseconds specified. The 
  2633. above example will delay the computer for one second. 
  2634.  
  2635. Returns 
  2636.  
  2637. Unconditionally 0. 
  2638.  
  2639.  
  2640. ΓòÉΓòÉΓòÉ 11.1.18. beep ΓòÉΓòÉΓòÉ
  2641.  
  2642. beep frequency,duration 
  2643.  
  2644. Example 
  2645.  
  2646. Call beep 495,100 
  2647.  
  2648. Description 
  2649.  
  2650. The above example will beep the speaker. 
  2651.  
  2652. Returns 
  2653.  
  2654. 1 if successful and 0 if unsuccessful. 
  2655.  
  2656.  
  2657. ΓòÉΓòÉΓòÉ 11.1.19. get_cursor_position ΓòÉΓòÉΓòÉ
  2658.  
  2659. get_cursor_position axis,dde_output,dde_input 
  2660.  
  2661. Example 
  2662.  
  2663. Call get_cursor_position "column",dde_output,dde_input 
  2664.  
  2665. Description 
  2666.  
  2667. The above will return the column that the cursor is in. To get the current row, 
  2668. you would issue this call with "row" instead of "column". The row value that is 
  2669. returned is relative to the top of the scroll back buffer. The top row of the 
  2670. scroll back buffer and the first column would be 0,0. 
  2671.  
  2672. Returns 
  2673.  
  2674. Cursor position. 
  2675.  
  2676.  
  2677. ΓòÉΓòÉΓòÉ 11.1.20. get_char_at ΓòÉΓòÉΓòÉ
  2678.  
  2679. get_char_at row,column,number,dde_output,dde_input 
  2680.  
  2681. Example 
  2682.  
  2683. Call get_char_at 0,0,80,dde_output,dde_input 
  2684.  
  2685. Description 
  2686.  
  2687. The above will return the characters at the first line of the scroll back 
  2688. buffer. It will return 80 characters, even if the characters are spaces. The 
  2689. maximum number of characters that can be returned at one time is 200. 
  2690.  
  2691. Returns 
  2692.  
  2693. Character(s) at the specified row and column. 
  2694.  
  2695.  
  2696. ΓòÉΓòÉΓòÉ 11.1.21. REXX capture_on ΓòÉΓòÉΓòÉ
  2697.  
  2698. capture_on filename,dde_output,dde_input 
  2699.  
  2700. Example 
  2701.  
  2702. Call capture_on "c:\pmcomm\cap.txt", dde_output, dde_input 
  2703.  
  2704. Description 
  2705.  
  2706. The above will turn capture on so that everything will be saved into a file. If 
  2707. you have strip ANSI configured in Pmcomm then the text only will be saved in 
  2708. ANSI, VT100, and VT220 terminal emulations. If the file already exists it will 
  2709. be overwritten. 
  2710.  
  2711. Returns 
  2712.  
  2713. 1 if successful and 0 if not. 
  2714.  
  2715.  
  2716. ΓòÉΓòÉΓòÉ 11.1.22. REXX capture_off ΓòÉΓòÉΓòÉ
  2717.  
  2718. capture_off dde_output,dde_input 
  2719.  
  2720. Example 
  2721.  
  2722. Call capture_off dde_output,dde_input 
  2723.  
  2724. Description 
  2725.  
  2726. The above will turn capture off. The capture may have been started from a 
  2727. script or from the menu. 
  2728.  
  2729. Returns 
  2730.  
  2731. 1 if successful and 0 if not. 
  2732.  
  2733.  
  2734. ΓòÉΓòÉΓòÉ 11.1.23. REXX change_option ΓòÉΓòÉΓòÉ
  2735.  
  2736. change_option "option",dde_output,dde_input 
  2737.  
  2738. This command will allow a script to change certain options in Pmcomm. The 
  2739. options that can be changed are: 
  2740.  
  2741. device. This option will allow you to change the current device that Pmcomm is 
  2742. using. For example to change the current device to COM2, the syntax would be: 
  2743. Call change_option "device=COM2",dde_output,dde_input 
  2744.  
  2745. hardware. This option will allow you to turn hardware flow control on or off. 
  2746. If you want to turn hardware flow control off the syntax would be: Call 
  2747. change_option "hardware=OFF",dde_output,dde_input To turn hardware flow control 
  2748. on you would replace the OFF with ON. 
  2749.  
  2750. XON/XOFF. This option will allow you to turn Xon/Xoff flow control on or off. 
  2751. If you want to turn Xon/Xoff flow control off the syntax would be: Call 
  2752. change_option "XON/XOFF=OFF",dde_output,dde_input 
  2753.  
  2754. To turn Xon/Xoff flow control on you would replace the OFF with ON. 
  2755.  
  2756. dtr. If this option is turned on the DTR will be lowered when hangup is 
  2757. selected. If you want to turn this option off the syntax would be: Call 
  2758. change_option "dtr=OFF",dde_output,dde_input 
  2759.  
  2760. stop bits. This option will allow you to set the number of stop bits that the 
  2761. communication port is set to. The communication port will be changed before the 
  2762. command is completed, and the default stop bits will be set to the new value. 
  2763. To set the communication port to 1 stop bit, the syntax would be: Call 
  2764. change_option "stop bits=1",dde_output,dde_input 
  2765.  
  2766. The communication port can only be set to 1 or 2 stop bits from a script. 
  2767.  
  2768. data bits. This option will allow you to set the number of data bits that the 
  2769. communication port is set to. The communication port will be changed before the 
  2770. command is completed, and the default data bits will be set to the new value. 
  2771. To set the communication port to 8 data bits, the syntax would be: Call 
  2772. change_option "data bits=8",dde_output,dde_input 
  2773.  
  2774. The communication port can be set to 8, 7, 6 or 5 data bits. 
  2775.  
  2776. parity. This option will allow you to set the parity for the current 
  2777. communication port. The communication port will be changed before the command 
  2778. is completed, and the default parity will be set to the new value. To set the 
  2779. communication port to Even parity, the syntax would be: Call change_option 
  2780. "parity=Even",dde_output,dde_input 
  2781.  
  2782. The communication port can be set to None, Even , Odd, Mark or Space parity. 
  2783.  
  2784. initialization string. This option allows you to change the modem 
  2785. initialization string that Pmcomm uses. To change the string the syntax would 
  2786. be: Call change_option "initialization string=ATZ",dde_output,dde_input 
  2787.  
  2788. dial timeout. This option will allow you to set the number of seconds that 
  2789. Pmcomm will wait when dialing a remote computer. If you wanted to set the 
  2790. number of seconds to 60 the syntax for the command would be: Call change_option 
  2791. "dial timeout=60",dde_output,dde_input 
  2792.  
  2793. redial delay. This option will allow you to set the number of seconds that 
  2794. Pmcomm will wait between dialing attempts. If you wanted to set the number of 
  2795. seconds to 6 the syntax for the command would be: Call change_option "redial 
  2796. delay=6",dde_output,dde_input 
  2797.  
  2798. hangup string. This option allows you to change the modem hangup string that 
  2799. Pmcomm uses. To change the string the syntax would be: Call change_option 
  2800. "hangup string=+++~~~ATH^M",dde_output,dde_input 
  2801.  
  2802. auto zmodem string. Some host systems do not send a standard auto zmodem 
  2803. string. This command allows you to change the string that Pmcomm looks for, 
  2804. when the host starts a zmodem send file transfer. When Pmcomm finds a match it 
  2805. will start a zmodem receive file transfer. To change the auto zmodem string the 
  2806. syntax would be: 
  2807.  
  2808. Call change_option "auto zmodem string=B00000",dde_output,dde_input 
  2809.  
  2810. zmodem date. This option allows you turn on and off whether Pmcomm will compare 
  2811. the file dates during a zmodem resume file transfer. The syntax to turn the 
  2812. date compare off would be: 
  2813.  
  2814. Call change_option "zmodem date=OFF",dde_output,dde_input To turn this option 
  2815. on you would replace the OFF with ON. 
  2816.  
  2817. zmodem rename. This option allows you turn on and off whether Pmcomm will 
  2818. rename duplicate files, if a resume fails (or is turned off). If this option is 
  2819. on Pmcomm will rename the new file with a number for an extension. The syntax 
  2820. to turn the zmodem rename off would be: 
  2821.  
  2822. Call change_option "zmodem rename=OFF",dde_output,dde_input To turn this option 
  2823. on you would replace the OFF with ON. 
  2824.  
  2825. auto zmodem. This option will allow you to turn the auto zmodem feature on or 
  2826. off. If you want to turn auto zmodem off the syntax would be: Call 
  2827. change_option "auto zmodem=OFF",dde_output,dde_input To turn auto zmodem on you 
  2828. would replace the OFF with ON. 
  2829.  
  2830. zmodem recovery. This option will allow you to turn the zmodem recovery feature 
  2831. on or off. If you want to turn zmodem recovery off the syntax would be: Call 
  2832. change_option "zmodem recovery=OFF",dde_output,dde_input To turn zmodem 
  2833. recovery on you would replace the OFF with ON. 
  2834.  
  2835. zmodem crc. This option allows you to select either the 32 bit or 16 bit zmodem 
  2836. CRC error detection option. To select the 32 bit option the syntax would be: 
  2837. Call change_option "zmodem crc=32",dde_output,dde_input 
  2838.  
  2839. download directory. To change the current download directory the syntax would 
  2840. be: Call change_option "download directory=c:\pmcomm\",dde_output,dde_input 
  2841.  
  2842. hide dial. This option allows you to select if the main terminal window is 
  2843. hidden while Pmcomm is dialing a remote computer. To allow the main window to 
  2844. remain visible while dialing the syntax would be: Call change_option "hide 
  2845. dial=OFF",dde_output,dde_input To turn hide dial on you would replace the OFF 
  2846. with ON. 
  2847.  
  2848. hide transfer. This option allows you to select if the main terminal window is 
  2849. hidden while Pmcomm is doing a file transfer. To allow the main window to 
  2850. remain visible while doing file transfers the syntax would be: Call 
  2851. change_option "hide transfer=OFF",dde_output,dde_input To turn hide transfer on 
  2852. you would replace the OFF with ON. 
  2853.  
  2854. auto vertical. This option determines if Pmcomm will automatically scroll the 
  2855. terminal window vertically to keep the current cursor position in the window. 
  2856. To turn this option off the syntax would be: Call change_option "auto 
  2857. vertical=OFF",dde_output,dde_input To turn this option on you would replace the 
  2858. OFF with ON. 
  2859.  
  2860. auto horizontal. This option determines if Pmcomm will automatically scroll the 
  2861. terminal window horizontally to keep the current cursor position in the window. 
  2862. To turn this option off the syntax would be: Call change_option "auto 
  2863. horizontal=OFF",dde_output,dde_input To turn this option on you would replace 
  2864. the OFF with ON. 
  2865.  
  2866. save dial. If this option is on then Pmcomm will store the position of the 
  2867. dialing dialog box, and use it the next time a number is dialed. To turn this 
  2868. option off the syntax would be: Call change_option("save 
  2869. dial=OFF",dde_output,dde_input To turn this option on you would replace the OFF 
  2870. with ON. 
  2871.  
  2872. save transfer. If this option is on then Pmcomm will store the position of the 
  2873. transfer dialog box, and use it the next time a file is transferred dialed. To 
  2874. turn this option off the syntax would be: Call change_option "save 
  2875. transfer=OFF",dde_output,dde_input To turn this option on you would replace the 
  2876. OFF with ON. 
  2877.  
  2878. sound. This option allows you to turn the warning beeps in Pmcomm, on or off. 
  2879. To turn this option off the syntax would be: Call change_option 
  2880. "sound=OFF",dde_output,dde_input To turn this option on you would replace the 
  2881. OFF with ON. 
  2882.  
  2883. monitor dcd. If this option is on, then Pmcomm will monitor the presence of 
  2884. data carrier detect (DCD). To turn this option off the syntax would be: Call 
  2885. change_option "monitor dcd=OFF",dde_output,dde_input To turn this option on you 
  2886. would replace the OFF with ON. 
  2887.  
  2888. page length. This option allows you to set the ANSI page length from a script. 
  2889. Following is an example of how to set the page length to 25 lines. Call 
  2890. change_option "page length=25",dde_output,dde_input 
  2891.  
  2892. terminal. This option allows you to change the type of terminal from within a 
  2893. Pmcomm script. The following example would set the terminal type to ANSI. Call 
  2894. change_option "terminal=ANSI",dde_output,dde_input The available valid terminal 
  2895. types are TTY, ANSI, VT100 or VT220. 
  2896.  
  2897. foreground. This option allows you to change the foreground color from within a 
  2898. Pmcomm script. The available colors are: 
  2899.  
  2900. black 
  2901. blue 
  2902. green 
  2903. cyan 
  2904. red 
  2905. magenta 
  2906. brown 
  2907. white 
  2908. dark grey 
  2909. light blue 
  2910. light green 
  2911. light cyan 
  2912. light red 
  2913. pink 
  2914. yellow 
  2915. bright white 
  2916.  
  2917. The syntax to change the foreground color to cyan would be: Call change_option 
  2918. "foreground=cyan",dde_output,dde_input 
  2919.  
  2920. background. This option allows you to change the background color from within a 
  2921. Pmcomm script. The available colors are: 
  2922.  
  2923. black 
  2924. blue 
  2925. green 
  2926. cyan 
  2927. red 
  2928. magenta 
  2929. brown 
  2930. white 
  2931. dark grey 
  2932. light blue 
  2933. light green 
  2934. light cyan 
  2935. light red 
  2936. pink 
  2937. yellow 
  2938. bright white 
  2939.  
  2940. The syntax to change the background color to black would be: Call change_option 
  2941. "background=black",dde_output,dde_input 
  2942.  
  2943. echo. This option allows you turn on and off the local keystroke echo. The 
  2944. syntax to turn echo off would be: Call change_option 
  2945. "echo=OFF",dde_output,dde_input To turn this option on you would replace the 
  2946. OFF with ON. 
  2947.  
  2948. prefix1 
  2949. prefix2 
  2950. prefix3 
  2951.  
  2952.  These options allow you to change the dialing prefixes. For example to change 
  2953. prefix1 you would use the following syntax: Call change_option 
  2954. "prefix1=ATDT",dde_output,dde_input 
  2955.  
  2956. suffix1 
  2957. suffix2 
  2958. suffix3 
  2959.  
  2960.  These options allow you to change the dialing suffixes. For example to change 
  2961. suffix1 you would use the following syntax: Call change_option 
  2962. "suffix1=^M",dde_output,dde_input 
  2963.  
  2964. strip ansi. This option allows you to select if Pmcomm will strip the ANSI 
  2965. commands from a capture file. The syntax to turn off the stripping of the ANSI 
  2966. commands would be: Call change_option "strip ansi=OFF",dde_output,dde_input To 
  2967. turn this option on you would replace the OFF with ON. 
  2968.  
  2969. macro1 
  2970. macro2 
  2971. macro3 
  2972. macro4 
  2973. macro5 
  2974. macro6 
  2975. macro7 
  2976. macro8 
  2977. macro9 
  2978. macro10 
  2979.  
  2980. These options allow you to change the keyboard macros. For example to change 
  2981. macro1 you would use the following syntax: Call change_option 
  2982. "macro1=ATZ",dde_output,dde_input 
  2983.  
  2984. phone directory. 
  2985.  
  2986. phone directory. To change the current phone directory the syntax would be: 
  2987. Call change_option "phone directory=c:\pmcomm\pmcomm.fon",dde_output,dde_input 
  2988. This would change the file used as the Pmcomm phone file. 
  2989.  
  2990. script directory. To change the current script directory the syntax would be: 
  2991. Call change_option "script directory=c:\pmcomm\script",dde_output,dde_input 
  2992.  
  2993. capture directory. To change the current capture file directory the syntax 
  2994. would be: Call change_option "capture 
  2995. directory=c:\pmcomm\capture",dde_output,dde_input 
  2996.  
  2997. chat. This option allows you to turn the Pmcomm chat mode on or off. The syntax 
  2998. to turn off chat mode is: Call change_option "chat=OFF",dde_output,dde_input To 
  2999. turn this option on you would replace the OFF with ON. 
  3000.  
  3001. auto cisb. This option allows you to turn the automatic CISB file transfer on 
  3002. or off. The syntax to turn off auto CISB is: Call change_option "auto 
  3003. cisb=OFF",dde_output,dde_input To turn this option on you would replace the OFF 
  3004. with ON. 
  3005.  
  3006. cisb recovery. This option allows you to turn the CISB file recovery on or off. 
  3007. The syntax to turn off the CISB file recovery is: Call change_option "cisb 
  3008. recovery=OFF",dde_output,dde_input To turn this option on you would replace the 
  3009. OFF with ON. 
  3010.  
  3011. baud. This option allows you to change the current baud rate. This will also 
  3012. change the default baud rate saved in the setup file. The syntax for this 
  3013. command is: Call change_option "baud=19200",dde_output,dde_input 
  3014.  
  3015. startup script. Use this command to change the name of the script that will be 
  3016. executed upon startup of Pmcomm. The syntax of this command is: 
  3017. change_option("startup script=c:\pmcomm\startup.scr"); 
  3018.  
  3019. exit on hangup. This command allows you to have Pmcomm exit once data carrier 
  3020. detect (DCD) has dropped. This will only work correctly if Monitor DCD is also 
  3021. selected. The syntax for this command is: Call change_option "exit on 
  3022. hangup=ON",dde_output,dde_input 
  3023.  
  3024. working directory. To change the current working directory the syntax would be: 
  3025. Call change_option "working directory=c:\pmcomm",dde_output,dde_input 
  3026.  
  3027. scroll size. This command allows you to change the size of the Extended Scroll 
  3028. Back buffer. To change the scroll size the syntax would be: 
  3029.  
  3030. Call change_option "scroll size=65535",dde_output,dde_input 
  3031.  
  3032. keymap. The keymap must be in the working directory of Pmcomm. To change the 
  3033. keymap currently in use the syntax would be : Call change_option 
  3034. "keymap=ansi.map",dde_output,dde_input 
  3035.  
  3036.  
  3037. ΓòÉΓòÉΓòÉ 11.1.24. REXX dial ΓòÉΓòÉΓòÉ
  3038.  
  3039. dial "name",dde_output,dde_input 
  3040.  
  3041. This command will allow a script to dial a number listed in the current Pmcomm 
  3042. dialing directory. To dial the entry call Compu-Plane you would use the 
  3043. following syntax: Call dial "Compu-Plane",dde_output,dde_input 
  3044.  
  3045. This command returns the baud rate of the connection or a 0 if there was no 
  3046. connection. One way that a zero could be returned is if the cancel button on 
  3047. the dialing dialog was pushed. If the REXX dial command returns a 0 you can use 
  3048. the REXX exit function to cancel the script. 
  3049.  
  3050.  
  3051. ΓòÉΓòÉΓòÉ 11.1.25. REXX get_dial_memo ΓòÉΓòÉΓòÉ
  3052.  
  3053. get_dial_memo dde_output,dde_input 
  3054.  
  3055. This command will retrieve the information stored in the memo field of the 
  3056. currently connected phone number. This will allow you to, for example, store 
  3057. your password in the dialing directory memo field, and write a script to use 
  3058. it. By doing this you can change your password without editing the script. All 
  3059. you would have to do is change the text in the memo field for that number. To 
  3060. retrieve the text stored in the current memo field the syntax would be: Call 
  3061. get_dial_memo dde_output,dde_input 
  3062.  
  3063.  
  3064. ΓòÉΓòÉΓòÉ 11.1.26. REXX clipboard_paste ΓòÉΓòÉΓòÉ
  3065.  
  3066. clipboard_paste dde_output,dde_input 
  3067.  
  3068. This command will retrieve text stored in the OS/2 clipboard. The maximum 
  3069. amount of text that can be retrieved at one time is 8192 bytes. To retrieve the 
  3070. text stored in the clipboard the syntax would be: Call clipboard_paste 
  3071. dde_output,dde_input 
  3072.  
  3073.  
  3074. ΓòÉΓòÉΓòÉ 11.1.27. REXX clipboard_copy ΓòÉΓòÉΓòÉ
  3075.  
  3076. clipboard_copy dde_output,dde_input 
  3077.  
  3078. This command will copy text to the OS/2 clipboard. The maximum amount of text 
  3079. that can be sent at one time is 8192 bytes. To send text to the clipboard the 
  3080. syntax would be: Call clipboard_copy "This is a test", dde_output,dde_input 
  3081.  
  3082.  
  3083. ΓòÉΓòÉΓòÉ 11.1.28. REXX clipboard_append ΓòÉΓòÉΓòÉ
  3084.  
  3085. clipboard_append dde_output,dde_input 
  3086.  
  3087. This command will append text to the existing text in the OS/2 clipboard. The 
  3088. maximum amount of text that can be sent at one time is 8192 bytes. To append 
  3089. text to the clipboard the syntax would be: Call clipboard_append "This is a 
  3090. test", dde_output,dde_input 
  3091.  
  3092.  
  3093. ΓòÉΓòÉΓòÉ 11.1.29. xmodem_send ΓòÉΓòÉΓòÉ
  3094.  
  3095. xmodem_send filename,dde_output,dde_input 
  3096.  
  3097. Example 
  3098.  
  3099. Call xmodem_send "filename.ext",dde_output,dde_input 
  3100.  
  3101. Description 
  3102.  
  3103. This call will invoke the Xmodem_CRC send routine, built into Pmcomm. Once 
  3104. issued the call will not return until the transfer either finishes or is 
  3105. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3106. uploading from the menu. 
  3107.  
  3108. Returns 
  3109.  
  3110. 1 if call is successful and 0 if unsuccessful. 
  3111.  
  3112.  
  3113. ΓòÉΓòÉΓòÉ 11.1.30. xmodem_receive ΓòÉΓòÉΓòÉ
  3114.  
  3115. xmodem_receive filename,dde_output,dde_input 
  3116.  
  3117. Example 
  3118.  
  3119. Call xmodem_receive "filename.ext",dde_output,dde_input 
  3120.  
  3121. Description 
  3122.  
  3123. This call will invoke the Xmodem_CRC receive routine, built into Pmcomm. Once 
  3124. issued the call will not return until the transfer either finishes or is 
  3125. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3126. downloading from the menu. The file will be downloaded into the download 
  3127. directory. The file name specified must not include a path. 
  3128.  
  3129. Returns 
  3130.  
  3131. 1 if call is successful and 0 if unsuccessful. 
  3132.  
  3133.  
  3134. ΓòÉΓòÉΓòÉ 11.1.31. xmodem_chk_send ΓòÉΓòÉΓòÉ
  3135.  
  3136. xmodem_chk_send filename,dde_output,dde_input 
  3137.  
  3138. Example 
  3139.  
  3140. Call xmodem_chk_send "filename.ext",dde_output,dde_input 
  3141.  
  3142. Description 
  3143.  
  3144. This call will invoke the Xmodem_Checksum send routine, built into Pmcomm. Once 
  3145. issued the call will not return until the transfer either finishes or is 
  3146. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3147. uploading from the menu. 
  3148.  
  3149. Returns 
  3150.  
  3151. 1 if call is successful and 0 if unsuccessful. 
  3152.  
  3153.  
  3154. ΓòÉΓòÉΓòÉ 11.1.32. xmodem_chk_receive ΓòÉΓòÉΓòÉ
  3155.  
  3156. xmodem_chk_receive filename,dde_output,dde_input 
  3157.  
  3158. Example 
  3159.  
  3160. Call xmodem_receive "filename.ext",dde_output,dde_input 
  3161.  
  3162. Description 
  3163.  
  3164. This call will invoke the Xmodem_Checksum receive routine, built into Pmcomm. 
  3165. Once issued the call will not return until the transfer either finishes or is 
  3166. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3167. downloading from the menu. The file will be downloaded into the download 
  3168. directory. The file name specified must not include a path. 
  3169.  
  3170. Returns 
  3171.  
  3172. 1 if call is successful and 0 if unsuccessful. 
  3173.  
  3174.  
  3175. ΓòÉΓòÉΓòÉ 11.1.33. xmodem_1k_send ΓòÉΓòÉΓòÉ
  3176.  
  3177. xmodem_1k_send filename,dde_output,dde_input 
  3178.  
  3179. Example 
  3180.  
  3181. Call xmodem_1k_send "filename.ext",dde_output,dde_input 
  3182.  
  3183. Description 
  3184.  
  3185. This call will invoke the 1K-Xmodem send routine, built into Pmcomm. Once 
  3186. issued the call will not return until the transfer either finishes or is 
  3187. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3188. uploading from the menu. 
  3189.  
  3190. Returns 
  3191.  
  3192. 1 if call is successful and 0 if unsuccessful. 
  3193.  
  3194.  
  3195. ΓòÉΓòÉΓòÉ 11.1.34. xmodem_1k_receive ΓòÉΓòÉΓòÉ
  3196.  
  3197. xmodem_1k_receive filename,dde_output,dde_input 
  3198.  
  3199. Example 
  3200.  
  3201. Call xmodem_1k_receive "filename.ext",dde_output,dde_input 
  3202.  
  3203. Description 
  3204.  
  3205. This call will invoke the 1K-Xmodem receive routine, built into Pmcomm. Once 
  3206. issued the call will not return until the transfer either finishes or is 
  3207. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3208. downloading from the menu. The file will be downloaded into the download 
  3209. directory. The file name specified must not include a path. 
  3210.  
  3211. Returns 
  3212.  
  3213. 1 if call is successful and 0 if unsuccessful. 
  3214.  
  3215.  
  3216. ΓòÉΓòÉΓòÉ 11.1.35. ymodem_send ΓòÉΓòÉΓòÉ
  3217.  
  3218. ymodem_send filename,dde_output,dde_input 
  3219.  
  3220. Example 
  3221.  
  3222. Call ymodem_send "filename.ext",dde_output,dde_input 
  3223.  
  3224. Description 
  3225.  
  3226. This call will invoke the Ymodem send routine, built into Pmcomm. Once issued 
  3227. the call will not return until the transfer either finishes or is aborted. 
  3228. Pmcomm will show the normal transfer dialog that it does when uploading from 
  3229. the menu. You may send multiple files by specifying more than file name. 
  3230.  
  3231. Returns 
  3232.  
  3233. Number of files transferred. 
  3234.  
  3235.  
  3236. ΓòÉΓòÉΓòÉ 11.1.36. ymodem_receive ΓòÉΓòÉΓòÉ
  3237.  
  3238. ymodem_receive dde_output,dde_input 
  3239.  
  3240. Example 
  3241.  
  3242. Call ymodem_receive dde_output,dde_input 
  3243.  
  3244. Description 
  3245.  
  3246. This call will invoke the Ymodem receive routine, built into Pmcomm. Once 
  3247. issued the call will not return until the transfer either finishes or is 
  3248. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3249. downloading from the menu. The file will be downloaded into the download 
  3250. directory. This one call will receive multiple files. The filenames used are 
  3251. the ones sent from the remote computer. 
  3252.  
  3253. Returns 
  3254.  
  3255. Number of files transferred. 
  3256.  
  3257.  
  3258. ΓòÉΓòÉΓòÉ 11.1.37. ymodemg_send ΓòÉΓòÉΓòÉ
  3259.  
  3260. ymodemg_send filename,dde_output,dde_input 
  3261.  
  3262. Example 
  3263.  
  3264. Call ymodemg_send "filename.ext",dde_output,dde_input 
  3265.  
  3266. Description 
  3267.  
  3268. This call will invoke the Ymodem-g send routine, built into Pmcomm. Once issued 
  3269. the call will not return until the transfer either finishes or is aborted. 
  3270. Pmcomm will show the normal transfer dialog that it does when uploading from 
  3271. the menu. You may send multiple files by specifying more than file name. 
  3272.  
  3273. Returns 
  3274.  
  3275. Number of files transferred. 
  3276.  
  3277.  
  3278. ΓòÉΓòÉΓòÉ 11.1.38. ymodemg_receive ΓòÉΓòÉΓòÉ
  3279.  
  3280. ymodemg_receive dde_output,dde_input 
  3281.  
  3282. Example 
  3283.  
  3284. Call ymodemg_receive dde_output,dde_input 
  3285.  
  3286. Description 
  3287.  
  3288. This call will invoke the Ymodem-g receive routine, built into Pmcomm. Once 
  3289. issued the call will not return until the transfer either finishes or is 
  3290. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3291. downloading from the menu. The file will be downloaded into the download 
  3292. directory. This one call will receive multiple files. The filenames used are 
  3293. the ones sent from the remote computer. 
  3294.  
  3295. Returns 
  3296.  
  3297. Number of files transferred. 
  3298.  
  3299.  
  3300. ΓòÉΓòÉΓòÉ 11.1.39. zmodem_send ΓòÉΓòÉΓòÉ
  3301.  
  3302. zmodem_send filename,dde_output,dde_input 
  3303.  
  3304. Example 
  3305.  
  3306. Call zmodem_send "filename.ext",dde_output,dde_input 
  3307.  
  3308. Description 
  3309.  
  3310. This call will invoke the Zmodem send routine, built into Pmcomm. Once issued 
  3311. the call will not return until the transfer either finishes or is aborted. 
  3312. Pmcomm will show the normal transfer dialog that it does when uploading from 
  3313. the menu. You may send multiple files by specifying more than file name. 
  3314.  
  3315. Returns 
  3316.  
  3317. Number of files transferred. 
  3318.  
  3319.  
  3320. ΓòÉΓòÉΓòÉ 11.1.40. zmodem_receive ΓòÉΓòÉΓòÉ
  3321.  
  3322. zmodem_receive dde_output,dde_input 
  3323.  
  3324. Example 
  3325.  
  3326. Call zmodem_receive dde_output,dde_input 
  3327.  
  3328. Description 
  3329.  
  3330. This call will invoke the Zmodem receive routine, built into Pmcomm. Once 
  3331. issued the call will not return until the transfer either finishes or is 
  3332. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3333. downloading from the menu. The file will be downloaded into the download 
  3334. directory. This one call will receive multiple files. The filenames used are 
  3335. the ones sent from the remote computer. 
  3336.  
  3337. Returns 
  3338.  
  3339. Number of files transferred. 
  3340.  
  3341.  
  3342. ΓòÉΓòÉΓòÉ 11.1.41. kermit_send ΓòÉΓòÉΓòÉ
  3343.  
  3344. kermit_send filename,dde_output,dde_input 
  3345.  
  3346. Example 
  3347.  
  3348. Call kermit_send "filename.ext",dde_output,dde_input 
  3349.  
  3350. Description 
  3351.  
  3352. This call will invoke the Kermit send routine, built into Pmcomm. Once issued 
  3353. the call will not return until the transfer either finishes or is aborted. 
  3354. Pmcomm will show the normal transfer dialog that it does when uploading from 
  3355. the menu. You may send multiple files by specifying more than file name. 
  3356.  
  3357. Returns 
  3358.  
  3359. Number of files transferred. 
  3360.  
  3361.  
  3362. ΓòÉΓòÉΓòÉ 11.1.42. kermit_receive ΓòÉΓòÉΓòÉ
  3363.  
  3364. kermit_receive dde_output,dde_input 
  3365.  
  3366. Example 
  3367.  
  3368. Call kermit_receive dde_output,dde_input 
  3369.  
  3370. Description 
  3371.  
  3372. This call will invoke the Kermit receive routine, built into Pmcomm. Once 
  3373. issued the call will not return until the transfer either finishes or is 
  3374. aborted. Pmcomm will show the normal transfer dialog that it does when 
  3375. downloading from the menu. The file will be downloaded into the download 
  3376. directory. This one call will receive multiple files. The filenames used are 
  3377. the ones sent from the remote computer. 
  3378.  
  3379. Returns 
  3380.  
  3381. Number of files transferred. 
  3382.  
  3383.  
  3384. ΓòÉΓòÉΓòÉ 11.1.43. ascii_send ΓòÉΓòÉΓòÉ
  3385.  
  3386. ascii_send filename,dde_output,dde_input 
  3387.  
  3388. Example 
  3389.  
  3390. Call ascii_send "filename.ext",dde_output,dde_input 
  3391.  
  3392. Description 
  3393.  
  3394. This call will invoke the ASCII send routine, built into Pmcomm. Once issued 
  3395. the call will not return until the transfer either finishes or is aborted. 
  3396. Pmcomm will show the normal transfer dialog that it does when uploading from 
  3397. the menu. 
  3398.  
  3399. Returns 
  3400.  
  3401. 1 if call is successful and 0 if unsuccessful. 
  3402.  
  3403.  
  3404. ΓòÉΓòÉΓòÉ 11.1.44. ascii_receive ΓòÉΓòÉΓòÉ
  3405.  
  3406. ascii_receive filename,dde_output,dde_input 
  3407.  
  3408. Example 
  3409.  
  3410. Call ascii_receive "filename.ext",dde_output,dde_input 
  3411.  
  3412. Description 
  3413.  
  3414. This call will invoke the ASCII receive routine, built into Pmcomm. Once issued 
  3415. the call will not return until the transfer either finishes or is aborted. 
  3416. Pmcomm will show the normal transfer dialog that it does when downloading from 
  3417. the menu. The file will be downloaded into the download directory. The file 
  3418. name specified must not include a path. 
  3419.  
  3420. Returns 
  3421.  
  3422. 1 if call is successful and 0 if unsuccessful. 
  3423.  
  3424.  
  3425. ΓòÉΓòÉΓòÉ 11.1.45. cisb_send ΓòÉΓòÉΓòÉ
  3426.  
  3427. cisb_send filename,dde_output,dde_input 
  3428.  
  3429. Example 
  3430.  
  3431. Call cisb_send "filename.ext",dde_output,dde_input 
  3432.  
  3433. Description 
  3434.  
  3435. This call will invoke the CISB send routine, built into Pmcomm. Once issued the 
  3436. call will not return until the transfer either finishes or is aborted. Pmcomm 
  3437. will show the normal transfer dialog that it does when uploading from the menu. 
  3438.  
  3439. Returns 
  3440.  
  3441. 1 if call is successful and 0 if unsuccessful. 
  3442.  
  3443.  
  3444. ΓòÉΓòÉΓòÉ 11.1.46. cisb_receive ΓòÉΓòÉΓòÉ
  3445.  
  3446. cisb_receive filename,dde_output,dde_input 
  3447.  
  3448. Example 
  3449.  
  3450. Call cisb_receive "filename.ext",dde_output,dde_input 
  3451.  
  3452. Description 
  3453.  
  3454. This call will invoke the CISB receive routine, built into Pmcomm. Once issued 
  3455. the call will not return until the transfer either finishes or is aborted. 
  3456. Pmcomm will show the normal transfer dialog that it does when downloading from 
  3457. the menu. The file will be downloaded into the download directory. The file 
  3458. name specified must not include a path. 
  3459.  
  3460. Returns 
  3461.  
  3462. 1 if call is successful and 0 if unsuccessful. 
  3463.  
  3464.  
  3465. ΓòÉΓòÉΓòÉ 11.2. Internal Functions ΓòÉΓòÉΓòÉ
  3466.  
  3467. These are script functions that are built into Pmcomm. 
  3468.  
  3469.  
  3470. ΓòÉΓòÉΓòÉ 11.2.1. wait_for (internal) ΓòÉΓòÉΓòÉ
  3471.  
  3472. wait_for("string"); 
  3473.  
  3474. This will wait until the word 'string' is received. One use of this is when 
  3475. logging onto a BBS you can have it wait until prompted for a first name. 
  3476.  
  3477.  
  3478. ΓòÉΓòÉΓòÉ 11.2.2. puts ΓòÉΓòÉΓòÉ
  3479.  
  3480. puts("string"); 
  3481.  
  3482. This will send string to the communication port. The 'C' language special 
  3483. character '\r','\n','\b',and '\a' can also be used. 
  3484.  
  3485. The \r means carriage return. 
  3486.  
  3487. The \n means carriage return and line feed combination. 
  3488.  
  3489. The \b means backspace. 
  3490.  
  3491. The \a means alert (Pmcomm will beep). 
  3492.  
  3493.  
  3494. ΓòÉΓòÉΓòÉ 11.2.3. sleep (internal) ΓòÉΓòÉΓòÉ
  3495.  
  3496. sleep(1000); 
  3497.  
  3498. This will wait for the number of milliseconds specified. In this example it 
  3499. would sleep for one second. 
  3500.  
  3501.  
  3502. ΓòÉΓòÉΓòÉ 11.2.4. call ΓòÉΓòÉΓòÉ
  3503.  
  3504. call("filename"); 
  3505.  
  3506. This allows you to nest scripts. If you put the name of the script that you 
  3507. want to execute where it says filename, it will execute that script and then 
  3508. continue. The limit on number of nested scripts is only by available stack 
  3509. space. 
  3510.  
  3511.  
  3512. ΓòÉΓòÉΓòÉ 11.2.5. capture_on ΓòÉΓòÉΓòÉ
  3513.  
  3514. capture_on("filename"); 
  3515.  
  3516. Captures all screen output to a file. Replace filename with the name of the 
  3517. file you want the output written to. The capture file will be automatically 
  3518. closed when you log off, if you have Monitor_DCD selected. 
  3519.  
  3520.  
  3521. ΓòÉΓòÉΓòÉ 11.2.6. capture_off ΓòÉΓòÉΓòÉ
  3522.  
  3523. capture_off(); 
  3524.  
  3525. Stops screen capture and closes the capture file. You can also close the 
  3526. capture file from the menu. 
  3527.  
  3528.  
  3529. ΓòÉΓòÉΓòÉ 11.2.7. change_option ΓòÉΓòÉΓòÉ
  3530.  
  3531. change_option("option"); 
  3532.  
  3533. This command will allow a script to change certain options in Pmcomm. The 
  3534. options that can be changed are: 
  3535.  
  3536. device. This option will allow you to change the current device that Pmcomm is 
  3537. using. For example to change the current device to COM2, the syntax would be: 
  3538. change_option("device=COM2"); 
  3539.  
  3540. hardware. This option will allow you to turn hardware flow control on or off. 
  3541. If you want to turn hardware flow control off the syntax would be: 
  3542. change_option("hardware=OFF"); To turn hardware flow control on you would 
  3543. replace the OFF with ON. 
  3544.  
  3545. XON/XOFF. This option will allow you to turn Xon/Xoff flow control on or off. 
  3546. If you want to turn Xon/Xoff flow control off the syntax would be: 
  3547. change_option("XON/XOFF=OFF"); To turn Xon/Xoff flow control on you would 
  3548. replace the OFF with ON. 
  3549.  
  3550. dtr. If this option is turned on the DTR will be lowered when hangup is 
  3551. selected. If you want to turn this option off the syntax would be: 
  3552. change_option("dtr=OFF"); 
  3553.  
  3554. stop bits. This option will allow you to set the number of stop bits that the 
  3555. communication port is set to. The communication port will be changed before the 
  3556. command is completed, and the default stop bits will be set to the new value. 
  3557. To set the communication port to 1 stop bit, the syntax would be: 
  3558. change_option("stop bits=1"); The communication port can only be set to 1 or 2 
  3559. stop bits from a script. 
  3560.  
  3561. data bits. This option will allow you to set the number of data bits that the 
  3562. communication port is set to. The communication port will be changed before the 
  3563. command is completed, and the default data bits will be set to the new value. 
  3564. To set the communication port to 8 data bits, the syntax would be: 
  3565. change_option("data bits=8"); The communication port can be set to 8, 7, 6 or 5 
  3566. data bits. 
  3567.  
  3568. parity. This option will allow you to set the parity for the current 
  3569. communication port. The communication port will be changed before the command 
  3570. is completed, and the default parity will be set to the new value. To set the 
  3571. communication port to Even parity, the syntax would be: 
  3572. change_option("parity=Even"); The communication port can be set to None, Even , 
  3573. Odd, Mark or Space parity. 
  3574.  
  3575. initialization string. This option allows you to change the modem 
  3576. initialization string that Pmcomm uses. To change the string the syntax would 
  3577. be: change_option("initialization string=ATZ"); 
  3578.  
  3579. dial timeout. This option will allow you to set the number of seconds that 
  3580. Pmcomm will wait when dialing a remote computer. If you wanted to set the 
  3581. number of seconds to 60 the syntax for the command would be: 
  3582. change_option("dial timeout=60"); 
  3583.  
  3584. redial delay. This option will allow you to set the number of seconds that 
  3585. Pmcomm will wait between dialing attempts. If you wanted to set the number of 
  3586. seconds to 6 the syntax for the command would be: change_option("redial 
  3587. delay=6"); 
  3588.  
  3589. hangup string. This option allows you to change the modem hangup string that 
  3590. Pmcomm uses. To change the string the syntax would be: change_option("hangup 
  3591. string=+++~~~ATH^M"); 
  3592.  
  3593. auto zmodem string. Some host systems do not send a standard auto zmodem 
  3594. string. This command allows you to change the string that Pmcomm looks for, 
  3595. when the host starts a zmodem send file transfer. When Pmcomm finds a match it 
  3596. will start a zmodem receive file transfer. To change the auto zmodem string the 
  3597. syntax would be: 
  3598.  
  3599. change_option("auto zmodem string=B00000"); 
  3600.  
  3601. zmodem date. This option allows you turn on and off whether Pmcomm will compare 
  3602. the file dates during a zmodem resume file transfer. The syntax to turn the 
  3603. date compare off would be: 
  3604.  
  3605. change_option("zmodem date=OFF"); To turn this option on you would replace the 
  3606. OFF with ON. 
  3607.  
  3608. zmodem rename. This option allows you turn on and off whether Pmcomm will 
  3609. rename duplicate files, if a resume fails (or is turned off). If this option is 
  3610. on Pmcomm will rename the new file with a number for an extension. The syntax 
  3611. to turn the zmodem rename off would be: 
  3612.  
  3613. change_option("zmodem rename=OFF"); To turn this option on you would replace 
  3614. the OFF with ON. 
  3615.  
  3616. auto zmodem. This option will allow you to turn the auto zmodem feature on or 
  3617. off. If you want to turn auto zmodem off the syntax would be: 
  3618. change_option("auto zmodem=OFF"); To turn auto zmodem on you would replace the 
  3619. OFF with ON. 
  3620.  
  3621. zmodem recovery. This option will allow you to turn the zmodem recovery feature 
  3622. on or off. If you want to turn zmodem recovery off the syntax would be: 
  3623. change_option("zmodem recovery=OFF"); To turn zmodem recovery on you would 
  3624. replace the OFF with ON. 
  3625.  
  3626. zmodem crc. This option allows you to select either the 32 bit or 16 bit zmodem 
  3627. CRC error detection option. To select the 32 bit option the syntax would be: 
  3628. change_option("zmodem crc=32"); 
  3629.  
  3630. download directory. To change the current download directory the syntax would 
  3631. be: change_option("download directory=c:\pmcomm\"); 
  3632.  
  3633. hide dial. This option allows you to select if the main terminal window is 
  3634. hidden while Pmcomm is dialing a remote computer. To allow the main window to 
  3635. remain visible while dialing the syntax would be: change_option("hide 
  3636. dial=OFF"); To turn hide dial on you would replace the OFF with ON. 
  3637.  
  3638. hide transfer. This option allows you to select if the main terminal window is 
  3639. hidden while Pmcomm is doing a file transfer. To allow the main window to 
  3640. remain visible while doing file transfers the syntax would be: 
  3641. change_option("hide transfer=OFF"); To turn hide transfer on you would replace 
  3642. the OFF with ON. 
  3643.  
  3644. auto vertical. This option determines if Pmcomm will automatically scroll the 
  3645. terminal window vertically to keep the current cursor position in the window. 
  3646. To turn this option off the syntax would be: change_option("auto 
  3647. vertical=OFF"); To turn this option on you would replace the OFF with ON. 
  3648.  
  3649. auto horizontal. This option determines if Pmcomm will automatically scroll the 
  3650. terminal window horizontally to keep the current cursor position in the window. 
  3651. To turn this option off the syntax would be: change_option("auto 
  3652. horizontal=OFF"); To turn this option on you would replace the OFF with ON. 
  3653.  
  3654. save dial. If this option is on then Pmcomm will store the position of the 
  3655. dialing dialog box, and use it the next time a number is dialed. To turn this 
  3656. option off the syntax would be: change_option("save dial=OFF"); To turn this 
  3657. option on you would replace the OFF with ON. 
  3658.  
  3659. save transfer. If this option is on then Pmcomm will store the position of the 
  3660. transfer dialog box, and use it the next time a file is transferred dialed. To 
  3661. turn this option off the syntax would be: change_option("save transfer=OFF"); 
  3662. To turn this option on you would replace the OFF with ON. 
  3663.  
  3664. sound. This option allows you to turn the warning beeps in Pmcomm, on or off. 
  3665. To turn this option off the syntax would be: change_option("sound=OFF"); To 
  3666. turn this option on you would replace the OFF with ON. 
  3667.  
  3668. monitor dcd. If this option is on, then Pmcomm will monitor the presence of 
  3669. data carrier detect (DCD). To turn this option off the syntax would be: 
  3670. change_option("monitor dcd=OFF"); To turn this option on you would replace the 
  3671. OFF with ON. 
  3672.  
  3673. page length. This option allows you to set the ANSI page length from a script. 
  3674. Following is an example of how to set the page length to 25 lines. 
  3675. change_option("page length=25"); 
  3676.  
  3677. terminal. This option allows you to change the type of terminal from within a 
  3678. Pmcomm script. The following example would set the terminal type to ANSI. 
  3679. change_option("terminal=ANSI"); The available valid terminal types are TTY, 
  3680. ANSI, VT100 or VT220. 
  3681.  
  3682. foreground. This option allows you to change the foreground color from within a 
  3683. Pmcomm script. The available colors are: 
  3684.  
  3685. black 
  3686. blue 
  3687. green 
  3688. cyan 
  3689. red 
  3690. magenta 
  3691. brown 
  3692. white 
  3693. dark grey 
  3694. light blue 
  3695. light green 
  3696. light cyan 
  3697. light red 
  3698. pink 
  3699. yellow 
  3700. bright white 
  3701.  
  3702. The syntax to change the foreground color to cyan would be: 
  3703. change_option("foreground=cyan"); 
  3704.  
  3705. background. This option allows you to change the background color from within a 
  3706. Pmcomm script. The available colors are: 
  3707.  
  3708. black 
  3709. blue 
  3710. green 
  3711. cyan 
  3712. red 
  3713. magenta 
  3714. brown 
  3715. white 
  3716. dark grey 
  3717. light blue 
  3718. light green 
  3719. light cyan 
  3720. light red 
  3721. pink 
  3722. yellow 
  3723. bright white 
  3724.  
  3725. The syntax to change the background color to black would be: 
  3726. change_option("background=black"); 
  3727.  
  3728. echo. This option allows you turn on and off the local keystroke echo. The 
  3729. syntax to turn echo off would be: change_option("echo=OFF"); To turn this 
  3730. option on you would replace the OFF with ON. 
  3731.  
  3732. prefix1 
  3733. prefix2 
  3734. prefix3 
  3735.  
  3736.  These options allow you to change the dialing prefixes. For example to change 
  3737. prefix1 you would use the following syntax: change_option("prefix1=ATDT"); 
  3738.  
  3739. suffix1 
  3740. suffix2 
  3741. suffix3 
  3742.  
  3743.  These options allow you to change the dialing suffixes. For example to change 
  3744. suffix1 you would use the following syntax: change_option("suffix1=^M"); 
  3745.  
  3746. strip ansi. This option allows you to select if Pmcomm will strip the ANSI 
  3747. commands from a capture file. The syntax to turn off the stripping of the ANSI 
  3748. commands would be: change_option("strip ansi=OFF"); To turn this option on you 
  3749. would replace the OFF with ON. 
  3750.  
  3751. macro1 
  3752. macro2 
  3753. macro3 
  3754. macro4 
  3755. macro5 
  3756. macro6 
  3757. macro7 
  3758. macro8 
  3759. macro9 
  3760. macro10 
  3761.  
  3762. These options allow you to change the keyboard macros. For example to change 
  3763. macro1 you would use the following syntax: change_option("macro1=ATZ"); 
  3764.  
  3765. phone directory. To change the current phone directory the syntax would be: 
  3766. change_option("phone directory=c:\pmcomm\pmcomm.fon"); This would change the 
  3767. file used as the Pmcomm phone file. 
  3768.  
  3769. script directory. To change the current script directory the syntax would be: 
  3770. change_option("script directory=c:\pmcomm\script"); 
  3771.  
  3772. capture directory. To change the current capture file directory the syntax 
  3773. would be: change_option("capture directory=c:\pmcomm\capture"); 
  3774.  
  3775. chat. This option allows you to turn the Pmcomm chat mode on or off. The syntax 
  3776. to turn off chat mode is: change_option("chat=OFF"); To turn this option on you 
  3777. would replace the OFF with ON. 
  3778.  
  3779. auto cisb. This option allows you to turn the automatic CISB file transfer on 
  3780. or off. The syntax to turn off auto CISB is: change_option("auto cisb=OFF"); To 
  3781. turn this option on you would replace the OFF with ON. 
  3782.  
  3783. cisb recovery. This option allows you to turn the CISB file recovery on or off. 
  3784. The syntax to turn off the CISB file recovery is: change_option("cisb 
  3785. recovery=OFF"); To turn this option on you would replace the OFF with ON. 
  3786.  
  3787. baud. This option allows you to change the current baud rate. This will also 
  3788. change the default baud rate saved in the setup file. The syntax for this 
  3789. command is: change_option("baud=19200"); 
  3790.  
  3791. startup script. Use this command to change the name of the script that will be 
  3792. executed upon startup of Pmcomm. The syntax of this command is: 
  3793. change_option("startup script=c:\pmcomm\startup.scr"); 
  3794.  
  3795. exit on hangup. This command allows you to have Pmcomm exit once data carrier 
  3796. detect (DCD) has dropped. This will only work correctly if Monitor DCD is also 
  3797. selected. The syntax for this command is: change_option("exit on hangup=ON"); 
  3798.  
  3799. working directory. To change the current working directory the syntax would be: 
  3800. change_option("working directory=c:\pmcomm"); 
  3801.  
  3802. scroll size. This command allows you to change the size of the Extended Scroll 
  3803. Back buffer. To change the scroll size the syntax would be: 
  3804.  
  3805. change_option("scroll size=65535"); 
  3806.  
  3807. keymap. The keymap must be in the working directory of Pmcomm. To change the 
  3808. keymap currently in use the syntax would be : change_option("keymap=ansi.map"); 
  3809.  
  3810.  
  3811. ΓòÉΓòÉΓòÉ 11.2.8. Internal script dial ΓòÉΓòÉΓòÉ
  3812.  
  3813. dial("name"); 
  3814.  
  3815. This command will allow a script to dial a number listed in the current Pmcomm 
  3816. dialing directory. To dial the entry call Compu-Plane you would use the 
  3817. following syntax: dial("Compu-Plane"); 
  3818.  
  3819.  
  3820. ΓòÉΓòÉΓòÉ 11.2.9. shell ΓòÉΓòÉΓòÉ
  3821.  
  3822. shell("\path\filename.ext"); 
  3823.  
  3824. Allows you to call an external program to run from a script. 
  3825.  
  3826.  
  3827. ΓòÉΓòÉΓòÉ 11.2.10. exit (function) ΓòÉΓòÉΓòÉ
  3828.  
  3829. exit(); 
  3830.  
  3831. This function, once called, will exit Pmcomm. 
  3832.  
  3833.  
  3834. ΓòÉΓòÉΓòÉ 11.3. 'C' Functions ΓòÉΓòÉΓòÉ
  3835.  
  3836. These are the functions that are included in the cpmcomm and cpmcom32 
  3837. libraries. The cpmcomm.lib is a large model library and the cpmcom32.lib is a 
  3838. large model 32 bit library. The cpmcomm.h file has function definitions for the 
  3839. cpmcomm library and cpmcom32.h file has function definitions for the cpmcom32 
  3840. library, and should be included in any program that uses the cpmcomm libraries. 
  3841. The 32 bit library is made to be used with the IBM C Set/2 compiler. The 
  3842. function init_lib must be called before any other of the library routines are 
  3843. used. 
  3844.  
  3845.  
  3846. ΓòÉΓòÉΓòÉ 11.3.1. wait_for ΓòÉΓòÉΓòÉ
  3847.  
  3848. USHORT wait_for(USHORT argc,CHAR **argv,HFILE port); 
  3849.  
  3850. Example 
  3851.  
  3852. USHORT result; 
  3853.  
  3854. CHAR *argv[2]; 
  3855.  
  3856. CHAR string1[80]; 
  3857.  
  3858. CHAR string2[80]; 
  3859.  
  3860. strcpy(string1,"first name?"); 
  3861.  
  3862. strcpy(string2,"last name?"); 
  3863.  
  3864. argv[0] = string1; 
  3865.  
  3866. argv[1] = string2; 
  3867.  
  3868. result = wait_for(2,argv,port); 
  3869.  
  3870. Description 
  3871.  
  3872. The above example would wait for either first name?, or last name?, from the 
  3873. communication port. The function will return the index of the string that 
  3874. matched. For example if the wait_for received last name?, then the result would 
  3875. be 2. You can specify any number of strings depending on memory available. 
  3876.  
  3877. Returns 
  3878.  
  3879. Index of matched string or zero if timeout or error. 
  3880.  
  3881.  
  3882. ΓòÉΓòÉΓòÉ 11.3.2. wait_fore ΓòÉΓòÉΓòÉ
  3883.  
  3884. USHORT wait_fore(USHORT argc,CHAR **argv,HFILE port, HFILE screen_handle); 
  3885.  
  3886. Example 
  3887.  
  3888. USHORT result; 
  3889.  
  3890. CHAR *argv[2]; 
  3891.  
  3892. CHAR string1[80]; 
  3893.  
  3894. CHAR string2[80]; 
  3895.  
  3896. strcpy(string1,"first name?"); 
  3897.  
  3898. strcpy(string2,"last name?"); 
  3899.  
  3900. argv[0] = string1; 
  3901.  
  3902. argv[1] = string2; 
  3903.  
  3904. result = wait_for(2,argv,port,screen_handle); 
  3905.  
  3906. Description 
  3907.  
  3908. The first example would wait for either first name?, or last name?, from the 
  3909. communication port and echo the out_put to the Pmcomm screen. 
  3910.  
  3911. Returns 
  3912.  
  3913. Index of matched string or zero if timeout or error. 
  3914.  
  3915.  
  3916. ΓòÉΓòÉΓòÉ 11.3.3. put_s ΓòÉΓòÉΓòÉ
  3917.  
  3918. USHORT put_s(char *string,HFILE port); 
  3919.  
  3920. Example 
  3921.  
  3922. put_s("first name",port); 
  3923.  
  3924. Description 
  3925.  
  3926. This call will send string out to port. In the above example first name will be 
  3927. sent to the communication port. If screen_handle is specified instead of port 
  3928. then the string will be sent to the Pmcomm screen. 
  3929.  
  3930. Returns 
  3931.  
  3932. Length of string actually written. 
  3933.  
  3934.  
  3935. ΓòÉΓòÉΓòÉ 11.3.4. sleep ΓòÉΓòÉΓòÉ
  3936.  
  3937. VOID sleep(ULONG time); 
  3938.  
  3939. Example 
  3940.  
  3941. sleep(1000L); 
  3942.  
  3943. Description 
  3944.  
  3945. This call will delay the program for the amount of milliseconds specified. The 
  3946. above example will delay the computer for one second. 
  3947.  
  3948. Returns 
  3949.  
  3950. None. 
  3951.  
  3952.  
  3953. ΓòÉΓòÉΓòÉ 11.3.5. beep ΓòÉΓòÉΓòÉ
  3954.  
  3955. VOID beep(USHORT frequency,USHORT duration); 
  3956.  
  3957. Example 
  3958.  
  3959. beep(495,100); 
  3960.  
  3961. Description 
  3962.  
  3963. The above example will beep the speaker. 
  3964.  
  3965. Returns 
  3966.  
  3967. None. 
  3968.  
  3969.  
  3970. ΓòÉΓòÉΓòÉ 11.3.6. os2_shell ΓòÉΓòÉΓòÉ
  3971.  
  3972. VOID os2_shell(HFILE port,HFILE port); 
  3973.  
  3974. Example 
  3975.  
  3976. os2_shell(port,port); 
  3977.  
  3978. Description 
  3979.  
  3980. This command will allow a caller to shell to OS/2, remotely. The first 
  3981. parameter is input handle and the second is the output handle. In the example 
  3982. above, the command will receive and send the information to the communication 
  3983. port. 
  3984.  
  3985. Returns 
  3986.  
  3987. None. 
  3988.  
  3989.  
  3990. ΓòÉΓòÉΓòÉ 11.3.7. init_lib ΓòÉΓòÉΓòÉ
  3991.  
  3992. USHORT init_lib(int argc,char **argv); 
  3993.  
  3994. Example 
  3995.  
  3996. main(argc,argv) 
  3997.  
  3998.  
  3999. init_lib(argc,argv); 
  4000.  
  4001. ... 
  4002.  
  4003.  
  4004. The init_lib function will initialize some global variables that are passed on 
  4005. the command line. These variables are: 
  4006.  
  4007. USHORT port; 
  4008.  
  4009. CHAR portname[15]; 
  4010.  
  4011. HFILE dde_output,dde_input; 
  4012.  
  4013. HFILE screen_handle; 
  4014.  
  4015. This function must be called before any other library function is called. 
  4016.  
  4017. Returns 
  4018.  
  4019. 1 if sucessful and 0 if not. 
  4020.  
  4021.  
  4022. ΓòÉΓòÉΓòÉ 11.3.8. 'C' set_download_path ΓòÉΓòÉΓòÉ
  4023.  
  4024. VOID set_download_path(char *path); 
  4025.  
  4026. Example 
  4027.  
  4028. set_download_path("c:\pmcomm"); 
  4029.  
  4030. Description 
  4031.  
  4032. The above example will set the download path to c:\pmcomm. This will store all 
  4033. of the files received in that directory. 
  4034.  
  4035. Returns 
  4036.  
  4037. None. 
  4038.  
  4039.  
  4040. ΓòÉΓòÉΓòÉ 11.3.9. setcom ΓòÉΓòÉΓòÉ
  4041.  
  4042. SHORT setcom(char *baud,UCHAR parity,UCHAR data_bit,UCHAR stop_bits,HFILE 
  4043. port); 
  4044.  
  4045. Example 
  4046.  
  4047. setcom("2400",'N',8,1,port); 
  4048.  
  4049. Description 
  4050.  
  4051. This would set the communication port to 2400 baud, no parity, 8 data bits, 1 
  4052. stop bit. Baud can be from 300 to 19200 with the standard OS/2 device driver. 
  4053. Parity can be N(none), O(odd), E(even), M(marked), or S(spaced). Data bits can 
  4054. be 5, 6, 7 or 8. Stop bits can be 1 or 2 (2 can only be used with 5 data bits). 
  4055. If the baud parameter is an empty string i.e. setcom("",'E',7,1,port) this 
  4056. leaves the baud at the current rate but set the line characteristics to 7, 
  4057. Even, 1. 
  4058.  
  4059. Returns 
  4060.  
  4061. 1 if successful and 0 if unsuccessful. 
  4062.  
  4063.  
  4064. ΓòÉΓòÉΓòÉ 11.3.10. sendb ΓòÉΓòÉΓòÉ
  4065.  
  4066. VOID sendb(LONG length,HFILE port); 
  4067.  
  4068. Example 
  4069.  
  4070. sendb(300L,port); 
  4071.  
  4072. Description 
  4073.  
  4074. This call sends a break signal a certain time in milliseconds. The above 
  4075. example would send a break signal for 300 milliseconds. This call is mostly 
  4076. used to establish direct connects (not using a modem). Three hundred 
  4077. milliseconds should be okay for most situations. 
  4078.  
  4079. Returns 
  4080.  
  4081. None. 
  4082.  
  4083.  
  4084. ΓòÉΓòÉΓòÉ 11.3.11. dcd ΓòÉΓòÉΓòÉ
  4085.  
  4086. USHORT dcd(HFILE port); 
  4087.  
  4088. Example 
  4089.  
  4090. dcd(port); 
  4091.  
  4092. Description 
  4093.  
  4094. This call checks to see if there is a carrier detected on the modem. You can 
  4095. use this to see if Pmcomm is still online to a remote computer. For this 
  4096. information to be correct the modem must support dcd and the modem must be 
  4097. configured to support dcd. To find the command refer to your owner's manual. 
  4098.  
  4099. Returns 
  4100.  
  4101. 1 if carrier detected and 0 if no carrier. 
  4102.  
  4103.  
  4104. ΓòÉΓòÉΓòÉ 11.3.12. char_avail ΓòÉΓòÉΓòÉ
  4105.  
  4106. USHORT char_avail(HFILE port); 
  4107.  
  4108. Example 
  4109.  
  4110. char_avail(port); 
  4111.  
  4112. Description 
  4113.  
  4114. This call checks to see how many characters are available in the device drivers 
  4115. receive buffer. You can use this function to check to see if the device driver 
  4116. has received any characters from the communication port. 
  4117.  
  4118. Returns 
  4119.  
  4120. Number of characters in device driver receive queue. 
  4121.  
  4122.  
  4123. ΓòÉΓòÉΓòÉ 11.3.13. read_timeout ΓòÉΓòÉΓòÉ
  4124.  
  4125. read_timeout(USHORT timeout,HFILE port); 
  4126.  
  4127. Example 
  4128.  
  4129. read_timeout(20000,port); 
  4130.  
  4131. Description 
  4132.  
  4133. This call sets the length of time (in milliseconds) that wait_for, wait_fore, 
  4134. get_ch will wait for a character from the communication port. The above example 
  4135. will make the functions wait for 20 seconds. 
  4136.  
  4137. Returns 
  4138.  
  4139. 1 if successful and 0 if unsuccessful. 
  4140.  
  4141.  
  4142. ΓòÉΓòÉΓòÉ 11.3.14. get_ch ΓòÉΓòÉΓòÉ
  4143.  
  4144. CHAR get_ch(HFILE port); 
  4145.  
  4146. Example 
  4147.  
  4148. ch = get_ch(port); 
  4149.  
  4150. Description 
  4151.  
  4152. This call will get a character from the communication port. If no character is 
  4153. available by the time set with read_timeout the function will return with a 
  4154. value of -1. Otherwise the function will return with the character read. 
  4155.  
  4156. Returns 
  4157.  
  4158. char value if successful and -1 if unsuccessful. 
  4159.  
  4160.  
  4161. ΓòÉΓòÉΓòÉ 11.3.15. ring_detect ΓòÉΓòÉΓòÉ
  4162.  
  4163. USHORT ring_detect(HFILE port); 
  4164.  
  4165. Example 
  4166.  
  4167. ring_detect(port); 
  4168.  
  4169. Description 
  4170.  
  4171. This call can be used to inform a program if the phone is ringing. 
  4172.  
  4173. Returns 
  4174.  
  4175. 1 if ring detected, 0 if no ring. 
  4176.  
  4177.  
  4178. ΓòÉΓòÉΓòÉ 11.3.16. drop_dtr ΓòÉΓòÉΓòÉ
  4179.  
  4180. VOID drop_dtr(HFILE port); 
  4181.  
  4182. Example 
  4183.  
  4184. drop_dtr(port); 
  4185.  
  4186. Description 
  4187.  
  4188. This call is usually used to make a modem hang up. The modem must be configured 
  4189. to allow this. To find the command for your modem, check your owner's manual. 
  4190. Dtr needs to be dropped for about 2-3 seconds to make sure the modem sees the 
  4191. drop in DTR. After that length of time raise_dtr can be called to bring DTR 
  4192. back up. On a Hayes 2400 the above command will also keep the modem from doing 
  4193. an auto answer until you raise_dtr again. 
  4194.  
  4195. Returns 
  4196.  
  4197. None. 
  4198.  
  4199.  
  4200. ΓòÉΓòÉΓòÉ 11.3.17. raise_dtr ΓòÉΓòÉΓòÉ
  4201.  
  4202. VOID raise_dtr(HFILE port); 
  4203.  
  4204. Example 
  4205.  
  4206. raise_dtr(port); 
  4207.  
  4208. Description This call is usually used after drop_dtr to allow the modem to 
  4209. process commands and enable it to answer the phone. 
  4210.  
  4211. Returns 
  4212.  
  4213. None. 
  4214.  
  4215.  
  4216. ΓòÉΓòÉΓòÉ 11.3.18. get_cursor_position ΓòÉΓòÉΓòÉ
  4217.  
  4218. USHORT get_cursor_position(char *str); 
  4219.  
  4220. Example 
  4221.  
  4222. get_cursor_position("column"); 
  4223.  
  4224. Description 
  4225.  
  4226. The above will return the column that the cursor is in. To get the current row, 
  4227. you would issue this call with "row" instead of "column". The row value that is 
  4228. returned is relative to the top of the scroll back buffer. The top row of the 
  4229. scroll back buffer and the first column would be 0,0. 
  4230.  
  4231. Returns 
  4232.  
  4233. Cursor position. 
  4234.  
  4235.  
  4236. ΓòÉΓòÉΓòÉ 11.3.19. get_char_at ΓòÉΓòÉΓòÉ
  4237.  
  4238. VOID get_char_at(USHORT row,USHORT col,USHORT num,char *returnstr); 
  4239.  
  4240. Example 
  4241.  
  4242. get_char_at(0,0,80,str); 
  4243.  
  4244. Description 
  4245.  
  4246. The above will return the characters at the first line (stored in str) of the 
  4247. scroll back buffer. It will return 80 characters, even if the characters are 
  4248. spaces. The maximum number of characters that can be returned at one time is 
  4249. 200. 
  4250.  
  4251. Returns 
  4252.  
  4253. None. 
  4254.  
  4255.  
  4256. ΓòÉΓòÉΓòÉ 11.3.20. 'C'capture_on ΓòÉΓòÉΓòÉ
  4257.  
  4258. USHORT capture_on(filename); 
  4259.  
  4260. Example 
  4261.  
  4262. capture_on("c:\pmcomm\cap.txt"); 
  4263.  
  4264. Description 
  4265.  
  4266. The above will turn capture on so that everything will be saved into a file. If 
  4267. you have strip ANSI configured in Pmcomm then the text only will be saved in 
  4268. ANSI, VT100, and VT220 terminal emulations. 
  4269.  
  4270. Returns 
  4271.  
  4272. 1 if successful and 0 if not. 
  4273.  
  4274.  
  4275. ΓòÉΓòÉΓòÉ 11.3.21. 'C' capture_off ΓòÉΓòÉΓòÉ
  4276.  
  4277. VOID capture_off(VOID); 
  4278.  
  4279. Example 
  4280.  
  4281. capture_off(); 
  4282.  
  4283. Description 
  4284.  
  4285. The above will turn capture off. The capture may have been started from a 
  4286. script or from the menu. 
  4287.  
  4288. Returns 
  4289.  
  4290. 1 if successful and 0 if not. 
  4291.  
  4292.  
  4293. ΓòÉΓòÉΓòÉ 11.3.22. 'C' change_option ΓòÉΓòÉΓòÉ
  4294.  
  4295. change_option("option"); 
  4296.  
  4297. This command will allow a script to change certain options in Pmcomm. The 
  4298. options that can be changed are: 
  4299.  
  4300. device. This option will allow you to change the current device that Pmcomm is 
  4301. using. For example to change the current device to COM2, the syntax would be: 
  4302. change_option("device=COM2"); 
  4303.  
  4304. hardware. This option will allow you to turn hardware flow control on or off. 
  4305. If you want to turn hardware flow control off the syntax would be: 
  4306. change_option("hardware=OFF"); To turn hardware flow control on you would 
  4307. replace the OFF with ON. 
  4308.  
  4309. XON/XOFF. This option will allow you to turn Xon/Xoff flow control on or off. 
  4310. If you want to turn Xon/Xoff flow control off the syntax would be: 
  4311. change_option("XON/XOFF=OFF"); To turn Xon/Xoff flow control on you would 
  4312. replace the OFF with ON. 
  4313.  
  4314. dtr. If this option is turned on the DTR will be lowered when hangup is 
  4315. selected. If you want to turn this option off the syntax would be: 
  4316. change_option("dtr=OFF"); 
  4317.  
  4318. stop bits. This option will allow you to set the number of stop bits that the 
  4319. communication port is set to. The communication port will be changed before the 
  4320. command is completed, and the default stop bits will be set to the new value. 
  4321. To set the communication port to 1 stop bit, the syntax would be: 
  4322. change_option("stop bits=1"); The communication port can only be set to 1 or 2 
  4323. stop bits from a script. 
  4324.  
  4325. data bits. This option will allow you to set the number of data bits that the 
  4326. communication port is set to. The communication port will be changed before the 
  4327. command is completed, and the default data bits will be set to the new value. 
  4328. To set the communication port to 8 data bits, the syntax would be: 
  4329. change_option("data bits=8"); The communication port can be set to 8, 7, 6 or 5 
  4330. data bits. 
  4331.  
  4332. parity. This option will allow you to set the parity for the current 
  4333. communication port. The communication port will be changed before the command 
  4334. is completed, and the default parity will be set to the new value. To set the 
  4335. communication port to Even parity, the syntax would be: 
  4336. change_option("parity=Even"); The communication port can be set to None, Even , 
  4337. Odd, Mark or Space parity. 
  4338.  
  4339. initialization string. This option allows you to change the modem 
  4340. initialization string that Pmcomm uses. To change the string the syntax would 
  4341. be: change_option("initialization string=ATZ"); 
  4342.  
  4343. dial timeout. This option will allow you to set the number of seconds that 
  4344. Pmcomm will wait when dialing a remote computer. If you wanted to set the 
  4345. number of seconds to 60 the syntax for the command would be: 
  4346. change_option("dial timeout=60"); 
  4347.  
  4348. redial delay. This option will allow you to set the number of seconds that 
  4349. Pmcomm will wait between dialing attempts. If you wanted to set the number of 
  4350. seconds to 6 the syntax for the command would be: change_option("redial 
  4351. delay=6"); 
  4352.  
  4353. hangup string. This option allows you to change the modem hangup string that 
  4354. Pmcomm uses. To change the string the syntax would be: change_option("hangup 
  4355. string=+++~~~ATH^M"); 
  4356.  
  4357. auto zmodem string. Some host systems do not send a standard auto zmodem 
  4358. string. This command allows you to change the string that Pmcomm looks for, 
  4359. when the host starts a zmodem send file transfer. When Pmcomm finds a match it 
  4360. will start a zmodem receive file transfer. To change the auto zmodem string the 
  4361. syntax would be: 
  4362.  
  4363. change_option("auto zmodem string=B00000"); 
  4364.  
  4365. zmodem date. This option allows you turn on and off whether Pmcomm will compare 
  4366. the file dates during a zmodem resume file transfer. The syntax to turn the 
  4367. date compare off would be: 
  4368.  
  4369. change_option("zmodem date=OFF"); To turn this option on you would replace the 
  4370. OFF with ON. 
  4371.  
  4372. zmodem rename. This option allows you turn on and off whether Pmcomm will 
  4373. rename duplicate files, if a resume fails (or is turned off). If this option is 
  4374. on Pmcomm will rename the new file with a number for an extension. The syntax 
  4375. to turn the zmodem rename off would be: 
  4376.  
  4377. change_option("zmodem rename=OFF"); To turn this option on you would replace 
  4378. the OFF with ON. 
  4379.  
  4380. auto zmodem. This option will allow you to turn the auto zmodem feature on or 
  4381. off. If you want to turn auto zmodem off the syntax would be: 
  4382. change_option("auto zmodem=OFF"); To turn auto zmodem on you would replace the 
  4383. OFF with ON. 
  4384.  
  4385. zmodem recovery. This option will allow you to turn the zmodem recovery feature 
  4386. on or off. If you want to turn zmodem recovery off the syntax would be: 
  4387. change_option("zmodem recovery=OFF"); To turn zmodem recovery on you would 
  4388. replace the OFF with ON. 
  4389.  
  4390. zmodem crc. This option allows you to select either the 32 bit or 16 bit zmodem 
  4391. CRC error detection option. To select the 32 bit option the syntax would be: 
  4392. change_option("zmodem crc=32"); 
  4393.  
  4394. download directory. To change the current download directory the syntax would 
  4395. be: change_option("download directory=c:\pmcomm\"); 
  4396.  
  4397. hide dial. This option allows you to select if the main terminal window is 
  4398. hidden while Pmcomm is dialing a remote computer. To allow the main window to 
  4399. remain visible while dialing the syntax would be: change_option("hide 
  4400. dial=OFF"); To turn hide dial on you would replace the OFF with ON. 
  4401.  
  4402. hide transfer. This option allows you to select if the main terminal window is 
  4403. hidden while Pmcomm is doing a file transfer. To allow the main window to 
  4404. remain visible while doing file transfers the syntax would be: 
  4405. change_option("hide transfer=OFF"); To turn hide transfer on you would replace 
  4406. the OFF with ON. 
  4407.  
  4408. auto vertical. This option determines if Pmcomm will automatically scroll the 
  4409. terminal window vertically to keep the current cursor position in the window. 
  4410. To turn this option off the syntax would be: change_option("auto 
  4411. vertical=OFF"); To turn this option on you would replace the OFF with ON. 
  4412.  
  4413. auto horizontal. This option determines if Pmcomm will automatically scroll the 
  4414. terminal window horizontally to keep the current cursor position in the window. 
  4415. To turn this option off the syntax would be: change_option("auto 
  4416. horizontal=OFF"); To turn this option on you would replace the OFF with ON. 
  4417.  
  4418. save dial. If this option is on then Pmcomm will store the position of the 
  4419. dialing dialog box, and use it the next time a number is dialed. To turn this 
  4420. option off the syntax would be: change_option("save dial=OFF"); To turn this 
  4421. option on you would replace the OFF with ON. 
  4422.  
  4423. save transfer. If this option is on then Pmcomm will store the position of the 
  4424. transfer dialog box, and use it the next time a file is transferred dialed. To 
  4425. turn this option off the syntax would be: change_option("save transfer=OFF"); 
  4426. To turn this option on you would replace the OFF with ON. 
  4427.  
  4428. sound. This option allows you to turn the warning beeps in Pmcomm, on or off. 
  4429. To turn this option off the syntax would be: change_option("sound=OFF"); To 
  4430. turn this option on you would replace the OFF with ON. 
  4431.  
  4432. monitor dcd. If this option is on, then Pmcomm will monitor the presence of 
  4433. data carrier detect (DCD). To turn this option off the syntax would be: 
  4434. change_option("monitor dcd=OFF"); To turn this option on you would replace the 
  4435. OFF with ON. 
  4436.  
  4437. page length. This option allows you to set the ANSI page length from a script. 
  4438. Following is an example of how to set the page length to 25 lines. 
  4439. change_option("page length=25"); 
  4440.  
  4441. terminal. This option allows you to change the type of terminal from within a 
  4442. Pmcomm script. The following example would set the terminal type to ANSI. 
  4443. change_option("terminal=ANSI"); The available valid terminal types are TTY, 
  4444. ANSI, VT100 or VT220. 
  4445.  
  4446. foreground. This option allows you to change the foreground color from within a 
  4447. Pmcomm script. The available colors are: 
  4448.  
  4449. black 
  4450. blue 
  4451. green 
  4452. cyan 
  4453. red 
  4454. magenta 
  4455. brown 
  4456. white 
  4457. dark grey 
  4458. light blue 
  4459. light green 
  4460. light cyan 
  4461. light red 
  4462. pink 
  4463. yellow 
  4464. bright white 
  4465.  
  4466. The syntax to change the foreground color to cyan would be: 
  4467. change_option("foreground=cyan"); 
  4468.  
  4469. background. This option allows you to change the background color from within a 
  4470. Pmcomm script. The available colors are: 
  4471.  
  4472. black 
  4473. blue 
  4474. green 
  4475. cyan 
  4476. red 
  4477. magenta 
  4478. brown 
  4479. white 
  4480. dark grey 
  4481. light blue 
  4482. light green 
  4483. light cyan 
  4484. light red 
  4485. pink 
  4486. yellow 
  4487. bright white 
  4488.  
  4489. The syntax to change the background color to black would be: 
  4490. change_option("background=black"); 
  4491.  
  4492. echo. This option allows you turn on and off the local keystroke echo. The 
  4493. syntax to turn echo off would be: change_option("echo=OFF"); To turn this 
  4494. option on you would replace the OFF with ON. 
  4495.  
  4496. prefix1 
  4497. prefix2 
  4498. prefix3 
  4499.  
  4500.  These options allow you to change the dialing prefixes. For example to change 
  4501. prefix1 you would use the following syntax: change_option("prefix1=ATDT"); 
  4502.  
  4503. suffix1 
  4504. suffix2 
  4505. suffix3 
  4506.  
  4507.  These options allow you to change the dialing suffixes. For example to change 
  4508. suffix1 you would use the following syntax: change_option("suffix1=^M"); 
  4509.  
  4510. strip ansi. This option allows you to select if Pmcomm will strip the ANSI 
  4511. commands from a capture file. The syntax to turn off the stripping of the ANSI 
  4512. commands would be: change_option("strip ansi=OFF"); To turn this option on you 
  4513. would replace the OFF with ON. 
  4514.  
  4515. macro1 
  4516. macro2 
  4517. macro3 
  4518. macro4 
  4519. macro5 
  4520. macro6 
  4521. macro7 
  4522. macro8 
  4523. macro9 
  4524. macro10 
  4525.  
  4526. These options allow you to change the keyboard macros. For example to change 
  4527. macro1 you would use the following syntax: change_option("macro1=ATZ"); 
  4528.  
  4529. phone directory. To change the current phone directory the syntax would be: 
  4530. change_option("phone directory=c:\pmcomm\pmcomm.fon"); This would change the 
  4531. file used as the Pmcomm phone file. 
  4532.  
  4533. script directory. To change the current script directory the syntax would be: 
  4534. change_option("script directory=c:\pmcomm\script"); 
  4535.  
  4536. capture directory. To change the current capture file directory the syntax 
  4537. would be: change_option("capture directory=c:\pmcomm\capture"); 
  4538.  
  4539. chat. This option allows you to turn the Pmcomm chat mode on or off. The syntax 
  4540. to turn off chat mode is: change_option("chat=OFF"); To turn this option on you 
  4541. would replace the OFF with ON. 
  4542.  
  4543. auto cisb. This option allows you to turn the automatic CISB file transfer on 
  4544. or off. The syntax to turn off auto CISB is: change_option("auto cisb=OFF"); To 
  4545. turn this option on you would replace the OFF with ON. 
  4546.  
  4547. cisb recovery. This option allows you to turn the CISB file recovery on or off. 
  4548. The syntax to turn off the CISB file recovery is: change_option("cisb 
  4549. recovery=OFF"); To turn this option on you would replace the OFF with ON. 
  4550.  
  4551. baud. This option allows you to change the current baud rate. This will also 
  4552. change the default baud rate saved in the setup file. The syntax for this 
  4553. command is: change_option("baud=19200"); 
  4554.  
  4555. startup script. Use this command to change the name of the script that will be 
  4556. executed upon startup of Pmcomm. The syntax of this command is: 
  4557. change_option("startup script=c:\pmcomm\startup.scr"); 
  4558.  
  4559. exit on hangup. This command allows you to have Pmcomm exit once data carrier 
  4560. detect (DCD) has dropped. This will only work correctly if Monitor DCD is also 
  4561. selected. The syntax for this command is: change_option("exit on hangup=ON"); 
  4562.  
  4563. working directory. To change the current working directory the syntax would be: 
  4564. change_option("working directory=c:\pmcomm"); 
  4565.  
  4566. keymap. The keymap must be in the working directory of Pmcomm. To change the 
  4567. keymap currently in use the syntax would be : change_option("keymap=ansi.map"); 
  4568.  
  4569.  
  4570. ΓòÉΓòÉΓòÉ 11.3.23. 'C' dial ΓòÉΓòÉΓòÉ
  4571.  
  4572. dial("name"); 
  4573.  
  4574. This command will allow a script to dial a number listed in the current Pmcomm 
  4575. dialing directory. To dial the entry call Compu-Plane you would use the 
  4576. following syntax: dial("Compu-Plane"); 
  4577.  
  4578.  
  4579. ΓòÉΓòÉΓòÉ 11.3.24. 'C' get_dial_memo ΓòÉΓòÉΓòÉ
  4580.  
  4581. get_dial_memo(char *returnstr); 
  4582.  
  4583. This command will retrieve the information stored in the memo field of the 
  4584. currently connected phone number. This will allow you to, for example, store 
  4585. your password in the dialing directory memo field, and write a script to use 
  4586. it. By doing this you can change your password without editing the script. All 
  4587. you would have to do is change the text in the memo field for that number. To 
  4588. retrieve the text stored in the current memo field the syntax would be: 
  4589. get_dial_memo (returnstr); 
  4590.  
  4591.  
  4592. ΓòÉΓòÉΓòÉ 11.3.25. 'C' clipboard_paste ΓòÉΓòÉΓòÉ
  4593.  
  4594. clipboard_paste(char *returnstr); 
  4595.  
  4596. This command will retrieve text stored in the OS/2 clipboard. The maximum 
  4597. amount of text that can be retrieved at one time is 8192 bytes. To retrieve the 
  4598. text stored in the clipboard the syntax would be: clipboard_paste(returnstr); 
  4599.  
  4600.  
  4601. ΓòÉΓòÉΓòÉ 11.3.26. 'C' clipboard_copy ΓòÉΓòÉΓòÉ
  4602.  
  4603. clipboard_copy(char *str); 
  4604.  
  4605. This command will copy text to the OS/2 clipboard. The maximum amount of text 
  4606. that can be sent at one time is 8192 bytes. To send text to the clipboard the 
  4607. syntax would be: clipboard_copy("This is a test"); 
  4608.  
  4609.  
  4610. ΓòÉΓòÉΓòÉ 11.3.27. 'C' clipboard_append ΓòÉΓòÉΓòÉ
  4611.  
  4612. clipboard_append(char *str); 
  4613.  
  4614. This command will append text to the existing text in the OS/2 clipboard. The 
  4615. maximum amount of text that can be sent at one time is 8192 bytes. To append 
  4616. text to the clipboard the syntax would be: clipboard_append("This is a test"); 
  4617.  
  4618.  
  4619. ΓòÉΓòÉΓòÉ 11.3.28. xmodem_send ΓòÉΓòÉΓòÉ
  4620.  
  4621. USHORT xmodem_send(char *filename); 
  4622.  
  4623. Example 
  4624.  
  4625. xmodem_send("d:\path\filename.ext"); 
  4626.  
  4627. Description 
  4628.  
  4629. This call will invoke the Xmodem_CRC send routine, built into Pmcomm. Once 
  4630. issued the call will not return until the transfer either finishes or is 
  4631. aborted. Pmcomm will show the normal transfer box that it does when download is 
  4632. selected from the menu. 
  4633.  
  4634. Returns 
  4635.  
  4636. 1 if the transfer is successful and 0 if unsuccessful. 
  4637.  
  4638.  
  4639. ΓòÉΓòÉΓòÉ 11.3.29. xmodem_receive ΓòÉΓòÉΓòÉ
  4640.  
  4641. USHORT xmodem_receive(char *filename); 
  4642.  
  4643. Example 
  4644.  
  4645. xmodem_receive("d:\path\filename.ext"); 
  4646.  
  4647. Description 
  4648.  
  4649. This call will invoke the Xmodem_CRC receive routine, built into Pmcomm. Once 
  4650. issued the call will not return until the transfer either finishes or is 
  4651. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4652. from the menu. The file name specified must include a path. 
  4653.  
  4654. Returns 
  4655.  
  4656. 1 if transfer is successful and 0 if unsuccessful. 
  4657.  
  4658.  
  4659. ΓòÉΓòÉΓòÉ 11.3.30. xmodem_chk_send ΓòÉΓòÉΓòÉ
  4660.  
  4661. USHORT xmodem_chk_send(char *filename); 
  4662.  
  4663. Example 
  4664.  
  4665. xmodem_chk_send("d:\path\filename.ext"); 
  4666.  
  4667. Description 
  4668.  
  4669. This call will invoke the Xmodem_Checksum send routine, built into Pmcomm. Once 
  4670. issued the call will not return until the transfer either finishes or is 
  4671. aborted. Pmcomm will show the normal transfer box that it does when download is 
  4672. selected from the menu. 
  4673.  
  4674. Returns 
  4675.  
  4676. 1 if transfer is successful and 0 if unsuccessful. 
  4677.  
  4678.  
  4679. ΓòÉΓòÉΓòÉ 11.3.31. xmodem_chk_receive ΓòÉΓòÉΓòÉ
  4680.  
  4681. USHORT xmodem_chk_receive(char *filename); 
  4682.  
  4683. Example 
  4684.  
  4685. xmodem_chk_receive("d:\path\filename.ext"); 
  4686.  
  4687. Description 
  4688.  
  4689. This call will invoke the Xmodem_Checksum receive routine, built into Pmcomm. 
  4690. Once issued the call will not return until the transfer either finishes or is 
  4691. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4692. from the menu. The file name specified must include a path. 
  4693.  
  4694. Returns 
  4695.  
  4696. 1 if transfer is successful and 0 if unsuccessful. 
  4697.  
  4698.  
  4699. ΓòÉΓòÉΓòÉ 11.3.32. xmodem_1k_send ΓòÉΓòÉΓòÉ
  4700.  
  4701. USHORT xmodem_1k_send(char *filename); 
  4702.  
  4703. Example 
  4704.  
  4705. xmodem_1k_send("d:\path\filename.ext"); 
  4706.  
  4707. Description 
  4708.  
  4709. This call will invoke the 1K-Xmodem send routine, built into Pmcomm. Once 
  4710. issued the call will not return until the transfer either finishes or is 
  4711. aborted. Pmcomm will show the normal transfer box that it does when download is 
  4712. selected from the menu. 
  4713.  
  4714. Returns 
  4715.  
  4716. 1 if transfer is successful and 0 if unsuccessful. 
  4717.  
  4718.  
  4719. ΓòÉΓòÉΓòÉ 11.3.33. xmodem_1k_receive ΓòÉΓòÉΓòÉ
  4720.  
  4721. USHORT xmodem_1k_receive(char *filename); 
  4722.  
  4723. Example 
  4724.  
  4725. xmodem_1k_receive("d:\path\filename.ext"); 
  4726.  
  4727. Description 
  4728.  
  4729. This call will invoke the 1K-Xmodem receive routine, built into Pmcomm. Once 
  4730. issued the call will not return until the transfer either finishes or is 
  4731. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4732. from the menu. The file name specified must include a path. 
  4733.  
  4734. Returns 
  4735.  
  4736. 1 if transfer is successful and 0 if unsuccessful. 
  4737.  
  4738.  
  4739. ΓòÉΓòÉΓòÉ 11.3.34. ymodem_send ΓòÉΓòÉΓòÉ
  4740.  
  4741. USHORT ymodem_send(USHORT num_files,CHAR **filearray); 
  4742.  
  4743. Example 
  4744.  
  4745. USHORT result; 
  4746.  
  4747. CHAR *filearray[2]; 
  4748.  
  4749. CHAR string1[80]; 
  4750.  
  4751. CHAR string2[80]; 
  4752.  
  4753. strcpy(string1,"pmcom106.zip"); 
  4754.  
  4755. strcpy(string2,"pmcom107.zip"); 
  4756.  
  4757. filearray[0] = string1; 
  4758.  
  4759. filearray[1] = string2; 
  4760.  
  4761. result = ymodem_send(2,filearray); 
  4762.  
  4763. Description 
  4764.  
  4765. This call will invoke the Ymodem send routine, built into Pmcomm. Once issued 
  4766. the call will not return until the transfer either finishes or is aborted. 
  4767. Pmcomm will show the normal transfer box that it does when download is selected 
  4768. from the menu. As many as 8 files can be sent at one time. 
  4769.  
  4770. Returns 
  4771.  
  4772. Number of files successfully transferred. 
  4773.  
  4774.  
  4775. ΓòÉΓòÉΓòÉ 11.3.35. ymodem_receive ΓòÉΓòÉΓòÉ
  4776.  
  4777. USHORT ymodem_receive(VOID); 
  4778.  
  4779. Example 
  4780.  
  4781. ymodem_receive(); 
  4782.  
  4783. Description 
  4784.  
  4785. This call will invoke the Ymodem receive routine, built into Pmcomm. Once 
  4786. issued the call will not return until the transfer either finishes or is 
  4787. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4788. from the menu. Only a single file at a time will be accepted. 
  4789.  
  4790. Returns 
  4791.  
  4792. 1 if call is successful and 0 if unsuccessful. 
  4793.  
  4794.  
  4795. ΓòÉΓòÉΓòÉ 11.3.36. ymodemg_send ΓòÉΓòÉΓòÉ
  4796.  
  4797. USHORT ymodemg_send(USHORT num_files, CHAR **filearray); 
  4798.  
  4799. Example 
  4800.  
  4801. USHORT result; 
  4802.  
  4803. CHAR *filearray[2]; 
  4804.  
  4805. CHAR string1[80]; 
  4806.  
  4807. CHAR string2[80]; 
  4808.  
  4809. strcpy(string1,"pmcom106.zip"); 
  4810.  
  4811. strcpy(string2,"pmcom107.zip"); 
  4812.  
  4813. filearray[0] = string1; 
  4814.  
  4815. filearray[1] = string2; 
  4816.  
  4817. result = ymodemg_send(2,filearray); 
  4818.  
  4819. Description 
  4820.  
  4821. This call will invoke the Ymodem-g send routine, built into Pmcomm. Once issued 
  4822. the call will not return until the transfer either finishes or is aborted. 
  4823. Pmcomm will show the normal transfer box that it does when downloading from the 
  4824. menu. As many as 8 files can be sent at one time. 
  4825.  
  4826. Returns 
  4827.  
  4828. Number of files successfully transferred. 
  4829.  
  4830.  
  4831. ΓòÉΓòÉΓòÉ 11.3.37. ymodemg_receive ΓòÉΓòÉΓòÉ
  4832.  
  4833. USHORT ymodemg_receive(VOID); 
  4834.  
  4835. Example 
  4836.  
  4837. ymodemg_receive(); 
  4838.  
  4839. Description 
  4840.  
  4841. This call will invoke the Ymodem-g receive routine, built into Pmcomm. Once 
  4842. issued the call will not return until the transfer either finishes or is 
  4843. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4844. from the menu. Only one file at a time can be received. 
  4845.  
  4846. Returns 
  4847.  
  4848. 1 if call is successful and 0 if unsuccessful. 
  4849.  
  4850.  
  4851. ΓòÉΓòÉΓòÉ 11.3.38. zmodem_send ΓòÉΓòÉΓòÉ
  4852.  
  4853. USHORT zmodem_send(USHORT num_files, CHAR **filearray); 
  4854.  
  4855. Example 
  4856.  
  4857. USHORT result; 
  4858.  
  4859. CHAR *filearray[2]; 
  4860.  
  4861. CHAR string1[80]; 
  4862.  
  4863. CHAR string2[80]; 
  4864.  
  4865. strcpy(string1,"pmcom106.zip"); 
  4866.  
  4867. strcpy(string2,"pmcom107.zip"); 
  4868.  
  4869. filearray[0] = string1; 
  4870.  
  4871. filearray[1] = string2; 
  4872.  
  4873. result = zmodem_send(2,filearray); 
  4874.  
  4875. Description 
  4876.  
  4877. This call will invoke the Zmodem send routine, built into Pmcomm. Once issued 
  4878. the call will not return until the transfer either finishes or is aborted. 
  4879. Pmcomm will show the normal transfer box that it does when downloading from the 
  4880. menu. As many as 100 files may be transferred at one time. 
  4881.  
  4882. Returns 
  4883.  
  4884. Number of files successfully transferred. 
  4885.  
  4886.  
  4887. ΓòÉΓòÉΓòÉ 11.3.39. zmodem_receive ΓòÉΓòÉΓòÉ
  4888.  
  4889. USHORT zmodem_receive(VOID); 
  4890.  
  4891. Example 
  4892.  
  4893. zmodem_receive(); 
  4894.  
  4895. Description 
  4896.  
  4897. This call will invoke the Zmodem receive routine, built into Pmcomm. Once 
  4898. issued the call will not return until the transfer either finishes or is 
  4899. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4900. from the menu. Only one file at a time can be received. 
  4901.  
  4902. Returns 
  4903.  
  4904. The number of files transferred. 
  4905.  
  4906.  
  4907. ΓòÉΓòÉΓòÉ 11.3.40. kermit_send ΓòÉΓòÉΓòÉ
  4908.  
  4909. USHORT kermit_send(USHORT num_files, CHAR **filearray); 
  4910.  
  4911. Example 
  4912.  
  4913. USHORT result; 
  4914.  
  4915. CHAR *filearray[2]; 
  4916.  
  4917. CHAR string1[80]; 
  4918.  
  4919. CHAR string2[80]; 
  4920.  
  4921. strcpy(string1,"pmcom106.zip"); 
  4922.  
  4923. strcpy(string2,"pmcom107.zip"); 
  4924.  
  4925. filearray[0] = string1; 
  4926.  
  4927. filearray[1] = string2; 
  4928.  
  4929. result = kermit_send(2,filearray); 
  4930.  
  4931. Description 
  4932.  
  4933. This call will invoke the Kermit send routine, built into Pmcomm. Once issued 
  4934. the call will not return until the transfer either finishes or is aborted. 
  4935. Pmcomm will show the normal transfer box that it does when downloading from the 
  4936. menu. As many as 100 files may be transferred at one time. 
  4937.  
  4938. Returns 
  4939.  
  4940. Number of files successfully transferred. 
  4941.  
  4942.  
  4943. ΓòÉΓòÉΓòÉ 11.3.41. kermit_receive ΓòÉΓòÉΓòÉ
  4944.  
  4945. USHORT kermit_receive(VOID); 
  4946.  
  4947. Example 
  4948.  
  4949. kermit_receive(); 
  4950.  
  4951. Description 
  4952.  
  4953. This call will invoke the Kermit receive routine, built into Pmcomm. Once 
  4954. issued the call will not return until the transfer either finishes or is 
  4955. aborted. Pmcomm will show the normal transfer box that it does when uploading 
  4956. from the menu. Only one file at a time can be received. 
  4957.  
  4958. Returns 
  4959.  
  4960. Number of files transferred. 
  4961.  
  4962.  
  4963. ΓòÉΓòÉΓòÉ 11.3.42. ascii_send ΓòÉΓòÉΓòÉ
  4964.  
  4965. USHORT ascii_send(char *filename); 
  4966.  
  4967. Example 
  4968.  
  4969. ascii_send("d:\path\filename.ext"); 
  4970.  
  4971. Description 
  4972.  
  4973. This call will invoke the ASCII send routine, built into Pmcomm. Once issued 
  4974. the call will not return until the transfer either finishes or is aborted. 
  4975. Pmcomm will show the normal transfer box that it does when downloading from the 
  4976. menu. 
  4977.  
  4978. Returns 
  4979.  
  4980. 1 if transfer is successful and 0 if unsuccessful. 
  4981.  
  4982.  
  4983. ΓòÉΓòÉΓòÉ 11.3.43. ascii_receive ΓòÉΓòÉΓòÉ
  4984.  
  4985. USHORT ascii_receive(filename); 
  4986.  
  4987. Example 
  4988.  
  4989. ascii_receive("d:\path\filename.ext"); 
  4990.  
  4991. Description 
  4992.  
  4993. This call will invoke the ASCII receive routine, built into Pmcomm. Once issued 
  4994. the call will not return until the transfer either finishes or is aborted. 
  4995. Pmcomm will show the normal transfer box that it does when uploading from the 
  4996. menu. The file name specified must not include a path. 
  4997.  
  4998. Returns 
  4999.  
  5000. 1 if transfer is successful and 0 if unsuccessful. 
  5001.  
  5002.  
  5003. ΓòÉΓòÉΓòÉ 11.3.44. cisb_send ΓòÉΓòÉΓòÉ
  5004.  
  5005. USHORT cisb_send(char *filename); 
  5006.  
  5007. Example 
  5008.  
  5009. cisb_send("d:\path\filename.ext"); 
  5010.  
  5011. Description 
  5012.  
  5013. This call will invoke the CISB send routine, built into Pmcomm. Once issued the 
  5014. call will not return until the transfer either finishes or is aborted. Pmcomm 
  5015. will show the normal transfer box that it does when download is selected from 
  5016. the menu. 
  5017.  
  5018. Returns 
  5019.  
  5020. 1 if the transfer is successful and 0 if unsuccessful. 
  5021.  
  5022.  
  5023. ΓòÉΓòÉΓòÉ 11.3.45. cisb_receive ΓòÉΓòÉΓòÉ
  5024.  
  5025. USHORT cisb_receive(char *filename); 
  5026.  
  5027. Example 
  5028.  
  5029. cisb_receive("d:\path\filename.ext"); 
  5030.  
  5031. Description 
  5032.  
  5033. This call will invoke the CISB receive routine, built into Pmcomm. Once issued 
  5034. the call will not return until the transfer either finishes or is aborted. 
  5035. Pmcomm will show the normal transfer box that it does when uploading from the 
  5036. menu. The file name specified must include a path. 
  5037.  
  5038. Returns 
  5039.  
  5040. 1 if transfer is successful and 0 if unsuccessful. 
  5041.  
  5042.  
  5043. ΓòÉΓòÉΓòÉ 11.4. Sample Scripts ΓòÉΓòÉΓòÉ
  5044.  
  5045. These are scripts to help you, when you start to write your own scripts. 
  5046.  
  5047.  
  5048. ΓòÉΓòÉΓòÉ 11.4.1. REXX Sample ΓòÉΓòÉΓòÉ
  5049.  
  5050. /* Sample Script*/ 
  5051.  
  5052. /* This script will allow you to log on to Compu-Plane once you change the 
  5053. strings stored in the variables called name and pass. Enter the sample.scr name 
  5054. for the script name of the Compu-Plane phone number, and change the name in the 
  5055. shell( ) function to the path and filename of this file.*/ 
  5056.  
  5057. Call RxFuncadd "init_dll","RxPmcomm","init_dll" 
  5058.  
  5059. /* This function registers the init_dll function with REXX. The init_dll 
  5060. function will register the rest of the functions in the rxpmcomm.dll. */ 
  5061.  
  5062. Parse arg port portname screen_handle dde_output dde_input semaphore 
  5063.  
  5064. /*These are the values that Pmcomm passes on the command line to an external 
  5065. program. These values can then be used in different REXX functions along with 
  5066. the rxpmcomm.dll functions. Following is the description of each value: */ 
  5067.  
  5068. /* port = The handle of the open communication port in Pmcomm */ 
  5069.  
  5070. /* portname = The name of the opened communication port ie.. COM1*/ 
  5071.  
  5072. /* screen_handle = Anything written to the handle will be printed on the Pmcomm 
  5073. screen. */ 
  5074.  
  5075. /* dde_input = This must be passed to most functions. It allows the 
  5076. rxpmcomm.dll function to communicate with Pmcomm. */ 
  5077.  
  5078. /* dde_output = This must be passed to most functions. It allows the 
  5079. rxpmcomm.dll function to communicate with Pmcomm. */ 
  5080.  
  5081. /* semaphore = This also must be passed to any file transfer function. It makes 
  5082. your REXX program wait until the transfer has been completed. */ 
  5083.  
  5084. Call init_dll 
  5085.  
  5086. /* Required before any other rxpmcomm.dll functions are called. */ 
  5087.  
  5088. /* Setup variables  */ 
  5089.  
  5090. name = 'first;last'  /* where first is your first name and last is*/ 
  5091. pass = 'password'   /* your last name and password is your password.*/ 
  5092. cr  = '0d'x 
  5093.  
  5094. Call read_timeout '20000',port 
  5095.  
  5096. /* This sets the read timeout for 20 seconds. This is used in the Wait_for, 
  5097. Wait_fore, and the Get_ch functions. */ 
  5098.  
  5099. Say 'Waiting for first name ...' 
  5100.  
  5101. /* This will be printed on the REXX screen. */ 
  5102.  
  5103. Do Forever 
  5104.  
  5105. Call Wait_fore 'name', 'password', 'continue?','?->', port, screen_handle 
  5106.  
  5107. /* This call will echo all characters to the Pmcomm screen that come from the 
  5108. open communication port. When one of the strings are matched the function will 
  5109. return the index of the matched string in the variable result. For example if 
  5110. it receives the string password then the result will be equal to 2. If the 
  5111. function waits longer then the read timeout value then result will be equal to 
  5112. 0. */ 
  5113. match = result 
  5114.   Select 
  5115.    When match=1 then 
  5116.     Do 
  5117.      Call Put_s name||cr,port 
  5118.      Say 'Waiting for password ...' 
  5119.     End 
  5120.    When match=2 then Call Put_s pass||cr,port 
  5121.    When match=3 then Call Put_s cr,port 
  5122.    When match=4 then Exit 
  5123.   Otherwise nop 
  5124.   End 
  5125. End 
  5126. Say 'Script ended  -' date( ) time( ) 
  5127. Exit 
  5128.  
  5129.  
  5130. ΓòÉΓòÉΓòÉ 11.4.2. Internal Sample ΓòÉΓòÉΓòÉ
  5131.  
  5132. An example script to log onto a Multi-Net Communications BBS could be: 
  5133.  
  5134. wait_for ("first name"); 
  5135. puts ("john\n"); 
  5136. wait_for("last name"); 
  5137. puts("doe\n"); 
  5138. wait_for("password"); 
  5139. puts("password\n"); 
  5140. sleep (1000); 
  5141. puts("\n"); 
  5142.  
  5143. Scripts can be executed automatically when logging onto a BBS by specifying the 
  5144. script filename in the dialing directory for that phone number. You can execute 
  5145. a script from the File menu at anytime. 
  5146.  
  5147.  
  5148. ΓòÉΓòÉΓòÉ 12. Installing Pmcomm Host Mode ΓòÉΓòÉΓòÉ
  5149.  
  5150. To install Pmcomm's Host Mode, you must run the install program included on the 
  5151. Pmcomm disk. Make sure you answer all the Host mode questions (including the 
  5152. password). If you do not have a destination directory for Pmcomm listed, but do 
  5153. have a host directory listed, only the host mode will be installed. This can be 
  5154. usefully if you have already installed Pmcomm, and just want to install the 
  5155. host mode. The Fixed Baud check box should be checked for most high-speed 
  5156. modems (bauds above 2400 baud). This selection fixes the DTE to DCE baud, and 
  5157. will improve throughput on high-speed modems. If this is an "open" system new 
  5158. users will be stored in this file automatically. If this is a "closed" system 
  5159. only the people that are registered in this file will be able to access the 
  5160. Host Mode. This can be changed by editing the host.cmd file. When the host mode 
  5161. is installed it defaults to a "open" system. To change this edit host.cmd and 
  5162. change the open to closed. 
  5163.  
  5164. The six files that the install program creates are HOSTPASS.FLE, HOSTDIR.FLE, 
  5165. HOSTHEAD.FLE, HOST.SCR, HOSTNEWU.FLE, and HOSTHELP.FLE. The HOSTPASS.FLE file 
  5166. is where all of the users' names, passwords, securities, and last time on are 
  5167. stored. The HOSTDIR.FLE file is a list of the directories that have been 
  5168. created for the host mode. The HOSTHEAD.FLE file is the file that is displayed 
  5169. to users when they logon. The HOST.SCR file is the main executable script. The 
  5170. HOSTNEWU.FLE file is the file that is displayed to new users. In order for a 
  5171. user to be able to receive help from the menu, the HOSTHELP.FLE must contain 
  5172. the information that will be displayed. 
  5173.  
  5174. The Host mode is a REXX script and is started just like anyother REXX script. 
  5175. Once the script has been started Pmcomm is ready to receive calls. 
  5176.  
  5177.  
  5178. ΓòÉΓòÉΓòÉ 13. Using the timer program ΓòÉΓòÉΓòÉ
  5179.  
  5180. The Timer program allows the user to automatically start Pmcomm at a certain 
  5181. time. The options allows the user to specify a name of a file to be passed on 
  5182. the command line. This would be used to pass a command line option to Pmcomm on 
  5183. startup. See Command_line_options. 
  5184.  
  5185. With the execution frequency option you can choose the days that you wish 
  5186. Pmcomm to automatically start. This option in conjunction with the time option 
  5187. sets up Pmcomm for automatic startup. 
  5188.  
  5189. If you have the timer program set up as an object on the desktop, make sure the 
  5190. working directory for that object is the directory that Pmcomm is installed in. 
  5191.  
  5192.  
  5193. ΓòÉΓòÉΓòÉ 14. How To... ΓòÉΓòÉΓòÉ
  5194.  
  5195. This section gives you examples of how to set Pmcomm up to do different things. 
  5196.  
  5197.  
  5198. ΓòÉΓòÉΓòÉ 14.1. How to make Pmcomm receive incoming calls. ΓòÉΓòÉΓòÉ
  5199.  
  5200. To make Pmcomm receive an incoming call without using the Host Mode, send the 
  5201. following command to the modem. 
  5202.  
  5203. ATS0=1 
  5204.  
  5205. This can be setup as a macro and then you would have a button on the button bar 
  5206. to put you modem in auto answer. 
  5207.  
  5208.  
  5209. ΓòÉΓòÉΓòÉ 14.2. How to Use Pmcomm with a modem pool. ΓòÉΓòÉΓòÉ
  5210.  
  5211. Because Pmcomm does not use ACDI, and will allow you to enter any valid 12 
  5212. character name for a device, it will work with a shared serial port modem pool. 
  5213. This allows you to have modems on a server that users can access from their 
  5214. workstations. This can save a considerable about of money. 
  5215.  
  5216. First the ibmlan.ini file, on the Server and the Requesters, must be edited in 
  5217. order to operate Pmcomm in a modem pool. The "charwait" variable must be 
  5218. changed from it's default setting of 3600 to a setting of 3 and then re-boot 
  5219. the Server and all of the Requesters. 
  5220.  
  5221. The following is a flash from IBMLink on how to setup a modem pool using Pmcomm 
  5222. and Lan Server. 
  5223.  
  5224. The rest of this scenario concerns the OS/2 LAN Server definitions. When LAN 
  5225. Server definitions and actions are complete, defined users at any OS/2 
  5226. Requestor can run the program from the OS/2 Public Applications Window. The 
  5227. serial port and modem at the LAN Server will be shared. To begin, logon as an 
  5228. administrator in the proper domain. Then follow instructions for the following: 
  5229.  
  5230.  
  5231. a. Defining the shared modem 
  5232. b. Defining the shared program files 
  5233. c. Defining the program as a public OS/2 application 
  5234. d. Defining the working directory 
  5235. e. Sharing the modem and the program 
  5236. f. Assigning the modem and the program to the users as they log on. 
  5237.  
  5238. DEFINING THE SHARED MODEM 
  5239.   Follow this sequence: 
  5240.  
  5241.   DEFINITION 
  5242.   ALIASES 
  5243.   SERIAL DEVICES 
  5244.   --NEW-- (With cursor on --NEW--, press space bar to 
  5245.   choose, press enter or click on ACTION) 
  5246.   CREATE(Create a serial device alias - I used an 
  5247.       alias of MODEM1, chose COM1 from the device 
  5248.       pool using F4 for the list, and choose to 
  5249.       share the port at server startup) 
  5250.  
  5251.  
  5252. *-----------------------------------------------------------* 
  5253.  
  5254.               Create Alias - Serial Device 
  5255.  
  5256.   Complete the panel; then Enter. 
  5257.  
  5258.   Alias . . . . . . . . . . . . . . . MODEM1 
  5259.   Description . . . . . . . . . . . . Shared modem 
  5260.   Server Name . . . . . . . . . . . . Chosen with the F4 key 
  5261.   Server Device Pool. . . . . . . . . COM1 
  5262.   Priority. . . . . . . . . . . . . . 5 (chosen arbitrarily) 
  5263.   Maximum number of users . . . . . . (Number of shared serial ports) 
  5264.   When shared . . . . . . . . . > At server startup 
  5265.  
  5266. |-----------------------------------------------------------| 
  5267.  
  5268.   ENTER  Escape=Cancel  F1=Help  F4=List 
  5269.  
  5270. *-----------------------------------------------------------* 
  5271.  
  5272. DEFINING THE SHARED PROGRAM FILES 
  5273. Follow this sequence: 
  5274.   DEFINITION 
  5275.   ALIASES 
  5276.   FILES 
  5277.   --NEW-- (With cursor on --NEW--, press space bar to 
  5278.       choose, press enter or click on ACTION) 
  5279.   CREATE (Create the file alias) 
  5280.  
  5281. *---------------------------------------------------------* 
  5282.  
  5283.               Create Alias - Files 
  5284.  
  5285.   Complete the panel; then Enter. 
  5286.  
  5287.   Alias . . . . . . . . . . . . . . . PMCOMM 
  5288.   Description . . . . . . . . . . . . Program to access shared modem 
  5289.   Server Name . . . . . . . . . . . . Chosen with the F4 key 
  5290.   Server Path to Directory. . . . . . :OS2:ASYNC:PMCOMM 
  5291.  
  5292.   Maximum number of users . . . . . . (left blank) 
  5293.   When shared . . . . . . . . . > At server startup 
  5294.  
  5295. |---------------------------------------------------------| 
  5296.  
  5297.   ENTER  Escape=Cancel  F1=Help  F4=List 
  5298.  
  5299. *---------------------------------------------------------* 
  5300.  
  5301. DEFINING THE PROGRAM AS A PUBLIC OS/2 APPLICATION 
  5302. Follow this sequence: 
  5303.   DEFINITION 
  5304.   APPLICATION 
  5305.   PUBLIC OS/2 APPLICATION 
  5306.   --NEW-- (With cursor on --NEW--, press space bar to 
  5307.     choose, press enter or click on ACTION) 
  5308.   CREATE 
  5309.  
  5310. *----------------------------------------------------------* 
  5311.  
  5312.               Create OS/2 Application Details 
  5313.  
  5314.   Complete the panel; then Enter. 
  5315.  
  5316.   Application ID. . . . . . . . . . . PMCOMMX 
  5317.   Description . . . . . . . . . . . . Shared modem communications 
  5318.   Program location. . . . . . . . . . Remote 
  5319.   Drive or alias. . . . . . . . . . . PMCOMM 
  5320.   Remaining path to program . . . . . : 
  5321.   Command line. . . . . . . . . . . . PMCOMM.EXE 
  5322.   Prompt used for parameters? . . . . NO 
  5323.   Program type. . . . . . . . . . . . OS/2 PM 
  5324.  
  5325. |----------------------------------------------------------| 
  5326.  
  5327.   ENTER  Escape=Cancel  F1=Help  F4=List 
  5328.  
  5329. *----------------------------------------------------------* 
  5330.  
  5331. DEFINING THE WORKING DIRECTORY 
  5332.  
  5333. PMCOMM has support files that should reside in the working directory at 
  5334. the server. If this directory is not assigned, each user must have these 
  5335. files on their own disk. 
  5336.  
  5337.   Follow this sequence: 
  5338.   DEFINITION 
  5339.   APPLICATION 
  5340.   PUBLIC OS/2 APPLICATION 
  5341.   --PMCOMMX-- (With cursor on --PMCOMMX--, press space 
  5342.     bar to choose, press enter or click on 
  5343.     ACTION) 
  5344.   WORKING DIRECTORY 
  5345.  
  5346. *---------------------------------------------------------* 
  5347.  
  5348.                   Working Directory 
  5349.  
  5350.   Complete the panel; then Enter. 
  5351.  
  5352.   Working Directory . . . . . . . . . REMOTE 
  5353.   Drive or alias. . . . . . . . . . . PMCOMM 
  5354.   Remaining path to program . . . . . : 
  5355.   Assigned Drive. . . . . . . . . . . P (chosen arbitrarily) 
  5356.  
  5357. |---------------------------------------------------------| 
  5358.  
  5359.   ENTER  Escape=Cancel  F1=Help  F4=List 
  5360.  
  5361. *---------------------------------------------------------* 
  5362.  
  5363. SHARING THE PROGRAM AND THE MODEM 
  5364.   Follow this sequence: 
  5365.   ACTION 
  5366.   RESOURCE SHARING 
  5367.   --PMCOMM-- (With cursor on --PMCOMM--, press spacebar 
  5368.       to choose, press enter or click on ACTION) 
  5369.   START SHARING 
  5370.   --MODEM1-- (With cursor on --MODEM1--, press spacebar 
  5371.       to choose, press enter or click on ACTION) 
  5372.   START SHARING 
  5373.  
  5374. ASSIGNING RESOURCES TO USERS AS THEY LOG ON 
  5375.  
  5376.   Follow this sequence for each user, to assign MODEM1 as a user 
  5377.       logs on: 
  5378.   DEFINITION 
  5379.   USERS 
  5380.   -- User -- (With cursor on the user name, press F10) 
  5381.   LOGON 
  5382.   SERIAL DEVICE ASSIGNMENTS 
  5383.   Assign MODEM1 to a COM port 
  5384.  
  5385.   Follow this sequence for each user, to copy the program to the user's 
  5386.  
  5387.   START PROGRAMS window: 
  5388.   DEFINITION 
  5389.   USERS 
  5390.   -- User -- (With cursor on the user name, press spacebar 
  5391.       to choose, press enter or click on ACTION) 
  5392.   PROGRAM STARTER 
  5393.   --PMCOMMX-- (With cursor on --PMCOMMX-- press the 
  5394.       spacebar to choose) 
  5395.  
  5396.  
  5397. ΓòÉΓòÉΓòÉ 14.3. How to Use Pmcomm with IBMLink. ΓòÉΓòÉΓòÉ
  5398.  
  5399. If you have access to IBMLink (ask an IBM SE) you can use Pmcomm to call. The 
  5400. first thing you will need is a phone number that will work with Pmcomm. This 
  5401. type of number is called, an SS/EFS number. This stands for, Start Stop 
  5402. Enhanced Full Screen. It allows access to IBMLink through a 3708 protocol 
  5403. converter. To find a number in your area, ask your IBM SE, or order book number 
  5404. GC-34-22-34. It has a current list of all the public IBMLink phone numbers in 
  5405. it. 
  5406.  
  5407. Once you have the required phone number, you can add it to the Pmcomm dialing 
  5408. directory. You should set the Parity to Even, the Data bits to 7, and the Stop 
  5409. bits to 1. The terminal type should be set to VT220. Once connected you will 
  5410. see a prompt that asks you for your terminal type. If you press enter now it 
  5411. will display a list of available terminals. The best choice here is to select 
  5412. VT220, which is selection 18. By selecting VT220 you are able to use additional 
  5413. commands that are not available with VT100. If you select VT220 the first nine 
  5414. PF keys will be the numeric key pad keys (the num lock must be off). For 
  5415. example, PF1 will be the 1 on the key pad, PF2 will be 2 and so on. For PF10 it 
  5416. will be the F1 key, PF11 will be the F2 key and PF12 will be the F3 key. To do 
  5417. a reset press the Ctrl-R and to do a clear press the Ctrl-C. 
  5418.  
  5419. Once logged onto IBMLink just follow the prompts and you shouldn't have any 
  5420. problem. 
  5421.  
  5422.  
  5423. ΓòÉΓòÉΓòÉ 14.4. How to Use Pmcomm with ESDTools. ΓòÉΓòÉΓòÉ
  5424.  
  5425. Once you are logged onto ESDTools and have selected the files you wish to 
  5426. receive, press the PF9 key (using VT220 this is the 9 on the numeric keypad). 
  5427. ESDTools will then ask you which drive you will be receiving the file to. 
  5428. Choose any drive as this parameter will be ignored by Pmcomm. You will then be 
  5429. prompted for the operating system, select OS/2. The last selection will be for 
  5430. the type of connection (i.e. Asynch etc...), select the appropriate connection 
  5431. type. ESDTools will then tell you not to press the enter key until prompted to 
  5432. do so by your communications software. At this time select Transfer, Download 
  5433. from the Pmcomm menu. Once the transfer has completed you can then press the 
  5434. enter key to return to the file list menu. 
  5435.  
  5436.  
  5437. ΓòÉΓòÉΓòÉ 14.5. How to Use a REXX program as a script. ΓòÉΓòÉΓòÉ
  5438.  
  5439. A REXX program can be executed from Pmcomm by entering the name of the program 
  5440. name directly into the dialing_directory or from the start script menu. A REXX 
  5441. program can also be started by using the shell command in a macro. An example 
  5442. of this would be: 
  5443.  
  5444. shell("c:\pmcomm\plane.cmd"); 
  5445.  
  5446. This would execute the REXX script called plane.cmd. This allows you a quick 
  5447. and easy way to execute often used scripts. 
  5448.  
  5449.  
  5450. ΓòÉΓòÉΓòÉ 14.6. How to Use drag and drop. ΓòÉΓòÉΓòÉ
  5451.  
  5452. When files are dragged from the file manager and dropped onto Pmcomm's terminal 
  5453. emulation screen, the transfer protocol that is listed for that phone number 
  5454. will be invoked and the file(s) will be sent to the remote computer. If you 
  5455. have Monitor_DCD selected then drag options will not be allowed until connected 
  5456. with another computer. 
  5457.  
  5458. To drag files from the file manager under OS/2 1.3, or drive object under OS/2 
  5459. 2.0, select a file (or files) and then click on the selected file(s) with the 
  5460. RIGHT mouse button and hold the button down. Once you have begun to drag the 
  5461. files with the mouse the mouse pointer will change shape. If the mouse pointer 
  5462. is over a program that does not accept drag and drop the pointer will again 
  5463. change shape. When the mouse pointer is over any part of Pmcomm you can release 
  5464. the right mouse button. This will drop the files onto Pmcomm and Pmcomm will 
  5465. send them. This will even work if Pmcomm is an icon. 
  5466.  
  5467. To change the protocol for the current phone number, select upload from the 
  5468. menu and then select the protocol you want (make sure that the save to dialing 
  5469. directory is selected). After pressing the OK button the file open dialog box 
  5470. will be displayed. Just press cancel and you can now use the drag and drop with 
  5471. the new protocol. 
  5472.  
  5473. If a file is dropped onto Pmcomm while it is an icon in a group menu, this file 
  5474. will be used as a setup file, and Pmcomm will be invoked. 
  5475.  
  5476. The drag and drop feature is also available for two of the buttons on the 
  5477. Button Bar. For more information see Button_Bar. 
  5478.  
  5479.  
  5480. ΓòÉΓòÉΓòÉ 15. Troubleshooting. ΓòÉΓòÉΓòÉ
  5481.  
  5482. Following are some problems that may occur when using Pmcomm. 
  5483.  
  5484.  
  5485. ΓòÉΓòÉΓòÉ 15.1. Device Open error. ΓòÉΓòÉΓòÉ
  5486.  
  5487. This message is displayed if Pmcomm can not open the specified device. If you 
  5488. are trying to open COM1, for example, and another program already has it open 
  5489. then this message will be displayed. If you are using the communication ports 
  5490. on the machine you are running Pmcomm on (not across a LAN). Then you must have 
  5491. the communication port device driver installed. For example, you should have a 
  5492. statement in your config.sys file, DEVICE=C:\OS2\COM.SYS. If not you will get 
  5493. the device open error. 
  5494.  
  5495. If you get this message when trying to access a communication port on a server, 
  5496. refer to the Modem_Pool section. One of the common problems is not first 
  5497. logging onto the network before trying to access the communication port. Also 
  5498. make sure you use Alias names that don't conflict with names on the local 
  5499. machine. For example don't try to use the name COM1 for the name of the remote 
  5500. communication port, if you have a COM1 on your local machine. Instead use a 
  5501. name like COM5, which normally will not be used on your local machine. 
  5502.  
  5503.  
  5504. ΓòÉΓòÉΓòÉ 15.2. File transfers not available. ΓòÉΓòÉΓòÉ
  5505.  
  5506. If you have Monitor_DCD turned on under Port Options and Pmcomm does not detect 
  5507. DCD then the upload and download options will be greyed out. You can turn the 
  5508. Monitor DCD option off and you will then be able to transfer files. Some common 
  5509. reasons for Pmcomm not being able to detect are: 
  5510.  
  5511. Serial cable that does not support the DCD line. 
  5512. Modem not configured to have DCD follow the state of the phone line. 
  5513. Modem does not support DCD. 
  5514.  
  5515. The monitor DCD option should also be turned off if using Pmcomm with a modem 
  5516. pool. 
  5517.  
  5518.  
  5519. ΓòÉΓòÉΓòÉ 15.3. Pmcomm will not dial out. ΓòÉΓòÉΓòÉ
  5520.  
  5521. The most common cause of this is a DOS program that has corrupted the 
  5522. communication port. Compiled basic program that are executed in the DOS box, 
  5523. for example, will sometime poll the available devices. When this happens the 
  5524. communication device driver is effected and Pmcomm will not be able to send 
  5525. information to the communication port. When this happens you will have to IPL 
  5526. (boot) the computer. 
  5527.  
  5528.  
  5529. ΓòÉΓòÉΓòÉ 15.4. Typed characters do not echo to the screen. ΓòÉΓòÉΓòÉ
  5530.  
  5531. Some electronic information services, such as Genie, run in what is called 
  5532. "half-duplex" mode. When in this mode the typed characters are not echoed to 
  5533. the screen. Pmcomm's default mode is "full duplex" which lets the services, 
  5534. like Genie, echo the characters to the screen. To make Pmcomm echo the typed 
  5535. characters to the screen, select the Screen dialog box under the main Options 
  5536. menu and check local echo on. 
  5537.  
  5538.  
  5539. ΓòÉΓòÉΓòÉ 15.5. Help not available. ΓòÉΓòÉΓòÉ
  5540.  
  5541. This message will be displayed if Pmcomm can not find the pmcomm.hlp file in 
  5542. the current directory. If you have Pmcomm installed in a Group menu make sure 
  5543. that you have the working directory set to the directory that Pmcomm is 
  5544. installed in. 
  5545.  
  5546.  
  5547. ΓòÉΓòÉΓòÉ 15.6. Pmcomm locks with a shared serial port. ΓòÉΓòÉΓòÉ
  5548.  
  5549. If Pmcomm locks up when trying to access a shared serial port you must edit the 
  5550. ibmlan.ini file in the Server well as all of the Requesters. Change the 
  5551. variable "charwait" from its default of 3600, to 3 and then re-boot the Server 
  5552. and all of the Requesters. 
  5553.  
  5554.  
  5555. ΓòÉΓòÉΓòÉ 15.7. No valid file names were passed. ΓòÉΓòÉΓòÉ
  5556.  
  5557. Under OS/2 2.0, you can only drag files from a drive object, when doing 
  5558. uploads. If you have a script as an object you can only drag that script if the 
  5559. script resides in your script directory.