Compucolor.org – Virtual Media

Listing of file='BIORHY.BAS;01' on disk='vmedia/sampler-sector.ccvf'

120 PRINT :PLOT 27,24,10,10
150 Q9= PEEK (32936)
160 DIM MN$(12),AR(31),CD(31),CY(2),C(2)
170 DIM MX(12)
180 CY(0)= 23:CY(1)= 28:CY(2)= 33
190 C(0)= 1:C(1)= 2:C(2)= 6
200 LL= 8:LH= 103
210 LR= (LH- LL)/ 2:LM= LR+ LL
220 YS= 8:IY= 4
230 FOR I= 1TO 12
240 READ MN$(I)
250 NEXT I
260 FOR I= 1TO 12
270 READ MX(I)
280 NEXT I
290 PLOT 12
300 DIM D$(7)
310 D$(1)= "SUN":D$(2)= "MON":D$(3)= "TUE":D$(4)= "WED"
320 D$(5)= "THU":D$(6)= "FRI":D$(7)= "SAT"
330 PLOT 12,14,6,5
340 PLOT 3,16,0
350 PRINT " BIO-RHYTHM CHART "
360 PRINT
370 PRINT "ENTER BIRTH DATE * MONTH,DAY,YEAR (EX. 1,25,38): ";
380 IF Q9< > 0THEN M= 2:D= 7:Y1= 37:PRINT M","D","Y1
390 IF Q9= 0THEN INPUT M,D,Y1
400 PRINT
410 MM= M:DD= D
420 IF Y1< 100THEN Y1= Y1+ 1900
430 GOSUB 750
440 BD= J2
450 PRINT " YOU WERE BORN ON A ",D$(W)
460 PLOT 10:PLOT 10
470 PRINT "ENTER THE STARTING DATE OF THIS PLOT: ";
480 IF Q9< > 0THEN M= 6:D= 1:Y1= 78:PRINT M","D","Y1
490 IF Q9= 0THEN INPUT M,D,Y1
500 N= M
510 GOSUB 1450
520 DC= D:MC= M
530 IF Y1< 100THEN Y1= Y1+ 1900
540 GOSUB 750
550 IF MM< > MGOTO 580
560 IF DD< > DGOTO 580
570 GOSUB 1470
580 SD= J2
590 ED= SD+ 28
600 YY= YS+ IY* 28
610 PRINT
620 PRINT "Y O U   H A V E   L I V E D ",SD- BD,"   D A Y S "
630 FOR I= 0TO 2000:NEXT I:PLOT 15
640 PLOT 12,6,4,2,250,S,LL- 1,YY
650 PLOT LM,YY,LH+ 1,YY
660 PLOT 255,8
670 PLOT 3,16,0
680 PRINT " BIO-RHYTHM CHART "MN$(N)" "D$" "Y1" "
690 PLOT 3,16,1
700 PRINT "( RED DATES ARE ... SUNDAYS )"
710 PLOT 3,0,31
720 PRINT ,,,"  PHYSICAL    EMOTIONAL    MENTAL"
730 PLOT 3,64,0
740 GOTO 1040
750 C9= .001
760 M9= (- 1)* INT (((14- M)/ 12)+ C9)
770 J1= D- 2447095+ INT ((1461* (Y1+ 4800+ M9)/ 4)+ C9)
780 J2= J1+ INT ((367* (M- 2- 12* M9)/ 12)+ C9)
790 J1= J2- INT ((3* (Y1+ 4900+ M9)/ 400)+ C9)
800 J2= J1
810 W= J2- 7* INT ((J1/ 7)+ C9)+ 1
820 W= INT (W+ C9)
830 RETURN
840 J3= INT (J2+ C9)
850 D8= J2- J3
860 J2= J3
870 L= J2+ 2483589
880 N= INT ((4* L/ 146097)+ C9)
890 L= L- INT (((146097* N+ 3)/ 4)+ C9)
900 Y2= INT ((4000* (L+ 1)/ 1461001)+ C9)
910 L= L- INT (1461* (Y2/ 4)+ C9)+ 31
920 M1= INT (80* (L/ 2447)+ C9)
930 D1= L- INT ((2447* M1/ 80)+ C9)
940 IF M1> 0GOTO 960
950 D1= D1- 1
960 L= INT ((M1/ 11)+ C9)
970 D8= INT (10* D8+ .5)
980 D1= D1+ (D8/ 10)
990 M1= M1+ 2- 12* L
1000 Y2= 100* (N- 49)+ Y2+ L
1010 W= J2- 7* INT ((J2/ 7)+ C9)+ 1
1020 W= INT (W+ C9)
1030 RETURN
1040 FOR RM= 0TO 2
1050 CY= CY(RM)
1060 PLOT 6,C(RM),2
1070 L1= 0:J2= SD:GOSUB 840
1080 D9= 2* (SD- BD)* 3.1415927
1090 XX= INT (SIN (D9/ CY)* LR+ LM)
1100 CD(1)= INT (CD(1)/ 64)* 64+ W
1110 IF XX> LM- 2GOTO 1130
1120 IF XX< LM- 2THEN CD(1)= W+ 64
1130 SN= SGN (XX- LM)
1140 PLOT 253,YS,XX,242
1150 FOR X= SD+ 1TO ED
1160 IF W= 7THEN W= 0
1170 W= W+ 1
1180 D9= 2* (X- BD)* 3.1415927
1190 XX= INT (SIN (D9/ CY)* LR+ LM)
1200 CD(X- SD+ 1)= INT (CD(X- SD+ 1)/ 64)* 64+ W
1210 IF SN= SGN (XX- LM)GOTO 1230
1220 CD(X- SD+ 1)= 64+ W
1230 SN= SGN (XX- LM)
1240 PLOT YS+ (X- SD)* IY,XX
1250 NEXT X
1260 PLOT 255
1270 NEXT RM
1280 PLOT 27,10
1290 FOR I= 1TO 29
1300 X= INT (YS/ 2)+ (I- 1)* IY/ 2
1310 PLOT 3,X,2
1320 PLOT 6,CD(I)
1330 IF CD(I)> 64THEN CD(I)= CD(I)- 64
1340 PRINT DC
1350 CD(I)= 0
1360 IF DC= MX(MC)THEN DC= 0:MC= MC+ 1:IF MC= 13THEN MC= 1
1370 IF DC< MX(MC)THEN DC= DC+ 1
1380 NEXT I
1390 PLOT 3,0,31
1400 PLOT 27,24
1410 IF Q9< > 0THEN FOR XX= 1TO 1500:NEXT XX:PLOT 6,2,12:LOAD "MENU;1":RUN 5
1420 PLOT 15:INPUT "CONTINUE,(Y OR N)? ";YN$
1430 IF YN$= "Y"OR YN$= "YES"THEN 330
1440 PLOT 6,2,12,1
1450 IF Y1/ 4= INT (Y1/ 4)THEN MX(2)= MX(2)+ 1
1460 RETURN
1470 PLOT 10
1480 PLOT 10
1490 PRINT "HAPPY BIRTHDAY"
1500 RETURN
1510 DATA "JAN","FEB","MAR","APR","MAY","JUN"
1520 DATA "JUL","AUG","SEP","OCT","NOV","DEC"
1530 DATA 31,28,31,30,31,30,31,31,30,31,30,31