Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß) 1 A1$="HEIMCOMPUTER robotron Z9001" 2 A2$="SPIEL":A9=2 4 A3$="R+TRUMPF" 6 A4$="TRUMPF-8 ODER MAU" 8 A5$="EIN KARTENSPIEL" 10 REM VERFASSER:KITTELMANN 12 REM ANSCHRIFT:MKD/1EKG 14 REM DATUM 26.09.1984 VERSION 4.0 18 WINDOW:BORDER A9:INK 8:PAPER 1:CLS:PRINT AT(0,0);" " 20 DIM D$(52),N$(8),Y(4):I=RND(-PEEK(31)-1):US=528:GS=581:HS=634:ZS=687 90 GOSUB 100:GOTO 1000 100 PRINT AT(2,2);A1$:PRINT AT(4,2);"",STRING$(34,""),"" 102 PRINT AT(5,2);"":PRINT AT(5,37);"" 104 PRINT AT(6,2);"",STRING$(34,""),"" 106 PRINT AT(5,3);A2$:PRINT INK 3;AT(5,29);A3$ 108 INK A9:PRINT AT(8,2);STRING$(36,"") 110 FOR I=9 TO 13:PRINT AT(I,2);"":PRINT AT(I,37);"":NEXT I 112 PRINT AT(14,2);STRING$(36,"") 114 INK 8:PRINT AT(10,36-LEN(A4$));A4$:PRINT AT(12,36-LEN(A5$));A5$ 116 INK 3:PRINT AT(18,2);"VEB ROBOTRON-MESSELEKTRONIK" 118 PRINT AT(20,2);">OTTO SCHOEN< DRESDEN":INK 8 120 PRINT INK 4;AT(22,31);">ENTER<" 122 T$=INKEY$:IF T$=""THEN 122 124 IF T$=CHR$(13)THEN PRINT AT(20,27);STRING$(11," "):RETURN 126 GOSUB 130:GOTO 122 130 PRINT INK 2;AT(20,27);"WIE BITTE ?":RETURN 150 PRINT INK 4;AT(18,(32-LEN(KY$)));KY$,":(J)/N" 151 T$=INKEY$:IF T$=""THEN 151 152 PRINT INK 2;AT(18,37);T$ 154 IF ASC(T$)=13 OR ASC(T$)=74 THEN T=1:RETURN 156 IF ASC(T$)=78 THEN T=2:RETURN 158 PRINT INK 2;AT(16,27);"WIE BITTE ?":GOTO 150 160 K=0:L=0:FOR I=1 TO 8:IF INSTR(N$(I),Z$)<>0 THEN L=I+4*(I>4):I=8:K=1 168 NEXT I:IF INSTR("8",C$)AND K=1 AND W=0 THEN C$=N$(L)+" ":RETURN 172 FOR I=1 TO 13:IF INSTR(MID$(D$(I),3,2),Z$)<>0 THEN L=(L-1)*13+I:I=13:K=K+1 174 NEXT I:IF K=2 THEN Z$=D$(L) 178 RETURN 180 WINDOW 2,14,0,39:CLS:PRINT AT(2,0);" ":FOR I=1 TO 52 182 J=Q:Q=INT((I-1)/13):IF J<>Q THEN R=0 184 IF PEEK(GS+I)=1 THEN PRINT INK 4;AT(2+R,2+10*Q);D$(I):R=R+1 186 NEXT I:Q=0:R=0:RETURN 290 K=INT(52*RND(5)+1):FOR J=K TO 52:IF PEEK(US+J)=1 THEN M=J:J=52:GOTO 350 320 NEXT J:FOR J=1 TO K-1:IF PEEK(US+J)=1 THEN M=J:J=K 350 NEXT J:POKE US+M,0:D1=D1-1:RETURN 380 GOSUB 180 410 WINDOW 19,19,2,39:Z$="":INK 6:INPUT "WELCHE KARTE SPIELEN SIE ?";Z$:INK 3 412 WINDOW 16,18,2,39:CLS 420 IF Z$<>""THEN 480 430 IF D1>0 THEN H1=H1+1:GOSUB 290:POKE GS+M,1:GOTO 380 440 IF BZ=0 THEN PRINT "KARTEN SIND ALLE !":BZ=1:GOTO 410 450 PRINT "SIE MUESSEN AUSSETZEN !":B=B+1:RETURN 480 W=1:GOSUB 160:IF K<>2 THEN PRINT Z$;" IST KEINE KARTE !":GOTO 410 500 IF PEEK(GS+L)=0 THEN PRINT Z$;" HABEN SIE NICHT !":GOTO 410 530 IF INSTR(RIGHT$(C$,2),Z$)<>0 OR INSTR(LEFT$(C$,1),Z$)<>0 THEN 580 540 IF RIGHT$(Z$,1)="8"THEN 580 560 PRINT Z$;" KANN NICHT GESPIELT WERDEN !":GOTO 410 580 POKE GS+L,0:C$=D$(L):H1=H1-1:PRINT AT(0,24);C$," " 590 IF RIGHT$(C$,1)<>"8"THEN 645 600 WINDOW 19,19,2,39:INK 6:INPUT "WELCHE FARBE WUENSCHEN SIE ?";Z$:INK 3 605 WINDOW 16,18,2,39 610 CLS:W=0:GOSUB 160:IF K<>1 THEN PRINT Z$;" IST KEINE KARTENFARBE !":GOTO 600 645 PRINT AT(0,24);C$," ":PAUSE 20:B=0:RETURN 660 FOR I=52 TO 1 STEP-1 670 IF PEEK(HS+I)=0 OR INSTR("8",D$(I))<>0 THEN 710 690 IF INSTR(RIGHT$(C$,2),D$(I))<>0 OR INSTR(LEFT$(C$,1),D$(I))<>0 THEN 790 710 NEXT I:FOR I=46 TO 7 STEP-13 730 IF PEEK(HS+I)=1 THEN 790 750 NEXT I:IF D1>0 THEN GOSUB 290:POKE HS+M,1:H2=H2+1:GOTO 660 760 IF BZ=0 THEN PRINT "KARTEN SIND ALLE !":BZ=1 770 IF BZ=1 THEN PRINT "ICH MUSS AUSSETZEN !":B=B+1:RETURN 790 C$=D$(I):B=0:POKE HS+I,0:H2=H2-1:I=1:NEXT I 800 CLS:IF H2>0 THEN PRINT "ICH HABE";H2+1;"KARTEN":ELSE PRINT "ICH HABE EINE KARTE" 810 IF RIGHT$(C$,1)<>"8"THEN PRINT "ICH SPIELE ";C$:RETURN 820 FOR I=1 TO 4:Y(I)=0:NEXT I:K=0:FOR I=1 TO 52 STEP 13:K=K+1:FOR J=I TO I+12 850 IF PEEK(HS+J)=1 THEN Y(K)=Y(K)+1 860 NEXT J:NEXT I:P=1:FOR J=2 TO 4:IF Y(J)>Y(P)THEN P=J 900 NEXT J:PRINT "ICH SPIELE ";C$;:C$=N$(P):PRINT " UND WAEHLE ";C$:RETURN 1000 CLS:WINDOW 0,19,1,39:PRINT AT(0,1);" ":OUT 136,4:INK 3 1002 PRINT AT(6,2);"MOMENT BITTE - ICH MISCHE" 1004 N$(1)="":N$(2)="":N$(3)="":N$(4)="" 1005 N$(5)="Y":N$(6)="X":N$(7)="C":N$(8)="V" 1006 FOR I=0 TO 3:FOR J=1 TO 13:K=J+1:A1$=STR$(K):IF K=11 THEN A1$=" BUBE" 1007 IF K=12 THEN A1$=" DAME" 1008 IF K=13 THEN A1$=" KOENIG" 1009 IF K=14 THEN A1$=" AS" 1010 IF K>10 THEN K=10 1012 IF K=8 THEN K=50 1014 D$(I*13+J)=N$(I+1)+A1$:POKE ZS+I*13+J,K:NEXT J:NEXT I 1020 FOR I=1 TO 52:POKE GS+I,0:POKE HS+I,0:POKE US+I,1:NEXT I:D1=52 1022 FOR I=1 TO 7:GOSUB 290:POKE GS+M,1:GOSUB 290:POKE HS+M,1:NEXT I 1024 GOSUB 290:C$=D$(M):H1=7:H2=7:B=0:BZ=0:CLS 1028 PRINT AT(0,2);"AUSGESPIELTE KARTE : ",C$," " 1034 IF NOT(H2=0 OR B=2)THEN GOSUB 380:IF NOT(H1=0 OR B=2)THEN GOSUB 660:GOTO 1028 1036 BEEP:PAUSE 30:BEEP:WINDOW 2,19,2,39:CLS:PRINT AT(2,2);" ":C1=0:C2=0 1038 IF H2<>0 THEN PRINT AT(0,2);"MEINE KARTEN :",STRING$(16," ") 1039 IF H1<>0 AND H2=0 THEN PRINT AT(0,2);"IHRE KARTEN :",STRING$(18," "):GOSUB 180 1041 FOR I=1 TO 52:J=Q:Q=INT((I-1)/13):IF J<>Q THEN R=0 1042 IF PEEK(HS+I)=1 THEN PRINT AT(2+R,2+10*Q);D$(I):R=R+1:C1=C1+PEEK(ZS+I) 1044 IF PEEK(GS+I)=1 THEN C2=C2+PEEK(ZS+I) 1046 NEXT I:Q=0:R=0:S1=S1+C1:S2=S2+C2 1056 PRINT INK 2;AT(15,2);"IHRE PUNKTE :",C1," MEINE PUNKTE :",C2 1058 IF C2<C1 THEN PRINT AT(16,2);"SIE HABEN GEWONNEN !":N1=N1+1:GOTO 1064 1060 PRINT AT(16,2);"SIE HABEN VERLOREN !":N2=N2+1 1064 N3=N3+1:KY$="WEITER SPIELEN":GOSUB 150 1066 WINDOW 0,19,0,39:CLS:PRINT AT(0,0);" ":IF T=1 THEN 1020 1068 PRINT AT(3,3);"ANZAHL DER SPIELE :",N3 1070 PRINT INK 7;AT(5,3);"SIE HABEN GEWONNEN :",N1 1071 PRINT INK 7;AT(7,3);"SIE HABEN VERLOREN :",N2 1072 PRINT INK 2;AT(9,3);"IHRE GESAMTPUNKTE :",S1 1074 PRINT INK 2;AT(11,3);"MEINE GESAMTPUNKTE :",S2 1076 IF S1>S2 THEN PRINT AT(13,3);"GROSSE KLASSE !" 1078 IF S1<S2 THEN PRINT AT(13,3);"TROESTEN SIE SICH !" 1080 PRINT INK 6;AT(19,31);">ENTER<":GOSUB 120 1082 BORDER 7:WINDOW:CLS:PRINT AT(0,0);" ":PRINT INK 3;AT(8,2);"AUF WIEDERSEHEN !" 1084 PAUSE 50:CLS:END