10 REM BACKU.ECB 15 PRINT "&K&J": DIM N$(15),M$(15) 20 PRINT TAB(15);"**************************" 30 PRINT TAB(15);"* BACKGAMMON REV 2R2 *" 40 PRINT TAB(15);"**************************" 50 CURSOR 7,5 60 PRINT " DO YOU NEED THE RULES"; 70 INPUT (1,200)Y$ 80 PRINT 90 IF Y$="N" THEN 230 ELSE PRINT "&K&J" 100 PRINT " THIS GAME IS FOR 2 PEOPLE TO PLAY.." 110 PRINT " STANDARD RULES. YOU DECIDE WHO GOES FIRST " 120 PRINT " THE BAR IS LOCATED AT 25 FOR THE (-)PLAYER" 130 PRINT " AND 26 FOR THE OTHER PLAYER..ALL OTHER MOVES" 140 PRINT " ARE FROM ONE NUMBER TO ANOTHER. EXAMP(24,23)" 150 PRINT " MUST HAVE A COMMA BETWEEN NUMBERS AND MUST" 160 PRINT " BE A CORRECT MOVE..TO BEAR OFF JUST TYPE THE" 170 PRINT " NUMBER COMMA 27(THE ADDRESS OF BEAR OFF SPOT)" 180 PRINT " AND THE COMPUTER WILL ERASE THAT LOCATION.." 190 PRINT " THERE IS A MINIMAL USE OF ERROR CHECKING FOR" 200 PRINT " LEGAL MOVES SO BE CAREFUL(AND HONEST)...." 210 PRINT " IF YOU CANT MOVE JUST TYPE (0,0) AND IT WILL" 220 PRINT " BE THE OTHER PLAYERS TURN..GOOD LUCK&J" 230 INPUT (15,0)"ENTER THE 1ST PLAYERS NAME --=->",M$ 240 PRINT : INPUT (15,0)"ENTER THE 2ND PLAYERS NAME --=->",N$ 250 LET U=INT(5*RND(0))+1 260 IF U>3 THEN PRINT " ";N$;" GOES FIRST" ELSE 280 270 GOTO 290 280 PRINT " ";M$;" GOES FIRST" 290 IF U>3 THEN LET Y=2 ELSE LET Y=1 300 DIM X(28) 310 LET X(28)=0 320 LET X(24)=-2 330 LET X(19)=5: LET X(12)=5 340 LET X(17)=3 350 LET X(13)=-5: LET X(6)=-5 360 LET X(1)=2 370 LET X(8)=-3 380 LET X(25)=0: LET X(26)=0 390 PRINT "&J" 400 PRINT TAB(15);" PLAYER ";M$;" IS (-)";TAB(35); 410 PRINT TAB(41);"(25) (26) (27)" 420 PRINT TAB(35);"BAR-> ";X(25);" ";X(26);" OFF" 430 PRINT "*******************************************************" 440 FOR U=1 TO 6 450 IF X(U)=0 THEN LET U1=U1+1 460 IF U1=6 THEN PRINT "PLAYER ";M$;" WINS!!!!! " 470 NEXT U 480 FOR U2=19 TO 24 490 IF X(U2)=0 THEN LET U3=U3+1 500 IF U3=6 THEN PRINT "PLAYER ";M$;" WINS!!!!! " 510 NEXT U2 520 IF U1=6 OR U3=6 THEN 1300 530 LET U1=0: LET U3=0 540 PRINT "24 23 22 21 20 19 :18 17 16 15 14 13 "; 550 IF Y=2 THEN PRINT TAB(40);"<--- MOVE ---" 560 IF Y=1 THEN PRINT TAB(40);"--- MOVE --->" 570 LET D=INT(6*RND(0))+1 580 LET D1=INT(6*RND(0))+1 590 FOR P=24 TO 13 STEP -1: PRINT X(P);" ";: NEXT P 600 LET R=0 610 LET M=1 620 IF D=D1 THEN LET A$="**DOUBLES!**" ELSE LET A$=" " 630 PRINT 640 PRINT TAB(18);":" 650 PRINT TAB(18);":" 660 FOR P=1 TO 12 STEP 1: PRINT X(P);" ";: NEXT P 670 PRINT 680 LET Y=Y+1 690 IF Y=3 THEN LET Y=1 700 PRINT " 1 2 3 4 5 6 :7 8 9 10 11 12 "; 710 IF Y=1 THEN PRINT TAB(40);"--- MOVE --->" 720 IF Y=2 THEN PRINT TAB(40);"<--- MOVE ---" 730 PRINT "*******************************************************&J" 740 IF D=D1 THEN LET R=-2 750 PRINT TAB(25);"YOUR DICE, "; 760 IF Y=1 THEN PRINT M$; ELSE PRINT N$; 770 PRINT " ";D;" -";D1 780 PRINT TAB(25);A$ 790 PRINT TAB(20),"ENTER YOUR #";M;" MOVE"; 800 LET M=M+1 810 INPUT F,T 820 IF F=0 AND T=0 THEN 390 830 IF F-T>0 THEN LET Q=F-T 840 IF T-F>0 THEN LET Q=T-F 850 IF F-T>15 THEN LET Q=T 860 IF T>25 THEN LET Q=D 870 IF Q<>D AND Q<>D1 THEN PRINT TAB(20);"* WRONG MOVE"; 880 IF Q<>D AND Q<>D1 THEN 810 890 IF X(F)=0 THEN PRINT TAB(20);"# WRONG MOVE"; 900 IF X(F)=0 THEN 810 910 IF X(F)>0 AND X(T)<-1 THEN PRINT TAB(20);" # HELD POINT!"; 920 IF X(F)>0 AND X(T)<-1 THEN 810 930 IF X(F)<0 AND X(T)>1 THEN PRINT TAB(20);" * HELD POINT!"; 940 IF X(F)<0 AND X(T)>1 THEN 810 950 IF Y=1 THEN 960 ELSE 1000 960 IF T=25 AND T-F>0 THEN PRINT TAB(20);M$;" # WRONG DIRECTION!"; 970 IF T=25 AND T-F>0 THEN 810 ELSE 1040 980 IF T<27 AND T-F<0 THEN PRINT TAB(20);M$;" WRONG DIRECTION!"; 990 IF T<27 AND T-F<0 THEN 810 ELSE 1040 1000 IF T=26 AND F-T>0 THEN PRINT TAB(20);N$;"* WRONG DIRECTION!"; 1010 IF T=26 AND F-T>0 THEN 810 1020 IF T<27 AND F-T<0 THEN PRINT TAB(20);N$;" WRONG DIRECTION!"; 1030 IF T<27 AND F-T<0 THEN 810 1040 LET R=R+1 1050 IF T=27 THEN 1260 1060 IF X(T)=0 AND X(F)<0 THEN 1120 1070 IF X(T)=0 AND X(F)>0 THEN 1150 1080 IF X(T)<0 AND X(F)<0 THEN 1120 1090 IF X(T)<0 AND X(F)>0 THEN 1180 1100 IF X(T)>0 AND X(F)>0 THEN 1150 1110 IF X(T)>0 AND X(F)<0 THEN 1220 1120 LET X(F)=X(F)+1 1130 LET X(T)=X(T)-1 1140 IF R=2 THEN 390 ELSE 790 1150 LET X(F)=X(F)-1 1160 LET X(T)=X(T)+1 1170 IF R=2 THEN 390 ELSE 790 1180 LET X(F)=X(F)-1 1190 LET X(T)=X(T)+2 1200 LET X(25)=X(25)-1 1210 IF R=2 THEN 390 ELSE 790 1220 LET X(F)=X(F)+1 1230 LET X(T)=X(T)-2 1240 LET X(26)=X(26)+1 1250 IF R=2 THEN 390 ELSE 790 1260 IF X(F)>0 THEN LET X(F)=X(F)-1 1270 IF X(F)<0 THEN LET X(F)=X(F)+1 1280 LET X(27)=0 1290 IF R=2 THEN 390 ELSE 790 1300 PRINT "&J **** GAME OVER ****" 1310 END