10 |
AUTOGOTO 70 |
70 |
"A" GOSUB 7490 :CHAIN "X:ADBCHN.PRG",70 |
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 |
2460 |
GOSUB 7490 :CHAIN "X:PFLEGADB.CHN",2460 |
3410 |
GOSUB 7490 :CHAIN "X:SORTADB.CHN",3410 |
3670 |
E=0:G=-1:F9=1:GOSUB 4480 :CLEAR F6,F9 |
3680 |
CLS :PRINT "Bitte Daten eingeben !":GOSUB 6300 :GOTO 2460 |
3690 |
GOSUB 7490 :CHAIN "X:SORTADB.CHN",3690 |
3950 |
IF F1=0 GOTO 4390 |
3960 |
IF F2=0 GOTO 4170 |
3970 |
RESTORE 3990 :GOTO 7290 |
3990 |
DATA 1,"TRANSFER",2,"Sichern",4170,"Laden",4390,"MENU",70 |
4010 |
DATA 1,"Datei unsortiert !",2,"Sortieren",3410,"sofort sichern",4180 |
4020 |
DATA "MENU",4250 |
4060 |
DATA 1,"LADEN",2,"Diskette",4400,"Eingabe",3670 |
4070 |
DATA "MENU",70 |
4090 |
DATA 1,"alte Datei",2,"erhalten",4720,"loeschen",4480,"MENU |
4100 |
DATA 4710 |
4120 |
DATA 1,"Speicher zu klein:",2,"Teil laden",4580,"neuer Filename" |
4130 |
DATA 4880,"MENU",4700 |
4150 |
DATA 1,"alte Datei:",2,"sichern und loeschen",4170 |
4160 |
DATA "sofort loeschen",4470,"MENU",70 |
4170 |
IF F6 OR F7 RESTORE 4010 :F8=1:GOTO 7290 |
4180 |
CLEAR F8:D=10*G+10:Z=0 |
4190 |
GOSUB 4340 :USING "####.#" |
4200 |
OPEN "X:"+F$+".ADB" FOR OUTPUT AS #2 |
4210 |
PRINT #2,G,F6,F7,FP:PRINT 0;" % gesichert |
4220 |
FOR I=0 TO G:FOR J=0 TO 6:PRINT #2,D$(I,J):Z=Z+1:CURSOR 0,0:PRINT Z/D*100:NEXT J |
4230 |
FOR J=0 TO 2:PRINT #2,S(I,J):Z=Z+1:CURSOR 0,0:PRINT Z/D*100:NEXT J:NEXT I |
4240 |
F2=1 |
4250 |
CLOSE :USING :IF FP=2 GOTO 120 |
4270 |
GOTO 70 |
4340 |
RESTORE 4365 :GOTO 7290 |
4350 |
INPUT "Filename: ";F$ |
4360 |
CLS :RETURN |
4365 |
DATA 1,"CE-140F",1,"o.k.",4350,"MENU",70 |
4390 |
Z=0:RESTORE 4060 :GOTO 7290 |
4400 |
GOSUB 4340 |
4410 |
OPEN "X:"+F$+".ADB" FOR INPUT AS #3 |
4420 |
INPUT #3,U,V,W,A:D=10*U+10 |
4440 |
E=U*192+341 |
4450 |
IF A=FP AND M-G>U RESTORE 4090 :GOTO 7290 |
4480 |
ERASE D$,S |
4490 |
M=INT ((MEM -727)/192):IF M>255 LET M=255 |
4500 |
PRINT "frei:":PRINT STR$ (MEM -727);" Bytes" |
4510 |
IF MEM $="D" PRINT "Bitte eingeben:":PRINT "SETMEM ";CHR$ 34;"B";CHR$ 34;" ";CHR$ 91; |
4515 |
IF MEM $="D" PRINT "ENTER";CHR$ 93:WAIT :PRINT "",CHR$ 91+"DEF"+CHR$ 93+" "+CHR$ 91+"C"+CHR$ 93 |
4516 |
"C" WAIT 0 |
4520 |
IF F9 GOSUB 6300 :GOSUB 4840 :GOTO 4580 |
4530 |
PRINT "Neue Datei:":PRINT STR$ E;" Bytes":GOSUB 6300 |
4560 |
IF U>M RESTORE 4120 :GOTO 7290 |
4570 |
IF M-U>5 GOSUB 4820 |
4580 |
CURSOR 5,1:PRINT "bitte Geduld |
4590 |
DIM D$(M,6)*24,S(M,2):F1=1:F2=1:CLS |
4600 |
IF F9 RETURN |
4605 |
Z=0:USING "####.#":PRINT 0;" % geladen" |
4610 |
FOR I=0 TO U:FOR J=0 TO 6 |
4620 |
INPUT #3,D$(I,J):Z=Z+1:CURSOR 0,0:PRINT Z/D*100 |
4640 |
NEXT J:FOR J=0 TO 2 |
4650 |
INPUT #3,S(I,J):Z=Z+1:CURSOR 0,0:PRINT Z/D*100 |
4670 |
NEXT J:NEXT I |
4680 |
F6=V:F7=W:G=U:FP=A |
4690 |
IF M<U LET F7=1 |
4700 |
CLOSE :USING |
4710 |
GOTO 70 |
4720 |
Z=0:USING "####.#":PRINT 0;" % angehaengt" |
4725 |
FOR I=G+1 TO G+U+1 |
4730 |
FOR J=0 TO 6 |
4740 |
INPUT #3,D$(I,J):Z=Z+1:CURSOR 0,0:PRINT Z/D*100 |
4760 |
NEXT J:FOR J=0 TO 2 |
4770 |
INPUT #3,S(I,J):Z=Z+1:CURSOR 0,0:PRINT Z/D*100 |
4790 |
NEXT J:NEXT I |
4800 |
G=G+U+1:CLOSE :F7=1:CLS :GOTO 3690 |
4820 |
PRINT "Nicht benoetigt:":PRINT STR$ (MEM -727-E);" Bytes" |
4830 |
PRINT "entspr. ";STR$ (M-U);" Datensaetze":GOSUB 6300 |
4840 |
Z=0:PRINT "Reservieren:":PRINT " Bytes":CURSOR 0,1:INPUT Z |
4850 |
CLS :IF Z>MEM -727-E BEEP 1,255,200:GOTO 4840 |
4860 |
M=INT ((MEM -727-Z)/192):IF M>255 LET M=255 |
4870 |
RETURN |
4880 |
CLOSE :GOTO 4400 |
6300 |
WAIT :CURSOR 17,3:PRINT CHR$ 91;"ENTER";CHR$ 93:WAIT 0:BEEP 1,1,25:CLS :RETURN |
7290 |
CLS :WAIT 0: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 |
7490 |
RESTORE 7500 :GOTO 7290 |
7500 |
DATA 1,"Externer Programmteil !",1,"CE-140F o.k.",7510,"Abbruch",7520 |
7510 |
RETURN |
7520 |
CLS :END |