
-------------------------------------------------
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
