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