10 REM***ROMULAN***BY BRIAN PULLEN*SOL VERSION BY DOUG BENEDICT 20 REM***& THE MARIN COMPUTER CENTER 30 REM***COPYRIGHT BY CREATIVE COMPUTING 40 DIM A$(20) 50 LET R$="&M&M" 60 PRINT "&K";: PRINT : PRINT 70 PRINT TAB(25);"R O M U L A N": PRINT 120 PRINT 130 PRINT TAB(19);: INPUT ,(1,0)"Care for a briefing? ",A$ 140 IF A$="Y" THEN GOTO 2030 150 PRINT "&K";: LET N=INT(100*RND(0)+1) 160 LET N=INT(N*RND(0)+1) 170 FOR X=1 TO 14: PRINT : NEXT X 180 REM* SET UP BORDER 190 FOR Y=52293 TO 52344: POKE Y,160: NEXT Y 200 FOR Y=52344 TO 53048 STEP 64: POKE Y,160: NEXT Y 210 FOR Y=53048 TO 52997 STEP -1: POKE Y,160: NEXT Y 220 FOR Y=52997 TO 52293 STEP -64: POKE Y,160: NEXT Y 230 POKE 52730,55: POKE 52731,56: POKE 52732,57 240 POKE 52794,52: POKE 52795,42: POKE 52796,54 250 POKE 52858,49: POKE 52859,50: POKE 52860,51 260 PRINT "DIRECTIONS ON RIGHT SIDE."; 270 PRINT CHR(10);"&M"; 280 REM* POKE IN STARS 290 FOR Z=1 TO 10 300 LET Y=INT(626*RND(0))+52358 310 FOR X=52357 TO 52933 STEP 64 320 IF Y>X AND YZ AND AZ AND BX AND B11 THEN POKE C2,32: EXIT 1100 ELSE EXIT 1100 770 IF Z=1 THEN 780 ELSE POKE C2,32 780 IF C1=B THEN EXIT 840 790 FOR Y=52357 TO 52933 STEP 64 800 IF C1>Y AND C17 THEN 970 990 REM* CHECK TO SEE IF OUT OF BOUNDS 1000 FOR Z=1 TO F 1010 LET A1=A+(Z*D): LET A2=A+((Z-1)*D) 1020 IF PEEK(A1)=42 THEN POKE A2,32: EXIT 2020 1030 FOR Y=52357 TO 52933 STEP 64 1040 IF A1>Y AND A1Z+24 THEN EXIT 1130 ELSE IF A>=Z THEN EXIT 1140 ELSE NEXT Z 1130 IF A>52663 THEN 1150 ELSE 1160 1140 IF A>52663 THEN 1170 ELSE 1180 1150 LET E=4: GOTO 1190 1160 LET E=2: GOTO 1190 1170 LET E=3: GOTO 1190 1180 LET E=1 1190 REM* FIND QUADRANT AND DIRECTION TO MOVE ROMULAN 1200 FOR Z=52934 TO 52358 STEP -64 1210 IF B>Z+24 THEN EXIT 1230 ELSE IF B>=Z THEN EXIT 1240 1220 NEXT Z 1230 IF B>52663 THEN 1250 ELSE 1260 1240 IF B>52663 THEN 1270 ELSE 1280 1250 LET E1=4: GOTO 1290 1260 LET E1=2: GOTO 1290 1270 LET E1=3: GOTO 1290 1280 LET E1=1 1290 IF E=E1 THEN 1510 1300 IF E1-E=1 THEN 1330 ELSE IF E1-E=2 THEN 1340 1310 IF E1-E=3 THEN 1350 ELSE IF E1-E=-1 THEN 1360 1320 IF E1-E=-2 THEN 1370 ELSE IF E1-E=-3 THEN 1380 1330 IF E1=3 THEN 1390 ELSE LET D1=-1: GOTO 1410 1340 LET D1=-64: GOTO 1410 1350 LET D1=-65: GOTO 1410 1360 IF E1=2 THEN 1400 ELSE LET D1=1: GOTO 1410 1370 LET D1=64: GOTO 1410 1380 LET D1=65: GOTO 1410 1390 LET D1=-63: GOTO 1410 1400 LET D1=63: GOTO 1410 1410 FOR Z=1 TO 5 1420 LET B1=B+(Z*D1): LET B2=B+((Z-1)*D1) 1430 FOR Y=52357 TO 52933 STEP 64 1440 IF B1>Y AND B1(A+20) THEN 1560 ELSE IF B>A THEN 1570 1540 LET D1=INT(3*RND(0))+2: LET F1=1: GOTO 1580 1550 LET D1=1: LET F1=3: GOTO 1580 1560 LET D1=INT(3*RND(0))+6: LET F1=1: GOTO 1580 1570 LET D1=5: LET F1=3: GOTO 1580 1580 RESTORE 1590 FOR Y=1 TO 8: READ D2: IF Y=D1 THEN EXIT 1600 ELSE NEXT Y 1600 LET D1=D2 1610 REM* MOVE ROMULAN AND CHECK FOR OUT OF BOUNDS 1620 FOR Y=1 TO F1 1630 LET B1=B+(Y*D1): LET B2=B+((Y-1)*D1) 1640 IF PEEK(B1)=42 THEN EXIT 1690 1650 IF B1=A THEN 1660 ELSE 1670 1660 LET B=B1: EXIT 1930 1670 FOR X=52357 TO 52933 STEP 64 1680 IF B1>X AND B1A+15 OR BA THEN 1750 ELSE LET D1=1: GOTO 1760 1750 LET D1=-1 1760 POKE B,14 1770 FOR Z=1 TO 10 1780 LET C3=B+(Z*D1): LET C4=B+((Z-1)*D1) 1790 IF PEEK(C3)=42 THEN POKE C4,32: EXIT 500 1800 IF Z=1 THEN 1810 ELSE POKE C4,32 1810 IF C3=A THEN EXIT 1870 1820 FOR Y=52357 TO 52933 STEP 64 1830 IF C3>Y AND C3