10 DIM L(9,9) 20 FOR R=1 TO 9: FOR C=1 TO 9 30 L(R,C)=10 40 NEXT C,R 50 FOR I=1 TO 3 60 R=INT(9*RND(1)+1) 70 C=INT(9*RND(1)+1) 80 L(R,C)=9 90 NEXT I 95 REM PRINT GRID 100 PRINT " 123456789" 110 FOR R=1 TO 9 120 PRINT R; " "; 130 FOR C=1 TO 9 140 IF L(R,C)=10 THEN PRINT "."; : GO TO 170 150 IF L(R,C)>0 AND L(R,C)<10 THEN PRINT "*";: GO TO 170 160 PRINT " "; 170 NEXT C 180 PRINT: NEXT R 195 REM INPUT ROUTINE 200 INPUT "ROW"; R 210 IF R<0 OR R>9 THEN 200 220 IF R=0 THEN 330 230 INPUT "COLUMN"; C 240 IF C<1 OR C>9 THEN 230 250 FOR I=-1 TO 1: FOR J=-1 TO 1 260 A=R+I: B=C+J 270 IF A<1 OR A>9 OR B<1 OR B>9 THEN 310 280 IF L(A,B)<1 OR L(A,B)=10 THEN 310 290 IF RND(1)>.5 THEN 310 300 L(A,B)=L(A,B)-3 310 NEXT J,I 320 GO TO 400 330 INPUT "BACKFIRE ROW"; R 340 IF R<1 OR R>9 THEN 330 350 INPUT "BACKFIRE COLUMN"; C 360 IF C<1 OR C>9 THEN 350 370 IF L(R,C)=10 THEN L(R,C)=2 395 REM SPREAD FIRE 400 FOR R=1 TO 9: FOR C=1 TO 9 410 IF L(R,C)<1 OR L(R,C)>9 THEN 500 420 IF L(R,C)<3 THEN 500 430 I=INT(3*RND(1)-1) 440 J=INT(3*RND(1)-1) 450 A=R+I: B=C+J 460 IF A<1 OR A>9 OR B<1 OR B>9 THEN 500 470 IF L(A,B)<>10 THEN 500 480 IF RND(1)<.3 THEN 500 490 L(A,B)=11 500 NEXT C,R 505 REM BURN FIRE AND COUNT 510 F=0 520 FOR R=1 TO 9 530 FOR C=1 TO 9 540 T=L(R,C) 550 IF T=11 THEN T=9 560 IF T>0 AND T<10 THEN T=T-1: F=F+1 570 L(R,C)=T 580 NEXT C,R 590 IF F<1 THEN 620 600 GO TO 100 615 REM COUNT WOODS RATING 620 C=0 630 FOR R=1 TO 9: FOR C=1 TO 9 640 IF L(R,C)=10 THEN W=W+1 650 NEXT C,R 660 R=W+30 670 IF R>100 THEN R=100 680 PRINT "YOUR RATING IS"; R; "." 690 INPUT "PLAY AGAIN"; Y$ 700 IF Y$="Y" THEN RUN 710 END