FORTRAN IV V02.5-11 FRI 22-JUL-88 02:52:12 PAGE 001 SC:CAMSER,SC:CAMSER.FLS/LI:3/-SP=SC:CAMSER 0001 PROGRAM CAMSER 0002 LOGICAL*1 STATE(16) 0003 INTEGER RECBUF(15) 0004 EQUIVALENCE(STATE,RECBUF(3)) 0005 INTEGER NEW 0006 EQUIVALENCE(NEW,RECBUF(11)) 0007 INTEGER SNDBUF(13) 0008 LOGICAL*1 OSTATE(16) 0009 INTEGER OLD 0010 INTEGER IDS 0011 INTEGER HIGH 0012 INTEGER LOW 0013 INTEGER IPARAM(6) 0014 INTEGER I2PARAM(6) 0015 BYTE INBUF(10) 0016 INTEGER IESB(8) 0017 INTEGER IOSB(2) 0018 BYTE ISB(4) 0019 EQUIVALENCE(ISB,IOSB) 0020 BYTE OUTBUF(80) 0021 INTEGER OUTLEN 0022 INTEGER ILOOP 0023 BYTE FRONT 0024 INTEGER PRM1 0025 INTEGER PRM2 0026 INTEGER IOWLB 0027 DATA IOWLB/"000400/ 0028 INTEGER IORVB 0029 DATA IORVB/"010400/ 0030 BYTE TYPE(10,3) 0031 DATA TYPE/ 1'S','[','N','D','N','I','N','G',' ',' ','M','O','T','T','A','G','N 1','I','N','G','L','I','N','J','E','S','T','R','\','M'/ 0032 REAL TASK 0033 DATA TASK/6RGETDRV/ 0034 BYTE CR 0035 DATA CR/"15/ 0036 BYTE LF 0037 DATA LF/"12/ 0038 CONTINUE 0039 CALL TERSEQ(85,PRM1,PRM2) 0040 CALL TERSEQ(50,PRM1,PRM2) 0041 CALL GETADR(IPARAM,OUTBUF) 0042 IPARAM(3)=0 0043 OUTLEN=33 0044 CALL MOVE01(OUTLEN,'Kom ih}g: "SET /FDX=TI:", "VT1" !', 1 OUTBUF) 0045 OUTBUF(OUTLEN+1)=CR 0046 OUTBUF(OUTLEN+2)=LF 0047 OUTLEN=OUTLEN+2 0048 ASSIGN 30003 TO M00000 0049 GOTO 30004 0050 30003 CONTINUE 0051 OUTLEN=50 FORTRAN IV V02.5-11 FRI 22-JUL-88 02:52:12 PAGE 002 SC:CAMSER,SC:CAMSER.FLS/LI:3/-SP=SC:CAMSER 0052 CALL MOVE01(OUTLEN,'Vidare att "INS $GETDRV" och "FIX GETDRV" beh| 1vs !', 1 OUTBUF) 0053 OUTBUF(OUTLEN+1)=CR 0054 OUTBUF(OUTLEN+2)=LF 0055 OUTLEN=OUTLEN+2 0056 ASSIGN 30005 TO M00000 0057 GOTO 30004 0058 30005 CONTINUE 0059 OUTLEN=47 0060 CALL MOVE01(OUTLEN,'Allt detta g|rs enklast genom "@LB:[1,2]CAMUS" 1.', 1 OUTBUF) 0061 OUTBUF(OUTLEN+1)=CR 0062 OUTBUF(OUTLEN+2)=LF 0063 OUTLEN=OUTLEN+2 0064 ASSIGN 30006 TO M00000 0065 GOTO 30004 0066 30006 CONTINUE 0067 OUTLEN=41 0068 CALL MOVE01(OUTLEN,'START och STOPP: Tryck p} valfri tangent>', 1 OUTBUF) 0069 ASSIGN 30007 TO M00000 0070 GOTO 30004 0071 30007 CONTINUE 0072 ASSIGN 30008 TO M00001 0073 GOTO 30009 0074 30008 CONTINUE 0075 CALL TERSEQ(85,PRM1,PRM2) 0076 CALL TERSEQ(50,PRM1,PRM2) 0077 SNDBUF(1)=10 0078 ASSIGN 30010 TO M00002 0079 GOTO 30011 0080 30010 CONTINUE 0081 IF (IDS.NE.1) GOTO 30001 0083 SNDBUF(1)=1 0084 DO 30012ILOOP=1,12 0085 OSTATE(ILOOP)=.NOT.STATE(ILOOP) 0086 30012 CONTINUE 0087 30013 CONTINUE 0088 IF (.NOT.(NEW.EQ.0)) GOTO 30015 0090 OLD=1 0091 GOTO 30014 0092 30015 CONTINUE 0093 OLD=0 0094 30014 CONTINUE 0095 CALL TERSEQ(48,3,18) 0096 CALL TERSEQ(29,PRM1,PRM2) 0097 CALL CHANGE(,' ',OUTBUF,80) 0098 OUTLEN=4 0099 CALL MOVE01(OUTLEN,'BxLL',OUTBUF) 0100 IF (.NOT.(STATE(13))) GOTO 30017 0102 OUTBUF(2)='I' 0103 GOTO 30016 FORTRAN IV V02.5-11 FRI 22-JUL-88 02:52:12 PAGE 003 SC:CAMSER,SC:CAMSER.FLS/LI:3/-SP=SC:CAMSER 0104 30017 CONTINUE 0105 OUTBUF(2)='U' 0106 30016 CONTINUE 0107 ASSIGN 30018 TO M00000 0108 GOTO 30004 0109 30018 CONTINUE 0110 CALL TERSEQ(48,4,18) 0111 CALL TERSEQ(30,PRM1,PRM2) 0112 ASSIGN 30019 TO M00000 0113 GOTO 30004 0114 30019 CONTINUE 0115 CALL TERSEQ(48,5,10) 0116 CALL TERSEQ(31,PRM1,PRM2) 0117 CALL TERSEQ(61,PRM1,PRM2) 0118 CALL CHANGE(,' ',OUTBUF,80) 0119 OUTLEN=53 0120 CALL MOVE01(OUTLEN,'STATUSSIGNALER fr}n UPPSALABUSS radiofront 1 CAMUS 2200',OUTBUF) 0121 ASSIGN 30020 TO M00000 0122 GOTO 30004 0123 30020 CONTINUE 0124 CALL CHANGE(,' ',OUTBUF,80) 0125 OUTLEN=9 0126 CALL MOVE01(OUTLEN,'KANAL x :', 1 OUTBUF) 0127 CALL TERSEQ(48,8,1) 0128 OUTBUF(7)='1' 0129 ASSIGN 30021 TO M00000 0130 GOTO 30004 0131 30021 CONTINUE 0132 CALL TERSEQ(48,12,1) 0133 OUTBUF(7)='2' 0134 ASSIGN 30022 TO M00000 0135 GOTO 30004 0136 30022 CONTINUE 0137 CALL TERSEQ(48,16,1) 0138 OUTBUF(7)='3' 0139 ASSIGN 30023 TO M00000 0140 GOTO 30004 0141 30023 CONTINUE 0142 CALL TERSEQ(48,20,1) 0143 OUTBUF(7)='4' 0144 ASSIGN 30024 TO M00000 0145 GOTO 30004 0146 30024 CONTINUE 0147 CALL TERSEQ(59,PRM1,PRM2) 0148 30025 CONTINUE 0149 IF(.NOT.(.TRUE.) )GOTO 30026 0151 IF (.NOT.(OLD.NE.NEW)) GOTO 30028 0153 OLD=NEW 0154 CALL TERSEQ(2,PRM1,PRM2) 0155 DO 30029ILOOP=1,12 0156 IF (.NOT.(STATE(ILOOP) .NE. OSTATE(ILOOP))) GOTO 30032 0158 IF (.NOT.(ILOOP.EQ.3 .OR. ILOOP.EQ.6 .OR. ILOOP.EQ.9 .OR. FORTRAN IV V02.5-11 FRI 22-JUL-88 02:52:12 PAGE 004 SC:CAMSER,SC:CAMSER.FLS/LI:3/-SP=SC:CAMSER 1 ILOOP.EQ.12)) GOTO 30034 0160 HIGH=63 0161 LOW=59 0162 GOTO 30033 0163 30034 CONTINUE 0164 HIGH=59 0165 LOW=63 0166 30033 CONTINUE 0167 IF (.NOT.(STATE(ILOOP))) GOTO 30036 0169 CALL TERSEQ(HIGH,PRM1,PRM2) 0170 GOTO 30035 0171 30036 CONTINUE 0172 CALL TERSEQ(LOW,PRM1,PRM2) 0173 30035 CONTINUE 0174 OUTLEN=10 0175 CONTINUE 0176 IF (ILOOP .NE. 1 ) GOTO 30037 0178 CALL TERSEQ(48,8,20) 0179 CALL MOVE01(OUTLEN,TYPE(1,1),OUTBUF) 0180 GOTO30038 0181 30037 CONTINUE 0182 IF (ILOOP .NE. 2) GOTO 30039 0184 CALL TERSEQ(48,8,40) 0185 CALL MOVE01(OUTLEN,TYPE(1,2),OUTBUF) 0186 GOTO30038 0187 30039 CONTINUE 0188 IF (ILOOP .NE. 3) GOTO 30040 0190 CALL TERSEQ(48,8,60) 0191 CALL MOVE01(OUTLEN,TYPE(1,3),OUTBUF) 0192 GOTO30038 0193 30040 CONTINUE 0194 IF (ILOOP .NE. 4) GOTO 30041 0196 CALL TERSEQ(48,12,20) 0197 CALL MOVE01(OUTLEN,TYPE(1,1),OUTBUF) 0198 GOTO30038 0199 30041 CONTINUE 0200 IF (ILOOP .NE. 5) GOTO 30042 0202 CALL TERSEQ(48,12,40) 0203 CALL MOVE01(OUTLEN,TYPE(1,2),OUTBUF) 0204 GOTO30038 0205 30042 CONTINUE 0206 IF (ILOOP .NE. 6) GOTO 30043 0208 CALL TERSEQ(48,12,60) 0209 CALL MOVE01(OUTLEN,TYPE(1,3),OUTBUF) 0210 GOTO30038 0211 30043 CONTINUE 0212 IF (ILOOP .NE. 7) GOTO 30044 0214 CALL TERSEQ(48,16,20) 0215 CALL MOVE01(OUTLEN,TYPE(1,1),OUTBUF) 0216 GOTO30038 0217 30044 CONTINUE 0218 IF (ILOOP .NE. 8) GOTO 30045 0220 CALL TERSEQ(48,16,40) 0221 CALL MOVE01(OUTLEN,TYPE(1,2),OUTBUF) FORTRAN IV V02.5-11 FRI 22-JUL-88 02:52:12 PAGE 005 SC:CAMSER,SC:CAMSER.FLS/LI:3/-SP=SC:CAMSER 0222 GOTO30038 0223 30045 CONTINUE 0224 IF (ILOOP .NE. 9) GOTO 30046 0226 CALL TERSEQ(48,16,60) 0227 CALL MOVE01(OUTLEN,TYPE(1,3),OUTBUF) 0228 GOTO30038 0229 30046 CONTINUE 0230 IF (ILOOP .NE. 10) GOTO 30047 0232 CALL TERSEQ(48,20,20) 0233 CALL MOVE01(OUTLEN,TYPE(1,1),OUTBUF) 0234 GOTO30038 0235 30047 CONTINUE 0236 IF (ILOOP .NE. 11) GOTO 30048 0238 CALL TERSEQ(48,20,40) 0239 CALL MOVE01(OUTLEN,TYPE(1,2),OUTBUF) 0240 GOTO30038 0241 30048 CONTINUE 0242 IF (ILOOP .NE. 12) GOTO 30049 0244 CALL TERSEQ(48,20,60) 0245 CALL MOVE01(OUTLEN,TYPE(1,3),OUTBUF) 0246 30038 CONTINUE 0247 30049 CONTINUE 0248 ASSIGN 30050 TO M00000 0249 GOTO 30004 0250 30050 CONTINUE 0251 30032 CONTINUE 0252 30029 CONTINUE 0253 30030 CONTINUE 0254 CALL MOVE01(16,STATE,OSTATE) 0255 30028 CONTINUE 0256 CALL READEF(3,IDS) 0257 IF (IDS.NE.0) GOTO 30026 0259 ASSIGN 30051 TO M00002 0260 GOTO 30011 0261 30051 CONTINUE 0262 IF (IDS.NE.1) GOTO 30001 0264 GOTO 30025 0265 30026 CONTINUE 0266 CALL TERSEQ(59,PRM1,PRM2) 0267 CALL TERSEQ(85,PRM1,PRM2) 0268 CALL TERSEQ(50,PRM1,PRM2) 0269 GOTO 30002 0270 30001 CONTINUE 0271 CALL TERSEQ(59,PRM1,PRM2) 0272 CALL TERSEQ(85,PRM1,PRM2) 0273 CALL TERSEQ(50,PRM1,PRM2) 0274 OUTLEN=28 0275 CALL MOVE01(OUTLEN,'...CMS - FEL I KOMMUNIKATION',OUTBUF) 0276 ASSIGN 30052 TO M00000 0277 GOTO 30004 0278 30052 CONTINUE 0279 30002 CONTINUE 0280 CALL EXIT 0281 GOTO 30053 FORTRAN IV V02.5-11 FRI 22-JUL-88 02:52:12 PAGE 006 SC:CAMSER,SC:CAMSER.FLS/LI:3/-SP=SC:CAMSER 0282 30004 CONTINUE 0283 IPARAM(2)=OUTLEN 0284 CALL WTQIO(IOWLB,5,2,,,IPARAM,IDS) 0285 IF (.NOT.(IDS.NE.1)) GOTO 30055 0287 STOP 'CMS WTQIO WRITE IDS' 0288 30055 CONTINUE 0289 GOTO M00000 0290 30053 CONTINUE 0291 GOTO 30056 0292 30009 CONTINUE 0293 CALL GETADR(I2PARAM(1),INBUF) 0294 I2PARAM(2)=1 0295 CALL WTQIO(IORVB,5,3,,IOSB,I2PARAM,IDS) 0296 IF (.NOT.(IDS.NE.1)) GOTO 30058 0298 STOP 'CMS WTQIO READ IDS' 0299 30058 CONTINUE 0300 CALL QIO(IORVB,5,3,,IOSB,I2PARAM,IDS) 0301 IF (.NOT.(IDS.NE.1)) GOTO 30060 0303 STOP 'CMS QIO READ IDS' 0304 30060 CONTINUE 0305 GOTO M00001 0306 30056 CONTINUE 0307 GOTO 30061 0308 30011 CONTINUE 0309 CONTINUE 0310 CALL SDRCN(TASK,SNDBUF,4,,IESB,,IDS) 0311 IF (IDS.NE.1) GOTO 30062 0313 CALL WAITFR(4,IDS) 0314 IF (IDS.NE.1) GOTO 30062 0316 IF (IESB(1).NE.1) GOTO 30062 0318 CALL RECEIV(TASK,RECBUF,,IDS) 0319 IF (IDS.NE.1) GOTO 30062 0321 GOTO 30063 0322 30062 CONTINUE 0323 IDS=-1 0324 30063 CONTINUE 0325 GOTO M00002 0326 30061 CONTINUE 0327 END FORTRAN IV DIAGNOSTICS FOR PROGRAM UNIT CAMSER IN LINE 0155, WARNING: DO LOOP ENTRY AT LABEL "30050" IN LINE 0327, WARNING: VARIABLE "I2PARA" NAME EXCEEDS 6 CHARACTERS IN LINE 0328, WARNING: NON-STANDARD STATEMENT ORDERING FORTRAN IV STORAGE MAP FOR PROGRAM UNIT CAMSER LOCAL VARIABLES, .PSECT $DATA, SIZE = 000424 ( 138. WORDS) NAME TYPE OFFSET NAME TYPE OFFSET NAME TYPE OFFSET CR L*1 000366 FRONT L*1 000410 HIGH I*2 000400 IDS I*2 000376 ILOOP I*2 000406 IORVB I*2 000360 IOWLB I*2 000356 LF L*1 000367 LOW I*2 000402 M00000 I*2 000416 M00001 I*2 000420 M00002 I*2 000422 NEW I*2 000026 Eqv OLD I*2 000374 OUTLEN I*2 000404 PRM1 I*2 000412 PRM2 I*2 000414 TASK R*4 000362 LOCAL AND COMMON ARRAYS: NAME TYPE SECTION OFFSET ------SIZE----- DIMENSIONS IESB I*2 $DATA 000154 000020 ( 8.) (8) INBUF L*1 $DATA 000142 000012 ( 5.) (10) IOSB I*2 $DATA 000174 000004 ( 2.) (2) IPARAM I*2 $DATA 000112 000014 ( 6.) (6) ISB L*1 $DATA 000174 000004 ( 2.) (4) I2PARA I*2 $DATA 000126 000014 ( 6.) (6) OSTATE L*1 $DATA 000072 000020 ( 8.) (16) OUTBUF L*1 $DATA 000200 000120 ( 40.) (80) RECBUF I*2 $DATA 000002 000036 ( 15.) (15) SNDBUF I*2 $DATA 000040 000032 ( 13.) (13) STATE L*1 $DATA 000006 000020 ( 8.) (16) TYPE L*1 Vec $DATA 000320 000036 ( 15.) (10,3) SUBROUTINES, FUNCTIONS, STATEMENT AND PROCESSOR-DEFINED FUNCTIONS: NAME TYPE NAME TYPE NAME TYPE NAME TYPE NAME TYPE CHANGE R*4 EXIT R*4 GETADR R*4 MOVE01 I*2 QIO R*4 READEF R*4 RECEIV R*4 SDRCN R*4 TERSEQ R*4 WAITFR R*4 WTQIO R*4