Listing of file='BIOSIN' on disk='vmedia/games-droz00.wvd.zip'
# Sector 382, program filename = 'BIOSIN' 0005 SELECT PRINT 005 0010 DIM A$(7),A(12),B$(12),X(3),C$48,P$1 0020 FOR I=1TO 7 : READ A$(I) : NEXT I 0030 FOR I=1TO 12 : READ A(I),B$(I) : NEXT I 0040 DEFFNY(Y)=29-SGN(Y/4-INT(Y/4)) 0050 DEFFNS(S)=INT(20*SIN((S/P-INT(S/P))*2*#PI)+25.5) 0060 DEFFNM(X)=INT(7*(X/7-INT(X/7))+.5) 0070 PRINT HEX(03),,"B I O S I N" : PRINT : GOSUB 470 0075 P$="N" : INPUT "DO YOU WANT OUTPUT TO PRINTER (Y or N)",P$ 0080 INPUT "ENTER YOUR DATE OF BIRTH (MM,DD,YY)",M,D,Y 0090 INPUT "ENTER THE DATE YOU WANT THE CHART TO BEGIN (MM,DD,YY)",M1,D1,Y1 : D0=D1 : M0=M1 0100 L=Y : L1=Y1 : IF M*100+D<229THEN 110 : L=Y+1 0110 IF M1*100+D1>228THEN 120 : L1=Y1-1 0120 L=INT((L+3)/4) : IF 4*L<=L1THEN 130 : L=0 : GOTO 140 0130 L=INT(L1/4)-L+1 0140 IF M1>=MTHEN 150 : M1=12+M1 : Y1=Y1-1 0150 IF M>=M1-1THEN 190 : FOR I=MTO M1-1 : J=I-INT((I-1)/12)*12 : ON JGOTO 180,170,180,160,180,160,180,180,160,180,160,180 0160 L=L-1 : GOTO 180 0170 L=L-3 0180 NEXT I 0190 S=365*(Y1-Y)+31*(M1-M)+D1-D+L 0193 Y1=INT(100.1*(Y1/100-INT(Y1/100))) : A(2)=FNY(Y1) : M1=M0 0195 IF M1=1THEN 200 : FOR I=1TO M1-1 : D1=D1+A(I) : NEXT I 0200 D3=Y1*365+D1 0210 FOR I=1TO Y1-1 : IF I/4<>INT(I/4)THEN 220 : D3=D3+1 0220 NEXT I 0240 D1=D0 : GOSUB 450 0250 PRINT TAB(28);"(-) (0) (+)" : Q=1 0260 E=FNM(D3-1)+1 : PRINT A$(E); : PRINT D1; : IF Z<1THEN 280 0280 PRINT B$(M1); : PRINT Y1; : Z=Z+1 0290 IF A$(E)="SUN"THEN 310 0300 INIT(" ")C$ : GOTO 320 0310 INIT("-")C$ 0320 FOR I=1TO 3 : P=18+(5*I) : X(I)=FNS(S) : NEXT I 0330 STR(C$,25,1)="I" 0340 STR(C$,X(1),1)="P" : STR(C$,X(2),1)="S" : STR(C$,X(3),1)="C" 0350 IF X(1)<>X(2)THEN 360 : STR(C$,X(1),1)="*" : GOTO 380 0360 IF X(1)<>X(3)THEN 370 : STR(C$,X(1),1)="*" : GOTO 380 0370 IF X(2)<>X(3)THEN 380 : STR(C$,X(2),1)="*" 0380 PRINT TAB(14);C$ 0390 D3=D3+1 : S=S+1 : D1=D1+1 : IF D1<=A(M1)THEN 420 0400 D1=1 : M1=M1+1 : IF M1<13THEN 420 0410 M1=1 : Y1=Y1+1 : A(2)=FNY(Y1) 0420 IF Q/15<>INT(Q/15)THEN 421 : INPUT "PRESS RETURN TO MOVE ON",P : IF P$<>"Y" THEN PRINT HEX(0C) 0421 Q=Q+1 : GOTO 260 0430 DATA "MON","TUE","WED","THU","FRI","SAT","SUN" 0440 DATA 31,"JAN",28,"FEB",31,"MAR",30,"APR",31,"MAY",30,"JUN",31,"JUL",31,"A UG",30,"SEP",31,"OCT",30,"NOV",31,"DEC" 0450 IF P$="Y" THEN SELECT PRINT 215(80) : PRINT HEX(0C03);TAB(16);"B I O R H Y T H M C H A R T" : PRINT 0455 PRINTUSING "YOUR BIRTHDATE IS ##/##/##.",M,D,Y 0460 PRINT "YOU HAVE LIVED";S;"DAYS AT THE BEGINNING OF THIS CHART." : GOSUB 470 : FOR I=1TO 1000 : NEXT I : RETURN 0470 PRINT "'P' STANDS FOR PHYSICAL CYCLE. (23 DAYS)" 0480 PRINT "'S' STANDS FOR SENSITIVITY CYCLE. (28 DAYS)" 0490 PRINT "'C' STANDS FOR COGNITIVE-INTELLECTUAL CYCLE (33 DAYS)" 0500 PRINT : PRINT "CRITICAL DAYS OCCUR WHENEVER A CYCLE CROSSES THE MEDIAN LINE."; : PRINT "YOU ARE SUPPOSED TO BE MORE PRONE TO ACCIDENTS ON THAT DAY SO WA TCH OUT." : RETURN 0510 REM