1 ' note * This program was generated on a trs-80 by Jim Gerritz
2 ' a good friend so I left it in and just revised, to run on an
3 ' Osborne1...Run using Mbasic as is, or reedit to shorten by 
4 ' removing lines that begin with a (').  These lines are needed
5 ' to run on the trs-80 model computers, and one should delete the
6 ' Osborne section (Those lines followed with (' * &or comment)).
7 ' Also trs-80 users should replace the "PRINT CHR$(26)" a clear
8 ' screen command for osborne with CLS wherever found in program.
9 ' So this is basically two working programs in one.  Sorry about
10 ' the *k size if you downloaded longdistants but surely you have
11 ' a friend out there that didn't go with the best system i.e. OZZY
12 ' Mainly clean-up to fit osborne screen and to set the numbers to
13 ' appear in the middle (watch close).
14 ' Osborne1 revisions by Steve Ekwall / Denver Co 303-979-3199.
15 ' LAST MINUTE UPDATE TO ACHIEVE TRUE RANDOM NUMBERS, INSERT @
16 ' BEGINNING OF FILE (sorry didn't have time before transmission)
17 '                10 PRINT"         HIT ANY KEY TO START"
18 '                20 IF INKEY$="" THEN SEED=SEED+1:GOTO 20
19 '                30 SEED=SEED-32767*(INT(SEED/32767))
20 '                40 RANDOMIZE SEED
21 '                50 PRINT INT(RND*10)
22 ' 
23 ' INSERT this 10-50 in program at the begining somewhere and
24 ' It'll run better as well as not giving you the same #'s if 
25 ' you ^c and "RUN" again. <delete other random sections>
26 ' SE/8:83
100 PRINT CHR$(26):POKE 16553,255
200 PRINT:PRINT "          REPEAT AFTER ME . . . . "
300 ' BY JIM GERRITZ  398 W. POWERS AVE  LITTLETON, CO 80120
400 DIM A$(100), B$(100)
500 PRINT:PRINT:PRINT "WOULD YOU LIKE INSTRUCTIONS";:INPUT I$
600 ' IF LEFT$(I$,1)="Y" THEN 3500
700 IF LEFT$(I$,1)="Y" OR LEFT$(I$,1)="y" THEN 4000  ' * for upper/lower case
800 T=0
900 PRINT CHR$(26)  ' * clean up screen .. restart!
1000 PRINT "HOW DO YOU RATE YOURSELF?"
1100 ' PRINT "NOVICE (ENTER 1)":PRINT "PRO (ENTER 2)":PRINT "SUPER PRO (ENTER 3)": PRINT "WORLD CHAMPION (ENTER 4)"
1200 PRINT "1> NOVICE":PRINT "2> PRO":PRINT "3> SUPER*PRO":PRINT "4> *WORLD CHAMPION*"  ' * faster go again screen
1300 INPUT R
1400 GOSUB 7100
1500 ' RANDOM
1600 RANDOMIZE X ' *
1700 FOR X= 1 TO 100
1800 ' S=RND(9)
1900 S=RND*10  ' *
2000 FOR D=1 TO S: READ A$(X): NEXT D
2100 RESTORE
2200 NEXT X
2300 DATA "1","2","3","4","5","6","7","8","9"
2400 T=1
2500 FOR X=1 TO T
2600 ' PRINT@412, A$(X)
2610 DEF FNC$(X,Y)=CHR$(27)+"="+CHR$(Y+32)+CHR$(X+32) ' * center screen cursor
2630 PRINT FNC$(12,12),A$(X) ' * X,Y FOR CURSOR 
2700 FOR B= 1 TO 200: NEXT B
2800 PRINT CHR$(26)
2900 FOR D=1 TO 100: NEXT D
3000 NEXT X
3100 FOR X=1 TO T
3200 B$(X)= INKEY$
3300 IF B$(X)="" THEN 3200
3400 IF B$(X)<>A$(X) THEN 7700
3500 NEXT X
3600 T=T+1
3700 IF T1=T THEN 8600
3800 FOR D=1 TO 500: NEXT D
3900 GOTO 2500
4000 ' PRINT CHR$(26): PRINT:PRINT "  I WILL DISPLAY A SERIES OF NUMBERS ONE AT A TIME ON THE"
4100 ' PRINT "MONITOR. YOU MUST REPEAT THE SEQUENCE. THE NUMBERS WILL NOT"
4200 ' PRINT "BE DISPLAYED AS YOU ENTER THEM. EACH TIME YOU SUCCESSFULLY"
4300 ' PRINT "COMPLETU A SEQUENCE, I WILL ADD ANOTHER NUMBER TO THE SAME"
4400 ' PRINT "SEQUENCE. GOOD LUCK!" 
4500 ' PRINT:PRINT "BELOW ARE LISTED THE LENGTHS OF EACH SEQUENCE"
4600 ' PRINT "BY THE WAY, IT IS NOT FAIR TO WRITE THE NUMBERS DOWN AS THuY"
4700 ' PRINT "ARE PRESENTED."
4800 ' PRINT "NOVICE=10
4900 ' PRINT "PRO=25
5000 ' PRINT "SUPER PRO=50
5100 ' PRINT "WORLD CHAMPION=100
5200 PRINT CHR$(26) ' * LINES 4610-4700 TO FIT 52" SCREEN ON OSBORNE
5300 PRINT "  I will diplay a series of NUMBERS one at a time"
5400 PRINT "on the monitor.  YOU MUST REPEAT THE SEQUENCE!"
5500 PRINT "The Numbers will NOT be displayed as you Enter them."
5600 PRINT "Each Time You Successfully Complete a Sequence...."
5700 PRINT "I WILL ADD ANOTHER NUMBER TO THE SAME SEQUENCE."
5800 PRINT "                    GOOD LUCK!"
5801 PRINT "                    Hint <> 0"
5810 PRINT
5900 PRINT:PRINT"BELOW are listed the lengths of each sequence."
6000 PRINT " By the Way..It's Not Fair to write the numbers "
6100 PRINT " down as they are presented.  Think in double/triple"
6110 PRINT "number sets as a suggestion.   GO FOR IT !"
6200 PRINT:PRINT
6300 PRINT "                 10 = NOVICE"
6400 PRINT "                 25 = PRO"
6500 PRINT "                 50 = SUPER*PRO"
6600 PRINT "                100 = * WORLD CHAMPION *
6700 PRINT:PRINT:PRINT
6800 PRINT "HIT ANY KEY TO CONTINUE                    Osborne1"
6900 Z$=INKEY$: IF Z$="" THEN 6900
7000 PRINT CHR$(26): GOTO 800
7100 IF R=1 THEN T1=10
7200 IF R=2 THEN T1=25
7300 IF R=3 THEN T1=50
7400 IF R=4 THEN T1=100
7500 PRINT CHR$(26)
7600 RETURN
7700 PRINT CHR$(7)
7710 PRINT:PRINT:PRINT "YOU MISSED!"
7800 PRINT "YOU ENTERED "; B$(X);" AND THE NUMBER WAS "; A$(X)
7900 PRINT "THIS IS THE ENTIRE SEQUENCE"
8000 FOR X=1 TO T1:PRINT A$(X);: NEXT X
8100 PRINT:PRINT "DO YOU WANT ANOTHER GAME";: INPUT I$
8200 ' IF LEFT$(I$,1)= "Y" THEN 700
8300 IF LEFT$(I$,1)="Y" OR LEFT$(I$,1)="y" THEN 800 ' * catches upper/lower
8400 PRINT "HOPE YOU DIDN'T GO TOO CRAZY!!    BYE"
8500 PRINT "type 'RUN' to Restart  ok?":END ' *
8600 PRINT CHR$(26):PRINT:PRINT "YOU MADE IT!!! WANT ANOTHER GAME";:INPUT I$
8700 ' IF LEFT$(I$,1)="Y" THEN 700
8800 IF LEFT$(I$,1)="Y" OR LEFT$(I$,1)="y" THEN 800 ' * catches upper/lower
8900 GOTO 8400
00 ' IF LE