-------------------------------------------------
1)
program 45 bytes
SLOT 1
10 REM PRINT CHARSET
20 FOR I=0 TO 255
30 PRINT CHR$(I);
40 NEXT I
-------------------------------------------------
2)
program 192 bytes
SLOT 2
10 REM HIGH PRECISION DIVISION
20 PRINT "HOW MANY DECIMAL PLACES?"
30 INPUT D
40 PRINT "DIVIDEND?"
50 INPUT R
60 PRINT "DIVISOR?"
70 INPUT Y
80 LET Z=R/Y
90 LET R=R-Z*Y
100 PRINT "QUOTIENT IS ";Z;".";
110 FOR J=1 TO D
120 LET Z=10*R/Y
130 LET R=10*R-Z*Y
140 PRINT Z;
150 NEXT J
-------------------------------------------------
3)
program 200 bytes
SLOT 3
10 REM SQUARE ROOT ROUTINE
20 PRINT "ENTER THE NUMBER TO BE ROOTED"
30 INPUT X
40 LET J=0
50 LET K=J*J
60 LET D=X-K
70 IF D=0 THEN GO TO 110
80 IF D<0 THEN GO TO 130
90 LET J=J+1
100 GO TO 50
110 PRINT "THE ROOT IS ";J
120 GO TO 140
130 PRINT "THE ROOT LIES BETWEEN ";J-1;" AND ";J
140 STOP
-------------------------------------------------
4)
program 383 bytes
SLOT 4
10 REM DIE THROWING
20 LET A$="\A \A"
30 LET B$=" \A"
40 LET C$="\A"
50 LET D$=" \A"
60 RANDOMISE
70 LET X=RND(6)
80 PRINT "YOUR THREW IS ";X
90 GO TO X*100
100 PRINT ""
110 PRINT ""
120 PRINT B$
130 PRINT ""
140 PRINT ""
150 GO TO 700
200 PRINT C$
210 PRINT ""
220 PRINT ""
230 PRINT ""
240 PRINT D$
250 GO TO 700
300 PRINT D$
310 PRINT ""
320 PRINT B$
330 PRINT ""
340 PRINT C$
350 GO TO 700
400 PRINT A$
410 PRINT ""
420 PRINT ""
430 PRINT ""
440 PRINT A$
450 GO TO 700
500 PRINT A$
510 PRINT ""
520 PRINT B$
530 PRINT ""
540 PRINT A$
550 GO TO 700
600 PRINT A$
610 PRINT ""
620 PRINT A$
630 PRINT ""
640 PRINT A$
700 PRINT "HIT NEWLINE TO THROW AGAIN"
710 INPUT X$
720 CLS
730 IF X$="" THEN GO TO 70
-------------------------------------------------
5)
program 198 bytes
SLOT 5
10 REM REACTION TIMER
20 PRINT "PREPARE..."
30 FOR I=1 TO 3000+RND(10000)
40 NEXT I
50 POKE 16414,0
60 POKE 16415,0
70 PRINT "HIT NEWLINE"
80 INPUT C$
90 LET A=PEEK(16414)
100 LET B=PEEK(16415)
110 PRINT "YOUR REACTION TIME WAS ";(B*256+A-4)*17;" MILLISECS"
-------------------------------------------------
6)
program 226 bytes
SLOT 6
10 REM RND HISTOGRAM
20 DIM A(20)
30 RANDOMISE
40 FAST
50 PRINT "CALCULATING..."
60 FOR K=1 TO 5000
70 LET N=RND(20)
80 LET A(N)=A(N)+1
90 NEXT K
100 SLOW
110 CLS
120 FOR K=1 TO 20
130 LET A(K)=A(K)/20
140 IF K<10 THEN PRINT " ";
150 PRINT K;" ";
160 IF A(K)<1 THEN GO TO 210
170 IF A(K)>29 THEN LET A(K)=29
180 FOR P=1 TO A(K)
190 PRINT "\A";
200 NEXT P
210 PRINT
220 NEXT K
-------------------------------------------------
7)
program 474 bytes
SLOT 7
10 REM LEAP FROG
100 DIM P(9)
200 LET P(5)=0
210 FOR I=1 TO 4
220 LET P(I)=129
230 LET P(I+5)=128
240 NEXT I
250 LET C=0
300 CLS
310 FOR I=1 TO 9
320 PRINT CHR$(P(I));" ";
330 NEXT I
340 PRINT
350 FOR I=1 TO 9
360 PRINT I;" ";
370 NEXT I
500 PRINT "ENTER MOVE"
510 INPUT A
520 IF A=0 THEN GO TO 900
530 LET F=A/10
540 IF F=0 THEN GO TO 510
550 IF P(F)=0 THEN GO TO 510
560 LET T=A-10*F
570 IF T=0 THEN GO TO 510
580 IF P(T)>0 THEN GO TO 510
590 IF ABS(T-F)>2 THEN GO TO 510
600 LET C=C+1
610 LET P(T)=P(F)
620 LET P(F)=0
700 LET X=0
710 FOR I=1 TO 9
720 IF I=5 THEN GO TO 740
730 IF NOT P(I)=128-(I>5) THEN LET X=1
740 NEXT I
750 LET X=X+P(5)
760 IF X>0 THEN GO TO 300
800 PRINT "YOU DID IT IN ";C;" MOVES"
810 PRINT "ANOTHER GO? (Y)"
820 INPUT A$
830 IF CODE(A$)=62 THEN GO TO 200
900 PRINT "BYEBYE"
-------------------------------------------------
8)
program 355 bytes
SLOT 8
10 REM ENCODING
100 PRINT "ENTER MESSAGE"
110 INPUT A$
120 PRINT A$
130 PRINT "ENTER CODE NUMBER (1 - 256)",
140 INPUT T
150 PRINT T
160 RANDOMISE ABS(T)
170 IF T<0 THEN PRINT "DE";
180 PRINT "CODED MESSAGE IS"
190 LET R=RND(26)
200 IF T<0 THEN LET R=26-R
210 IF A$="" THEN GO TO 300
220 LET B=CODE(A$)
230 LET A$=TL$(A$)
240 IF B=0 THEN GO TO 280
250 LET B=B+R-38
260 LET B=B-26*(B/26)
270 LET B=B+38
280 PRINT CHR$(B);
290 GO TO 190
300 PRINT
310 PRINT "ANY OTHER MESSAGE? (Y)"
320 INPUT A$
330 IF NOT CODE(A$)=62 THEN GO TO 360
340 CLS
350 GO TO 100
360 PRINT "BYEBYE"
-------------------------------------------------
9)
program 571 bytes
SLOT 9
60 DIM O(4)
70 DIM D(4)
80 LET A$="\F\T\S"
90 LET B$=" \S\G\Q"
100 LET C$="\R \E"
110 LET M=100
120 GO TO 200
130 FOR C=1 TO D
140 PRINT " ";
150 NEXT C
160 RETURN
170 FOR I=0 TO 4
180 LET D(I)=0
190 NEXT I
200 PRINT "BANK$";M
210 PRINT "BET?"
220 PRINT
230 PRINT "ODDS"
240 FOR I=1 TO 4
250 LET O(I)=RND(9)+1
260 PRINT CHR$(I+37),O(I);"/1"
270 NEXT I
280 INPUT B
290 IF B=0 THEN GO TO 999
300 PRINT "HORSE?"
310 INPUT H$
320 FOR L=1 TO 4
330 CLS
340 PRINT "LAP ";L
350 FOR I=1 TO 4
360 LET D(I)=D(I)+5+7/O(I)+RND(2*O(I)/3)
370 IF D(I)>D(0) THEN LET D(0)=D(I)
380 IF D(0)=D(I) THEN LET J=I
390 NEXT I
400 FOR I=1 TO 4
410 PRINT CHR$(I+37)
420 LET D=D(I)-D(0)+15
430 GO SUB 130
440 PRINT A$
450 GO SUB 130
460 PRINT B$
470 GO SUB 130
480 PRINT C$
490 PRINT
500 NEXT I
510 PRINT "N/L"
520 INPUT D$
530 NEXT L
540 CLS
550 PRINT "WINNER ";CHR$(J+37)
560 LET S=0
570 IF CODE(H$)=J+37 THEN LET S=1
580 LET M=M-B+S*B*O(J)
590 IF M<1 THEN GO TO 999
600 GO TO 170
999 STOP
-------------------------------------------------
10)
program 504 bytes, variables 65 bytes
SLOT 10
90 DIM A(19)
100 LET V=-50
110 LET H=1500
120 LET R=7000
130 GO TO 500
200 FOR I=0 TO 3
210 FOR X=0 TO 4
220 PRINT CHR$(A(X+5*I));
230 NEXT X
240 PRINT
250 NEXT I
260 RETURN
300 PRINT "THRUST (0-99)?",
310 INPUT F
320 PRINT F
330 PRINT "DURATION (1-10)?",
340 INPUT T
350 CLS
360 IF F*T>R/10 THEN LET F=R/10*T
370 LET R=R-F*T*10
400 LET A=F-32
410 LET H=A*T**2+V*T+H
420 LET V=2*A*T+V
500 LET L=H/100
510 IF L<0 THEN LET L=0
520 IF L>12 THEN LET L=12
530 FOR I=L TO 12
540 PRINT
550 NEXT I
560 IF L>8 THEN GO SUB 200
570 PRINT ,"VELOC","HEIGHT","FUEL"
580 PRINT ,V,H,R
600 IF L<9 THEN GO SUB 200
610 IF L=0 THEN GO TO 650
620 FOR I=1 TO L-1
630 PRINT
640 NEXT I
650 IF H<0 THEN PRINT "**CRASH**"
660 FOR I=1 TO 16
670 PRINT "\A\T";
680 NEXT I
690 IF L>0 THEN GO TO 300
700 IF H<0 OR V<-99 THEN GO TO 730
710 PRINT 100+V;" PERCENT OK"
720 STOP
730 PRINT "TERRIBLE"
DIM A(19)=0,0,156,0,0,0,8,3,136,0,0,2,3,130,0,134,131,3,131,135
LET V=-50
LET H=1500
LET R=7000
FOR I=4,3,201
FOR X=5,4,211
-------------------------------------------------
11)
program 330 bytes
SLOT 11
100 DIM W(32)
110 PRINT
140 LET W(1)=2
150 LET W(32)=130
160 FOR I=2 TO 31
170 LET W(I)=3
180 NEXT I
190 LET X=RND(20)
200 LET W(X)=2
210 LET W(X+6)=130
220 FOR I=2 TO 5
230 LET W(X+I)=0
240 NEXT I
300 FOR L=1 TO 15
310 FOR I=1 TO 32
320 PRINT CHR$(W(I));
330 IF I=1 OR I=32 THEN GO TO 500
340 IF W(I)<3 THEN GO TO 450
350 IF W(I)>3 THEN GO TO 400
360 LET X=RND(8)
370 IF X<3 THEN LET W(I)=2
380 IF X=8 THEN LET W(I)=7
390 GO TO 500
400 LET W(I)=1+RND(2)
410 GO TO 500
450 LET X=RND(5)
460 LET W(I)=1+X/2
470 IF X=1 THEN LET W(I)=7
500 NEXT I
510 NEXT L
-------------------------------------------------
12)
program 596 bytes
SLOT 12
100 DIM A(9)
110 FOR J=0 TO 2
120 FOR I=1 TO 3
130 LET A(I+3*J)=28+I+4*J+2*I*(J>1)
140 NEXT I
150 NEXT J
160 LET A(4)=36
170 LET A(5)=61
180 LET A(6)=32
190 GO TO 400
200 FOR I=1 TO 9
210 IF A(I)=M+28 THEN LET A(I)=V
220 NEXT I
230 FOR I=0 TO 2
240 FOR J=1 TO 3
250 PRINT CHR$(A(J+3*I));" ";
260 NEXT J
270 PRINT
280 PRINT
290 NEXT I
300 PRINT
310 RETURN
400 LET A=0
410 LET E=0
420 PRINT "I WENT FIRST"
430 GO SUB 230
440 PRINT "ENTER MOVE"
450 INPUT R
460 CLS
470 IF R=2*(R/2) THEN LET E=-1
480 LET M=R
490 LET V=28
500 GO SUB 200
510 LET P=R
520 FOR T=1 TO 4
530 PRINT "I MOVED"
540 LET V=61
550 LET A=A+1
560 IF T=1 OR R=P+4 OR R=P-4 THEN GO TO 620
570 LET P=P+4
580 IF P>8 THEN LET P=P-8
590 LET M=P
600 GO SUB 200
610 GO TO 790
620 IF A=3 AND E THEN LET A=7
630 IF A=4 THEN LET A=6
640 LET P=P+A
650 IF P>8 THEN LET P=P-8
660 LET M=P
670 GO SUB 200
680 IF A=7 THEN GO TO 790
690 IF T=4 THEN GO TO 770
700 PRINT "YOUR MOVE"
710 INPUT R
720 CLS
730 LET M=R
740 LET V=28
750 GO SUB 200
760 NEXT T
770 PRINT "DRAW"
780 STOP
790 PRINT "ATX80 WINS"
-------------------------------------------------
13)
program 162 bytes, variables 402 bytes
SLOT 13
120 LET S=PEEK(16392)+256*PEEK(16393)
200 FOR I=0 TO 88
210 LET J=-1
220 LET J=J+1
230 IF P(I)=0 THEN GO TO 270
240 PRINT CHR$(PEEK(S+P(I)+J));
250 IF PEEK(S+P(I)+J)>0 THEN GO TO 220
260 IF P(I)>0 THEN GO TO 300
270 PRINT "?"
280 INPUT B$
290 CLS
300 NEXT I
LET A$="A ACCEPTABLE AGAIN BYEBYE COME DID DO ENOUGH FEEL FIND FOR FRIENDS HELLO HERE HOW I IS I/M LIKE NAME NORMAL REASONABLE SAY THAT/S THERAPIST THERE THINK THIS TO TODAY WAS WAY WHAT WHEN WHY WOULD YOU YOUR "
DIM P(90)=68,141,88,199,131,175,85,199,97,0,175,32,195,120,199,97,167,14,0,79,36,195,46,161,0,36,195,147,153,85,109,0,185,36,195,147,195,46,153,171,0,36,199,60,51,153,3,0,36,195,27,74,158,51,60,0,36,195,147,153,85,102,0,36,199,60,51,153,3,0,83,147,124,39,56,161,180,189,195,92,158,27,74,14,0,124,109,20,0,0,0
LET S=16731
FOR I=91,90,201
LET B=0
-------------------------------------------------
14)
program 708 bytes
SLOT 14
100 DIM T(3)
110 DIM N(3)
120 DIM X(3)
130 LET N(1)=7
140 LET N(2)=5
150 LET N(3)=3
160 GO TO 500
200 FOR R=1 TO 3
210 FOR M=1 TO N(R)
220 IF N(R)=0 THEN GO TO 250
230 PRINT " \A";
240 NEXT M
250 PRINT
260 PRINT
270 NEXT R
280 RETURN
300 FOR S=0 TO 3
310 LET T(S)=0
320 NEXT S
330 FOR S=1 TO 3
340 LET T(1)=T(1)+(X(S) AND 4)/4
350 LET T(2)=T(2)+(X(S) AND 2)/2
360 LET T(3)=T(3)+(X(S) AND 1)
370 NEXT S
380 FOR S=1 TO 3
390 IF T(S)=2 THEN LET T(S)=0
400 LET T(0)=T(0)+T(S)
410 NEXT S
420 RETURN
500 GO SUB 200
510 PRINT "ENTER ROW AND HOW MANY"
520 INPUT Y
530 IF Y=0 THEN GO TO 900
540 IF Y<0 OR Y>33 THEN GO TO 520
550 LET M=Y/10
560 LET Y=Y-10*M
570 IF Y>N(M) THEN GO TO 520
580 LET N(M)=N(M)-Y
590 CLS
600 GO SUB 200
610 FOR R=1 TO 3
620 LET X(R)=N(R)
630 NEXT R
640 GO SUB 300
650 IF T(0)=0 THEN GO TO 670
660 PRINT "I BET I WILL WIN"
670 PRINT "PRESS N/L"
680 INPUT X$
690 IF T(0)>0 THEN GO TO 750
700 FOR R=1 TO 3
710 LET M=N(R)-1
720 IF N(R)>0 THEN GO TO 820
730 NEXT R
740 GO TO 900
750 FOR R=1 TO 3
760 FOR M=0 TO N(R)
770 LET X(R)=M
780 GO SUB 300
790 IF T(0)=0 THEN GO TO 820
800 NEXT M
810 NEXT R
820 IF R>3 THEN GO TO 900
830 LET N(R)=M
840 IF N(1)+N(2)+N(3)=0 THEN GO TO 900
850 GO TO 500
900 PRINT "WHO WON?"
-------------------------------------------------
15)
program 757 bytes
SLOT 15
100 REM 23456789TJQKA23456789TJQKA23456789TJQKA23456789TJQKA
110 DIM N(3)
120 LET S=16427
130 LET M=100
140 GO TO 310
150 LET X=PEEK(S+6*I+N(I))-28
160 LET N(I+2)=N(I+2)-10*(X>10)-X*(X<10)-11*(X=10)
170 LET A=A-(X=10)
180 RETURN
200 PRINT "YOURS",,"ATX80"
210 FOR K=0 TO 1
220 FOR L=6*K TO 6*K+N(K)
230 LET X=PEEK(S+L)
240 PRINT CHR$(X);" ";
250 NEXT L
260 PRINT ,,
270 NEXT K
300 RETURN
310 FOR I=0 TO 51
320 LET J=RND(52)-1
330 LET X=PEEK(S+J)
340 POKE S+J,PEEK(S+I)
350 POKE S+I,X
360 NEXT I
370 FOR I=0 TO 1
380 LET N(I)=0
390 LET N(I+2)=0
400 LET A=0
410 GO SUB 150
420 NEXT I
430 PRINT "BET:$";M
440 INPUT B
450 CLS
500 FOR I=0 TO 1
510 LET W=2*I-1
520 LET A=N(I+2)/10
530 GO SUB 200
540 IF I=0 THEN PRINT "H OR S?"
550 IF I=1 THEN PRINT "N/L"
560 LET I$="S"
570 INPUT I$
580 CLS
590 IF CODE(I$)=56 THEN GO TO 700
600 LET N(I)=N(I)+1
610 GO SUB 150
620 IF N(I+2)<22 THEN GO TO 660
630 IF A=0 THEN GO TO 800
640 LET A=A-1
650 LET N(I+2)=N(I+2)-10
660 IF N(I)=4 THEN GO TO 700
670 IF I=0 OR N(I+2)<17 THEN GO TO 530
700 NEXT I
750 GO SUB 200
760 LET W=-1
770 IF (N(0)=4 AND N(1)<4) OR N(2)>N(3) THEN LET W=1
780 IF N(2)=21 AND N(0)=1 THEN LET W=2
800 LET M=M+W*B
810 IF M<1 THEN STOP
820 GO TO 310
-------------------------------------------------
16)
program 246 bytes
SLOT 16
10 REM BUBBLE SORT
20 PRINT "COUNT?"
30 INPUT N
40 DIM P(N)
50 FOR I=1 TO N
60 CLS
70 PRINT "NUMBER(";I;")?"
80 INPUT P(I)
90 NEXT I
100 CLS
110 PRINT "SORTING..."
120 FAST
130 FOR J=1 TO N-1
140 LET K=J+1
150 FOR I=K TO N
160 LET L=N+K-I
170 IF P(L)>P(J) THEN GO TO 210
180 LET T=P(L)
190 LET P(L)=P(J)
200 LET P(J)=T
210 NEXT I
220 NEXT J
230 SLOW
240 CLS
250 FOR I=1 TO N
260 PRINT P(I);" ";
270 NEXT I
-------------------------------------------------
17)
program 231 bytes
SLOT 17
5 REM LINE RENUMBER
12 GO TO 18
18 GO SUB 9987
9987 LET L=20
9988 POKE 16424,0
9989 POKE 16425,10
9990 FOR N=16426 TO 17400
9991 IF PEEK(N)=251 THEN PRINT L-10,CHR$(251)
9992 IF PEEK(N)=236 THEN PRINT L-10,CHR$(236)
9993 IF NOT PEEK(N)=118 THEN GO TO 9999
9994 IF PEEK(N+1)>38 THEN STOP
9995 POKE N+1,L/256
9996 POKE N+2,L AND 255
9997 LET N=N+2
9998 LET L=L+10
9999 NEXT N
-------------------------------------------------
18)
program 378 bytes, variables 75 bytes
SLOT 18
100 PRINT
110 PRINT
120 PRINT "SIZE PAD (3-7)?"
130 INPUT N
140 IF N<3 OR N>7 THEN GO TO 120
150 DIM A(N*N-1)
200 CLS
210 FOR K=1 TO N
220 LET J=N+1-K
230 PRINT J,
240 FOR I=1 TO N
250 PRINT CHR$(A(J-N-1+N*I));
260 NEXT I
270 PRINT
280 NEXT K
290 PRINT
300 PRINT ,
310 FOR I=1 TO N
320 PRINT I;
330 NEXT I
340 PRINT
400 PRINT "ENTER COORD"
410 INPUT X
420 IF X=0 THEN GO TO 500
430 PRINT X
440 LET J=X/10
450 LET I=X-10*J
460 PRINT "ENTER CHAR CODE"
470 INPUT X
480 LET A(J-N-1+N*I)=X
490 GO TO 200
500 PRINT "CODES USED:"
510 FOR K=1 TO N
520 LET J=N+1-K
530 PRINT "LINE:";J,
540 FOR I=1 TO N
550 PRINT A(J-N-1+N*I);" ";
560 NEXT I
570 PRINT
580 NEXT K
LET N=5
DIM A(24)=134,0,0,0,0,131,2,8,0,0,3,3,3,156,0,131,130,136,0,0,135,0,0,0,0
FOR K=6,5,511
LET J=1
FOR I=6,5,541
LET X=0
-------------------------------------------------
19)
program 580 bytes
SLOT 19
100 PRINT "I CALCULATE DAY YOU WERE BORN"
110 LET D$=" SUNMONTUEWEDTHUFRISAT"
120 PRINT "PLEASE ENTER YOUR NAME"
130 INPUT A$
140 PRINT "HELLO ";A$
150 PRINT "ENTER DATE OF BIRTH:"
155 PRINT "DAY",
160 INPUT D
170 IF D<1 OR D>31 THEN GO TO 160
180 PRINT D
185 PRINT "MONTH",
190 INPUT M
200 PRINT M
205 PRINT "YEAR",
210 INPUT Y
220 PRINT Y
230 IF Y<1700 THEN PRINT A$," IS TOO OLD FOR ME"
240 IF Y<1700 THEN GO TO 440
250 LET K=0
260 IF M=1 OR M=2 THEN LET K=1
270 LET L=Y-K
280 LET O=M+12*K
290 LET P=L/100
300 LET Z=(13*(O+1))/5+(5*L)/4-P+P/4+D-1
310 LET Z=Z-7*(Z/7)+1
320 FOR I=1 TO Z*3
330 LET D$=TL$(D$)
340 NEXT I
400 PRINT A$;" WAS BORN ON ";CHR$(CODE(D$));
410 LET D$=TL$(D$)
420 PRINT CHR$(CODE(D$));CHR$(CODE(TL$(D$)))
430 PRINT
440 PRINT "ANYONE ELSE? (Y)"
450 INPUT A$
455 CLS
460 IF CODE(A$)=62 THEN GO TO 110
470 PRINT "ATX80 SAYS BYEBYE"
-------------------------------------------------
20)
program 354 bytes
SLOT 20
10 REM CHINESE REMAINDER
100 DIM R(3)
110 PRINT "THINK OF A NUMBER BETWEEN 1 AND 316"
120 PRINT "PRESS N/L WHEN READY"
130 INPUT A$
200 LET A=3
210 FOR I=1 TO 3
220 LET A=A+2
230 PRINT "NOW DIVIDE YOUR ORIGINAL NUMBER BY ";A
240 PRINT "PLEASE ENTER REMAINDER"
250 INPUT R(I)
260 PRINT R(I)
270 NEXT I
300 LET A=126*R(1)+225*R(2)+280*R(3)
310 LET A=A-315*(A/315)
320 PRINT "YOUR NUMBER WAS ";A
330 PRINT "ANOTHER? (Y)"
340 INPUT A$
350 CLS
360 IF CODE(A$)=62 THEN GO TO 100
370 PRINT "BYEBYE"
-------------------------------------------------
21)
program 431 bytes
SLOT 21
10 REM SIMPLE SIMON
100 DIM A(30)
110 LET J=-1
120 RANDOMISE
130 DIM P(7)
140 FOR I=0 TO 7
150 LET P(I)=2**(7-I)
160 NEXT I
200 LET X=RND(26)+37
210 CLS
220 PRINT "NEXT CHAR IS"
230 FOR L=0 TO 7
240 LET V=PEEK(3584+L+8*X)
250 FOR K=0 TO 7
260 LET G=(V AND P(K))>0
270 PRINT CHR$(-128*G);
280 NEXT K
290 PRINT
300 NEXT L
400 IF X=15 THEN GO TO 700
410 LET J=J+1
420 IF J=31 THEN GO TO 800
430 LET A(J)=X
440 PRINT "PRINT ENTIRE SEQUENCE"
450 INPUT A$
460 PRINT A$
470 FOR I=0 TO J
480 LET X=CODE(A$)
490 IF NOT A(I)=X THEN GO TO 600
500 LET A$=TL$(A$)
510 NEXT I
520 GO TO 200
600 LET X=15
610 GO TO 230
700 PRINT "SORRY IT WAS:"
710 FOR I=0 TO J
720 PRINT CHR$(A(I));
730 NEXT I
740 STOP
800 PRINT "I GIVE UP"
-------------------------------------------------
22)
program 739 bytes
SLOT 22
5 GO TO 300
10 PRINT "\A\A\A";
20 RETURN
30 PRINT "\A\A\A"
40 RETURN
50 PRINT " \Q"
60 RETURN
70 PRINT " \Q"
80 RETURN
90 PRINT " ";CHR$(135);CHR$(135);"\Q"
100 RETURN
110 PRINT " ";CHR$(134);
120 RETURN
130 PRINT CHR$(134);"\E"
140 RETURN
150 PRINT " ";CHR$(130);CHR$(128)
160 RETURN
170 PRINT " ";CHR$(132);
180 RETURN
190 PRINT CHR$(130);"\D"
200 RETURN
210 FOR L=1 TO G
220 IF G=0 THEN GO TO 250
230 GO SUB 20*L-10
240 NEXT L
250 PRINT
260 PRINT
270 IF G=10 THEN GO TO 290
280 GO TO 500
290 PRINT "TOO BAD"
300 PRINT "ENTER NEW WORD"
310 INPUT X$
320 LET W=1
330 LET A$=X$
340 FOR L=1 TO 20
350 LET A$=TL$(A$)
360 IF A$="" THEN GO TO 390
370 LET W=W+1
380 NEXT L
390 DIM A(W)
400 FOR L=1 TO W
410 LET A(L)=0
420 NEXT L
430 PRINT "LETTERS=";W
440 LET G=0
500 PRINT "INPUT GUESS"
510 INPUT A$
520 CLS
530 IF A$="" THEN GO TO 999
540 LET B=CODE(A$)
550 LET A$=X$
560 LET C=0
570 FOR L=1 TO W
580 IF B=CODE(A$) THEN LET A(L)=B
590 IF A(L)=B THEN LET C=1
600 LET A$=TL$(A$)
610 NEXT L
620 IF C=0 THEN LET G=G+1
630 LET N=W
640 FOR L=1 TO W
650 IF A(L)=0 THEN PRINT "-";
660 IF A(L)=0 THEN GO TO 690
670 LET N=N-1
680 PRINT CHR$(A(L));
690 NEXT L
700 PRINT
710 PRINT
720 IF NOT N=0 THEN GO TO 210
730 PRINT "BRILLIANT"
740 GO TO 300
999 PRINT "THANKS FOR THE GAME"
-------------------------------------------------
23)
program 458 bytes
SLOT 23
100 RANDOMISE
110 DIM C(3)
120 DIM P(7)
130 FOR J=0 TO 7
140 LET P(J)=2**(7-J)
150 NEXT J
160 GO TO 400
200 IF S=-1 THEN LET C(1)=18
210 LET C(2)=X/10
220 LET C(3)=X-10*C(2)+28
230 IF C(2)>0 THEN LET C(2)=C(2)+28
240 FOR L=0 TO 6
250 FOR I=1 TO 3
260 LET V=PEEK(3584+L+8*C(I))
270 FOR J=0 TO 7
280 LET G=(V AND P(J))>0
290 PRINT CHR$(-128*G);
300 NEXT J
310 NEXT I
320 PRINT
330 NEXT L
340 PRINT
350 RETURN
400 LET K=0
410 LET C(1)=0
420 LET S=1
430 LET A=RND(49)
440 LET X=A
450 GO SUB 200
460 LET C(1)=19
470 LET S=2*RND(2)-3
480 LET B=RND(49)
490 LET X=B
500 GO SUB 200
600 INPUT C
610 IF C=A+S*B THEN GO TO 700
620 LET K=K+1
630 IF K>2 THEN GO TO 660
640 PRINT "TRY AGAIN"
650 GO TO 600
660 PRINT "ANSWER WAS ";A+S*B
670 STOP
700 PRINT "THAT/S RIGHT"
-------------------------------------------------
24)
program 676 bytes
SLOT 24
100 DIM Q(10)
110 LET C=0
120 LET Q=0
130 PRINT "THIS IS A TEST OF CAPITALS"
140 PRINT "WHAT IS THE CAPITAL OF"
150 LET X=RND(10)
160 LET A=10
170 IF Q(X)<0 THEN GO TO 150
180 LET Q(X)=-1
190 GO SUB 500+20*X
200 FOR I=1 TO 30
210 LET X=CODE(A$)
220 PRINT CHR$(X);
230 LET A$=TL$(A$)
240 IF X=15 THEN GO TO 300
250 NEXT I
300 INPUT B$
310 IF NOT A$=B$ THEN GO TO 400
320 LET C=C+A
330 LET Q=Q+1
340 IF Q=10 THEN GO TO 490
350 IF A=0 THEN GO TO 140
360 CLS
370 GO TO 140
400 PRINT " TRY AGAIN"
410 INPUT B$
420 LET A=5
430 IF B$=A$ THEN GO TO 320
440 PRINT "IT IS ";A$
450 LET A=0
460 GO TO 320
490 CLS
500 PRINT "YOU GOT ";C;" PERCENT RIGHT"
510 STOP
520 LET A$="CZECHIA?PRAGUE"
530 RETURN
540 LET A$="TURKEY?ISTANBUL"
550 RETURN
560 LET A$="USA?WASHINGTON"
570 RETURN
580 LET A$="HOLLAND?AMSTERDAM"
590 RETURN
600 LET A$="AUSTRALIA?CANBERRA"
610 RETURN
620 LET A$="JAPAN?TOKYO"
630 RETURN
640 LET A$="INDIA?NEW DEHLI"
650 RETURN
660 LET A$="POLAND?WARSAW"
670 RETURN
680 LET A$="SWEDEN?STOCKHOLM"
690 RETURN
700 LET A$="PORTUGAL?LISBON"
710 RETURN
-------------------------------------------------
25)
program 427 bytes
SLOT 25
100 DIM A(63)
110 FOR I=1 TO 63
120 LET A(I)=128*(RND(2)-1)
130 NEXT I
200 FOR L=0 TO 8
210 FOR J=1 TO 7
220 LET I=J+7*L
230 PRINT CHR$(A(I));
240 NEXT J
250 PRINT
260 NEXT L
270 PRINT "PRESS N/L"
280 INPUT A$
285 IF NOT A$="" THEN STOP
290 CLS
300 FOR I=9 TO 55
310 LET X=0
320 IF ((I+1) AND 7)=0 THEN GO TO 350
330 LET X=(A(I+1)>127)
340 IF ((I-1) AND 7)=0 THEN GO TO 360
350 LET X=X+(A(I-1)>127)
360 FOR J=7 TO 9
370 FOR R=-1 TO 1
380 IF R=0 THEN GO TO 420
390 LET K=I+R*J
400 IF (K AND 7)=0 THEN GO TO 420
410 LET X=X+(A(K)>127)
420 NEXT R
430 NEXT J
440 LET A(I)=A(I)-X
450 NEXT I
460 FOR I=9 TO 55
470 IF A(I)=3 OR A(I)=130 OR A(I)=131 THEN GO TO 500
480 LET A(I)=0
490 GO TO 510
500 LET A(I)=128
510 NEXT I
520 GO TO 200
-------------------------------------------------
26)
program 134 bytes
SLOT 26
100 DIM A(75)
110 LET R=1
120 LET A(1)=2
130 FOR X=3 TO 300
140 FOR Y=1 TO R
150 IF X/A(R)>A(R) THEN GO TO 180
160 IF X=(X/A(Y))*A(Y) THEN GO TO 210
170 NEXT Y
180 LET R=R+1
190 LET A(R)=X
200 PRINT X,
210 LET X=X+1
220 NEXT X
-------------------------------------------------
27)
program 466 bytes
SLOT 27
100 DIM X(6)
110 DIM A(2)
120 PRINT "SOLUTIONS TO 2 EQUATIONS:"
130 PRINT "A*X + B*Y + C = 0"
140 PRINT
150 PRINT "ENTER DATA"
160 FOR I=1 TO 6
170 PRINT CHR$(37+I-((I-1)/3)*3),
180 INPUT X(I)
190 PRINT X(I)
200 NEXT I
300 LET D=X(1)*X(5)-X(2)*X(4)
310 IF D=0 THEN GO TO 900
320 LET A(1)=X(3)*X(5)-X(2)*X(6)
330 LET A(2)=-X(3)*X(4)+X(1)*X(6)
340 PRINT
350 PRINT "SOLUTIONS ARE"
360 LET D=-D
370 LET S=D/ABS(D)
400 FOR I=1 TO 2
410 LET B=ABS(D)
420 LET A=ABS(A(I))
500 LET Q=A/B
510 LET R=A-Q*B
520 LET A=B
530 LET B=R
540 IF R>0 THEN GO TO 500
550 LET GCD=A
600 PRINT S*A(I)/GCD;
610 IF NOT D/GCD=S THEN PRINT "/";ABS(D/GCD)
620 PRINT ,
630 NEXT I
640 STOP
900 PRINT "- DEGENERATE: NO SOLUTIONS"
-------------------------------------------------
28)
program 548 bytes
SLOT 28
100 PRINT "INPUT NUMBER"
110 INPUT A
120 CLS
130 PRINT "SQUARE ROOT OF ";A;" IS"
140 LET U=174
150 LET L=0
160 LET FRAC=0
170 LET DELTA=0
200 LET NEW=(U+L)/2
210 IF (NEW-1)**2A THEN GO TO 250
220 IF NEW**2>A THEN LET U=NEW
230 IF NEW**2A THEN LET NEW=NEW-1
300 LET ERROR=100*(A-NEW**2)
310 IF ERROR<2 THEN GO TO 470
320 LET FRAC=(ERROR/NEW)/2
330 LET FSQ=FRAC**2
340 LET ERROR=ERROR-2*NEW*FRAC
350 IF ERROR>0 THEN GO TO 390
360 LET FRAC=FRAC-1
370 LET ERROR=100*(A-NEW**2)
380 GO TO 330
390 LET ERROR=10*ERROR-FSQ/10
400 IF ERROR<0 THEN GO TO 360
410 LET DELTA=(ERROR/NEW)/2
420 LET EDASH=ERROR-(2*FRAC*DELTA)/2
430 IF EDASH>0 THEN GO TO 460
440 LET DELTA=DELTA-1
450 GO TO 420
460 LET DELTA=(EDASH/NEW)/2
470 PRINT NEW;".";FRAC;DELTA
-------------------------------------------------
29)
program 512 bytes
SLOT 29
100 DIM N(2)
110 DIM V(9)
120 RANDOMISE
130 FOR I=1 TO 2
140 LET N(I)=1
150 LET V(5*I-5)=RND(13)
160 NEXT I
170 LET I=1
200 LET P=I
210 FOR L=1 TO 7
220 FOR C=1 TO N(P)
230 LET J=C-6+5*P
240 IF L=1 OR L=7 THEN GO TO 420
250 IF L=4 THEN GO TO 270
260 GO TO 440
270 PRINT " \A ";
280 IF V(J)<2 OR V(J)>10 THEN GO TO 330
290 PRINT V(J);
300 IF V(J)<10 THEN PRINT " ";
310 PRINT "\A";
320 GO TO 450
330 LET A$=" AJQK"
340 LET M=V(J)
350 IF M>10 THEN LET M=M-9
360 FOR K=1 TO M-1
370 LET A$=TL$(A$)
380 NEXT K
390 PRINT CHR$(CODE(A$));
400 PRINT " \A";
410 GO TO 450
420 PRINT " \A\A\A\A\A";
430 GO TO 450
440 PRINT " \A \A";
450 NEXT C
460 PRINT
470 NEXT L
480 PRINT
490 PRINT
600 PRINT "PLAYER";I;":HIT OR STAY?"
610 INPUT A$
620 CLS
630 IF CODE(A$)=56 THEN GO TO 670
640 LET N(I)=N(I)+1
650 LET V(N(I)-6+5*I)=RND(13)
660 GO TO 200
670 IF I=2 THEN STOP
680 LET I=I+1
690 GO TO 200
-------------------------------------------------
30)
program 436 bytes
SLOT 30
100 DIM A(48)
110 FOR I=0 TO 48
120 LET A(I)=6
130 NEXT I
140 LET A(0)=53
150 PRINT "HOW MANY PLAYERS?"
160 INPUT N
170 LET T=0
200 LET T=T+1
210 FOR L=0 TO 6
220 LET J=7-L
230 PRINT J,
240 FOR C=0 TO 6
250 PRINT CHR$(A(C+7*L));
260 NEXT C
270 PRINT
280 NEXT L
290 PRINT ,
300 FOR C=1 TO 7
310 PRINT C;
320 NEXT C
330 PRINT
340 PRINT "PLAYER:";T
410 PRINT "INPUT COORD"
420 INPUT A
430 IF A=0 THEN GO TO 999
440 LET J=A/10
450 LET C=A-10*J-1
460 LET L=7-J
470 LET P=C+7*L
480 IF P<0 OR P>48 THEN GO TO 420
490 IF A(P)>0 THEN GO TO 600
500 PRINT "EMPTY SPACE"
510 GO TO 410
600 IF P=0 THEN GO TO 700
610 FOR J=L TO 6
620 FOR I=C TO 6
630 LET A(I+7*J)=0
640 NEXT I
650 NEXT J
660 CLS
670 IF T=N THEN LET T=0
680 GO TO 200
700 PRINT "PLAYER";T;":YOU LOST"
-------------------------------------------------
31)
program 445 bytes
SLOT 31
100 PRINT "WELCOME TO MASTERMIND"
110 PRINT "ENTER NUMBER OF DIGITS (3-7)"
120 INPUT N
130 LET N=N-1
140 DIM A(N)
200 FOR I=0 TO N
210 LET X=RND(10)-1
220 FOR J=0 TO I
230 IF X=A(J) THEN GO TO 210
240 NEXT J
250 LET A(I)=X
260 NEXT I
270 LET G=0
280 GO TO 530
300 INPUT B$
310 IF B$="" THEN STOP
320 CLS
330 PRINT B$
340 LET R=0
350 LET C=0
360 LET G=G+1
370 FOR I=0 TO N
380 LET X=CODE(B$)-28
390 IF X=A(I) THEN LET C=C+1
400 FOR J=0 TO N
410 IF X=A(J) THEN LET R=R+1
420 NEXT J
430 LET B$=TL$(B$)
440 NEXT I
450 IF C=N+1 THEN GO TO 600
500 PRINT "NUMBERS RIGHT=";R
510 PRINT "CORRECT POSITIONS=";C
520 PRINT
530 PRINT "ENTER ";N+1;"-DIGIT GUESS"
540 GO TO 300
600 PRINT "YOU DID IT IN ";G;" GUESSES"
-------------------------------------------------
32)
program 589 bytes
SLOT 32
100 DIM G(9)
110 PRINT "ENTER PLAYER 1 NAME"
120 INPUT Y$
130 PRINT "PLAYER 2 NAME?"
140 INPUT Z$
150 LET A$=Y$
160 LET B=2
170 GO TO 600
200 LET C=G(I)
210 IF C=0 THEN RETURN
220 FOR S=-1 TO 1
230 IF S=0 THEN GO TO 330
240 FOR J=1 TO 6
250 LET K=I+S*J
260 IF K=9 OR K=0 THEN GO TO 300
270 IF G(K)=0 OR G(K)=C THEN GO TO 290
280 NEXT J
290 IF J=1 OR G(K)=0 THEN GO TO 330
300 FOR K=1 TO J-1
310 LET G(I+S*K)=0
320 NEXT K
330 NEXT S
340 CLS
350 PRINT
360 PRINT "PINCH"
370 PRINT
380 PRINT
390 FOR J=1 TO 8
400 PRINT " ";CHR$(27+G(J));
410 NEXT J
420 PRINT
430 PRINT " ";
440 FOR J=1 TO 8
450 PRINT "\A\T\A";
460 NEXT J
470 PRINT
480 PRINT
490 FOR J=1 TO 8
500 PRINT " ";J;
510 NEXT J
520 RETURN
600 GO SUB 340
610 PRINT
620 PRINT A$;":ENTER MOVE"
630 INPUT I$
640 LET I=CODE(I$)-28
650 IF I=0 THEN GO TO 999
660 IF I>0 AND I<9 THEN GO TO 680
670 GO TO 630
680 IF NOT G(I)=0 THEN GO TO 630
690 LET G(I)=B
700 GO SUB 200
710 LET I=I+1
720 IF I=9 THEN LET I=7
730 GO SUB 200
740 LET B=B+1
750 IF B=3 THEN LET B=1
760 IF B=2 THEN LET A$=Y$
770 IF B=1 THEN LET A$=Z$
780 GO TO 610