500 IF PRTFLG=1 THEN OPEN "LPT1:" FOR OUTPUT AS #2
505 IF PRTFLG=2 THEN INPUT "Enter the file which is to recieve the output: ",A$:OPEN DISK$+A$ FOR OUTPUT AS #2:PRINT
510 CODON$="TTT,TTC,TTA,TTG,TCT,TCC,TCA,TCG,TAT,TAC,TAA,TAG,TGT,TGC,TGA,TGG,CTT,CTC,CTA,CTG,CCT,CCC,CCA,CCG,CAT,CAC,CAA,CAG,CGT,CGC,CGA,CGG,"
515 CODON$=CODON$+"ATT,ATC,ATA,ATG,ACT,ACC,ACA,ACG,AAT,AAC,AAA,AAG,AGT,AGC,AGA,AGG,GTT,GTC,GTA,GTG,GCT,GCC,GCA,GCG,GAT,GAC,GAA,GAG,GGT,GGC,GGA,GGG"
520 AACID$="PhePheLeuLeuSerSerSerSerTyrTyr * * CysCys * TrpLeuLeuLeuLeuProProProProHisHisGlnGlnArgArgArgArgIleIleIleMetThrThrThrThrAsnAsnLysLysSerSerArgArgValValValValAlaAlaAlaAlaAspAspGluGluGlyGlyGlyGly"
525 INPUT "Enter then number of exons in your sequence: ",EX
530 FOR I=1 TO EX
535 PRINT:PRINT USING "Enter the first and last base in exon number##";I;
540 INPUT ": ",FIRST(I),LAST(I)
545 NEXT I
550 ZERO=FIRST(1)-1:SPLIT=0:X=1:FIRST(EX+1)=LENGTH+1:BASE=-ZERO:F=1:F1=1:CLS
555 PRINT TITLE$:PRINT:PRINT:IF PRTFLG THEN PRINT #2,TITLE$:PRINT #2,STRING$(2,10)
560 FOR I=1 TO LENGTH
565 IF I MOD 50=0 THEN FLAG=0:GOSUB 615
570 B$=B$+MID$(SEQ$((I-1)\250+1),(I-1) MOD 250+1,1)
575 IF I=FIRST(X)-1 THEN B$=B$+";":GOTO 595
580 IF I=FIRST(X) THEN IF (I-FIRST(X)+1+SPLIT) MOD 3 = 0 THEN B$=B$+","
595 NEXT I
600 GOSUB 615:IF F>1 THEN GOSUB 710
605 IF B$<>"" GOTO 600
610 CLOSE:RETURN
615 S=INSTR(F,B$,";")
620 C=INSTR(F,B$,",")
625 IF S=0 OR (C>0 AND C72 GOTO 710
640 IF BASE>=0 THEN BASE=BASE+P
645 IF S=0 GOTO 680
650 IF P<4 THEN PRINT STRING$(P+2," ");:IF PRTFLG THEN PRINT #2,STRING$(P+2," ");:GOTO 700 ELSE GOTO 700
655 IF BASE<0 THEN PRINT STR$(BASE)+STRING$(P+2-LEN(STR$(BASE))," ");
660 IF PRTFLG THEN IF BASE<0 THEN PRINT #2,STR$(BASE)+STRING$(P+2-LEN(STR$(BASE))," ");
665 IF BASE>0 THEN PRINT STRING$(P-4," ");:PRINT USING "####";BASE;:PRINT " ";
670 IF PRTFLG THEN IF BASE>0 THEN PRINT #2,STRING$(P-4," ");:PRINT #2,USING "####";BASE;:PRINT #2," ";
675 GOTO 700
680 IF P<3 THEN PRINT STRING$(P+1," ");:IF PRTFLG THEN PRINT #2,STRING$(P+1," ");:GOTO 700 ELSE GOTO 700
685 IF BASE MOD 5<>0 THEN PRINT " ";:IF PRTFLG THEN PRINT #2," ";
690 IF BASE MOD 5=0 THEN IF BASE<1000 THEN PRINT USING "### ";BASE; ELSE PRINT USING "####";BASE;
695 IF PRTFLG THEN IF BASE MOD 5=0 THEN IF BASE<1000 THEN PRINT #2,USING "### ";BASE; ELSE PRINT #2,USING "####";BASE;
700 IF BASE <0 THEN BASE=BASE+P
705 F=S+C+1:GOTO 615
710 PRINT :IF PRTFLG THEN PRINT #2,""
715 FOR J=1 TO F-2
720 C$=MID$(B$,J,1)
725 IF C$=";" THEN PRINT " "; ELSE IF C$="," THEN PRINT " "; ELSE PRINT C$;
730 IF PRTFLG THEN IF C$=";" THEN PRINT #2," "; ELSE IF C$="," THEN PRINT #2," "; ELSE PRINT #2,C$;
735 NEXT
740 PRINT:IF PRTFLG THEN PRINT #2,""
745 F1=1:FL=0
750 C=INSTR(F1,B$,",")
755 IF C=0 OR C>F-1 GOTO 785 ELSE FL=1
760 S=INSTR(F1,B$,";")
765 IF S>0 AND S