1 REM Ins{nt av 2839 100 REM  110 REM +++++++++++++++++++++++++++++ 120 REM ++++ * D E F E N D E R * ++++ 130 REM + =============== + 140 REM + AV. NIKLAS M\LLBERG + 150 REM + TEL. 0150/153 02 + 160 REM + 12 APRIL 1982 + 170 REM + KATRINEHOLM + 180 REM +++++++++++++++++++++++++++++ 190 REM  200 DIM Q$(11)=11,Q1$(11)=11 : GOSUB 880 210 ; CHR$(12) : FOR I%=0% TO 23% : ; CUR(I%,0%)CHR$(151) : NEXT I% : RESTORE 220 REM  DEFENDER DATA  230 T$(1)="/| // // // u  /| // /d" 240 T$(2)=" *5p p p j0  *5p p:" 250 T$(3)=' h5# # # "5  h5# g' 260 T$(4)='|/ ||  ||  k |/ ||  )0' : T$(5)='w9 e`%' : T$(6)='uz 5' 270 DATA "N","I","K","L","A","S"," ","M","\","L","L","B","E","R","G" 280 REM  PLAN 1  290 OUT 6%,5% 300 FOR I%=3% TO 6% : ; CUR(I%,4%)T$(I%-2%) : NEXT I% 310 FOR P=1 TO 500 : GOSUB 730 : NEXT P 320 OUT 6,0 : OUT 6%,137% : ; CUR(9,17)T$(5) : ; CUR(10,17)T$(6) : GOTO 340 330 FOR P=1 TO 350 : NEXT P : RETURN 340 FOR P=1 TO 500 : GOSUB 730 : NEXT P 350 FOR I%=1% TO 15% : OUT 6%,137% : GOSUB 330 : OUT 6,0 : READ A$ 351 ; CUR(12%,I%+11%)A$ : FOR P=1 TO 50 : NEXT P : NEXT I% 360 GOTO 420 370 DATA 21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21 371 DATA 21,21,21,20,19,18,17,16,15,14,13,12 380 OUT 6%,217% : RESTORE 370 : X1%=12% : I1%=1% : C$=" {t0" 390 FOR I%=36% TO 10% STEP -1% : READ X% : ; CUR(X%,I%)"p~1 " 391 FOR P=1 TO 50 : NEXT P : NEXT I% : X1%=X% : I1%=I% 400 FOR I%=9% TO 1% STEP -1% : READ X% : ; CUR(X%,I%)C$ : ; CUR(X1%,I1%)" " 401 X1%=X% : I1%=I% : FOR P=1 TO 50 : NEXT P : NEXT I% 410 RETURN 420 GOSUB 370 430 ; CUR(12%,1%)C$ : C$="p" : OUT 6%,217% : FOR P=1 TO 1000 : NEXT P 440 FOR I%=5% TO 35% : ; CUR(12%,I%)C$ : NEXT I% : OUT 6%,137% 441 ; CUR(9%,17%)" " : ; CUR(10%,17%)" " 450 FOR I%=5% TO 35% : ; CUR(12%,I%)" " : NEXT I% 460 FOR P=1 TO 1000 : OUT 6%,217% : NEXT P : C$=" {t0" : OUT 6%,217% 470 FOR I%=1% TO 35% : ; CUR(12%,I%)C$ : FOR P=1 TO 50 : NEXT P : NEXT I% : ; CUR(12%,I%)" " 480 REM  PLAN 2  490 ; CHR$(12) : FOR I%=0% TO 23% : ; CUR(I%,0%)CHR$(151) : NEXT I% 500 A$='dp& "!),)p,& "' : B$=" 8d&)0` 8,80" : A$=A$+A$+"," : B$=B$+B$+" " : B5$="" 510 DATA "n$","=5","w5","91",";1","f$","v4",">4" 520 RESTORE 510 : FOR I%=1% TO 8% : READ S$(I%) : NEXT I% 530 L%=0% : I%=0% : K%=0% : GOTO 580 540 REM  MOVING GROUND  550 B5$=LEFT$(A$,1%) : A$=RIGHT$(A$,2%) : A$=A$+B5$ : ; CUR(21%,1%)A$ 560 B5$=LEFT$(B$,1%) : B$=RIGHT$(B$,2%) : B$=B$+B5$ : ; CUR(20%,1%)B$ : OUT 6%,217% : RETURN 570 REM  MAIN UNIT  580 DATA 3,8,3,14,3,20,3,26,16,8,16,14,16,20,16,26 590 X%=32% : RESTORE 580 600 ; CUR(0%,1%)C$;C$;C$TAB(30)CHR$(135)"0000" 610 GOSUB 550 : K%=0% : L1%=19% 620 FOR I%=18% TO 10% STEP -1% : ; CUR(I%,1)C$ : ; CUR(I%+1,1)" " 621 FOR P=1 TO 250 : NEXT P : NEXT I% 630 K%=K%+1% : GOSUB 730 : FOR P=1 TO 200 : NEXT P : IF K%=9% THEN 710 640 L%=L%+1% : IF L%=11% THEN 660 ELSE FOR P=1 TO 100 : NEXT P : GOSUB 550 641 L1%=L1%-.5 : IF L1%=9% THEN L1%=10% 650 ; CUR(L1%,37%)S$(K%) : ; CUR(L1%+1%,37%)" " : GOTO 640 660 L%=0% : L1%=19% : FOR J%=11% TO 75% : SETDOT X%,J% : CLRDOT X%,J%-2% : NEXT J% 670 FOR P=1 TO 20 : ; CUR(10%,37%)"&f" : ; CUR(10%,37%)" " : OUT 6%,9% : NEXT P 680 GOSUB 550 : FOR P=1 TO 20 : ; CUR(10%,37%)"&f" : ; CUR(10%,37%)" " : OUT 6%,9% : NEXT P 690 READ X,Y : ; CUR(X,Y)S$(K%) : ; CUR(X+2,Y-2)CHR$(135)K%*10% 700 GOSUB 550 : GOTO 630 710 FOR J%=1 TO 50 : GOSUB 550 : FOR P=1 TO 100 : NEXT P : NEXT J% : GOTO 820 720 REM  N]GON SOM VILL SPELA ? 730 T%=INP(56)-128% : IF T%<1% THEN RETURN 740 ; CHR$(12) 750 FOR I%=3% TO 6% : ; CUR(I%,0%)CHR$(151)" "T$(I%-2%) : NEXT I% 760 FOR I%=32130 TO 32164 : POKE I%,PEEK(I%) OR 128 : NEXT I% 770 FOR I%=32258 TO 32292 : POKE I%,PEEK(I%) OR 128 : NEXT I% 780 FOR I%=32386 TO 32420 : POKE I%,PEEK(I%) OR 128 : NEXT I% 790 FOR I%=32514 TO 32548 : POKE I%,PEEK(I%) OR 128 : NEXT I% 800 CHAIN "DEFENDER.GAM" 810 REM  SCOREBOARD  820 ; CHR$(12) : OUT 6%,0% : FOR I%=0% TO 3% : ; CUR(I%,0%)CHR$(151)" "T$(I%+1%) : NEXT I% 830 ; CUR(8%,13%)" HI-SCORES" : ; CUR(9%,12%)CHR$(151)" ,,,,,,,,,," 840 ; CUR(6,13%)"HALL OF FAME" : FOR I%=32525% TO 32536% : POKE I%,PEEK(I%) OR 128% : NEXT I% 850 J%=10% : FOR I%=1% TO A% : ; CUR(I%+9%,14%)Q$(J%)TAB(18%)Q%(J%) : J%=J%-1% : NEXT I% 860 FOR P=1 TO 12000 : GOSUB 730 : NEXT P : GOTO 210 870 REM  INL[SNING AV SCORES  880 ONERRORGOTO 940 890 OPEN "DEFEND.DAT" ASFILE 1 : INPUT #1,Q$ : A%=VAL(Q$) 900 ONERRORGOTO 920 910 FOR I%=1% TO A% : INPUT #1,Q$(I%) : INPUT #1,Q$ : Q%(I%)=VAL(Q$) : NEXT I% 920 CLOSE 1 : CLOSE 2 : RETURN 930 REM  NYDEF  940 PREPARE "DEFEND.DAT" ASFILE 1 950 A%=10 960 ; #1,NUM$(A%) 970 FOR I%=1% TO 10% 980 ; #1,"ABC" : ; #1,"80" 990 NEXT I% 1000 CLOSE 1 1010 GOTO 880