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