[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference hydra::amiga_v1

Title:AMIGA NOTES
Notice:Join us in the *NEW* conference - HYDRA::AMIGA_V2
Moderator:HYDRA::MOORE
Created:Sat Apr 26 1986
Last Modified:Wed Feb 05 1992
Last Successful Update:Fri Jun 06 1997
Number of topics:5378
Total number of notes:38326

1100.0. "Need help with VT100 script" by FIXERS::BAKER (Tom Baker - Central Area Support) Sun Jan 24 1988 00:17

    I,m a new Amiga 500 owner and in the past 6 weeks or so I've managed
    to read all of these notes. This is my first home computer but with
    a little work on my part and lots of help from these notes I've
    solved almost all of my problems. I'm up and multitasking with Dave
    Wecker's VT100, Steve Drew's Shell, Steve Peters LA50 driver, ASDG ram
    and MACH15. Thanks a lot, guys.
    
    But there is one problem driving me nuts. I wrote a script to dial
    work and bound it to f10. It dials work (scholar modem), waits for
    # from the LAT, sends the LAT password (fsmis), gives the LAT my
    name, sets a forward character, connects to the vax and waits for
    username. Now instead of sending my name, it sends the lat password
    again (fsmis). Where is this coming from? It was sent three sends
    previous. I also notice that when I run a utility from VMS like
    MAIL or Kermit and give it a command, the command works but when
    the prompt returns there is fsmis again.??? This is V2.7 of VT100.
    The script follows. Any help greatly appreciated.
    
    /tom
    
Start:
         DELAY 1
         ON "Ready" GOTO Dial
         SEND ^B
         DELAY 2
         GOTO Start

Dial:
         ON "Attached" GOTO Lat
         SEND "a!"
         DELAY 60
         GOTO Start

Lat:
         ON "#" GOTO Latpass
         DELAY 1
         SEND ^M
         GOTO Lat

Latpass:
         DELAY 1
         SEND "fsmis^M"

         WAIT "Enter username>"
         DELAY 1
         SEND "baker^M"

         WAIT "Local>"
         DELAY 1
         SEND "set for `^M"

         WAIT "Local>"
         DELAY 1
         SEND "connect fixers^M"

         WAIT "Username: "
         DELAY 1
         SEND "baker^M"

         WAIT "Password: "
         DELAY 1
         SEND "xxxx^M"

         WAIT "$ "
         EXIT


    
T.RTitleUserPersonal
Name
DateLines
1100.1CIMNET::KYZIVATPaul KyzivatMon Jan 25 1988 01:1018
    I can't tell exactly what is happening without a log of the session,
    but I would guess the following.  The key thing is that an ON command
    in the script remains active until overridden, and fires whenever it
    matches.

    When things first go wrong, a # has probably been output.  This resets
    your script back to where it sends the LAT password.  After that, your
    script never gets back in sync with reality.  It is always waiting for
    something which does not come, and the ON for # is still lurking there.
    Whenever a # comes along, the script gets reset and sends the LAT
    password again.

    I had a lot of trouble with scripts which try to be too smart, looping
    back to recover from errors.  Either I could not anticipate all the
    right situations, or else there wasn't enough power in the script
    control language to do what was needed.  I finally gave up, and made a
    script which works in the standard case, and just exits when anything
    goes wrong.  I find this much easier to use.
1100.2a straightforward scriptCIMNET::KYZIVATPaul KyzivatMon Jan 25 1988 01:4250
I got cut off in the middle of the above while trying to pull in my
script.  Our LAT doesn't require a password, so I don't have to look for
the #.  If I did, I would be sure to use another ON immediately afterwards
to avoid spurious matches such as you seem to be getting.  My script
follows.

	Paul

###################################################################
# Script to dial and log in to KIRK
###################################################################
#
# Make sure that we have all the parameters we want
#
   BAUD   2400
   PARITY NONE
   MODE   IMAGE
   BREAK  750000
   CD     RAM:
#
BEGIN:
   ON    "Ready" GOTO LOOKUP
   SEND  "^B"
   DELAY 2
   EXIT
LOOKUP:
   ON    "-CIMNET-" GOTO DIAL
   SEND  "?CIMNET^M"
   DELAY 2
   EXIT
DIAL:
   ON    "Attached" GOTO ATTACHED
   SEND  "!"
   DELAY 60
   EXIT
ATTACHED:
   ON    "Enter username>" GOTO LAT
   SEND  "^M"
   DELAY 2
   GOTO  ATTACHED
LAT:
   SEND  "Kyzivat^M"
   DELAY 1
   SEND  "SET FORWARD ^\^M"
   DELAY 1
   SEND  "connect CIMNET^M"
   WAIT  "Username:"
   SEND  "Kyzivat^M"
   EXIT 
    
1100.3good answerFIXERS::BAKERTom Baker - Central Area SupportMon Jan 25 1988 02:285
    .1 was exactly right. I replaced my ON with a WAIT and everything
    works fine. I didn't realize the ON remained active after the first
    match.
    	thanks,
    	/tom