1 :POKE50257,16:POKE50258,64 2 IFPEEK(50255)<255THENPOKE50255,PEEK(50255)+1 3 PRINTCHR$(142);CHR$(8) 4 POKE50259,1:POKE50260,8:POKE50261,064:POKE50262,046 10 SYS10752:POKE55,0:POKE56,128:POKE45,0:POKE46,64:CLR 30 SYS32864 40 KA=0:FE=0:FA=0:FT=0:POKE252,0 50 PRINT"[147]";:POKE53280,7:POKE53281,7:PRINT"[144]"; 60 POKE211,6:POKE214,10:SYS58640 70 PRINT"[207][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][208]" 80 PRINT" [165]* * * C 64 - PLOTT * * *[167]" 90 PRINT" [204][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][186]" 95 POKE252,0:FORI=1TO5000:NEXT 100 POKE53280,13:POKE53281,13:PRINT"[144]" 110 PRINT"[147]" 120 PRINT" HAUPTMENUE" 130 PRINT" [163][163][163][163][163][163][163][163][163][163]" 140 PRINT:PRINT 150 PRINT" FUNKTIONSEINGABE............1" 160 PRINT 220 PRINT 230 PRINT" FUNKTION PLOTTEN............2" 240 PRINT 260 POKE211,2:POKE214,22:SYS58640 270 PRINT"BITTE WAEHLEN !! "; 290 GETX$:POKE204,0:IFX$=""THEN290 292 IFPEEK(207)THEN292 294 POKE204,1 300 X=ASC(X$):IFX<49ORX>51THEN290 305 X=X-48 310 PRINTX 400 ONXGOTO800,2000 500 PRINT"[147]":UG=1 510 PRINT" KOORDINATEN AENDERN" 520 PRINT" [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]" 530 PRINT 540 PRINT" X-KOORDINATE (MIN): " 550 PRINT 560 PRINT" X-KOORDINATE (MAX): " 565 IFKN=2THEN610 570 PRINT 580 PRINT" Y-KOORDINATE (MIN): " 590 PRINT 600 PRINT" Y-KOORDINATE (MAX): " 610 Z=4:SP=21:GOSUB10000 620 XN=VAL(X1$):T1$=STR$(INT((XN*10+5)/10)) 622 IFXN>0THEN610 630 Z=6:SP=21:GOSUB10000 640 XX=VAL(X1$):T2$=STR$(INT((XX*10+5)/10)) 642 IF(XN=0ANDXX=0)ORXX<=XNTHEN610 643 IFXX<0THEN610 645 IFKN=2THENRETURN 670 Z=8:SP=21:GOSUB10000 680 YN=VAL(X1$):T3$=STR$(INT((YN*10+5)/10)) 681 IFYN>0THEN670 682 Z=10:SP=21:GOSUB10000 684 YX=VAL(X1$):T4$=STR$(INT((YX*10+5)/10)) 686 IF(YN=0ANDYX=0)ORYN>=YXTHEN670 687 IFYX<0THEN670 690 RETURN 800 PRINT"[147]" 810 POKE53280,15:POKE53281,15:PRINT"[144]"; 820 PRINT"[147]" 825 F$="":X1$="" 830 PRINT" FUNKTIONSEINGABE" 840 PRINT" [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]" 850 PRINT:POKE214,4:POKE211,0:SYS58640 860 PRINT"FUNKTION (X)= "F$:Z=4:SP=14:X1$=F$ 862 IFX1$=""THENGOSUB12000:GOTO864 863 GOSUB12020 864 F$=X1$:PRINT"[155]"; 865 P$="":L=LEN(F$)+14 866 FORI=1TO74-L:P$=P$+".":NEXT:P$=":REM"+P$:P1$=P$+"." 870 PRINT"[147]900DEFFNA(X)="F$;P1$:PRINT:PRINT"910DATAFNA(X)="F$;P$:PRINT 872 PRINT"RUN900" 880 POKE198,6:POKE631,19:POKE632,13:POKE633,13:POKE634,13:POKE635,13:POKE636,13 890 END 900 DEFFNA(X)=SQR(9-X^2):REM................................................... 910 DATAFNA(X)=SQR(9-X^2):REM.................................................. 915 X=FNA(1) 920 FE=1:GOTO100 1000 PRINT"[147]" 1005 IFFE=1THEN1060 1010 PRINT"BITTE FUNKTION DEFINIEREN !!! " 1020 POKE214,20:POKE211,2:SYS58640 1030 PRINT"TASTE DRUECKEN" 1040 GETX$:IFX$=""THEN1040 1050 GOTO100 1060 PRINT" FUNKTIONSWERTE AUSGEBEN":WE=1 1070 PRINT" [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]" 1080 PRINT:PRINT"BEREICH FUER 'X'" 1090 PRINT:UG=0 1100 PRINT"VON: "; 1110 X1$="" 1120 GETX$:POKE204,0:IFX$=""THEN1120 1130 IFPEEK207)THEN1130 1140 POKE204,1 1150 X=ASC(X$):IFX=13THEN1240 1160 IFX=20ANDLEN(X1$)>=1THENPRINT"[157] ";:X1$=LEFT$(X1$,LEN(X1$)-1):GOTO1210 1170 IFX=20THEN1120 1180 IF(X>47ANDX<58)ORX=45ORX=46THEN1200 1190 GOTO1120 1200 X1$=X1$+X$ 1210 POKE214,6:POKE211,5:SYS58640 1220 PRINTX1$; 1230 GOTO1120 1240 X1=VAL(X1$) 1250 PRINT:PRINT 1260 PRINT"BIS: "; 1265 X1$="" 1270 GETX$:POKE204,0:IFX$=""THEN1270 1280 IFPEEK(207)THEN1280 1290 POKE204,1 1300 X=ASC(X$):IFX=13THEN1390 1310 IFX=20ANDLEN(X1$)>=1THENPRINT"[157] ";:X1$=LEFT$(X1$,LEN(X1$)-1):GOTO1360 1320 IFX=20THEN1270 1330 IF(X>47ANDX<58)ORX=45ORX=46THEN1350 1340 GOTO1270 1350 X1$=X1$+X$ 1360 POKE214,8:POKE211,5:SYS58640 1370 PRINTX1$; 1380 GOTO1270 1390 X2=VAL(X1$) 1400 PRINT:PRINT 1410 PRINT"SCHRITTWEITE: "; 1420 X1$="" 1430 GETX$:POKE204,0:IFX$=""THEN1430 1440 IFPEEK(207)THEN1440 1450 POKE204,1 1460 X=ASC(X$):IFX=13THEN1550 1470 IFX=20ANDLEN(X3$)>=1THENPRINT"[157] ";:X3$=LEFT$(X3$,LEN(X3$)-1):GOTO1520 1480 IFX=20THEN1430 1490 IF(X>47ANDX<58)ORX=45ORX=46THEN1510 1500 GOTO1430 1510 X3$=X3$+X$ 1520 POKE214,10:POKE211,15:SYS58640 1530 PRINTX3$; 1540 GOTO1430 1550 SC=VAL(X3$) 1560 IFSC=0THENSC=1 1570 RESTORE:PRINT"[144]":READF$:PRINT"[147]"F$:PRINT:PRINT 1580 PRINT" ARGUMENT(X)";" FUNKTIONSWERT":PRINT 1590 IFX1FPTHENFP=F 1650 FORK=1TOKA:IFMID$(STR$(FNA(I)),K,1)="."THENK1=K:GOTO1680 1660 IFK=KATHENK1=K+1:GOTO1680 1670 NEXTK 1680 FK$=LEFT$(STR$(FNA(I)),K1-1) 1690 PRINTI;:SW=28-LEN(FK$):POKE211,SW:SYS58640:PRINTF 1700 IFZ=15THENZ=0:GOSUB11000 1710 NEXTI 1720 POKE211,2:POKE214,23:SYS58640 1730 PRINT"WEITER MIT W "; 1740 GETX$:IFX$=""THEN1740 1750 IFX$="W"THEN1770 1760 GOTO1740 1770 GOTO100 2000 PRINT"[147]" 2010 IFFE=1THEN2070 2020 PRINT"FUNKTION NICHT DEFINIERT !!" 2030 POKE214,20:POKE211,2:SYS58640 2040 PRINT"TASTE DRUECKEN !! "; 2050 GETX$:IFX$=""THEN2050 2060 GOTO100 2070 GOSUB7000:M=0:GOTO4000 2080 POKE56576,PEEK(56576)AND252OR2:POKE648,68 2090 POKE12544,1 2100 X1=(XN*-1)+XX 2102 X2=257/X1*XX 2104 IFX2>257THENX2=257 2105 IFX2<0THENX2=0 2110 SYS32960:SYS33181:SYS33212,0*16+1:SYS33014,317-X2,2,317-X2,197 2130 Y1=(YN*-1)+YX:Y2=200/Y1*YX 2132 IFY2>197THENY2=197 2133 IFY2<2THENY2=2 2135 SYS33014,60,Y2,318,Y2 2138 XP=XN:XQ=XX 2140 IFXP=0THENP1=100/(ABS(XP)+XQ)*XQ:PZ=P1/XQ:GOTO2150 2142 IF(ABS(XQ)/ABS(XP))>10THENXP=0:GOTO2140 2143 IFABS(XP)>10OR(ABS(XQ)>10)THENXP=XP/10:XQ=XQ/10 2144 IFABS(XP)<1OR(ABS(XQ)<1)THENXP=XP*10:XQ=XQ*10 2145 P1=100/((XP*-1)+XQ)*XP:PZ=P1/XP 2150 P2=257/100*PZ:IFP2<10THENP2=P2*10 2155 SP=-3:SQ=3 2156 IFY2<6THENSP=0 2157 IFY2>194THENSQ=0 2160 FORI=317-X2TO58STEP-P2:SYS33014,I,Y2+SP,I,Y2+SQ 2164 NEXT 2165 FORI=317-X2TO317STEPP2:SYS33014,I,Y2+SP,I,Y2+SQ:NEXT 2166 A1=INT(Y2/8-1)*320+64+24576 2167 IFA1<24576+56THENA1=24576+64+320 2168 A2=INT(A1/256):A3=A1-(A2*256):POKE33671,A3:POKE33675,A2 2169 A1=A1+29*8:IFA1>99THENA1=A1-8 2170 IFA1<24576+320-16THENA1=25576+320-24+320 2171 A2=INT(A1/256):A3=A1-(A2*256):POKE33698,A3:POKE33702,A2 2174 YP=YN:YQ=YX 2175 IFYP=0THENP1=100/(ABS(YP)+YQ)*YQ:PZ=P1/YQ:GOTO2200 2180 IF(ABS(YQ)/ABS(YP))>10THENYP=0:GOTO2175 2185 IFABS(YP)>10OR(ABS(YQ)>10)THENYP=YP/10:YQ=YQ/10 2190 IFABS(YP)<1OR(ABS(YQ)<1)THENYP=YP*10:YQ=YQ*10 2195 P1=100/((YP*-1)+YQ)*YP:PZ=P1/YP 2200 P2=197/100*PZ:IFP2<10THENP2=P2*10 2205 SP=-3:SQ=3 2206 IFX2<3THENSQ=0 2207 IFX2>257THENSP=0 2210 FORI=Y2TO2STEP-P2:SYS33014,317-X2+SP,I,317-X2+SQ,I:NEXT 2215 FORI=Y2TO199STEPP2:SYS33014,317-X2+SP,I,317-X2+SQ,I:NEXT 2220 A1=INT((317-X2)/8)*8+24576-16+320 2230 A2=INT(A1/256):A3=A1-(A2*256):POKE33752,A3:POKE33756,A2 2240 A1=A1+7680-640:A2=INT(A1/256):A3=A1-(A2*256):POKE33725,A3:POKE33729,A2 3000 SYS33654 3153 XT=X1/257:XK=XN 3160 FORI=60TO316 3170 YP=FNA(XN) 3180 GOSUB6000 3190 XN=XN+XT 3200 NEXT 3300 GETX$:IFX$=""THEN3300 3310 SYS32983:POKE56576,199:POKE648,4 3399 GOTO100 4000 BD=12288:L=LEN(T1$):XD$=T1$:GOSUB4050 4010 BD=BD+15:L=LEN(T2$):XD$=T2$:GOSUB4050 4020 BD=BD+15:L=LEN(T3$):XD$=T3$:GOSUB4050 4030 BD=BD+15:L=LEN(T4$):XD$=T4$:GOSUB4050 4040 GOTO2080 4050 FORI1=BDTOBD-1+L 4060 P=ASC(MID$(XD$,(I1-BD)+1,1)) 4062 POKEI1,P 4070 NEXTI1:POKEBD+L,0 4080 RETURN 6000 YL=197/Y1*YP 6010 IFY2-YL<2ORY2-YL>199THENM=0:RETURN 6100 IFM=0THENSYS32998,I,Y2-YL:M=1:I1=I:YM=YL:RETURN 6110 SYS33014,I1,Y2-YM,I,Y2-YL 6120 I1=I:YM=YL 6130 RETURN 7000 PRINT"KOORDINATEN DEFINIEREN ? (J/N) "; 7010 GETX$:POKE204,0:IFX$=""THEN7010 7020 IFPEEK(207)THEN7020 7030 POKE204,1 7034 IFX$="N"ANDKN=1THENXN=XK:T1$=STR$(INT(XN)):T2$=STR$(INT(XX)) 7035 IFX$="N"ANDKN=1THENT3$=STR$(INT(YN)):T4$=STR$(INT(YX)):RETURN 7040 IFX$="J"THENKN=1:GOSUB500:RETURN 7050 IFX$="N"THENKN=2::PRINT"[147]":PRINT:PRINT:GOSUB530:GOTO7160 7060 GOTO7010 7160 YN=0:YX=0 7170 FORI=XNTOXXSTEPXX/10 7180 A1=FNA(I):IFA1YXTHENYX=A1 7200 NEXT 7202 YX=YX+.1:YN=YN-.1 7204 T3$=STR$(INT((YN*10+5)/10)):T4$=STR$(INT((YX*10+5)/10)) 7210 RETURN 9999 GOTO100 10000 POKE214,Z:POKE211,SP:SYS58640 10005 X1$="":PRINT" ":POKE214,Z:POKE211,SP:SYS58640 10010 GETX$:POKE204,0:IFX$=""THEN10010 10020 IFPEEK(207)THEN10020 10021 POKE204,1 10024 IFASC(X$)=20ANDLEN(X1$)>0THEN10110 10025 IFASC(X$)=13THEN10100 10026 IFASC(X$)=46ORASC(X$)=45THEN10040 10030 X=ASC(X$):IFX<48ORX>57THEN10010 10040 X1$=X1$+X$ 10050 POKE214,Z:POKE211,SP:SYS58640:PRINTX1$; 10060 GOTO10010 10100 RETURN 10110 X1$=LEFT$(X1$,LEN(X1$)-1) 10120 PRINT"[157] "; 10130 GOTO10050 11000 POKE211,0:POKE214,23:SYS58640 11010 PRINT"TASTE DRUECKEN"; 11020 GETX$:IFX$=""THEN11020 11030 POKE214,4:POKE211,0:FORI1=4TO23 11040 PRINT" " 11050 NEXT 11060 POKE211,0:POKE214,5:SYS58640 11070 RETURN 12000 REM INITIALISIEREN 12010 POKE214,Z:POKE211,SP:SYS58640:FP=0:POKE650,64:Z=0:Z1=0:Z2=0:GOTO12040 12020 POKE214,Z:POKE211,SP:SYS58640:POKE650,64:Z=LEN(X1$):Z1=0:Z2=Z:FP=1 12040 SYS32824 12050 WT=PEEK(254) 12060 X$=CHR$(WT) 12070 IFWT=13THEN12510 12080 IFWT=20ORWT=29ORWT=157ORWT=148THEN12180 12090 IFWT=32ORWT=222THEN12125 12100 IFWT=58ORWT=59ORWT=63ORWT=64ORWT=92ORWT=91ORWT=93ORWT=95THEN12040 12110 IFWT<40ORWT>95THEN12040 12120 IFFP=1THEN12440 12125 IFZ>=25THENZ=25:GOTO12040 12130 X1$=X1$+X$ 12140 Z=Z+1 12150 Z1=Z1+1 12160 PRINTX$; 12170 GOTO12040 12180 IFWT=157THEN12230 12190 IFWT=29THEN12260 12200 IFWT=20THEN12290 12210 IFWT=148THEN12380 12220 GOTO12040 12230 Z1=Z1-1 12240 IFZ1<0THENZ1=0:GOTO12040 12250 GOTO12160 12260 Z1=Z1+1:IFZ2>0THENZ2=Z2-1 12270 IFZ1>ZTHENZ1=Z:GOTO12040 12275 IFZ2=0THENFP=0 12280 GOTO12160 12290 IFZ1=0THEN12040 12300 X2$=LEFT$(X1$,Z1-1) 12310 XX$=X1$ 12320 X3$=RIGHT$(X1$,Z-Z1) 12330 X1$=X2$+X3$ 12340 Z=Z-1 12350 Z1=Z1-1 12360 IFZ1<0THENZ1=0:Z=Z+1:X1$=XX$:GOTO12040 12370 GOTO12160 12380 IFZ1=ZTHEN12040 12385 FP=1:X2$=LEFT$(X1$,Z1) 12390 X3$=RIGHT$(X1$,Z-Z1) 12400 X2$=X2$+" ":X1$=X2$+X3$ 12410 Z=Z+1:Z2=Z2+1 12420 IFZ>25THENZ=25:GOTO12040 12430 GOTO12160 12440 X2$=LEFT$(X1$,Z1) 12450 X2$=X2$+X$ 12460 X1$=X2$+RIGHT$(X1$,Z-Z1-1) 12470 Z1=Z1+1 12480 Z2=Z2-1 12490 IFZ2=0THENFP=0 12500 GOTO12160 12510 POKE650,0:RETURN 50000 REM IFXX<>0THEN50005 50002 DIMFL$(20) 50005 PRINT"[144]" 50010 FL$(1)="SYNTAX-FEHLER":FL$(4)="UNGUELTIGE WERTEEINGABE" 50020 FL$(5)="ERGEBNIS ZU GROSS":FL$(6)="SPEICHER VOLL" 50030 FL$(10)="TEILEN DURCH NULL IST NICHT ERLAUBT":FL$(15)="FORMEL ZU KOMPLEX" 50040 FL=PEEK(251):IFPEEK(12544)=1THENSYS32983:POKE56576,199:POKE648,4 50050 FL=0:IFFL>10THENFL=FL-10 50060 RESTORE:READF$:L=LEN(F$):L1=L-7:F$=MID$(F$,8,L1) 50070 POKE214,7:POKE211,0:SYS58640:PRINT"[144]"FL$(FL) 50075 IFFL=1ORFL=15ORFL=10ORFL=5THENPOKE251,0 50080 IFFL=1ORFL=15ORFL=10ORFL=5THENPOKE214,1:POKE211,0:SYS58640:GOTO830 50090 IFFL=4ANDUG=1THENPOKE251,0:500 50092 IFFL=4ANDUG=0THENPOKE251,0:GOTO1000 50100 IFFL=6THENCLR:POKE251,0 50180 POKE214,20:POKE211,2:SYS58640:PRINT"TASTE DRUECKEN !! "; 50190 GETX$:IFX$=""THEN50190 50200 POKE251,0:GOTO100