home *** CD-ROM | disk | FTP | other *** search
- 100 dimb$(2,2,2),w$(2,2,2),vz$(2,2,2),y$(27),q(12),a1$(27),c2$(27),l1(43),h1(43)
- 110 dimt1(43),l2(16),h2(16),t2(16),l3(27),h3(27),t3(27)
- 120 lv=1:v=53248:si=54272:fl=si:fh=si+1:ws=si+4:as=si+5:hs=si+6:ls=si+24
- 130 gosub 4740
- 140 :
- 150 rem --- titelbild ---
- 160 printspc(12)"[158] matthias scherf "
- 170 printspc(17)"[153]presents"
- 180 printspc(10)" [146] [146] [146] [146]"
- 190 printspc(12)" [146] [146] [146] [146]"
- 200 printspc(12)" [146] [146] [146]"
- 210 printspc(12)" [146] [146] [146] [146]"
- 220 printspc(12)" [146] [146] [146]";
- 230 print" [146]"
- 240 printspc(6)" [146] [159] [146] [146] [158]";
- 250 print" [146] [154] [146]"
- 260 printspc(6)" [146] [159] [146] [146] [158]";
- 270 print" [146] [146] [154] [146]"
- 280 printspc(6)" [146] [159] [146] [146] [158]";
- 290 print" [146] [154] [146]"
- 300 printspc(6)" [146] [159] [146] [146] [158]";
- 310 print" [146] [154] [146]"
- 320 printspc(6)" [146] [159] [146] [146] [158]";
- 330 print" [146] [146] [154] [146]"
- 340 printspc(6)" [146] [159] [146] [146] [158]";
- 350 print" [146] [146] [154] [146]"
- 360 printspc(6)" [146] [159] [146] [158]";
- 370 print" [146] [154] [146]"
- 380 print"[152] das grosse knobelspiel f^r kluge leute":gosub 3800
- 390 print"[145][156] f 1 [146] [152]instructions [156] f 3 [146] [152]play game"
- 400 get a$:ifa$=""then400
- 410 ifasc(a$)=134then860
- 420 ifasc(a$)<>133then400
- 430 printchr$(147):fori=0to5:print:next
- 440 :
- 450 rem --- spielanleitung ---
- 460 printspc(4)"ziel dieses spiels ist es,einen":print
- 470 printspc(16)"[159]w^rfel":print
- 480 printspc(3)"aus [158]sechs teilen zusammenzusetzen:"
- 490 gosub 800
- 500 print"[154]1.schritt:w*hlen sie durch die tasten":print
- 510 print"1 - 6 ein teil aus.":print
- 520 print"anordnung: 1 2"
- 530 print" 3 4"
- 540 print" 5 6":print
- 550 print"[154]2.schritt:bestimmen sie die lage des":print
- 560 print"teils,indem sie zuerst eingeben,ob sie ":print
- 570 print"das teil [159]k[158]ippen oder [159]d[158]rehen wollen.":print
- 580 print"anschliessend dann die richtung:":print
- 590 print"[159]l[158]inks,[159]r[158]echts,[159]v[158]orne,[159]h[158]inten.":print
- 600 print"beispiel:[159] dl [158]= drehen nach links.":print
- 610 print"taste [159]e[158] beendet den vorgang!"
- 620 gosub800
- 630 print"[147][154]3.schritt:in diesem w^rfelkasten :":gosub1470:poke 646,5
- 640 fori=1to10:print:next
- 650 print"(sicht von oben) wird das teil einge-":print
- 660 print"tragen:je weiter unten sich das teil ":print
- 670 print"befindet,desto dunkler erscheint es.":print
- 680 print"bewegen sie das teil im w^rfel durch":print
- 690 print"taste b-fixieren sie es mit taste f!"
- 700 gosub800
- 710 print"[154]4.schritt:w*hlen sie das n*chste teil":print
- 720 print"aus..."
- 730 print:print"es gibt drei verschiedene schwierig-":print
- 740 print"keitsstufen!":print:print"und nun...":print
- 750 printspc(14)"[150]viel gl^ck!":print:print
- 760 print"p.s. sollten sie aus einer situation":print
- 770 printspc(5)"keinen ausweg mehr sehen,":print
- 780 printspc(5)"so dr^cken sie [159]q.":print:print:print
- 790 goto 390
- 800 printchr$(19):fori=0to20:print:next:printspc(18)"[150]press f1 to continue"
- 810 get a$:ifa$=""then810
- 820 ifasc(a$)<>133then810
- 830 printchr$(147);:return
- 840 :
- 850 rem --- levelauswahl ---
- 860 printchr$(147)
- 870 on lv gosub4000,4190,4340
- 880 goto1090
- 890 :
- 900 rem --- kommentar spiel verloren ---
- 910 printchr$(147)
- 920 tr(lv)=tr(lv)+1
- 930 print"tja,tut mir leid-ist wohl doch nicht so":print
- 940 print"einfach wie es aussieht?!":print
- 950 print"aber es ist ja erst ihr";tr(lv);"[157].ter versuch.":print:print
- 960 print"also nicht verzagen!!-auf ein neues!!":
- 970 gosub 800:goto870
- 980 :
- 990 rem --- kommentar spiel gewonnen ---
- 1000 printchr$(147):tr(lv)=tr(lv)+1
- 1010 print"herzlichen gl^ckwunsch!":print
- 1020 print"sie haben den w^rfel im";tr(lv);"[157].ten":print
- 1030 print"versuch geschafft!":print
- 1040 iflv=3then gosub 800:goto 4540
- 1050 print"und hier - der n*chste kandidat:..."
- 1060 gosub 800:lv=lv+1:goto870
- 1070 :
- 1080 rem --- zeichnen der teile ---
- 1090 poke53280,0:poke53281,0:printchr$(147)
- 1100 gosub1470:poke 646,5
- 1110 for an=0to5:h=0
- 1120 fore=0to2:fora=0to2:forr=1to3
- 1130 h=h+1:d$=mid$(a$(an),h,1)
- 1140 ifd$="1"thengosub1530
- 1150 next:next:next:next
- 1160 :
- 1170 :
- 1180 rem --- auswahl eines teils ---
- 1190 print"teil nummer 1-6 : $"
- 1200 get tn$:iftn$=""then 1200
- 1210 iftn$="q"thenz4=0:goto3140
- 1220 tn=val(tn$):iftn<1ortn>6then1190
- 1230 fori=0tozr:ifiv(i)=tnthen1190
- 1240 next:an=tn-1:poke 1042,asc(tn$):gosub1930
- 1250 :
- 1260 rem --- teil drehen ---
- 1270 k(an)=1788:h=0
- 1280 for e=0to2:fora=0to2:forr=1to3
- 1290 h=h+1:d$=mid$(a$(an),h,1)
- 1300 ifd$="1"then gosub1530
- 1310 next:next:next:gosub1570
- 1320 :
- 1330 print"drehrichtung : $ ":b$=""
- 1340 get dr$:ifdr$=""then 1340
- 1350 ifdr$="e"thenpoke1039,5:gosub2000:goto2080
- 1360 ifdr$="q"thenz4=0:goto3140
- 1370 dr=asc(dr$)
- 1380 if dr=20then1330
- 1390 if dr>90ordr<65then1340
- 1400 b$=b$+dr$:print "";spc(14+len(b$))dr$;
- 1410 iflen(b$)=1thenprint"$":goto1340
- 1420 forb=1to6:ifbf$(b)<>b$thennext:goto 1330
- 1430 on b gosub1660,1690,1720,1750,1770,1810
- 1440 goto 1280
- 1450 :
- 1460 rem --- zeichnen des wuerfelkastens ---
- 1470 print"[155]"
- 1480 fori=0to5:poke1117+i,36:poke55389+i,15:poke1397+i,35:poke 55669+i,15
- 1490 poke1156+40*i,38:poke 55428+40*i,15:poke1163+40*i,37:poke55435+40*i,15:next
- 1500 return
- 1510 :
- 1520 rem --- zeichenen der elementarwuerfel ---
- 1530 po=k(an)+2*r+39*a-80*e:sys(49152)po
- 1540 return
- 1550 :
- 1560 rem --- teile-daten in 3-d string zerlegen ---
- 1570 h=0
- 1580 for g=0to2:fori=0to2:fort=0to2
- 1590 h=h+1:w$(g,i,t)=mid$(a$(an),h,1):b$(g,i,t)=w$(g,i,t)
- 1600 next:next:next
- 1610 h=0
- 1620 return
- 1630 :
- 1640 rem --- drehen des teils nach... ---
- 1650 rem +++ vorne (k) +++
- 1660 forg=0to2:fori=0to2:a=2-i:fort=0to2
- 1670 b$(a,g,t)=w$(g,i,t):next:next:next:a$(an)="":goto1840
- 1680 rem +++ rechts (d) +++
- 1690 forg=0to2:fori=0to2:a=2-i:fort=0to2
- 1700 b$(g,t,a)=w$(g,i,t):nextt:nexti:nextg:a$(an)="":goto1840
- 1710 rem +++ rechts (k) +++
- 1720 forg=0to2:fori=0to2:fort=0to2:z=2-t
- 1730 b$(z,i,g)=w$(g,i,t):next:next:next:a$(an)="":goto 1840
- 1740 rem +++ hinten (k) +++
- 1750 forg=0to2:a=2-g:fori=0to2:fort=0to2
- 1760 b$(i,a,t)=w$(g,i,t):next:next:next:a$(an)="":goto1840
- 1770 rem +++ links (d)+++
- 1780 forg=0to2:fori=0to2:fort=0to2:z=2-t
- 1790 b$(g,z,i)=w$(g,i,t):nextt:nexti:nextg:a$(an)="":goto1840
- 1800 rem +++ links (k) +++
- 1810 forg=0to2:a=2-g:fori=0to2:fort=0to2:z=2-t
- 1820 b$(t,i,a)=w$(g,i,t):next:next:next:a$(an)="":goto 1840
- 1830 :
- 1840 forg=0to2:fori=0to2:fort=0to2:a$(an)=a$(an)+b$(g,i,t):next:next:next
- 1850 :
- 1860 rem --- loeschroutine 1 ---
- 1870 fori=0to8:fort=0to9
- 1880 pokek(an)-200+i+40*t,32
- 1890 next:next
- 1900 return
- 1910 :
- 1920 rem --- loeschroutine 2 ---
- 1930 fori=0to7:fort=0to8
- 1940 pokek(an)-3*40+t+40*i,32
- 1950 next:next:pokek(an)+4,tn+48:poke54272+k(an)+4,1
- 1960 zr=zr+1:iv(zr)=tn
- 1970 return
- 1980 :
- 1990 rem --- zerlegen in 3-d string ---
- 2000 h=0
- 2010 for g=0to2:fori=0to2:fort=0to2
- 2020 h=h+1:b$(g,i,t)=mid$(a$(an),h,1)
- 2030 next:next:next
- 2040 h=0:print"bitte warten sie einen moment!"
- 2050 return
- 2060 :
- 2070 rem --- teil verschiebbar nach...? ---
- 2080 :
- 2090 rem +++ r e c h t s +++
- 2100 for a=2to1step-1:c=c+1:for i=0to2:fort=0to2
- 2110 ifb$(i,t,a)="0"thennext:next:q(c)=1:next:goto2140
- 2120 ifc/2<>int(c/2)thenc=c+1
- 2130 rem +++ l i n k s +++
- 2140 for a=0to1:c=c+1:fori=0to2:fort=0to2
- 2150 ifb$(i,t,a)="0"thennext:next:q(c)=1:next:goto2180
- 2160 ifc/2<>int(c/2)thenc=c+1
- 2170 rem +++ v o r n e +++
- 2180 for a=2to1step-1:c=c+1:for i=0to2:fort=0to2
- 2190 ifb$(i,a,t)="0"thennext:next:q(c)=1:next:goto2220
- 2200 ifc/2<>int(c/2)thenc=c+1
- 2210 rem +++ h i n t e n +++
- 2220 for a=0to1:c=c+1:fori=0to2:fort=0to2
- 2230 ifb$(i,a,t)="0"thennext:next:q(c)=1:next:goto2260
- 2240 ifc/2<>int(c/2)thenc=c+1
- 2250 rem +++ o b e n +++
- 2260 for a=2to1step-1:c=c+1:for i=0to2:fort=0to2
- 2270 ifb$(a,i,t)="0"thennext:next:q(c)=1:next:goto2300
- 2280 ifc/2<>int(c/2)thenc=c+1
- 2290 rem +++ u n t e n +++
- 2300 for a=0to1:c=c+1:fori=0to2:fort=0to2
- 2310 ifb$(a,i,t)="0"thennext:next:q(c)=1:next:goto2330
- 2320 ifc/2<>int(c/2)thenc=c+1
- 2330 :
- 2340 rem --- ermitteln aller 'dualstrings',der neuen teile, ---
- 2350 rem ----------- die die verschiebungen ergaben -----------
- 2360 :
- 2370 fort=1to12:ifq(t)=1thenrz=rz+1:ve(rz)=t
- 2380 nextt:y$(0)=a$(an):zi=0:goto3030
- 2390 ifve(zi)>4andos=0thenov=zi-1:os=1
- 2400 ifok<>0then2420
- 2410 ifve(zi)>8thenop=ov+z3:ok=1
- 2420 onve(zi)goto 2450,2500,2550,2600,2650,2700,2750,2800,2860,2900,2940,2980
- 2430 :
- 2440 rem +++ rechts (1) +++
- 2450 for a=0to2:fore=0to2:fort=0to1
- 2460 vz$(a,e,t+1)=b$(a,e,t)
- 2470 next:next:next:goto3020
- 2480 :
- 2490 rem +++ rechts (2) +++
- 2500 for a=0to2:fore=0to2
- 2510 vz$(a,e,2)=b$(a,e,0)
- 2520 next:next:goto3020
- 2530 :
- 2540 rem +++ links (1) +++
- 2550 for a=0to2:fore=0to2:fort=1to2
- 2560 vz$(a,e,t-1)=b$(a,e,t)
- 2570 next:next:next:goto3020
- 2580 :
- 2590 rem +++ links (2) +++
- 2600 for a=0to2:fore=0to2
- 2610 vz$(a,e,0)=b$(a,e,2)
- 2620 next:next:goto3020
- 2630 :
- 2640 rem +++ vorne (1) +++
- 2650 fora=0toov:z3=z3+1
- 2660 y$(ov+z3)=right$(y$(a),3)+left$(y$(a),24)
- 2670 nexta:goto3030
- 2680 :
- 2690 rem +++ vorne (2) +++
- 2700 fora=0toov:z3=z3+1
- 2710 y$(ov+z3)=right$(y$(a),6)+left$(y$(a),21)
- 2720 next:goto3030
- 2730 :
- 2740 rem +++ hinten (1) +++
- 2750 fora=0toov:z3=z3+1
- 2760 y$(ov+z3)=right$(y$(a),24)+left$(y$(a),3)
- 2770 nexta:goto3030
- 2780 :
- 2790 rem +++ hinten (2) +++
- 2800 fora=0toov:z3=z3+1
- 2810 y$(ov+z3)=right$(y$(a),21)+left$(y$(a),6)
- 2820 next:goto3030
- 2830 nexta
- 2840 :
- 2850 rem +++ oben (1) +++
- 2860 fort=0toop:z2=z2+1
- 2870 y$(op+z2)="000000000"+left$(y$(t),18):next:goto3040
- 2880 :
- 2890 rem +++ oben (2) +++
- 2900 fort=0toop:z2=z2+1
- 2910 y$(op+z2)="000000000000000000"+left$(y$(t),9):next:goto3040
- 2920 :
- 2930 rem +++ unten (1) +++
- 2940 fort=0toop:z2=z2+1
- 2950 y$(op+z2)=right$(y$(t),18)+"000000000":next:goto3040
- 2960 :
- 2970 rem +++ unten (2) +++
- 2980 fort=0toop:z2=z2+1
- 2990 y$(op+z2)=right$(y$(t),9)+"000000000000000000":next:goto3040
- 3000 :
- 3010 rem +++ rueckfuehrung auf 1-d string +++
- 3020 fora=0to2:fore=0to2:forr=0to2:y$(zi)=y$(zi)+vz$(a,e,r):next:next:next
- 3030 fora=0to2:fore=0to2:forr=0to2:vz$(a,e,r)="0":next:next:next
- 3040 :
- 3050 zi=zi+1:ifzi<=rzthen2390
- 3060 sl=ov+z2+z3:if sl=0 then sl=rz
- 3070 :
- 3080 rem --- passt das teil in den wuerfelkasten ? ---
- 3090 fori=0tosl
- 3100 fort=1to27
- 3110 ifmid$(y$(i),t,1)="1"andmid$(w$,t,1)="1"then3130
- 3120 next:z4=z4+1:a1$(z4)=y$(i)
- 3130 next i
- 3140 if z4<>0 then 3200
- 3150 gosub 3510
- 3160 print"das war wohl nichts...";:gosub 3860
- 3170 print"press any key!":goto 3750
- 3180 :
- 3190 rem --- neue gesamtwuerfeldaten erstellen ---
- 3200 fori=1toz4:c2$(i)=""
- 3210 fort=1to27
- 3220 ifmid$(a1$(i),t,1)="0"andmid$(w$,t,1)="0"thenc2$(i)=c2$(i)+"0":goto3240
- 3230 c2$(i)=c2$(i)+"1"
- 3240 nextt:nexti:g=0
- 3250 :
- 3260 rem --- teil in den kasten eintragen ---
- 3270 h=0:g=1:gosub 3600
- 3280 fora=0to2:fore=0to2:forr=0to2:h=h+1
- 3290 d$=mid$(c2$(g),h,1)
- 3300 ifd$="1"thengosub3660
- 3310 next:next:next
- 3320 :
- 3330 rem --- abfrage der position ---
- 3340 print"b = bewegen f = fixieren!"
- 3350 get ge$:ifge$=""then3350
- 3360 ifge$="f"then w$=c2$(g):gosub1870:goto3440
- 3370 ifge$="b"then 3400
- 3380 ifge$="q"then z4=0:goto3140
- 3390 goto 3350
- 3400 g=g+1:ifg>z4theng=1
- 3410 gosub3600:h=0:goto3280
- 3420 :
- 3430 rem --- inhalt des wuerfelkastens zeichnen ---
- 3440 k(an)=1304:z=0:gosub 1870
- 3450 for e=0to2:fora=0to2:forr=1to3:z=z+1
- 3460 d$=mid$(w$,z,1)
- 3470 ifd$="1"thengosub1530
- 3480 next:next:next
- 3490 :
- 3500 rem --- loeschroutine 3 ---
- 3510 fori=0to32:poke1024+i,32:next
- 3520 :
- 3530 rem --- loeschen der variablen ---
- 3540 fori=0to27:y$(i)="":a1$(i)="":c2$(i)="":next:fori=0to12:q(i)=0:next
- 3550 c=0:rz=0:ov=0:ok=0:os=0:op=0:z2=0:z3=0:zi=0:sl=0:z=0
- 3560 if z4=0 then return
- 3570 z4=0:goto3730
- 3580 :
- 3590 rem --- loeschroutine 4 ---
- 3600 fori=0to5:fort=0to5
- 3610 poke1157+t+40*i,32
- 3620 next:next
- 3630 return
- 3640 :
- 3650 rem --- zeichnen des teils in den wuerfelkasten ---
- 3660 pv=1157+2*r+80*e
- 3670 fori=0to1:fort=0to1
- 3680 pokepv+i+40*t,224-a*64
- 3690 next:next
- 3700 return
- 3710 :
- 3720 rem --- wuerfel fertig ? ---
- 3730 ifzr<6then goto1190
- 3740 print"herzlichen gl^ckwunsch! ";:gosub 3920:print"press any key!"
- 3750 get ge$:ifge$=""then3750
- 3760 ifzr=6thenzr=0:goto 1000
- 3770 zr=0:goto 910
- 3780 :
- 3790 rem --- titelmelodie ---
- 3800 poke ls,15:poke as,0:poke hs,15*16
- 3810 fori=0to43:poke fh,l1(i):poke fl,h1(i):poke ws,17
- 3820 for t=1tot1(i)*(1/16)*1500:next:for t=1to2:poke ws,0:next:poke ws,17
- 3830 next:poke ws,0:poke as,0:poke hs,0:return
- 3840 :
- 3850 rem --- melodie wuerfel nicht geschafft ---
- 3860 poke ls,15:poke as,0:poke hs,15*16
- 3870 fori=0to15:poke fh,l2(i):poke fl,h2(i):poke ws,17
- 3880 for t=1tot2(i)*(1/8)*1300:next:for t=1to2:poke ws,0:next:poke ws,17
- 3890 next:poke ws,0:poke as,0:poke hs,0:return
- 3900 :
- 3910 rem --- melodie wuerfel geschafft ---
- 3920 poke ls,15:poke as,0:poke hs,15*16
- 3930 fori=0to26:poke fh,l3(i):poke fl,h3(i):poke ws,17
- 3940 for t=1tot3(i)*(1/8)*1000:next:for t=1to2:poke ws,0:next:poke ws,17
- 3950 next:poke ws,0:poke as,0:poke hs,0:return
- 3960 :
- 3970 rem --- daten fuer die wuerfelteile ---
- 3980 :
- 3990 rem --- level 1... ---
- 4000 a$(0)="111011001000000000000000000"
- 4010 a$(1)="011010000001000000000000000"
- 4020 a$(2)="110110000011000000000000000"
- 4030 a$(3)="011000000000000000000000000"
- 4040 a$(4)="111100000001000000000000000"
- 4050 a$(5)="111000000001000000000000000"
- 4060 :
- 4070 rem --- daten fuer die farben ---
- 4080 f(1)=1:f(2)=1:f(3)=10:f(4)=10:f(5)=2:f(6)=10:f(7)=10:f(8)=2
- 4090 fori=0to8:poke870+i,f(i):next
- 4100 :
- 4110 rem --- extended colour-modus ---
- 4120 gosub 4490
- 4130 pokev+34,1
- 4140 pokev+35,10
- 4150 pokev+36,2
- 4160 return
- 4170 :
- 4180 rem --- level 2... ---
- 4190 a$(0)="001011000001000000000000000"
- 4200 a$(1)="111001000000000000000000000"
- 4210 a$(2)="010011000110000000000000000"
- 4220 a$(3)="011011000010000000000000000"
- 4230 a$(4)="011010000001000000000000000"
- 4240 a$(5)="001111000001000000000000000"
- 4250 f(1)=1:f(2)=1:f(3)=13:f(4)=13:f(5)=5:f(6)=13:f(7)=13:f(8)=5
- 4260 fori=0to8:poke870+i,f(i):next
- 4270 gosub 4490
- 4280 pokev+35,13
- 4290 pokev+36,5
- 4300 pokev+34,1
- 4310 return
- 4320 :
- 4330 rem --- level 3 ---
- 4340 a$(0)="001011000001000000000000000"
- 4350 a$(1)="010011000110000000000000000"
- 4360 a$(2)="001111000001000000000000000"
- 4370 a$(3)="001011000001000000000000000"
- 4380 a$(4)="111010000001000000000000000"
- 4390 a$(5)="111100000000000000000000000"
- 4400 f(1)=1:f(2)=1:f(3)=14:f(4)=14:f(5)=6:f(6)=14:f(7)=14:f(8)=6
- 4410 fori=0to8:poke870+i,f(i):next
- 4420 gosub 4490
- 4430 pokev+34,1
- 4440 pokev+35,14
- 4450 pokev+36,6
- 4460 return
- 4470 :
- 4480 rem --- koordinatendaten ---
- 4490 pokev+17,peek(v+17)or4*16
- 4500 k(0)=1205:k(1)=1214:k(2)=1525:k(3)=1534:k(4)=1845:k(5)=1854:k(6)=1304
- 4510 w$="000000000000000000000000000":return
- 4520 :
- 4530 rem --- eine urkunde fuer den sieger... ---
- 4540 print chr$(147)
- 4550 print"geben sie ihren namen ein:":print
- 4560 input n$
- 4570 print chr$(147)
- 4580 print spc(10)"u r k u n d e"
- 4590 print spc(10)"#############":print
- 4600 print"der/die knobler/in [158]";n$:print:poke 646,5
- 4610 print"hat es geschafft,alle drei w^rfel ":print
- 4620 print"zusammenzusetzen.":print:print
- 4630 printn$;" ben\tigte f^r den":print
- 4640 poke646,10:print"ersten w^rfel ";tr(1);"versuch(e)":print
- 4650 poke646,13:print"zweiten w^rfel ";tr(2);"versuch(e)":print
- 4660 poke646,14:print"dritten w^rfel ";tr(3);"versuch(e)":print:gosub 3800
- 4670 fori=0to3:print:next:poke 646,4
- 4680 print"want to play again (y/n) ?"
- 4690 get a$:ifa$=""then4690
- 4700 ifasc(a$)=89then poke v+17,27:run
- 4710 print chr$(147):poke 53280,14:poke 53281,6:poke 646,14:end
- 4720 :
- 4730 rem --- maschinenprogramm 1 (zeichensatzverschiebung) ---
- 4740 fori=0to71:readq:poke4300+i,q:next
- 4750 data173,14,220,41,254,141,14,220,165,1,41,251,133,1,169,8,133,34,133
- 4760 data36,169,216,133,35,169,8,133,37,162,8,160,0,177,34,145,36,136,208
- 4770 data249,230,35,230,37,202,208,240,165,1,9,4,133,1,173,24,208,41,240,9
- 4780 data2,141,24,208,173,14,220,9,1,141,14,220,96,255
- 4790 :
- 4800 sys4300
- 4810 :
- 4820 :
- 4830 rem --- aendern einiger zeichen... ---
- 4840 fori=0to5:readx:fort=0to7:readz:poke x+t,z:next:next
- 4850 fori=0to7:poke2328+i,peek(2840+i):next
- 4860 fori=0to7:poke2336+i,peek(2848+i):next
- 4870 fori=0to7:poke2344+i,192:next
- 4880 fori=0to7:poke2352+i,3:next
- 4890 fori=1to26:fort=0to7:readz:poke2048+t+8*i,z:next:next
- 4900 fori=1to10:fort=0to7:readz:poke2424+t+8*i,z:next:next
- 4910 :
- 4920 rem --- lesen der melodie-daten ---
- 4930 fori=0to43:readl1(i),h1(i),t1(i):next
- 4940 fori=0to15:readl2(i),h2(i),t2(i):next
- 4950 fori=0to26:readl3(i),h3(i),t3(i):next
- 4960 :
- 4970 rem --- maschinenprogramm 2 (elementarwuerfel zeicnen) ---
- 4980 fori=49152to49480:readx:pokei,x:next
- 4990 :
- 5000 rem --- einlesen von poke-daten fuer den wuerfel ---
- 5010 fori=860to868:readx:pokei,x:next
- 5020 :
- 5030 rem --- einlesen aller moeglichen dreh-u. kippbefehle ---
- 5040 fori=1to6:read bf$(i):next:return
- 5050 :
- 5060 rem --- zeichendaten ---
- 5070 data2048,255,254,252,248,240,224,192,128
- 5080 data2272,198,56,198,230,230,230,60,0
- 5090 data2384,198,56,108,254,230,230,230,0
- 5100 data2288,198,0,230,230,230,230,254,0
- 5110 data2312,120,120,120,120,120,0,120,0
- 5120 data2552,254,206,14,60,48,0,56,0
- 5130 data126,126,102,230,254,230,230,0:rem a
- 5140 data252,236,236,254,230,230,254,0:rem b
- 5150 data254,206,206,192,198,198,254,0:rem c
- 5160 data252,230,230,230,230,230,252,0:rem d
- 5170 data254,192,192,254,224,224,254,0:rem e
- 5180 data254,224,224,126,96,96,96,0 :rem f
- 5190 data254,238,224,238,230,230,254,0:rem g
- 5200 data198,198,198,254,230,230,230,0:rem h
- 5210 data24,24,24,24,28,28,28,0 :rem i
- 5220 data252,12,12,12,206,206,254,0 :rem j
- 5230 data102,108,120,112,248,236,230,0:rem k
- 5240 data96,96,96,224,224,224,254,0 :rem l
- 5250 data198,238,214,206,206,206,206,0:rem m
- 5260 data230,246,246,254,222,206,206,0:rem n
- 5270 data254,198,198,206,206,206,254,0:rem o
- 5280 data254,198,198,254,224,224,224,0:rem p
- 5290 data254,198,198,206,206,206,254,7:rem q
- 5300 data252,204,204,254,206,206,206,0:rem r
- 5310 data254,198,192,254,6,230,254,0 :rem s
- 5320 data254,48,48,56,56,56,56,0 :rem t
- 5330 data198,198,198,206,206,206,254,0:rem u
- 5340 data206,206,206,206,252,120,48,0 :rem v
- 5350 data206,206,206,206,214,238,198,0:rem w
- 5360 data198,238,124,16,124,238,198,0 :rem x
- 5370 data206,206,206,56,56,56,56,0 :rem y
- 5380 data254,14,14,48,48,240,254,0 :rem z
- 5390 data126,102,102,230,230,230,254,0:rem 0
- 5400 data120,24,24,56,56,56,56,0 :rem 1
- 5410 data254,198,6,254,224,224,254,0 :rem 2
- 5420 data254,198,6,30,6,198,254,0 :rem 3
- 5430 data192,192,204,204,254,28,28,0 :rem 4
- 5440 data254,192,192,254,14,206,254,0 :rem 5
- 5450 data252,204,192,254,230,230,254,0:rem 6
- 5460 data254,198,12,24,56,56,56,0 :rem 7
- 5470 data126,102,102,254,230,230,254,0:rem 8
- 5480 data254,230,230,254,14,28,56,0 :rem 9
- 5490 :
- 5500 rem --- melodiedaten ---
- 5510 data52,39,1,46,118,1,43,219,2,43,219,1,39,18,1,34,207,2,34,207,1,32,219
- 5520 data1,29,69,2,27,160,2,29,69,2,46,118,1,43,219,1,39,18,2,39,18,1
- 5530 data34,207,1,32,219,2,32,219,1,29,69,1,26,20,2,24,157,2,26,20,2,43,219,1
- 5540 data39,18,1,34,207,2,34,207,1,32,219,1,29,69,2,29,69,1,26,20,1
- 5550 data23,59,2,21,237,2,23,59,2,39,18,1,34,207,1,32,219,1,34,207,1,39,18,1
- 5560 data43,219,1,46,118,1,52,39,1,58,138,1,65,181,1,69,157,8
- 5570 data15,129,4,19,137,3,15,129,1,23,59,8,17,103,4,20,178,3,17,103,1,26,20,8
- 5580 data20,178,4,26,20,3,20,178,1,31,3,4,20,178,4,23,59,4,23,59,4,15,129,5
- 5590 data39,18,1,32,219,1,26,20,2,26,20,2,26,20,2,29,69,2,34,207,2,34,207,1
- 5600 data29,69,1,24,157,2,24,157,2,24,157,2,26,20,2,39,18,2,39,18,1,32,219,1
- 5610 data26,20,2,26,20,2,26,20,2,26,69,2,34,207,2,34,207,1,29,69,1,24,157,2
- 5620 data24,157,2,24,157,2,26,20,4
- 5630 :
- 5640 rem --- daten fuer maschinenspracheprogramm 2 ---
- 5650 data32,138,173,32,247,183,164,20,140,232,3,164,21,140,233,3,160,0,166
- 5660 data20,224,0,240,90,202,134,20,200,192,4,240,102,32,142,192,76,27,192
- 5670 data200,32,68,192,200,192,7,240,91,32,142,192,76,42,192,200,32,68,192
- 5680 data200,192,10,240,98,32,142,192,76,57,192,166,20,24,138,105,38,170,134
- 5690 data20,176,47,32,183,192,152,72,166,21,224,216,176,64,185,69,3,160,0,145
- 5700 data20,104,168,96,162,0,134,20,166,21,232,134,21,166,20,76,149,192,166
- 5710 data21,202,134,21,162,255,134,20,76,27,192,166,21,232,134,21,76,79,192
- 5720 data136,76,38,192,136,76,53,192,166,20,224,255,232,240,207,134,20,76,79
- 5730 data192,185,81,3,76,93,192,166,21,224,216,144,1,96,24,173,233,3,105,212
- 5740 data133,21,173,232,3,133,20,76,16,192,166,21,224,216,176,39,185,91,3,153
- 5750 data69,3,185,101,3,153,81,3,152,170,160,0,177,20,72,138,168,104,170,224
- 5760 data192,240,13,224,64,240,31,224,224,240,49,224,160,240,62,96,173,103
- 5770 data3,153,81,3,185,91,3,170,224,0,208,241,169,224,153,69,3,76,228,192
- 5780 data185,91,3,170,224,0,208,225,169,64,153,69,3,173,110,3,153,81,3,76,228
- 5790 data192,185,91,3,170,224,64,208,203,173,110,3,153,81,3,76,228,192,185,91
- 5800 data3,170,224,64,208,10,173,105,3,153,81,3,185,91,3,170,224,0,208,172
- 5810 data169,128,153,69,3,173,110,3,153,81,3,76,228,192,76,231,192
- 5820 :
- 5830 data64,96,192,160,160,224,160,160,0
- 5840 :
- 5850 datakv,dr,kr,kh,dl,kl
-