1 COMMON A, AL, B, BASEONLY, C, C$, C1, CAT$, CC, CKT$, D, D$, DD, DIA, DIMN$, DMS, E, EO, EX$, F, F$, FD, FF, FQ, FRQ, G$, GO$, I, I$, L, LATLONG, LD, LL, LN, LS, LW, LX, MAX, MENU, MIN, MX, N, NN, NT, OV, P, PI, PROG$, Q, QQ, QU, R, RA, RC, T, T$, U, U$, UH, UL$, V$, VC, W, WHIP, WIRD, WW, X, X$, X1, XS, Z$, ZP, ZS
10 'FOTOMOVE - 8 OCT 86 rev. 12 MAR 2000
20 CLEAR:CLS:KEY OFF
30 COLOR 7,0,3
40 UL$=STRING$(80,205)
50 E$=STRING$(80,32)
60 F$=CHR$(159)+"/"
70 T$=" SUBJECTS IN MOTION "
80 COLOR 0,7
90 PRINT UL$;
100 LOCATE CSRLIN-1,INT((80-LEN(T$))/2):PRINT T$
110 COLOR 3,0:PRINT STRING$(80,223);
120 COLOR 7,0
130 PRINT " Press number in < > to:"
140 PRINT UL$;
150 PRINT "  < 1 >  Create intentional blur"
160 PRINT "  < 2 >  Stop action"
170 PRINT UL$;
180 PRINT "  < 0 >  EXIT"
190 Z$=INKEY$
200 IF Z$="1"THEN 250
210 IF Z$="2"THEN 660
220 IF Z$="0"THEN CLS:RUN "fotomenu"
230 GOTO 190
240 '
250 '.....intentional blur
260 VIEW PRINT 3 TO 24:CLS:VIEW PRINT
270 COLOR 0,7
280 T$=" BLURRED SUBJECT IN MOTION "
290 LOCATE 1,INT((80-LEN(T$))/2):PRINT T$
300 COLOR 3,0:PRINT STRING$(80,223);
310 COLOR 7,0
320 VIEW PRINT 3 TO 24:CLS:VIEW PRINT:LOCATE 3
330 PRINT " Press number in < > to indicate subject travel:"
340 PRINT UL$;
350 PRINT "   < 1 >  Motion across field of view"
360 PRINT "   < 2 >  Motion at 45 degree angle"
370 PRINT UL$;
380 Z$=INKEY$
390 IF Z$<>"1"AND Z$<>"2"THEN 380
400 IF Z$="1"THEN L=5:M=6:D=1:GOTO 430
410 IF Z$="2"THEN L=6:M=5:D=2:GOTO 430
420 GOTO 380
430 LOCATE 3:PRINT E$;
440 PRINT E$;
450 LOCATE L:PRINT SPACE$(9)
460 LOCATE M:PRINT TAB(7);SPACE$(53)
470 LOCATE 8
480 INPUT "   ENTER: Speed of subject (miles per hour) .......";S
490 LOCATE CSRLIN-1:PRINT SPACE$(9):LOCATE CSRLIN-1,50:PRINT S;" m.p.h.
500 INPUT "   ENTER: Desired length of blur (feet) ...........";B
510 LOCATE CSRLIN-1:PRINT SPACE$(9):LOCATE CSRLIN-1,50:PRINT B;" feet
520 T=(B/1.500000/S)*D
530 PRINT UL$;
540 COLOR 15,4
550 LOCATE CSRLIN,11:PRINT " Use shutter speed of ";
560 IF T>=5.000000E-01 THEN PRINT USING "###";T;:PRINT " sec.":GOTO 1200
570 T=1/T:GOSUB 610
580 Z$=RIGHT$(STR$(T),LEN(STR$(T))-1)
590 PRINT "1/";Z$;;" sec.";:GOTO 1200
600 '
610 FOR  Z=1 TO 11
620 READ SS:IF T>SS THEN X=SS
630 NEXT Z:T=X
640 RETURN
650 '
660 '.....stop action
670 VIEW PRINT 3 TO 24:CLS:VIEW PRINT
680 COLOR 0,7
690 LOCATE 1:PRINT UL$;
700 T$=" STOP ACTION "
710 LOCATE CSRLIN-1,INT((80-LEN(T$))/2):PRINT T$
720 COLOR 3,0:PRINT STRING$(80,223);
730 COLOR 7,0
740 PRINT " Press number in < > to describe motion of Subject"
750 PRINT UL$;
760 PRINT "  < 1 >  Motion across field of view"
770 PRINT "  < 2 >  Motion at 45 degree angle"
780 PRINT "  < 3 >  Motion toward or away from camera"
790 PRINT UL$;
800 Z$=INKEY$
810 IF Z$<>"1"AND Z$<>"2"AND Z$<>"3"THEN 800
820 IF Z$="1"THEN L=5:M=6:K=7:D=1:GOTO 860
830 IF Z$="2"THEN L=6:M=5:K=7:D=2:GOTO 860
840 IF Z$="3"THEN L=7:M=5:K=6:D=4:GOTO 860
850 GOTO 800
860 LOCATE 3:PRINT E$;
870 PRINT E$;
880 LOCATE L:PRINT SPACE$(9)
890 LOCATE M:PRINT TAB(7);SPACE$(50)
900 LOCATE K:PRINT TAB(7);SPACE$(50)
910 LOCATE 9
920 INPUT "  ENTER: Speed of subject (miles per hour) .......";S
930 IF S=0 THEN LOCATE CSRLIN-1:GOTO 920
940 LOCATE CSRLIN-1:PRINT SPACE$(8):LOCATE CSRLIN-1,49:PRINT S;" m.p.h.
950 INPUT "  ENTER: Subject distance (feet) .................";FT
960 IF FT=0 THEN LOCATE CSRLIN-1:GOTO 950
970 LOCATE CSRLIN-1:PRINT SPACE$(8):LOCATE CSRLIN-1,49:PRINT FT;" feet
980 INPUT "  ENTER: Focal length of lens being used (mm) ....";LU
990 IF LU=0 THEN LOCATE CSRLIN-1:GOTO 980
1000 LOCATE CSRLIN-1:PRINT SPACE$(8):LOCATE CSRLIN-1,49:PRINT LU;" mm
1010 INPUT "  ENTER: Focal length of your normal lens (mm) ...";LN
1020 IF LN=0 THEN LOCATE CSRLIN-1:GOTO 1010
1030 LOCATE CSRLIN-1:PRINT SPACE$(8):LOCATE CSRLIN-1,49:PRINT LN;" mm
1040 MAG=LU/LN
1050 T=(FT*D)/(875*S*MAG)
1060 PRINT UL$;
1070 COLOR 15,4
1080 LOCATE CSRLIN,10:PRINT " Use shutter speed of ";
1090 IF T>=5.000000E-01 THEN PRINT USING "###";T;:PRINT " sec. or faster ":GOTO 1200
1100 T=1/T
1110 GOSUB 1150
1120 Z$=RIGHT$(STR$(T),LEN(STR$(T))-1)
1130 PRINT "1/";Z$;;" sec. or faster ";:GOTO 1200
1140 '
1150 FOR  Z=1 TO 11
1160 READ SS:IF T<SS THEN T=SS:GOTO 1180
1170 NEXT Z
1180 RETURN
1190 '
1200 '.....bottom border
1210 COLOR 7,0:PRINT UL$;
1220 GOSUB 1270
1230 GOTO 10
1240 '
1250 DATA 2,4,8,15,30,60,125,250,500,1000,2000
1260 '
1270 'PRT
1280 KEY OFF:GOSUB 1350:LOCATE 25,5:COLOR 0,2
1290 PRINT " Send this page to:(1)Printer Queue? (2)Printout? ";
1300 PRINT "(3)Next page? (1/2/3)";:COLOR 7,0
1310 Z$=INKEY$:IF Z$<"1"OR Z$>"3"THEN 1310 ELSE GOSUB 1350
1320 IF Z$="3"THEN RETURN
1330 FOR I%=1 TO 24:FOR J%=1 TO 80:LPRINT CHR$(SCREEN(I%,J%));:NEXT J%:NEXT I%
1340 IF Z$="2"THEN LPRINT CHR$(12) ELSE 1280
1350 LOCATE 25,1:PRINT STRING$(80,32);:RETURN
