cdc:nos2.source:opl.opl871:deck:screx
Deck SCREX
6 Modifications
Source
Seq # *Modification Id* Act ----------------------------+ 00001 M01S00001.screx +++|PRGM SCREX; 00002 M01S00002.screx +++|# TITLE SCREX - SCREEN/LINE EXECUTIVE PROGRAM. # 00003 M01S00003.screx +++| 00004 M01S00004.screx +++|BEGIN # SCREX # 00005 M01S00005.screx +++| 00006 M01S00006.screx +++|# 00007 M01S00007.screx +++|*** SCREX - SCREEN/LINE EXECUTIVE PROGRAM. 00008 M01S00008.screx +++|* 00009 M01S00009.screx +++|* *SCREX* MANAGES THE SCREEN AND LINE COMMANDS 00010 M01S00010.screx +++|* AND ALLOWS THE USER TO SPECIFY THE MODE OF 00011 M01S00011.screx +++|* OPERATION, AND OPTIONALLY THE TERMINAL MODEL 00012 M01S00012.screx +++|* BEING USED. *SCREX* INVOKES A CALL TO THE 00013 M01S00013.screx +++|* LOADER TO LOCATE A TERMINAL-DEFINITION CAPSULE, 00014 M01S00014.screx +++|* WHICH IT COPIES ONTO THE FILE *ZZZZTRM*. IT 00015 M01S00015.screx +++|* THEN WRITES OUT THE TERMINAL INITIALIZATION 00016 M01S00016.screx +++|* SEQUENCE FOUND IN THE LOADED CAPSULE. 00017 M01S00017.screx +++|* 00018 M01S00018.screx +++|* PRGM SCREX 00019 M01S00019.screx +++|* 00020 M01S00020.screx +++|* ENTRY *SCREX* HAS TWO ENTRY POINTS, *SCREEN* AND *LINE*. 00021 M01S00021.screx +++|* 00022 M01S00022.screx +++|* EXIT OBJECT ROUTINE EXECUTED. 00023 M01S00023.screx +++|* 00024 M01S00024.screx +++|* NOTES *SCREX* USES BOTH *SYMPL* AND *COMPASS* ROUTINES. 00025 M01S00025.screx +++|*
Line S00026 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | 281l803 |
Seq # *Modification Id* Act ----------------------------+ 00026 M02S00026.281l803 ---|* COPYRIGHT CONTROL DATA CORPORATION, 1984. 00027 M01S00001.281l803 +++|* COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. 00028 M01S00027.screx +++|# 00029 M01S00028.screx +++| 00030 M01S00029.screx +++| XREF 00031 M01S00030.screx +++| BEGIN 00032 M01S00031.screx +++| PROC PF; # GET *TERMLIB* FILE # 00033 M01S00032.screx +++| PROC SCRCCK; # CHECK CAPSULE, GET LENGTH # 00034 M01S00001.ns2274 +++| PROC SCRCIS; # CHECK INTERACTIVE STATUS # 00035 M01S00033.screx +++| PROC SCRCZF; # CREATE *ZZZZTRM* FILE # 00036 M01S00034.screx +++| PROC SCRFST; # FILE STATUS CHECK # 00037 M01S00035.screx +++| PROC SCRGIS; # GET INIT. SEQUENCE # 00038 M01S00036.screx +++| PROC SCRISR; # ISSUE SYSTEM REQUEST # 00039 M01S00037.screx +++| PROC SCRLCP; # LOAD TERMINAL CAPSULE # 00040 M01S00038.screx +++| PROC SCRPKP; # PROCESS PARAMETERS # 00041 M01S00039.screx +++| PROC SCRRET; # RETURN *TERMLIB* FILE # 00042 M01S00040.screx +++| PROC SCRRTA; # RESIDENT TERMCAP ADDRESS # 00043 M01S00041.screx +++| PROC SCRRZF; # READ *ZZZZTRM* FILE # 00044 M01S00001.ns2254 +++| PROC SCRUGD; # UNLOAD GROUP DIRECTORY # 00045 M01S00042.screx +++| PROC VDTABT$; # TERMINATE ABNORMALLY # 00046 M01S00043.screx +++| PROC VDTCLO; # CLOSE THE OUTPUT FET # 00047 M01S00044.screx +++| PROC VDTGSL; # GET SCREEN/LINE MODE # 00048 M01S00045.screx +++| PROC VDTGTA; # GET TERMCAP ADDRESS # 00049 M01S00046.screx +++| PROC VDTGTN; # GET TERMINAL MNEMONIC # 00050 M01S00047.screx +++| PROC VDTGTO; # GET TERMINAL ORDINAL # 00051 M01S00048.screx +++| PROC VDTMSG$; # ISSUE ERROR MESSAGE # 00052 M01S00049.screx +++| PROC VDTOPN; # OPEN THE OUTPUT FET # 00053 M01S00050.screx +++| PROC VDTSSL; # SET SCREEN/LINE MODE # 00054 M01S00051.screx +++| PROC VDTWTC; # WRITE THE INIT. SEQ. # 00055 M01S00052.screx +++| END 00056 M01S00053.screx +++| 00057 M01S00054.screx +++| XDEF 00058 M01S00055.screx +++| BEGIN 00059 M01S00056.screx +++| LABEL LINE; # LINE DIRECTIVE # 00060 M01S00057.screx +++| LABEL SCREEN; # SCREEN DIRECTIVE # 00061 M01S00058.screx +++| END 00062 M01S00059.screx +++| 00063 M01S00060.screx +++| ITEM ERR1 C(32) = "TERMINAL MODEL NOT YET SPECIFIED"; 00064 M01S00061.screx +++| # ERROR MESSAGE # 00065 M01S00062.screx +++| ITEM ERR1T I = 0; # END OF ERROR MESSAGE # 00066 M01S00063.screx +++| ITEM ERR2 C(29) = "TERMINAL DEFINITION NOT FOUND"; 00067 M01S00064.screx +++| # ERROR MESSGE # 00068 M01S00065.screx +++| ITEM ERR2T I = 0; # END OF ERROR MESSAGE # 00069 M01S00066.screx +++| ITEM ERR3 C(25) = "DEFINITION FILE NOT FOUND"; 00070 M01S00067.screx +++| # ERROR MESSGE # 00071 M01S00068.screx +++| ITEM ERR3T I = 0; # END OF ERROR MESSAGE # 00072 M01S00069.screx +++| ITEM I I; # INTEGER VARIABLE # 00073 M01S00070.screx +++| ITEM MODE I; # DIRECTIVE MODE VARIABLE # 00074 M01S00002.ns2274 +++| ITEM SCRIST B; # INTERACTIVE STATUS FLAG # 00075 M01S00071.screx +++| ITEM SCRLCA I; # LOADED CAPSULE ADDRESS # 00076 M01S00072.screx +++| ITEM SCRMDL I; # MODEL ORDINAL(0 IF UNREC.)# 00077 M01S00073.screx +++| ITEM SCRMOD I; # MODE(LINE = 0,SCREEN = 1)# 00078 M01S00074.screx +++| ITEM SCRPFF I; # PERMANENT FILE FOUND # 00079 M01S00075.screx +++| ITEM SCRPFN C(7) = "TERMLIB"; # *PFM* PARAMETER # 00080 M01S00076.screx +++| ITEM SCRRCA I; # RESIDENT CAPSULE ADDRESS # 00081 M01S00001.ns2248 +++| ITEM SCRSTS B; # *TERMLIB* STATUS FLAG # 00082 M01S00077.screx +++| ITEM SCRTCF B; # TERMCAP FOUND # 00083 M01S00002.ns2248 +++| ITEM SCRTFL B; # *TERMLIB* FILE LOCAL # 00084 M01S00078.screx +++| ITEM SCRTRM C(7) = "Z Z Z Z"; # USER-SUPPLIED MNEMONIC # 00085 M01S00003.ns2248 +++| ITEM SCRTRP B; # *TERMLIB* RETRIEVED BY *PF* # 00086 M01S00079.screx +++| ITEM SCRUSN C(7) = "LIBRARY"; # ALTERNATE USER NUMBER # 00087 M01S00080.screx +++| ITEM SCRZBA I; # *ZZZZTRM* BUFFER ADDRESS # 00088 M01S00081.screx +++| ITEM SCRZFE B; # *ZZZZTRM* FILE EXISTS FLAG # 00089 M01S00082.screx +++| ITEM SCRZTM C(7); # Z-PREFIXED TERM-MNEMONIC # 00090 M01S00002.ns2254 +++| ITEM UNLOAD B; # UNLOAD GROUP DIRECTORY #
Line S00083 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2254 |
Seq # *Modification Id* Act ----------------------------+ 00091 M02S00083.ns2254 ---|
Line S00084 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2254 |
Seq # *Modification Id* Act ----------------------------+ 00092 M02S00084.ns2254 ---| 00093 M01S00003.ns2254 +++| ARRAY NONESTR[0:0] S(1); 00094 M01S00004.ns2254 +++| BEGIN 00095 M01S00005.ns2254 +++| ITEM NONEKEY C(00,00,04) = ["NONE"]; # NONE OPTION STRING # 00096 M01S00006.ns2254 +++| ITEM ZEROES I(00,24,18) = [ 0 ]; # ZERO-FILL # 00097 M01S00007.ns2254 +++| ITEM NONE C(00,00,07); # ZERO-FILLED STRING # 00098 M01S00008.ns2254 +++| END 00099 M01S00085.screx +++|
Line S00086 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00100 M02S00086.ns2248 ---| PROC SCRGTC(SCRZTM,SCRTCF); 00101 M01S00004.ns2248 +++| PROC SCRGTC(SCRZTM,SCRTCF,SCRSTS,SCRTRP); 00102 M01S00087.screx +++| # TITLE SCRGTC - GET TERMINAL CAPSULE. # 00103 M01S00088.screx +++| 00104 M01S00089.screx +++| BEGIN # SCRGTC # 00105 M01S00090.screx +++| 00106 M01S00091.screx +++| # 00107 M01S00092.screx +++| *** SCRGTC - GET TERMINAL CAPSULE. 00108 M01S00093.screx +++| * 00109 M01S00094.screx +++| * *SCRGTC* CALLS *SCRLCP* TO LOAD A CAPSULE GIVEN THE 00110 M01S00095.screx +++| * CAPSULE NAME, WHICH RETURNS THE ADDRESS OF THE CAPSULE 00111 M01S00096.screx +++| * IF SUCCESSFULLY LOADED. IF SO, THE ROUTINE *SCRCZF* 00112 M01S00097.screx +++| * CREATES A FILE NAMED *ZZZZTRM* AND COPIES THIS CAPSULE 00113 M01S00098.screx +++| * RECORD INTO IT. *SCRCZF* THEN MARKS THE *ZZZZTRM* FILE 00114 M01S00099.screx +++| * NON-RETURNABLE BY GLOBAL CLEAR. 00115 M01S00100.screx +++| *
Line S00101 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00116 M02S00101.ns2248 ---| * PROC SCRGTC(SCRZTM,SCRTCF) 00117 M01S00005.ns2248 +++| * PROC SCRGTC(SCRZTM,SCRTCF,SCRSTS,SCRTRP) 00118 M01S00102.screx +++| * 00119 M01S00103.screx +++| * SCRZTM = Z-PREFIXED TERMINAL MNEMONIC. 00120 M01S00104.screx +++| * SCRTCF = TERMCAP FOUND FLAG RETURNED. 00121 M01S00006.ns2248 +++| * SCRSTS = *TERMLIB* STATUS FLAG. 00122 M01S00007.ns2248 +++| * SCRTRP = *TERMLIB* RETRIEVED BY *PF*. 00123 M01S00105.screx +++| *
Line S00106 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00124 M02S00106.ns2248 ---| * ENTRY OBJECT ROUTINE CALLED WITH TERMINAL MNEMONIC. 00125 M01S00008.ns2248 +++| * ENTRY OBJECT ROUTINE CALLED WITH TERMINAL MNEMONIC, 00126 M01S00009.ns2248 +++| * *TERMLIB* STATUS FLAG, AND FLAG TO RETURN *TERMLIB*. 00127 M01S00107.screx +++| * 00128 M01S00108.screx +++| * EXIT COMPLETION FLAG RETURNED TO CALLING ROUTINE. 00129 M01S00109.screx +++| * 00130 M01S00110.screx +++| * NOTES THE *SCRGTC* ROUTINES ARE COMPASS MACROS. 00131 M01S00111.screx +++| *
Line S00112 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | 281l803 |
Seq # *Modification Id* Act ----------------------------+ 00132 M02S00112.281l803 ---| * COPYRIGHT CONTROL DATA CORPORATION, 1984. 00133 M01S00002.281l803 +++| * COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. 00134 M01S00113.screx +++| # 00135 M01S00114.screx +++| 00136 M01S00115.screx +++| 00137 M01S00116.screx +++| ITEM SCRCLS I; # CAPSULE LOADED SUCCESSFULLY # 00138 M01S00117.screx +++| ITEM SCRLCA I; # LOADED CAPSULE ADDRESS # 00139 M01S00010.ns2248 +++| ITEM SCRSTS B; # *TERMLIB* STATUS FLAG # 00140 M01S00118.screx +++| ITEM SCRTCF B; # TERMCAP FOUND # 00141 M01S00119.screx +++| ITEM SCRTCL I; # TERMINAL CAPSULE LENGTH # 00142 M01S00120.screx +++| ITEM SCRTCV B; # TERMINAL CAPSULE VALID # 00143 M01S00011.ns2248 +++| ITEM SCRTRP B; # *TERMLIB* RETRIEVED BY *PF* # 00144 M01S00121.screx +++| ITEM SCRZTM C(7); # TERMINAL MNEMONIC # 00145 M01S00122.screx +++| 00146 M01S00123.screx +++| 00147 M01S00124.screx +++| SCRTCF = FALSE; # INITIALIZE FOUND FLAG # 00148 M01S00125.screx +++| SCRLCP(SCRZTM,SCRLCA,SCRCLS); # LOAD TERMINAL CAPSULE # 00149 M01S00126.screx +++| IF SCRCLS EQ 0 THEN # CAPSULE LOADED SUCCESSFULLY # 00150 M01S00127.screx +++| BEGIN 00151 M01S00128.screx +++| SCRTCV = FALSE; # INITIALIZE AS INVALID #
Line S00129 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00152 M02S00129.ns2248 ---| SCRCCK(SCRLCA,SCRZTM,SCRTCV,SCRTCL); # VALIDATE TERMCAP # 00153 M01S00012.ns2248 +++| SCRCCK(SCRLCA,SCRZTM,SCRTCV,SCRTCL,SCRSTS); # VALIDATE TERMCAP # 00154 M01S00130.screx +++| IF SCRTCV THEN # IF VALID *TDU* TERMCAP # 00155 M01S00131.screx +++| BEGIN 00156 M01S00132.screx +++| SCRRET("ZZZZTRM"); # RETURN *ZZZZTRM* FILE # 00157 M01S00133.screx +++| SCRCZF(SCRLCA,SCRTCL); # CREATE *ZZZZTRM* FILE # 00158 M01S00134.screx +++| SCRMDL = 1; # USER DEFINED MODEL # 00159 M01S00135.screx +++| SCRMOD = MODE; # DIRECTIVE SPECIFIED MODE # 00160 M01S00136.screx +++| VDTSSL(SCRMDL,SCRMOD); # SET MODEL, MODE # 00161 M01S00137.screx +++| SCRISR(SCRMOD); # ISSUE SYSTEM REQUEST # 00162 M01S00138.screx +++| SCROUT(SCRLCA,SCRMOD); # PRINT INIT. SEQUENCE # 00163 M01S00139.screx +++| SCRTCF = TRUE; # TERMINAL CAPSULE FOUND # 00164 M01S00013.ns2248 +++| SCRRET("ZZZZZOU"); # RETURN *ZZZZZOU* FILE # 00165 M01S00140.screx +++| END 00166 M01S00141.screx +++| END 00167 M01S00014.ns2248 +++| IF SCRTRP THEN 00168 M01S00015.ns2248 +++| BEGIN # IF *PF* RETRIEVED *TERMLIB* # 00169 M01S00142.screx +++| SCRRET(SCRPFN); # RETURN LOCAL FILE # 00170 M01S00016.ns2248 +++| END 00171 M01S00143.screx +++| 00172 M01S00144.screx +++| END # SCRGTC # 00173 M01S00145.screx +++| 00174 M01S00146.screx +++| PROC SCROUT(SCRLCA,SCRMOD); 00175 M01S00147.screx +++| # TITLE SCROUT - OUTPUT TERMINAL INITIALIZATION SEQUENCE # 00176 M01S00148.screx +++| 00177 M01S00149.screx +++| BEGIN # SCROUT # 00178 M01S00150.screx +++| 00179 M01S00151.screx +++| # 00180 M01S00152.screx +++| *** SCROUT - OUTPUT TERMINAL INIT. SEQUENCE * 00181 M01S00153.screx +++| * 00182 M01S00154.screx +++| * *SCROUT* CALLS *VDTOPN* TO OPEN AND INITIALIZE THE 00183 M01S00155.screx +++| * OUTPUT FET. *SCRGIS* IS THEN CALLED TO GET THE 00184 M01S00156.screx +++| * TERMINAL INITIALIZATION SEQUENCE FROM THE LOADED 00185 M01S00157.screx +++| * CAPSULE, CONVERTING THE SEQUENCE FROM 7-BIT BYTES 00186 M01S00158.screx +++| * TO 12-BIT TRANSPARENT BYTES. THE SEQUENCE IS LEFT 00187 M01S00159.screx +++| * IN THE *SCRISB* BUFFER, WHICH IS WRITTEN BY *VDTWTC* 00188 M01S00160.screx +++| * TO THE OUTPUT FET, AND *VDTCLO* CLOSES THIS FET. 00189 M01S00161.screx +++| * 00190 M01S00162.screx +++| * PROC SCROUT(ADDRESS,MODE) 00191 M01S00163.screx +++| * 00192 M01S00164.screx +++| * ADDRESS = LOADED CAPSULE OR FILE BUFFER ADDRESS. 00193 M01S00165.screx +++| * MODE = MODE SPECIFIED BY USER. 00194 M01S00166.screx +++| * 00195 M01S00167.screx +++| * ENTRY ADDRESS = LOADED CAPSULE OR FILE BUFFER ADD RESS. 00196 M01S00168.screx +++| * MODE = 0, IF LINE MODE, 00197 M01S00169.screx +++| * = 1, IF SCREEN MODE. 00198 M01S00170.screx +++| * 00199 M01S00171.screx +++| * EXIT OBJECT ROUTINE EXECUTED. 00200 M01S00172.screx +++| * 00201 M01S00173.screx +++| * NOTES THE *SCROUT* ROUTINES ARE COMPASS ROUTINES. 00202 M01S00174.screx +++| *
Line S00175 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | 281l803 |
Seq # *Modification Id* Act ----------------------------+ 00203 M02S00175.281l803 ---| * COPYRIGHT CONTROL DATA CORPORATION, 1984. 00204 M01S00003.281l803 +++| * COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. 00205 M01S00176.screx +++| # 00206 M01S00177.screx +++| 00207 M01S00001.ns2288 +++| BASED ARRAY PARM [0:0] P(1);; 00208 M01S00178.screx +++| 00209 M01S00179.screx +++| ITEM SCRISB I; # SEQUENCE BUFFER # 00210 M01S00180.screx +++| ITEM SCRLCA I; # LOADED CAPSULE ADDRESS # 00211 M01S00181.screx +++| ITEM SCRMOD I; # TERMINAL MODE # 00212 M01S00182.screx +++| ITEM SCRREC I; # RECALL PARAMETER # 00213 M01S00183.screx +++| 00214 M01S00184.screx +++| SCRREC = 1; # SET AUTO RECALL # 00215 M01S00185.screx +++| SCRGIS(SCRLCA,SCRMOD,SCRISB); # GET SEQUENCE #
Line S00186 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2288 |
Seq # *Modification Id* Act ----------------------------+ 00216 M02S00186.ns2288 ---| VDTOPN; # OPEN THE OUTPUT FET #
Line S00187 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2288 |
Seq # *Modification Id* Act ----------------------------+ 00217 M02S00187.ns2288 ---| VDTWTC(SCRISB); # WRITE SEQUENCE #
Line S00188 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2288 |
Seq # *Modification Id* Act ----------------------------+ 00218 M02S00188.ns2288 ---| VDTCLO(SCRREC); # CLOSE THE OUTPUT FET # 00219 M01S00002.ns2288 +++| IF SCRISB NQ 0 THEN 00220 M01S00003.ns2288 +++| BEGIN # IF NOT EMPTY SEQUENCE # 00221 M01S00004.ns2288 +++| VDTOPN; # OPEN THE OUTPUT FET # 00222 M01S00005.ns2288 +++| P<PARM> = SCRISB; 00223 M01S00006.ns2288 +++| VDTWTC(PARM); # WRITE SEQUENCE # 00224 M01S00007.ns2288 +++| VDTCLO(SCRREC); # CLOSE THE OUTPUT FET # 00225 M01S00008.ns2288 +++| END 00226 M01S00189.screx +++| 00227 M01S00190.screx +++| END # SCROUT # 00228 M01S00191.screx +++| 00229 M01S00192.screx +++| 00230 M01S00193.screx +++|SCREEN: # SCREEN ENTRY POINT # 00231 M01S00194.screx +++| 00232 M01S00195.screx +++| MODE = 1; # INITIALIZE MODE TO SCREEN # 00233 M01S00196.screx +++| GOTO SCRMAIN; # JUMP TO MAIN BODY OF *SCREX* # 00234 M01S00197.screx +++| 00235 M01S00198.screx +++|LINE: # LINE ENTRY POINT # 00236 M01S00199.screx +++| 00237 M01S00200.screx +++| MODE = 0; # INITIALIZE MODE TO LINE # 00238 M01S00201.screx +++| GOTO SCRMAIN; # JUMP TO MAIN BODY OF *SCREX* # 00239 M01S00202.screx +++| 00240 M01S00203.screx +++| 00241 M01S00204.screx +++|SCRMAIN: 00242 M01S00205.screx +++| 00243 M01S00003.ns2274 +++| SCRCIS(SCRIST); # CHECK INTERACTIVE STATUS # 00244 M01S00004.ns2274 +++| IF NOT(SCRIST) THEN # IF NOT INTERACTIVE # 00245 M01S00005.ns2274 +++| STOP; # HALT PROGRAM EXECUTION #
Line S00206 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2254 |
Seq # *Modification Id* Act ----------------------------+ 00246 M02S00206.ns2254 ---| SCRPKP(SCRTRM); # PROCESS PARAMETERS # 00247 M01S00009.ns2254 +++| SCRPKP(SCRTRM); # PROCESS PARAMETERS # 00248 M01S00010.ns2254 +++| IF (SCRTRM EQ NONE[0]) THEN # NONE OPTION SPECIFIED # 00249 M01S00011.ns2254 +++| BEGIN # NONE OPTION # 00250 M01S00012.ns2254 +++| SCRMDL = 0; # SET CURRENT MODEL TO NONE # 00251 M01S00013.ns2254 +++| SCRMOD = 0; # SET CURRENT MODE TO LINE # 00252 M01S00014.ns2254 +++| VDTSSL(SCRMDL,SCRMOD); # SET MODE, MODEL # 00253 M01S00015.ns2254 +++| SCRISR(SCRMOD); # ISSUE SYSTEM REQUEST # 00254 M01S00016.ns2254 +++| RETURN; 00255 M01S00017.ns2254 +++| END 00256 M01S00207.screx +++| IF SCRTRM EQ "Z Z Z Z" THEN # IF MODEL NOT SPECIFIED # 00257 M01S00208.screx +++| BEGIN 00258 M01S00209.screx +++| VDTGSL(SCRMDL,SCRMOD); # GET CURRENT MODEL, MODE # 00259 M01S00210.screx +++| IF SCRMDL NQ 0 THEN # IF PREVIOUS MODEL SPECIFIED # 00260 M01S00211.screx +++| BEGIN 00261 M01S00212.screx +++| IF SCRMDL NQ 1 THEN # IF RESIDENT MODEL SPECIFIED # 00262 M01S00213.screx +++| BEGIN 00263 M01S00214.screx +++| SCRMOD = MODE; # SET CURRENT MODE # 00264 M01S00215.screx +++| VDTGTA(SCRMDL,SCRRCA); # GIVEN MODEL, RETURN ADDRESS # 00265 M01S00216.screx +++| SCROUT(SCRRCA,SCRMOD); # SEND INITIALIZATION SEQUENCE # 00266 M01S00217.screx +++| VDTSSL(SCRMDL,SCRMOD); # SET MODE, MODEL # 00267 M01S00218.screx +++| SCRISR(SCRMOD); # ISSUE SYSTEM REQUEST # 00268 M01S00219.screx +++| END 00269 M01S00220.screx +++| ELSE # NON-RESIDENT MODEL SPECIFIED # 00270 M01S00221.screx +++| BEGIN 00271 M01S00222.screx +++| SCRZFE = FALSE; 00272 M01S00223.screx +++| SCRPFN = "ZZZZTRM"; 00273 M01S00224.screx +++| SCRFST(SCRPFN,SCRZFE); # CHECK FOR LOCAL *ZZZZTRM* # 00274 M01S00225.screx +++| IF SCRZFE THEN # IF LOCAL *ZZZZTRM* EXISTS # 00275 M01S00226.screx +++| BEGIN 00276 M01S00227.screx +++| SCRMOD = MODE; # USER SPECIFIED MODE # 00277 M01S00228.screx +++| SCRRZF(SCRPFN,SCRZBA); # READ INTO BUFFER # 00278 M01S00229.screx +++| SCROUT(SCRZBA,SCRMOD); # SEND INITIALIZATION SEQUENCE # 00279 M01S00230.screx +++| VDTSSL(SCRMDL,SCRMOD); # SET MODE, MODEL # 00280 M01S00231.screx +++| SCRISR(SCRMOD); # ISSUE SYSTEM REQUEST # 00281 M01S00232.screx +++| END 00282 M01S00233.screx +++| ELSE # NO LOCAL *ZZZZTRM* # 00283 M01S00234.screx +++| BEGIN 00284 M01S00235.screx +++| VDTMSG$(ERR3,0,1); # ERROR MESSAGE # 00285 M01S00236.screx +++| VDTABT$; # TERMINATE ABNORMALLY # 00286 M01S00237.screx +++| END 00287 M01S00238.screx +++| END 00288 M01S00239.screx +++| END 00289 M01S00240.screx +++| ELSE # NO PREVIOUS MODEL SPECIFIED # 00290 M01S00241.screx +++| BEGIN
Line S00242 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2254 |
Seq # *Modification Id* Act ----------------------------+ 00291 M02S00242.ns2254 ---| VDTMSG$(ERR1,0,1); # ERROR MESSAGE #
Line S00243 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2254 |
Seq # *Modification Id* Act ----------------------------+ 00292 M02S00243.ns2254 ---| VDTABT$; # TERMINATE ABNORMALLY # 00293 M01S00018.ns2254 +++| IF MODE EQ 0 THEN # LINE MODE SPECIFIED # 00294 M01S00019.ns2254 +++| BEGIN # LINE DIRECTIVE # 00295 M01S00020.ns2254 +++| SCRMDL = 0; # SET CURRENT MODEL TO NONE # 00296 M01S00021.ns2254 +++| SCRMOD = 0; # SET CURRENT MODE TO LINE # 00297 M01S00022.ns2254 +++| VDTSSL(SCRMDL,SCRMOD); # SET MODE, MODEL # 00298 M01S00023.ns2254 +++| SCRISR(SCRMOD); # ISSUE SYSTEM REQUEST # 00299 M01S00024.ns2254 +++| END 00300 M01S00025.ns2254 +++| ELSE 00301 M01S00026.ns2254 +++| BEGIN # SCREEN DIRECTIVE # 00302 M01S00027.ns2254 +++| VDTMSG$(ERR1,0,1); # ERROR MESSAGE # 00303 M01S00028.ns2254 +++| VDTABT$; # TERMINATE ABNORMALLY # 00304 M01S00029.ns2254 +++| END 00305 M01S00244.screx +++| END 00306 M01S00245.screx +++| END # MODEL NOT SPECIFIED # 00307 M01S00246.screx +++| ELSE # MODEL WAS SPECIFIED # 00308 M01S00247.screx +++| BEGIN 00309 M01S00248.screx +++| C<0>SCRZTM = "Z"; # PREFIX MNEMONIC WITH "Z" # 00310 M01S00249.screx +++| FOR I = 1 STEP 1 UNTIL 6 DO 00311 M01S00250.screx +++| C<I>SCRZTM = C<I-1>SCRTRM; # CONCAT *SCRTRM* TO *SCTZTM* # 00312 M01S00251.screx +++| VDTGTO(SCRMDL,SCRTRM); # GET TERMINAL ORDINAL # 00313 M01S00252.screx +++| IF SCRMDL NQ 0 THEN # IF TERMINAL TABLE RESIDENT # 00314 M01S00253.screx +++| BEGIN 00315 M01S00254.screx +++| SCRMOD = MODE; # SET DIRECTIVE MODE # 00316 M01S00255.screx +++| SCRRTA(SCRTRM,SCRLCA); # GET TERMCAP ADDRESS # 00317 M01S00256.screx +++| SCROUT(SCRLCA,SCRMOD); # PRINT INIT. SEQUENCE # 00318 M01S00257.screx +++| VDTSSL(SCRMDL,SCRMOD); # SET MODE, MODEL # 00319 M01S00258.screx +++| SCRISR(MODE); # ISSUE SYSTEM REQUEST # 00320 M01S00259.screx +++| END 00321 M01S00260.screx +++| ELSE # TERMINAL TABLE NOT RESIDENT # 00322 M01S00261.screx +++| BEGIN 00323 M01S00030.ns2254 +++| UNLOAD = FALSE; # GROUP DIRECTORY UNLOAD FLAG # 00324 M01S00017.ns2248 +++| SCRTRP = FALSE;
Line S00262 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00325 M02S00262.ns2248 ---| SCRGTC(SCRZTM,SCRTCF); # GET LOCAL TERMINAL CAPSULE # 00326 M01S00018.ns2248 +++| SCRSTS = FALSE; # INITIALIZE *TERMLIB* STATUS # 00327 M01S00019.ns2248 +++| SCRTFL = FALSE; 00328 M01S00020.ns2248 +++| SCRTCF = FALSE; 00329 M01S00021.ns2248 +++| SCRFST(SCRPFN,SCRTFL); # CHECK IF *TERMLIB* IS LOCAL # 00330 M01S00022.ns2248 +++| IF SCRTFL THEN 00331 M01S00023.ns2248 +++| BEGIN # IF LOCAL *TERMLIB* FOUND # 00332 M01S00024.ns2248 +++| SCRSTS = TRUE; 00333 M01S00025.ns2248 +++| SCRGTC(SCRZTM,SCRTCF,SCRSTS,SCRTRP); # GET LOCAL CAPSULE # 00334 M01S00031.ns2254 +++| UNLOAD = TRUE; 00335 M01S00026.ns2248 +++| END 00336 M01S00263.screx +++| IF NOT SCRTCF THEN # IF TERMINAL CAPSULE NOT FOUND # 00337 M01S00264.screx +++| BEGIN 00338 M01S00265.screx +++| PF("GET",SCRPFN,SCRPFN,"RC",SCRPFF,0); # GET *SCRPFN* FILE # 00339 M01S00001.screx1 +++| IF SCRPFF NQ 0 THEN 00340 M01S00002.screx1 +++| BEGIN # IF GET FAILS, ATTACH # 00341 M01S00003.screx1 +++| PF("ATTACH",SCRPFN,SCRPFN,"RC",SCRPFF,"NA",0,0); 00342 M01S00004.screx1 +++| END 00343 M01S00266.screx +++| IF SCRPFF EQ 0 THEN # IF FILE WAS FOUND # 00344 M01S00267.screx +++| BEGIN
Line S00268 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00345 M02S00268.ns2248 ---| SCRGTC(SCRZTM,SCRTCF); # GET TERMINAL CAPSULE # 00346 M01S00027.ns2248 +++| SCRSTS = TRUE; 00347 M01S00028.ns2248 +++| SCRTRP = TRUE; # *TERMLIB* RETRIEVED BY *PF* # 00348 M01S00032.ns2254 +++| IF UNLOAD THEN # IF LOADER CALLED BEFORE # 00349 M01S00033.ns2254 +++| BEGIN 00350 M01S00034.ns2254 +++| SCRUGD; # UNLOAD GROUP DIRECTORY # 00351 M01S00035.ns2254 +++| UNLOAD = FALSE; # GROUP DIRECTORY UNLOADED # 00352 M01S00036.ns2254 +++| END 00353 M01S00029.ns2248 +++| SCRGTC(SCRZTM,SCRTCF,SCRSTS,SCRTRP); # GET CAPSULE # 00354 M01S00037.ns2254 +++| UNLOAD = TRUE; 00355 M01S00269.screx +++| END 00356 M01S00270.screx +++| IF NOT SCRTCF THEN # IF TERMCAP NOT FOUND # 00357 M01S00271.screx +++| BEGIN
Line S00272 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00358 M02S00272.ns2248 ---| PF("GET",SCRPFN,SCRPFN,"RC",SCRPFF,"UN",SCRUSN,0); 00359 M01S00030.ns2248 +++| PF("GET",SCRPFN,SCRPFN,"RC",SCRPFF,"UN",SCRUSN,"PN","0",0); 00360 M01S00031.ns2248 +++| # GET *TERMLIB* FROM UN=LIBRARY # 00361 M01S00005.screx1 +++| IF SCRPFF NQ 0 THEN 00362 M01S00006.screx1 +++| BEGIN # IF GET FAILS, ATTACH # 00363 M01S00007.screx1 +++| PF("ATTACH",SCRPFN,SCRPFN,"RC",SCRPFF, 00364 M01S00008.screx1 +++| "UN",SCRUSN,"PN","0","NA",0,0); 00365 M01S00009.screx1 +++| END 00366 M01S00273.screx +++| IF SCRPFF EQ 0 THEN # IF FILE WAS FOUND # 00367 M01S00274.screx +++| BEGIN
Line S00275 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2248 |
Seq # *Modification Id* Act ----------------------------+ 00368 M02S00275.ns2248 ---| SCRGTC(SCRZTM,SCRTCF); # GET TERMINAL CAPSULE # 00369 M01S00032.ns2248 +++| SCRSTS = FALSE; # SET STATUS TO SYSTEM # 00370 M01S00033.ns2248 +++| SCRTRP = TRUE; # *TERMLIB* RETRIEVED BY *PF* # 00371 M01S00038.ns2254 +++| IF UNLOAD THEN # IF LOADER CALLED BEFORE # 00372 M01S00039.ns2254 +++| BEGIN 00373 M01S00040.ns2254 +++| SCRUGD; # UNLOAD GROUP DIRECTORY # 00374 M01S00041.ns2254 +++| END 00375 M01S00034.ns2248 +++| SCRGTC(SCRZTM,SCRTCF,SCRSTS,SCRTRP); # GET CAPSULE # 00376 M01S00276.screx +++| END 00377 M01S00277.screx +++| IF NOT SCRTCF THEN # IF TERMCAP NOT FOUND # 00378 M01S00278.screx +++| BEGIN 00379 M01S00279.screx +++| SCRMOD = 0; # LINE MODE # 00380 M01S00280.screx +++| SCRMDL = 0; # UNDEFINED ORDINAL # 00381 M01S00281.screx +++| VDTSSL(SCRMDL,SCRMOD); # SET MODE, MODEL # 00382 M01S00282.screx +++| SCRISR(SCRMOD); # ISSUE SYSTEM REQUEST # 00383 M01S00283.screx +++| VDTMSG$(ERR2,0,1); # SEND MESSAGE TO USER # 00384 M01S00284.screx +++| VDTABT$; # TERMINATE ABNORMALLY # 00385 M01S00285.screx +++| END 00386 M01S00286.screx +++| END # TERMCAP NOT FOUND # 00387 M01S00287.screx +++| END # TERMCAP NOT FOUND # 00388 M01S00288.screx +++| END # TERMINAL TABLE NOT RESIDENT # 00389 M01S00289.screx +++| END # MODEL WAS SPECIFIED #
Line S00290 Modification History | |
---|---|
M01 (Added by) | screx |
M02 (Updated by) | ns2254 |
Seq # *Modification Id* Act ----------------------------+ 00390 M02S00290.ns2254 ---| 00391 M01S00042.ns2254 +++| 00392 M01S00291.screx +++|END # SCREX # # END OF *SCREX* PROGRAM # 00393 M01S00292.screx +++| 00394 M01S00293.screx +++|TERM
cdc/nos2.source/opl.opl871/deck/screx.txt · Last modified: by 127.0.0.1