home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
comm
/
qmqmpc31.zip
/
PCBOARD.SCR
< prev
next >
Wrap
Text File
|
1989-12-28
|
11KB
|
374 lines
;---------------------------------------------------------------------
; Qmodem's Generic PCBoard ProLogon Qmail PCBud Fully Automatic Script
; Filename: PCBOARD.SCR - QMODEM SCRIPT FOR GENERIC PCBoard LOGONS
; Attach to Qmodem phone directory entries for proper operation.
; -> Brad Berson 12/28/89, version 3.1
;---------------------------------------------------------------------
;
STRING name updn qdir qbbs qmdn spro bord udsg
;
ASSIGN name "Brad Berson" ; And what's YOUR name?
ASSIGN qdir "C:\COMM\QMAIL" ; Directory for Qmail files
ASSIGN qmdn "S" ; (S)ystem or door number
ASSIGN udsg "Y" ; UD.SEG flag
ASSIGN 4 0 ; Name error counter
BEEP 1000
BEEP 1200
BEEP 1000
BEEP 1200
BEEP 1000
;
TIMEOUT 10 ENDD ; Assume PCboard if no ID
ASSIGN bord "PCBOARD"
WHEN "PCboard" ENDD ; Decide PCboard / ProLogon
WHEN "ProLogon" PRLG
WHEN "change? " "^~1^M" ; For PCBoards with lang option
WAITFOR "phlegm" ; How about boogerblobs?
PRLG:
ASSIGN bord "PROLOGON"
ENDD:
WAITFOR "=no? " ; The graphics prompt
TIMEOUT 60 ERRH
TURNOFF MUSIC
GRAPHICS ANSI
WHEN
;---------------------------------------------------------------------
IF "$board" = "Sound of Music" SOM
IF "$board" = "Gateways" GATE
IF "$board" = "Innovative Computer Service" ICS
IF "$board" = "Invention Factory" INVF
IF "$board" = "High Tech" TECH
IF "$board" = "Forbin Project" FORB
IF "$board" = "Moondog" MOON
IF "$board" = "Phantasm" PHAN
IF "$board" = "ExecNet" EXEC
IF "$board" = "Running Board" RUNN
IF "$board" = "Thunder Road" THUN
IF "$board" = "Pharmstat" RX
GOTO STRT2
SOM:
ASSIGN qbbs "MUSIC"
ASSIGN qmdn "2"
ASSIGN spro "Q"
GOTO STRT1
GATE:
ASSIGN qbbs "GATEWAYS"
ASSIGN qmdn "5"
ASSIGN spro "Q"
GOTO STRT1
INVF:
ASSIGN qbbs "INV-FAC"
ASSIGN qmdn "10"
ASSIGN spro "Q"
GOTO STRT1
ICS:
ASSIGN qbbs "ICS-BBS"
ASSIGN qmdn "2"
ASSIGN spro "Q"
GOTO STRT1
FORB:
ASSIGN qbbs "QMODEM"
ASSIGN qmdn "7"
ASSIGN spro "Q"
GOTO STRT1
MOON:
ASSIGN qbbs "MOONDOG"
ASSIGN qmdn "9"
ASSIGN spro "Q"
GOTO STRT1
PHAN:
ASSIGN qbbs "PHANTASM"
ASSIGN qmdn "3"
ASSIGN spro "Q"
GOTO STRT1
EXEC:
ASSIGN qbbs "EXECNET"
ASSIGN qmdn "17"
ASSIGN spro "Q"
GOTO STRT1
RUNN:
ASSIGN qbbs "NYRUN"
ASSIGN qmdn "4"
ASSIGN spro "Q"
GOTO STRT1
THUN:
ASSIGN qbbs "THUNDER"
ASSIGN qmdn "4"
ASSIGN spro "Q"
GOTO STRT1
RX:
ASSIGN qbbs "RXSTAT"
ASSIGN qmdn "11"
ASSIGN spro "Q"
GOTO STRT1
TECH:
ASSIGN qbbs "HITECH"
ASSIGN qmdn "5"
ASSIGN spro "Q"
;---------------------------------------------------------------------
STRT1:
ASSIGN updn "N"
EXIST $qdir\$qbbs.QWK REPTST ; Test for QWK and REP files
ASSIGN updn "D" ; and set updn as appropriate:
REPTST: ; Download/Upload/None/Both
EXIST $qdir\$qbbs.REP YREP ; Wierd logic but it works...
GOTO STRT2
YREP:
IF "$updn" = "D" DOBOTH
ASSIGN updn "U"
GOTO STRT2
DOBOTH:
ASSIGN updn "B"
;
STRT2:
EXIST $scpath\UD.SEG YSEG ; Check for PCBUD segment file
ASSIGN udsg "N"
YSEG:
IF "$updn" <> "N" STRT3 ; Rst qmdn to S if no mail xfer
ASSIGN qmdn "S"
STRT3:
CLRSCR
NOTE
NOTE PCBOARD.SCR by Brad Berson, (C) 1988, 1989 BAB Enterprises
NOTE
NOTE Connected to $number at $date $time @$speed Baud
NOTE
NOTE Generic PCBoard ProLogon Startup Script for
NOTE ->$board<-
NOTE Now in $bord Operation...
NOTE
NOTE
IF "$bord" = "PCBOARD" PBRD
;
WHEN "not found in user" RTNM ; Retry if name not found
SEND "Y QQ $name $password $qmdn NS^M"
TIMEOUT 180 ERRH ; \
WAITFOR "ommand?" ; ProLogon speed-logon command!
WHEN
GOTO TEST1
;
PBRD:
SEND "Y Q N^M" ; 'N Q N' for no graphics
WHEN "NS)?" "^~N^M" ; Pass bulletin screens
WHEN "not found in user" RTNM ; Retry if name not found
GOTO SKPR ; Skip retry stuff on 1st pass
RTNM:
IF "$4" = "2" NUSR ; Aft 2 name tries enter as new
PAUSE 1000
SEND "R^M" ; (R)e-enter name
SKPR:
WAITFOR "rst name? " ; Wait for name request
INCR 4
SEND "$name^M"
ASSIGN 5 0 ; Password error counter
WHEN "Wrong password" RTPW ; Retry if hit by noise
RTPW:
IF "$5" = "2" NUSR ; To error handler aft 2 tries
WAITFOR "assword" ; Wait for password request
INCR 5 ; num of password tries
SEND "$password^M"
WHEN "(Enter)" "N^M" ; Pass information screens
WHEN ", More" "^~N^M"
WHEN "Conference Command?" "^~A^M" ; Abandon conferences
WHEN "(S)ys" "^~S^M" ; Catch ProLogon prompt
TIMEOUT 180 ERRH
WAITFOR "Main Board Command?"
WHEN
;
TEST1:
IF "$qmdn" <> "S" QWIKM ; If QwikMail board do it first
IF "$udsg" = "Y" PCBUD ; Else test for PCBud script
BEEP 800
BEEP 800 ; Else alert op to console
BEEP 800
EXIT ; and ret control to user
;
; QMail handler begins here...
;
QWIKM:
IF "$bord" = "PROLOGON" DLCMD ; Skip OPEN if from ProLogon
PAUSE 500
CLRSCR
NOTE
NOTE PCBoard QMail handler now executing...
NOTE
ASSIGN 2 6 ; Set 6 second countdown
GOSUB CNTD
WHEN "NS)?" "^~N^M"
SEND "OPEN $qmdn^M" ; Open Mail door
WAITFOR "ommand?"
DLCMD:
IF "$updn" = "U" MORE ; Skip d/l if QWK present
SEND "D^M" ; Command to download mail
TIMEOUT 1200 ERRH ; Qmail-2 can be real slow!
WHEN "was found" MORE ; Skip d/l if no mail
WHEN "no messages" MORE
WHEN "packet" "^~Y^M" ; Yes, download the packet
WHEN "ot enough time" MORE ; If scan took too long
WHEN "Aborts" DLIT
WAITFOR "to download" ; Wait for packet ready
DLIT:
PAUSE 1000
DOWNLOAD $spro $qdir\$qbbs.QWK ; D/L QWK file, internal prot
TIMEOUT 120 ERRH
SEND "^~^M"
WAITFOR "ommand?"
MORE:
WHEN
IF "$updn" = "D" NDEL ; Skip u/l if no REP file
SEND "U^M" ; Command to upload replies
WAITFOR "$qbbs.REP"
PAUSE 1000
UPLOAD $spro $qdir\$qbbs.REP ; Upload REP file
WHEN " Successful" DLREP ; Sense to delete REP file
TIMEOUT 120 ERRH
SEND "^~^M"
WAITFOR "ommand?"
GOTO NDEL
DLREP:
DOS "DEL $qdir\$qbbs.REP >NUL" ; Delete REP file after u/l
IF "$updn" <> "U" NDEL ; Also del QWK, only if it
DOS "DEL $qdir\$qbbs.QWK >NUL" ; wasn't just downloaded now
NDEL:
SEND "^M"
WAITFOR "ommand?"
PAUSE 1000
IF "$udsg" = "N" LOFF ; Speed logoff from mail door
WHEN "(Dots" "^~$password^M" ; Get past pword back to brd
WHEN "(S)ys" "^~S^M" ; Catch ProLogon prompt
SEND "Q^M" ; Quit out of mail door
WAITFOR "ommand?"
WHEN
;
; PCBud handler begins here...
;
PCBUD:
PAUSE 500
CLRSCR
NOTE
NOTE The PCBud file UD.SEG has been detected -
NOTE PCBoard PCBud handler now executing...
NOTE
ASSIGN 2 6 ; Set 6 second countdown
GOSUB CNTD
EXIST $scpath\CONFER.SCR DOCON ; Test for conference script
SCRIPT UD.SEG
DOS "DEL $scpath\UD.BAK>NUL"
DOS "REN $scpath\UD.SEG *.BAK>NUL" ; Get rid of used script
GOTO LOFF
DOCON:
SCRIPT CONFER.SCR ; Call conference script
SCRIPT UD.SEG ; Call PCBud script
DOS "DEL $scpath\UD.BAK>NUL"
DOS "REN $scpath\UD.SEG *.BAK>NUL"
;
LOFF:
CLRSCR
NOTE
NOTE Auto Logoff now in progress -
NOTE
ASSIGN 2 10 ; Set 10 second countdown
GOSUB CNTD
NOTE Auto-Logoff Completing...
NOTE
TIMEOUT 45 DROP
WHEN "----)" "^~^M" ; Get past logoff questions
SEND "G^M"
WAITFOR "NO CARRIER" ; Are we off yet?
DROP:
HANGUP ; Make sure we're off
PAUSE 1000
BEEP 800
BEEP 800 ; Alert that script is over
BEEP 800
IF $online DROP
EXIT
;
; "User not found" handler...
;
NUSR:
WHEN "egister" "^~y^M"
SEND "^~C^M" ; <C>ontinue logon as new user
BEEP 1000
BEEP 1000
BEEP 1000
BEEP 1000
IF "$password" = "" QNEW ; If directory has no password
WAITFOR "ssword" ; just return control,
SEND "^~$password^M" ; else give password from
WAITFOR "erify" ; the dialing directory
SEND "^~$password^M"
NOTE
NOTE Please complete new user index!
NOTE
BEEP 1000
BEEP 1000
BEEP 1000
BEEP 1000
QNEW:
EXIT
;
; Error handler...
;
ERRH:
BEEP 1500
BEEP 1600
BEEP 1500
BEEP 1600
BEEP 1500
BEEP 1600
BEEP 1500
BEEP 1600
NOTE
NOTE Timeout or execution error occurred in script
NOTE $script!
NOTE Going to logoff routine...
NOTE
ASSIGN 2 10
GOSUB CNTD
GOTO LOFF
;
; Countdown/delay routine...
;
CNTD:
NOTE Press [Q] to abort countdown.
NOTE Press [P] to pause countdown.
WHEN
WHEN "Q" ESC
WHEN "P" PAU
ASSIGN 0 $wherex
ASSIGN 1 $wherey
TIMEOUT 1 TMOUT
TMOUT:
DISPLAY ' Seconds: $2... '
GOTOXY $0 $1
DECR 2
IF '$2' = '0' ZER
WAITFOR "shmutzsplat"
ZER:
TIMEOUT 45 ERRH
PAUSE 1000
WHEN
GOTOXY $0 $1
DISPLAY ' Script continuing...
NOTE
RETURN
PAU:
WHEN
SEND "^H" ; Get rid of pause char
TIMEOUT 1200 CNTD ; Pause 20 min then countdown
GOTOXY $0 $1
DISPLAY ' Countdown paused, F-keys are disabled.
NOTE
WAITFOR "boogerz" ; Type "boogerz" to resume
SEND "^H^H^H^H^H^H^H"
TIMEOUT 45 ERRH
RETURN
ESC:
SEND "^H" ; Get rid of quit char
GOTOXY $0 $1
DISPLAY ' Countdown terminated!
NOTE
EXIT
;