*DECK NS$STR
USETEXT COM$NS
USETEXT ERR$NS
USETEXT KDS$NS
USETEXT PFC$NS
USETEXT SMB$NS
PROC NS$STR(ERRCODE); # PROCESS HOP/START #
# TITLE NS$STR - PROCESS HOP/START. #
BEGIN # NS$STR #
#
** NS$STR - PROCESS HOP/START.
*
* J.C. LEE 1981
*
* THIS ROUTINE PROCESSES HOP/START.
*
* PROC NS$STR(ERRCODE)
*
* ENTRY:
* NONE.
*
* EXIT:
* ERRCODE.
*
* METHOD:
* IF K-DISPLAY ASSIGNED, FLAG ERRCODE AND EXIT.
* SEND HELP DISPLAY TO K-DISPLAY RIGHT SCREEN.
* ALLOCATE 1-WORD TSB FOR PAGE-WAIT BUFFER.
* INITIALIZE HEADER WORD OF PAGE-WAIT BUFFER.
* SET PAGE-WAIT MODE TO FALSE.
* SET K-DISPLAY-LINE-COUNT TO 0.
* SET IGNORE-ALERT TO FALSE.
* SET HISTORY-DISPLAY-ASSIGNED TO TRUE.
* SET INPUT-ALLOW-FLAG TO FALSE.
* SEND THE LAST PAGE OF HISTORY TO K-DISPLAY.
* SEND "READY.." TO K-DISPLAY WITH END-OF-HOP
* -RESPONSE FLAG SET.
*
#
ITEM ERRCODE U; # ERROR CODE #
$BEGIN
XREF
BEGIN
PROC NS$DBG; # TRACE PROC CALL #
END
$END
XREF
BEGIN
PROC MOVEOK; # ALLOW MOVE ON TABLE #
PROC NETPUT; # SEND MESSAGE TO NAM #
FUNC NS$FEC U; # FORMAT ERROR CODE #
PROC REQTSB; # REQUEST TSB #
END
ITEM TSBADDR U; # TSB FWA #
ITEM TSBN U; # TSB NUMBER #
ARRAY ABH [0:0] S(1); # APPLICATION BLK HDR FOR HOP/DIS/SM #
BEGIN
ITEM ABH$ABT U(00,00,06) = [APPCMD]; # BLOCK TYPE #
ITEM ABH$ADR U(00,06,12) = [0]; # CONNECTION NUMBER#
ITEM ABH$ABN U(00,18,18) = [0]; # APP BLOCK NUMBER #
ITEM ABH$ACT U(00,36,04) = [CT60TRANS]; # CHAR TYPE #
ITEM ABH$DBC U(00,40,08) = [0]; # DATA BLK CLARIFIR#
ITEM ABH$TLC U(00,48,12) = [116]; # SIZE OF SUP MSG #
END
ARRAY SM$HELP [0:0] S(116); # HOP/DIS SM TO SEND HELP DISPLAY #
BEGIN
ITEM SM$HELPPS U(000,00,16) = [HOPDIS]; # PFC/SFC VALUE #
ITEM SM$HELPZ1 U(000,16,42) = [0];
ITEM SM$HELPRS B(000,58,01) = [TRUE]; # RIGHT SCREEN DISPLAY#
ITEM SM$HELPIA B(000,59,01) = [FALSE]; # INPUT ALLOWED FLAG #
ITEM SM$HELPL01 C(001,00,21) = [" "]; # DISPLAY HEADER LINE #
ITEM SM$HELPM01 C(003,06,15) = ["NS COMMAND LIST"];
ITEM SM$HELPN01 C(004,36,22) = [" "]; # DISPLAY HEADER LINE #
ITEM SM$HELPE01 U(006,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM02 C(007,00,58) = [" "]; # BLANK LINE #
ITEM SM$HELPE02 U(012,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPL03 C(013,00,28) = ["FI,NP=NN,NL=FF,UN=UU,PW=PP. "];
ITEM SM$HELPM03 C(015,48,28) = ["CHANGE THE NPU LOAD FILE FOR"];
ITEM SM$HELPN03 C(018,36,02) = [" "];
ITEM SM$HELPE03 U(018,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPL04 C(019,00,31) = [" "]; # LINE 4 #
ITEM SM$HELPM04 C(022,06,27) = ["NPU NAMED NN TO FILE FF "];
ITEM SM$HELPE04 U(024,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPL05 C(025,00,31) = [" "]; # LINE 5 #
ITEM SM$HELPM05 C(028,06,27) = ["UNDER USER NAME UU AND "];
ITEM SM$HELPE05 U(030,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM06 C(031,00,31) = [" "]; # LINE 6 #
ITEM SM$HELPN06 C(034,06,27) = ["PASSWORD PP. "];
ITEM SM$HELPE06 U(036,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM07 C(037,00,29) = ["HI."]; # LINE 7 #
ITEM SM$HELPN07 C(039,54,29) = ["DISPLAY LAST PAGE OF RECENT"];
ITEM SM$HELPE07 U(042,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM08 C(043,00,31) = [" "]; # LINE 8 #
ITEM SM$HELPN08 C(046,06,27) = ["ACTIVITY BUFFER. "];
ITEM SM$HELPE08 U(048,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM09 C(049,00,29) = ["HI,ALL."]; # LINE 9 #
ITEM SM$HELPN09 C(051,54,29) = ["DISPLAY ALL AVAILABLE PAGES"];
ITEM SM$HELPE09 U(054,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM10 C(055,00,31) = [" "]; # LINE 10 #
ITEM SM$HELPN10 C(058,06,27) = ["OF HISTORY BUFFER."];
ITEM SM$HELPF10 U(060,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM11 C(061,00,29) = ["NO."]; # LINE 11 #
ITEM SM$HELPN11 C(063,54,29) = ["USED AFTER AN FI COMMAND TO"];
ITEM SM$HELPE11 U(066,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM12 C(067,00,31) = [" "]; # LINE 12 #
ITEM SM$HELPN12 C(070,06,27) = ["REVERT BACK TO THE DEFAULT "];
ITEM SM$HELPE12 U(072,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM13 C(073,00,31) = [" "]; # LINE 13 #
ITEM SM$HELPN13 C(076,06,27) = ["NPU LOAD FILE. "];
ITEM SM$HELPE13 U(078,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM14 C(079,00,29) = ["ST,NP=NN."]; # LINE 14 #
ITEM SM$HELPN14 C(081,54,29) = ["REQUEST CURRENT LOAD STATUS"];
ITEM SM$HELPE14 U(084,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM15 C(085,00,31) = [" "]; # LINE 15 #
ITEM SM$HELPN15 C(088,06,27) = ["OF THE NPU NAMED NN "];
ITEM SM$HELPE15 U(090,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM16 C(091,00,31) = [" "]; # LINE 16 #
ITEM SM$HELPN16 C(094,06,27) = ["RELATIVE TO THIS NS."];
ITEM SM$HELPE16 U(096,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM17 C(097,00,29) = ["ST,NPS."]; # LINE 17 #
ITEM SM$HELPN17 C(099,54,29) = ["REQUEST STATUS OF ALL NPUS "];
ITEM SM$HELPE17 U(102,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM18 C(103,00,31) = [" "]; # LINE 18 #
ITEM SM$HELPN18 C(106,06,27) = ["RELATIVE TO THIS NS."];
ITEM SM$HELPE18 U(108,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPM19 C(109,00,29) = ["*"]; # LINE 19 #
ITEM SM$HELPN19 C(111,54,29) = ["RETURN TO NAM MODE."];
ITEM SM$HELPE19 U(114,48,12) = [0]; # LINE TERMINATOR #
ITEM SM$HELPLWD U(115,00,60) = [0]; # ZERO WORD AT END #
END
CONTROL EJECT;
$BEGIN
NS$DBG("STR"); # TRACE CALL #
$END
IF NOT DCW$F$ASS[0]
THEN # K DISPLAY NOT ASSIGNED #
BEGIN
NETPUT(ABH,SM$HELP); # SEND HELP DISPLAY TO RIGHT SCREEN #
MAX$PW = HOPLPL[0]; # SAVE THE LEFT AND RIGHT #
MAX$RPW = HOPRPL[0]; # PAGE LENGTHS #
DCW$WORD[0] = 0;
REQTSB(PWB$HDRL,TSBADDR,TSBN); # ALLOCATE PAGE WAIT BUFFER #
P<PWB$BUFFER> = TSBADDR;
PWB$HDRWD[0] = 0; # INITIALIZE HEADER WORD OF PAGE WAIT BUFF#
PWB$ID[0] = PWB$IDENT;
PWB$WC[0] = PWB$HDRL;
DCW$PWBTSB[0] = TSBN;# SAVE TSBN OF PWB #
MOVEOK(TSBN); # ALLOW MOVE ON PAGE WAIT BUFFER #
REQTSB(KDB$HDRL,TSBADDR,TSBN); # ALLOCATE K DISPLAY BUFFER #
P<KDS$BUFFER> = TSBADDR;
KDB$HDRWD[0] = 0; # INITIALIZE HDR WORD OF K-DISPLAY BUFF #
KDB$ID[0] = KDB$IDENT;
KDB$WC[0] = KDB$HDRL;
DCW$KDBTSB[0] = TSBN;
MOVEOK(TSBN); # ALLOW KDB TO MOVE #
END
ELSE # NAM ERROR, HOP/START NOT ALLOWED AT THIS STATE #
ERRCODE = NS$FEC(EC"ERR$SM", SMEC"HSM$HOPSM");
RETURN;
END # NS$STR #
TERM