home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mail Madness! 5
/
Mail_Madness_05_19xx_-_Side_B.d64
/
logadress
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
11KB
|
299 lines
5 poke788,52
10 poke53280,0:poke53281,0:print"":open15,8,15:print#15,"i0":gosub10000
20 pu=2:fp=1:dk=0:l1=40:l2=30:l3=15:t=0
30 bz$(1)="satznummer..:":bz$(2)="name/vorname:":bz$(3)="strasse.....:"
40 bz$(4)="plz/ort.....:":bz$(5)="rufnummer...:":bz$(6)="codierung...:"
50 bl$="............[157][157][157][157][157][157][157][157][157][157][157][157][157][157]"
100 dim a$(501),a(501)
190 goto11000
200 print"[164][157]";
205 gett$:ift$=""then205
210 tt=asc(t$):iftt=20andtt$=""thent$="":goto205
215 iftt>13andtt<20ortt>20andtt<32ortt>96thent$="":goto205
220 iftt=95ortt=13thenprintchr$(32):return
225 iftt=34thent$="'"
230 iftt<>20thenprintt$;:tt$=tt$+t$:goto240
235 iftt=20thenprintt$;:tt$=left$(tt$,len(tt$)-1)
240 iflen(tt$)<llthen200
245 printchr$(32):return
1000 x$="":x=0:print"[147] 1-[146] diskette anlegen";spc(61);"2-[146] datei anlegen";spc(64);
1010 print"3-[146] menue"
1020 getx$:x=val(x$):ifx<1orx>3then1020
1030 ifx=1then1100
1040 ifx=2then1300
1050 ifx=3thenreturn
1060 goto1020
1100 print"[147]diskette anlegen:":input"diskette eingelegt n[157][157][157]";x$
1110 ifx$<>"j"then1100
1120 input"diskettenname";d$:ifd$=""thenprint"[145][145][145]":goto1120
1130 input"diskettennummer";dn$:dn=val(dn$):ifdn<1ord>9thenprint"[145][145][145]":goto1130
1140 input"angaben richtig n[157][157][157]";x$:ifx$<>"j"thenprint"[145][145][145][145][145][145][145]":goto1120
1150 print#15,"n0:"+d$+","+dn$
1160 goto1000
1300 print"[147]datei anlegen:":input"diskette fuer seq. datei eingelegt n[157][157][157]";x$
1310 ifx$<>"j"then1300
1320 print"":forx=1to6:printbz$(x):next
1330 forx=7to10
1340 printbl$;:inputbz$(x)
1350 iflen(bz$(x))>12thenprint"[145][145]":fory=1tolen(bz$(x)):print" ";:next:
1360 iflen(bz$(x))>12thenprint"[145]":bz$(x)="":goto1340
1370 ifleft$(bz$(x),1)="."thenprint"[145][145]":goto1340
1380 bz$(x)=bz$(x)+":":print"[145]";bz$(x):next
1390 print"[147]";:forx=1to10:printbz$(x):next:input"angaben korrekt j[157][157][157]";x$:ifx$="j"then1500
1400 input"welche bezeichnung 7-10";x$:x=val(x$)
1410 ifx<7orx>10thenprint"[145][145][145]":goto1400
1420 printbz$(x)
1430 printbl$;:inputbz$(x)
1440 iflen(bz$(x))>12thenprint"[145][145]":fory=1tolen(bz$(x)):print" ";:next:
1450 iflen(bz$(x))>12thenprint"[145]":bz$(x)="":goto1430
1460 ifleft$(bz$(x),1)="."thenprint"[145][145]":goto1430
1470 bz$(x)=bz$(x)+":":print"[145]";bz$(x):goto1390
1500 print"[147]geben sie nun den dateinamen ein:":d$=""
1510 input"dateinamen:";d$:dd$="@:"+d$+"s,w":print#15,"i0":open3,8,3,dd$:gosub10000
1520 forx=1to500
1540 a$(x)="^":a(x)=x:nextx:t=0:print#3,t
1550 forx=7to10:print#3,chr$(34);bz$(x):next
1560 forx=1to500:print#3,a$(x):print#3,a(x):print"";x:next
1570 gosub10000:close3:return
2000 print"[147]datei einlesen:[146]";spc(65);"_[146] =menue";spc(72)
2010 input"diskette mit indexdatei eingelegt n[157][157][157]";x$:print""
2020 ifx$="_"thenreturn
2030 ifx$<>"j"then2000
2040 input"dateiname";d$:dd$=d$+"s,r":open3,8,3,dd$:gosub10000:input#3,t
2045 ify=62thenclose3:print"[145][145][145][145][145]":goto2040
2050 forx=7to10:input#3,bz$(x):next:print"";t;"":forx=1to10:printbz$(x):next
2055 print"datei ";d$;"[146] wird eingelesen.[145][145][145]"
2060 forx=1to500:input#3,a$(x):input#3,a(x):next
2070 gosub10000:close3:return
3000 print"[147]indexdatei speichern:[146]";spc(59);"_[146] =menue/end"
3010 input"indexdiskette eingelegt n[157][157][157]";x$:ifx$="_"thenreturn
3020 ifx$<>"j"then3000
3030 input"dateinamen:";d$:input"dateinamen korrekt j[157][157][157]";x$
3040 ifx$="n"thenprint"[145][145][145][145][145]":goto3030
3050 dd$=d$+"s,w":open3,8,3,dd$:gosub10000:ify<>0thengoto3100
3060 print#3,t:forx=7to10:print#3,chr$(34);bz$(x):next
3070 forx=1to500:print#3,chr$(34);a$(x):print#3,a(x):next:close3:gosub10000:return
3100 close3:input"datei ueberschreiben j[157][157][157]";x$
3110 ifx$="n"then3000
3120 dd$="@:"+d$+"s,w":open3,8,3,dd$:goto3060
4000 print"[147]daten eingeben:[146]";spc(65);"_[146] = menue"
4010 input"datendiskette eingelegt n[157][157][157]";x$:ifx$="_"thenreturn
4015 ifx$<>"j"then4000
4020 ifa$(1)=""thenreturn
4030 forx=1to500:ifa$(x)="^"then4100
4035 next
4040 print"kein datensatz mehr frei":forx=1to1000:next:return
4100 print"[147][213][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][201]";
4101 print "[221] 10 20 30 [194]";
4102 print"[202][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][203]"
4105 r=a(x):print"";bz$(1);r;"[146]"
4110 printbz$(2),l1:ll=l1:gosub200:ad$(1)=tt$:tt$=""
4115 ifad$(1)=""thenad$(1)="---"
4120 print"[145][145]":printbz$(3);l2:ll=l2:gosub200:ad$(2)=tt$:tt$=""
4125 ifad$(2)=""thenad$(2)="---"
4130 print"[145][145]":printbz$(4),l2:ll=l2:gosub200:ad$(3)=tt$:tt$=""
4135 ifad$(3)=""thenad$(3)="---"
4140 print"[145][145]":printbz$(5),l3:ll=l3:gosub200:ad$(4)=tt$:tt$=""
4145 ifad$(4)=""thenad$(4)="---"
4150 print"[145][145]":printbz$(6),l3:ll=l3:gosub200:ad$(5)=tt$:tt$=""
4155 ifad$(5)=""thenad$(5)="---"
4160 print"[145][145]":printbz$(7),l2:ll=l2:gosub200:ad$(6)=tt$:tt$=""
4165 ifad$(6)=""thenad$(6)="---"
4170 print"[145][145]":printbz$(8),l2:ll=l2:gosub200:ad$(7)=tt$:tt$=""
4175 ifad$(7)=""thenad$(7)="---"
4180 print"[145][145]":printbz$(9),l2:ll=l2:gosub200:ad$(8)=tt$:tt$=""
4185 ifad$(8)=""thenad$(8)="---"
4190 print"[145][145]":printbz$(10),l2:ll=l2:gosub200:ad$(9)=tt$:tt$=""
4195 ifad$(9)=""thenad$(9)="---"
4200 input"eingabe korrekt j[157][157][157]";x$:ifx$="j"then4210
4205 ifx$="n"thengosub10700:q=1:gosub5200
4210 t=t+1:a$(x)=ad$(1):open2,8,2,"#":gosub10200:close2
4220 input"neue eingabe (j/n)[146] j[157][157][157]";x$:ifx$="n"thenreturn
4230 ifx$="j"then4035
4240 print"[145]";:goto4220
5000 input"[147]datendiskette eingelegt (_[146] = menue) n[157][157][157]";x$:ifx$="_"thenreturn
5005 ifx$<>"j"then5000
5010 print"welcher satz soll gesucht werden? _[146]=menue":z=0
5015 input"";s$:ifs$="_"then return
5020 fory=1tot:ifleft$(a$(y),len(s$))=s$thenz=y:goto5100
5030 nexty:print"datensatz nicht mehr im speicher":forx=1to1000:next:goto5000
5100 r=a(y):open2,8,2,"#":gosub10100:gosub10700
5120 print"a[146]endern l[146]oeschen _[146]neuer satz w[146]eitersuchen"
5130 getx$:ifx$=""then5130
5140 ifx$="a"thengosub5200:close2:goto5100
5150 ifx$="l"then5300
5160 ifx$="_"thenclose2:goto5000
5170 ifx$="w"thenclose2:y=z:goto5030
5180 goto5130
5200 print"welches feld soll geaendert werden?"
5205 inputz$:a=val(z$):ifa<1ora>9thenprint"[145][145]":goto5210
5210 ll=30:ifa=1thenll=l1
5215 ifa=4ora=5thenll=15
5220 printad$(a);"":gosub200:ad$(a)=tt$:tt$="":ifad$(a)=""thenad$(a)="---"
5230 input"weitere aenderungen n[157][157][157]";z$
5233 ifz$="n"andq=1thenreturn
5235 ifz$="n"thengosub10200:return
5240 ifz$="j"thengosub10700:goto5200
5300 close2:forgy=1to9:ad$(gy)="@@@@@@":next:open2,8,2,"#":gosub10200:close2
5310 ifz=tthena$(t)="^":t=t-1:goto5010
5320 forx=ztot-1:a(x)=a(x+1):a$(x)=a$(x+1):next:a$(t)="^":a(t)=t:t=t-1
5330 goto5010
6000 input"[147]datendiskette eingelegt n[157][157][157]";x$:ifx$="_"thenreturn
6003 ifx$<>"j"then6000
6005 print"[147]datenausgaben:[146]";spc(67);"1-[146] uebersicht indexdatei";spc(56);
6010 print"2-[146] daten bearbeiten";spc(61);"3-[146] gesamtausdruck";spc(63);
6020 print"4-[146] gesamtausdruck nach suchbegr.";spc(48);"5-[146] adressaufkleber";
6030 printspc(62);"6-[146] adressaufkl. nach suchbegr.";spc(50);
6035 print"7-[146] ausdruck nach plz";spc(60);"8-[146] menue";spc(121);"waehle 1-8[146]"
6040 getx$:x=val(x$):ifx<1orx>8then6040
6050 ifx=8thenreturn
6060 onxgoto6100,6200,6300,6400,6500,6600,6700
6100 print"[147]uebersicht:[146]"
6110 forx=1tot:printa(x);" ";tab(7);a$(x)
6120 ifx/15=int(x/15)theninput"'return'[146]";x$:print"[147]uebersicht:[146]"
6130 next:input"'return'[146]";x$:goto6005
6140 next:goto6005
6200 z=1:r=a(z):open2,8,2,"#"
6210 gosub10100:gosub10700
6220 print"a[146]endern d[146]rucken +[146]vor- -[146]zurueck- ";
6223 print">[146] 10 vor- <[146] 10 zurueckbl. _[146] ende[145][145]"
6225 getx$:ifx$=""then6225
6230 ifx$="a"thengosub5200:goto6210
6240 ifx$="d"thengosub10500:goto6210
6245 ifx$="+"thenz=z+1:ifz>tthenz=t
6250 ifx$="+"thenr=a(z):goto6210
6255 ifx$="-"thenz=z-1:ifz<1thenz=1
6260 ifx$="-"thenr=a(z):goto6210
6265 ifx$=">"thenz=z+10:ifz>tthenz=t
6270 ifx$=">"thenr=a(z):goto6210
6275 ifx$="<"thenz=z-10:ifz<1thenz=1
6280 ifx$="<"thenr=a(z):goto6210
6285 ifx$="_"thenclose2:goto6005
6290 goto6225
6300 print"[147]gesamtausdruck aller daten:":open2,8,2,"#":forx=1tot:print"";x:r=a(x)
6310 gosub10100:gosub10500:ifx/6=int(x/6)thenopen1,4,1:print#1,chr$(12):close1
6320 ifx/30=int(x/30)theninput"'return'[146]";x$
6330 next:close2:goto6005
6400 print"[147]gesamtausdruck nach code:":input"geben sie code ein";cd$:gosub10700
6405 input"suchfeld";yy:ifyy<1oryy>9thenprint"[145][145][145]":goto6405
6410 ifcd$=""then6400
6420 print"[147]":xx=0:open2,8,2,"#":forx=1tot:print"";x:r=a(x):gosub10100
6430 forz=1tolen(ad$(yy))-len(cd$)+1
6440 ifmid$(ad$(yy),z,len(cd$))=cd$thengosub10700:gosub10500:xx=xx+1
6450 nextz:ifxx/6=int(xx/6)andxx>0thenopen7,4,1:print#7,chr$(12)
6460 nextx:close2:goto6005
6500 print"[147]gesamtausdruck aller adressen:":open2,8,2,"#":forx=1tot
6510 print"";x:r=a(x):gosub10100:gosub10600:next:close2:goto6005
6600 print"[147]gesamtausdruck nach code:":input"geben sie code ein";cd$:gosub10700
6605 input"suchfeld";yy:ifyy<1oryy>9thenprint"[145][145][145]":goto6605
6610 ifcd$=""then6600
6620 print"[147]":open2,8,2,"#":forx=1tot:print"";x:r=a(x):gosub10100
6630 forz=1tolen(ad$(yy))-len(cd$)+1
6640 ifmid$(ad$(yy),z,len(cd$))=cd$thengosub10700:gosub10600
6650 nextz:nextx:close2:goto6005
6700 print"[147]ausgabe eines postleitzahlenbereiches:"
6710 print"geben sie a[146] fuer adressaufkleber oder g[146] fuer gesamtausdruck ein."
6715 getst$:ifst$="a"orst$="g"then6725
6720 goto6715
6725 input"kleinere plz:";pk$:pk=val(pk$):ifpk<10000orpk>99999thenprint"[145]";:goto6725
6727 print""
6730 input"groessere plz:";pg$:pg=val(pg$):ifpk<10000orpk>99999thenprint"[145]";:goto6730
6735 forx=1tot:r=a(x):open2,8,2,"#":gosub10100:close2
6740 ifval(left$(ad$(3),5))>=pkandval(left$(ad$(3),5))<=pgthen6750
6745 nextx:return
6750 ifst$="a"thengosub10600:goto6745
6755 ifst$="g"thengosub10500:goto6745
7000 print"[147] 1-[146] indexdatei anlegen":print" 2-[146] indexdatei sortieren"
7010 print" 3-[146] menue"
7020 getx$:x=val(x$):ifx<1orx>3then7020
7030 ifx=1then7100
7040 ifx=2thenprint" 2.[146]":goto7300
7050 ifx=3thenreturn
7060 goto7020
7100 input"[147]datendiskette eingelegt n[157][157][157]";x$:ifx$<>"j"then7100
7110 ifx$="_"thenreturn
7120 print"":forx=2to10:printx-1;"";bz$(x):next
7130 print" nach welchem feld soll indexdatei angelegt werden?"
7140 getx$:x=val(x$):ifx<1orx>9then7140
7150 printx:open2,8,2,"#":forz=1tot:r=a(z):gosub10100:a$(z)=ad$(x):next
7160 close2:return
7300 m=t
7305 m=int(m/2)
7310 ifm=0then7370
7315 j=1:k=t-m
7320 i=j
7325 l=i+m
7330 ifa$(i)<a$(l)then7355
7335 gosub7500
7340 i=i-m
7345 ifi<1then7355
7350 goto7325
7355 j=j+1
7360 ifj>kthen7305
7365 goto7320
7370 i=0:j=0:k=0:l=0:m=0:return
7500 a$(0)=a$(i):a(0)=a(i):a$(i)=a$(l):a(i)=a(l):a$(l)=a$(0):a(l)=a(0):return
8000 print"[147]backup:[146] ":print"1-[146] diskette/kassette":print"2-[146] kassette/diskette"
8010 print"3-[146] menue"
8020 getx$:x=val(x$):ifx<1orx>3then8020
8030 ifx=3thenreturn
8040 onxgoto8100,8200
8050 goto8020
8100 input"[147]datendiskette eingelegt n[157][157][157]";x$:ifx$<>"j"then8100
8105 input"kassette eingelegt n[157][157][157]";x$:ifx$="n"thenprint"[145][145][145]":goto8105
8110 input"kassettendateiname:";kn$:open1,1,1,kn$:open2,8,2,"#"
8120 forx=1tot:r=a(x):gosub10100:print#1,r:fory=1to9:print#1,ad$(y):next:next
8130 close1:close2:return
8200 input"[147]datendiskette eingelegt n[157][157][157]";x$:ifx$="n"then8200
8205 input"kassette eingelegt n[157][157][157]";x$:ifx$="n"thenprint"[145][145][145]":goto8205
8210 input"kassettendateiname:";kn$:open1,1,0,kn$:open2,8,2,"#"
8220 forx=1tot:input#1,r:fory=1to9:input#1,ad$(y):next:gosub10200:next
8230 close1:close2:return
9000 print"[147]sie haben end[146] gewaehlt, ist":input"indexdatei[146] gespeichert n[157][157][157]";x$
9010 ifx$<>"j"thengosub3000
9020 clr:print"[147]";:end
10000 input#15,y,y$,v$,w$:ify<>0thenprinty,y$,v$,w$:input"fortsetzen mit 'return'[146]";x$
10010 return
10100 gosub10300:print#15,"u1:";pu;dk;rt;rs:print#15,"b-p:";pu;fp
10105 forg=1to9:ad$(g)="":next
10110 gosub10000:forg=1to9:input#pu,ad$(g):next:return
10200 gosub10300:print#15,"b-p:";pu;fp:forgy=1to9:print#pu,chr$(34);ad$(gy);chr$(13);
10205 next
10210 print#15,"u2:";pu;dk;rt;rs:gosub10000:fory=1to9:ad$(y)="":next
10220 return
10300 ifr<358thenr1=0:r2=22:r3=1:goto10330
10310 ifr>357andr<472thenr1=357:r2=20:r3=19:goto10330
10320 ifr>471thenr1=471:r2=19:r3=25
10330 rt=int(((r-r1)-1)/(r2-1))+r3
10340 rs=r-r1-(rt-r3)*r2+(rt-r3-1)
10350 return
10500 open7,4,1:open8,4,0:print#7,chr$(27);chr$(68);chr$(15);chr$(0);
10510 fory=1to9:print#8,bz$(y+1);:print#7,chr$(9);:print#8,ad$(y):next
10520 fory=1to4:print#8,"--------------------";:next:print#8::close7:close8:return
10600 open7,4,0:ifmid$(ad$(5),2,1)="f"thenprint#7,"firma":goto10685
10610 ifmid$(ad$(5),2,1)="w"thenprint#7,"frau":goto10640
10620 ifmid$(ad$(5),2,1)="m"then print#7,"herrn":goto10640
10630 print#7,"frau/herrn"
10640 fory=1tolen(ad$(1)):ifmid$(ad$(1),y,1)="/"thenl$=left$(ad$(1),y-1)
10645 fory=1tolen(ad$(1)):ifmid$(ad$(1),y,1)="/"thenl$=left$(ad$(1),y-1)
10650 ifmid$(ad$(1),y,1)="/"thenr$=right$(ad$(1),len(ad$(1))-y)
10660 ifmid$(ad$(1),y,1)="/"thend$=ad$(1):ad$(1)=r$+" "+l$
10670 nexty:print#7,ad$(1):ifmid$(d$,y,1)="/"thenad$(1)=d$
10680 print#7,ad$(2):print#7:print#7,ad$(3):print#7:print#7:print#7:print#7:close7:return
10685 print#7,ad$(1):ifleft$(ad$(5),1)="@"thenprint#7,"z. hd.: ";ad$(6):fl=1
10690 print#7,ad$(2):iffl=0thenprint#7
10695 print#7,ad$(3):print#7:print#7:print#7:print#7:close7:fl=0:return
10700 print"[147]";bz$(1);r;""
10710 form=2to10:print"";m-1;bz$(m);"[146] ";ad$(m-1):next:return
11000 print"[147]logadress 64[146]";spc(77);"menue:";spc(34);"[183][183][183][183][183][183]";spc(66);
11010 print"1-[146] diskette formatieren/datei anlegen";spc(43);
11020 print"2-[146] datei einlesen";spc(63);"3-[146] datei speichern";spc(62);
11030 print"4-[146] daten eingeben";spc(63);"5-[146] daten suchen/aendern/loeschen";
11040 printspc(48);"6-[146] datenausgabe (bildschirm/drucker)";spc(44);
11050 print"7-[146] indexdateien anlegen/sortieren";spc(47);
11060 print"8-[146] backup auf/von kassette";spc(54);"9-[146] end";spc(84);
11070 print"waehle 1-9[146]"
11080 getx$:x=val(x$):ifx<1orx>9then11080
11090 onxgosub1000,2000,3000,4000,5000,6000,7000,8000,9000
11100 x$="":x=0:q=0:goto11000