100 3.1 IF (J-1) 3.9; IF (TI-BG(J)) 3.9,3.9 110 C CHECK IF SELECTED TIME INTERVAL IS WHOLELY CONTAINED WITHIH THE LATEST MOVEMENT. 120 3.2 IF (EN(J)-TI) 3.5 130 C CHECK IF THIS IS THE FIRST TIME WE'RE INTO THE SELECTED INTERVAL. 140 3.3 IF (-AF) 3.4; SET AT=TI-BG(J); GOTO 3.6 150 C NOT THE FIRST TIME, CHECK IF ALL OF THIS MOVEMENT'S TIME IS SELECTED. 160 3.4 IF (EN(J)-TI) 3.45; SET AT=PT+MT; GOTO 3.6 170 3.45 SET AT=EN(J)-(TI-PT-MT); GOTO 3.6 180 C SELECTED INTERVAL TIME IS WHOLELY CONTAINED WITHIN THE LATEST MOVEMENT. 190 3.5 SET AT=EN(J)-BG(J) 200 C UPDATE INTERVAL TIME AND VELOCITY PRODUCT. 210 3.6 SET VT(J)=VT(J)+AT; SET AV(J)=AV(J)+(AT*SV); SET AF=1 220 C CHECK IF WE'RE PAST THE LATEST SELECTED INTERVAL TIME. 230 3.7 IF (TI-EN(J)) 3.9; SET J=J+1; SET JJ=JJ+1;SET AF=0 240 3.71 IF (J-CN) 3.9,3.9;SET J=0 250 C SAVE TIME COORDINATE FOR NEXT TIME. 260 3.9 SET OT=X; SET LM=MC; SET LT=TI; GOTO 2.1 270 C FLUSH ANY ADDITIONAL MOVEMENTS. 280 4.1 IF (EF) 5.1 290 4.2 DO 30; GO 4.1 300 C DISPLAY COMPLETE. 310 C TYPE OUT FINAL RESULTS. 320 5.1 TYPE !,"# OF MOVEMENTS USED: ",%4.00,LM-IM 330 5.2 TYPE !,"LAST DISPLAYED MOVEMENT TIME:",%8.03,LT 340 5.3 TYPE !,"TOTAL # OF MOVEMENTS: ",%4.00,MC 350 5.4 TYPE !,"TOTAL EXPERIMENT TIME: ",%8.03,TI 360 5.5 DO 17 370 5.6 ASK !,A; LEAVE 380 C 390 C 400 C CALCULATE TIME LABEL VALUES. 410 7.1 SET TD=FITR(RT/5) 420 C ENSURE MINIMUM TIME INTERVAL OF ONE SECOND. 430 7.2 IF (1-TD) 7.3; SET TD=1 440 C SETUP INITIAL TIME LABEL VALUE. 450 7.3 SET T1=ST 460 C OUTPUT LATEST TIME LABEL VALUE. 470 7.4 DO 9 480 C INCREMENT AND TEST LOOP VARIABLE. 490 7.5 SET T1=T1+TD; IF (T1-(ST+RT)) 7.4,7.4 500 C DO EXTRA TIME LINE SCALE ONLY. 510 7.6 SET X=2047; DO 13; DO 10 520 C 530 C 540 C BASIC POINT PLOT OUTPUT. 550 8.1 SET D=FDIS(X*XS+XO,Y*YS+YO) 560 C 570 C 580 C CALCULATE X VALUE FOR TIME LINE SCALE. 590 9.1 SET X=(((T1-ST)/RT)*4096)-2048; SET ZZ=X; DO 13 600 C OUTPUT SCALE LINE. 610 9.2 DO 10 620 C SET Y COORDINATE FOR BLURB (BOTTOM OF SCREEN). 630 9.3 SET Y=TY-147; DO 14 640 9.31 IF (ZZ+2048) 9.32,9.4,9.32 650 9.32 SET X=X-250 660 C OUTPUT "T=" BLURB. 670 9.4 SET D=FDIS(X,Y,0,"^T=",2,1) 680 C MOVE X COORDINATE AND OUTPUT DIGITS. 690 9.5 SET D=FDIS(X+110,Y,2,T1,3,2,1) 700 C 710 C 720 C OUTPUT SCALE LINES. 730 10.1 SET SY=XY; DO 11 740 10.2 SET SY=YY; DO 11 750 10.3 SET SY=VY; DO 11 760 10.4 SET SY=TY; DO 11 770 C 780 C 790 C OUTPUT TIME SCALE MARKS. 800 11.1 SET Y=SY-30; DO 14 810 11.2 SET D=FDIS(X,Y,3) 820 11.3 SET Y=SY+30; DO 14 830 11.4 SET D=FDIS(X,Y,4) 840 C 850 C 860 C X SCALING ROUTINE. 870 13.1 SET X=X*XS+XO 880 C 890 C 900 C Y SCALING ROUTINE. 910 14.1 SET Y=Y*YS+YO 920 C 930 C 940 C MAJOR AXIS OUTPUT ROUTINE. 950 15.1 SET X=-2048;DO 13; DO 14;SET D=FDIS(X,Y,3) 960 15.2 SET X=2047; DO 13; SET D=FDIS(X,Y,4) 970 C 980 C 990 C SELECTED TIME PAIR SETUP ROUTINE. 1000 C 1010 C OBTAIN PAIR COUNT. 1020 16.1 SET AF=0; ASK CN 1030 16.2 IF (-CN) 16.3; SET J=0; SET JJ=0; RETURN 1040 16.3 FOR J=1,CN; SET VT(J)=0;SET AV(J)=0;SET VT(J)=0;ASK BG(J),EN(J) 1050 16.4 SET J=1; SET JJ=1 1060 C 1070 C 1080 C SELECTED TIME OUTPUT ROUTINE. 1090 17.1 IF (-JJ) 17.2; RETURN 1100 17.2 TYPE !!,"SEL # INTERVAL TIME AVERAGE VELOCITY",! 1110 17.3 FOR J=1,JJ-1; DO 17.9 1120 17.4 RETURN 1130 C SELECTED TIME LOW-LEVEL OUTPUT ROUTINE. 1140 17.9 TYPE !,%2.00,J," ",%6.03,BG(J)," THROUGH",EN(J)," ",AV(J)/VT(J)*GA 1150 C 1160 C 1170 C MOVEMENT DATA INPUT ROUTINE. 1180 C 1190 C GET POTENTIAL ZAP VALUE ALONE FIRST. 1200 30.1 A BX 1210 C CHECK FOR SENTINEL BEFORE GETTING THE REST. 1220 30.2 IF (BX-0ZAP) 30.3,30.7,30.3 1230 C SAFE TO GET THE REST. 1240 30.3 SET OE=EX 1250 30.31 A BY,EX,EY,MT,PT,BL 1260 C GET THE SECOND LINE VALUES ALSO. 1270 30.4 A LX,LY,LV,TX,TY,TV 1280 C UPDATE CURRENT TIME AND MOVEMENT COUNTER. 1290 30.5 SET TI=TI+((PT+MT)/1000); SET MC=MC+1