000
30.03.2023, 12:56 Uhr
ThomasR
|
Es gibt ein BasiCode-2-Programm von 1985, das beim Lösen des Zauberwürfels hilft. Eine eingedeutschte Fassung liegt hier https://joyce.de/basicode/diesunddas/kubus.htm (Download links unten).
Es stellt die Farben leider nur als Buchstaben dar, das wollte ich schon lange ändern.
Im Bild (zweites Teilbild) steht, dass ggf. durch die Cursor-Positionierung auch die Farben im Textbetrieb von BasiCode geändert werden können (soll nach Protokoll eigentlich nur beim Bildschirmlöschen funktionieren). Auf manchen Computern funktioniert es auch bei GOSUB 110, auf anderen mit einer kleinen Änderung im Bascoder-Teil.
Für das Programm "FARBTEST" habe ich vier Zeilen ergänzt (erstes Teilbild, die Zeilen, deren Nummern nicht auf 0 enden) und es klappt (ohne die Änderungen bleibt die Schrift weiß). Zum Glück wird es beim Einlesen nicht zurückgewiesen. Es verletzt eigentlich die BasiCode-Vorgaben, COLOR ist kein zugelassener Befehl. Die Änderung sollte schon im Bascoder-Teil stattfinden, um die Übertragbarkeit des Programms ab Zeile 1000 nicht einzuschränken.
Es läßt sich übrigens sehr gut mit diesem Projekt von Frank Ludwig arbeiten: http://www.kc85emu.de/Download/basicode@dfend.zip
Beim KC85 komme ich leider nicht in den Bascoder-Teil hinein (habe in Maschinencode-Programmierung zu wenig Übung), hatte jedoch ebenfalls Erfolg mit entsprechend eingefügten Befehlen im übertragbaren Teil des Kubus-Programms (siehe unten).
Sind die Autoren des Bascoders noch aktiv oder kann jemand anders den Bascoder entsprechend abändern?
Quellcode: | 1000 a=500:GOTO 20:REM kubus 1010 DIM a(9,12):a$="":GOTO 3000 1020 IF ke$="H" THEN GOTO 1080 1030 IF ke$="O" THEN GOTO 1340 1040 IF ke$="L" THEN GOTO 1600 1050 IF ke$="U" THEN GOTO 1860 1060 IF ke$="R" THEN GOTO 2120 1070 IF ke$="V" THEN GOTO 2380 1080 l=a(4,10) 1090 a(4,10)=a(6,10) 1100 a(6,10)=a(6,12) 1110 a(6,12)=a(4,12) 1120 a(4,12)=l 1130 l=a(4,11) 1140 a(4,11)=a(5,10) 1150 a(5,10)=a(6,11) 1160 a(6,11)=a(5,12) 1170 a(5,12)=l 1180 l=a(1,4) 1190 a(1,4)=a(4,9) 1200 a(4,9)=a(9,6) 1210 a(9,6)=a(6,1) 1220 a(6,1)=l 1230 l=a(1,6) 1240 a(1,6)=a(6,9) 1250 a(6,9)=a(9,4) 1260 a(9,4)=a(4,1) 1270 a(4,1)=l 1280 l=a(1,5) 1290 a(1,5)=a(5,9) 1300 a(5,9)=a(9,5) 1310 a(9,5)=a(5,1) 1320 a(5,1)=l 1330 RETURN 1340 l=a(1,4) 1350 a(1,4)=a(3,4) 1360 a(3,4)=a(3,6) 1370 a(3,6)=a(1,6) 1380 a(1,6)=l 1390 l=a(1,5) 1400 a(1,5)=a(2,4) 1410 a(2,4)=a(3,5) 1420 a(3,5)=a(2,6) 1430 a(2,6)=l 1440 l=a(4,1) 1450 a(4,1)=a(4,4) 1460 a(4,4)=a(4,7) 1470 a(4,7)=a(4,10) 1480 a(4,10)=l 1490 l=a(4,2) 1500 a(4,2)=a(4,5) 1510 a(4,5)=a(4,8) 1520 a(4,8)=a(4,11) 1530 a(4,11)=l 1540 l=a(4,3) 1550 a(4,3)=a(4,6) 1560 a(4,6)=a(4,9) 1570 a(4,9)=a(4,12) 1580 a(4,12)=l 1590 RETURN 1600 l=a(4,1) 1610 a(4,1)=a(6,1) 1620 a(6,1)=a(6,3) 1630 a(6,3)=a(4,3) 1640 a(4,3)=l 1650 l=a(4,2) 1660 a(4,2)=a(5,1) 1670 a(5,1)=a(6,2) 1680 a(6,2)=a(5,3) 1690 a(5,3)=l 1700 l=a(1,4) 1710 a(1,4)=a(6,12) 1720 a(6,12)=a(7,4) 1730 a(7,4)=a(4,4) 1740 a(4,4)=l 1750 l=a(2,4) 1760 a(2,4)=a(5,12) 1770 a(5,12)=a(8,4) 1780 a(8,4)=a(5,4) 1790 a(5,4)=l 1800 l=a(3,4) 1810 a(3,4)=a(4,12) 1820 a(4,12)=a(9,4) 1830 a(9,4)=a(6,4) 1840 a(6,4)=l 1850 RETURN 1860 l=a(7,4) 1870 a(7,4)=a(9,4) 1880 a(9,4)=a(9,6) 1890 a(9,6)=a(7,6) 1900 a(7,6)=l 1910 l=a(7,5) 1920 a(7,5)=a(8,4) 1930 a(8,4)=a(9,5) 1940 a(9,5)=a(8,6) 1950 a(8,6)=l 1960 l=a(6,1) 1970 a(6,1)=a(6,10) 1980 a(6,10)=a(6,7) 1990 a(6,7)=a(6,4) 2000 a(6,4)=l 2010 l=a(6,2) 2020 a(6,2)=a(6,11) 2030 a(6,11)=a(6,8) 2040 a(6,8)=a(6,5) 2050 a(6,5)=l 2060 l=a(6,3) 2070 a(6,3)=a(6,12) 2080 a(6,12)=a(6,9) 2090 a(6,9)=a(6,6) 2100 a(6,6)=l 2110 RETURN 2120 l=a(4,7) 2130 a(4,7)=a(6,7) 2140 a(6,7)=a(6,9) 2150 a(6,9)=a(4,9) 2160 a(4,9)=l 2170 l=a(4,8) 2180 a(4,8)=a(5,7) 2190 a(5,7)=a(6,8) 2200 a(6,8)=a(5,9) 2210 a(5,9)=l 2220 l=a(1,6) 2230 a(1,6)=a(4,6) 2240 a(4,6)=a(7,6) 2250 a(7,6)=a(6,10) 2260 a(6,10)=l 2270 l=a(2,6) 2280 a(2,6)=a(5,6) 2290 a(5,6)=a(8,6) 2300 a(8,6)=a(5,10) 2310 a(5,10)=l 2320 l=a(3,6) 2330 a(3,6)=a(6,6) 2340 a(6,6)=a(9,6) 2350 a(9,6)=a(4,10) 2360 a(4,10)=l 2370 RETURN 2380 l=a(4,4) 2390 a(4,4)=a(6,4) 2400 a(6,4)=a(6,6) 2410 a(6,6)=a(4,6) 2420 a(4,6)=l 2430 l=a(4,5) 2440 a(4,5)=a(5,4) 2450 a(5,4)=a(6,5) 2460 a(6,5)=a(5,6) 2470 a(5,6)=l 2480 l=a(3,4) 2490 a(3,4)=a(6,3) 2500 a(6,3)=a(7,6) 2510 a(7,6)=a(4,7) 2520 a(4,7)=l 2530 l=a(3,5) 2540 a(3,5)=a(5,3) 2550 a(5,3)=a(7,5) 2560 a(7,5)=a(5,7) 2570 a(5,7)=l 2580 l=a(3,6) 2590 a(3,6)=a(4,3) 2600 a(4,3)=a(7,4) 2610 a(7,4)=a(6,7) 2620 a(6,7)=l 2630 RETURN 3000 GOSUB 100 3010 ve=0:ho=8:GOSUB 110:PRINT"WILLKOMMEN BEI 'KUBUS'!" 3020 ve=1:ho=8:GOSUB 110:PRINT"=======================" 3030 PRINT:PRINT:PRINT"BITTE WAEHLEN SIE" 3040 ve=6:ho=4:GOSUB 110:PRINT"A SELBST ETWAS PROBIEREN" 3050 ve=8:ho=4:GOSUB 110 3060 PRINT"B ICH LOESE EINE STELLUNG AUF" 3070 ve=10:ho=4:GOSUB 110:PRINT"C SCHOENE FIGUREN" 3080 ve=12:ho=4:GOSUB 110:PRINT"D ERKLAERUNG" 3090 ve=14:ho=4:GOSUB 110:PRINT"E ENDE" 3100 ve=16:ho=4:GOSUB 110:GOSUB 210:t$=in$ 3110 IF t$="A" THEN 6550 3120 IF t$="B" THEN 4000 3130 IF t$="C" THEN 6990 3140 IF t$="D" THEN 6060 3150 IF t$<>"E" THEN 3000 3160 GOSUB 100:PRINT"**********************" 3170 PRINT"* *" 3180 PRINT"* KUBUS! *" 3190 PRINT"* *" 3200 PRINT"* GEMAAKT DOOR *" 3210 PRINT"* *" 3220 PRINT"* JAN BROECKX *" 3230 PRINT"* *" 3240 PRINT"* KARMELIETENSTR. 66 *" 3250 PRINT"* *" 3260 PRINT"* 2600 BERCHEM *" 3270 PRINT"* *" 3280 PRINT"* BELGIE *" 3290 PRINT"* *" 3300 PRINT"**********************" 3310 GOSUB 210:GOTO 950 4000 GOSUB 100 4010 PRINT" 1 2 3 4 5 6 7 8 9 10 11 12" 4020 PRINT:PRINT 4030 FOR i=1 TO 9:ho=0:ve=3+i:GOSUB 110 4040 PRINT i:NEXT i 4050 b=0:c=0:d=0:e=0:g=0:s=0:f=1:a=0 4060 ve=19:ho=0:GOSUB 110 4070 PRINT"GELB=Y / ROT=R / GRUEN=G / MAGENTA=O" 4080 ve=20:ho=0:GOSUB 110 4090 PRINT"WEISS=W / BLAU=B / FEHLER=F / MENU=M" 4100 ON f GOTO 4110,4120,4130,4140,4150,4160,4320 4110 i1=1:i2=3:j1=4:j2=6:GOTO 4170 4120 i1=4:i2=6:j1=1:j2=3:GOTO 4170 4130 i1=4:i2=6:j1=4:j2=6:GOTO 4170 4140 i1=4:i2=6:j1=7:j2=9:GOTO 4170 4150 i1=4:i2=6:j1=10:j2=12:GOTO 4170 4160 i1=7:i2=9:j1=4:j2=6 4170 aa=0:ff=0:FOR i=i1 TO i2:FOR j=j1 TO j2 4175 IF a<0 THEN gt=4000:GOTO 4312 4180 IF a$="F" THEN gt=4000:aa=1:GOTO 4312 4190 IF a$="M" THEN gt=3000:aa=1:GOTO 4312 4200 ho=j*3:ve=i+3:GOSUB 110:PRINT"??" 4210 ve=21:ho=0:GOSUB 110 4220 PRINT"WELCHE FARBE HAT DAS FELD (";i;",";j;") ?"; 4230 GOSUB 210:a$=in$:PRINT a$ 4231 IF a$="Y" THEN TR=6 4232 IF a$="O" THEN TR=3 4233 IF a$="B" THEN TR=1 4234 IF a$="R" THEN TR=2 4235 IF a$="G" THEN TR=4 4236 IF a$="W" THEN TR=7 4240 ho=j*3:ve=i+3:GOSUB 110:COLOR TR:PRINT CHR$(132);CHR$(132):COLOR 7 4250 IF a$="F" THEN gt=4000:aa=1 4260 IF a$="M" THEN gt=3000:aa=1:GOTO 4312 4270 GOSUB 10000:IF a=0 THEN 4200 4280 IF a<0 THEN gt=4000:GOTO 4312 4290 a(i,j)=a 4300 ve=21:ho=35:GOSUB 110:PRINT" " 4310 gt=4100:ff=1 4312 NEXT j:NEXT i:IF ff=1 THEN f=f+1:ff=0 4314 IF aa=1 THEN a$="":aa=0 4316 IF gt=3000 THEN GOTO 3000 4318 IF gt=4100 THEN GOTO 4100 4319 GOTO 4000 4320 REM 4330 REM juist zetten van rb 4340 po=a(2,5):p=a(5,5):GOSUB 10130:IF a<0 THEN 4000 4350 IF a>6 THEN 4380 4360 ON a GOSUB 10420,10430,10440,10450,10460,10470 4370 GOTO 4390 4380 ON a-6 GOSUB 10480,10490,10500,10510,10520,10530 4390 GOSUB 10540 4400 po=a(2,5):p=a(5,2):GOSUB 10130:IF a<0 THEN 4000 4410 IF a>6 THEN 4440 4420 ON a GOSUB 10670,10450,10680,1,10690,10700 4430 GOTO 4450 4440 ON a-6 GOSUB 10710,10720,10730,10740,10750,10760 4450 GOSUB 10540 4460 po=a(2,5):p=a(5,11):GOSUB 10130:IF a<0 THEN 4000 4470 IF a>6 THEN 4500 4480 ON a GOSUB 10450,1,10770,1,10780,10790 4490 GOTO 4510 4500 ON a-6 GOSUB 10800,10810,10820,10830,10840,10850 4510 GOSUB 10540 4520 po=a(2,5):p=a(5,8):GOSUB 10130:IF a<0 THEN 4000 4530 IF a>6 THEN 4560 4540 ON a GOSUB 1,1,10450,1,10860,10870 4550 GOTO 4570 4560 ON a-6 GOSUB 10880,10890,10900,10910,10920,10930 4570 GOSUB 10540 4580 po=a(5,2):p=a(5,11):GOSUB 10130:IF a<0 THEN 4000 4590 IF a>6 THEN 4620 4600 ON a GOSUB 1,1,1,1,10450,10940 4610 GOTO 4630 4620 ON a-6 GOSUB 10950,10960,10970,10980,10990,11000 4630 GOSUB 10540 4640 po=a(5,2):p=a(5,5):GOSUB 10130:IF a<0 THEN 4000 4650 IF a>6 THEN 4680 4660 ON a GOSUB 1,1,1,1,1,10450 4670 GOTO 4690 4680 ON a-6 GOSUB 11010,11020,11030,11040,11050,11060 4690 GOSUB 10540 4700 po=a(5,5):p=a(5,8):GOSUB 10130:IF a<0 THEN 4000 4710 IF a>6 THEN 4740 4720 ON a GOSUB 1,1,1,1,1,1 4730 GOTO 4750 4740 ON a-6 GOSUB 10450,11070,11080,11090,11100,11110 4750 GOSUB 10540 4760 po=a(5,8):p=a(5,11):GOSUB 10130:IF a<0 THEN 4000 4770 ON a GOSUB 1,1,1,1,1,1,1,10450,11120,11130,11140,11150 4780 GOSUB 10540 4790 po=a(8,5):p=a(5,5):GOSUB 10130:IF a<0 THEN 4000 4800 ON a GOSUB 1,1,1,1,1,1,1,1,10450,11160,11170,11180 4810 GOSUB 10540 4820 po=a(8,5):p=a(5,2):GOSUB 10130:IF a<0 THEN 4000 4830 ON a GOSUB 1,1,1,1,1,1,1,1,1,10450,11190,11200 4840 GOSUB 10540 4850 po=a(8,5):p=a(5,8):GOSUB 10130:IF a<0 THEN 4000 4860 ON a GOSUB 1,1,1,1,1,1,1,1,1,1,10450,11210 4870 GOSUB 10540 4880 REM juist orienteren van rb 4890 IF a(3,5)<>a(2,5) THEN a$="-VLV-LO-L-OL":GOSUB 10540 4900 IF a(2,4)<>a(2,5) THEN a$="-LHL-HO-H-OH":GOSUB 10540 4910 IF a(1,5)<>a(2,5) THEN a$="-HRH-RO-R-OR":GOSUB 10540 4920 IF a(2,6)<>a(2,5) THEN a$="-VOV-OR-O-RO":GOSUB 10540 4930 IF a(5,6)<>a(5,5) THEN a$="-UVU-VR-V-RV":GOSUB 10540 4940 IF a(6,8)<>a(5,8) THEN a$="-HUH-UR-U-RU":GOSUB 10540 4950 IF a(5,9)<>a(5,8) THEN a$="-URU-RH-R-HR":GOSUB 10540 4960 IF a(6,11)<>a(5,11) THEN a$="-LUL-UH-U-HU":GOSUB 10540 4970 IF a(5,12)<>a(5,11) THEN a$="-UHU-HL-H-LH":GOSUB 10540 4980 IF a(8,4)<>a(8,5) THEN a$="-VUV-UL-U-LU":GOSUB 10540 4990 IF a(5,4)<>a(5,5) THEN a$="-ULU-LV-L-VL":GOSUB 10540 5000 IF a(6,5)<>a(5,5) THEN 5360 5010 REM juist zetten van hb 5020 po=a(2,5):p=a(5,5):m=a(5,2):GOSUB 11220:IF a<0 THEN 4000 5030 IF a>4 THEN 5060 5040 ON a GOSUB 10450,11450,11460,11470 5050 GOTO 5070 5060 ON a-4 GOSUB 11480,11490,11500,11510 5070 GOSUB 10540 5080 po=a(2,5):p=a(5,8):m=a(5,5):GOSUB 11220:IF a<0 THEN 4000 5090 ON a GOSUB 1,10450,11520,11530,11540,11550,11560,11570 5100 GOSUB 10540 5110 po=a(2,5):p=a(5,2):m=a(5,11):GOSUB 11220:IF a<0 THEN 4000 5120 ON a GOSUB 1,1,10450,11580,11590,11600,11610,11620 5130 GOSUB 10540 5140 po=a(5,11):p=a(5,8):m=a(2,5):GOSUB 11220:IF a<0 THEN 4000 5150 ON a GOSUB 1,1,1,10450,11630,11640,11650,11660 5160 GOSUB 10540 5170 po=a(5,2):p=a(5,5):m=a(8,5):GOSUB 11220:IF a<0 THEN 4000 5180 ON a GOSUB 1,1,1,1,10450,11670,11680,11690 5190 GOSUB 10540 5200 po=a(5,5):p=a(5,8):m=a(8,5):GOSUB 11220:IF a<0 THEN 4000 5210 ON a GOSUB 1,1,1,1,1,10450,11700,11710 5220 GOSUB 10540 5230 po=a(5,2):p=a(8,5):m=a(5,11):GOSUB 11220:IF a<0 THEN 4000 5240 ON a GOSUB 1,1,1,1,1,1,10450,11160 5250 IF a$="O" THEN 5360 5260 REM juist orienteren van hb 5270 IF (a(3,4)<>a(2,5)) OR (a(4,4)<>a(5,5)) THEN 5300 5280 IF a(4,3)<>a(5,2) THEN 5300 5290 GOTO 5390 5300 IF (a(3,4)=a(4,4)) OR (a(3,4)=a(4,3)) THEN 5360 5310 IF a(4,4)=a(4,3) THEN 5360 5320 IF a(4,4)=a(2,5) THEN a$="O-H-O-L-HL-V-LHLOH-OV" 5330 IF a(4,4)=a(2,5) THEN GOSUB 10540:GOTO 5270 5340 IF a(4,3)=a(2,5) THEN a$="-VO-H-O-L-HLV-LHLOH-O" 5350 IF a(4,3)=a(2,5) THEN GOSUB 10540:GOTO 5270 5360 GOSUB 100:ve=21:ho=0:GOSUB 110 5370 PRINT"KEINE LOESUNG MOEGLICH!!" 5380 PRINT:PRINT"<RETURN> DRUECKEN";:INPUT T$:GOTO 3000 5390 IF a(3,6)<>a(2,5) OR a(4,7)<>a(5,8) THEN 5420 5400 IF a(4,6)<>a(5,5) THEN 5420 5410 GOTO 5490 5420 IF a(3,6)=a(4,7) OR a(3,6)=a(4,6) THEN 5360 5430 IF a(4,6)=a(4,7) THEN 5360 5440 IF a(4,7)=a(2,5) THEN a$="O-L-O-V-LV-R-VLVOL-OR" 5450 IF a(4,7)=a(2,5) THEN GOSUB 10540:GOTO 5390 5460 IF a(4,6)=a(2,5) THEN a$="-RO-L-O-V-LVR-VLVOL-O" 5470 IF a(4,6)=a(2,5) THEN GOSUB 10540:GOTO 5390 5480 GOTO 5360 5490 IF a(1,6)<>a(2,5) OR a(4,10)<>a(5,11) THEN 5520 5500 IF a(4,9)<>a(5,8) THEN 5520 5510 GOTO 5590 5520 IF a(1,6)=a(4,10) OR a(1,6)=a(4,9) THEN 5360 5530 IF a(4,10)=a(4,9) THEN 5360 5540 IF a(4,10)=a(2,5) THEN a$="O-V-O-R-VR-H-RVROV-OH" 5550 IF a(4,10)=a(2,5) THEN GOSUB 10540:GOTO 5490 5560 IF a(4,9)=a(2,5) THEN a$="-HO-V-O-R-VRH-RVROV-O" 5570 IF a(4,9)=a(2,5) THEN GOSUB 10540:GOTO 5490 5580 GOTO 5360 5590 IF a(1,4)<>a(2,5) OR a(4,1)<>a(5,2) THEN 5620 5600 IF a(4,12)<>a(5,11) THEN 5620 5610 GOTO 5690 5620 IF a(1,4)=a(4,1) OR a(1,4)=a(4,12) THEN 5360 5630 IF a(4,1)=a(4,12) THEN 5360 5640 IF a(4,12)=a(2,5) THEN a$="-HL-V-L-O-VOH-OVOLV-L" 5650 IF a(4,12)=a(2,5) THEN GOSUB 10540:GOTO 5590 5660 IF a(4,1)=a(2,5) THEN a$="L-V-L-O-VO-H-OVOLV-LH" 5670 IF a(4,1)=a(2,5) THEN GOSUB 10540:GOTO 5590 5680 GOTO 5360 5690 IF a(6,1)<>a(5,2) OR a(9,4)<>a(8,5) THEN 5720 5700 IF a(6,12)<>a(5,11) THEN 5720 5710 GOTO 5790 5720 IF a(6,1)=a(9,4) OR a(6,1)=a(6,12) THEN 5360 5730 IF a(9,4)=a(6,12) THEN 5360 5740 IF a(6,12)=a(8,5) THEN a$="U-V-U-L-VL-H-LVLUV-UH" 5750 IF a(6,12)=a(8,5) THEN GOSUB 10540:GOTO 5690 5760 IF a(6,1)=a(8,5) THEN a$="-HU-V-U-L-VLH-LVLUV-U" 5770 IF a(6,1)=a(8,5) THEN GOSUB 10540:GOTO 5690 5780 GOTO 5360 5790 IF a(9,6)<>a(8,5) OR a(6,9)<>a(5,8) THEN 5820 5800 IF a(6,10)<>a(5,11) THEN 5820 5810 GOTO 5890 5820 IF a(9,6)=a(6,9) OR a(9,6)=a(6,10) THEN 5360 5830 IF a(6,9)=a(6,10) THEN 5360 5840 IF a(6,9)=a(8,5) THEN a$="U-L-U-H-LH-R-HLHUL-UR" 5850 IF a(6,9)=a(8,5) THEN GOSUB 10540:GOTO 5790 5860 IF a(6,10)=a(8,5) THEN a$="-RU-L-U-H-LHR-HLHUL-U" 5870 IF a(6,10)=a(8,5) THEN GOSUB 10540:GOTO 5790 5880 GOTO 5360 5890 IF a(6,6)<>a(5,5) OR a(7,6)<>a(8,5) THEN 5920 5900 IF a(6,7)<>a(5,8) THEN 5920 5910 GOTO 5990 5920 IF a(6,6)=a(7,6) OR a(6,6)=a(6,7) THEN 5360 5930 IF a(7,6)=a(6,7) THEN 5360 5940 IF a(6,6)=a(8,5) THEN a$="=-H-U-R-HR-V-RHRUH-UV" 5950 IF a(6,6)=a(8,5) THEN GOSUB 10540:GOTO 5890 5960 IF a(6,7)=a(8,5) THEN a$="-VU-H-U-R-HRV-RHRUH-U" 5970 IF a(6,7)=a(8,5) THEN GOSUB 10540:GOTO 5890 5980 GOTO 5360 5990 IF a(6,3)<>a(5,2) OR a(6,4)<>a(5,5) THEN 5360 6000 IF a(7,4)<>a(8,5) THEN 5360 6010 ho=0:ve=20:GOSUB 110 6020 PRINT" " 6030 ho=0:ve=20:GOSUB 110:PRINT"VOILA!!":ho=0 6040 ve=22:GOSUB 110:PRINT"<RETURN> DRUECKEN"; 6050 GOSUB 210:GOTO 3000 6060 REM uitleg 6070 GOSUB 100 6080 PRINT"IN DIESEM PROGRAMM WIRD DER WUERFEL" 6090 PRINT"WIE FOLGT ANGEZEIGT:":PRINT 6100 GOSUB 120:ho=ho+17:GOSUB 110:PRINT"OO":PRINT 6110 GOSUB 120:ho=ho+14:GOSUB 110:PRINT"LL VV RR HH":PRINT 6120 GOSUB 120:ho=ho+17:GOSUB 110:PRINT"UU" 6130 PRINT:PRINT"IN DER MITTE SEHEN SIE DIE IHNEN ZU-" 6140 PRINT"GEWANDTE SEITE (V), DARUEBER DIE OBER-" 6150 PRINT"SEITE (O) UND DARUNTER DIE UNTER-" 6160 PRINT"SEITE (U). 'L' UND 'R' STEHEN FUER" 6170 PRINT"LINKE UND RECHTE SEITE. DIE RUECK-" 6180 PRINT"SEITE (H) IST GANZ RECHTS.":PRINT 6190 PRINT"<RETURN> DRUECKEN";:GOSUB 210:GOSUB 100 6200 PRINT"WENN SIE Z.B. IN DIESEM PROGRAMM 'O'" 6210 PRINT"LESEN, HEISST DAS, DASS SIE DIE OBERE" 6220 PRINT"EBENE UM EINE VIERTELDREHUNG IM UHR-" 6230 PRINT"ZEIGERSINN DREHEN SOLLEN, '-O' GEGEN" 6240 PRINT"DEN UHRZEIGERSINN (JEWEILS AUF DIE" 6250 PRINT"BETREFFENDE SEITE GESEHEN). '-LV' BE-" 6260 PRINT"DEUTET, DIE LINKE EBENE UM 90 GRAD" 6270 PRINT"GEGEN DEN UHRZEIGERSINN UND DIE VORDERE" 6280 PRINT"EBENE IM UHRZEIGERSINN ZU DREHEN.":PRINT 6283 PRINT"BITTE BEACHTEN SIE, DASS SIE DIE" 6286 PRINT"POSITION DER MITTELFELDER DER" 6290 PRINT"WUERFELSEITEN NIE VERAENDERN!":PRINT 6300 PRINT"<RETURN> DRUECKEN";:GOSUB 210:GOSUB 100 6310 PRINT"WERDEN SIE NICHT UNRUHIG, WENN SIE" 6320 PRINT"LAENGERE ZEIT KEINE VERAENDERUNG" 6330 PRINT"SEHEN. DANN IST DER COMPUTER MIT" 6340 PRINT"AUFWENDIGEREN BERECHNUNGEN" 6343 PRINT"BESCHAEFTIGT (Z.B. BEI DEN" 6346 PRINT"'SCHOENEN FIGUREN')":PRINT 6350 PRINT"DIE FARBEN :":PRINT 6360 PRINT"R = ROT":PRINT"O = MAGENTA" 6370 PRINT"B = BLAU":PRINT"G = GRUEN" 6380 PRINT"Y = GELB":PRINT"W = WEISS" 6390 ve=20:ho=0:GOSUB 110:PRINT"<RETURN> DRUECKEN"; 6400 GOSUB 210:GOTO 3000 6410 REM zelf wat proberen 6420 ho=0:ve=20:GOSUB 110 6430 PRINT"SIND SIE FERTIG ? (J/N)";:GOSUB 210 6440 t$=in$:ho=0:ve=20:GOSUB 110 6450 PRINT" " 6460 IF t$="N" THEN 6630 6470 IF t$<>"J" THEN 6420 6480 ho=0:ve=20:GOSUB 110 6490 PRINT"SOLL ICH LOESEN ? (J/N)";:GOSUB 210 6500 t$=in$:ho=0:ve=20:GOSUB 110 6510 PRINT" " 6520 IF t$="N" THEN 3000 6530 IF t$<>"J" THEN 6480 6540 GOTO 4320 6550 GOSUB 100:GOSUB 6570:GOSUB 6760 6560 GOTO 6630 6570 FOR i=1 TO 3:FOR j=4 TO 6:a(i,j)=1:NEXT j:NEXT i 6580 FOR i=4 TO 6:FOR j=1 TO 3:a(i,j)=2:NEXT j:NEXT i 6590 FOR i=4 TO 6:FOR j=4 TO 6:a(i,j)=3:NEXT j:NEXT i 6600 FOR i=4 TO 6:FOR j=7 TO 9:a(i,j)=4:NEXT j:NEXT i 6610 FOR i=4 TO 6:FOR j=10 TO 12:a(i,j)=5:NEXT j:NEXT i 6620 FOR i=7 TO 9:FOR j=4 TO 6:a(i,j)=6:NEXT j:NEXT i:RETURN 6630 ho=0:ve=20:GOSUB 110:PRINT"WELCHE EBENE ?"; 6640 GOSUB 210:ke$=in$:PRINT ke$; 6650 IF ke$="-" THEN GOSUB 210:t$=in$:PRINT t$:ke$=ke$+t$ 6660 IF ke$="H" OR ke$="O" OR ke$="L" THEN 6710 6670 IF ke$="U" OR ke$="R" OR ke$="V" THEN 6710 6680 IF ke$="-H" OR ke$="-O" OR ke$="-L" THEN 6710 6690 IF ke$="-U" OR ke$="-R" OR ke$="-V" THEN 6710 6700 GOTO 6630 6710 ho=0:ve=20:GOSUB 110:PRINT" " 6720 IF left$(ke$,1)="-" THEN ke$=right$(ke$,1) 6730 FOR h=1 TO 3:GOSUB 1020:NEXT h 6740 GOSUB 6760:GOTO 6410 6750 GOSUB 1020:GOSUB 6760:GOTO 6410 6760 REM tekenroutine 6770 ve=0:ho=0:GOSUB 110 6780 PRINT" 1 2 3 4 5 6 7 8 9 10 11 12" 6790 PRINT:PRINT 6800 FOR i=1 TO 9:ho=0:ve=3+i:GOSUB 110:PRINT i:NEXT i 6810 FOR i=1 TO 6 6820 ON i GOTO 6830,6840,6850,6860,6870,6880 6830 b=1:c=3:d=4:e=6:GOTO 6890 6840 b=4:c=6:d=1:e=3:GOTO 6890 6850 b=4:c=6:d=4:e=6:GOTO 6890 6860 b=4:c=6:d=7:e=9:GOTO 6890 6870 b=4:c=6:d=10:e=12:GOTO 6890 6880 b=7:c=9:d=4:e=6 6890 FOR j=b TO c:FOR k=d TO e 6900 ho=k*3:ve=j+3:GOSUB 110 6910 ON a(j,k) GOTO 6920,6930,6940,6950,6960,6970 6920 TR=6:GOTO 6975 6930 TR=3:GOTO 6975 6940 TR=1:GOTO 6975 6950 TR=2:GOTO 6975 6960 TR=4:GOTO 6975 6970 TR=7 6975 GOSUB 110:COLOR TR:PRINT CHR$(132);CHR$(132):COLOR 7 6980 GOSUB 110:NEXT k:NEXT j:NEXT i:RETURN 6990 GOSUB 100:GOSUB 6570:ve=0:ho=11 7000 GOSUB 110:PRINT"SCHOENE FIGUREN!":ve=1:ho=11 7010 GOSUB 110:PRINT"================":PRINT 7020 PRINT"BITTE WAEHLEN SIE":PRINT 7030 GOSUB 11720:PRINT"A BLOEMEN":PRINT 7040 GOSUB 11720:PRINT"B 4-STIP":PRINT 7050 GOSUB 11720:PRINT"C 6-STIP":PRINT 7060 GOSUB 11720:PRINT"D GUIRLANDE":PRINT 7070 GOSUB 11720:PRINT"E TTTT":PRINT 7080 GOSUB 11720:PRINT"F TEMPELPOORTEN":PRINT 7090 GOSUB 11720:PRINT"G SLANG":PRINT 7100 GOSUB 11720:PRINT"H WORM":PRINT 7110 GOSUB 11720:PRINT"I (WEITER)":PRINT 7120 GOSUB 11720:GOSUB 210:t$=in$:GOSUB 100 7130 IF t$="A" THEN a$="LLRROOUUVVHH":GOSUB 10540:GOTO 6990 7140 IF t$="B" THEN a$="O-URRLLO-UVVHH":GOSUB 10540:GOTO 6990 7150 IF t$="C" THEN a$="L-RO-UV-HL-R":GOSUB 10540:GOTO 6990 7160 IF t$="D" THEN a$="RLVHRLVHRLVH":GOSUB 10540:GOTO 6990 7170 IF t$="E" THEN a$="U-OVVHH-U-ORRLL-URRLLOORRLL-U" 7180 IF t$="E" THEN GOSUB 10540:GOTO 6990 7190 IF t$="F" THEN a$="U-OVVHH-U-ORRLL-URRLLOORRLL-UOO" 7200 IF t$="F" THEN GOSUB 10540:GOTO 6990 7210 IF t$="G" THEN a$="H-LR-URRUL-R-HRROHHU-ORR-U" 7220 IF t$="G" THEN GOSUB 10540:GOTO 6990 7230 IF t$="H" THEN a$="ROVV-U-LRV-H-U-V-" 7240 IF t$="H" THEN a1$="RVVROOVRR-V-R-O-VOOVR" 7250 IF t$="H" THEN a$=a$+a1$ 7260 IF t$="H" THEN GOSUB 10540:GOTO 6990 7270 IF t$<>"I" THEN 6990 7280 GOSUB 100:PRINT"BITTE WAEHLEN SIE":PRINT 7290 GOSUB 11720:PRINT"A DUBBELKUBUS":PRINT 7300 GOSUB 11720:PRINT"B 2-RINGEN":PRINT 7310 GOSUB 11720:PRINT"C 4-ZETTER":PRINT 7320 GOSUB 11720:PRINT"D 4-ZETPLUSSER":PRINT 7330 GOSUB 11720:PRINT"E 4-PLUSSER":PRINT 7340 GOSUB 11720:PRINT"F 6-PLUSSER":PRINT 7350 GOSUB 11720:PRINT"G HAHAHAHAHAHA":PRINT 7360 GOSUB 11720:PRINT"H 12-ELLER":PRINT 7370 GOSUB 11720:PRINT"I PUINHOOP":PRINT 7380 GOSUB 11720:PRINT"J (WEITER)":PRINT 7390 GOSUB 11720:GOSUB 210:t$=in$:GOSUB 100 7400 IF t$="A" THEN a$="H-LUULU-VUUV-U-H-VR" 7410 IF t$="A" THEN a1$="OO-R-OHOO-HOV":a$=a$+a1$ 7420 IF t$="A" THEN GOSUB 10540:GOTO 6990 7430 IF t$="B" THEN a$="H-LR-URRUL-R-HRROHHU-OHHLROO-L-RHH-U" 7440 IF t$="B" THEN GOSUB 10540:GOTO 6990 7450 IF t$="C" THEN a$="RLVHRLVHRLVHOOUU" 7460 IF t$="C" THEN GOSUB 10540:GOTO 6990 7470 IF t$="D" THEN a$="-R-LOU-R-LOU-R-LOUVVHH" 7480 IF t$="D" THEN GOSUB 10540:GOTO 6990 7490 IF t$="E" THEN a$="VHRLVHRLVHRRLLVHRLVHRLVH" 7500 IF t$="E" THEN GOSUB 10540:GOTO 6990 7510 IF t$="F" THEN a$="RVVHHRRLLOOVVHHRRLLUU-R" 7520 IF t$="F" THEN GOSUB 10540:GOTO 6990 7530 IF t$="G" THEN a$="RLVHOOUURRLLVH-R-L" 7540 IF t$="G" THEN GOSUB 10540:GOTO 6990 7550 IF t$="H" THEN a$="RLOU-V-HRL":GOSUB 10540:GOTO 6990 7560 IF t$="I" THEN a$="VVHHRRLLOO-UROLU" 7570 IF t$="I" THEN GOSUB 10540:GOTO 6990 7580 IF t$<>"J" THEN 7280 7590 GOSUB 100:PRINT"BITTE WAEHLEN SIE":PRINT 7600 GOSUB 11720:PRINT"A MUILKORVEN":PRINT 7610 GOSUB 11720:PRINT"B Y-ER":PRINT 7620 GOSUB 11720:PRINT"C VLAGGEN":PRINT 7630 GOSUB 11720:PRINT"D WIJZER":PRINT 7640 GOSUB 11720:PRINT"E MENU":PRINT 7650 GOSUB 11720:GOSUB 210:t$=in$:GOSUB 100 7660 IF t$="A" THEN a$="LOORRUUOORRUU-L":GOSUB 10540:GOTO 6990 7670 IF t$="B" THEN a$="RRLLUURRLLVVHHUUVVHHUU" 7680 IF t$="B" THEN GOSUB 10540:GOTO 6990 7690 IF t$="C" THEN a$="RRVURR-URHH-RURR-U-VRR" 7700 IF t$="C" THEN a1$="LLHULL-ULVV-LULL-U-H" 7710 IF t$="C" THEN a2$="LLVVRRLLHHR" 7720 IF t$="C" THEN a$=a$+a1$+a2$ 7730 IF t$="C" THEN GOSUB 10540:GOTO 6990 7740 IF t$="D" THEN a$="-RV-ULV-LUL-V-L-VRHHRU-R-" 7750 IF t$="D" THEN a1$="URU-R-U-OUR-U-RUR-U-ROHH" 7760 IF t$="D" THEN a$=a$+a1$:GOSUB 10540:GOTO 6990 7770 IF t$<>"E" THEN 7590 7780 GOTO 3000 10000 REM 10010 IF a$="Y" THEN a=1:b=b+1:GOTO 10080 10020 IF a$="B" THEN a=3:c=c+1:GOTO 10080 10030 IF a$="W" THEN a=6:d=d+1:GOTO 10080 10040 IF a$="R" THEN a=4:e=e+1:GOTO 10080 10050 IF a$="G" THEN a=5:g=g+1:GOTO 10080 10060 IF a$="O" THEN a=2:s=s+1:GOTO 10080 10070 a=0:RETURN 10080 IF b>9 OR c>9 OR d>9 THEN 10110 10090 IF e>9 OR g>9 OR s>9 THEN 10110 10100 RETURN 10110 PRINT"NICHT RICHTIG!! NEU ANFANGEN!!" 10120 FOR k=1 TO 1000:NEXT k:a=-1:RETURN 10130 REM zoeken rb 10140 s=0 10150 IF a(1,5)<>po THEN 10170 10160 IF a(4,11)=p THEN a=1:RETURN 10170 IF a(2,4)<>po THEN 10190 10180 IF a(4,2)=p THEN a=2:RETURN 10190 IF a(2,6)<>po THEN 10210 10200 IF a(4,8)=p THEN a=3:RETURN 10210 IF a(3,5)<>po THEN 10230 10220 IF a(4,5)=p THEN a=4:RETURN 10230 IF a(5,1)<>po THEN 10250 10240 IF a(5,12)=p THEN a=5:RETURN 10250 IF a(5,3)<>po THEN 10270 10260 IF a(5,4)=p THEN a=6:RETURN 10270 IF a(5,6)<>po THEN 10290 10280 IF a(5,7)=p THEN a=7:RETURN 10290 IF a(5,9)<>po THEN 10310 10300 IF a(5,10)=p THEN a=8:RETURN 10310 IF a(7,5)<>po THEN 10330 10320 IF a(6,5)=p THEN a=9:RETURN 10330 IF a(8,4)<>po THEN 10350 10340 IF a(6,2)=p THEN a=10:RETURN 10350 IF a(8,6)<>po THEN 10370 10360 IF a(6,8)=p THEN a=11:RETURN 10370 IF a(9,5)<>po THEN 10390 10380 IF a(6,11)=p THEN a=12:RETURN 10390 s=s+1:IF s=1 THEN a=po:po=p:p=a:GOTO 10150 10400 PRINT:PRINT"LEIDER FALSCH!! NOCH EINMAL!!" 10410 FOR k=1 TO 1500:NEXT k:a=-1:RETURN 10420 a$="OO":RETURN 10430 a$="-O":RETURN 10440 a$="O":RETURN 10450 a$="":RETURN 10460 a$="L-O":RETURN 10470 a$="V":RETURN 10480 a$="-V":RETURN 10490 a$="-RO":RETURN 10500 a$="VV":RETURN 10510 a$="-LV":RETURN 10520 a$="R-V":RETURN 10530 a$="UUVV":RETURN 10540 REM uitvoeren van a$ 10550 IF LEN(a$)=0 THEN RETURN 10560 FOR n=1 TO LEN(a$) 10570 IF MID$(a$,n,1)="-" THEN ke$=MID$(a$,n+1,1) 10580 IF MID$(a$,n,1)="-" THEN FOR h=1 TO 3:GOSUB 1020 10590 IF MID$(a$,n,1)="-" THEN NEXT h 10600 IF MID$(a$,n,1)="-" THEN n=n+1:GOTO 10620 10610 IF MID$(a$,n,1)<>"-" THEN ke$=MID$(a$,n,1):GOSUB 1020 10620 NEXT n:ve=19:ho=0:GOSUB 110:FOR i=1 TO 4 10630 PRINT" ":NEXT i 10640 ve=20:ho=0:GOSUB 110:PRINT a$:GOSUB 6760 10650 ve=22:ho=0:GOSUB 110:PRINT"<RETURN> DRUECKEN"; 10660 GOSUB 210:RETURN 10670 a$="HL":RETURN 10680 a$="RHHL":RETURN 10690 a$="L":RETURN 10700 a$="-L":RETURN 10710 a$="-VOV":RETURN 10720 a$="HHL":RETURN 10730 a$="-ULL":RETURN 10740 a$="LL":RETURN 10750 a$="UULL":RETURN 10760 a$="-HL":RETURN 10770 a$="RH":RETURN 10780 a$="-H":RETURN 10790 a$="-O-LO":RETURN 10800 a$="OR-O":RETURN 10810 a$="H":RETURN 10820 a$="UUHH":RETURN 10830 a$="-UHH":RETURN 10840 a$="UHH":RETURN 10850 a$="HH":RETURN 10860 a$="-O-HO":RETURN 10870 a$="OV-O":RETURN 10880 a$="R":RETURN 10890 a$="-R":RETURN 10900 a$="URR":RETURN 10910 a$="UURR":RETURN 10920 a$="RR":RETURN 10930 a$="-URR":RETURN 10940 a$="-VHUUV-H":RETURN 10950 a$="VHUU-V-H":RETURN 10960 a$="RU-R-LUL":RETURN 10970 a$="-L-UL":RETURN 10980 a$="H-U-H":RETURN 10990 a$="HU-H":RETURN 11000 a$="-LUL":RETURN 11010 a$="-RLUU-LR":RETURN 11020 a$="RLUU-R-L":RETURN 11030 a$="L-U-L":RETURN 11040 a$="-VUV":RETURN 11050 a$="-V-UV":RETURN 11060 a$="LU-L":RETURN 11070 a$="V-HUUH-V":RETURN 11080 a$="-RUR":RETURN 11090 a$="VU-V":RETURN 11100 a$="V-U-V":RETURN 11110 a$="-R-UR":RETURN 11120 a$="RU-R":RETURN 11130 a$="-H-UH":RETURN 11140 a$="-HUH":RETURN 11150 a$="R-U-R":RETURN 11160 a$="U":RETURN 11170 a$="-U":RETURN 11180 a$="UU":RETURN 11190 a$="-R-H-R-URUV-U-VHR":RETURN 11200 a$="-R-URUV-U-V":RETURN 11210 a$="-V-UVUL-U-L":RETURN 11220 REM zoeken van hb 11230 s=0 11240 IF a(3,4)<>po OR a(4,4)<>p THEN 11260 11250 IF a(4,3)=m THEN a=1:RETURN 11260 IF a(3,6)<>po OR a(4,7)<>p THEN 11280 11270 IF a(4,6)=m THEN a=2:RETURN 11280 IF a(1,4)<>po OR a(4,1)<>p THEN 11300 11290 IF a(4,12)=m THEN a=3:RETURN 11300 IF a(1,6)<>po OR a(4,10)<>p THEN 11320 11310 IF a(4,9)=m THEN a=4:RETURN 11320 IF a(6,3)<>po OR a(6,4)<>p THEN 11340 11330 IF a(7,4)=m THEN a=5:RETURN 11340 IF a(6,6)<>po OR a(6,7)<>p THEN 11360 11350 IF a(7,6)=m THEN a=6:RETURN 11360 IF a(6,1)<>po OR a(9,4)<>p THEN 11380 11370 IF a(6,12)=m THEN a=7:RETURN 11380 IF a(6,9)<>po OR a(6,10)<>p THEN 11400 11390 IF a(9,6)=m THEN a=8:RETURN 11400 s=s+1:ON s GOTO 11410,11410,11420,11430,11430,11440 11410 a=po:po=p:p=m:m=a:GOTO 11240 11420 a=po:po=m:m=a:GOTO 11240 11430 a=po:po=p:p=m:m=a:GOTO 11240 11440 GOTO 10400 11450 a$="VR-V-LV-R-VL":RETURN 11460 a$="-HLV-LHL-V-L":RETURN 11470 a$="-LOR-OLO-R-O":RETURN 11480 a$="-LVR-VLV-R-V":RETURN 11490 a$="VO-V-UV-O-VU":RETURN 11500 a$="LV-L-HL-V-LH":RETURN 11510 a$="ULV-L-HL-V-LH-U":RETURN 11520 a$="OV-O-HO-V-OH":RETURN 11530 a$="-HOV-OHO-V-O":RETURN 11540 a$="-RVL-VRV-L-V":RETURN 11550 a$="VL-V-RV-L-VR":RETURN 11560 a$="U-RVL-VRV-L-V-U":RETURN 11570 a$="-ORU-ROR-U-R":RETURN 11580 a$="-OHU-HOH-U-H":RETURN 11590 a$="LO-L-UL-O-LU":RETURN 11600 a$="-ULO-L-UL-O-LUU":RETURN 11610 a$="-ULO-LUL-O-L":RETURN 11620 a$="-LHR-HLH-R-H":RETURN 11630 a$="U-HRV-RHR-V-R-U":RETURN 11640 a$="-HRV-RHR-V-R":RETURN 11650 a$="HO-H-UH-O-HU":RETURN 11660 a$="-UHO-HUH-O-H":RETURN 11670 a$="UR-U-LU-R-UL":RETURN 11680 a$="-LUR-ULU-R-U":RETURN 11690 a$="UV-U-HU-V-UH":RETURN 11700 a$="-RUL-URU-L-U":RETURN 11710 a$="UL-U-RU-L-UR":RETURN 11720 GOSUB 120:ho=4:GOSUB 110:RETURN 30000 REM ************************ 30010 REM * kubus! * 30020 REM * gemaakt door * 30030 REM * jan broeckx * 30040 REM * karmelietenstr. 66 * 30050 REM * 2600 berchem * 30060 REM * belgie * 30061 REM * deutsch 2019, * 30062 REM * farbe 2023: * 30063 REM * thomas rademacher * 30064 REM * fr.-engels-str. 44 * 30065 REM * 99086 erfurt * 30066 REM * deutschland * 30070 REM ************************ 30080 REM 30090 REM copyright nos hilversum |
-- Tot wie ein Dodo? viele Informationen zu BasiCode auf basicode.de
Cu via komputilo povas Esperanto? Jes, BasiCode! |