   1 REM Artillero Source Code . .BAS text file, for testing input spool text file. Note: Graphics characters are not supported
   2 PRINT AT 10,0;"QUIERES INSTRUCCIONES ? S/N": PAUSE 0: IF INKEY$="n" OR INKEY$="N" THEN GO TO 10: IF INKEY$="s" OR INKEY$="S" THEN GO TO 2
   3 BORDER 7: PAPER 7: INK 0: CLS : LET b$="----------INSTRUCCIONES---------SE TRATA DE DARLE A LA DIANA Y  HACER LOS MAXIMOS PUNTOS ANTES  DE QUE SE ACABE EL TIEMPO MOVI- MIENTO CON JOYSTYCK O TECLAS    --------------------------------Q ARRIBA A ABAJO 0 DISPARO             1 PAUSA                                                  PULSA UNA TECLA"
   5 FOR z=1 TO LEN b$
   6 BEEP .02,CODE b$(z)/45: PRINT b$(z);" ";CHR$ 8;
   8 OUT 254,CODE b$(z): NEXT z: FOR n=1 TO 50: NEXT n: PAUSE 0
  11 LET a$="MAN SOFT"
  12 LET re=100: BORDER 7: PAPER 7: INK 0
  13 LET r=0: LET a=1: LET t=100
  15 CLS : LET ca=10
  20 PRINT AT 3,1;"DISPAROS 0"
  25 PLOT 0,0: DRAW 0,175
  35 PLOT 255,0: DRAW 0,175
  45 PLOT 0,0: DRAW 255,0
  55 PLOT 0,175: DRAW 255,0
  65 PLOT 0,140: DRAW 140,0
  75 PLOT 140,140: DRAW 0,35
  85 PRINT AT 1,1;"PUNTOS 0"
  95 PRINT AT 1,21;"ARTILLERO":PRINT AT 2,21;"---------"
  97 PRINT AT 4,21;"RECORD";AT 6,21;"";re
 100 FOR d=1 TO 19
 105 PRINT AT 5,21;"";a$
 110 PRINT INK 2;AT d,19;"  ";AT d+1,19;"  ": PAUSE 5
 125 PRINT AT d,19;"  ": PRINT AT d+1,19;"  "
 130 PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  "
 150 PRINT AT 3,21;"TIEMPO ";t
 155 IF t=99 THEN PRINT AT 3,30;" "
 157 IF t=9 THEN PRINT AT 3,29;" "
 160 LET t=t-1
 180 IF t=0 THEN GO TO 1000
 200 IF IN 221=16 OR INKEY$="0" THEN PRINT INK 2;AT d,19;"  ": PRINT INK 2;AT d+1,19;"  ": GO SUB 500
 210 IF IN 221=8 OR INKEY$="q" THEN GO SUB 600
 220 IF IN 221=4 OR INKEY$="a" THEN GO SUB 700
 225 IF INKEY$="1" THEN PRINT #0; INVERSE 1;AT 0,0;"             PAUSA              ": PAUSE 0:PRINT #0;AT 0,0;"                                "
 230 NEXT d: GO TO 100
 501 FOR b=4 TO 20: IF ATTR (ca,b)=58 THEN PRINT FLASH 1;AT d,22;"!ACERTO!": PRINT AT d+1,19;"  ": PRINT AT d,19;"  ": BEEP 1.6,2: PAUSE 80: PRINT AT d,22;"        ": LET r=r+10: LET d=1
 503 PRINT AT 1,1;"PUNTOS ";r: PRINT AT 3,1;"DISPAROS ";a
 510 PRINT AT ca,b;" ": PAUSE 1: PRINT AT ca,b;" "
 520 NEXT b: PRINT AT d,19;"  ": LET a=a+1: PRINT AT d+1,19;"  "
 530 RETURN
 600 PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  "
 610 LET ca=ca-1
 620 PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  "
 630 IF ca<8 THEN PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  ": LET ca=10
 635 RETURN
 700 PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  "
 710 LET ca=ca+1
 720 PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  "
 730 IF ca>18 THEN PRINT AT ca,2;"  ": PRINT AT ca+1,2;"  ": LET ca=10
 740 RETURN
1000 PRINT AT 10,5;"SE ACABO";AT 11,5;"EL TIEMPO": PAUSE 99
1100 CLS : PRINT AT 5,0;"HAS HECHO ";r: PRINT AT 5,14;"PUNTOS";AT 7,0;"Y HAS DISPARADO ";a-1: PRINT AT 7,19;"VECES"
1150 IF r>re THEN LET re=r: INPUT "INTRODUCE NOMBRE";a$
1175 PRINT AT 10,0;"QUIERES JUGAR OTRA VEZ ? S/N": PAUSE 0
1200 IF INKEY$="s" OR INKEY$="S" THEN GO TO 13
1300 IF INKEY$="n" THEN GO TO 6000
6000 PAPER 0: CLS : PAUSE 40: CLS : PAPER 7: CLS : PRINT #0;AT 1,0;"   < Sistema preparado >": PAUSE 0: CLS : PRINT #0;AT 0,0;"ERA UNA BROMA": FOR n=1 TO 50: NEXT n: GO TO 1
7000 CLS : PRINT BRIGHT 1;AT 9,7;"ESPERA UN MOMENTO": PRINT BRIGHT 1;AT 10,7;"Y PON PLAY": INK 7: LOAD ""CODE 65368: INK 0: POKE 23570,6: CLS : LOAD "pant1"CODE 16384: FOR n=1 TO 500: NEXT n:GO TO 1
9999 CLEAR : SAVE "ARTILLERO" LINE 7000: SAVE "GDU" CODE 65368,168
