10 |
AUTOGOTO 20 |
20 |
"A" CLS :WAIT 0 |
30 |
IF C2=0 GOSUB 7430 |
40 |
IF FP GOTO 6000 |
50 |
IF F6 OR F7 GOTO 3410 |
60 |
IF F1=0 OR F2=0 GOTO 3950 |
70 |
RESTORE 100 |
80 |
GOTO 7290 |
100 |
DATA 1,"MENU",5,"Suchen",620,"Liste",1860,"Pflege",2410 |
110 |
DATA "Optionen",4890,"Transfer",3950,"ENDE",120 |
120 |
PRINT "Adressdatenbank beendet,":PRINT "Neustart mit ";CHR$ 91;"DEF";CHR$ 93;" ";CHR$ 91; |
130 |
PRINT "A";CHR$ 93;" !" |
140 |
GOSUB 6300 :WAIT :CLS |
150 |
END |
160 |
PRINT "Datenbankzugang verwehrt":END |
170 |
RESTORE 190 :GOTO 7290 |
190 |
DATA 1,"SUCHE",2,"Nachname",210,"Vorname",220,"Geburtstag",360 |
210 |
PRINT "Nachname:":L=0:GOTO 230 |
220 |
PRINT "Vorname:":L=1 |
230 |
M$(0)="A":INPUT M$(0) |
240 |
IF LEN M$(0)<3 LET M$(0)=M$(0)+"aa" |
250 |
GOSUB 6490 :IF F5 GOTO 230 |
260 |
POKE 12348,16:CLEAR A:B=G |
270 |
P=S(0,L):IF M$(0)<D$(P,L) LET R=0:RETURN |
280 |
R=INT ((A+B)/2) |
290 |
P=S(R,L) |
300 |
IF D$(P,L)=M$(0) GOTO 340 |
310 |
IF B-A=1 LET R=R+1:P=S(R,L):RETURN |
320 |
IF D$(P,L)<M$(0) LET A=R:GOTO 280 |
330 |
B=R:GOTO 280 |
340 |
IF R IF D$(S(R-1,L),L)=M$(0) LET R=R-1:P=S(R,L):GOTO 340 |
350 |
RETURN |
360 |
PRINT "Geburtstag:":INPUT M$(0) |
370 |
L=2:CLEAR A:B=G:IF M$(0)="" CLEAR U,V:GOTO 400 |
380 |
U=VAL LEFT$ (M$(0),2):V=VAL MID$ (M$(0),4,2):W=1900:GOSUB 490 |
390 |
IF F5 GOSUB 6510 :GOTO 360 |
400 |
W=U+V*31 |
410 |
P=S(0,2):IF W<VAL LEFT$ (D$(P,5),2)+31*VAL MID$ (D$(P,5),4,2) LET R=0:RETURN |
420 |
R=INT ((A+B)/2):P=S(R,2):H=VAL LEFT$ (D$(P,5),2)+31*VAL MID$ (D$(P,5),4,2) |
430 |
IF H=W GOTO 470 |
440 |
IF B-A=1 LET R=R+1:P=S(R,L):RETURN |
450 |
IF H<W LET A=R:GOTO 420 |
460 |
B=R:GOTO 420 |
470 |
IF R LET H=S(R-1,2):IF VAL LEFT$ (D$(H,5),2)+31*VAL MID$ (D$(H,5),4,2)=W LET P=H:R=R-1:GOTO 470 |
480 |
RETURN |
490 |
CLEAR F5:IF U<1 OR U>31 OR V<1 OR V>12 OR W<1890 OR W>1999 LET F5=1:GOTO 520 |
500 |
IF (V=4 OR V=6 OR V=9 OR V=11) AND U>30 LET F5=1:GOTO 520 |
510 |
IF V=2 AND U>29 LET F5=1 |
520 |
RETURN |
530 |
RESTORE 550 :GOTO 7290 |
550 |
DATA 1,LEFT$ (D$(P,1)+" "+D$(P,0),24),2,"o.k.",610 |
560 |
DATA "weiter",570,"zurueck",590 |
570 |
R=R+1:IF R>G BEEP 1,255,100:R=G |
580 |
P=S(R,L):GOTO 530 |
590 |
R=R-1:IF -R CLEAR R:BEEP 1,255,100 |
600 |
P=S(R,L):GOTO 530 |
610 |
RETURN |
620 |
IF F1=0 BEEP 1,255,100:PRINT "Keine Datei !":GOSUB 6300 :GOTO 40 |
625 |
GOSUB 170 :GOSUB 530 :P=S(R,L) |
630 |
RESTORE 650 :GOTO 7290 |
650 |
DATA 1,LEFT$ (D$(P,1)+" "+D$(P,0),24),3,"Anzeigen",680,"Drucken",770 |
660 |
DATA "Blaettern",670,"MENU",70 |
670 |
GOSUB 530 :GOTO 630 |
680 |
GOSUB 690 :GOTO 630 |
690 |
F4=LEN (D$(P,0)+D$(P,1))<24 |
700 |
IF F4 PRINT D$(P,1);" ";D$(P,0):GOTO 720 |
710 |
PRINT D$(P,1):PRINT D$(P,0) |
720 |
PRINT D$(P,2):IF F4=0 WAIT |
730 |
PRINT D$(P,3):IF F4=0 WAIT 0:GOTO 750 |
740 |
IF F4 GOSUB 6300 |
750 |
WAIT 0:CLS :FOR W=4 TO 6:PRINT D$(P,W):NEXT W:GOSUB 6300 |
760 |
RETURN |
770 |
GOSUB 6310 :ON C1 GOTO 780 ,820 ,680 |
780 |
RESTORE 800 :GOTO 7290 |
800 |
DATA 1,"DRUCK AUF CE-140P",3,"Datensatz",820,"Briefkopf",870,"Grafik" |
810 |
DATA 1200,"MENU",70 |
820 |
PRINT "Datensatz wird gedruckt |
830 |
GOSUB 840 :GOTO 70 |
840 |
IF LEN (D$(P,0)+D$(P,1))<24+(C1=1)*15 LPRINT D$(P,1)+" "+D$(P,0):GOTO 860 |
850 |
LPRINT D$(P,1):LPRINT D$(P,0) |
860 |
FOR I=2 TO 6:LPRINT D$(P,I):NEXT I:LPRINT :RETURN |
870 |
GRAPH |
880 |
LLINE (60,0)-(480,0)-(480,-200)-(60,-200)-(60,0) |
890 |
LLINE (0,-285)-(20,-285):LLINE (85,-40)-(460,-40),1 |
900 |
GLCURSOR (85,-90):CONSOLE 31:RESTORE 920 :GOTO 7290 |
920 |
DATA 1,"erste Zeile:",5,"An",940,"Herr",940,"Frau",940,"Fraeulein" |
930 |
DATA 940,"Firma",940,"<eingeben>",1000 |
940 |
ON K+1 GOTO 950 ,960 ,970 ,980 ,990 |
950 |
LPRINT "PAn":GOTO 1010 |
960 |
LPRINT "PHerr":GOTO 1010 |
970 |
LPRINT "PFrau":GOTO 1010 |
980 |
LPRINT "PFraeulein":GOTO 1010 |
990 |
LPRINT "PFirma":GOTO 1010 |
1000 |
GOSUB 6420 :LPRINT "P";LEFT$ (T$(0),31) |
1010 |
GLCURSOR (85,-114) |
1020 |
IF LEN (D$(P,0)+D$(P,1))>30 LPRINT "P";LEFT$ (D$(P,1),1);". ":GOTO 1040 |
1030 |
LPRINT "P";D$(P,1);" " |
1040 |
LPRINT "P";D$(P,0) |
1050 |
GLCURSOR (85,-138):LPRINT "P";D$(P,2) |
1060 |
GLCURSOR (85,-162):LPRINT "P";D$(P,3) |
1070 |
GLCURSOR (85,-28):CSIZE 1:CONSOLE 62 |
1080 |
RESTORE 1100 :GOTO 7290 |
1100 |
DATA 1,"Absender:",2,"M. Janssen",1130,"<suchen>",1140,"<eingeben>" |
1110 |
DATA 1120 |
1120 |
GOSUB 6420 :LPRINT "P";T$(0):GOTO 1180 |
1130 |
LPRINT "P<Tragen Sie hier Ihren Absender ein!>":GOTO 1180 |
1140 |
GOSUB 170 :GOSUB 530 |
1150 |
IF LEN (D$(P,0)+D$(P,1)+D$(P,2)+D$(P,3))>54 GOTO 1170 |
1160 |
LPRINT "P";D$(P,1);" " |
1170 |
LPRINT "P";D$(P,0);" / ";D$(P,2);" / ";D$(P,3) |
1180 |
GLCURSOR (0,-360):LPRINT CHR$ 27+"@" |
1190 |
GOTO 70 |
1200 |
GOSUB 7490 :CHAIN "X:GRAPHADB.CHN",1200 |
1860 |
IF F1=0 BEEP 1,255,100:PRINT "Keine Datei !":GOSUB 6300 :GOTO 40 |
1870 |
RESTORE 1880 :GOTO 7290 |
1880 |
DATA 1,"LISTE",3,"Namen",1900,"Vornamen",1900,"Geb.tage |
1890 |
DATA 2010,"MENU",70 |
1900 |
L=K:M$(0)="Aaa":INPUT "von: ";M$(0) |
1910 |
IF LEN M$(0)<3 LET M$(0)=M$(0)+"aa" |
1920 |
CURSOR 5,0:PRINT M$(0) |
1930 |
GOSUB 260 :C=R |
1940 |
IF D$(P,L)<M$(0) GOSUB 6290 :GOTO 40 |
1950 |
M$(0)="Zzz":INPUT "bis: ";M$(0) |
1960 |
CURSOR 5,1:PRINT M$(0) |
1970 |
IF D$(P,L)>M$(0):GOSUB 6290 :GOTO 40 |
1980 |
GOSUB 260 |
1990 |
IF D$(P,L)>M$(0) LET R=R-1:P=S(R,L) |
2000 |
GOTO 2100 |
2010 |
L=2:M$(0)="01.01.":INPUT "von: ";M$(0) |
2020 |
CURSOR 5,0:PRINT M$(0) |
2030 |
GOSUB 370 :C=R |
2040 |
IF U+V*31<VAL LEFT$ (M$(0),2)+VAL MID$ (M$(0),4,2)*31 GOSUB 6290 :GOTO 40 |
2050 |
M$(0)="31.12.":INPUT "bis: ";M$(0) |
2060 |
CURSOR 5,1:PRINT M$(0) |
2070 |
IF U+V*31>VAL LEFT$ (M$(0),2)+VAL MID$ (M$(0),4,2)*31 GOSUB 6290 :GOTO 40 |
2080 |
GOSUB 370 |
2090 |
IF U+V*31<VAL LEFT$ (D$(P,5),2)+VAL MID$ (D$(P,5),4,2)*31 LET R=R-1:P=S(R,L) |
2100 |
GOSUB 6310 |
2110 |
RESTORE 2130 :GOTO 7290 |
2130 |
DATA 1,"FORMAT",2,"komplette Datensaetze",2150 |
2140 |
DATA "Geb.dat./Name/Vorname",2160,"lfd.Nr./Name/Vorname",2240 |
2150 |
FOR J=C TO R:P=S(J,L):ON C1 GOSUB 840 ,840 ,690 :NEXT J:GOTO 70 |
2160 |
IF C1<>3 PRINT =LPRINT :PRINT " " |
2170 |
FOR J=C TO R:P=S(J,L):PRINT D$(P,5) |
2180 |
IF LEN (D$(P,1)+D$(P,0))<24 PRINT D$(P,1)+" "+D$(P,0):GOTO 2200 |
2190 |
PRINT D$(P,1):PRINT D$(P,0) |
2200 |
IF C1=3 GOSUB 6300 :GOTO 2220 |
2210 |
PRINT " " |
2220 |
NEXT J |
2230 |
PRINT =PRINT :GOTO 70 |
2240 |
IF C1<>3 PRINT =LPRINT :PRINT " " |
2250 |
W=SGN L |
2260 |
CLEAR U,V:FOR J=C TO R:P=S(J,L):USING "####" |
2270 |
T=J-C+1 |
2280 |
IF LEN D$(P,W)<19+15*(C1=1) GOTO 2310 |
2290 |
IF V<>INT V AND C1=3 GOSUB 6300 :U=U-INT ((V-INT V+2E-10)*3) |
2300 |
PRINT T;") ":USING :PRINT D$(P,W):PRINT D$(P,NOT W+2):U=U+2:GOTO 2370 |
2310 |
IF LEN (D$(P,0)+D$(P,1))<18+15*(C1=1) GOTO 2350 |
2320 |
IF V<>INT V AND C1=3 GOSUB 6300 :U=U-INT ((V-INT V+2E-10)*3) |
2330 |
PRINT T;") "; |
2340 |
USING :PRINT D$(P,W):PRINT " ";D$(P,NOT W+2):U=U+1:GOTO 2370 |
2350 |
PRINT T;") "; |
2360 |
USING :PRINT D$(P,W);" ";D$(P,NOT W+2) |
2370 |
V=(T+U)/3 |
2380 |
IF V=INT V OR J=R AND C1=3 GOSUB 6300 |
2390 |
NEXT J |
2400 |
PRINT =PRINT :GOTO 70 |
2410 |
GOSUB 7490 :CHAIN "X:PFLEGADB.CHN",2410 |
3410 |
GOSUB 7490 :CHAIN "X:SORTADB.CHN",3410 |
3950 |
GOSUB 7490 :CHAIN "X:TRANSADB.CHN",3950 |
4890 |
RESTORE 4910 :GOTO 7290 |
4910 |
DATA 1,"OPTIONEN",4,"Notizen",4930,"Status",5390,"Crypto |
4920 |
DATA 5620,"Kalender",6610,"MENU",70 |
4930 |
RESTORE 4950 :GOTO 7290 |
4950 |
DATA 1,"NOTIZEN",5,"Ausgabe",4970,"Notieren",5070,"Loeschen",5110 |
4960 |
DATA "Sichern",5250,"Laden",5300,"MENU",70 |
4970 |
IF C4=0 GOTO 5380 |
4980 |
IF C4=1 LET K=0:GOTO 5030 |
4990 |
RESTORE 5010 :GOTO 7290 |
5010 |
DATA 1,"AUSGABE",C4-1,N$(0),5030,N$(1),5030,N$(2),5030 |
5020 |
DATA N$(3),5030,N$(4),5030,N$(5),5030 |
5030 |
Z=K:GOSUB 6310 :IF C1<>3 PRINT =LPRINT :IF C1=1 CONSOLE 24 |
5040 |
PRINT N$(Z):IF C1=3 GOSUB 6300 |
5050 |
PRINT =PRINT :CONSOLE 39 |
5060 |
GOTO 70 |
5070 |
IF C4=6 BEEP 1,255,100:PRINT "Notizspeicher voll !":GOSUB 6300 :GOTO 4930 |
5080 |
PRINT "Notiz Nr. ";STR$ (C4+1);" von max. 6":INPUT N$(C4):C4=C4+1 |
5090 |
POKE 12348,16:CLS |
5100 |
GOTO 70 |
5110 |
IF C4=0 GOTO 5380 |
5120 |
IF C4=1 LET K=0:GOTO 5170 |
5130 |
RESTORE 5150 :GOTO 7290 |
5150 |
DATA 1,"LOESCHEN",C4-1,N$(0),5170,N$(1),5170,N$(2),5170 |
5160 |
DATA N$(3),5170,N$(4),5170,N$(5),5170 |
5170 |
Z=K:PRINT N$(Z):GOSUB 6300 |
5180 |
RESTORE 5200 :GOTO 7290 |
5200 |
DATA 1,">>> ACHTUNG <<<",2,"NOTIZEN",4930,"MENU",70 |
5210 |
DATA "Notiz loeschen",5220 |
5220 |
C4=C4-1:IF Z=C4LET N$(Z)="":GOTO 4930 |
5230 |
N$(Z)=N$(C4):N$(C4)="" |
5240 |
GOTO 4930 |
5250 |
IF C4=0 GOTO 5380 |
5260 |
GOSUB 4340 |
5270 |
OPEN "X:"+F$+".NTZ"FOR OUTPUT AS #4 |
5280 |
PRINT #4,C4,N$(*):CLOSE |
5290 |
GOTO 70 |
5300 |
IF C4 RESTORE 5320 :GOTO 7290 |
5320 |
DATA 1,">>> ACHTUNG <<<",2,"NOTIZEN",4930,"MENU",70 |
5330 |
DATA "alle Notizen loeschen",5340 |
5340 |
GOSUB 4340 |
5350 |
OPEN "X:"+F$+".NTZ"FOR INPUT AS #5 |
5360 |
INPUT #5,C4,N$(*):CLOSE |
5370 |
GOTO 4930 |
5380 |
PRINT "Keine Notiz !":GOSUB 6300 :GOTO 70 |
5390 |
GOSUB 7490 :CHAIN "X:STATADB.CHN",5390 |
5620 |
IF FP GOTO 6000 |
5630 |
IF F1=0 PRINT "Keine Datei !":GOSUB 5630 :GOTO 40 |
5640 |
RESTORE 5660 :GOTO 7290 |
5660 |
DATA 1,"DATENSCHUTZ",2,"Password",5680,"Codieren",5710 |
5670 |
DATA "MENU",70 |
5680 |
PRINT "Password:":GOSUB 6110 |
5690 |
P$(0)=M$(0) |
5700 |
FP=1:GOTO 70 |
5710 |
GOSUB 7490 :CHAIN "X:CRYPTADB.CHN",5710 |
6000 |
ON FP GOTO 6010 ,5710 |
6010 |
PRINT "Password:":FOR I=1 TO 3:GOSUB 6110 :CLS |
6020 |
IF M$(0)=P$(0) LET I=3:FP=0:GOTO 6040 |
6030 |
BEEP 1,255,100:PRINT I;" falsches Password !" |
6040 |
NEXT I |
6050 |
ON FP+1 GOTO 6060 ,160 |
6060 |
RESTORE 6080 :GOTO 7290 |
6080 |
DATA 1,"Passwordschutz",1,"erhalten",6090,"beenden",6100 |
6090 |
FP=1:GOTO 50 |
6100 |
P$(0)="":GOTO 50 |
6110 |
M$(0)="":PRINT "?" |
6120 |
T=ASC INKEY$ :IF T=0 GOTO 6120 |
6130 |
BEEP 1,1,25 |
6140 |
IF T=13 GOTO 6200 |
6150 |
IF T=15 AND LEN M$(0)>0 LET M$(0)=LEFT$ (M$(0),LEN M$(0)-1):GOTO 6120 |
6160 |
IF T=2 CLS :PRINT "neue Eingabe !":GOTO 6110 |
6170 |
IF T<32 OR T>122 AND T<>251 AND T<>252 BEEP 1,255,100:GOTO 6120 |
6180 |
M$(0)=M$(0)+CHR$ T |
6190 |
IF LEN M$(0)<16 GOTO 6120 |
6200 |
CLS :IF LEN M$(0)<6 BEEP 1,255,100:PRINT "Password zu kurz !":GOTO 6110 |
6210 |
IF FP=1 RETURN |
6220 |
PRINT "Kontrolleingabe:":PRINT "?":FOR I=1 TO LEN M$(0) |
6230 |
T=ASC INKEY$ :IF T=0 GOTO 6230 |
6240 |
BEEP 1,1,25 |
6250 |
IF T=15 LET I=I-1:GOTO 6230 |
6260 |
IF T=2 LET I=1:PRINT "neue Eingabe !":GOTO 6230 |
6270 |
IF T<>ASC MID$ (M$(0),I,1) BEEP 1,255,100:PRINT "Fehler !":I=16:NEXT I:GOSUB 6300 :CLS :GOTO 6110 |
6280 |
NEXT I:CLS :RETURN |
6290 |
PRINT "Eintraege nur":PRINT "von ";D$(S(0,L),L):PRINT "bis ";D$(S(G,L),L):PRINT "vorhanden |
6300 |
WAIT :CURSOR 17,3:PRINT CHR$ 91;"ENTER";CHR$ 93:WAIT 0:BEEP 1,1,25:CLS :RETURN |
6310 |
CLOSE #1:RESTORE 6400 :GOTO 7290 |
6320 |
C1=1:PRINT "CE-140P"; |
6330 |
GOTO 6350 |
6340 |
C1=2:PRINT "CE-126P"; |
6350 |
PRINT " o.k. ?":GOSUB 6300 |
6360 |
IF C1=1 OPEN :LPRINT CHR$ 27+"@ |
6370 |
RETURN |
6380 |
C1=3:RETURN |
6400 |
DATA 1,"ZIEL",2,"CE-140P (inkjet)",6320,"CE-126P (thermo)",6340 |
6410 |
DATA "Display",6380 |
6420 |
PRINT "Text eingeben:":PRINT CHR$ 91;"ENTER";CHR$ 93;" = "; |
6430 |
IF LEN T$(0)>14 PRINT LEFT$ (T$(0),10);" ...":GOTO 6460 |
6440 |
IF ASC T$(0)<33 PRINT "<SPC>":GOTO 6460 |
6450 |
PRINT T$(0) |
6460 |
INPUT T$(0) |
6470 |
POKE 12348,16:CLS |
6480 |
RETURN |
6490 |
CLEAR F5:H=ASC LEFT$ (M$(0),1):IF H<65 OR H>90 AND H<>32 AND H<>0 LET F5=1 |
6500 |
H=ASC MID$ (M$(0),2,1):IF H<97 OR H>122 AND H<>46 AND H<>32 AND H<>0 LET F5=1 |
6510 |
CLS :IF F5 BEEP 1,255,200:RESTORE 6550 :GOTO 7290 |
6520 |
POKE 12348,16 |
6530 |
RETURN |
6550 |
DATA 1,"EINGABEFEHLER",1,"o.k.",6520,"Hilfe",6560 |
6560 |
PRINT "Text mit Kleinbuchstaben":PRINT "Abkuerzungen mit ";CHR$ 34;".";CHR$ 34 |
6570 |
PRINT "hinter dem 1. Buchstaben":GOSUB 6300 :PRINT "Daten: TT.MM.JJJJ" |
6580 |
PRINT "Freibleibende Felder mit";CHR$ 91;"ENTER";CHR$ 93;" quittieren |
6590 |
GOSUB 6300 :GOTO 6520 |
6600 |
DATA 31,28+S,31,30,31,30,31,31,30,31,30,31 |
6610 |
D=1:INPUT "Monat: ";D |
6620 |
IF D<1OR D>12 BEEP 1,255,100:GOTO 6610 |
6630 |
E=1991:INPUT "Jahr : ";E |
6640 |
IF E<1000 BEEP 1,255,100:GOTO 6630 |
6650 |
CLS :T$(0)="JANFEBMARAPRMAIJUNJULAUGSEPOKTNOVDEZ |
6660 |
FOR I=1 TO 3:CURSOR 1,I-1:PRINT MID$ (T$(0),3*D+I-3,1):NEXT I |
6670 |
CURSOR 0,3:PRINT RIGHT$ (STR$ E,2):CURSOR 3,0:PRINT "Mo Di Mi Do Fr Sa So |
6680 |
LINE (20,0)-(149,6),X,BF:LINE (3,0)-(19,31),X,BF |
6690 |
A=INT (E/100):B=E-A*100:Z=35+INT (1.25*(B-1))+INT (A/4)-2*A |
6700 |
S=0:IF B/4=INT (B/4) LET S=1:IF B=0 AND A/4=INT (A/4) CLEAR S |
6710 |
RESTORE 6600 :IF D=1 GOTO 6730 |
6720 |
FOR I=1 TO D-1:READ N:Z=Z+N:NEXT I |
6730 |
READ N:O=Z-INT (Z/7)*7 |
6740 |
FOR I=1 TO 21-O |
6750 |
Y=INT ((I+O-1)/7)+1:X=(I+O-(Y-1)*7)*3+(I<10) |
6760 |
CURSOR X,Y:PRINT STR$ I |
6770 |
NEXT I |
6780 |
IF F1=0 GOTO 6880 |
6790 |
M$(0)="01.":IF D<10 LET M$(0)=M$(0)+"0" |
6800 |
M$(0)=M$(0)+STR$ D:GOSUB 370 |
6810 |
IF VAL MID$ (D$(S(R,2),5),4,2)<>D GOTO 6880 |
6820 |
C=VAL LEFT$ (D$(S(R,2),5),2) |
6830 |
IF C>21-O GOTO 6880 |
6840 |
Y=INT ((C+O-1)/7)+1:X=(C+O-(Y-1)*7)*3+2 |
6850 |
CURSOR X,Y:PRINT "*" |
6860 |
R=R+1:IF R>G GOTO 6880 |
6870 |
GOTO 6810 |
6880 |
IF C4=0 GOTO 6970 |
6890 |
FOR I=0 TO C4-1 |
6900 |
IF VAL N$(I)=0 GOTO 6960 |
6910 |
U=VAL LEFT$ (N$(I),2):V=VAL MID$ (N$(I),4,2):W=1991 |
6920 |
IF V<>D OR U>21-O GOTO 6960 |
6930 |
Y=INT ((U+O-1)/7)+1:X=(U+O-(Y-1)*7)*3+2 |
6940 |
CURSOR X,Y:IF POINT (X*6+8,Y*8+3) PRINT "+":GOTO 6960 |
6950 |
PRINT "!" |
6960 |
NEXT I |
6970 |
GOSUB 7250 |
6980 |
BEEP 1:WAIT :GPRINT :WAIT 0:LINE (23,6)-(23,31),R |
6990 |
FOR I=1 TO N-21+O |
7000 |
Y=INT ((I-1)/7)+1:X=(I-(Y-1)*7)*3 |
7010 |
CURSOR X,Y:PRINT STR$ (I+21-O);" ":NEXT I |
7020 |
FOR I=N-20+O TO 21 |
7030 |
Y=INT ((I-1)/7)+1:X=(I-(Y-1)*7)*3 |
7040 |
CURSOR X,Y:PRINT " ":NEXT I |
7050 |
IF F1=0 GOTO 7130 |
7060 |
M$(0)=STR$ (22-O):IF D<10LET M$(0)=M$(0)+"0" |
7070 |
M$(0)=M$(0)+STR$ D:GOSUB 370 |
7080 |
IF VAL MID$ (D$(S(R,2),5),4,2)<>D GOTO 7130 |
7090 |
C=VAL LEFT$ (D$(S(R,2),5),2)-21+O:Y=INT ((C-1)/7)+1:X=(C-(Y-1)*7)*3+2 |
7100 |
CURSOR X,Y:PRINT "*" |
7110 |
R=R+1:IF R>G GOTO 7130 |
7120 |
GOTO 7080 |
7130 |
IF C4=0 GOTO 7230 |
7140 |
FOR I=0 TO C4-1 |
7150 |
IF VAL N$(I)=0 GOTO 7220 |
7160 |
U=VAL LEFT$ (N$(I),2):V=VAL MID$ (N$(I),4,2):W=1991 |
7170 |
IF V<>D OR U<22-O GOTO 7220 |
7180 |
U=U-21+O |
7190 |
Y=INT ((U-1)/7)+1:X=(U-(Y-1)*7)*3+2 |
7200 |
CURSOR X,Y:IF POINT (X*6+8,Y*8+3)PRINT "+":GOTO 7220 |
7210 |
PRINT "!" |
7220 |
NEXT I |
7230 |
GOSUB 7250 :BEEP 1:WAIT :GPRINT :WAIT 0 |
7240 |
GOTO 70 |
7250 |
FOR Y=11 TO 27 STEP 8:FOR X=38 TO 146 STEP 18 |
7260 |
IF POINT (X,Y) LINE (X+2,Y+4)-(X-15,Y-3),X,BF |
7270 |
NEXT X:NEXT Y |
7280 |
RETURN |
7290 |
CLS :READ F0:IF F0 READ M$(0):PRINT M$(0) |
7300 |
X=0:Y=F0:READ N:Q=INT (N/(4-F0)):S=16-4*Q |
7310 |
FOR I=0 TO N:J=INT (I/(4-F0)):CURSOR J*S,I-(4-F0)*J+F0:READ M$(0),Z(I) |
7320 |
PRINT " ";LEFT$ (M$(0),S+6-8*SGN Q):NEXT I |
7330 |
K=Y-F0+(4-F0)*X:IF K>N LET X=Q:Y=F0+N-(4-F0)*X:K=N |
7340 |
CURSOR X*S,Y:PRINT "->" |
7350 |
T=ASC INKEY$ :IF T=0 GOTO 7350 |
7360 |
BEEP 1,1,25 |
7370 |
IF T=5 CURSOR X*S,Y:PRINT " ":Y=Y+1:IF Y>3 LET Y=F0:X=X+1:IF X>Q CLEAR X |
7380 |
IF T=4 CURSOR X*S,Y:PRINT " ":Y=Y-1:IF Y<F0 LET Y=3:X=X-1:IF -X CLEAR X |
7390 |
IF T=14 CURSOR X*S,Y:PRINT " ":X=X+1:IF X>Q CLEAR X |
7400 |
IF T=15 CURSOR X*S,Y:PRINT " ":X=X-1:IF X<0 LET X=Q |
7410 |
IF T=13 CLS :CLEAR X,Y:GOTO Z(K) |
7420 |
GOTO 7330 |
7430 |
DIM P$(0)*24,T$(0)*62,N$(5)*80,M$(0)*24,Z(8):C2=1 |
7440 |
RETURN |
7450 |
U=0:IF F2 GOTO 3670 |
7460 |
RESTORE 7470 :GOTO 7290 |
7470 |
DATA 1,">>> ACHTUNG <<<",2,"alte Datei sichern",4170,"alte Datei loeschen |
7480 |
DATA 3670,"MENU",70 |
7490 |
RESTORE 7500 :GOTO 7290 |
7500 |
DATA 1,"Externer Programmteil !",1,"CE-140F o.k.",7510,"Abbruch",70 |
7510 |
RETURN |