10 REM * Revised for TeleVideo TPC-I/Osborne Executive by Ronleigh Dale,
20 REM * Box 70252, Reno Nevada 89570, 702/825-6060, v1.2, 7/21/86
30 PRINT CHR$(26)
40 PRINT"BIORYTHM CHART":PRINT:PRINT:PRINT
50 REM
60 DIM A(12),D(12),N(25)
70 FOR I=1 TO 12:READ A(I):NEXT I
80 FOR I=1 TO 12:READ D(I):NEXT I
90 DATA 0,31,59,90,120,151,181,212,243,273,304,334
100 DATA 31,28,31,30,31,30,31,31,30,31,30,31
110 RESTORE
120 P=6.28318
130 PRINT"ENTER TODAY'S DATE...(MM,DD,YYYY) ";:INPUT M,D,Y
140 M2=M:D2=D:Y3=Y
150 Y5=Y
160 GOSUB 250
170 Z=T
180 PRINT"ENTER BIRTHDATE......(MM,DD,YYYY) ";:INPUT M,D,Y
190 M1=M:D1=D:Y2=Y
200 GOSUB 250
210 V=T-Z
220 V=ABS(V)
230 PRINT"ENTER NAME........................";:INPUT W$
240 GOTO 470
250 Y1=Y-1800
260 Q1=INT(Y1/4)
270 Q2=INT(Q1/25)
280 Q3=INT((Y1+200)/400)
290 K=0
300 IF Q1*4=Y1 THEN 320
310 GOTO 370
320 IF Q2*100=Y1 THEN 340
330 GOTO 370
340 IF Q3*400-200=Y1 THEN 360
350 GOTO 370
360 K=1
370 T=365*Y1+Q1-Q2+Q3-K
380 T=T+A(M)+D-1
390 IF M<3 THEN 410
400 T=T+K
410 IF INT(Y1/4)=Y1/4 THEN 430
420 GOTO 450
430 IF M>2 THEN 450
440 T=T-1
450 J=T-7*INT(T/7)
460 RETURN
470 N(X)=0
480 PRINT"HOW MANY DAYS TO GRAPH............";
490 INPUT D9:PRINT:PRINT
500 PRINT CHR$(26)
510 LPRINT"YOUR PERSONAL BIORYTHM CHART FOR TODAY":LPRINT
520 LPRINT "THE MEDIAN LINE  (0) IS YOUR CRITICAL POINT
530 LPRINT "THE HIGH PERIODS (+) ARE WHEN YOU ARE LIKELY TO BE AT YOUR BEST
540 LPRINT "THE LOW PERIODS  (-) ARE WHEN YOU ARE LIKELY TO BE AT YOUR WORST
550 LPRINT:LPRINT
560 LPRINT "GRAPHIC SYMBOLS:":LPRINT
570 LPRINT "I:  MEDIAN LINE          
580 LPRINT "P:  PHYSICAL CYCLE       
590 LPRINT "S:  SENSITIVITY CYCLE    
600 LPRINT "C:  COGNATIVE CYCLE      
610 PRINT CHR$(26)
620 LPRINT:LPRINT
630 LPRINT "YOUR BIRTHDAY IS        ";:A9=M1:GOSUB 1390:LPRINT D1;Y2
640 LPRINT "WHICH WAS A             ";:B9=J+1:GOSUB 1510
650 LPRINT ;V;"DAYS OR";INT((V/365)*100)/100;"YEARS AGO"
660 LPRINT
670 LPRINT "HERE IS THE GRAPH FOR   ";W$
680 LPRINT "STARTING AT             ";:A9=M2:GOSUB 1390:LPRINT D2;Y3
690 LPRINT "ENDING   AT             ";
700 M9=M2:D8=D2+D9-1:Y9=Y3
710 IF M9>12 THEN 730
720 GOTO 740
730 M9=1:Y9=Y9+1
740 IF M9=2 THEN 760
750 GOTO 790
760 IF INT(Y9/4)=Y9/4 THEN 780
770 GOTO 790
780 K=1
790 IF D8>D(M9)+K THEN 810
800 GOTO 830
810 D8=D8-(D(M9)+K):M9=M9+1:K=0
820 GOTO 710
830 A9=M9:GOSUB 1390:LPRINT D8;Y9
840 PRINT CHR$(26)
850 LPRINT:LPRINT:LPRINT TAB(7);"DATE";TAB(25);"(-)";TAB(43);"(0)";
860 LPRINT TAB(61);"(+)"
870 LPRINT
880 J1=V+J:J1=J1-7*INT(J1/7):D2=D2-1:J1=J1-1
890 V=V-1:K=0
900 FOR I=1 TO D9:V=V+1:D2=D2+1:J1=J1+1
910 IF M2=2 THEN 930
920 GOTO 960
930 IF INT(Y3/4)=Y3/4 THEN 950
940 GOTO 960
950 K=1
960 IF D2>D(M2)+K THEN 980
970 GOTO 990
980 M2=M2+1:D2=1
990 IF J1<7 THEN 1010
1000 J1=0
1010 IF M2>12 THEN 1030
1020 GOTO 1040
1030 LPRINT:LPRINT TAB(33);"** HAPPY NEW YEAR **":LPRINT:M2=1:Y3=Y3+1
1040 IF J1+1=3 THEN 1060
1050 GOTO 1100
1060 IF D2=13 THEN 1080
1070 GOTO 1100
1080 LPRINT:LPRINT TAB(22);
1090 LPRINT "** BEWARE ! !  FRIDAY THE THIRTEENTH **":LPRINT
1100 IF M2=M1 THEN 1120
1110 GOTO 1150
1120 IF D2=D1 THEN 1140
1130 GOTO 1150
1140 LPRINT:LPRINT TAB(33);"** HAPPY";ABS(Y3-Y2);"BIRTHDAY **":LPRINT
1150 E9=J1+1:GOSUB 1700
1160 LPRINT " ";:C9=M2:GOSUB 1580:LPRINT D2;Y3;
1170 X=23:GOSUB 1770:P5=X:X=28
1180 GOSUB 1770:S5=X:X=33:GOSUB 1770
1190 C5=X
1200 N=0:FOR L=19 TO 65:LPRINT TAB(L);
1210 IF P5=L THEN 1230
1220 GOTO 1240
1230 LPRINT "P";:GOTO 1330
1240 IF S5=L THEN 1260
1250 GOTO 1270
1260 LPRINT "S";:GOTO 1330
1270 IF C5=L THEN 1290
1280 GOTO 1300
1290 LPRINT "C";:GOTO 1330
1300 IF 44=L THEN 1320
1310 GOTO 1360
1320 LPRINT "I";
1330 N=N+1:IF N=4 THEN 1350
1340 GOTO 1360
1350 L=100
1360 NEXT L:LPRINT:NEXT I
1370 LPRINT CHR$(12)
1380 GOTO 1790
1390 IF A9=1 THEN LPRINT "JANUARY";:RETURN
1400 IF A9=2 THEN LPRINT "FEBRUARY";:RETURN
1410 IF A9=3 THEN LPRINT "MARCH";:RETURN
1420 IF A9=4 THEN LPRINT "APRIL";:RETURN
1430 IF A9=5 THEN LPRINT "MAY";:RETURN
1440 IF A9=6 THEN LPRINT "JUNE";:RETURN
1450 IF A9=7 THEN LPRINT "JULY";:RETURN
1460 IF A9=8 THEN LPRINT "AUGUST";:RETURN
1470 IF A9=9 THEN LPRINT "SEPTEMBER";:RETURN
1480 IF A9=10 THEN LPRINT "OCTOBER";:RETURN
1490 IF A9=11 THEN LPRINT "NOVEMBER";:RETURN
1500 LPRINT "DECEMBER";:RETURN
1510 IF B9=1 THEN LPRINT "WEDNESDAY";:RETURN
1520 IF B9=2 THEN LPRINT "THURSDAY";:RETURN
1530 IF B9=3 THEN LPRINT "FRIDAY";:RETURN
1540 IF B9=4 THEN LPRINT "SATURDAY";:RETURN
1550 IF B9=5 THEN LPRINT "SUNDAY";:RETURN
1560 IF B9=6 THEN LPRINT "MONDAY";:RETURN
1570 LPRINT "TUESDAY";:RETURN
1580 IF C9=1 THEN LPRINT "JAN";:RETURN
1590 IF C9=2 THEN LPRINT "FEB";:RETURN
1600 IF C9=3 THEN LPRINT "MAR";:RETURN
1610 IF C9=4 THEN LPRINT "APR";:RETURN
1620 IF C9=5 THEN LPRINT "MAY";:RETURN
1630 IF C9=6 THEN LPRINT "JUN";:RETURN
1640 IF C9=7 THEN LPRINT "JUL";:RETURN
1650 IF C9=8 THEN LPRINT "AUG";:RETURN
1660 IF C9=9 THEN LPRINT "SEP";:RETURN
1670 IF C9=10 THEN LPRINT "OCT";:RETURN
1680 IF C9=11 THEN LPRINT "NOV";:RETURN
1690 LPRINT "DEC";:RETURN
1700 IF E9=1 THEN LPRINT "WED";:RETURN
1710 IF E9=2 THEN LPRINT "THU";:RETURN
1720 IF E9=3 THEN LPRINT "FRI";:RETURN
1730 IF E9=4 THEN LPRINT "SAT";:RETURN
1740 IF E9=5 THEN LPRINT "SUN";:RETURN
1750 IF E9=6 THEN LPRINT "MON";:RETURN
1760 LPRINT "TUE";:RETURN
1770 X=INT(SIN((V/X-INT(V/X))*P)*18)+44
1780 RETURN
1790 END
 IF E9=6 THEN LPRINT "MON";:RETURN
1760 LPRI