home *** CD-ROM | disk | FTP | other *** search
/ norge.freeshell.org (192.94.73.8) / 192.94.73.8.tar / 192.94.73.8 / pub / computers / pcjr / comm / FIDOTERM.LZH / F4.SCR < prev    next >
Text File  |  1988-04-20  |  2KB  |  105 lines

  1. ;
  2. ;This script is a very rudimentary dialing directory. It reads
  3. ;lines from TELNO.TXT, which can be anywhere in the set PATH.
  4. ;
  5. :main
  6.     unattended 1
  7.     jmp enter
  8. ;
  9. ;This is the main search loop. Its as close to the start of the file
  10. ;so that it will run as fast as possible; the JMP instructions are
  11. ;very slow because they search the file from the beginning! The IF
  12. ;instruction compares the given string in &1 against the contents 
  13. ;of the shift register, &S.
  14. ;
  15. :search
  16.     fread
  17.     jerror not-found
  18.     if "&1" dial
  19.     jmp search
  20. ;
  21. ;Set the baud rate and dial the number found. If it comes back
  22. ;connected, execute the signon script for this number, if any.
  23. ;
  24. :dial
  25.     fclose
  26.     message "Name:&1  Phone:&2  Speed:&3"
  27.     &b= &3
  28.     call dial "&2"
  29.     jerror end
  30.     &s= &4
  31.     if "" end
  32.     call "&4" "&5" "&6"
  33.     jmp end
  34. ;
  35. ;Check for the presence of the dialing directory, then ask for
  36. ;the name of the system to call. The name of the system to call
  37. ;is left in the Shift Register, &S. Entering a blank name ends
  38. ;the script execution.
  39. ;
  40. :enter
  41.     fclose
  42.     fopen "telno.txt"
  43.     jerror badfile
  44.     input "Call who? [*=browse >=display]"
  45.     &s= &1
  46.     if "" end
  47.     if "*" browse
  48.     if ">" list
  49.     jmp search
  50. ;
  51. ;Browse through the directory, ask Y or N at each number, if Y, dial it
  52. ;immediately.
  53. ;
  54. :browse
  55.     fread
  56.     jerror enter
  57.     ask "This one?  Name:&1  Phone:&2  Speed:&3"
  58.     jerror dial
  59.     jmp browse
  60. ;
  61. ;Can't find the directory file; ask to create a new one. No means
  62. ;just abort the script.
  63. ;
  64. :badfile
  65.     ask "No dialing directory TELNO.TXT; create a new one"
  66.     jerror nf0
  67.     jmp end
  68. ;
  69. ;Name not found; ask if we should add it to the directory. If not,
  70. ;go back and ask the "dial who" question again.
  71. ;
  72. :not-found
  73.     ask "&s isn't in the directory, want to add it?"
  74.     jerror nf1
  75.     jmp enter
  76. :nf0
  77.     fnew "telno.txt"
  78. :nf1
  79.     input "NAME  NUMBER  SPEED                "
  80.     ask "OK?  Name:\"&1\" Phone:\"&2\" Speed:\"&3\""
  81.     jerror nf2
  82.     jmp nf1
  83. :nf2
  84.     push &1
  85.     push &2
  86.     push &3
  87. :nf2a
  88.     input "SCRIPT TO USE AND ANY ARGUMENTS (name, etc)    "
  89.     ask "OK?  Script:\"&1\"  ARG1:\"&2\"  ARG2:\"&3\""
  90.     jerror nf3
  91.     jmp nf2a
  92. :nf3
  93.     &4= &1
  94.     &5= &2
  95.     &6= &3
  96.  
  97.     pop &3
  98.     pop &2
  99.     pop &1
  100.  
  101.     fwrite
  102.     jmp enter
  103. :end
  104.     fclose
  105.