home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
87xx
/
8709a.d64
/
duell
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-03-30
|
9KB
|
300 lines
10 REM DUELL
20 REM
30 REM (C) 1987 BY RALPH JORDAN
40 REM
50 REM HIRSCHWEG 8
60 REM 7090 ELLWANGEN
70 REM TEL. 07961/4377
80 REM
90 REM===============================
100 REM********LADER******************
110 REM===============================
120 PRINT"[147]":POKE53280,0:POKE53281,0:POKE 646,14:POKE53272,21
130 IF P=0 THEN P=1:LOAD"DUELL OBJ.",8,8
140 IF P2=0 THEN P2=1:LOAD"FX OBJ.",8,8
150 REM===============================
160 REM******GRAFIKZEICHEN************
170 REM===============================
180 PZ(1)=0:PZ(2)=0:PZ(3)=0:PZ(4)=0:RESTORE:POKE53280,0:POKE53281,0
190 FOR I=52200 TO 52252
200 READ X:POKE I,X :S=S+X:NEXT I
210 DATA 120,165,1,72,41,251,133,1,169,208,133,3
220 DATA 169,48,133,5,160,0,132,2,132,4,162,32
230 DATA 177,2,145,4,200,208,249,230,3,230,5,202
240 DATA 208,242,104,133,1,173,24,208,41,241,9,12
250 DATA 141,24,208,88,96
260 SYS52200
270 FOR X=0 TO 7:READ DT
280 POKE 12288+8*71+X,DT
290 DATA 0,0,0,0,3,15,63,255
300 NEXT
310 FOR X=0 TO 7:READ DT
320 POKE 12288+8*72+X,DT
330 DATA 1,7,63,127,255,255,255,255
340 NEXT
350 FOR X=0 TO 7:READ DT
360 POKE 12288+8*74+X,DT
370 DATA 128,192,240,252,255,255,255,255
380 NEXT
390 FOR X=0 TO 7:READ DT
400 POKE 12288+8*75+X,DT
410 DATA 0,0,0,0,192,248,254,255
420 NEXT
430 FOR X=0 TO 7:READ DT
440 POKE 12288+8*76+X,DT
450 DATA 0,0,0,0,24,0,0,0
460 NEXT
470 FOR X=0 TO 7:READ DT
480 POKE 12288+8*68+X,DT
490 DATA 0,0,3,4,8,30,127,218
500 NEXT
510 FOR X=0 TO 7:READ DT
520 POKE 12288+8*70+X,DT
530 DATA 0,0,192,32,16,120,254,91
540 NEXT
550 FOR X=0 TO 7:READ DT
560 POKE 12288+8*83+X,DT
570 DATA 255,255,255,255,255,255,255,255
580 NEXT
590 REM===============================
600 REM******EINGABEN*****************
610 REM===============================
620 IF SZ>0 THEN GOTO 870
630 GOSUB 2510
640 PRINT"[147]":POKE198,0:POKE 646,14:T1=1:T2=2
650 PRINT""
660 INPUT" SPIELERZAHL(2-4)";SZ
670 IF SZ<2 OR SZ>4 THEN GOTO 640
680 FOR X=1 TO SZ
690 PRINT"[147]"
700 PRINT""
710 PRINT" SPIELER";X;"(MAX.4 ZEICHEN):"
720 PRINT"[145]"
730 PRINT
740 INPUT" ";S$(X)
750 IF LEN(S$(X))>4 OR LEN(S$(X))<1 THEN GOTO 690
760 NEXT X
770 REM===============================
780 REM******S$1 VS S$2***************
790 REM===============================
800 PRINT"[147]":POKE 646,1
810 PRINT""
820 PRINT" ";S$(1);"(BLAU) ";"VS ";S$(2);"(GRAU)"
830 SYS 52300:POKE53280,0:POKE53281,0
840 REM===============================
850 REM******GRAFIK*******************
860 REM===============================
870 POKE 53265,PEEK(53265)AND 239
880 PRINT" [204] [204] [204] [204] [204]"
890 PRINT"[155][204] [204] [204] [204] [204] [204] "
900 PRINT" [204] [204] [204] [204] "
910 PRINT" [204] [204] [204] "
920 PRINT" [204] [204] [204] [204]"
930 PRINT" [204] [204] [204] [204] [204] [204] "
940 PRINT"[155] [204] [204] [204] [204] [204]"
950 PRINT" [204] [204] [204] [204] [204] "
960 PRINT"[155] [204] [204] [204] [204] [204] "
970 PRINT"[149] [199][200][202][203] "
980 PRINT" [199][200][211][211][211][211][202][203] "
990 PRINT" [199][200][211][211][211][211][211][211][211][211][202][203] [199][200][202][203] "
1000 PRINT" [199][200][202][203] [199][200][211][211][211][211][211][211][211][211][211][211][211][211][202][203][199][200][211][211][211][211][202][203]"
1010 PRINT" [199][200][211][211][211][211][202][203][199][200][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][202][203]"
1020 PRINT"[199][200][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][211][202][203]"
1030 PRINT"[154][196][198] [204][204] [204][204] [196][198] [204][204] [204][204] [204][204] [204] [196][198]"
1040 PRINT" [196][198] [204] [204] [204] [196][198] [204][204] [196][198] [204][204] [204] "
1050 PRINT"[204] [204] [204][204] [204][204] [204][204] [204] [204] "
1060 PRINT"[196][198] [204] [204] [196][198] [204] [204][204] [196][198] [204] [204]"
1070 PRINT" [204][204] [196][198] [204] [204][204][204] [196][198] [204][204] [204][204] [204] [196][198] [204] [204]"
1080 PRINT""
1090 PRINTTAB(18)"[153]^";
1100 POKE 53265,PEEK(53265)OR 16
1110 REM==============================
1120 REM********SPRITES***************
1130 REM==============================
1140 FOR N=12288 TO 12350:READ Q:POKE N,Q:NEXT
1150 DATA 10,0,0,2,0,12,1,64,57
1160 DATA 1,128,60,1,64,48,42,84,48
1170 DATA 186,149,48,46,170,170,46,164,48
1180 DATA 11,170,48,58,170,240,250,170,240
1190 DATA 250,170,240,254,170,240,254,170,192
1200 DATA 62,152,0,2,80,0,1,20,0
1210 DATA 1,69,0,0,82,0,0,32,0
1220 FOR N=12352 TO 12414:READ Q:POKE N,Q:NEXT
1230 DATA 0,0,160,48,0,128,108,1,64
1240 DATA 60,2,64,12,1,64,12,21,168
1250 DATA 12,86,174,170,170,184,12,26,184
1260 DATA 12,170,224,15,170,172,15,170,175
1270 DATA 15,170,175,15,170,191,3,170,191
1280 DATA 0,38,188,0,5,128,0,20,64
1290 DATA 0,81,64,0,133,0,0,8,0
1300 FOR N=12416 TO 12478:READ Q:POKE N,Q:NEXT
1310 DATA 2,170,64,2,169,64,2,165,64
1320 DATA 2,149,64,2,85,128,1,86,128
1330 DATA 1,90,128,1,106,128,1,170,64
1340 DATA 2,169,64,2,165,64,2,149,64
1350 DATA 2,85,128,1,86,128,1,90,128
1360 DATA 1,106,128,1,170,64,2,169,64
1370 DATA 2,165,64,2,149,64,2,85,64
1380 FOR N=12672 TO 12734:READ Q:POKE N,Q:NEXT
1390 DATA 0,0,0,0,238,0,3,174,192
1400 DATA 15,190,176,14,190,176,62,190,172
1410 DATA 58,254,172,175,171,235,175,171,235
1420 DATA 175,171,235,175,171,235,175,171,235
1430 DATA 175,171,235,58,254,188,58,190,172
1440 DATA 14,190,176,14,190,176,3,190,192
1450 DATA 0,190,0,0,0,0,0,0,0
1460 REM==============================
1470 REM***SPRITE&SOUND POKES*********
1480 REM==============================
1490 V=53248
1500 POKEV+41,2:POKEV+42,2
1510 POKEV+43,6:POKEV+44,13:POKEV+4,24:POKEV+6,64
1520 POKE V+37,7:POKEV+38,12:POKEV+39,6:POKEV+40,11
1530 POKE54296,10
1540 POKE54272,0
1550 POKE54273,40
1560 POKE54277,6
1570 POKE54278,250
1580 POKE54276,33
1590 REM==============================
1600 REM********START*****************
1610 REM==============================
1620 POKEV+30,0:SYS49152
1630 REM==============================
1640 REM*********KOLLISION************
1650 REM==============================
1660 POKE53280,1:POKE53280,0:POKEV+30,0:POKEV+21,31
1670 X1=PEEK(V):X2=PEEK(V+2):Y1=PEEK(V+1):Y2=PEEK(V+3)
1680 IF PEEK(V+16)AND2^0 THEN X1=X1+255
1690 IF PEEK(V+16)AND2^1 THEN X2=X2+255
1700 IF ABS(X1-X2)<24 AND ABS(Y1-Y2)<21 THEN GOTO 1730
1710 IF PEEK(50030)=0 THEN GOTO 1860
1720 IF PEEK(50030)=1 THEN GOTO 1750
1730 IF Y1=Y2THEN GOSUB 2360:GOTO 1530
1740 IF Y1>Y2THEN GOTO 1860
1750 PRINT"":S1=S1+1
1760 FORX=1TOS1
1770 PRINT"[209]";
1780 NEXTX
1790 IFS1=5THENRU=RU+1:FORX=1984TO1990:POKEX,96:NEXT X
1800 IFS1=5THENS1=0:S2=0:PZ(T1)=PZ(T1)+1:FORX=2015TO2023:POKEX,96:NEXT X
1810 GOSUB 2360
1820 IFRU=1THENPRINT"":PRINTTAB(18)"[153]^^";
1830 IFRU=2THENPRINT"":PRINTTAB(18)"[153]^^^";
1840 IF RU=3 THEN ZL=ZL+1:GOTO 2000
1850 GOTO 1530
1860 PRINT"":S2=S2+1
1870 FORX=1TOS2
1880 PRINTTAB(34)"[152][209]";
1890 NEXTX
1900 IFS2=5THENRU=RU+1:FORX=1984TO1990:POKE X,96:NEXTX
1910 IFS2=5THENS1=0:S2=0:PZ(T2)=PZ(T2)+1:FORX=2015TO2023:POKE X,96:NEXTX
1920 GOSUB 2360
1930 IFRU=1THENPRINT"":PRINTTAB(18)"[153]^^";
1940 IFRU=2THENPRINT"":PRINTTAB(18)"[153]^^^";
1950 IF RU=3 THEN ZL=ZL+1:GOTO 2000
1960 GOTO 1530
1970 REM==============================
1980 REM*****SIEGER !!****************
1990 REM==============================
2000 IF SZ>2 THEN GOTO 2710
2010 IF PZ(1)>PZ(2) THEN SI$=S$(1):GOTO 2030
2020 SI$=S$(2)
2030 POKE V+21,0:PRINT"[147]"
2040 POKE 53272,23
2050 POKE 53265,PEEK(53265)AND247
2060 POKE 53265,(PEEK(53265)AND248)+7
2070 POKE 53265,PEEK(53265)AND239
2080 FOR X=1 TO 25
2090 PRINTTAB(12)SI$;" GEWINNT !!!"
2100 Z=Z+1:POKE646,Z
2110 IF Z>14 THEN Z=1
2120 NEXT X
2130 POKEV+41,6:POKEV+42,11:POKEV+43,6:POKEV+44,11:POKEV+45,6:POKEV+46,11
2140 POKEV+21,255:POKEV,24:POKEV+1,54 :POKE2040,192
2150 POKEV+16,170:POKEV+2,64:POKEV+3,54 :POKE2041,193
2160 POKEV+4,24:POKEV+5,112:POKE2042,192
2170 POKEV+6,64:POKEV+7,112:POKE2043,193
2180 POKEV+8,24:POKEV+9,162:POKE2044,192
2190 POKEV+10,64:POKEV+11,162:POKE2045,193
2200 POKEV+12,24:POKEV+13,225:POKE2046,192
2210 POKEV+14,64:POKEV+15,225:POKE2047,193
2220 POKE 53265,PEEK(53265)OR 16
2230 FOR X=1 TO 120
2240 PRINTTAB(12)SI$;" GEWINNT !!!"
2250 Z=Z+1:POKE646,Z
2260 IF Z>14 THEN Z=1
2270 NEXT X
2280 POKEV+21,0
2290 POKE 53265,PEEK(53265)OR 8
2300 POKE 53265,(PEEK(53265)AND248)+3
2310 PRINT"[147]":POKE53272,21
2320 RUN 190
2330 REM==============================
2340 REM*****SOUND********************
2350 REM==============================
2360 A=0
2370 POKE 54296,15:F=50:G=50
2380 POKE54272,0:POKE54279,0
2390 POKE54273,F:POKE54280,G
2400 POKE64277,0:POKE54284,0
2410 POKE54278,240:POKE54285,240
2420 POKE54276,129:POKE54283,129
2430 F=F-4:G=G-4
2440 IF F<1 THEN 2370
2450 A=A+1
2460 IF A=12THENPOKE54276,32:POKE54283,32:POKEV+21,0:RETURN
2470 GOTO 2380
2480 REM==============================
2490 REM**********TITELBILD***********
2500 REM==============================
2510 PRINT"[147]":POKE646,14
2520 PRINT""
2530 PRINTTAB(17)"VON"
2540 PRINT
2550 PRINTTAB(13)"RALPH JORDAN"
2560 X=8
2570 FOR Z=1 TO 15:PRINT""
2580 PRINT" [211][211][211][223][146] [211] [211] [211][211][211][211] [211] [211] ":POKE646,X:X=X+1
2590 PRINT" [211] [211] [211] [211] [211] [211] [211] ":POKE646,X:X=X+1
2600 PRINT" [211] [211] [211] [211] [211] [211] [211] ":POKE646,X:X=X+1
2610 PRINT" [211] [211] [211] [211] [211][211][211][211] [211] [211] ":POKE646,X:X=X+1
2620 PRINT" [211] [211] [211] [211] [211] [211] [211] ":POKE646,X:X=X+1
2630 PRINT" [211] [211] [211] [211] [211] [211] [211] ":POKE646,X:X=X+1
2640 PRINT" [211][211][211][169] [211][211][211][211] [211][211][211][211] [211][211][211] [211][211][211] ":POKE646,X:X=X+1
2650 IF X=15THEN X=1
2660 NEXT Z
2670 RETURN
2680 REM==============================
2690 REM**********TURNIER*************
2700 REM==============================
2710 PRINT"[147]":POKE 646,1:POKE53272,23
2720 PRINT""
2730 IFSZ>3THENGOTO2890
2740 ON ZL GOTO 2750,2790,2830,2870
2750 IF PZ(1)>PZ(2)THENV1=1:D1=2:GOTO2770
2760 V1=2:D1=1
2770 PRINT" ";S$(V1);"(BLAU) ";"VS ";S$(3);"(GRAU)"
2780 T1=V1:T2=3:RU=0:SYS52300:POKE53265,PEEK(53265)AND239:GOTO180
2790 IF PZ(V1)>PZ(3)THEND2=3:GOTO2810
2800 D2=V1:V1=3
2810 PRINT" ";S$(D1);"(BLAU) ";"VS ";S$(D2);"(GRAU)"
2820 T1=D1:T2=D2:RU=0:SYS52300:POKE53265,PEEK(53265)AND239:GOTO180
2830 IF PZ(D1)>PZ(D2)THENV2=D1:GOTO2850
2840 V2=D2
2850 PRINT" ";S$(V1);"(BLAU) ";"VS ";S$(V2);"(GRAU)"
2860 T1=V1:T2=V2:RU=0:SYS52300:POKE53265,PEEK(53265)AND239:GOTO180
2870 IFPZ(V1)>PZ(V2)THENSI$=S$(V1):GOTO2030
2880 SI$=S$(V2):GOTO2030
2890 ON ZL GOTO 2900,2940,2980
2900 IFPZ(1)>PZ(2)THENV1=1:GOTO2920
2910 V1=2
2920 PRINT" ";S$(3);"(BLAU) ";"VS ";S$(4);"(GRAU)"
2930 T1=3:T2=4:RU=0:SYS52300:POKE53265,PEEK(53265)AND239:GOTO180
2940 IFPZ(3)>PZ(4)THENV2=3:GOTO2960
2950 V2=4
2960 PRINT" ";S$(V1);"(BLAU) ";"VS ";S$(V2);"(GRAU)"
2970 T1=V1:T2=V2:RU=0:SYS52300:POKE53265,PEEK(53265)AND239:GOTO180
2980 IFPZ(V1)>PZ(V2)THENSI$=S$(V1):GOTO2030
2990 SI$=S$(V2):GOTO2030