home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 June / SIMTEL_0692.cdr / msdos / kermit / msiibm.arc / HAYES.SCR < prev    next >
Encoding:
Text File  |  1989-01-20  |  2.9 KB  |  54 lines

  1. ; HAYES.SCR
  2. ; MS-Kermit Script for dialing a Hayes 2400 modem.
  3. ; Requires MS-Kermit 2.32 or later and a Hayes 2400 (not 1200) modem.
  4. ; To use, first: define dial take hayes.scr
  5. ; Then: dial nnnnnnn (where nnnnnnn is the phone number)
  6. ; C. Gianone, Columbia University, December 1988
  7. ;
  8. def errstop echo \%1\13, def \%1, hang, stop ; Error handler.
  9. if not defined \%1 errstop {Please supply a phone number!}
  10. assign \%n \%1                       ; Copy the phone number.
  11. clear                                ; Clear the input buffer.
  12. set speed 2400                       ; Dial at high speed.
  13. wait 2 \cts                          ; Is modem turned on?
  14. if fail errstop {Please turn on your modem.} ; No.
  15. echo Initializing modem...\13\10     ; Yes.
  16. output ATZ\13                        ; Reset the modem.
  17. pause 2                              ; Give it a little time.
  18. output AT F1 Q0 V1 X4 S0=0\13        ; Put modem in known state.
  19. input 8 OK                           ; Look for response.
  20. if fail errstop {Can't initialize modem.}
  21. pause 1                              ; Pause for a second first.
  22. set count 5                 ; Set the redial limit.
  23. define \%d \13Dialing                ; Initial dial message.
  24. :REDIAL
  25. echo \%d \%n...\13\10                ; Tell them we're dialing.
  26. output ATDT\%n\13                    ; Dial the phone number.
  27. clear                                ; Clear away the command echo.
  28. input 60 CONNECT             ; Wait for CONNECT message.
  29. if success goto speed                ; Got it, go check speed.
  30. define \%m No dialtone or no answer. ; Make this the error message.
  31. reinput BUSY                         ; Didn't connect.  Was it busy?
  32. if failure errstop {\%m\10\13Try again later.} ; No
  33. Echo \13Busy...                      ; It's busy, let them know.
  34. hangup                               ; Drop DTR momentarily. 
  35. pause 60                             ; Wait one minute.
  36. define \%d \13Redialing              ; Change message to "Redialing".
  37. if count goto redial                 ; Then go redial.
  38. define \%m \13Line busy.             ; After 5 tries set this message.
  39. :SPEED                               ; Connected!
  40. pause 1                              ; Wait for text after CONNECT.
  41. define \%s 2400                      ; Assume speed is 2400.
  42. reinput 1 2400                       ; Rescan current text for "2400"
  43. if success goto done                 ; It is.
  44. define \%s 1200                      ; It isn't, so assume 1200.
  45. reinput 1 1200                       ; Is it?
  46. if failure define \%s 300            ; It isn't, so it must be 300.
  47. :DONE                                ; We know the speed.
  48. set speed \%s                        ; So set it.
  49. echo Connecting at \%s bps...\13     ; Tell the user.
  50. pause 2                              ; Give her a chance to read it.
  51. set terminal clear                   ; Clear screen.
  52. define \%1                           ; Clear argument.
  53. connect                              ; And start terminal emulation.
  54.