; 16 jly 85 pcc allow the port attached by select line start with non-alpha ; characters. ; 26 jly 85 esj attach to port on set line command ; 24 jly 85 esj fix setup port selection * 16-Jul-85 LEC; tpl conversion, parsing. ;----------------------------------------< sset >---------------------------- E:F E'O SSET.(X) ;---------------------------------------------------------------------------- ; ; Purpose ; parse and set various selectable parameters ; Input ; none ; Output ; none ; Inserts /INCLUDE BYU.PROG.KERMIT.SYM.EQU.KERCOM /INCLUDE BYU.PROG.KERMIT.SYM.EQU.KERDEF ; Globals G:L CHAR ; Local storage I:R OPTION(4),KEYWORD(4),X I'R UNITNUM(1) ;---------------------------< start of code >------------------------------- ; grab option to set E:E IDENT.(OPTION) W'R COMPNAM.(OPTION,$BAUD $).E.0 E:E TYPEMSG.($Baud rate setting not supported!$) O'R COMPNAM.(OPTION,$DELAY $).E.0 W'R (HOSTON.EQ.NO) E:E TYPEMSG.($Delay setting not valid in Local Host mode!$) F'N E'L E:E INT.(X) W'R (X.LT.0) E:E TYPEMSG.($Invalid delay setting!$) F'N O'R(X.GT.30) E:E TYPEMSG.($Delay setting too long!$) E:E TYPEMSG.($defaulted to 30 seconds!$) DELAY=30 F'N O'E DELAY=X F'N E'L O'R COMPNAM.(OPTION,$PARITY $).E.0 E:E TYPEMSG.($Parity setting not supported.!$) O'R COMPNAM.(OPTION,$IBM $).E.0 ;set IBM W'R (HOSTON.EQ.YES) E:E TYPEMSG.($SET IBM ON/OFF not supported in!$) E:E TYPEMSG.($Remote Host mode!$) F'N O:E E:E IDENT.(KEYWORD) W'R COMPNAM.(KEYWORD,$ON $).E.0 IBMON=YES ;set IBM flag ON O'R COMPNAM.(KEYWORD,$OFF $).E.0 IBMON=NO ;set IBM flag OFF O'E E:E TYPEMSG.($Invalid SET IBM mode selected!$) F'N E'L E:L O'R COMPNAM.(OPTION,$ESCAPE $).E.0 ;set escape W'R (HOSTON.EQ.YES) E:E TYPEMSG.($Escape setting not valid in!$) E:E TYPEMSG.($Remote Host mode!$) F'N O:E E:E INT.(X) W'R ((X.GT.0).AND.(X.LT.32)) ESCHAR=X O'E E:E TYPEMSG.($Escape character must be between 0 & 32!$) F'N E'L E:L O'R COMPNAM.(OPTION,$LINE $).E.0 ;set remote line W'R (SPORT.EQ.YES) ;is set line supported ?? I = 0 ; fill keyword with blanks to set things up E:E FILLCHRT.(8,$ $,KEYWORD,0) ; grab next 8 char. can't use ident because any char is ; legal for a device name! W:E (CHAR.NE.0) .AND. (CHAR.NE.$ $) .AND. (I.L.8) E:E STCHRT.(CHAR,KEYWORD,I) E:E NXTCHAR.(0) I .INCR. 1 E:W W:R CHAR .E. $ $, E:E NXTCHAR.(1) W:R COMPNAM.(KEYWORD,$COMDEV $).E.0 RMTDEV = $SD$ HOSTON = YES E'E DETACH.($KM$) O:E ; connect to the port indicated by the word following LINE # E'E HEXDMP.(0,4,0,KEYWORD) E'E UNBYUNM.( UNITNUM(1), KEYWORD) W'R UNITNUM(1) .E. -1 E'E TYPOUT.(4,KEYWORD) E'E TYPEMSG.($ does not exist.!$) O'E ; if the port exists, attach to it. # E'E HEXDMP.(0,4,0,KEYWORD) UNITNUM = -1 # E'E HEXDMP.(1,2,1,UNITNUM) ; detach from kermit device before attaching another E'E DETACH.($KM$) ; now attach to the device W'R ATTACH.($KM$, UNITNUM) .E. 1 RMTDEV = $KM$ HOSTON = NO E'E TYPOUT.(4,KEYWORD) E'E TYPEMSG.($ is connected.!$) O'E E'E TYPOUT.(4,KEYWORD) E'E TYPEMSG.($ is not available for connection.!$) # E'E HEXDMP.(0,4,0,KEYWORD) E'L E'L E:L F'N O'E E:E TYPEMSG.($SET remote line is not supported!$) F'N E'L O'R COMPNAM.(OPTION,$PROMPT $).E.0 W'R (HOSTON.EQ.YES) E:E TYPEMSG.($SET IBM PROMPT not valid!$) E:E TYPEMSG.($In Remote Host mode!$) F'N O:E E:E INT.(X) W'R ((X.EQ.EOL).OR.(X.EQ.SOH)) E:E TYPEMSG.($Invalid; in conflict with EOL or SOH!$) F'N O'E W'R ((X.GT.0).AND.(X.LT.32)) PROMPT=X E:L E'L E:L O'R COMPNAM.(OPTION,$PACKET $).E.0 E:E INT.(X) W'R ((X.GT.30).AND.(X.LT.95)) PAKSIZ=X F'N O'E E:E TYPEMSG.($Invalid Packet size specifiecd!$) F'N E'L O'R COMPNAM.(OPTION,$SOH $).E.0 E:E INT.(X) W'R (HOSTON.EQ.YES) W'R (X.EQ.EOL) E:E TYPEMSG.($Invalid; in conflict with EOL!$) F'N O'E W'R ((X.GT.0).AND.(X.LT.32)) SOH=X F'N O'E E:E TYPEMSG.($Invalid; SOH must be between 0 & 32!$) F'N E'L E'L O'E W'R ((X.EQ.EOL).OR.(X.EQ.PROMPT)) E:E TYPEMSG.($Invalid; in conflict with EOL!$) E:E TYPEMSG.($or IBM prompt!$) F'N O'E W'R ((X.GT.0).AND.(X.LT.32)) SOH=X F'N O'E E:E TYPEMSG.($Invalid; SOH must be between!$) E:E TYPEMSG.($0 & 32!$) F'N E'L E'L E'L O'R COMPNAM.(OPTION,$QUOTE $).E.0 E:E INT.(X) W'R ((X.GT.32).AND.(X.LT.127)) MYQUOTE=X F'N O'E E:E TYPEMSG.($QUOTE character must be between!$) E:E TYPEMSG.($32 & 127!$) F'N E'L O'E E:E TYPEMSG.($Invalid SET parameter(s) detected!$) F'N E'L F'N E:N .