10 REM * BIORHYTHM PROGRAM * 20 REM FROM INTERFACE AGE, AUGUST, 1976 30 REM EDITED & TESTED BY JIM PETERSEN ON 9/27/78 40 REM MODIFIED FOR OSBORNES BY JOE JANULES 9/14/83 50 REM %% PROGRAM COMPUTES HOW CERTAIN PERSON WILL FEEL PHYSICALLY, 60 REM EMOTIONALLY AND INTELLECTUALLY ON ANY DAY %% 70 DIM A(12),M$(12) 80 DATA 0,31,59,90,120,151,181,212,243,273,304,334 90 FOR I=1 TO 12:READ A(I):NEXT 100 PI=3.14159 110 PRINT CHR$(26):REM Screen clear character 120 PRINT:PRINT 130 PRINT "This program will print out your personal BIO-RHYTHM" 140 PRINT "analysis for any number of days you select." 150 PRINT "Dates should be entered in numerical form with the" 160 PRINT "MONTH, DAY and YEAR separated by commas. I. E." 170 PRINT "July 4, 1976 would be entered as 7,4,76." 180 PRINT 190 INPUT "How many days do you want plotted";S 200 IF S<=0 THEN 190 210 PRINT : PRINT 220 PRINT "What is the date at which you would like the";S;"day" 230 INPUT "analysis to start";M,D,Y 240 S=S-1 250 PRINT : PRINT 260 M=INT(M):D=INT(D):Y=INT(Y) 270 INPUT "What is the date of your birth";MB,DB,YB 280 MB=INT(MB):DB=INT(DB):YB=INT(YB) 290 PRINT : PRINT 300 INPUT "What is your name";A$ 310 PRINT : PRINT 320 X1=14:IF PEEK(3)=3 THEN X1=2:GOTO300:REM STATUS port 330 INPUT "Do you want it on hard copy";HC$ 340 PRINT : PRINT : PRINT 350 PRINT : PRINT : PRINT 360 REM IF LEFT$(HC$,1)="Y" THEN LPRINT : REM Turn on hard copy 370 IF HC$="Y" THEN POKE 57613!,63 380 IF HC$="N" OR HC$="n" THEN GOTO 390 390 DEF FNI(X)=INT(20*SIN(2*PI*X/33)+.5) 400 DEF FNE(X)=INT(20*SIN(2*PI*X/28)+.5) 410 DEF FNP(X)=INT(20*SIN(2*PI*X/23)+.5) 420 T=INT(D+365.25*Y+A(M)+.01*M-.03) 430 TB=INT(DB+365.25*YB+A(MB)+.01*MB-.03) 440 X=T-TB 450 V=INT((40-LEN(A$))/2) 460 RB=TB-1-INT((TB-1)/7)*7 470 DATA MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY 480 FOR I=0 TO 6:READ DAY$(I):NEXT 490 DATA MON,TUE,WED,THU,FRI,SAT,SUN 500 FOR I=0 TO 6:READ D$(I):NEXT 510 DATA JANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST 520 PRINT:PRINT 530 DATA SEPTEMBER,OCTOBER,NOVEMBER,DECEMBER 540 FOR I=1 TO 12:READ M$(I):NEXT 550 PRINT SPC(2):FOR I=1 TO V:PRINT "*";:NEXT 560 PRINT "BIO-RHYTHM ANALYSIS FOR ";A$; 570 PRINT "*";:IF POS(0)<66 THEN 570 580 PRINT:PRINT 590 R=T-1-INT((T-1)/7)*7 600 LE=21+LEN(DAY$(R))+LEN(M$(M))+LEN(STR$(D))+LEN(RIGHT$(STR$(Y),2)) 610 V2=INT((64-LE)/2) 620 PRINT SPC(2):FOR I=1 TO V2:PRINT "*";:NEXT 630 PRINT "STARTING DATE: ";DAY$(R);", ";M$(M);STR$(D);", 19"; 640 PRINT RIGHT$(STR$(Y),2); 650 PRINT "*";:IF POS(0)<66 THEN 650 660 PRINT:PRINT 670 LL=LEN(DAY$(RB))+LEN(M$(MB))+LEN(STR$(DB))+LEN(RIGHT$(STR$(YB),2)) 680 LB=LL+18 690 VB=INT((64-LB)/2) 700 PRINT SPC(2):FOR I=1 TO VB:PRINT "*";:NEXT 710 PRINT "BIRTH DATE: ";DAY$(RB);", ";M$(MB);STR$(DB);", 19"; 720 PRINT RIGHT$(STR$(YB),2); 730 PRINT "*";:IF POS(0)<66 THEN 730 740 PRINT:PRINT:PRINT 750 PRINT TAB(20);"DOWN",TAB(39);"CRITICAL",TAB(62);"UP" 760 PRINT D$(R);D;M$(M); 770 F(0)=42:F$(0)="*" 780 F(1)=42+FNI(X):F$(1)="I" 790 F(2)=42+FNE(X):F$(2)="E" 800 F(3)=42+FNP(X):F$(3)="P" 810 FOR I=0 TO 2 820 FOR J=I+1 TO 3 830 IF F(I)X THEN 770 930 IF Z=S THEN 1030 940 R=R+1:IF R=7 THEN R=0 950 D=D+1:IF M=4 OR M=6 OR M=9 OR M=11 THEN L=30:GOTO 990 960 IF M=2 AND Y/4=INT(Y/4) THEN L=29:GOTO 990 970 IF M=2 THEN L=28:GOTO 990 980 L=31 990 IF D>L THEN D=D-L:M=M+1:GOTO 1010 1000 PRINT D$(R);D;:Z=Z+1:GOTO 770 1010 IF M=13 THEN M=1:Z=Z+1:GOTO 760 1020 Z=Z+1:GOTO 760 1030 PRINT:PRINT 1040 IF X1=14 THEN POKE 57613!,56 1050 INPUT "Do you want another Biorhythm";A$ 1060 IF A$="N" OR A$="n" THEN GOTO 1080 1070 IF A$="Y" OR A$="y" THEN RUN ELSE RUN "DIR" 1080 POKE 57613!,56 1090 PRINT : PRINT : PRINT 1100 PRINT : PRINT : PRINT 1110 PRINT : PRINT : PRINT 1120 PRINT : PRINT : PRINT 1130 PRINT "THANK YOU -- COME BACK AGAIN SOMETIME!" 1140 PRINT : PRINT : PRINT 1150 PRINT : PRINT : PRINT 1160 PRINT : PRINT : PRINT 1170 PRINT : PRINT : PRINT 1180 END