30 T=TIME :Y=2000:M=INT (T/1E4):T=T-M*1E4:D=INT (T/1E2) 40 L=-50 50 WAIT 0 60 CLS : PRINT "Year (";STR$ Y;") ";: INPUT Y 70 CLS : PRINT "Month (";STR$ M;") ";: INPUT M 80 CLS : PRINT "Day (";STR$ D;") ";: INPUT D 90 CLS : WAIT 110 J=INT (365.2422*Y+30.44*(M-1)+D+1) 120 N=M-2+12*(M<3) 130 Z=Y-(M<3) 140 E=INT (Z/100) 150 Z=Z-100*E 160 W=INT (2.61*N-.2)+D+Z+INT (Z/4)+INT (E/4)-2*E 170 W=W-7*INT (W/7) 180 X=J-7*INT (J/7) 190 J=J-X+W-7*(X&C0 END 300 WAIT 0:P$="Y": PRINT "Print output (Y/N) ";: INPUT P$ 310 IF P$<>"Y" END 320 "MPRINT" CLS : PRINT "Latitude (";STR$ L;") ";: INPUT L 330 IF L<-90 LET L=-90 340 IF L>90 LET L=90 360 CLS : PRINT "Printing...": WAIT 380 M$=STR$ M: IF M<10 LET M$="0"+M$ 390 D$=STR$ D: IF D<10 LET D$="0"+D$ 400 TEXT : CSIZE 3: LPRINT STR$ Y;"-";M$;"-";D$ 410 GRAPH : GLCURSOR (216/2,-216/2+15): SORGN :R=108: DEGREE 420 C=9: FOR A=0 TO 360 STEP 6 430 LINE -(R*SIN (A),R*COS (A)),C 440 C=0: NEXT A 450 V=N*2:C0=9:C1=0 460 IF P>=0 LET V=2-V:C0=0:C1=9 470 FOR S=1 TO 2:C=9 480 FOR I=-R TO R STEP 8 490 XO=I*COS (-L):YO=I*SIN (-L) 500 W=√(R*R-I*I) 510 XN=W*SIN (L):YN=W*COS (L) 520 X=XO-XN+V*XN:Y=YO-YN+V*YN 530 IF S=1 LINE -(X,Y),C:C=0 540 IF S=2 GLCURSOR (XO-XN,YO-YN): LINE -(X,Y),C0: LINE -(XO+XN,YO+YN),C1 550 NEXT I: NEXT S 560 GLCURSOR (-216/2,-216/2-25): SORGN 710 TEXT : CSIZE 2: LPRINT "Moon is lit about" 720 LPRINT STR$ Q;"% and headed" 730 LPRINT "for a ";Z$;" moon." 740 LF 3: END