home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 3 Comm / 03-Comm.zip / CK5A188.ZIP / ckermit.ini next >
Text File  |  1993-02-02  |  19KB  |  567 lines

  1. COMMENT - Standard C-Kermit initialization file
  2. ;
  3. ; For C-Kermit Version: 5A(188)
  4. ;
  5. ; Filename:
  6. ;   .kermrc     (UNIX, OS-9)
  7. ;   CKERMIT.INI (OS/2, VMS, OpenVMS, AOS/VS, Atari ST, Commodore Amiga)
  8. ;
  9. ; Authors:
  10. ;   Frank da Cruz, Christine M. Gianone
  11. ;   Columbia University, New York, NY, USA
  12. ;
  13. ; Date: 23 November 1992
  14. ; Last update: Thu Nov 26 11:15:44 1992: OS-9 changes and other fixes
  15. ;
  16. ; This is the standard and recommended C-Kermit 5A initialization file.
  17. ; It should be portable to all implementations of C-Kermit 5A edit 188
  18. ; and later.  To override settings or definitions made in this file, to
  19. ; add new settings or definitions, or to make any other desired
  20. ; customizations, create a separate, personal customization file called: 
  21. ;
  22. ;   .mykermrc     (UNIX, OS-9)
  23. ;   CKERMOD.INI   (OS/2, VMS, OpenVMS, AOS/VS, Atari ST, Commodore Amiga)
  24. ;
  25. ; You can also define the customization filename in an environment
  26. ; variable (logical name in VMS), CKERMOD, which takes precedence over
  27. ; the names shown above.
  28. ;
  29. ; WHAT THIS FILE DOES:
  30. ;
  31. ; . The FULLSCREEN file transfer display is selected if it is available
  32. ; . Defines your default dialing directory name:
  33. ;     .kdd for UNIX and OS-9, CKERMIT.KDD for other operating systems.
  34. ;        You can override this with the environment variable CKDDIR.
  35. ; . Defines your default services directory name:
  36. ;     .ksd for UNIX and OS-9, CKERMIT.KSD for other operating systems.
  37. ;        You can override this with environment variable CKSDIR.
  38. ; . Defines your customization file name (name given above)
  39. ; . Performs system-dependent setups for UNIX, VMS, OS/2, etc.
  40. ; . Defines an EDIT macro to let you invoke a text editor from C-Kermit.
  41. ; . Defines TSEND, BSEND, TGET, BGET macros for text and binary file transfer.
  42. ; . Defines VTPRINT, PCGET, and PCSEND macros for use with MS-DOS Kermit.
  43. ; . Opens your dialing directory if you have one.
  44. ; . Reads your services directory and defines ACCESS and LIST macros for it.
  45. ; . Executes your personal customization file, if you have one.
  46. ;
  47. ; C-Kermit 5A is documented in the book "Using C-Kermit" by Frank da Cruz
  48. ; and Christine M. Gianone, Digital Press, Burlington, MA, USA.  Digital
  49. ; Press ISBN: 1-55558-108-0; Prentice-Hall ISBN: 0-13-037490-3.  Price: US
  50. ; $34.95.  Available: Winter 1992.
  51.  
  52. ; Everything after this point depends on the script programming language.
  53. ; The CHECK command terminates this command file immediately if the script
  54. ; programming language (IF command) is not configured.
  55. ;
  56. set take error on        ; This makes CHECK quit if no script language.
  57. check if            ; Do we have an IF command?  If not, quit now.
  58. set take error off        ; Back to normal.
  59.  
  60. COMMENT - Greet and make sure C-Kermit edit is 188 or higher.
  61. ;
  62. echo Executing \v(cmdfile) for \v(system)...
  63. if < \v(version) 501188 -
  64.   stop 1 \v(cmdfile): C-Kermit 5A(188) or later required.
  65.  
  66. define _dedit            ; No default editor yet.
  67. goto \v(system)            ; First do system-dependent items...
  68.  
  69. :unknown            ; Should not happen
  70. Stop 1 Error: System type unknown!
  71.  
  72. :UNIX                ; UNIX, all versions
  73. assign _dialdir -
  74.   \v(home).kdd            ; C-Kermit dialing directory
  75. assign _servicedir -
  76.   \v(home).ksd            ; C-Kermit services directory
  77. assign _myinit -
  78.   \v(home).mykermrc        ; Customization filename
  79. check fullscreen        ; Do we have a fullscreen display?
  80. if success set file displ full  ; If so, use it.
  81. define _dedit vi        ; Default editor is VI
  82. goto common                     ; End of UNIX section
  83.  
  84. :OS9/68K            ; OS-9
  85. assign _dialdir -
  86.   \v(home).kdd            ; C-Kermit dialing directory
  87. assign _servicedir -
  88.   \v(home).ksd            ; C-Kermit services directory
  89. assign _myinit -
  90.   \v(home).mykermrc        ; Customization filename
  91. if eq "\$(TERM)" "vt100" -      ; File transfer display
  92.   set file display full         ; Only works with VT-100 terminal type
  93. else if eq "\$(TERM)" "VT100" -
  94.   set file display full
  95. else set file display crt
  96. goto common            ; End of OS-9 section
  97.  
  98. :VMS                ; VMS and OpenVMS
  99. define _dedit edit        ; Default editor is EDIT.
  100. set file display fullscreen     ; File transfer fisplay
  101. goto common
  102.  
  103. :OS/2                ; OS/2
  104. define _dialdir    C:/CKERMIT/CKERMIT.KDD
  105. define _servicedir C:/CKERMIT/CKERMIT.KSD
  106. define _myinit     C:/CKERMIT/CKERMOD.INI
  107. set file display fullscreen     ; File transfer fisplay
  108. set server display on        ; Show display in server mode too.
  109. define _dedit e            ; Default editor is E.
  110. set command bytesize 8          ; Use 8 bits between Kermit and console.
  111. set xfer char latin1            ; Use Latin-1 for text file transfer.
  112. define cls echo \27[H\27[2J     ; Define CLS command to clear the screen.
  113. define os2 push            ; Make OS2 a synonym for PUSH, RUN, etc.
  114. define more run more < \%1    ; Easy access to MORE command.
  115. define vdir run dir | more    ; "Verbose" DIRECTORY
  116. define tdir run dir /o-d | more ; Reverse Time-Order DIRECTORY
  117. goto common                     ; End of OS/2 section
  118.  
  119. :AOS/VS                ; Data General AOS/VS
  120. define _dedit sed        ; Default editor is SED
  121. set file char dg-international    ; File character-set
  122. set xfer char latin1        ; Transfer character-set
  123. set file display crt            ; File transfer fisplay
  124. define cli push            ; Escape to CLI
  125. define reset -            ; Macro to reset DG DASHER terminal
  126.  run write [!ascii 236 306 301]
  127. goto common                     ; End of AOS/VS section
  128.  
  129. :Amiga                ; Commodore Amiga
  130. define cls echo \27[H\27[2J     ; CLS command to clear the screen
  131. set file display full           ; Supports fullscreen display
  132. set file char latin1        ; Use Latin Alphabet 1 for file transfer
  133. set xfer char latin1        ; ...
  134. goto common                     ; End of Amiga section
  135.  
  136. :Atari_ST            ; Atari ST
  137. define cls echo \27H\27J    ; Clear screen a`la VT52
  138. set file display crt        ; FULLSCREEN not available
  139. set server display on        ; Show file xfer display in server mode too
  140. set server timeout 15        ; Nonzero required for ^C interruption!
  141. goto common                     ; End of Atari ST section
  142.  
  143. :Macintosh            ; Apple Macintosh
  144. set server display on        ; Show file xfer display in server mode too.
  145.  
  146. :COMMON                ; System-independent items
  147.  
  148. ; Make the C-Kermit prompt show my current directory.
  149. ; Environment variable or logical name CKPROMPT takes precedence.
  150. ;
  151. if def \$(CKPROMPT) set prompt \$(CKPROMPT)
  152.   else if eq "\v(system)" "VMS" set prompt \v(dir) C-Kermit>
  153.   else  set prompt [\v(dir)] C-Kermit>
  154.  
  155. COMMENT - Macros to send and get binary and text files.
  156. ;
  157. define bsend set file type binary, send \%1 \%2         ; Send binary file(s)
  158. define tsend set file type text, send \%1 \%2         ; Send text file(s)
  159. define bget remote set file type binary, -           ; Get binary file(s)
  160.   if success get \%1 \%2                             ;  from server
  161. define tget remote set file type text, -             ; Get text file(s)
  162.   if success get \%1                                 ;  from server
  163.  
  164. COMMENT - EDIT macro.
  165. ;
  166. ; EDITOR environment variable, if defined, takes precedence.
  167. ;
  168. check push            ; Only works if we have a PUSH command
  169. if fail goto macros        ; (so it doesn't work on the Macintosh).
  170.  
  171. if def \$(EDITOR) assign myeditor \$(EDITOR)
  172.   else assign myeditor \m(_dedit)
  173. if not def myeditor def myeditor edit
  174. define _dedit
  175. define myfile
  176.  
  177. define edit if = \v(argc) 2 assign myfile \%1,-
  178.   if not def myfile echo Edit what?,-
  179.   else run \m(myeditor) \m(myfile)
  180.  
  181. :MACROS
  182.  
  183. ; Define macros that are useful when running C-Kermit in remote mode.
  184. ; These macros serve no purpose on local-mode-only versions such as
  185. ; OS/2, Macintosh, Amiga, and Atari ST Kermit, so we skip defining them
  186. ; for those systems.
  187. ;
  188. if = 0 \findex(\v(system),OS/2:Macintosh:Amiga:Atari_ST) goto files
  189.  
  190. COMMENT - VTPRINT macro.  Print a file on your PC's local printer.
  191. ;
  192. define vtprint echo \27[5i, type \%1, echo \27[4i
  193.  
  194. COMMENT - PCGET macro, for use with MS-DOS Kermit.  Argument:
  195. ; 1 = Name of file to get from MS-DOS Kermit.
  196. ; Requires MS-DOS Kermit macro TERMINALS defined as "server, connect".
  197. ;
  198. define pcget echo \27[\?34h, get \%1, finish
  199.  
  200. COMMENT - PCSEND macro, for use with MS-DOS Kermit.  Arguments:
  201. ; \%1 = Name of file to send to MS-DOS Kermit.
  202. ; \%2 = Optional name to send it with.
  203. ; Requires MS-DOS Kermit macro TERMINALR defined as "receive, connect".
  204. ;
  205. define pcsend asg \%9 \ffiles(\%1),-
  206.   if = 0 \%9 end 1 {\?File not found},-
  207.   set delay 1, echo \27[\?34l,-
  208.   if = 1 \%9 send \%1 \%2,-  ; Single file with as-name
  209.   else send \%1              ; or wildcard with no as-name
  210.  
  211. :FILES
  212.  
  213. ; Get customization, dialing directory, and services directory filenames.
  214. ; Let environment variables take precedence, so users do not have to edit
  215. ; this file to change these filenames.
  216. ;
  217. if def \$(CKERMOD) assign _myinit \$(CKERMOD)
  218. if not def _myinit assign _myinit \v(home)CKERMOD.INI
  219.  
  220. if def \$(CKDDIR) assign _dialdir \$(CKDDIR)
  221. if not def _dialdir assign _dialdir \v(home)CKERMIT.KDD
  222.  
  223. if def \$(CKSDIR) assign _servicedir \$(CKSDIR)
  224. if not def _servicedir assign _servicedir \v(home)CKERMIT.KSD
  225.  
  226. CHECK DIAL            ; Is the DIAL command enabled?
  227. xif fail { -            ; No.
  228.     echo DIAL disabled -
  229. } else { -            ; Yes, check for and open the dial directory.
  230.     xif exist \m(_dialdir) { -
  231.         set dial directory \m(_dialdir), -
  232.         echo { Dial directory is \m(_dialdir) } -
  233.     } -
  234. }
  235.  
  236. COMMENT - Check for existence of services directory
  237. ;
  238. if not exist \m(_servicedir) goto noservices
  239.  
  240. COMMENT - Have services directory, so read it and define related macros
  241. ;
  242. echo { Services directory is \m(_servicedir)}
  243.  
  244. def max_svcs 50               ; Adjust this if you have more than 50 entries!
  245. open read \m(_servicedir)     ; Open services directory file
  246. xif fail { -
  247.     echo Can't open \m(_servicedir), -
  248.     goto noservices -
  249. }
  250. declare \&d[\m(max_svcs)]     ; Declare array for service directory entries
  251. for \%i 1 \m(max_svcs) 1 { -  ; Read entries into array
  252.     read \&d[\%i], -
  253.     if fail goto done -
  254. }
  255. close read                    ; Didn't reach the end
  256. echo -                        ; Close the file and print useful message
  257.   \?Too many entries in services directory:
  258. echo { Maximum is \m(max_svcs).}
  259. echo { Change definition of max_svcs in \v(cmdfile) to allow more. }
  260. echo { Services directory disabled.}
  261. goto noservices
  262.  
  263. :DONE                         ; We have the services directory in memory
  264. asg \&d[0] \feval(\%i - 1)    ; Keep size of array in zeroth element
  265.  
  266. ; LIST macro.  Arguments:
  267. ; \%1 = service name (optional)
  268. ;
  269. define LIST -
  270.   if > \v(argc) 1 goto search, -
  271.   echo \&d[0] items in services directory:, -   ; No search item
  272.   for \%i 1 \&d[0] 1 { echo \&d[\%i] }, end, -  ; List whole directory
  273. :search, -                                      ; Search item given
  274.   lookup \%1, -                                 ; Look it up
  275.   if def \v(return) echo \v(return), -          ; List it if found
  276.   else echo \%1: Not found                      ; or say it wasn't
  277.  
  278. COMMENT - SERIAL macro.  Arguments:
  279. ; \%1 = device name
  280. ; \%2 = speed
  281. ;
  282. define SERIAL -
  283.   if < \v(argc) 3 -                       ; All arguments given?
  284.     end 1 Usage: SERIAL device speed,-    ; No.
  285.   set line \%1,-                          ; OK, try to SET LINE.
  286.   if failure -                            ; If this failed,
  287.     end 1 Can't open device: \%1,-        ; print message and quit.
  288.   set speed \%2,-                         ; Try to set the speed.
  289.   if fail end 1 Unsupported speed: \%2,-  ; Failed.
  290.   echo Connection successful.             ; Succeeded.
  291.  
  292. COMMENT - NET macro.  Arguments:
  293. ; \%1 = network type
  294. ; \%2 = host name or address
  295. ;
  296. define NET if < \v(argc) 3 end 1 Usage: NET network host,-
  297.   set network \%1,-
  298.   if fail end 1 unsupported network: \%1,-
  299.   set host \%2,-
  300.   if fail end 1 can't reach host: \%2,-
  301.   echo Connection successful.
  302.  
  303. COMMENT - CALL macro.  Arguments:
  304. ;
  305. ; \%1 = modem type
  306. ; \%2 = device name
  307. ; \%3 = speed
  308. ; \%4 = phone number
  309. ;
  310. define CALL if < \v(argc) 5 end 1 Usage: CALL modem device speed number,-
  311.   set modem \%1,-
  312.   if fail end 1 unknown modem type: \%1,-
  313.   set line \%2,-
  314.   if fail end 1 can't open device: \%2,-
  315.   set speed \%3,-
  316.   if fail end 1 unsupported speed: \%3,-
  317.   for \%i 1 10 1 { -
  318.     xif > \%i 1 { -
  319.         echo Will redial in 1 minute: please wait...,-
  320.         pause 60,-
  321.         echo Redialing: try number \%i...,-
  322.     },-
  323.     dial \%4,-
  324.     if success goto ok,-
  325.     hangup,-
  326.   } -
  327.   end 1 Can't place call: \%4,-
  328.   :ok,-
  329.   pause 1,-
  330.   echo Connection successful.
  331.  
  332. COMMENT - SPRINT macro.  Arguments:
  333. ; \%1 = Service name or address
  334. ;
  335. define SPRINT -
  336.     if < \v(argc) 2 end 1 Usage: \%0 service,-
  337.     set input timeout proceed,-
  338.     output \13\13,-
  339.     input 10 TERMINAL=,-
  340.     if fail end 1 No terminal prompt,-
  341.     out D1\13,-
  342.     inp 10 @,-
  343.     if fail end 1 No atsign prompt,-
  344.     output c \%1\13,-
  345.     input 10 CONNECTED,-
  346.     if fail end 1 Can't access \%1 from SprintNet
  347.  
  348. COMMENT - VMSLOGIN macro.  Arguments:
  349. ; \%1 = VMS user ID
  350. ; \%2 = Password.  If password not supplied, it is prompted for.
  351. ;
  352. define VMSLOGIN if < \v(argc) 2 end 1 Usage: VMSLOGIN userid password,-
  353.     while not defined \%2 { -
  354.         askq \%2 { \%1's password: } -
  355.     },-
  356.     set parity none,-
  357.     set duplex full,-
  358.     set handshake none,-
  359.     set flow xon/xoff,-
  360.     define input timeout proceed,-
  361.     for \%i 1 3 1 { -
  362.         out \13,-
  363.         in 5 Username:,-
  364.         if success goto dologin -
  365.     },-
  366.     end 1 No Username prompt,-
  367. :dologin,-
  368.     out \%1\13,-
  369.     inp 5 Password:,-
  370.     if fail end 1 No password prompt,-
  371.     out \%2\13,-
  372.     def \%2,-
  373.     set inp ech off,-
  374.     inp 10 \27Z,-
  375.     if success output \27[\?1c,-
  376.     set inp ech on,-
  377.     inp 60 {\13\10$ },-                 ; CHANGE THIS IF NECESSARY!
  378.     if fail end 1 No system prompt,-
  379.     echo Login successful.
  380.  
  381. COMMENT - UNIXLOGIN macro.  Arguments:
  382. ; \%1 = user ID
  383. ; \%2 = password
  384. ;
  385. define UNIXLOGIN if < \v(argc) 2 end 1 Usage: \%0 userid password,-
  386.     while not defined \%2 { -
  387.         askq \%2 { \%1's password: } -
  388.     },-
  389.     set parity none,-
  390.     set duplex full,-
  391.     set handshake none,-
  392.     set flow xon/xoff,-
  393.     set case on,-
  394.     out \13,-
  395.     define input timeout proceed,-
  396.     for \%i 1 15 1 { -
  397.         in 5 login:,-
  398.         if success goto dologin,-
  399.         output \\B -
  400.     },-
  401.     end 1 No login prompt,-
  402. :dologin,-
  403.     out \%1\13,-
  404.     inp 5 Password:,-
  405.     if fail end 1 No password prompt,-
  406.     out \%2\13,-
  407.     def \%2,-
  408.     inp 60 {\13\10$ },-                 ; CHANGE THIS IF NECESSARY!
  409.     if fail end 1 No system prompt,-
  410.     echo Login successful.
  411.  
  412. COMMENT - VMLINELOGIN macro.  Arguments:
  413. ; \%1 = User ID
  414. ; \%2 = Password
  415. ;
  416. define VMLINELOGIN -
  417.     if < \v(argc) 2 end 1 Usage: \%0 userid password,-
  418.     while not defined \%2 { -
  419.         askq \%2 { \%1's password: } -
  420.     },-
  421.     set parity mark,-
  422.     set flow none,-
  423.     set handshake xon,-
  424.     set duplex half,-
  425.     set input timeout quit,-
  426.     input 10 BREAK KEY,-
  427.     pause 1,-
  428.     output \\B,-
  429.     input 10 .\17, output login \%1\13,-
  430.     input 10 .\17, output \%2\13,-
  431.     input 10 .\17, output \13,-
  432.     input 10 .\17, output \13,-
  433.     set input timeout proceed,-
  434.     echo Login successful.
  435.  
  436. COMMENT - VMFULLOGIN macro.  Arguments:
  437. ; \%1 = User ID
  438. ; \%2 = Password
  439. ;
  440. define VMFULLOGIN -
  441.     if < \v(argc) 2 end 1 Usage: \%0 userid password,-
  442.     while not defined \%2 { -
  443.         askq \%2 { \%1's password: } -
  444.     },-
  445.     set input timeout quit,-
  446.     set parity even,-
  447.     set duplex full,-
  448.     set handshake none,-
  449.     set flow xon/xoff,-
  450.     out \13,-
  451.     inp 5 TERMINAL TYPE:,-
  452.     out vt-100\13,-
  453.     inp 20 RUNNING,-
  454.     pau 1,-
  455.     out \%1\9\%2\13,-
  456.     out \13\13,-
  457.     set input timeout proceed,-
  458.     echo Login successful.
  459.  
  460. COMMENT - CISLOGIN macro for CompuServe.  Arguments:
  461. ; \%1 = CompuServe User ID
  462. ; \%2 = Password
  463. ;
  464. define CISLOGIN -
  465.     if < \v(argc) 2 end 1 Usage: \%0 userid password,-
  466.     while not defined \%2 { -
  467.         askq \%2 { \%1's password: } -
  468.     },-
  469.     set input timeout quit,-
  470.     output \13,-
  471.     input 5 Host Name:,-
  472.     output cis\13,-
  473.     input 5 User ID:,-
  474.     output \%2\13,-
  475.     input Password:,-
  476.     output \%3\13,-
  477.     input 20 Enter Choice!,-
  478.     set input timeout proceed,-
  479.     echo Login successful.
  480.  
  481. COMMENT - DOWLOGIN macro for Dow Jones News/Retrieval.  Arguments:
  482. ; \%1 = Dow Jones Password
  483. ;
  484. define DOWLOGIN -
  485.     while not defined \%1 { -
  486.         askq \%1 { Dow Jones password: } -
  487.     },-
  488.     define input timeout proceed,-
  489.     input 20 SERVICE PLEASE\?\?\?\?,-
  490.     if fail end 1 no service prompt,-
  491.     out djnr\13,-
  492.     input 10 @@@@,-
  493.     if fail end 1 No password prompt,-
  494.     pause 1,-
  495.     output \%1\13,-
  496.     input 20 ENTER QUERY,-
  497.     if fail end 1 No main query prompt,-
  498.     pause 1@,-
  499.     echo Login successful.
  500.  
  501. COMMENT - DJNRSPRINT macro: Log in to Dow Jones via SprintNet.
  502. ;
  503. define djnrsprint sprint dow, dowlogin
  504.  
  505. COMMENT - NOLOGIN macro.  Does nothing.  Use when login not required.
  506. ;
  507. define nologin comment
  508.  
  509. COMMENT - LOOKUP macro.  Argument:
  510. ; \%1 = Service name to look for in services directory
  511. ;
  512. define LOOKUP -
  513.     set case off,-          ; Ignore alphabetic case
  514.     for \%i 1 \&d[0] 1 { -  ; Loop thru services directory
  515.         if eq \%1 \fsubstr(\&d[\%i],1,\flen(\%1)) - ; Got a match?
  516.           break -           ; If so, we're done
  517.     },-
  518.     if not > \%i \&d[0] return \&d[\%i] ; Return the entry
  519.  
  520. define DOACCESS -        ; (Used internally by ACCESS macro)
  521.     asg \%1 \fsubstr(\%1,2),-   ; Trim password argument
  522.     do \%5 \%6 \%7 \%8 \%9,-    ; Do the connection macro
  523.     if success do \%3 \%4 \%1   ; Do the login macro
  524.  
  525. ; ACCESS macro.  Arguments:
  526. ; \%1 = service name
  527. ; \%2 = password (optional)
  528. ;
  529. define ACCESS -
  530.     if not defined \%1 end 1 access what?,-      ; Check service
  531.     lookup \%1,-                                 ; Look it up
  532.     if success doaccess { \%2} \v(return),-      ; OK, try it
  533.     else end 1 "\%1" not in services directory,- ; Not found
  534.     if fail stop 1                               ; DOACCESS failed?
  535.  
  536. goto endservices        ; Skip around NOSERVICES definitions.
  537.  
  538. :NOSERVICES
  539. define access echo { Services directory not available.}
  540. assign list \m(access)
  541.  
  542. :ENDSERVICES
  543.  
  544. COMMENT - In VMS and OpenVMS, allow for system-wide site customizations
  545. ;
  546. if not equal "\v(system)" "VMS" goto custom
  547. xif exist CKERMIT_INI:CKERMIT.SYS { -
  548.     echo Executing CKERMIT_INI:CKERMIT.SYS, -
  549.     take CKERMIT_INI:CKERMIT.SYS
  550. }
  551.  
  552. COMMENT - Execute user's personal customization file
  553. ;
  554. :CUSTOM
  555. xif exist \m(_myinit)  { -        ; If it exists,
  556.     echo Executing \m(_myinit)..., -    ; print message,
  557.     take \m(_myinit) -            ; and TAKE the file.
  558. }
  559.  
  560. COMMENT - Greeting.
  561. ;
  562. if < \v(ntime) 43200 echo Good Morning!
  563.   else if < \v(ntime) 61200 echo Good Afternoon!
  564.   else echo Good Evening
  565.  
  566. ; End of C-Kermit 5A initialization file.
  567.