MpT   @`! #@%`')+-/1 3@5`79;=?A C@E`GIKMOQ S@U`W[]_a c@e`gikoq s@u`wy{} @` @ ` @ ` / @ ` @ ` ǀ ɠ @ ` ׀ ٠  @` @`!Aa   !Aa!!#A%a')+-/1!3A5a79;A!CAEaGIKMOQ!SAUaWY[]_a!cAeagikmoq!sAuawy{}!Aa!Aa!Aa!Aa!Aaǁɡ!Aaׁ١!Aa!Aa " b  !/!  @`! #@%`')+-/1 3@5`79;=?A C@E`GIKMOQ S@U`W[]_a c@e`gikoq s@u`wy{} @` @ ` @ ` / @ ` @ ` ǀ ɠ @ ` ׀ ٠  @` @`!Aa   !Aa!!#A%a')+-/1!3A5a79;A!CAEaGIKMOQ!SAUaWY[]_a!cAeagikmoq!sAuawy{}!Aa!Aa!Aa!Aa!Aaǁɡ!Aaׁ١!Aa!Aa " b  !/!A461  CED_V103 ir@KONTO Fr@TILUIE Pr@LEES DIT +. `ESKTOP INF,m. @.. @CED ir@CED CFG rr@ F CED PRG lr@ICED PRS mr@=|CEDSTARTACC nr@>DOKU TXT or@?GENPRN TTP pr@$READ_ME TXT qr@". @.. @CED PRN jr@CEDHELP TXT kr@CED_M FNT jr@C_HEADERTXT lr@. @.. @BSP1991 BNG Nr@lBSP1991 KTO Or@nKONTO DAT Nr@m KONTO PRG Kr@CKONTO RSC Mr@YJJREAD ME Hr@ . @.. @READ ME Qr@p&TILUIE PRG Tr@zTILUIE RSC Ur@ K O N T O ========= VORAB: ------ Inhalt des Ordners Konto: KONTO.PRG Das Programm KONTO.RSC Das RSC KONTO.DAT Informationen fr KONTO.PRG BSP1991.BNG Beispiel-Datei BSP1991.KTO Beispiel-Datei READ.ME ALLGEMEINES: ------------ Dieses Programm ist ein PD-Programm. Es ist also frei kopierbar und darf (soll) an jeden ST-User weitergegeben werden. Bei diesem Programm handelt es sich um ein Hilfsmittel zum Verwalten von Giro-Konten. Da das Progamm vollstndig in GEM eingebunden ist, sollte die Bedienung kein Problem sein (auch ohne Aleitung). Zu sagen wre noch folgendes: Jede Buchung kann einem Konto (Posten) zugewiessen werden. Die Konten 000 bis 399 sind Einnahmen-Konten, die Konten groesser oder gleich 400 sind Ausgaben-Konten. Am besten, Sie schauen sich die beiliegenden Beispiel-Dateien einmal an. Viel Spass mit KONTO. AUTOR: ------ Dirk Nakott Hieberstr. 36 7000 Stuttgart 80 `68 o"h#8 #8#8,Oc.N//Bg?<JNA By8N$/,HNVA@-HA>CEH+p*QAEH"Op?"Q?<N3=RN^,_Nu[3][|Wo ist die Datei KONTO.RSC ?][Abbruch]/,HNVA-HNN?.HnHnHnHnN0.rAV6.AVDBd?.?.?.?. HnHnHnHnN@dZ?.?.?.?.N0.29=vAfN0.29D AfN(0.29DAfN?.HnHnHnHnN`FNN N^,_ _O N/,HNVA-H09=(29=vAfB49=*3=r69=,3=p89=.3=n:9=03=l?????N09=(29D AfB49=*3D69=,3D89=.3D:9=03D?????N09=(29DAfB49=*3D~69=,3D|89=.3Dz:9=03Dx?????NN^,_Nu/,HNVA-H09=(29D Af49=*3D69=,3D89=0:<El 3D`*QD?<}B?N(N**N)R8DPD3D????9D?9DNNN: 9DjrgXN=@N=@ yDb (FrV0.6.C89D`D^EBd (F#Db4.SB=B`09=(29DAft=B69Dz89=.D^<9Dx09=0@WADW@^BAD^@^BAEdr=A29=*3D~49=,3D|3Dz3Dx6<ȸCl3Dz6<ȰCl3Dx?9D???9Dz?9DxN0.@d8?9DHnHnHnHnN?9D?.?.?.?.NN^,_Nu/,HNVAN-H09=(29=vAfN09=(29D AfNL09=(29DAfN0N^,_Nu/,HNVA-H09=(29D Af49=*`$9DjvgfN=@"9Db-A n (FrV0.A^CBd$(F-BS@=@` ."9Dbg#DbN:N`^$9DjvgN=@N=@=@"9Db-A n (BrV0.A^C69D`8.D:.E^FBd$(B-BRD=DS@=@` ."9Dbg#DbN:N`$9Djvg&(9Dbg D*(F#DbN:N`$9Djvg\ yDb((BV89D`H NL0@H NL0@^AEd yDb (B#DbN:N` BbB4; N 6LN^,_Nu/,HNVA-H0.29D Af49D`vCo8. ?vN^,_Nu/,HNVA-H09="`09=(29=vAf$??9=r?9=p?9=n?9=lN"` ??9=*?9=,?9=.?9=0N`|N`tN`l?9=(N`\N`TNL`L?9=(?9=*N<`8N`0 @ g@ @b@0;NBN^,_Nu/,HNVAz-H09=FrAW69=DAWDBdf/9=bBg?<?9=J?9=HN3=PrAWvCWĄDxDWńEBd&Hy=b?9=P?9=J?9=HN83=N09=DrAf/9=bBg?<?9=J?9=HN3=PrAoHy=b?9=PN;rAfHy=b?9=PN709=P`HN`hN`^Nv`TN`JN`@Net`6Npz`,S@ @b@0;N @ gHy=b?9=PN8FN^,_Nu/,HNVA<-H09=j@d,p3=?9=v?9=r?9=p?9=n?9=lNN^,_Nu/,HNVA-HN29D Af09=L`09=BtBfx&9DjxgfN=@"9Db-A n (FrV0.A^CBd$(F-BS@=@` ."9Dbg#DbN:N`:vCf2(9Djg&*9Dbg E,(F#DbN:N`209=BtBf&9DjxgN=@N=@=@"9Db-A n (BrV0.A^C69D`8.D:.E^FBd$(B-BRD=DS@=@` ."9Dbg#DbN:N`pvCfh(9Djg\ yDb*(BV:9D`HNL`@HNL`@^AFd yDb (B#DbN:N` @Hg @PgN^,_Nu/,HNVA-H09=L`Hy=b?<N7NHy=b?<N8F`Hy=b?<N7NHy=b?<N8F`bHy=b?<N7NetHy=b?<N8F`8Hy=b?< N7NpzHy=b?< N8F`/9=f?<NNJl`/9=f?<NNB`/9=f?<NN`09D`rAo/9=f?<NN#`/9=f?<N09CF@29CFAA@d N?`N@dN?`P/9=f?<N09CF@29CFAA@d N`N@dN`/9=f?<NNE`/9=f?<N09C29CA@dN3=X` p3=X`09D`rAo/9=f?<NN3`Hy=b?<N7NHy=b?<N8F`\NL`RHy=b?<N7NvHy=b?<N8F`(N0`Hy=b?<N7NHy=b?<N8F`N`N`N??<N`N??<N` @g @g @g @ g @"g @% g @& g @-g @1g$ @;g @=g @?g @Dg @Ggj @HgZ @PgR @cg @c(g @d g @d)g @f g @f*g @wg6N^,_Nu/,HNVA-HprAt BvC3=T?9=T?<?<?</<`Bg?9=R?9=R?9=R?9=RBg?9=R?9=R?9=R?9=RHy="Hy=LHy=FHy=DHy=JHy=HHy=BNl3=VrAtBgN09=VrAtBgNj09=Vr AtBgN09=VrAtBgN609=X@d"N^,_NuA#8A8C!It0B BA:Bt0B  NrAmAO"O pQNN@e N`HyEFHyEDHy=RHy=RN~09EFrAW69EDxDWEBdN&N6N`4?<HyEHNAEH"Op?"QBgN3=RNHy:N0BgNAKONTO.RSC/,HNVAF-H?< HnN&/.?<BgBgN/.?<A6O"OpQAO"OpQAE*"Op?"Q?<BgNϮ/.?<AO"OAO"OAE6"Op?"Q?<BgNϮ?<AB/?9E/9=f?<NdN^,_Nunoname99__999___aaaaaaaa________/,HNVA-Hp3E(ACE*r3E4ACE6t3E:v23EN^,_Nu/,HNVAD-H n /?<N?<RNBgNXp=@r. =A`0.rA 0`"n / ?<N?<RN?<N?<{N?<N?<RNBgNX`"n / ?<N?<RN?<N?<|N?<N?<RNBgNX`F"n / ?<N?<RN?<N?<}N?<N?<RNBgNX`"n / ?<N?<RN?<N?<[N?<N?<RNBgNX`"n / ?<N?<RN?<N?<\N?<N?<RNBgNX`V"n / ?<N?<RN?<N?<]N?<N?<RNBgNX`"n / ?<N?<RN?<N?<~N?<N?<RNBgNX`"n / ?<N?<RN?<N?<@N?<N?<RNBgNX`f"n / 0.rA 0?NX`D Ag AgP Ag8 Ag Agx Ag Ag AgP`Rn0.noN^,_ _ONNV?<NAN^Nu/,HNVA-H?<HyEHNp=@NrAf p=@`RAEH"Op?"Q?<N=@rAfNrAfp=@0.rAW6.CBd0.=@0.N^,_Nu/,HNVA-HHnHnHnN?<AB/?.?<N\p.r Aft0B?<AB/?.?<N\p.r Aft0B?<AB/?.?<N\ VHhzHz?< NHzZ?<(NHzF?<NHn?B/"VAt]$O4$//?/?< ?<N\N^,_Nu/,HNVA|-H VHhzHzJ?< NHz?<NX VHhzC`$Op?$QN VHhzHzX?<NX VHhzCJ$Op?$QN VHhzHz&?<NX V0("2($AC??p=@`p=@`n0.2.AA4r$QRn n oRn novN^,_Nu/,HNVA-H"V idEX4$ id\E^4$ id ( #@TE24$$?<.?R@=@`:N2 VHh>?4p$QRn nop V(2R@=@`6N2 VHh2?$Op?$QN4 VHhzHz?<N VHh2??<NNX VHhz?< NXp V1@2(RA1AN^,_Nu | | | |============|============|------------|/,HNVA8-HAz0B BN@d09E(@dHnzHz?<N `8HnzN2HyE*?/9=f?<NdHnN0N^,_NuJahrgang eintragen !Name eintragen ! Datei unbekannt ! Lade Datei ! .BNG--- 9999aaaa____/,HNVA-H?<HnN&/.?<A^O"OADO"OAC"Op?"Q?<BgNϮ/.?< A O"OAO"OAC"Op?"Q?<BgNϮ/.?< AO"OpQ?<BgNF/.?< BgBgN/.?< BgBgN/.N/.BgHnHnHnHnN/9=f?<NdN^,_NuJahrgang eintragen !Name eintragen ! Sichere Daten ! --- 9999aaaa____/,HNVhA-HAh0B B?<HnN&/.?<AO"OAO"OAC"Op?"Q?<BgNϮ/.?< AO"OAlO"OAC"Op?"Q?<BgNϮ/.?< BgBgN/.N/.BgHnHnHnHnN/9=f?<NdHnhN0N^,_Nu9999aaaa____KONTO.DAT/,HNVzAR-HAz0B B?<NBgN6 HnzHz?< N N6rAf0.~@eJPMHnz?<HnzNNXp.zrA_vC\DBdAzCC2"0.~@e>PMHnz?<HnzNNXp.zrAfAzCC2"HyCp/HztBN2HyC/Hz^BN4BAd*ACCC2"ACCC2"NNHnzN0BgNHnzN0N^,_Nu/,HNVAp-H V/(?<Bg?. N V/(?<C~O$OCfO$O0.E?. NN$`0?. NN`"SB BbB4; N ?.?.?.?.?.?.?.?.NB?<BgBgBgBg?9=`?9=^?9=\?9=ZN6p/.N>N^,_NuSeite 6Seite 5Seite 4Seite 3Seite 2Seite 1/,HNVAf-Hp V1@"9Dj!A V (rV6(FCCBd6"@/ t/HyE>/N6Cd v1C` $@&*B!C`N^,_Nu/,HNVA-Hp=@r=A`p=@`t0.2.AA"Op?"Q?<BgNϮ/.N/9=b?< HnHnHnHnN2"p.rAoPt9E>RB=B`6N2?<0??2"Rn no NNF0.@d/.?<BgBgN/.?<AE>"Op?"Q?<BgNF n\C2"p.R@=@`6N2Hn??.?.?.?.?.?.?.?.NB/.NҌ/.N>/.N>N^,_Nu9999____/,HNVAt-Hp=@/.?.HnNՔp.rAV=BBet.?HzlN \6FC=C4.Bet.?HzHN \6FC=C4.Bet.?Hz$N \6FC=C4.Bet.?HzN \6FC=C4.Bd6t=B/.?. AO"OvQ?<BgNF`,/.?. AO"OtQ?<BgNF/.?. Bg?<N/.?. HnHnHnHnN09D@dNN:N^,_Nu--- /,HNVAf-Hp V1@"9Dj!A V (rV6(FCCBd6"@/ t/HyE>/N6Cd v1C` $@&*B!C`N^,_Nu/,HNVA -Hp3C V/(?<HnNՔ"V iE\0 /)?<HnNՔ"V iE /)?< HnNՔ"V iE0 /)?< HnNՔ"V iE0p Q/)?<HnNՔp.R@=@`6N2Hn?"Op?"Q?<BgNϮ/.N/9=b?<HnHnHnHnN2"p.rAoPt9E>RB=B`6N2?<0??2"Rn no NN0.@d/.?<BgBgN/.?<BgBgN/.?<BgBgN/.?<BgBgN/.?<AO"OpQ?<BgNF/.?<AE>"Op?"Q?<BgNF/.?<AO"OAO"O n\"Op?"Q?<BgNϮ/.?<AjO"OARO"O n "Op?"Q?<BgNϮ/.?< AO"O p QAO"OpQ n"Op?"Q?<BgNϮ/.?< AO"OpQAjO"OpQ n"Op?"Q?<BgNϮ n0C"""p.=@`:0.rA0?HzN \2Ad/??.?.?.?.?.?.?.?.NB/.NҌ/.N>/.N>N^,_NuX99999999_______.__@XXXXXXXXXXXXXXXXXXXX____________________99999999__.__.____999___--- 9999____/,HNVAz-H?< HnN&/.?<BgBgN/.?<BgBgN/.N/.BgHnHnHnHnN/9=f?<NdN^,_NuNV?.?<+NAN^ _TNNV?<*NAN^NuNV?.?<-NAN^ _TNNV?<,NAN^NuNV/.?<NNN^ _XNNV?<NNN^Nu/,HNVAh-HN40. @Dr h4.JB4.B=@?N\0.H-@r-@$<-B/N& ".Ɓ-@/NlN^,_ _\N/,HNVAb-HN40.r h4.JB4. vH…ÀB=@?N0.H-@"<-A/N"$ ".ā-@/NN^,_ _\N/,HNVAD-HN4N=@ n r htB@0"n0.HvC2$n0.xD4N^,_ _ N/,HNVA@-HN4Nj=@ nr htB0"n0.Hv?C2$n 0.B@4N^,_ _ N/,HNVAz-Hp=@`dp=@`N0.2.AAREACCNhACCA|CCNMNZNNNHy=b?<N7NHy=b?<N8FHy=b?<N7NHy=b?<N8FN^,_Nu/,HNVA-H 9Dj-@ .rg@ @$(BftJ//N0p-@`"@$)B-B BpJ//(FN0`p3D`r#Djt#Dfv#Db/9=f?<Nˀ/9=f?<NˀN^,_Nu/,HNVA^-HNDN?9=vNNL?9D NN0?9DN/9=fN/9=fNʰNŽN^,_Nu/,HNVA-H?<HnN&/.?<BgBgN/.N/.BgHnHnHnHnN/9=f?<NdN^,_Nu/,HNVA\-HBgHyEHNAEH"Op?"Q?<N=@rAf =A`/9=f?<Ndp=@0.N^,_Nu/,HNVAD-Hp=@"9Dj-A ."9Dbg4.RB=B @&(B-C`0.=@0.N^,_Nu/,HNVAJ-H?9D HnHnHnHnN0.@?<}B?N(N**N)F0=@0.N^,_Nu/,HNVA-HN=@N0=@29D`tBW8.DWņECd v=C`86<D?N(?N(N+B?N(N**N)F2=A2.6<Co=C2.vCl=C?9D ?< ?.???N.N^,_Nu/,HNVA-HN=@29D`tBf6<=C`(?N(?N(N+BN)F0=@0.6<Co=C0.vCl=C?9D ?<?.???N.N^,_Nu/,HNVA\-H npR@=@2. =A`4 nN2/?8.XD?? A"Ox?"QN n C"Hn?< NN0.@-??.A"Op?"QN nC2p"QHn?< NN`0.@N??.A"Op?"QN n /p/Hzr/N4BdA]"O2" nC<]$O4$N,"C2"4.B??.0"Ot?"QN0.@P??.A8O"O p QN`A]"O2" nC<]$O4$N,C2"4.B??.CO$O t QN0.@P??. n0"Op?"QN?< AB/A]"O2"//?/?< ?<N\0.@??.A"Op?"QN n (B-@`8.XD??A$O"ON0.@-??.AO"ON0.@N??.AO"OpQN0.@??.AO"O p QN0.@P??.AO"O p QN0.@??.AXO"O p QN0.@=@`NN N^,_Nu 400/,HNVAr-H?9D HnHnHnHnN?<N?<NBgN^BgN?<N@?<Nv?<NBgBgN?<N0BgN?< NBgN?.?.?.?.N0.R@?0.@?0.@?0.@?N0.@(??.0.@(?0.2.AS@?N0.@I??.0.@I?0.2.AS@?N0.@??.0.@?0.2.AS@?N0.@K??.0.@K?0.2.AS@?N0.@??.0.@?0.2.AS@?N0.X@?0.@?AO"ON0.@-?0.@?AO"ON0.@N?0.@?AxO"O p QN0.@?0.@?A>O"O p QN0.@P?0.@?AO"O p QN0.@?0.@?AO"O p QNBgN(A0 9Dj-@ ."9Dbg @ /t/Hzrv/N8Dd.A]"O2" @C<]$O4$N,"C2"`*A]"O2" @C<]$O4$N,C2""@()B-D`l0.@@=@"9Db-A .rV6.8.:.ED]FBd4.XB?? @"Ot?"QN0.@-??. n "Op?"QN0.@N??. n"Op?"QN n /p/Hz4r/N4BdXA]"O2" nC<]$O4$N,"C2"4.B??.0"Ot?"QN`TA]"O2" nC<]$O4$N,C2"4.BP??.0"Ot?"QN?< AB/A]"O2"//?/?< ?<N\0.@??.A"Op?"QN0.@=@ n"(B-A`&N^,_Nu400 Saldo Ausgaben EinnahmenBuchungs-TextKtoBuNr/,HNVA-Hp3Dr 3Dt3D6<3D8<3DA^CD z Qz|Fp@r At@B6<C8<D3D ?9D HyDBgBgBgBgN3D N^,_Nu bersicht /,HNVA-H09D@e/9=b?<HnHnHnHnNN^,_Nu Ausgabekonten Graphik /,HNVA-H09Dn@e/9=b?<HnHnHnHnN/9=f?<NdN^,_Nu2015 Ausgabekonten Einnahmekonten99__/,HNVAd-HN4?<?.N-@r=A n0.rtBg" n R@"n0.rR@=@` n 0.N^,_ _\N/,HNVnAT-HN4p. R@rA Hn N:-@r?<nHnHnzHnrHnnN0.zrAV=B0.N^,_ _ON/,HNVnAR-HN40.=@2. =A?<pHnHnzHnrHnnN0.zrAg$.n-B`-A .N^,_ _XN/,HNVA -HN4 n /Bg?.Nr _ N^,_ _\N/,HNVA -HN4 n /Bg?.N> _ N^,_ _\N/,HNVtA&-HN4?<oHnHnHnxHntNN^,_Nu/,HNVA-HN4p=@ n0.-H0(2. Am 0(R@1@0(Am 0(R@1@0Am0R@0"n0.0)t BvCf0.R@=@`0.2. Am0 nR@"n0.p Q0.S@=@`N^,_ _\N/,HNVA-HN4 n 0-H0(rAfpT@=@` 0(R@=@/. ?N n 0.-Hp1@1@r. 1A4<1Bv 1Cx01D1D1@1@ !@ /. ?<?.N/. ?.N/. ?.A "Op?"QBgBgNFpT@=@ n p1@ n 0.0=@rAgD n 0."n 0.0)"n 2.2)A1@0.=@` n 0."H0)2."H2)A1@D/. n ?(?<?<BgBgBgBg?<?<N=@/. ?N n 0."n 0.0)"n 2.2)A1@0.=@0.N^,_ _ON/,HNVA-HN4p=@2. UASA=A n4(4(=B0.rAoS@=@ n4.4=B`/.?.?<BgBgp. ??<BgBgBgN=@/.?A "Or?"QBgBgNF n0.0(=@r=A0.2.Ag4.RB=B n0=@` n0.0.1@/.?.N n0.0( n2.2(Ao& n0."n0.0)1@ n0.0(=@ n2."n2.2)1A n2.1@2.=A0.N^,_ _ON/,HNVA-HN4p@2. A=@?.N-@/.?=@/.?.AO"OpQN=@/.?.AO"OpQN=@/.?.AnO"OpQN=@/.?.A4O"OpQN=@".-A .N^,_ _ON Desk Accessory 6 Desk Accessory 5 Desk Accessory 4 Desk Accessory 3 Desk Accessory 2 Desk Accessory 1 -------------------- Desk /,HNVA-HN4/. N>N^,_ _XN/,HNVtAB-HN40.=@2. tB=A&.-Cx?<HnHnHnxHntNN^,_ _PN/,HNVtA<-HN40. =@r=A$.-Bx?< HnHnHnxHntNN^,_ _\N/,HNVtA<-HN40. =@r=A$.-Bx?< HnHnHnxHntNN^,_ _\N/,HNVA0-HN4/.?. A "Op?"QBgBgNFN^,_ _ON/,HNVnAV-HN4 n pR@p2.=A n /N:-@r?<#HnHnzHnrHnnN0.z=@0.N^,_ _\N/,HNVtA4-HN4p=@". -Ax?<HnHnHnxHntNN^,_ _XN/,HNVtA4-HN4p=@". -Ax?<HnHnHnxHntNN^,_ _XN/,HNVtA<-HN40. =@r=A$.-Bx?<!HnHnHnxHntNN^,_ _\N/,HNVtA<-HN40. =@r=A$.-Bx?<!HnHnHnxHntNN^,_ _\N/,HNVAp-HN40.T@=@?.N-@/.?N^,_ _XN/,HNVA,-HN4/.Bg?.?.?.?.?.?.?.?. N=@rAg/.?N0.rAWvCWĄDxDWńEzEWƄFBd n4.-Ht/ /N/ n"h -Ip#@#@"r3A3@4. 3B6.3C8.zEWrAW@Fd@X/ CPO$ONӐ nP/A4O"ONӐ np1@0.=@0.N^,_ _ON/,HNVA-HN4p.r.AgAlR@tAA n0.-H0(tBW0(xDWņECd"h -IX/ C$Op?$QNӐ np.R@1@P/A"Op?"QNӐ n/C$Op?$QNӐ np.R@1@0.1@ 2. 1A`N^,_ _O N/,HNVAH-HN4/. BgHnHnHnHnN n0(rAW0(vCWĄDBd"n0.3@ 4. 3BN^,_ _O N/,HNVAN-HN4 n0.-H0(rAW0(vCWĄDBd"h /"n / ND`N^,_ _O N/,HNVA-HN40. H//<N5 м/HnN/p=@2. SA=A` n0.p1@Rn0.no n2. r1A$.-B .N^,_ _TN/,HNVAH-HN4p=@ n 0.rtBg R@=@`0.rAl=A0.=@0.N^,_ _XN/,HNVA4-HN4/.NB@d0. Hм//.N0N^,_ _\N/,HNVA-HN4p=@0.rdA] n 0(vCVDBd0.R@=@`0.rdAlzt=BS@=@`6 n 0.-H0(`/( n/( NN? NN`"h -I/ n/ NN? NN n/(?< NN n/(?< NN np//( N0`"h -I/ n/( NNH? NN n/( n/( NN*? NN n/( n/( NN ? NNd np//( N0`0@ @ b$@0;N xxRn0.no2.H//<N5"Ҽ//. N0N^,_ _XN/,HNVA-HN4 n 0.-H0.1@2.1A4.1B6.1C8.1Dz01E1E|FWrAW€B@d0.tB=@0.t B1@p1@ vCW|FWAEd2.1A :. 1E`!@ 2.zEg/. ??.NN^,_ _ON/,HNVA-HN4p=@ n2(tBg` n0.0(r AtBf0.R@=@` n0."n0.0)r FAA1@0.R@=@/.??.?.?.?.?.?.?.?.?. Nh0.=@0.N^,_ _ON/,HNVtA>-HN40.=@2. =A$.-Bx?<(HnHnHnxHntNN^,_ _PN/,HNVtA6-HN40. =@".-Ax?<rHnHnHnxHntNN^,_ _\N/,HNVtA^-HN4 .-@x2.=A4.=B6.=C8.=D:.=E<. =F?<*HnHnHnxHntNN^,_ _ON/,HNVAH-HN4/.?. HnHnHnHnN-HN40.=@2. =A?<jHnHnzHnrHnnN0.z=@0.N^,_ _XN/,HNVtA~-HN40.&=@2.$=A4."=B6. =C8.=D:.=E?<lHnHnHnxHntN n0.0"n2.2$n4.4&n 6.6N^,_ _ON/,HNVA8-HN4 .R-@ n"<//N5z"0"n r2N^,_ _O N/,HNVRA-HN40.=@p2. =Art. 6<Co =CT`=BTv=CV8.T=DR`"0.V@2.VtA 0C3RnV0.VnRo?<Bg?.T?<HnHnHnHnpHnX?<NN^,_ _ON/,HNVA-HN4?.?. NN^,_ _XN/,HNV8Ad-HN40.=@P2.=AR4.=BT6. =CV?<BgBg?<HnHnHnhHnPHn8?<N?.?. NN^,_ _PN/,HNVA<-HN4HnHnN?.?.?.?. NR?.?. NN^,_ _XN/,HNVA -HN4?.?. ?.?. NN^,_ _XN/,HNV8A`-HN40.=@P2.=AR4.BS@=@T6. CSA=AV?< ?<Bg?<HnHnHnhHnPHn8?<NN^,_ _PN/,HNV8Aj-HN40.=@2. =A4.=BP6.=CR8.=DT:.=EV?< ?.?<?<HnHnHnhHnPHn8?<NN^,_ _ON/,HNVA,-HN4?<?.?.?.?.?.?. NLN^,_ _O N/,HNVA,-HN4?<?.?.?.?.?.?. N N^,_ _O N/,HNV8AX-HN40.=@P2.=AR4.=BT6. =CV?< ?<Bg?<HnHnHnhHnPHn8?<NN^,_ _PN/,HNVA&-HN4?.?.?.?. Bg?<N$N^,_ _PN/,HNV8A~-HN40.=@P2.=AR4.BS@=@T6. CSA=AVxDVŶDVFEd z=E`=D?<Bg?<?<HnHnHnhHnPHn8BgNN^,_ _PN/,HNVA&-HN40.2. An =@`=A0.N^,_ _XN/,HNVA&-HN40.2. Am =@`=A0.N^,_ _XN/,HNVA-HN40."2.A? n0"n4B? NNN=@0. 2.A? n0"n 4B? NN(=@ n/?."? NNP _0"n/ ?. ? NN:"_2 n0.$n2A0&n 0.2A60rA^0A^C=B0.N^,_ _ON/,HNVtA,-HN4p=@?<kHnHnHnxHntNN^,_Nu/,HNVtA,-HN4p=@?<kHnHnHnxHntNN^,_Nu/,HNV8A<-HN40. =@?.Bg?<BgHnHnHnhHnPHn8BgNN^,_ _XN/,HNVA-HN4?< ?. NN^,_ _TN/,HNV8AT-HN40.=@2.=A4.=B6. =C?<Bg?<BgHnHnHnhHnPHn8BgNN^,_ _PN/,HNVA"-HN4?. N?<?. NN^,_ _TN/,HNVA-HN4?<?. NN^,_ _TN/,HNV8AB-HN40. =@Pr=AR?<BgBg?<HnHnHnhHnPHn8BgNN^,_ _TN/,HNV8AR-HN4?.?. N0.=@2. =A?<lBg?<BgHnHnHnhHnPHn8BgNN^,_ _XN/,HNVA"-HN4?. N?<?. NN^,_ _TN/,HNVA.-HN40. rA?N?<h0. rA?NN^,_ _TN/,HNVAl-HN4?. N0. =@rAo$t=BS@=@ vCox=D@=@ ?<?.N*0.rAo?<?. NN^,_ _TN/,HNV6AD-HN40. =@2.=A?<'Bg?<BgHnHnHnhHnPHn8BgNN^,_ _XN/,HNVA-HN4?<j?. NN^,_ _TN/,HNV8AB-HN4p=@P2. =AR?< BgBg?<HnHnHnhHnPHn8BgNN^,_ _TN/,HNVA-HN4?<?. N N^,_ _TN/,HNV2A-HN4Hn2Hn4Hn6NBgBgNn0.=@P2.=AR4.BS@=@T=AV6.BSC=CX8. DSA=AZ:.=E\<.DSF=F^=E`0.=@b?<BgBg?<HnHnHnhHnPHn8?<N?.4?.6NN^,_ _PN/,HNV8A`-HN40.=@P2.=AR4.BS@=@T6. CSA=AV?< ?< Bg?<HnHnHnhHnPHn8?<NN^,_ _PN/,HNVAr-HN4HnHnHnNBgN?<NHnHnHnN?.Nx?.?.?.?. N*?.N?.N?.NLN^,_ _PN/,HNVtA6-HN40.=@". -Ax?<NHnHnHnxHntNN^,_ _\N/,HNVA-HN4?</. NN^,_ _XN/,HNVA-HN40. ?BNjN^,_ _TN/,HNVA4-HN4NrAf ?</N2NR@?NN^,_Nu/,HNVAB-HN4NrAo*NS@?NNrAf ?</NN^,_Nu/,HNVA<-HN4p?/Np=@N=@` NxRn0.noN^,_Nu/,HNVtA,-HN4p=@?<kHnHnHnxHntNN^,_Nu/,HNVtA,-HN4p=@?<kHnHnHnxHntNN^,_Nu/,HNVA8-HN4p.R@rAHnN:/?. N=@0.N^,_ _ON/,HNVA-HN40.F=@2.@=A4.D=B6.B=C8.:zE=D<.8=F0.6=@2.4=A4.2=B6.0E=C8..=D <.,=F 0.*=@2.(=A4.>=B:.<=E&.$-C?<HnHnHnHnN0.=@ n2.0"n4.2$n6.4&n 8.6(n :.8*n<.:0.N^,_ _O/,HNV8AT-HN4p=@lr=Apt=Bt6. =CPx=DR?<BgBg?<HnhHnHnHnPHn8BgNN^,_ _TN/,HNV8AJ-HN4p=@t2.=A4. =B?<lBg?<BgHnhHnHnHnPHn8BgNN^,_ _XN/,HNV8AN-HN4p=@lr=Apt=Bt6. =C?< Bg?<BgHnhHnHnHnPHn8BgNN^,_ _TN/,HNVTA-HN4p=@r=At=B6.=C8. =Dz=EV|. =FT`$0.VR@@2.VtA 0C3RnV0.VnTo2.=Ap4.=Br6.=Ct?< ?< x. TD??<HnHnHnHnpHnXBgNN^,_ _O N/,HNV8AJ-HN4p=@t2.=A4. =B?<'Bg?<BgHnhHnHnHnPHn8BgNN^,_ _XNA@#FAFC!It0B BAINBt0B  HyINN0BgNAHLar fSfr?/LLNuHLar fSfr?/LLNuHLar fSf`U?/LLNuHLahr fSf`S?/LLNuHLaBr fSf`R?/LLNuHLar fSf`T?/LLNu#L _  g "_Jjp` 0CLp" g $_Jjr` 2ELrg\HLGKe$4SBkQ$SpQ CK` $SkQ$SrQEKLLJfpC$I/9LNu/,HNVA.-H V0(@d p =@`"h0(r=A0.N^,_Nu/,HNVA<-H V0(@dN4N&`0(R@1@"hrA^1BN^,_Nu/,HNVA-HBgN(A0 p=@r=A4. nvC^=D NN.r Af NNb` NN=@r+AWv-CWĄDBdCW=B NN4 NN=@2.Ad NN0.r0A\v9C_D8.FDDBdPt=BA]"O2"?</< N**@?N(N,"A0 NN NNp=@`0.@d`$p=@2.t.Bfv=Cp=@ NNz NN2=@r0A\v9C_DBdFt=B8.RD=DA]"O2"@?N..?N(N+BN,"A0 0.4.A]ĀDC^ĀD@d0.@d`x0.reAWvECWĄD8.DBdPt=Bz=E NN NNz=@r+AWv-CWĄDBdCW=B NN NNN=@`t=B0.r0A\v9C_DBd*t=B8. @D=D NNL NN=@r0A]v9C^ĄD8.DBd4.zڴE\r&A_@FdX0.@d(A]"O2"?N..N+BA0 `$A]"O2"?N..N**A0 `8ACp "Qp@Aʞ("O| "Q?<N6` 0.@d*0.@dA]"O2"N*A0 `4ANCp "Qp@Aʞ("Or "Q?< N6 n C]$O4$0 N^,_ _XNError during READV of REAL-number Overflow during READV of REAL-number HL _2tBQp 4BAAc/LLNuHyN\Range error during set-operationHL _24p vBQAn68DCCc 0AgRB`/LLNuHL _C E prVW.J?/LLNuHL _C E prVV.J?/LLNuHL _C E p"FŸVW.J?/LLNuHL _C E p"F™VW.J?/LLNuHL _2/ 4BAp Ac7V`tO>/LLNuHL _"_24BAp Ac1V`t>/LLNuHL _C p"Q/LLNuHL _C p"ÙQ/LLNuHL _pC "FÙQ/LLNuB9M`PMBy8 _0g$_jp"_// HM N0LM BtJ@fL)J9Mf f@| i f0Bi `( f |Ji f3| `4<gG BQB) @e *:f&Jrt `e QG tWJBkG 3 J9Mf( fpBi G#Kt`\ f3| p`J g( f*3| H@?NAX"_Hi ?<ANA\L|#|3| N _"_$_* g g fH/ N0LH/ apLHHi Hj Bg?<VNA LC G 0<gQ|%|5| N _"_/)#| g g f*JtgJi ka0) k @e??<>3| NAXNu/")x itg$H@//?) ?<@NA LJof _Nu _4` _t6 Bo r aSB`2aNH?M& _r ar a/L?M&Nu _r aN _4` _t"x0HgJJjDxvCMfzp cRЀ`|e W0R"f`6 _4` _t2xJAjDAxvCMfp0 2H@0RJAfJg<-RBlCSBr aQSCaQN _"_v` _"_60`JfQ$ItRJf` _4v` _46"_JBjtJCkgCe4` BSCr axQSBkalQN _6kfv2_t Cc"4YBv` _6kfv"_t Cc4QBvSBkr a(QSCC" A0 9c^a JgYC`NH M"oA/ NHL MNu _4` _t6 Bo r aSB`2aN _4` _t"x0HgJJjDxvCMrzp cRЀ`|e W0R"f`6 _4` _t2xJAjDAxvCMrp0 2H@0RJAfJg<-RBlCSBr aQSCaQN _"_v` _"_60`JfQ$ItRJf` _4v` _46"_JBjtJCkgCe4` BSCr axQSBkalQN _6kfv2_t Cc"4YBv` _6kfv"_t Cc4QBvSBkr a(QSCC" A0 9c^a JgYC`N*opodRNu/,HNVA.-H"V ip2)AlpR@p0. N^,_ _TN/,HNVA@-H0. r A^vC_ĄDBd?<0 VN`t"VA0? INvN^,_ _TN/,HNVA<-HA]"O2"p?N(N'2=AAdA]"O2"N*A0 2.@nt=B=@ `4. @nvCl=C=@ p=@A]"O2"A0 A]"O2"r?N..N(4BdA]"O2"p?N..N(2Adr2.RA=At&Bo:A]"O2"?N..N+BA?N..N+BA0 `$A]"O2"?N..N+BA0 `n`A]"O2"?N(N(*4Bd0.S@=@rڰAl>A]"O2"t&?N..N**D@@?N..N**A0 `&A]"O2"D@?N..N**A0 A]"O2"p?N..N(4Bdl0. rAg4.BR@=@`4.QBTB=B0.t Bo8A]"O2"?</< ?N..N+BN,"A0 `:Am4A]"O2"?</< ?N..N+BN,"A0 A]"O2"v?N..N(8Dd.8.RD=DA]"O2"?N..N+BA0 =C n nfA]"O2"N)R0=@2.@0AC]$O4$0.?N(N,t?N..N**C2"Rn`0. rAf4.Bd?<- NN` ?< NNp.? NN?<. NNp=@2.QARA=A0.nnR@? NNRn`?<E NNx0.rAm?<+ NNb`?<- NNT0.D@=@0.r H@0? NN40.r HH@@0? NN`4.RB=B6.Am =B`x=D8.@RD=D:.EdRD=DRD=D:.=E0.nn?< NNRn`0.@d ?<- NN0.rAn?<0 NN`&t=B=@0.nn? NNRn`?<. NNTp=@2. =A0.nn2.A? NNnRn`N^,_ _N(_"_/ A) g  f$)Jtf&H //?) ?<@NA LJovfNu$ix&i|fa`pRgf#Jx`H")x it#Hxg$H`//?) ?<@NA LJofLNu )fNuHyIJkp` Hy"0< LNFREWRITE required prior to WRITE or PUTDisk or directory full _$_"Wp i e)H/ NL4NH/ NLp)` _"WJ9Mtf*J)f i e)H/ NL i d)J)fJg i dB9MtJ)fBiQMNz`z _$_"WptvH/ HyMra<29MrXL- -fJfVp`4  fJg*`F0e@  b:Ԃih(؄ib؄i^ԄiZԁRC  g i e) 0e 9cJg:JgD i d J)gPMtJf 6Höf4N$NHyZ0<`Hzh0<NF _$_0"Wt&JRJ)f:H/ HyMra`29MrXL i d J)PMtf RBBe`Be`N Bad digit in number encounteredOverflow during READ of number _$_"W2/RMybp1Ro4Np `z`z _$_ptvH-MzHyMva29MvL-Mz -fJfBp`  fJf4J9Myg`*0e$  bԂi8(؄i2؄i.Ԅi*ԁRC`Jg&JgDJf 6Höf4N$NHy0<`HzV0<NF _$_0t&JRHMzHyMva 29MvLMzJ9Myf RBBe`ΰBe`NBad digit in number encounteredOverflow during READV of number(_ _/ C (g ( fJ(g J(fv`z$($IJtfpH / /?( ?<?NA LJo*fJg  f"J` g  Wf NuJg Jh gJ(f !|Nu!|NuH$hx&h|gpR@@gf!JxL`H &ht!KxJh f0abLEJ@g *f` J9Mg R@Bh` / /<?( ?<?NA LJlp!K|JfnL` rH@Hsp/Bg?<?NA LRA3J9Mg^ fSA` fL AgUH@Hz+p 3 dp` SAH@Hz$p/?<?<@NA LJ9Mg`z fSA` fSAH@Hzp` f>H@Hzp `H@Hzp 3 dp/?<?<@NA LQ` d4 gb9@HHzxp/?<?<@NA LJ9Mg& AfH@HzFp/?<?<@NA L NuHzR0<`Hz$0< LNF  p Exit q C^AReset required prior to Read or GetAttempt to read past end-of-file/,HNVA-HN4A ]"O2"A0 p.@=@0.J@nBgN(A0 `0.r(AmA]"O2"A0 `|0.rH=@0.2.tA02<v8.zHĉHDDiAA0.rAl0.R@=@0.rA`A]"O2"A0 .2.N^,_ _\N/,HNVA-HN4A ]"O2"BBgN(0@dBBgA0 `fA ]"O2"?</<N'0@d0p=@?</<A ]"O2"N+BA 0 `A ]"O2"?</<N'0@d6p=@?</<A ]"O2"N+BN*A 0 `HA ]"O2"BBgN'0@d&p=@A ]"O2"N*A 0 `BnA ]"O2"?BGHGv8ބdRC8ބdRC>HGvކdRC8ބdRCHGv48ބBޅB:>HG8ކkE߇SDkBg|d RdRDUJg( DbRD ME \/LMNuBBo `HM _0/2// v/ 8://~/?DD?DBo 8JgJgG|HD8H@0zr)`рe efef<څ߇QgRCgڼd RGdSCJCkD|blo/EC \/LMNuoHM _p2/g/ f/W?o `ֲ@e:f$/&e&f // d*B6//J/ k`(&// S@Q`&// `R"/?/[4JfFӃddRdRR/eJd RdRd`/AG o Jk`z0H*kS/JkFft grkRBjIHA~`( dtHAI.kRBҁjBG` BBRBӁj/e2/AG o Jk\/LMNuHM _0 @&b(C.|C/)?/LMNuHy/~`Hy/fLMN\ Hz@CPt$> nk(:C@hԥ*5 c_1ɿ1.Ź^ k:v #-xŬX&x2n)h? SYQa@%oNˏ'?9x!7I|o|@Eŭ+E75vV 9@{pvPFloating point overflowFloating point division by zero 8 NuH1 _ g8e8 d/L1NuHy1`Hy1N\t`t _"_ gR e6G1$S" geb"*f&"`&A%S"`&J`а|gb<|fP"91gH$A#1`:"91g6$A#1`("91g$$A#1` @ g"91g $A#1"`"E8 &R"$b Hy1N\Jgr"Qd2`"SjN _"_ " g8e8 dgR m @ e@E1"fB#@B$`p&A"+ef "'I`Z"#@B$`L$K`ư| f"1#1`4|f"1#1` |f"1#1` "1#1NHeap overruns stackPointer NILPointer not in heapHM _0"_e /LMNuHy4 N\/B9M/|MNuHM _0 @f0"|MMp` "_J@jpEMr4@ BbBS@kQ/LMNuHM _4SBkt82$_rAbd0 @f0"|MMp` "_J@jp6ADb6CG0IS@k$eQ/LMNuHM _4k2SAk0"_p6B@bE0)CS@kQ/LMNuHM _2$_r0 @f0"|MMp` "_J@jp@kS@kv&J$IRC4(K Vg RQBg`?/LMNuHM _4kF2SAk>0 @f0"|MMp` "_J@jpJBg@b6B@oCEMSBkQ/LMNuString overflow _pJ.g 0( hNVg4 ( hg( hH`0( hNVg ( hg hHfXgr"ODd2Sk "Sj` _"y8 e Hy4N\N#N#N .f -|4`-|4 nNнNf yNNStack overruns heapH?N _z gBjDRE"g8jDRE$6HBJBg8HAJAf,HBJBf$ւi EdD.` $HB8`B/L?NNu0NvDNHN|` HN| _z f0NjDRE"g`jDREdJgR(`DfxJg<`DxSDbb JgHA8`"tcRЀ`xeWJg(MdD.`B/LNNu098Nu098 By8 Nu _38By8 NBy8 Nu[3][][ Abort ]Copyright 1986, CCD and OSS, Inc. &H@  "       0 0     <   "6     >   B     V Z  "  4   <    "6    0                   $  ,:6L &  F  @  & 8        ""f00  8 (B,N,22""z4p   6>T   000    "8 8R&V&84..,40F22R4   f<   4"t* *pHB    2    2   "  2   2 8::* &j 2   2 8. @  ::* & 4. @  :: &     &  H&   ,@@@@@@@@@@DDDDDDDDDD*" " " " " " " " " " " " " " " " " " " "^           " " " " " " " " " 6*&4$$$$$N *& *& *& *& *& *H  T,f&b2D>: &  2$@&@2&.@,& & * 6($$$B. ~(*@. @&`2B F0(V(PL<PP*" " " " " " `"$(,8X&4  $* &(2  8,<"$(,8X(T: &  2*TTXX<@^ &(@*  &   &  |vZ$H                        ($   $ & &   ,D6..$ .: 8   "(,,DDL*0*&2,.(6(****F   ,,,,,,..0000"(,,H,,*0&0.(r 0(     &0"4">&<"<  "   >6 (4X*   ( D&F  *  J* < " 4 $  6   $LL &| &&(  Dj4*@44ؘ$fx&j($&$ 6 0 0 $"$,( ( 0 0 06 ,Lb8z,F b":,>4@" f,tPdv`  rV "2 * R">:d"F:6B.x*6J"*JFFFF ( B4r"" >$8$8rJ" *,JJ0" J " 4T ^"BBL :r >>  0 ,H ,,6 8 ,2 v8 ,6 ,,T  T* ,,  .6   *jV0b,4 "T & & (,&  H           Z6:6J"Z"ZH > B ">       "$"f< . >*>v(*8 $ $ & & . *    BBb4 2JLJj.  $0"Z0&(.  ^ (  l,R `lX$Fr44*(*" ,D(N0$.$$$$H* z  f H F  2  "D    * "FV ( *@ B @ ( V   nNX` .LN^NuNV-n n R@-H Jgx %f0 %fR `"/.2%0T$$$ %J` JJ  Datei Drucken Optionen KONTO-Info ...-------------------- Desk-Zubehr 1 Desk-Zubehr 2 Desk-Zubehr 3 Desk-Zubehr 4 Desk-Zubehr 5 Desk-Zubehr 6 Neu ... ^N Laden ... ^L Sichern ... ^S------------------- Beenden ^X bersicht ^ Kontensalden ^K Graphik ... ^G Drucken ... ^D Autoladen ... ^A K O N T O Autor: Dirk NakottVersion 1.00 24.06.1990(c) 1989,90 Dirk NakottErstellt mit ST Pascal plus von CCDOKUHRBERSICHTGRAPHIKNeueingabeBuchungs-Nr. :0001Auszugs-Nr. :-____9999Konto :-___999InfoBuchungs-Datum :-------__.__.____XXXXXXXXBuchungs-Text : ____________________XXXXXXXXXXXXXXXXXXXXBetrag :0&_______.__9X9999999DMInfos :XXXXXXXXXXXXXXXXXXXX bernehmen Ende ndern Buchungs-Nr. :0001Auszugs-Nr. :-____9999Konto :-___999 Info Buchungs-Datum :-------__.__.____XXXXXXXXBuchungs-Text : ____________________XXXXXXXXXXXXXXXXXXXXBetrag :0&_______.__X99999999DMInfos :XXXXXXXXXXXXXXXXXXXX ndern Abbruch Anzeigen Buchungs-Nr. :0001Auszugs-Nr. :XXXXKonto :XXXBuchungs-Datum :XX.XX.XXXXBuchungs-Text :XXXXXXXXXXXXXXXXXXXXBetrag :XXXXXXX.XXDMInfos :XXXXXXXXXXXXXXXXXXXXOK Konten definieren KtoBezeichnungSeite 1-___999 :@____________________XXXXXXXXXXXXXXXXXXXX-___999 :@____________________XXXXXXXXXXXXXXXXXXXX 1 2 --___999 :@____________________XXXXXXXXXXXXXXXXXXXX-___999 :@____________________XXXXXXXXXXXXXXXXXXXX 3 4 -___999 :@____________________XXXXXXXXXXXXXXXXXXXX-___999 :@____________________XXXXXXXXXXXXXXXXXXXX 5 6 -___999 :@____________________XXXXXXXXXXXXXXXXXXXX-___999 :@____________________XXXXXXXXXXXXXXXXXXXX-___999 :@____________________XXXXXXXXXXXXXXXXXXXXOK-___999 :@____________________XXXXXXXXXXXXXXXXXXXX Sichern Name :-____aaaaJahrgang :-____9999Infos :XXXXXXXXXXXXXXXXXXXX Abbruch Sichern Laden Name :-____aaaaJahrgang :-____9999Infos :XXXXXXXXXXXXXXXXXXXX Abbruch Laden Neu Neu lscht alleBuchungen undKonten, die sichim Speicher befinden. Neu Abbruch Graphik-Optonen OK Einnahmekonten AusgabekontenBalkenbreite :Balbenabstand :-__99-__99AnzeigenBalkengreBalkenmuster Drucken-Optionen Drucker Datei :-------________aaaaaaaa Draft NLQ / LQ aller Buchungen nur Konto :-___999Zei./Sei. :-__99OKAusgabemediumbersichtsdruckQualittSeitenlayout ndern Bitte Nummer der zu nderndenBuchung eintragen.Buchungs-Nr.:en:____9999OK Anzeigen Bitte Nummer der anzuzeigendenBuchung eintragen.Buchungs-Nr.:en:____9999OK Autoladen-Optionen STARTName :-____aaaaJahrgang :-____9999OK[3][ |Es befinden sich noch|ungesicherte Daten im|Speicher.][egal|zurck][3][ |Drucker streikt ?!?][nochmal|Abbruch][3][ |Dieses Programm luft|nun in der hohen Bild-|schirmauflsung.][Abbruch]8@  $ r (   $  @8????????? *J庪KK*KJE         sssss!0P|}DADAdqUALAD|D9DDD|DE8D |8DD8EDDDddTTLLDDED(H||@@xD89DEDEdEQTE1LED9D}AAqAA}8D@xDD8|8DD8DD88DD<D81Q0P|EDd$TG|LEE}AAqPA0A}?@  @?  H?H??@  @?  @ H@ ((((( (@(@(!(( ( ((!(@H $  ?@ ?( @ !@@A  !@@ADDEDDEDDE!!!!!! !!!!!!UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU?@  @?  H? 9 j    $ D d  x  0""X""##X##$ $$ q $"v$?JKq ]bcHHuz 5?J h}~q QQ  9Nc q   !"4890KVW i~0b q!2GKOSh}!` 4890:>?@DHLav-159Ncx|   q  ( - 2 B G L \ q r q    q V h iq m p q     XT       q        & / 8 ; < C F G Q T U f i j w {     0  (  q  ! & + 3 > ?q   q   8  (# <- 0P50 *60 *P70 *80 *P90 *:0 *P;0 *<0 *P=0 *>0 *PP $ ( /  8 P  B S h {$ 6I\p  %  %& &(&D'  A* 0T &0v <&00&00 0 0 00 1 0 1B"0 1d 0 1 0 1 0 1 0  1" 0 +&` L&|d&& "  &    & $ ' T W '$  %"+'@'\'x' "  '  (  ' x '   ( % +(  (< (X#(t : (  X  (   (   ( '!))    ) )8)T)p ) ) )# ) )**4*P*l#* * * * * +# +0 +L +h + + +  +(+ % , $ $ $   ,,  7  ,H  Q  ,d  s ' }  % ,%% %   ,    ,    ,   '   , %,00     0 F ' L (-  j-( r-D    @%:  @%H  @%V  @%d @%r @% @% @%    -`-|--  - ,- . .$ .@   .\  = .x H . V. k  .   .  "/ /  /< /X # /t     /' 0 $ /   @ _ r /'   $ /0% %%    0    08' 24568:}8|0005000510005031991Gehalt Feb 1991, 10000.00e@}|0006000640005031991Telefon Feb 1991, 452.12eb\(}89>MXd6  d6M $ 1d4 $2  d!')Fd: d8 31P2`P2  22222 K2 .2+2$0\ A7 _d>F.d=  )d2dd`&AB,$4 S d76d?Y6<d= dd2dR"  26/22K *IW2")* 6- < >d12F7 4 Ka6V d8 $Z\\@ZdP? /AB.* bsp 1991 mJQ.. 1AKEFILE ͍7RSORT ASM t3TWRUPR ASM w3WTRCMP ASM y3XTRICMP ASM {3Z,TRNCMP ASM 3\TRNICMPASM 3^OLOWER ASM 3aOUPPER ASM 3cERSION ASM 3eMCCESS C 3fTYPE C 3h+NVPACK C 3s YSTEM C 3wLIB CMD :W7xINYSTUPASM 3yM TRCMP BIN `W7|wTRNCMP BIN iW7}TRICMP BIN rW7~TRNICMPBIN {W7OUPPER BIN X7OLOWER BIN X7ERSION BIN X7SORT BIN X7*WRUPR BIN X7QINYSTUPBIN X7NVPACK BIN HX7YSTEM BIN VX7TYPE BIN jX7XCCESS BIN |X7E100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:100Gehalt_s:s:190 Sonstigess:s:400Telefons:410 Dauerauftrag:420 Haushaltsgeld430Kino/Konzerte/Kneipe440Auto/Konzerte/Kneipe440Auto/Konzerte/Kneipe440Auto/Konzerte/Kneipe440Auto/Konzerte/Kneipe440Auto/Konzerte/Kneipe490 Sonstigeserte/Kneipe LOCAL auto /* auch die Speicherklassen */ #define MLOCAL static /* groschreiben knnen, alles */ /* andere sieht nicht aus */ #ifdef MARK_WILLIAMS # define BYTE char /* 8 Bits mit Vorzeichen */ # define UBYTE unsigned char /* 8 Bits ohne Vorzeichen */ # define WORD int /* 16 Bits mit */ # define UWORD unsigned /* und ohne Vorzeichen */ # define LONG long /* 32 Bits mit */ # define ULONG unsigned long /* und ohne Vorzeichen */ # define VOID void /* T I L U I E =========== VORAB: ------ Inhalt des Ordners Tiluie: TILUIE.PRG Das Programm TILUIE.RSC Das RSC READ.ME Die Anleitung ALLGEMEINES: ------------ Dieses Programm ist ein PD-Programm. Es ist also frei kopierbar und darf (soll) an jeden ST-User weitergegeben werden. Bei diesem Programm handelt es sich um ein Adressenver- waltungsprogramm das die gaenigen Funktion implementiert hat und unter GEM arbeitet. Die wichtigsten Funktionen sind sowohl mit der Maus als auch mit der Tastatur anwaehlbar. Es gibt zwei Fenster. Das "Hinzu"-Fenster, in dem Adressen geaendert und neueingegeben werden und das "Zeigen"-Fenster, in dem Adressen angezeigt und gesucht werden. STARTEN VON TILUIE: ------------------- Klicken Sie einfach die Datei TILUIE.PRG mit einem Doppel- klick an. DIE MENUELEISTE VON TILUIE: --------------------------- MENUE DATEI: Laufwerk... Hier koennen Sie das aktuelle Laufwerk festlegen. Laden ... Laden einer Adressen-Datei (*.ADR). Speichern ... Speichern der im Speicher befindlichen Adressen. Lschen ... Hierauf erfolgt eine Dialogbox, in der Sie aus- waehlen koennen, ob Sie entweder die Adressen im Speicher loeschen moechten, oder eine Datei von der Diskette oder Festplatte. Autoladen ... Hierauf erfolgt eine Dialogbox, bei der Sie festlegen koennen, ob beim Programmstart automatisch eine Adressen-Datei geladen werden soll. Hierzu geben Sie einfach den Namen der Datei ein. Quit Verlassen des Programms. Befinden sich noch nicht gespeicherte Adressen im Speicher erfolgt eine Warnmeldung. MENUE ZEIGEN: Dieses Menue ist nur aktiv, wenn das "Zeigen"-Fenster das aktuelle Fenster ist. Loeschen Loeschen der gerade sichtbaren Adresse. ACHTUNG! Es erfolgt keine Sicherheitsabfrage. |<---- F1 Zeige die erste Adresse an. Auch durch druecken der Taste F1 erreichbar. <----- F2 Zeige die vorherige Adresse an. Auch durch druecken der Taste F2 erreichbar. -----> F3 Zeige die naechste Adresse an. Auch durch druecken der Taste F3 erreichbar. ---->| F4 Zeige die letzte Adresse an. Auch durch druecken der Taste F5 erreichbar. Aendern +F5 Bewirkt das Kopieren der Adressen vom "Zeigen"- Fenster in das "Hinzu"-Fenster und das Loeschen der Adresse aus dem Speicher. Auch durch druecken der Taste Shift F5 erreichbar. Kopieren +F6 Bewirkt das Kopieren der Adresse vom "Zeigen"- Fenster in das "Hinzu"-Fenster, aber kein Loeschen aus dem Speicher. Auch durch druecken der Taste Shift F6 erreichbar. MENUE SUCHEN: Dieses Menue ist nur aktiv, wenn das "Zeigen"-Fenster das aktuelle Fenster ist. Suchen ... Hier haben Sie die Moeglichkeit Suchkriterien einzu- geben. Auch der Allquantor '*' ist erlaubt. Also zum Beispiel: 'sch*' sucht alle Adressen, die mit 'sch' beginnen. Auch durch druecken der Taste ClrHome erreichbar. <----- F7 Suche Adresse von der aktuellen aus in Richtung erste Adresse, die die Suchkriterien erfuellt. Auch durch druecken der Taste F7 erreichbar. <----| F8 Suche Adresse von der letzten aus in Richtung erste Adresse, die die Suchkriterien erfuellt. Auch durch druecken der Taste F8 erreichbar. |----> F9 Suche Adresse von der ersten aus in Richtung letzte Adresse, die die Suchkriterien erfuellt. Auch durch druecken der Taste F9 erreichbar. -----> F10 Suche Adresse von der aktuellen aus in Richtung letzte Adresse, die die Suchkriterien erfuellt. Auch durch druecken der Taste F10 erreichbar. MENUE HINZU: Dieses Menue ist nur aktiv, wenn das "Hinzu"-Fenster das aktuelle Fenster ist. Uebernehmen F10 Die Adresse, die sich im "Hinzu"-Fenster befindet, wird in den Speicher uebernommen. Auch durch druecken der Taste F10 erreichbar. Neueingabe F1 Ermoeglicht das Loeschen des "Hinzu"-Fensters. Es erfolgt eine Warnmeldung. Auch durch druecken der Taste F1 erreichbar. MENUE DRUCKEN: Dieses Menue ist nur aktiv, wenn Adressen geladen sind. Nummern ... Die Adress-Nummern werden mit dem dazugehoerigen Namen aufsteigend gedruckt. Es erfolgt eine Warnmeldung. Listen ... Hiermit koennen Adressen-Listen gedruckt werden. Auf ein Blatt Endlospaier passen 17 Adressen. Falls Sie Einzelblaetter verwenden, muessen Sie die Angabe 'Adressen/Seite' auf 14 oder 15 setzen; jenachdem ob Sie einen automatischen Einzelblatt- papiereinzug besitzen oder nicht. Etiketten ... Hiermit koennen Etiketten gedruckt werden. Bei den dazu benoetigten Etiketten-Klebern handelt es sich um Etiketten der Grsse 88,9 x 35,7 mm. Diese Etiketten stellt z.B. die Firma Zweckform (Computer-Etiketten Nr. 3608) her. Auch erhaeltlich beim Fachhaendler. ZUM "HINZU"-FENSTER: -------------------- FENSTEREINTRAEGE: Adress-Nummer Jede Adresse bekommt eine Adress-Nummer, um die Adressen eindeutig von einander unterscheiden zu koennen. Dies ermoeglicht z.B. gleiche Namen mit verschiedenen Postanschriften usw.. Hiernach kann gesucht werden. Name z.B. Dirk Nakott Programmautor Strasse PLZ/Wohnort Telefon Geburtstag Sollte klar sein. Bemerkungen Nach den ersten sechs Buchstaben kann ebenfalls ge- sucht werden. Man kann hier z.B. verschiedene Klassen von Adressen anlegen. Match-Code Hier muessen die ersten sechs Buchstaben des Nach- namens eingetragen werden. Nur Kleinbuchstaben werden akzeptiert. Fuer z.B. 'Kleiner' 'kleine' eintragen. Bei 'Auel' eben nur 'auel'. Nach diesem Eintrag werden die Adressen aufsteigend sortiert. Hiernach kann gesucht werden. PLZ PLZ. Hiernach kann gesucht werden. ZUSAMMENFASSUNG DER TASTATURKOMMANDOS: -------------------------------------- F1 Zeige erste Adresse oder Neueingabe. (abhaengig vom aktuellen Fenster) F2 Zeige vorherige Adresse. F3 Zeige nachfolgende Adresse. F4 Zeige letzte Adresse. +F5 Adresse aendern. +F6 Adresse kopieren. F7 Suche Adresse Richtung <----- F8 Suche Adresse Richtung <----| F9 Suche Adresse Richtung |----> F10 Suche Adresse Richtung -----> oder Adresse uebernehmen (Abhaengig vom aktuellen Fenster) ClrHome Suchkriterien eingeben. Help "Hinzu"-Fenster als aktuelles Fenster nach oben. Undo "Zeigen"-Fenster als aktuelles Fenster nach oben. Tab Cursor eine Eingabezeile nach oben. Return Cursor eine Eingabezeile nach unten. Esc Eingabezeile loeschen. NACHWORT: --------- Ich hoffe, dass Sie viel Spass mit TILUIE haben werden. Fuer Hinweise auf mir unbekannte Fehler und Verbesserungs- vorschlaege bin ich sehr dankbar. Meine Adresse : Dirk Nakott Hieberstr. 36 7000 Stuttgart 80 subq.l #$1,d2 * Damit die Lnge stimmt movea.l $18(a7),a3 * Adresse des ersten Strings movea.l $1c(a7),a4 * Adresse des zweiten Strings lea _csort,a2 * Sortierfeld loop move.b (a4)+,d0 * Buchstaben des 2. Strings and.l #$ff,d0 * auf int vergrern `!6 o"h###,Oc.N//Bg?<JNA ByڝNlt/,HNVAd-H0. 2<AW6< CWĄD8< DWńE:AWÄC6< ?CWĄD8<@DWńE:<AEWƄF<<0BFWA2<.CAWÄC6< DCWĄD8<EDWńE:EWƄF< n /?<N* n@/?<N n`/?<N n/?<N n/?<N n/?<N n/?<N n/?< N n /?< N n@/?< Nv09rAf$9#/HyN y 9!@`"@"#Ad#` y 9!@`"@"#Ad?9N09rAoNLNN0BgNfHyٜNHyNN^,_NuTILUIEAUTOLOAD.DAT/,HNVAv-Hp3>r=A`0 n0.@0.@ECp QRn n op=@` n 0.@p1@Rn n oN^,_ _PNNV?./. ?<6NAN^ _\NNV?< NAN^NuNV?<NAN^NuNV?<NAN^NuNV?./. ?<GNAN^ _\NNV?.?<NAN^ _TNNV/.?<;NAN^ _XNNV?< NMN^Nu/,HNVAL-Hp=@r.=A` n 0.rC1ARn0.no n rAN^,_ _ON/,HNVAD-Hp=@0.rA0tBg"n r0R@=@` n 0.S@N^,_ _ON/,HNVA-Hp. rAot. vAC\zHE_F|.p:@WAr.v\CWBDdt. B?Np. =@0.rA 0t\Bg S@=@`Hn ?<0.R@?p. 2.A?NA "Op?"QHnN|HnNPN^,_ _ON/,HNVA.-HHn?. NA"Op?"Q n/NN^,_ _\N/,HNVA-HA$CAC p QACpQAC:pQACZpQACzpQAxCpQAbCpQALCpQA0CpQAHCN^,_Nu__________________________________________________/,HNVA-HACjpQA`CzpQA:CpQA$CpQACpQACpQACpQACpQAfCpQA@CpQAC pQN^,_NuPLZ :Match-Code :Bemerkungen :Geburtstag :Telefon :PLZ/Wohnort :Strae :Name :Anrede :Adress-Nummer :/,HNVAz-Hp3<2<3:t3lv<3nxL3pz\3r|l3tp|3v2<3x4<3z6<3|8<3~:<3N^,_Nu/,HNVA-HACp QACpQprAtBv CxD?HyBgBgBgBgN3 ?HyNFA|Ctp QAVC"pQprAtBv CxD?Hy"BgBgBgBgN3?HytNFN^,_Nu Zeigen Hinzu Adressen : 0/,HNVA-HHxhHyNHxhHyN yp!@dC yCh rQ y"9!A`"A$#Bd$AG>$AG  vQ$A%@`N^,_Nu| /,HNVA-HBgNf?<N~BgHyNs,NNXNN NN NNHyzHyVNr NNL NNACACBACAvCp3r3>t3BA 60 CC?0949>BCj61 C@?09A49>B60 CC?0949>B61 CZ@?N?<N~N^,_ _ON/,HNVA-H?.HyHyHnHnN?9?9?.?.NN0.`F n 09>@0(rAo?. n "O2p"QN n09>@"n 09>@0)p_@2949:B?2969>CAj800D?"n29>A$Or?$QN n 09>@"n 09>@0)S@1@?. n "O2p"QN`r?. n "O2p"QN09>S@3>rAf t 3>?. n "O2p"QN`?. n "O2p"QNf09>R@3>r Af t3>?. n "O2p"QN,`?. n "O2p"QN n09>@09>@ECp Q0929:A?0949>BAj60 C?"n09>@$Op?$QN n 09>@p1@?. n "O2r"QNZ` n 09>@0(29>AtA0Bf?."n $O4p$QN n09>@"n 09>@0)0.@2949:B?2969>CAj800D?"n29>A$Or?$QN?. n "O2p"QNt`?."n $O4p$QNT n 09>@"n 09>@0)R@1@ n09>@"n 09>@0)0.@2949:B?2969>CAj800D?"n29>A$Or?$QN?. n "O2p"QN`& @g @ g @ g @gJ`NN^,_ _O N/,HNVA -H?<Nf?<HnNr/.?<BgBgN/.?<BgBgNBgNHyHy??. n "O2r"QNZ`nNƒ2<Hl6?<HyPNqAP"Op?"QBgN=@`(p=@`X n0.@p(=@ n0.@0.r(t_Bf n2.Ar AS@=@`Rn n o09R@3"9#t=B y"h` / p/"n / /N2Adv"#"A$)`#HxhHyN n`"OpW"QHyNn y 9!@`"y#@d$@"%Ad&@$ 'B`v=C` "(`#0.@dH?9NN?. n "O2p"QN n/"n / N@?. n`"OpW"QN8?. n "O2p"QN\N09rAf`$9#/HyNB?9HyHyHnHnN?9?9?9?.?.NNpN܎/9?<N~6N^,_ _O N/,HNVA-HN`29 Af/9?<N}?<HyPNqAP"Op?"Q?<N=@rAf?.HyHyHnHnN?9?9?.?.NN?. n "O2p"QN n/"n / N?. n`"OpW"QN?. n "O2p"QNN/9?<N~6N^,_ _O N/,HNVA-H n"np Q npR@=@2.=A`4 nN/?Hn4/NHn??<SA?Nʤ _//NR2Ad nr0N^,_ _OhN/,HNVA-Hp=@r=At=Bv=C n -HC悞 $Ox$QCb $Ox$QC $Ox$Q?9HnBg NNAž "Op"QA增 "Op"Q n "Op"Q?9HnBg NNJAB "Op"QA" "Op"Q nC@ $Op$Q?9HnBg NNA "Op"QA "Op"Q nC $Op$Q?9Hn?< NN0.2.A4.B6.C@d p=@`p=@0.N^,_ _XN/,HNVA-H09rA^/N`$29AWCHyp/HzBNR6Hy/HzBNR8DHyB/Hz~BNR8DHy/HzfBNR8DCBd8/9?<N}p=@2. Ad"9#`"9# y (`#/9Nn=@@d~ 9#/HyNԾ?9HyHyHnHnN?9?9?.?.NN?9A`"OpW"QNN0."9$9喲WÀC@dF0.@e6?<HyPNqAP"Op?"Q?<N3/9?<N~6N^,_ _TN/,HNVA-H09rA^/N`$29AWCHyp/HzBNR6Hy/HzBNR8DHyB/Hz~BNR8DHy/HzfBNR8DCBd8/9?<N}p=@2. Ad"9#`"9# y (d#/9N=@@d~ 9#/HyN?9HyHyHnHnN?9?9?.?.NN?9A`"OpW"QN$N0."9$9嚲WÀC@dF0.@e6?<HyPNqAP"Op?"Q?<N3/9?<N~6N^,_ _TN/,HNVA,-HHyp?Npx?Np?NXN^,_Nu/,HNVA,-HHyp?Npx?Np?NXN^,_Nu/,HNVA"-HHyp?NpE?NXN^,_Nu/,HNVA"-HHyp?NpF?NXN^,_Nu/,HNVA"-HHyp?Np@?NXN^,_Nu/,HNVA-HHyp ?NXN^,_Nu/,HNVA,-HHyp?NpR?Np?NXN^,_Nu/,HNVA,-HHyp?NpR?Np?NXN^,_Nu/,HNVA$-H VNtHy?. NX VNN^,_ _TN/,HNVA -H NNxp=@r. =A`0.rA 0`?<{ NN`?<| NNv`?<} NNh`?<[ NNZ`?<\ NNL`?<] NN>`v?<~ NN0`h?<@ NN"`ZHy0.rA 0?NX`8 Ag Agb Ag Agb Ag Ag Ag Ag`Rn0.noN^,_ _O*N/,HNVA:-HA *"O2p "QNHyp ?Np ?NXN^,_ _O*N/,HNVA-HA *"O2p "QNjN^,_ _O*NNV?<NAN^Nu/,HNVA-H?< HyPNqp=@NrAf p=@`RAP"Op?"Q?<N=@rAfNrAfp=@0.rAW6.CBd0.=@0.N^,_Nu/,HNVA-H y-H`/p/Hzr/N,4BdAO"ONN?< ?/9 n/N?90929:A??90.A??.Nb`.?94969:C??94.C??.N2?9Nz09rAfNNNN/9?<N~6N^,_ _PN/,HNVAX-H09rAo6/9?<N}?9 AV"O2p"QNˢp=@`0.@2.ACAEZCp"Q0.@2.AtAZ0CT30.@2.AAT40BrCZ1p @f22.A4.B60 Ct_2.A6.C800SD1`Rn n oNp3>r3NN?Hy2Hy0Hy.Hy,N&?9?<?<??<?<8N09Bd*?9 ?9:?98?96?94N`B?9 Hy:Hy8Hy6Hy4N&?9 ?<V?<%?<?<8N09>F@3>N^,_ _TN/,HNVA-H09``09`VN`N`N`N`N`N`09rAf N` t3`f?9 HyzHyVN°`L?9 HyzHyVNJ`2?9HyNH`?9HyNP` ?9HyN.`?9HyN`BgN`?<N`?9HyBgN`Nɬ`?<NѴ`BgNѪ`?<Nϴ`BgNϪ`N$`zBgN`p?<N`d @ g@ @!bP@0;NDDDDzD(`?9 N|@d&09 2<A??9 HyzHyVN`?9 N\@d&09 2<A??9 HyzHyVNz`x?9 N /?9 N" A/?9 N" A@d&09 2<A??9 HyzHyVN` @g. @ g^ @ g`N^,_Nu/,HNVA4-H?9 N@d 09 `?9HyN.`?9HyN6`?9HyN`?9HyN`BgN`?<N`NxNNp3?9 N`BgN˖`?<Nˊ`v?<Nɔ`jBgNɊ``NX`X @;g< @<gH @=gT @>g` @Ag @Bg @Cg @Dg @Gg @XgN @YgP @bgTN^,_Nu/,HNVA-HprA?BgBgBgBBgBgBgBgBgBgBgBgBgBgHyHy HyHyHyHyHyN>3rAtBgN09rAtBV/N`&29 AWBCdN(09@eN09rAtBV/N`&29AWBCdN09@eNN^,_NuAn#AC!It0B BAbBt0B  Aٜ0B BA0B BA0B BNrAmAO"O p QNr @e*AO"O+p*QBgN3`HyRHyPHyHyNP09RrAW69PxDWEBd&NN09|r|AfN`4?< HyPNqAP"Op?"QBgN3NpHyNHyNHyٜNHybNBgNATILUIE.RSC[3][Wo ist die Datei TILUIE.RSC ?][ABBRUCH]/,HNVAH-HNˊp=@ n 0.rtBVrdA]DCd R@=@` n 0.S@N^,_ _XN/,HNVfA6-HNˊ nC2p"Q npR@rC$n pR@$np=@=A0.@eH0.rAW nvx\DWńE nvz:EWƄFBd t=B`S@=@`p=@0. nrAl"2.RA=AR@=@tA`0.@R@rA"n Ep$QHnN -@lHnN -@pHnN -@t?.HnHntHnlHnhN0.vrAf =A`t=BHnN:HnN2 nC0p Q nC0p Qp.=@r=A0.@eD0.rAWvA0x\DWńEv0z:EWƄFBd t=B`S@=@`p=@r.=Af`&0.R@=@ n2.tC1Rn0.nfo n2.0.N^,_ _ON/,HNVA&-HNˊ?<Z n/"n / / N=@0.N^,_ _PN/,HNVAV-HNˊNN2<0Al ?<Z n0/"n,/ / N8=@`?<[ n0/"n,/ Hn N=@0.N^,_ _O(N/,HNVAd-HNˊ?<?.Nr-@r=A n0.rtBg" n R@"n0.rR@=@` n 0.N^,_ _\N/,HNVnAT-HNˊp. R@rA Hn N -@r?<nHnHnzHnrHnnN0.zrAV=B0.N^,_ _ON/,HNVnAR-HNˊ0.=@2. =A?<pHnHnzHnrHnnN0.zrAg$.n-B`-A .N^,_ _XN/,HNVA -HNˊ n /Bg?.Nr _ N^,_ _\N/,HNVA -HNˊ n /Bg?.N> _ N^,_ _\N/,HNVtA&-HNˊ?<oHnHnHnxHntNN^,_Nu/,HNVA-HNˊp=@ n0.-H0(2. Am 0(R@1@0(Am 0(R@1@0Am0R@0"n0.0)t BvCf0.R@=@`0.2. Am0 nR@"n0.p Q0.S@=@`N^,_ _\N/,HNVA-HNˊ n 0-H0(rAfpT@=@` 0(R@=@/. ?N n 0.-Hp1@1@r. 1A4<1Bv 1Cx01D1D1@1@ !@ /. ?<?.N/. ?.N/. ?.A "Op?"QBgBgNpT@=@ n p1@ n 0.0=@rAgD n 0."n 0.0)"n 2.2)A1@0.=@` n 0."H0)2."H2)A1@D/. n ?(?<?<BgBgBgBg?<?<N=@/. ?N n 0."n 0.0)"n 2.2)A1@0.=@0.N^,_ _ON/,HNVA-HNˊp=@2. UASA=A n4(4(=B0.rAoS@=@ n4.4=B`/.?.?<BgBgp. ??<BgBgBgN=@/.?A "Or?"QBgBgN n0.0(=@r=A0.2.Ag4.RB=B n0=@` n0.0.1@/.?.N n0.0( n2.2(Ao& n0."n0.0)1@ n0.0(=@ n2."n2.2)1A n2.1@2.=A0.N^,_ _ON/,HNVA-HNˊp@2. A=@?.N-@/.?=@/.?.AO"OpQN=@/.?.AO"OpQN=@/.?.AnO"OpQN=@/.?.A4O"OpQN=@".-A .N^,_ _ON Desk Accessory 6 Desk Accessory 5 Desk Accessory 4 Desk Accessory 3 Desk Accessory 2 Desk Accessory 1 -------------------- Desk /,HNVA-HNˊ/. NN^,_ _XN/,HNVtAB-HNˊ0.=@2. tB=A&.-Cx?<HnHnHnxHntNN^,_ _PN/,HNVtA<-HNˊ0. =@r=A$.-Bx?< HnHnHnxHntNN^,_ _\N/,HNVtA<-HNˊ0. =@r=A$.-Bx?< HnHnHnxHntNN^,_ _\N/,HNVA0-HNˊ/.?. A "Op?"QBgBgNN^,_ _ON/,HNVnAV-HNˊ n pR@p2.=A n /N -@r?<#HnHnzHnrHnnN0.z=@0.N^,_ _\N/,HNVtA4-HNˊp=@". -Ax?<HnHnHnxHntNN^,_ _XN/,HNVtA4-HNˊp=@". -Ax?<HnHnHnxHntNN^,_ _XN/,HNVtA<-HNˊ0. =@r=A$.-Bx?<!HnHnHnxHntNN^,_ _\N/,HNVtA<-HNˊ0. =@r=A$.-Bx?<!HnHnHnxHntNN^,_ _\N/,HNVAp-HNˊ0.T@=@?.N-@/.? n0(rAW0(vCWĄDBd"n0.3@ 4. 3BN^,_ _O N/,HNVAN-HNˊ n0.-H0(rAW0(vCWĄDBd"h /"n / ND`N^,_ _O N/,HNVA-HNˊ0. H//<N м/HnNp=@2. SA=A` n0.p1@Rn0.no n2. r1A$.-B .N^,_ _TN/,HNVAH-HNˊp=@ n 0.rtBg R@=@`0.rAl=A0.=@0.N^,_ _XN/,HNVA4-HNˊ/.N@d0. Hм//.NN^,_ _\N/,HNVA-HNˊp=@0.rdA] n 0(vCVDBd0.R@=@`0.rdAlzt=BS@=@`6 n 0.-H0(`/( n/( NN? NN`"h -I/ n/ NN? NN n/(?< NN n/(?< NN np//( N`"h -I/ n/( NNH? NN n/( n/( NN*? NN n/( n/( NN ? NNd np//( N`0@ @ b$@0;N xxRn0.no2.H//<N"Ҽ//. NN^,_ _XN/,HNVA-HNˊ n 0.-H0.1@2.1A4.1B6.1C8.1Dz01E1E|FWrAW€B@d0.tB=@0.t B1@p1@ vCW|FWAEd2.1A :. 1E`!@ 2.zEg/. ??.NN^,_ _ON/,HNVA-HNˊp=@ n2(tBg` n0.0(r AtBf0.R@=@` n0."n0.0)r FAA1@0.R@=@/.??.?.?.?.?.?.?.?.?. Nh0.=@0.N^,_ _ON/,HNVtA>-HNˊ0.=@2. =A$.-Bx?<(HnHnHnxHntNN^,_ _PN/,HNVtA6-HNˊ0. =@".-Ax?<rHnHnHnxHntNN^,_ _\N/,HNVtA^-HNˊ .-@x2.=A4.=B6.=C8.=D:.=E<. =F?<*HnHnHnxHntNN^,_ _ON/,HNVAH-HNˊ/.?. HnHnHnHnN/.Bg?<?.?.?.?.N-HNˊ0.=@2. =A?<jHnHnzHnrHnnN0.z=@0.N^,_ _XN/,HNVtA~-HNˊ0.&=@2.$=A4."=B6. =C8.=D:.=E?<lHnHnHnxHntN n0.0"n2.2$n4.4&n 6.6N^,_ _ON/,HNVA8-HNˊ .R-@ n"<//Nn"0"n r2N^,_ _O N/,HNVRA-HNˊ0.=@p2. =Art. 6<Co =CT`=BTv=CV8.T=DR`"0.V@2.VtA 0C3RnV0.VnRo?<Bg?.T?<HnHnHnHnpHnX?<NVN^,_ _ON/,HNVA-HNˊ?.?. NTN^,_ _XN/,HNV8Ad-HNˊ0.=@P2.=AR4.=BT6. =CV?<BgBg?<HnHnHnhHnPHn8?<NV?.?. NTN^,_ _PN/,HNVA<-HNˊHnHnNd?.?.?.?. NR?.?. NTN^,_ _XN/,HNVA -HNˊ?.?. ?.?. NN^,_ _XN/,HNV8A`-HNˊ0.=@P2.=AR4.BS@=@T6. CSA=AV?< ?<Bg?<HnHnHnhHnPHn8?<NVN^,_ _PN/,HNV8Aj-HNˊ0.=@2. =A4.=BP6.=CR8.=DT:.=EV?< ?.?<?<HnHnHnhHnPHn8?<NVN^,_ _ON/,HNVA,-HNˊ?<?.?.?.?.?.?. NLN^,_ _O N/,HNVA,-HNˊ?<?.?.?.?.?.?. N N^,_ _O N/,HNV8AX-HNˊ0.=@P2.=AR4.=BT6. =CV?< ?<Bg?<HnHnHnhHnPHn8?<NVN^,_ _PN/,HNVA&-HNˊ?.?.?.?. Bg?<N$N^,_ _PN/,HNV8A~-HNˊ0.=@P2.=AR4.BS@=@T6. CSA=AVxDVŶDVFEd z=E`=D?<Bg?<?<HnHnHnhHnPHn8BgNVN^,_ _PN/,HNVA&-HNˊ0.2. An =@`=A0.N^,_ _XN/,HNVA&-HNˊ0.2. Am =@`=A0.N^,_ _XN/,HNVA-HNˊ0."2.A? n0"n4B? NNN=@0. 2.A? n0"n 4B? NN(=@ n/?."? NNP _0"n/ ?. ? NN:"_2 n0.$n2A0&n 0.2A60rA^0A^C=B0.N^,_ _ON/,HNVtA,-HNˊp=@?<kHnHnHnxHntNN^,_Nu/,HNVtA,-HNˊp=@?<kHnHnHnxHntNN^,_Nu/,HNV8A<-HNˊ0. =@?.Bg?<BgHnHnHnhHnPHn8BgNVN^,_ _XN/,HNVA-HNˊ?< ?. NN^,_ _TN/,HNV8AT-HNˊ0.=@2.=A4.=B6. =C?<Bg?<BgHnHnHnhHnPHn8BgNVN^,_ _PN/,HNVA"-HNˊ?. N?<?. NN^,_ _TN/,HNVA-HNˊ?<?. NN^,_ _TN/,HNV8AB-HNˊ0. =@Pr=AR?<BgBg?<HnHnHnhHnPHn8BgNVN^,_ _TN/,HNV8AR-HNˊ?.?. N0.=@2. =A?<lBg?<BgHnHnHnhHnPHn8BgNVN^,_ _XN/,HNVA"-HNˊ?. N?<?. NN^,_ _TN/,HNVA.-HNˊ0. rA?N?<h0. rA?NN^,_ _TN/,HNVAl-HNˊ?. N0. =@rAo$t=BS@=@ vCox=D@=@ ?<?.N*0.rAo?<?. NN^,_ _TN/,HNV6AD-HNˊ0. =@2.=A?<'Bg?<BgHnHnHnhHnPHn8BgNVN^,_ _XN/,HNVA-HNˊ?<j?. NN^,_ _TN/,HNV8AB-HNˊp=@P2. =AR?< BgBg?<HnHnHnhHnPHn8BgNVN^,_ _TN/,HNVA-HNˊ?<?. N N^,_ _TN/,HNV2A-HNˊHn2Hn4Hn6NBgBgNn0.=@P2.=AR4.BS@=@T=AV6.BSC=CX8. DSA=AZ:.=E\<.DSF=F^=E`0.=@b?<BgBg?<HnHnHnhHnPHn8?<NV?.4?.6NN^,_ _PN/,HNV8A`-HNˊ0.=@P2.=AR4.BS@=@T6. CSA=AV?< ?< Bg?<HnHnHnhHnPHn8?<NVN^,_ _PN/,HNVAr-HNˊHnHnHnNBgN?<NHnHnHnN?.Nx?.?.?.?. N*?.N?.N?.NLN^,_ _PN/,HNVtA6-HNˊ0.=@". -Ax?<NHnHnHnxHntNN^,_ _\N/,HNVA-HNˊ?</. NN^,_ _XN/,HNVA-HNˊ0. ?BNjN^,_ _TN/,HNVA4-HNˊNrAf ?</N2NR@?NN^,_Nu/,HNVAB-HNˊNrAo*NS@?NNrAf ?</NN^,_Nu/,HNVA<-HNˊp?/Np=@N=@` NxRn0.noN^,_Nu/,HNVtA,-HNˊp=@?<kHnHnHnxHntNN^,_Nu/,HNVtA,-HNˊp=@?<kHnHnHnxHntNN^,_Nu/,HNVA8-HNˊp.R@rAHnN /?. Nr=@0.N^,_ _ON/,HNVA-HNˊ0.F=@2.@=A4.D=B6.B=C8.:zE=D<.8=F0.6=@2.4=A4.2=B6.0E=C8..=D <.,=F 0.*=@2.(=A4.>=B:.<=E&.$-C?<HnHnHnHnN0.=@ n2.0"n4.2$n6.4&n 8.6(n :.8*n<.:0.N^,_ _ONAX"_Hi ?<ANA\L|#|3| N _"_$_* g g fH/ NLH/ apLHHi Hj Bg?<VNA LC G 0<gQ|%|5| N _"_/)#| g g f*JtgJi ka0) k @e??<>3| NAXNu/")x itg$H@//?) ?<@NA LJof _Nu _4` _t6 Bo r aSB`2aNH? _r ar a/L?Nu _r aN _4` _t"x0HgJJjDxvCDzp cRЀ`|e W0R"f`6 _4` _t2xJAjDAxvCDp0 2H@0RJAfJg<-RBlCSBr aQSCaQN _"_v` _"_60`JfQ$ItRJf` _4v` _46"_JBjtJCkgCe4` BSCr axQSBkalQN _6kfv2_t Cc"4YBv` _6kfv"_t Cc4QBvSBkr a(QSCC" A0 9c^a JgYC`NH "oA/ N4L Nu _4` _t6 Bo r aSB`2aN _4` _t"x0HgJJjDxvCPzp cRЀ`|e W0R"f`6 _4` _t2xJAjDAxvCPp0 2H@0RJAfJg<-RBlCSBr aQSCaQN _"_v` _"_60`JfQ$ItRJf` _4v` _46"_JBjtJCkgCe4` BSCr axQSBkalQN _6kfv2_t Cc"4YBv` _6kfv"_t Cc4QBvSBkr a(QSCC" A0 9c^a JgYC`N*opodRNu(_"_/ A) g  f$)Jtf&H //?) ?<@NA LJovfNu$ix&i|fa`pRgf#Jx`H")x it#Hxg$H`//?) ?<@NA LJofLNu )fNuHy5Jkp` Hy0< LNREWRITE required prior to WRITE or PUTDisk or directory full _$_"Wp i e)H/ NL4NH/ NLp)` _"WJ9Rf*J)f i e)H/ NL i d)J)fJg i dB9RJ)fBiQtNz`z _$_"WptvH/ HyPa<29PXL- -fJfVp`4  fJg*`F0e@  b:Ԃih(؄ib؄i^ԄiZԁRC  g i e) 0e 9cJg:JgD i d J)gPRJf 6Höf4N$NHyF0<`Hzh0<N _$_0"Wt&JRJ)f:H/ HyPa`29PXL i d J)PRf RBBe`Be`N Bad digit in number encounteredOverflow during READ of number _$_"W2/RWbp1Ro4Np `z`z _$_ptvH-XHyTa29TL-X -fJfBp`  fJf4J9Wg`*0e$  bԂi8(؄i2؄i.Ԅi*ԁRC`Jg&JgDJf 6Höf4N$NHy0<`HzV0<N _$_0t&JRHXHyTa 29TLXJ9Wf RBBe`ΰBe`NBad digit in number encounteredOverflow during READV of number(_ _/ C (g ( fJ(g J(fv`z$($IJtfpH / /?( ?<?NA LJo*fJg  f"J` g  Wf NuJg Jh gJ(f !|Nu!|NuH$hx&h|gpR@@gf!JxL`H &ht!KxJh f0abLEJ@g *f` J9tg R@Bh` / /<?( ?<?NA LJlp!K|JfnL` rH@Hsp/Bg?<?NA LRA3J9tg^ fSA` fL AgUH@Hz+p 3 dp` SAH@Hz$p/?<?<@NA LJ9tg`z fSA` fSAH@Hzp` f>H@Hzp `H@Hzp 3 dp/?<?<@NA LQ` d4 gb9@HHzxp/?<?<@NA LJ9tg& AfH@HzFp/?<?<@NA L NuHzR0<`Hz$0< LN  p Exit q C^AReset required prior to Read or GetAttempt to read past end-of-fileHvp`:Hvp`.Hvp`"Hvp`Hvp` Hvp _/fJ/ gLJ/kJ`L/ fJkB`</jJk2`,gbJk&` Jk`"eb// ebr`r`rAV ?/LvNuHvv` Hvv _ `Hvv` Hvv _0HJ[fBBg`,j Dj4<` 4<ЀkSB`Jf].B/BJg 2/.?o /@?A /LvNuHvv` Hvv _ [2Jkp`&4<cH@j JgR@kJ@kJgD@?/LvNuHvv` Hvv _ [2Jkp`$4<cd JgRkJk~JgD//LvNuJ/ goNuNuHv _?///` Hv _0/2// Jv/ 8://N~/DD?DBoJgJgC|k?>BGHGv8ބdRC8ބdRC>HGvކdRC8ބdRCHGv48ބBޅB:>HG8ކkE߇SDkBg|d RdRDUJg( DbRD ME \/LvNuBBo `Hv _0/2// v/ 8://~/?DD?DBo 8JgJgG|HD8H@0zr)`рe efef<څ߇QgRCgڼd RGdSCJCkD|blo/EC \/LvNuoHv _p2/g/ f/W?o `ֲ@e:f$/&e&f // d*B6//J/ k`(&// S@Q`&// `R"/?/[4JfFӃddRdRR/eJd RdRd`/AG o Jk`z0H*kS/JkFft grkRBjIHA~`( dtHAI.kRBҁjBG` BBRBӁj/e2/AG o Jk\/LvNuHv _0 @&b(CpC/)?/LvNuHyr`HyZLvN. Hz@CPt$> nk(:C@hԥ*5 c_1ɿ1.Ź^ k:v #-xŬX&x2n)h? SYQa@%oNˏ'?9x!7I|o|@Eŭ+E75vV 9@{pvPFloating point overflowFloating point division by zero NuHȢ _ ged/LȢNuHyȺ`HyN.t`t _"_ gR e6GȞ$S" geb"*f&"`&A%S"`&J`а|gb<|fP"9ȎgH$A#Ȏ`:"9Ȓg6$A#Ȓ`("9Țg$$A#Ț` @ g"9Ȗg $A#Ȗ"`"E&R"$b HyȦN.Jgr"Qd2`"SjN _"_ " gedgR m @ e@EȞ"fB#@B$`p&A"+ef "'I`Z"#@B$`L$K`ư| f"Ț#Ț`4|f"Ȗ#Ȗ` |f"Ȓ#Ȓ` "Ȏ#ȎNHeap overruns stackPointer NILPointer not in heapH _0"_e /LNuHyN./B9/|NuH _0 @f0"|p` "_J@jpEr4@ BbBS@kQ/LNuH _4SBkt82$_rAbd0 @f0"|p` "_J@jp6ADb6CG0IS@k$eQ/LNuH _4k2SAk0"_p6B@bE0)CS@kQ/LNuH _2$_r0 @f0"|p` "_J@jp@kS@kv&J$IRC4(K Vg RQBg`?/LNuH _4kF2SAk>0 @f0"|p` "_J@jpJBg@b6B@oCESBkQ/LNuString overflow _pJ.g 0( hNVg4 ( hg( hH`0( hNVg ( hg hHfXgr"ODd2Sk "Sj` _"ye HyN.N## .f -|`-| nNнf yNStack overruns heapH? _z gBjDRE"g8jDRE$6HBJBg8HAJAf,HBJBf$ւi EdD.` $HB8`B/L?Nu0NvDNH|` H| _z f0NjDRE"g`jDREdJgR(`DfxJg<`DxSDbb JgHA8`"tcRЀ`xeWJg(MdD.`B/LNu y f##Bh6Nu&_a"h $h43_2NH&_a"h 3_2?/ LNu&_a1_$1_"1_1_1_1_1_,1_*1_(1_&1| N&_aj1_2!_.1_$1_1_1_1_1_*1_(1_&Bh4N&_a41_2!_.1_$1_1_1_1_1_,1_*1_(1_&Bh4N&_a1_2!_.1_$1_1_1_1_1_("h3_$_0)gk"h (JS@"Q"Bh4N&_a1_h1_Z01_N1_L2 @b"y@$qBh$1|jBhr!jLT1jPXj$"jHA1qHBhJTA01hH1@P1jRRBhf1|B1|D1j>\1j@^1j:`([g1j6d1j8b`BhbBhd1|F1|@!|l1|@pNa"hBQ$hB5| NuaĠ Nu&_a$h\BZ4"_p$Q"_p$Q N&_a$_ N&_a$_ _20/ ,_N&_an1_>1_<1_:1_81_6h6N##,_,y yN09Nu09ByNu _3ByNByNu[3][][ Abort ]Copyright 1986, CCD and OSS, Inc. &                                    :      0"X^  & &> j "  0     *2 0  &6  PBF   4 0 F J& d    p     @ , "  0 * " (&v $   ( h  " h P 4 *: T0::::   >* &  R&&**^                           $  j"Z 42 :::::NR  $     F R 6  B  J ( & Z (  .                        0 RR " :( lJP &:  " R        ,   T>   .     @  \         (     : $        \     > 2$$   P\>jj4*@44ؘ$fx&j($&$ 6 0 0 $"$,( ( 0 0 06 ,Lb8z,F b":,>4@" f,tPdv`  rV "2 * R">:d"F:6B.x*6J"*JFFFF ( B4r"" >$8$8rJ" *,JJ0" J " 4T ^"BBL :r >>  0 ,H ,,6 8 ,2 v8 ,6 ,,T  T* ,,  .6   *jV0b,4 "T & & (,&  H                  "$" BBb4 2JLJ ^ (  l,R `lX$Fd z  f H F  2  "D    * "FV ( *@ B @ ( V  &   g $m/N$mB$mB$m N`$m("mNp NEp Ng$mR$m("mN/$m("mN/p=N^"_N[r _N$m("mNǴ$m("mN/$m("mN/p=N^"_NR"p _NNfN$m( m"!H$mR$m o0]$m o$m So8$m/HxEpN/BgEpN/Hm/-N`p$m$pr N´EpNpr N´EpNx"mNNE)pN`*E7pN/EpNr"_tN$m$$m o$mB$m("mNCNlHmNF$m( m" 0H$m$"m m"HmNT* * $ ~'   Datei Zeigen Suchen Hinzu Drucken TILUIE-Info ...--------------------- Desk Accessory 1 Desk Accessory 2 Desk Accessory 3 Desk Accessory 4 Desk Accessory 5 Desk Accessory 6 Laufwerk ...----------------- Laden ... Speichern ... Lschen ...----------------- Autoladen ...----------------- Beenden Lschen----------------- |<---- F1 <----- F2 -----> F3 ---->| F4----------------- ndern +F5 Kopieren +F6 Suchen ...----------------- <----- F7 <----| F8 |----> F9 -----> F10 bernehmen F10------------------- Neueingabe F1 Nummern ... Listen ... Etiketten ... Autoladen Pfad der Datei, die beim Programmstart automatisch geladen werden soll.z.B. A:\PRIVAT\ADRESSEN.ADR Quit----------------------______________________________________PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOKAbbruch Suchen Match-Code :-----______XXXXXXBemerkung :0______XXXXXXPLZ :-`____XXXXAdress-Nummer :uto____XXXXOKAbbruch Drucken alle AdressenJANEINMatch-Code :-----______XXXXXXBemerkung :0______XXXXXXPLZ :-`____XXXXAdress-Nummer :uto____XXXXExemplare :-____9999Adressen/Seite :-0____9999nur beim Drucken von ListenDruckqualittNLQDraftOKAbbruch Laufwerk A:B:C:D:E:F:G:H:OK Lschen Datei auf DisketteAdressen im SpeicherOKAbbruch Drucken In Arbeit ...Abbruch mit bel. Taste T I L U I E Autor: Dirk NakottVersion 1.30 24.06.1990(c) 1989,90 Dirk NakottErstellt mit ST Pascal plus von CCDOK[3][ |Es befinden sich noch|ungesicherte Daten im|Speicher.][egal|zurck][3][ |Sollen wirklich alle|Daten im Hinzu-Window|gelscht werden?][Ja| Nein ][3][ |Diese Adress-Nummer|ist schon vergeben.][ OK ][1][ |Nicht gefunden!][ OK ][3][ |Sie knnen nur mit TILUIE|erstellte Dateien laden!][Abbruch][2][ |Adress-Nummern drucken?][Ja| Nein ][3][Leider zuwenig Speicherplatz|verfgbar!|Abhilfe durch lschen einer|anderen Adresse.][Abbruch][3][ |Drucken abbrechen ?!?][Ja| Nein ][3][ |Leider zuwenig Speicher-|platz auf dieser Diskette|vorhanden!][Abbruch][3][ |Drucker streikt ?!?][nochmal|Abbruch][3][ |Dieses Programm luft|nun in der hohen Bild-|schirmauflsung.][Abbruch] vO 4 eq ;b''q   %*?DIYcdq svwx}~ !&+BGLQmn}q q q +,-DEFTUqVij$"vk$ P P+ $ ( /  7 ? F"  2P  O aw  ,:L\n'&  x !"#$%&.(-)*+%,5-E'U2/10e1w. 35$452 ,   '  & %      : V r /   N %Q %  e         6    R   n 0     o   '       2  N j      '      . %    J   f       ' *:ZbRpr N´EcpNpr N´$m( m: 0Hg Ewp N$m( m: 0Hg Ep N$m( m: 0Hg EpN$m( m: 0Hg Ep N$m( m: 0Hg EpN$m( m: 0Hg EpN$m( m: 0Hg Ep N$m( m: 0Hg Ep N$m( m: 0Hg EpNp r N´EpNp r N´$m( m( 0Hg Ep N$m( m( 0Hg Ep N$m( m( 0Hg Ep N$m( m( 0Hg F<0000000000  0`0 >>>>`0  0`fffffffdxfff<<fff>``|fffff|fffff>fffff>F<``|ffffff L88<|fffffffffff>lp`````fffffdxl8lffffff>F<~ 0`~ 8 `000000`` <$fB<~ff````ff~< 8fffffff> <~ff~``~>>~ff~>ffff>`0<>>~ff~>6<>>~ff~><|`````~> 8ff<~ff~``~>`0<~ff~``~>ff88<<~`0fffffff~>ffffffff~>~|f<~f``f~<80000000ffff~<~>~ff~> 88<< <~fffff~< fffffff~>2zL<~fffffff2zLffv~~nfff<>>~ff~>~<~fffff~<~00ff~<~~```~~` #&,0n ` #&,2f2?6ll6l6lذ2zL<>>~ff~>2zL<~fffff~<=~ffnnvvff~=~fn~vf~~~~`0<~ff~~ffff2zL<~ff~~ffff2zL<~ffffff~<ff |zz |Ƃ||Ƃ|[_UQfffffffff<8fffffffff|xfvv><><``~~000ln>6fffnnn |||66666666~~~~ffvv~~~nnf6>~~>>>66666000|~~~ffffff88~~~>666666>>~~ffvvnnfv>62 0~~>|~~~~~~~~~~`p88p`~~8p8~~ؘp~~>|@>|@8lDl88|||8<<Pp 0xHHHH0H0`xx0H0PRN1.03 $m02HWHHg$m40H$mذf$m 0H$m RNg>EpN/$m("mN"_NEpN>(-b"mNǴRb$m$0H$m RNg>EpN/$m("mN"_NEpN>(-b"mNǴRb$m(0H$m RN ASCII Tabelle | 0 1 2 3 4 5 6 7 8 9 | 0 1 2 3 4 5 6 7 8 9 ---------------------------------- ---------------------------------- 0 |         130 | 10 | LF CR       140 | 20 |           150 | 30 |   ! " # $ % & ' 160 | 40 | ( ) * + , - . / 0 1 170 | 50 | 2 3 4 5 6 7 8 9 : ; 180 | 60 | < = > ? @ A B C D E 190 | 70 | F G H I J K L M N O 200 | 80 | P Q R S T U V W X Y 210 | 90 | Z [ \ ] ^ _ ` a b c 220 | 100 | d e f g h i j k l m 230 | 110 | n o p q r s t u v w 240 | 120 | x y z { | } ~  250 | C-Operator | Associativity --------------------------------------------------- () [] -> . | left -> right ! ~ ++ -- - (type) * & sizeof | right -> left * / % | left -> right + - | left -> right << >> | left -> right < <= > >= | left -> right == != | left -> right & | left -> right ^ | left -> right | | left -> right && | left -> right || | left -> right ?: | right -> left = += -= etc. | right -> left , | left -> right BApNBAtNBAxNBA|NBA킀NBALNBANhANANANANANANhANA`NBAdNBA퀼NANBANBAHNh$mBp$m$$m N`$m( m"/0H( m: 0HVHH/$m( m"/0H( m./0H$m( m"/0H( m. 0HgB$m( m^ 0HWHH$m( mR HJf H$m( mR 0Hg$mR$mR$m o:]$m Sf:E;pTN/EpNr"_tN$m$$m Uf$mB$m o$m,$$mBp$m$$m N`R$m( mR 0Hg8$m( m" 0H$m,l $m( m" 0H$m,$"m m"$mR$m o]$mHPp$m$$m SN`$m|Qp$m$$m N`N$m( mR 0HVHH/$m( m"/0H$m $m,ВWHHg$m|P$mR$m o]$m|f$mHQ$mR$m oj]$m4$ml4$mp/******************************************************************************/ /* */ /* (function name) */ /* */ /******************************************************************************/ /* */ /* Started: */ /* Version: */ /* */ /******************************************************************************/ /* */ /* Description: */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /******************************************************************************/ N/?.,. ,"/"</NfF"",RnN ,"/"</Nf "",Ro" / </Nf  ,&@-@`?< `SG0A0lf`0A02A0SG Gn9l0,A $PBBBBBjBjBjBjBjBj0<5@5@5@0,A PBh0,A PBh?,NvT?,NXT?,NTNL N^NuNVH0&n$n * " R n` g JSBSBS./.</N^.X,/,</N^X,  JH>rtvxz|~"A$A&A(A*A,A`H~H~H~H~QL|`B QL N^NuNVH0&n$n .. g m`n,/,</N^`,X*/*</N^LX*  K"JH>`*L|H|L|H|0L|H|`L|H|QL|`QL N^NuNVH0&n$n .. g n`bXX,/,<P/N],X*/*<P/N]X*`(%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#%#Q`#QL N^NuNVH&n>. `B0SG @nLN^NuNVH&n>. `B0SG @nLN^NuNVHNIt?<NYDT9@( l(g" l(gHlB?<NL4\NIBgNY2T9|Р h)H尐T)@HlH?<NY \N^ nlHlpN5X @gHlxN5X @fD=|0,/ </N\ -@0,/ </N[ -@`Bn-|>B/Hn0 n /(NPJ@g"RF?<Bg .S@?NbX?NhX=@`RF0nlHn0 n /NPJ@f0nlSF?./.N\`:=|0.Rn?NT0 n /N8X0 n /NXRF0nl F&n n mr`z,H|g N0 @fdN?(XGXGH2H/./NU.TB ,Їм",]lX$l, / </NUX JgR)J?<NQT n2(YAHЁ)@&@)G`$$$$QNDL N^NuNVB?<NE\N^NuNVBBgNE\N^NuNVB?<NE\N^NuNVHz?<NEz\`J` ` ` ` ` ` pvvvN^NuNVHn?. /.N =@0.f0.N^NuNV,g=|=|` =|=|?<NET?. /.N<\=@Bn nBP=|` ng.0.ng$=nBn?<HnBg?./.NBHnHnHnHnHn/.N6=@n0.|g8 n;m nDo nTm n]nBnBnBn n0`0.|g ng nf=| nf0Bn?<?.NZX=@g?.?./.N P=@`6 nf.Bn?<?.N"X=@g?.?./.NP=@ ng$=nHn?<?./.NA =@`0 n'[g" n(]g n@gBnBn n0`=|0.|gZ naf BnBn`FHnHn?.?.?./.N=@0.g?<Hn?.?./.N@`Z0.|gP?.?.?<Bg/.N@D =@ nfNBnBn`Hn?.?./.N@ =@ ng ng$0.ng?<HnBg?./.N@< ngv?<NCT0.N^NuNVH&nBG<<8<0.|g`8<`|g` >. D``|g`<<`(: K:(0Fg0`0| g><`D Gl0. LN^NuNV n f?<Bg/.NfP=@ 0. N^NuNV)n|9n 9n9n?<7N0,"Rl" K0|'=@0.|g.0,"Rl" K0 n00,"Rl" K0 n0`B0,"Rl" K0 n 00,"Rl" K0 n00,"Rl" K0 n00.&_N^NuNVH&n>. 0,gBn`=|_BF`0 K0(2.Af0 K0(|f0 K0(|@g0 K0( |f0 K0(|fx0.|g`&0n2 K h |Af0`n`H`|g`<: K*( &<* H?N?.<. BEGE" FgEfRg RKTJJRf`0`0. !"# $ % & 2 1/-,    50. !"#$%&21/-,xyz{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZ+-L N^NuNVH>.?<NfTN?,NT Gf"HlHnNKFPHlHnNK8P<< ` HlHnNK$PHl$HnNKP<<(0,A PA/Hn`NJP0,A PA/HnnNJPHl(Hn`NJrPJ@f2?<NGTH|A@nBgHnp?<GNGPHl2HnnNJP/,jNX?<?Hn0HnHnHlHlHnHnnHn`N $=@/,jNX nf.`f0.g.`gTHnnHn6NJ PHn`Hn6NIP Gf$Hl4?,N\ @f`Hn6NX` Hn6NtX`0.gBF`HnnHn6NIP0A0A/Hn6NI(P GfHHl>?,N\ @f`HHn6NJX l l02.SAAl0,R@?NT``` Hn6NXRF0nmvLN^NuNVH0,A &P gR/.Hn*NIP?<NFT|A@.*H|\f n*|:+B.,/.Hn*NHPP`|.,H|\g,.+H|:f |\,B.- nA/Hn*NHP`D.+H|:g8n*|:+BgHn,?<GNEzPHlHHn*NGP/.Hn*NGPHn*NHXS@>`SG GoA*H|\fA*H|\fRGA*A/NHRX??< NhX=@?.A*A/HnNG ABHnA/NGP?Hn*A/NG ABNN NDNA/Hn*NGPA/Hn*NFPHnHnHnHnHn*BgN>0|g`>< `SG0A0lf`0A02A0SG Gn9lN .)@'@'n'nBk?<,NCT7@0<7@7@?,NTB l,`RGA|| gBFA|`0RFArRG:A|H|Am H|ZoPH|am H|zo<H|0m H|9o(H|\gH|:gH|_g H|.fH| g Fmp0fN`PArBHnrN8X l g0,R@?NT`BgNT nf HnrNxX` HnrN 6XLN^NuNVH0 n Hn/. NP> @fN ,Ю$@ n g R-@`-JHn/./ /,N p> Gf ,/ /NPHn/ /,NF @fr ,/ ,/NlPNߔ n Hn/. N2P ,Ю$@Hn/ /,N @f$ ,/ ,/NP? Gg$ ,/ ,/N&P?x\Bg/.?<NN>hPJf,,b/,</NA,X/,</NA, ,]",-@ ,bІTm N>NܶNp ,]",-@ ,bІTm?N=X.,bg ,ЇS @|| f ,Ї @ R` ,ЇS @|| f4 ,ЇU @|| g ,ЇS @ ,Ї @ R`H ,ЇS @|| g2 ,ЇU @|| g ,Ї @ ,ЇR @ T&0<``0<RGcVSGJGgFеo  b ( f  fR` ( f |  `J(f| `  ` + g  . ".//./.N" / .Ї/NbP n N00<`N00.?<NfTN @f`>0,A &P0|g`lA/Hn6N>pPA/Hn"N>`PHn6HnZN>RPHn"HnZN=P/,jNX?<?<HnLHlHl|HlHlHnHn6Hn"N $=@t/,jNX nf ."f 0.tf`Hn6HnvN=P."gHn"Hn>N=P`HnLHn>N=PHn>Hn6N=(PHlN X?</,/,Hn6N2HnZHn6N=PJ@gTHl?<N-h\ @f@HnvA/N=LPHn>A/N=H@//<?.?<@NA L$F(< g=@J@f=|?.?<>N7|XN0.g.0.|g`?`<  cQ`N + f  f@RUG` + f`0J+f`(R0<G@|\`oRBB(B(` 0<`0<` n 0<L N^NuNV~?NB.0,A PA/HnN8P/,jNfX?<?<(HnHlHlHlHlHnHnHnN $=@~/,jN8X nf.g=|~HnHnN8P nf^0.~gXBG`LHnHnRN8jP0AA/HnRN7PHnR0AA/NP @f` RG0n~m>N^NuNVHlHnN8 P/.HnN7PHlHnN7tPHn?<N'\ @fbNF/. ?<AN4\=@N 0.°|g`?N2X . g ?N1X=|N*0.N^NuNVH&nBG`RG Kg KH|.fTGHn KA/NPJ@f-| .LN^NuNV>BnNNBgHn`HlNb Hl"HnRN4ZP/,jNX?<?<Hn>Hl.RgHnRHn`N3ZP`Hn>Hn`N3JPHn`NX @f ?.N`?. BF?<?<N/XJfBg/.N\N,gn?<0?< ?<Hn/.NHlLHnN10PBE`6AH??<N.XJgRE`?v+BF`^  gRFSGJGgQ`L>Q`D4 BoSB Jp  fR@Q RFǖGRC>Q`J@gRFS@SGQ`Qp+FF`BQ\S`nN 0<9@9@9@9@NN ,6,HÐ/ l<r`  gRGRF Fg4Q`.rtv46HBBJCgCSC RF FgQR`rJAf\Sf`F0H/NdX-@ f`,Hn/.NP+|?/N\&0@`N 0<9@9@9@9@NN ,6,HÐ/ l0<0<`0RF",4҂ A1@RG Gm><` ,2Ё @0RG G&m ,м0H @1|( ,м1 @1|) ,м3 @1|* ,м5 @1|+ ,м6 @1|- ,м8T @1|. ,м9 @1|/ ,м; @1|LN^NuNV0,&|g`, l l0, Rl A0` HlPNX`.`|g`Bl 9|&HldNX``|g`N2N^NuNVH09|& ,2,$Ё$@>A&HBl":<0,g?<NT0,A P hfNxBgNTHlxNX-l`f>A&HBl"`L .",/"</N,\"Ё @(||g0,"Rl" K?NT:`BE-l0g0,"Gm0g?N^NuNV>BnNNBgHn`HlN HlHnRN)P/,jN*X?<?<Hn>HlHlHlHnNHnPHn`HnRN $=@L/,jNX?<BBN Z nPfD.Rf0.Lg8.RgHnRHn`N(P`Hn>Hn`N(PHn`NX @fNN^NuNV>BnNNBgHn`HlN HlHnRN(P?<?<Hn>HlHlHlHnNHnPHn`HnRN $=@L?<BBN nPf.Rf0.Lgz.RgHnRHn`N'P`Hn>Hn`N'PHn`N&X?,?,?,?,NlP?<?<BgBgBg?<?,NZ ,6,HÐ/ lBnNNBgHn`HlN B.R/,jNRX?<?<Hn>Hl HlHlHnNHnPHn`HnRN $=@L/,jN$X?<BBN nPf.Rf0.Lgr.RgHnRHn`N&P`Hn>Hn`N&PHn`NX?<NTBg/,zN\?,?,?,?,NlP?</,zN\?<NTN^NuNVHl HntNPHn/< HntN @f0<`T?<?<BgBgBg?<?,NZN?,?,NPXN&HnNVX?.r .nR/N\0<N^NuNVt/.HntN$P/,/<HntN J@g( l(f?<?<NX`?<?<NX`0<`0<N^NuNV. n(H|:g\Bg/.?<NN"PJf/.HntN%P`6Hl HntN%P/.HntN%>PBgHnt?<NN"PJg0<`b`/.HntN%PHn./< FHntNF J@g4Hl Hn.N%PJ@fC.A0<N t0<`` ?N^NuNVH00,g|,2,(HHAflBG`P0A&P0 AA$H60*7@7@0*7@7@0*7@7@ 0*7@7@ RG G mBgNT?,*NTNHL N^NuNVHBnN?<Hn?<NP n:(:| n8(R|?</.N\Bg/.N<\|=@0.|g`,0<E??</.NP?<?</.NP`:`|g`.0<D??</.NP?<?</.NP```` ng ng0.ff/.N\X0.gBg?./.NP nfBgHnHl 6N Hl :HnN"P/,jNX?<?<HnHl PHl BHlHnHnHnHnN $=@/,jNX?<BBN2 nf.f0.gNNCA0<N,0f0BF`"<28Az28AJRF F mB.0f|.gHnHnN!>P`HnHnN!.PHn/< FHnN LN^NuNV>HBnNNBgHn`Hl VNd Hl ZHnRN!\P/,jNX?<?<Hn>Hl pHl bHlHnNHnPHn`HnRN $=@L/,jNʠX?<BBN nPfX.Rf0.LgL.RgHnRHn`N `P`Hn>Hn`N PPHl v lA/N P/,/<=0Hn`N LN^NuNV\Bn^N0,A PA/Hn*N rPB./,jNXBgBgBHl Hl ~HlHn^Hn`Hn*HnN $/,jNɼX n`f.f6Hl2HnN PHl HnNP0.^AA/HnNnPHn*HnbNPHnHnbNRPBgHnb?<NNPJg ?Hn?<N\/.HnRNP/. HnRNPPBgHnR?<NNPJfHnNX=@H ,(6.HHЃT",$Ҽpm0<`0. l(R( l(BHn/,(NPRl4 l(R(f`bHnNX=@> ,(6.>HЃT",$Ҽpm0<`D0. l(R( l(BHn/,(NPRl4 l(R(f?<ONTJg0<N^NuNV l(R(HA//.NP/,(/.N*P l(R(fRl,N^NuNVH0X$@&@=|><<0 n hfL0 n0( |f60A0RG0A00 n0( |g=F0RF n0(| g0S@=@`0.Sf0.Rg>=S=R???<Bg/.Nb <?Hn/.Nv < Fg=F?< NTJ@gN,>?<?<NXJf0|;g8|<g2|=g,|>g&|?g |@g|Ag|Bg|Cg|Dg`0|;@A0``>|p0g8|m1g2|n2g,|o3g&|j4g |k5g|l6g|g7g|h8g|i9g`0|A(0``| g|r g` 0.``|Pg`Z nf<.`0BG`RG0A0nf0A0< @f<.?Hn/.N& =@``|Hg`r nf<.A<`8BG`RG0A0nf0f<.A<` <A<?Hn/.N =@` 0<``` l Pg l Pg=|`.???<Bg/.ND <?Hn/.NX =@ l Pf9|9|9|Bl0<9@9@9@9@9@9@9@9@9@9@9@9@A)H|?<NT0.`0<f*L N^NuNVH0>. X$@&@0| ?0<l nh?NhX n1@0 nh|??<(NbX n1@BF0 n hf0 nh 0RF n0(| g Go0 nh ?</.N\L N^NuNVH&n>.:02 n Pf,0 K0( |fHn?<?/ Nv :`RF0 n Pf0LN^Nu)I)J"/0<NB"l$lNu NV9n0.| A" AA-H=|` nR2.AH0Rn nm/,XN.X0,N^NuNVA)H\A쵺)H`A쵘)HdA쵈)HhA|)HlAt)HpA\)HX?< NXT9lV0,VN^NuNV?<NN X9@Pg0<`0<N^NuNV nam nzn 0.| ``0.N^NuNV nAm nZn 0.| ``0.N^NuNVHl /.N PJ@g`Hl /.N PJ@gNHl /.N PJ@gj `hH|afB0<n?/.N\> @f?./.N\>?<B?NPj `0.n?/.N\>j Gf Bj <`05G Bj <$%@?<B?* NP%@5l L N^NuNV)nR/.NLX/. /.NLPN^NuNV`H0BnBnBB9| nRH|=@ .&@$@BG`TH| g(H| gH| gH| g H| f0.f0.gBnB` `H|"f< nfBn`*0.f 0.f=|0,RlA` `"`H|'f: nfBn`*0.f 0.f=|0,RlA` `'`r0.fj0.fd=|H|f. R @H|>f T-@=|` R-@Bn`0,RlA`  R0RG0nmB .g,A쯢 H1| A쯢 H1|HlHl /.N .g2A쯶 H1| Hl0.gA `A //.N 0,R@H/?<HNP\)@><`0A` 2 l RG0lm l 0, lBL N^NuNV nl <`?.?./. ?<BN -@ m .`?<?.B?<BN -@?<?.B?<BN -@ nf .Ю -@ `$ nf .Ю -@ `0.g <`b . oHn . /?.?<@N2 Bg?./. ?<BN ]|9@Pg <` `BlP . N^NuNV/ 0Q"_N^NuNV/.?<IN\N^NuNVBn`60.A 0f"0.A 00.A"0 ` Rn nLmN^NuNVBn`&0.A 0nf0.A BPRn nLmN^NuNV?>.=|0A "HPgXHf0(>N^NuNVHl /.NPJ@f =|`Hl /.NPJ@f =|`Hl /.NdPJ@f=|`f0. |g0/.NXJ@g0<``Bg/.?<NX0. |?/.?<=NlP=@9@P @l0<`0. | ??.N~X0.N^Nu)I)J)_NM"l$l/,Nu)I)J)_NN"l$l/,Nu)I)J)_NA"l$l/,NuNV/.?<AN\9@Pg0<``0<N^NuNV`4 nH| f?< ?<NX nRH??<NX0. Sn J@fN^NuNV` nRH??<NXX0. Sn J@fN^NuNV` nRH??<N*X0. Sn J@fN^NuNVH0&n $KA -H nf?./ N4\=n`L nf?./ N`\=n`. nf?./ Np\=n`-KBn?.NZTJ@f`H| f |o@ H-@/./.?.?<@NT 9@PHg0<`0,Pn/./<?.?<@N 9@P @g0<`tRnR -@`R ned` 6.ƼЃ$@ H-@/./.?.?<@N 9@PHg0<`0,PnBlP0.L N^NuNV . @"n rJWfSWfN^NuLB@ggSBAgHJ@gHANuL2/ f0NuSAB@gVSBAgHJ@gHANuL rWfNuNVH*n(n >.&MSG0J@mf`BSG0J@l L8N^Nu op`R@SJWfFNuNVHBG".l~D$. l GD&gHC H@J@g@HCBCւJGgD-C LN^.JNuNVH$.f pr`J". BnJlVnDJlRnDvd`pbd nmDdD-@-A LN^Nu9|9|9|9|CA"A"A"A"A"A"A:"AV"A~"A"A"A"A"A>"An"A"A"A"A "A."AT"C"8 " " " " ""9|9|.C&A"A"9|9|9|N9|L)|H9|FA)HAJ)H9|9|9|9|9|9|A)H9|C쯢"2"2 2"2"2"22"2"2"22"2x9|)|RNuNVH>.N?,NT n`?<NST0|g`BF`D0A P hg.0A PBhBg0A P/(B?NT RF F m0,A P1|Bg/</,N ,6,HÐ/ l.,. *.8.0A P&h / </N  DfJo S\K``Jo S]K`LN^NuNVH?<NPvT0,A P hf`\NNT&l.,B@Jo +S\K`0,A P1|?,NJT ,6,HÐ/ l.<. 0A P&h:A P*($lB Gfr``+||gP +|HЃ",]lp"S+S@`QAR` ,/ ,/NP0<`\ S n``\S o+||g`b+||gP +|HЃ",]lp"S+S@`QAR` ,/ ,/NP0<`"``\ S n n n 0<L N^NuNVHN?<NLT0,A P0(: @f N0<`?` `|g`BF`<HnNpX>f>0,A PBh?,NFT0g: ,f(N&/<?,N.\?,?,NPXN` Bg/.N\0<LN^NuNVH0NT n*&l ",/"</N"Ё$@HnNXJ@f N*0<`r ./ </N  n Bo+gp+ S`BQR\` o/ n/NP <<`BF n N*0L N^NuNV?<NKT0,A P hg N0<`LN  @f0<`. n`NBF`0A P0(: @g`RF F m0lg Gf`0lf Ef0 Gf*BgN>T0,A P1|?,N@T`B Eg0,A P1|?,N@T ,",/"</N"Ё @ g ,",/"</N"Ё @(||g* Gf$ ,",/"</N"Ё @(`( Gf" ,",/"</N"Ё @(0,llpBg?,NPX ,",/"</N"Ё @(|? ,",/"</N"Ё @ 6,HЃ/ l@N\?,?,NPXLN^NuNVH0&n,,$lBBE`*||g:<` \R m0f N0,A PBh?,N?"T&0L N^NuNVH0&n.,S ,"/"</N"Ё$@BF`*||g<<` ]S l0f N0,A PBh?,N>T&0L N^NuNV?<NDTNNTHnNXJ@g ?,R ./N\N*0<`` NN*0<N^NuNV?<NDLTNNTHnNXJ@gBgR ./N\N*0<`` NN*0<N^NuNVH>.0|g`9lBlBl``|g`j0,lm\0,lR@9@A|| fSlBF`0lAA|RF0lmAB9|`h`|g`^0,gT,H|f$HlN2Xl @o?Hn8HnNPHn Hn8NP0|g <<|`<<0.gp0.|g2|g,|g&|g |g|g|g| g| g`(?<?.NX=@><12.HA|``|Rg` ><``|bg` ><``|wg` ><``@|;g:|<g4|=g.|>g(|?g"|@g|Ag|Bg|Cg |Dg`:.|;E0Ag0AA/HnNP0 A:A/Hl2NP0A0 n00AA/ n0 nA/NP?<0<1 nP?/,jNAbPHn?<0<1 nP?/,jNb ><``` h`@|Tg:|Ug4|Vg.|Wg(|Xg"|Yg|Zg|[g|\g |]g`:.|TEHn80AA/NPHl20 A:A/NP n02A0 n0 nA/0AA/NP````0|-g`20,.2.| AnRl.?,.NhT?.?,.NX`j`|.g`* l.oSl.?,.N6T?.?,.N^X`8` |,g` n o?<?<,?<+/,jN H"<4.RB| H/"/N"XЁ-@0.R@| H/ ./N / </N X9@.?,.NT?.?,.NX`` |+g`HnHnHnHnNHnHn?<,/,jN0.no(l .0,.2.RA| Ao0.R@| 9@.`l . l.lBl.?,.N T?.?,.N X``d|g^|gX|gR| gL| gF| g@| g:| g4|g.|g(|g"|g|g|g|g |g`0A0|A@8B.:.8H|A??<NXBgHn:?<GNPHl n(o6 n0 nBHn8/. NP?.?.*/.$N~P0,``` |g`NBl.Hn8NX:Hn8HnNPAB?<Hn?<NNPJf"UE0SEA8H|\fTEA8B`B.;Bl.Hl. n0 nA/Hn8N =@``|g`4HnHl.Hn n0 nA/Hn8HnN4``2|1g,|2g&|3g |4g|5g|6g|7g|8g`B0.gHn?<?/,jNb Bl.Hn/./.Hn8??Nb`J`|=g` ?NT`|g` nBP0<`(`|:g|;g|9g`x?NT G:f n0` G;f n0` n0Hn/.NPHn8/. NP.f?.?.*/.$N~P0,``0<``|.<. &n$n Ff?<HnBg?/,jN`J?<N>T=@=l0.|g*0.H| f`$?<Hn?.?/,jN``0<f?<HnBg?/,jN0|16?<NbTBnHn0 nA//. N 4L N^NuNVBH0&n$n BFN?<NT/ HntNPHl>HntNPH|A??<NX/ ?<;N\ l&<@w@HlBHntNP/ ?<;N\N$?</ HnBN ?<Hnt?<NNPJf ,]H|f,fH|.g?<0RF?NX`(,]H|f,fH|.g?<0RF?NX Fl?<ONTJg/ HntNPHl2HntNPHlFHntNP/ HntNPHntNXS@>`SGAtH| gAuBB FlRBgHnt?<NNPJf>?< 0RF?NXڬb`ڬb?< 0RF?NX Fl?<ONTJg Ff ?.<. 0A0A&H0| HlfA/NP'lbBk7l^7l`LN^NuNVH0A-H>.HǏ`<`:G`0A0A&H0GA0A$HA/A/NP @n`fA//.NPA/A/NP/.A/NP(+'j%D=k7j5n=k7j5nG EldRF0nmP0H> Gn8L N^NuNVH>. BE<<1`T02|1Af0 lj1| `0 ljBh ?<0RE nA/?/,jNd RF F9mLN^NuNVH0&n>. $n?<NT/ NX<=|`*0.Rn n2GA$A2RF K n0GA$Af0RF K\ KB nBP/. n0 nA// N 4L N^NuNVH>.<<`80 lj0( |g ?Bg?<?<XBgBgBg?/,jN RF F*mBlLN^NuNV?>.0 ljBh >N^NuNV? ljhP lj>( ljh@ ljhD?<?BgBg?<?</,jN>N^NuNVHN0<(=@ lj0( ljhHR@=@ lj<( ljhHƍ=|:.`0A0A&Hf`0. ljh>.BD`"0RG?? 2RDHЁ @H? l0N\ HЄ @g HЄ @H|.f=D HЄ @H|.f^`0RG??< |? l0N\Rn n mRD`&0RG?? 2RDHЁ @H? l0N\Rn HЄ @f8.`0RG??< |? l0N\RD DmH|f lgR0,|g`,?<0?< ?< Hn0A@/N``|g`:0AF?HnN\B.0RG??< |? l0N\`@`|g`60AD?HnN\B.0RG??< |? l0N\A&H`0RG??H? l0N\f0. lj h f&0AH Pf0. ljBh `80AH Pf&0. lj1| ?<?./,jN.P`(8<`0RG??< |? l0N\RD DmRnRFRE02.| AmN8`F0.Rn ljh>.BE`0RG??< |? l0N\RE EmRFRD02.| AmNDLN^NuNVH?< NT*<<`60 lj1| 0 ljh0 n1|RF FmBF(<A.<` g-D0 lj (-@ .&<-@ .-@ .2 lj!@0 lj h A2 n0 A2. Hf0 ljhRFR / </N . l Fm8LN^NuNVH0..&n <.BEA$H / < /NX H.HC2RE J / < /N X.f` 0RE J0Fm` SE0 J EnBL N^NuNVH>.<. RF0g6 lj0(H2H/ /N 2H/ /N X lj1@2` ljBh2 F o6 lj0(H/ < /N 2H/ /N X lj1@6` lj0( lj1@6?<?<+/,jN*PLN^NuNVN0.R@?Hn?<6NPHl\HnNP?<?< ?<Hn/.NxHnHnNPHlvHnNP?<?< ?<Hn ./N:HnHnNPHlHnNP?<?< ?<Hn/.NHnHnNPHlHnNP0.|A@N*Hn?<N\N^NuNVH>. <.=l:<8`<0AH Pf(0A0A/ nA/NPGSnRE0Fn nnLN^NuNV n nB(Hl2/.NPHl/.NP/. /.NPHl/.NP/.NX?/.?</,jN 0.g?<?</,jN)PN^NuNV??<Hn?<N+P nPhBG`THl0AA/NP0,f0A G g0|12A` 0A10A00Ag0AA/0AA/NP0 A:A/0AA/NPHl0AA/NP0AA/0AA/NP0AB0AA 2<G n!@ 0<G nh RG G m?<Bg/.N'pP/.NX>N^NuNVH<<> n(H|:f n(H|\ft/.NX n(H|\fXBE`>0 n0 n H|AAf<0 n0 nH|AAf>RE0 n Pm Em Gg Fg&0 ljh?<0\@?/,jN&P0 ljh?<0\@?/,jN&bP?<?<0/,jN&PP/./. NP nBP/././. NP n0`NLN^NuNVHA-HBgHlz?<N(PBgHlv?<N(PBgHlrBgN(P?<Hln?<N(P?<Hlj?<N(P?<Hlf?< N(P?<Hlb?<N(P?<Hl^?<N(P?<HlZ?<N(nP?<HlV?< N(\P?<HlN?<N(JP?<HlJ?< N(8P?<HlF?< N(&P?<HlR?<N(P?<HlB?<N(P?<Hl>?<N'PBgHl:?<N'PBgHl6?<N'P?</Hl?</,RN ?</Hl`Z?< 0 AJA/0<F?/,BN ?< 0 AA/0<F?/,BNn 0T@<0RG GmBG`b l*fN0< 4<B lr ( @0(H1@0< 4<B lr0(H1@Bg?N&XRG G m?<BgN&X l*g:<`R:< ln2(D| ln0(A1@ l6hj lr (< @0(H1@ lr0(FH1@F ljSh: ljSh< ljSh" ljShR ljSh ljRhBF`0< lvVh@0< lv0(BE1@B?< ,2Ём @A/0<V@?/,vN 0< lvVhX0< lvUhZ?< ,2Ё @A/0<X@?/,vN 0< lvVhp0< lvUhrRF F m2<. lZ0(A1@2<. lJ0(A1@ lrRh lrUh0<(U@ l>1@ l>1| l>1|t0<(X@ l>1@ lr ($ @9hHlHlHlHl?<BgN2 lv1l lv1l lv1l lv1l lr1l lr1lBgBg/,v?<BgN, ,z&@0<<`0 KAR 2 n RF F m nA '@ '@ '@ '@'@'@\'@t'@'@'@<'@ '@'@| nA '@ '@'@'@ nA 'H nA 'H4A'H . l6!@ l6!@ l6!@ l6!@TLN^NuNVA-HHl nAj/NPHl nAn/NPHl nAr/NPHl nAv/NPHl nAz/NPHl nA~/NPHl nA/NPHl" nA/NPHl& nA/NPHl( nA/NPHl0 nA/NPHl< nA /NPHlD nA./NPHlR nA n| 8 n1|< 6N^NuNV8H>.?<NzTN*N?,NTBF` Hl?N\ @f ?<NzT``RF F mNV?<?< /,zN`PBg/,zND\BgBgB?<BgN, NNDNr?<NT??<LNXLN^NuNVH0&n>. $n<.0 K ( @ 0 K ( @1FL N^NuNVfH>.<. 0A P0(g|j`| j0A PA/HnkNP0A PA/HnjNPHlHnjNPB.?<FHnj?</,rN. Af  lr!@T0|0@fB.g?N~T Ff:< lr ($ @1l`:< lr ($ @h n f: lr0(D=@0<~2<A=@ lr=h lr0(.S@=@?.?.?.?.??. /,rN Ff$?.?.?.?.?<?</,rN n f Ff?<?</,rN. <.N?,NTBgNT:,t??. ??.0A P?( 0A P?( BgN8?,N.T0,A P?NT?<NTLN^NuNVH>.<. :. 8. Gf$?.?.??.???. <. :.8.0<=@=@0<=@=@=G=F=E=DHnHnNPJ@g nf>0.U@??.0.S@??.0.U@??.0.S@??.?<N`z0,*2.A PPg0.A P?NT?.?.?. l8N\0.ltf=|`Bn?.?<0.S@?BgBg?.?.NLN^NuNVH0>.<. &n$n:. nSE8FSD0n o0El0< n0 n046`h0El0n n64`T0n l&0Eo 60. G40R@ n00E n0`&0Eo0R@60E4`0n l 60. G4L N^NuNVH<,t lvgN?,NT0,A P Bg?,NXBG`0Av02At0RG G mN?<?,NX9|9lt0,A P?<?,NhX?,NT?,*NT?,N T?<?<BgBgBg?<?,Nv ,6,HÐ/ l+<+:+8+7k 7k 7k7k7G 7F 7E7D0,EmBk?,NT=k=k =k=k 0.nl<0.n2.nAo(?.?,?.?,NBP?,?,NPX`*0.nnm0.2.nAoN?.?,?.?,NP?<?<BgBgBg?<?,ND ,6,HÐ/ l.<. BE`\8At8 DgF02A Ph m00A P0( 2A Ph =@0nn0```RE E m0.E0H> lr0(G1@ lr0(G1@0,A P0( G1@ 2H.0,A P0(A1@?,NT?<?<BgBg?<?<?,N ,6,HÐ/ ln0H> lr0(G1@ lr0(G1@0,A P0( G1@ 2H.0,A P0(A1@0,2,A Phm0,A PBh lr<( lrh?,NT?<?<BgBg?<?<?,N ,6,HÐ/ l.E<Hƍ> lr0(G1@ lr0(G1@0,A P0( G1@ 20.H.0,A P0(A1@?,NT?<?<BgBgBg?<?,Nf ,6,HÐ/ ln<Hƍ> lr0(G1@ lr0(G1@0,A P0( G1@ 20.H.0,A P0(A1@ lr<( lrh?,NT?<?<BgBgBg?<?,N ,6,HÐ/ l. <.?Bg?<?<XBgBgBg?/ N LN^NuNV/ &n9| lr!K lrh?<?< /,rN P lrh&_N^NuNVHlNXBl?<?< /,rN fPN^NuNVH>.Bg?<7/,zNPBF`.0A P0(8 @g?<?<7/,zNP`RF F m0lf<<:`<<: DfBE??<5/,zNP??<m/,zNP??<9/,zNP??<4/,zNP??<8/,zNP??<M/,zNP??<N/,zNP??<:/,zNP??<;/,zNP??<@/,zNP??<=/,zNP?,?<>/,zNP0,g2 lr0(8|g$ lrh80,f?<?<!/,rN P`60,f0 lr0(8|f" lrh80,f?<?<!/,rN P0g lbh`, lbh lb0(|g lbh lbhLN^NuNVH>.<A P<(=|BD`20ng:<`BE?0<RD?/,zNP0.=@RD DmLN^NuNV,H??</,6NP,H??< /,6NP,H??< /,6NP,H??< /,6NP,H??</,6NP,H??< /,6NP,H??</,6NP,H??</,6NP?< ,HA&/?< /,zN. ,H6<@??</,6NDP,H??</,6N.P0,f?<?< /,zNP,H?NTN^NuNV0.f0.  nh `0.  nh N^NuNVH0BN ,~&@@$KHn?< BgNPA  n!@?<NzTBg/,zND\N lvh N?</.ND\BE` ހXRE EmND .g/. /.N2P?<NTN?<?,/.NPP&JNBBE` ܀XRE Em g ?.<. 0A P0( [@??<0A P0( R@?Bg lz?( lz?( lz?( lz0(|??NLN^NuNV0.A P0( lr1@0.A P0( lr1@ lr0( lrhY@ lr1@N^NuNV lf9nBg?./,zNPPN^NuNV0.|g`00,A P hg9|$?<YNT`Bl$`4`|g`* l$f ?<ZNT` ,6,HÐ/ l<`RG G l0A Pf Gf`hBgNT nf?< ?NhX>`8A80A&P Dg Sf=|`=|0.2<F7@7@0<F7@7@0+H??+NhX7@0,2A7@ 7@0< lr=@0<FnX@T@7@ 7@RFSG GlH`N?<?NhX=@>.`0<2A02At0RG G m0.S@=@0<nH=@0<nHH@=@BnBG`8A80A&P Dg Sf=|`=|0.7@7@0<n7@7@0+H??+NhX7@0,2.A7@ 7@0< lr=@0.nX@T@7@ 7@0.T@n0.Sn @oRnRG0nm.?,NT?,?,?,?,NP?,?,NPX?<NTLN^NuNVHA-HA-H0<(=@/.Hn NPBgHn ?<NNPJg?0(T@H=@ l>0(T@H=@0. l>2(YAHA=@0. l>2(YAHA=@/,>NtXA&H| `8.:.BgBg/,>NPNBgHn ?<=NP=@/ /<?.?<?N ,BG` KH| g0nf8.RE` KH| f`02.SAAfv0"UAAll8.Bn`"0RD?? nH? l0N\Rn nfNDN@.H| g`\:.8.BgBg/,>NPN KH| g( KH| g0RD?? KH? l0N\RG0"Am.H| f gND?.?<>NX.H| f0nf f@8.Bn`"0RD?? nH? l0N\Rn nfN@.H| g`0<f*/,>NXLN^NuNV?<?<BgBg?.?. /.NN^NuNVH .g . g/.NX=@ @f0<`HlHnNP<.<. 0< 2<A lr ( -@ lr ( -@ n&P n$PBE` Ff0F@[`0[RE0 nhmL N^NuNVH>.<. 0< 2<A lr ( -@ n&P0g 0+|f0f 0+|f`:<`0 K PRE EmLN^NuNV l&g$0,f?<0< 2<A?/,rNtPN^NuNV?0<l?/,:N \/,:NX> Gm"/,:NX?<NT0S@?NT` /,:NX>N^NuNV??0|g`B,N``|g`|N``| g` ,N``|g` ,N``| g` ,Nh``| g` ,NP`x`| g` ,N:`b`|g` ,N$`L`|g` ,N`6`|g` ,N` `|g`/,6NXN`P```?N^NuNV?<N(T=@0,H=@0.|gBn0.N^NuNV9n9|0<9@9@0<9@9@9@9@9@9@9@9@9@9@9@9@A)H|?<N6T0,N^NuNV80,"f9|"HlH?<N\HlHn8NdPBgHn8?<NNPJfHHlfHn8NBPHn8?<AN\`HlfHn8N$PHn8?<AN\?<ONTJgN^NuNVH0&n$n ,/ NP` Hl. ./ NX:,H|f Em|| g || f,H|f Gm0<`J,H|g HЇ @|| f` K( K|SE0Gn HЇ @0<LN^NuNVH lfN"HlN>X> ,",/"</N"Ё @ o,,",/"</N"܁ F(|0Fo0H/NBX&@ f*NdBgN5fT?<N{|T0<9@9@0<`p? ,",/"</N"Ё @/N\ ,",/"</N"Ё @ `,0Fl&? ,",/"</N"Ё @/N$\`R/<?,N.\ @f`0H/NBX",$,/$</N$҂ A f`dR0",$,/$</N$҂ A|@Hl ,",/"</N"Ё @/NP0<9@9@0<`HNN0<9@9@Bl ,6,HÐ/ l 0LN^NuNVH0&n$n g  g` L N^NuNVH>.<. 0Fl0`0LN^NuNVH..,. l ` LN^NuNVH>.<. 0Fo0`0LN^NuNVH00.A $P0.A&P)j)j)j)j9j9j9j9k9k9k9S*?.NTL N^NuNVH00.A $P0.A&P%l%l%l%l5l5l5l7l7l7l6*L N^NuNV8HA)H A$)HAf)HA)HA)HA,)H An)H$A)H(A)H,A4)H0A)HA)H A)HA)HA)HA)HAr)H A\)H$AF)H(A0)H,BG`p0A PA&H0A00At0< @@@0|0@0,f| `||0<G l:!K RG G m l Blt>< `?NT/<?N.\SG Gl l A/HlxNPHlHn8NPHl|Hn8NPBgHn8?<NNPJg?<.HlxHlN Hn8NX.8fnHlA8BNHn8?<9N\>N* Gl GgHlHlA8H|\gHlHl.?<?NX0A $P0A&PBBBBjBjBjBjBjBj0<5@5@5@6*0<7@7@0<7@7@BkBk0,7@ 7@0< lr=@0<.nX@T@7@ 7@L N^NuNVtH>.0. |gHl0A PA/NP0. |gb0A PA&HBgHnt?<GNP?<NT|A:.tH|f\B`Hnt/ NPHl/ NPLN^NuNVH>.0lf`BgN78TN?,NDT0,A P 0A PBg?,NX?<?NX=l9G?NT?,*N0TBF`RF0At0Gg0At Pf0At0Gf:<`BE`0Ar02At0SF Fn9Gt0.A P0( 2A Ph f$0.A P0( 2A Ph gP?<?<BgBgBgBg?.NZ Ef?<?,NX?<?<BgBgBg?<?,NZ`H Ef?<?,NX?<?<BgBg?<?<?,NZ?,NT?.NT ,6,HÐ/ l/,fNX0gBg?/,fNP Gf HnHlNP @f Bg/.N \>N^NuNVH..<. N @f` ,f`/,/N8P. n.<S )@Bl`SRl o0,2,HAm ,",/"</N"Ё @(|U@??NX:09@9@ EPm2<(0H(H@@0A9@`Bl0l9@NN / l<BE`"0RE2A PA2RG J0A PAfn><BE?<0?<_?<Hn/.N`0REA2RG JAfn>< BE?<0?<_?<Hn0A P/(N`0REA2RG JAfn'0A P hg0A P?(A)/N Z\n20A P hg0A P?(A4/N $\n=0A P hg0A P?(A?/N \0lg0<F lnBh `0<F ln1| RF F mHlHnNP ,",-@?<0?<_?<HnNXAA/ ./N?</,nN\N*Bg/,nNx\|</,nNX0|g`HBg?</,nNP?</,FN\Bg/,FNx\</,FNXBg?/,FNP`j`>|g8|g2|g,|g&|g |g|g|g|g|g`0|?NT``|g`Bg?</,nNPL N^NuNVH>.N8 ,f`<<:<` 0<RE0Gm0,A P0(F1@0,2,A PA| Gg?<0<RGS@?/,zNP?NT ,",/"</N"Ё&@LN^NuNVH>.N&l*,g|+f \Rf`8,A PA| Gf` ,"/"</N"Ё @( ,",/"</N"Ё @(@0,2,A PA|?R /N:\`NLN^NuNVH>.N&l,,+f\Sj`LN^NuNVN( ?<?< /,zNP l(f&/,?<Bg?<N& ?<?<N'"X`$/,?<Bg?<N& ?<?<N&XN'?<?< /,zNP?<NTBg/,zND\?,?,?,?,NlP?</,zND\?<NTN^NuNV l2(0(AgXAher1A`N^NuNVH<<>.`r?< NTJ@gdN6:0|p0g8|m1g2|n2g,|o3g&|j4g |k5g|l6g|g7g|h8g|i9g`0 >0||0@RF````?,A&H`Sl K|?NUTTJ@g lnBgNTzT< @g?<NTfT:0.|g`X K||am* K||zn K|?NT K` K|?NT K``|g`@ Go4 K|@|| g K( K| Kn``|g`\ K||am K||zn A-H`A-H8` K|? nNT KRD0Em`P`|g`D K|?NT KRF8` K|?NT KRD0Em````9G9|?<NdNT0<`` 9GNJ0<LN^NuNV0.lf ?.NT0.A P hf?.NT?<?< BgHn0.H/NHlHnNPHnHnNPHlHnNP/. HnNPHlHnNPHnBgN\=@0.|g``B`|g`*BgNT lfBl?<?</,zNPP``|g`0<`0<N^NuNVH0A&H ,",/"</N"Ё @$P,g^.,",/"</N"ށ G(|UG=G>,ng"2, g`SGk `  `g g` L N^NuNVH,H=@>,A&H HЇ @||0m HЇ @||9o``SG Go, HЇS @||0m HЇS @||9oBF=G` 2RGHЁ @2RFA| HЇ @||0m HЇ @||9oAB F oN`0.9@9@9@HnHnNP nfR` cS?<0?< BgHn/.NHnNX:N%?,?,NX|8<BG`AH?NJ T8RG??NX=@0nl0f`?< NIT8RG0Fl0fB,`0RGAH?NIT80El0f0.@9nBgN`TN$LN^NuNVH&n>. K|.|.02|B< 0HFF(0I0|B< F(0HFF(0IAPB< F(0HFF(0LN^NuNVH&n>. <:|@@ K|:|:B<F F(0HFF(00H@?B< F(0HFF(00HH@B< 0HFF(0LN^NuNVB?< N\-@0.|g` x`4`|g` `"`|g` ``|g`/.?< N\N^NuNVN l(d9|(CA0<N8?<Hn?</,VN$ ?<Hn?</,VN$ ?<Hn?</,VN$ ?<Hn?</,VN$ ?<Hn?</,VN$ ?<Hn?</,VN$ ?<0?< BgHn,HH/N?<0?< BgHn,HH/N?<0?< BgHn,HH/N?<0?< BgHn0,/N?<0?< BgHn0,/N?<0?< BgHn0,/N?</,VN\?</,VNx\|=@/,VNX ng nfBg?./,VNP ng0.fCA0<N8`HnHnN*P .@HnHnNP .@HnHnNP .9@HnHnNP .9@HnHnNP m &n .@HnHnNP m l .9@N^NuNVN"CA0<N8?</,RN\?</,RNx\|=@/,RNX ng0.fCA0<N8HlNX=@0.g.AH|\g0.RnA\ABHlFF)F)@F)F)F) F)F)`F)F)F)BF)F)F)"F)F)b gTRQZ FPdPRFB)B)B)B)B)@B)BB)B)B)B)B) B)"B)B)B)`B)b gTR`?<NTL N^NuNVH0. . =lNBgNT| lA$H0.|g0.S@=@` 0.=@0,A P0(lLAP 6.HЃ&@RZRZR@ZBRZRZR Z"RZR`Zbg>FF+F+@F+F+F+ F+F+`F+F+F+BF+F+F+"F+F+bRlN?<NTL N^NuNVH00.A P=h0.A P=h0.A P=h0.A P-h0.A P (2.A P6(HÐ-@-l~".p0. S@Ҁ-A Ap0. S@Ҁ-A"A мS@BBBBQ l&t4.~ ng/./<N CPr2.&qRn"Pg^(x(UD\Bb RGnf`@·m:<PBDk:8EPr2. 2b`pH$CRZRZR@ZBRZRZR Z"RZR`Zbg>FF+F+@F+F+F+ F+F+`F+F+F+BF+F+F+"F+F+b gTRQd` zxmFbXp1P g4H$Cp0HgS@gF3F3RE EPfzRD DfRGnfL N^NuNVH00,A P=hBgN8T l&t4,2.I~ lgr/./<N CP&qXA"PgJx(UD(\Bb>8,.SDBBBBBBBBBBBBBBBBBBBBQRGlf`:<PBDk:8f`NpH$CZOZZZ?ZZZ/Jl*f ZZZZoZZZ_ZQ <PDg* gFS@BB+OB+B+B+?B+B+B+/Jl*f B+B+B+B+oB+B+B+_B+`DBBLBBBFF+F+@F+F+F+ F+F+`F+F+F+BF+F+F+"F+F+b gTRQdRGlf0,A P0(GAP &@<`20<BBBBBBBBBBBBBBBBBBBBQRF0lm?,?,N X?<N:TL N^NuNVH00.A P=h0.A P=h0.A P=h0.A P-h0.A P (2.A P6(HÐ-@-l~Bn".p0. S@PҀ-A Ap0. S@PҀ-A"A мPS@BBBBQ l&t4.~ ngx/./<N CPr2.&qRn"PgF(x(UD\Bb RGnf`(·m:<PBDk:8EPr2. 2b`pH$CZPZZZ@ZZZ0Jl*f ZZZ ZpZZZ`Zg4U+U+U@+UJl*f+U+U +U+U`RQt`0zx nm8bJp1P g&H$CPg Jng3UPRE EPfPzRDl.fRGnfL N^NuNV?>.BgNT0,NG @m0lN?<NT>N^NuNV?>.BgN~T0,NG @Pl0lN?<NbT>N^NuNV?>.BgNJT0,LG @m0lL?<N.T>N^NuNV?>.BgNT0,LG2,A Phl0lL?<N T>N^NuNV?,LNTN^NuNV0,L2,SAAl ?,LNT`BgN4TN^NuNVH0>.BgN T0,A$P:*SE0*EAP &@0*jAP -@<*2RAA=F<,,SF"n########################################Q?<N TL N^NuNVH0>.BgN T0,A$P:*G0AP &@0AL -@<,,2*GSF"n""""""""""""""""""""Q?<N rTL N^NuNVH0&n. <,N:,LBgN JT0,A P0(EAP HІ-@/ NXU@82,*"n l&`p FPdRFH$CZPZZZ@ZZZ0JAf ZZZ ZpZZZ`Zg2U)U)U@)UJAf)U)U )U)U`RQn <PFg" gFS@BB)OB)B)B)?B)B)B)/Jl*f B)B)B)B)oB)B)B)_B)2,*`BBBLBBBHǏ<HƍHF`40.gB $@BE`BRE0Gm &@BE`BRE0Fm0.H0SD @n?<NVTL N^NuNV0,A P?(BgNXN^NuNVH>.<. BgNT0,A P0(GAP &@:,SEBBBBBBBBBBBBBBBBBBBBQ?<NTLN^NuNV lf l4NN^NuNV lf l4NN^NuNVH>.<. BgNjT9GL9FN?<NXTLN^NuNVH0 l0,A P0(lLAP 6,NHЃ&@FF+PF+F+F+@F+F+F+0Jl*f F+F+F+ F+pF+F+F+`F+L N^NuNVH0 l>,N0|g 0S@>`0>0,A P0(lLAP HЇ&@FF+F+F+F+@F+BF+F+F+F+F+ F+"F+F+F+`F+bL N^NuNV?<NT)@~0.|g`R)lBl*9|.=|9|,-|@A)HDA|)H@A)H)HDA)H@A)H. &n2."q,)L8)PBE"F6<04 DQRE QLN^NuNVH>. 2."q:)PBF"l&l6<04 EQRFQCl ngCc04 EQ04<  EQ<<"l&<A4RB&l6<SG04 EQ RIRFQ`LN^NuNVHln?<BgNPA  ln!@|Bg?</,nNPB?< N\-@ lFgN P lFgm9|9|F`&"lHgBH`"l)hLH9|F!IL/.?< N\N^NuNVH0N*, lR ,g$,/,<d/N,/,,/N,X`B?<Hn ,R/Nͤ ?<Hn0,lHR/N͆ ?<Hn/Nt |%0,A P0(2,A PhAP &@ l*gV l&C>< p$CHZOZZZ?ZZZ/ Gf\` GfTQ` lC&>< pH$CRZRZR@ZBRZRZR Z"RZR`Zb Gf ` GfPK gTKRKQNL N^NuNV l*f`pNN0,*|g`0,9@0,A P1l0,A P0(1@0,A P0(1@0,A P0(1@0,A P0?<NT`` |g`0,H9@0,A P1l0,A P0(H1@0,A P0(H1@0,A P0(H1@0,A PBP0,S@??,NfX9@BgNT ,6,HÐ/ l. Gf0,2,RlANh`(A||fNN loSl>N^NuNV9|H lBP LN^NuNV9|H LN^NuNV9|H L lf l4NN^NuNV lf l4N9|H lBP LN^NuNVH0. <. :. | lA$H ,~2HЁHЅ&@ZPZZZ@ZZZ0ZZZ ZpZZZ`ZL N^NuNVH0. <. :. | lA$H0|g 0S@:`0: ,~2HЁHЅ&@RZRZR@ZBRZRZR Z"RZR`ZbL N^NuNVBgBg?<N\?<?<?<#N\?<N0TBl?<?<NX)@ l(fN/,?<Bg?<N /,?<?<?<N ?<?<NXBgNDTAL)H0`6/,?<Bg?<Nl ?<?<NX?<N TA)H0NPN^NuNVH9|9|9|Bl0<9@9@9@9@9@9@9@9@9@9@9@9@A)H|?<N6T=l=l=l=l=l=l=lBD0.|gR l2(0(AgXAher1A`B?< NA\" |/?< NA\Jf8<` rc8<0.|g lf ?<N/T lf?<?,N)X lf ?<N$TN?.?.?<Bg/,rN >0| g8|g2|g,|g&|g |g|g|g|g|g`* nf 0<` `0<2| HA` `| g` 0<` `|"g` nf 0<` `0<` `|g`p nf0<` nf* l&fN2N l Pg``0< ` j`, l&fBgN0TN l Pg``0<` <`|#g`p nf0<` " nf* l&fN3"N\ l Pg`b`0<` `, l&fBgN1TN. l Pg`4`0<` `|g` 0<X` `|g` nf 0<Z` `0<Y` `|$g` nf 0<[` t`0<` j`|g` nf 0<\` P`0<` F` |g`* nf 0<` *`0<` ?.?.NX< Fff?.?.?<Bg/,vN U@<0HH@J@g Fl0<` 0<2HA2<4H…HB BA` `0lg ?NT`vN lr:( lrh.<.EHƍ.:.Hŋ ,6,HÐHІln02,A PhlX ,6,HÐHІ)@9F0l9@NBgN58T nf" l0f nf 0<` `0<` nf lvg<,`RFA||0mA||9o0SFAB`SF Fm$A||0mA||9oRFAA/NXJ@g2HnAA/NŮP @f?,vN`TBg/.NĜ\`N0<` ``0.|g(9n:.<<GSgXKJSf`<+0`0.|g0.|Hg`<0g`"0.|g` 0< ``|g`0<`0<````|H8g`0g`0<`p`|Pg`<0g`0.|g` 0<`J`|g`0<`80<`0```|P2g`0g`0<``|sg`0g`f0<``|tg`$0g`L nf 0<``0<``| g`0g` 0<``| g`0g`0<``|Sg`D0g`0.f 0<`x`* ng nf 0<`^` nf0<`L`|Rg`,0.f 0<`4` nf 0<`"`0<``|g`. nf 0<`` nf 0<``0<``|bg`0.f 0<``0<``|ag`,0.f 0< `` nf 0<``0<``|g`j0.|g` 0<`n`|g` 0<`\`| g` 0<!`J`| g` 0<"`8`| g`0< `&0<````&|;g |<g|=g|>g|?g|@g` 0.|g0<2.|;AA``|Ag|Bg|Cg|Dg`0g`0<2.|;AA``>|Tg8|Ug2|Vg,|Wg&|Xg |Yg|Zg|[g|\g|]g`0g`0<2.|TAA`@`|.g`0g`0<`&`|!g`B?<N2T< Fm Fn0<>F|`` Ff 0<G``0<``|2 g`0g`00<``|1g`0g`0<``|g` n f 0<``0<``|0g` n f 0<`j`0<```|!g`B?<N1T< Fm Fn0<RF|`0` Ff 0<[` `0<``|#g` n f 0<``0<``|1g`0g`F0<``|g` n f 0<``0<``|g` n f 0<``0<``|g`. nf 0<`v` n f 0<`d`0<`Z`|r g` 0<`H`|c(g|d)g|f*g|N+g`0<2.|A|(``|J-g|q.g|e/g`0<2.|A|-``>|p0g8|m1g2|n2g,|o3g&|j4g |k5g|l6g|g7g|h8g|i9g`b0.f0<2.|A|0`` nf0<&2.|A|0`n:.<FGBSgXKJSf`<+0`J``0<`>#f-%4IqHDE=>0ij_g /235789:;MNPKLRSTUVXYZ[\BCGlmnvup'()@+,!sab^drKMSR0GG7K4M6   5'(0 " $ % /-+wpmnojklghif J. $%&2-,xyz{|LN^NuNVjH>.8<0,g l&gN0 G fNN0<` lf Gg ?<N!T lf Gg?<?,N(X lf Gg ?<NT l&f& G&l Gg Gg Gm Go?N``|g` N``|g`Bg?,NXX``|g`x,HB,?< ?,HlNPJ@gB9| ,",/"</N"Ё @(|?AA/ l@N\` ?|g8|g2|g,|g&|g |g|g|g|g|g`?<NfT0|?NT``|g`BgN|T``|g`?<N|T`z`|g`?<N|T`b`|g`BgNdTN"h`H`|g`?<NdTN!`,`|g`?<NfTN'``|g`?<NfTN'``|g`?<NfTN``|g`?<NT``|g`?<N:T`` |g|g|g|g|g` ?<NfT0|R@?NT`h` |g|g|g|g|g` ?<NfT0|R@?NT`(`|g`NTN8N*` `|g` N` `|g` N8` `|g` Nx8` `|g` N8` `|g` N` `|g`*?<NfTNHl?,N\J@gNZ` z`|g`NNH` d`|g`?<NfTNfN8` B`|Zg`?<ZNBT` *`|Yg`?<YNBT` `|[g` N` `|Xg`BgNT` `|\g` N<` `|g`?<NfTN` `>|Rg8|Sg2|Tg,|Ug&|Vg |Wg|Xg|Yg|Zg|[g`0|R?NT8` h`>|>g8|?g2|@g,|Ag&|Bg |Cg|Dg|Eg|Fg|Gg`0|>?NT8` `|g|g`?NT8` `|g`8?<NfTN ,//,0,R@?/,N8` `|g`R?<NfTN/, ,R/NvP/ ,S//,NbP/0,S@?/,N8` \`|g` N8` H`|g`BlBgN"fT` .`|g`FHlNXU@9@,g"`Sl loA|| gBgN"T` `|g`fSl<,`SF FmA|?NNTJ@f`SF FmA|?N,TJ@gRF09@9@BgN!T` r`|g`f<,`RFA|| gA|?NTJ@g`RFA|?NTJ@f09@9@BgN!,g2NN9|HlHlNPPNBl?<N TN` `|g`?<NT8` `|g`BgNT8` l`|g` N` Z`|g` N` H`|g` N` 6`|g`Nh?< NfT|NH` `|g`NB?< NfTB,NH``|g`0 l&g"?< NfT l?,?<_/,zNP``|g`BgNT``|g`?<NT``|g` N8`r`|g`?<NT8`X`|g` N~8`D`|g`N8`0` |g|g|g|g|g|gڰ|gҰ|gʰ|g°|g|g|g|g|g|g|g|g|gz|gt|gn|gh|gb|g\|gV|gP|gJ|gD|g>|g8|g2|g,|g&|g |g|g|g|g|g`0 l&f"?<NzT0|9@$N(?<NzT``|g`L l&f A  lz!@9|&?``|g`?< NfTN `j`>|&g8|&g2|&g,|&g&|&g |&g|&g|&g|&g|&g`$0|&?NT: Eo?NT``|g` Nr8``|g`@?<NfTNR/,HnjNPHnjNLX8g9|?,NvT``|g`2?<NfT/,HnjNPNTJ@g HnjNfX8`r`|g`?<?,N X`V`| g` N`D`|g`BgNT`.`|g`?<NT``|g`6,g*N9|HlHlNPNBl?<NT``|g`?< NfTNf``|g` N 8``|g`?< NfTNݚ``|g` N`z`|g` N`h`|g`BlBgNTNj`J`|g`?< NfT?<NpT`(`|g`?< NfTBgNpT``|g`(?<NfTN ,R//,NP8``|g` N8``|g` N8``|g` N``|g`. lo?<?,/,zNPPBlBBNP`h`|g`BgNT`R`|g`?<NT`:`|g`?< NfTN``|g` NN` `|g` NT``|g` N``|g` N``|g` N@``|g` N``|g`?<NT``|g`BgNT``|g`?<NT`l`|g`?<NzT`T`|g`N`?< NfTHlNjX`.`|g`"N:/,HnjNPHnjNjX``|g`:N/,HnjNPHnjHl4NZP @fBl?,NvT``|g`$?<NfTN?,/,N\8``|g`?,,HHǏHG=G,HnNj<<` ?< NxT<0SG @o0fNlLN^NuNV`BgNLT lnN^NuNV? lo(BG` A RG0lm9|?<NT>N^NuNVHN0.|g` lf 9|9l lo lod?<NRTSlSl0,9@ ,",/"</N"Ё @(|?A A/ l@N\?,?,N", ,/ </N Ҁ] A(|0A @o?,BF0.|g`>`*A||?NrT< Fg0f`SG Gl FfRG`D`|g`:`2A||?N,TJ@g< || f`RG0<f0LN^NuNVH. | HlHnNPA&HBF` K||Af0<`RF/ NX=@0nm0<LN^NuNVHBgNT< @f0<`xN lf?<?,NjX>,`NSG0Fn?<NT<>,`Bg?,N:XRG0FmA|| f Bg?,NXNӮ0<LN^NuNV?Nr0. |g`*9|HlNXU@l9@ ?<N,0l AA|0RGA|| f`V`|g`LBl ,",/"</N"Ё @(|?AA/ l@N\?,?,NXN.>N^NuNVH0,H=@B,N ,",/"</N"Ё @ f lf N9|N @f`N?< 0,Rl?HlNP?< 0,Rl?HlNPBF,H|f"`0RFA A|| gAA/AA/NPHnNvX>0H/NBX&@ f`l/< ,R/NP @fP?/ N\NH0H/NBX&@ f`*/< ,R/NP @f?/ N\`R ,",/"</N"Ё\ @ Hn/ NP0",$,/$</N$҂\ A|@ ,",/"</N"Ё @(||",$,/$</N$҂\ A@9|N?<NTR09@9@N0,2,SAAlRlBg?,NǤXNL`?, ,R/N\`N ,6,HÐ/ l0H/NBX&@ f,N ,6,HÐ/ l.0|g`N lfN9|)lB ,",/"</N"Ё @ gN̆HlHlNPR0<9@9@9@0,g ?<NnT0,2,SAAl0,R@?NTR ,6,HЃS6,HÐ",SlX ,",/"</N"Ё2,Ё]2,&@Bg0,S@?NX+|?/ l@N\`Bg0,S@?NâXBgNTBg?,NÎXNNN˲`N``|g`z,,`H ,"/"</N"Ё @(|? ,"/"</N"Ё @/N\R m/,/,NP ,Bl)l`.`|g`$Bl)lN ,6,HÐ/ l. ,fN` Gf:,` :,Hŋ ,6,HÐHŐ, lBBl lfNn 6,HЃ)@NL,f6 ,",/"</N"Ё @(|U@??,NX8`8,9D DPm2<(0H(H@@0A9@`Bl0l9@/ l. ,",SmN` Gf:,` :,Hŋ ,6,HÐHЅ,",SmN` lfNp 6,HЃ)@",So ,S)@ ,S9@N.,f6 ,",/"</N"Ё @(|U@??,NX8`8,9D DPm2<(0H(H@@0A9@`Bl0l9@/ l lfBl?<?<?<#N\SlSNZ9|BgNvTBl`R,H|f lf9|?<?<?<#N\?,NTSN9|?<N"TBlN^NuNVN @f0<`( ,Rm, ,",/"</N"Ё @ f0<` ,Rm/<?,N.\ @f0<` ,Rl ,",/"</N"Ё\ @ o0,2,SAAl> lfBl?<?<?<#N\RNRl9|BgN&TBl`R,H|f lf9|?<?<?<#N\?<NHTRN9|?<NTBl` ,Rl ,",/"</N"Ё @ o0,2,SAAlBRlRBlBl loBl ,6,HÐ/ l`SG0loA|| gRG0A RG0A `P oFNSNHlNhXU@9@ loSlBgN T`?,NT?<NT>N^NuNVHA|| g6 lOl?<NTRlRl0,9@`Rl?<NT`,g` llXA A  A  lOl?<N(TRlRl0,9@`Rl?<N:T`,8,Bl0<9@9@N @f9D?<N TLN^NuNVH0>.BgNJT ,",/"</N"Ё$@ lf"&R*|=@A$HlNX@HlNXU@??,N$X< FPm:<(2H(HAA=E:n0lg&9E0l9@ ,6,HÐ/ l.`?< NTJ@g?N(?NX`?N^NuNVH0>.N?<NfT lz$hl/ NXU@H&lbN :?<80,8A l lRl`Bl?<?<0,8A l lRl`Bl?< ?< 0,8AlA/?,N `0`| g`@ loSl`9| ?< ?< 0,8AlA/?,NX ``| g` ^BE``|"g`:<``|g`&9| lbhBg?</,bNP``|g`"Bl lbhBg?</,bNP`d`|g`<0,f20,g lbh` lbh lBg?</,bNP` `|g`Bl``|g`9| Fg F&g F$g F%f/ NX F&g F$g F%f Bg?/ NP F&g0f0<`0,8A<f?0|$g`?,N/T``|%g`?,N/T`0<````x0|$g`LNHlHnNP?<0?< BgHn/,NHlHnNPHnNX0<`$`|%g`BgBN\0<` 0<```L N^NuNV?>. G g0| l` l?<8/. ?./,bN$ 0. lb!l ?<?./,bNP?<?./,bNP>N^NuNVTH&n>. ,.*.NN=@V nVfDHn\NXJ@g*HnXNX \m Xo,.\BG*.XR` N0<` NNTND/?// N=@TNN*Nn nTf6 nVf.?< 0,R@?NX @f 0<``0<`` nTf nVf0,.gHl?,N\ @flBgNNT`&Hn`N`X?<Hn`N \ @f=|T`&0,,l4l?.<. :`P0A P o8?NT&lBBn-l/.?.// N @f0<` RE0Fm0<LN^NuNVH>.<. :`40A P o?NTBN (X @f0<` RE0Fm0<LN^NuNVH&n.. <.*.HnHn/? "/"</N"Ё/N > @f?.R .Ї/N\0<` `N0<LN^NuNVH&n>. ,.*.NN.=@ nfhHnNXJ@gPHnNX m o,,..,"./"</N"ށ G(|UGSG*R` N0<`nNNTND/?// N =@NN*Nn nf6 nf. lo&Bg0,S@?N&X @f0<``0<``0.LN^NuNVH>.<. :`0A P oh?NT&l(,S ",/"</N"Ё] @(|U@S@=@ ,R-@/.?.// N( @f0<`SE0Flz0<LN^NuNVH&n.. <.*.HnHn/? "/"</N"Ё/N  @f?. R/N\0<` `N0<LN^NuNV lb0(:|g0<``0<N^NuNV lb0(|g0<`2`0 lb0(|g0<`` lb0(|g0<``0<N^NuNVHN?<NfT l^0(|g l^h l^h0,8A,`P0A P o8?NTBNPX @f"Hn0,8ARG G mBn`HlBgN\=@Hn0,8AN`X?.Hn>Nh\ @fN0?<NNT0<`F0,,l4l?X$.&,jBDBF B(UFJng$P`$E"J B P2 Zn Ak Q\DoX /o\ {lVJEfX0,g.HlHnNPHnNX=@0.RnA gJlf.C Sz+| Zn Ak QA` S-H gB"n$ z+|n 0S@2DJEk gQ`$H`fQ`b J"B0`Rg\Jlf.C Sz+| Zn Ak QA` S-Hz+|0DJEk"B`JlgZ JSHg&(AH@2.`g QL`nL J(AH@2.`g QL`DLJlfA ` SJ=J0,fHn/.NP n n0N*0<`0,fHn/.NPN*0X0,g.HlHnNPHnNX=@0.RnA gjJlf.C Sz+| Zn Ak QA` S-Hg*z:. JEk""0"J$ `fQ`lS A"B0QRg]Jlf.C Sz+| Zn Ak QA` S-Hz+|0DJEk""J$ `JlgV Ag&(AH@2.`g QL`fL AAH@2.`g QL`>LJlfA ` =A0,f Hn/ NP n n0N*0<`0,f Hn/ NPN*00|g`0,: <-@`t0A P o\?NTB/,Bg nN @f ,gN ,Ѯ`0 ,gN ,Ѯ ,6,HÐ/ l.,. *.BD0,8AlA/NX/0,8AX0,g.HlHnRNPHnRNX=@0.RnAR 0El0<9@9@9@BBnBn&l ./ </N `ܮ0,gF0,f@??0,8AlA/ "/"</N"Ё @ PA/N 0El40DS@???. "/"</N"Ё/N ~ =@`v0Ef*??. "/"</N"Ё/N P=@`F???. "/"</N"Ё/N =@ nfBg ЮR/N\ nf 0nR``H/.HnR??.HnHn /?. "/"</N"Ё/N @gHn0,8AlA/NP0,fHn~/.NPN*0.LN^NuNVH0&n.. 0,8AlA-H0,8A. <.0,8AlA$H S`Q/HlNP0<L N^NuNVH0&n>. <.:.0,8AlA$H S`QBQ S"Hpx+`fSR@Q+`BQ/HlNP0<L N^NuNVH0&n>. <.:.0,8AlA-H SEx8`QE Db"n`Q  g RD Dbv` RD DbhH0H/NBX-@ f L0<`P+|?/N\&0@Hn/.NPHnHlNPL0<`?,`=| J.||Af BnR`P J.||AfS`4 J||'g |"g` J|SG`4 J||Af Go J||\fUG```SG Gl` Go J||/f J(||*fHnHn R/? "/"</N"Ё/N  @f& "/"</N"Ё @$P>.`F`:Hn0,8A GoS.H|Am .H|Zo.H|am.H|znr.H|AmH.H|Zn. <.` GfDH|Am H|ZoH|am$H|znH|Am H|Zo0<`T`BH|Am H|ZoH|am$H|znH|am H|zo0<`SF0 @nh0<LN^NuNVH-lBBENT$.&,jBDBF B(UF&P\Do {fJEf-G=DRE` }fJEf -G=D`SE` 'fRDRKDo 'f +\fpRDRK` "fRDRKDo\ "f +\fNRDRK` /fB +*f:TDTKDo *f +/fRDRK`RDRK`⾃jdRBD BBF(UF&P\`RKRD`0R`N*0g*N?.R ./N\?BFKOSX\`eimrvz 88 M 88      - 9 :  J O P d n o     , 1 2 R T U [ 88 - 7 A |       )) I Z [ \ l     1/:`/: /<V jw      $- 6?M V_h qz      PP(LN$ P    9 :1# !(  (6 D R`n| ! """!$L N P  P  < < A H  N U [ a$ h+ p3 $> oP}$#  !."0 #A C 1%0  &['s(u)*+,-./ 0 $ A2@3"475L6a7v8x9:;< = > ? @ 1QBPC$D<ETFlGHIJKL M N O P0 A2]R\  SJTYUcV@mWwXYZ[\ Q c^b&_`ab]odn- efgh6iJjLk[lemgnt c  pv5qrstuvo APP @ \ x            <  X t       ( ( ( 80 T0 p0 8 8 8 @ @ @ 4H PH lH JJ@ : @H     0 L+h3 ?@ H@ H@  H@  H@ H@ H@ H@H@H@H5': =  :: 63@4 !. Q Q  Q  Q  Q  Q  Q Q Q  Q  Q  Q  Q  Q  Q Q P@P    P *)  @ @!@"@#@$@%@&@'@(@ )@ @ /+.  -,,@ +@.P *P908!  1 2Q,3QH4Qd5Q6Q7Q8Q/Q: ;  <'=@ %  & @!@ <@+@- (7 < @+  K @-D7 ` ! |Q!  Q  Q  Q " !  Q! ; Q E  !  Q! QQ W A( ^$#!  !! p "@- # u  @+  % x, & z, % |,  , !,    ! Q!   Q  Q !  !  $ Q! 3  Q 9  @ % C  B J@ 7 V\ 7     % 4 # /x PP KP  P e  g  h  i  j  k l  /!/ m!+    !+    ) ! +  <  X  t!  k k!  !!%$% + 2 < %A   > L:955-*X l   y   '1  ! !%  = !=!89!T9!p,0 ! c0 (!  ! !!! ""4  "P "l  " "  " " " # #0 " %%  L   ,.02468 : <1>  @\xz          1   8 ,8.80828486888 :8 <81> 8  5 @@`@w %+#L&147=\ABCDCDGLGHIDJ4KLMNOGvBBF` 0؀RF F(Dm g NrBgNT l(f<<`<<G2. A쵺"G!I!I G0(S@ߘQp$K:+SE0*rHIA5@0*rHiA5@0*rHIA5@0*rHiA5@0* @g6 @g0 @ g* @g* @g$ @g @g @g&Q|`&ߪ `ߪ j ߐߨߨ`ߪ j ߐ`L N^Nu Reorganizing memory... Please be patient ! WRITE BLOCK Write[1][|Unsupported screen resolution !][SORRY]ced.infced.cfgced_m.fntced_c.fntced.prn[3][FATAL ERROR !][GULP][3][|Disk error !][ Hmmm ][3][|File not found !][ OK ][3][|Out of disk space !][ Hmmm ][3][|Not enough workspace !][ OK ][3][|Line too long !][ OK ][1][|Printer not ready !][RETRY|CANCEL][2][|Stop printing ?][STOP|CONTINUE][1][|Wrong printer driver version.][OK][1][|Wrong config file version.][OK][1][|Too much directory entries !][SORRY][1][|Illegal macro call !][ OK ][1][|Please close all|desk accessories !][ OK ][3][|Delete block ?][DELETE|CANCEL][1][|Wrong macro file version.][OK][3][|No printer driver|installed !][GO ON|CANCEL][1][|Unbalanced braces !][ Hmmm ][1][|Unbalanced comment !][ Hmmm ][1][|Illegal cursor position !][ OK ][1][|Cannot search for nothing !][ OK ]*.*\scrap.txtUNTITLED\[3][|Restore line ?][OK|CANCEL]Free workspace (bytes): [3][| Unsaved modifications| in text ][|SAVE|CANCEL][3][|Clear all buffers ?][CLEAR|CANCEL]\*.**.*. bytes in files[0][ Drive info | kb total| kb used| kb free|][ OK ]. F | . INSERT OVERWRITEV1.03 RELEASE 26-03-91 Acc mode C*HOUTSRCSTXTV**C:\CED\C:\CLIPBRDCED.MACC_HEADER.TXTCEDHELP.TXTStarted:Version: <>()[]{},;.:'"|!?+-QUIT CED Edit mode - more - [SPACE] = Browse [UNDO] = Cancel- eof - scrap.* Macro too long !! OPEN FILE Open ADD FILE AddUNTITLED\OPEN NEWOPEN NEW\ File has inproper line format ! Repairing... SAVE FILE AS Save[2][|Take over new path ?][OK|CANCEL].v* DELETE FILE Delete[3][|Delete | ?][DELETE|CANCEL] scrap.txtDROP Macro end M Macro start Mblock|from clipboardPress [left shift] to stop ! 1234FINDOkNextREPLACEReplace allVerify all>> string(s) replaced <<1FINDFIND FUNCFIND FIND: Select path and extension Find./**/>> No error found <<PRNCED.PRN INSTALL PRINTER InstallPRN1.03: Macro too long !! Recording macro... Press [SHIFT] to stop macro Redefine function/num key ! (ESC=cancel)CFGCED.CFG LOAD CONFIG LoadMAC LOAD MACROS LoadFNT LOAD FONT Loadced.infC:\CED\CED1.04MAC1.03ced.infCFGCED.CFG SAVE CONFIG SaveMACCED.MAC SAVE MACROS SaveMAC1.03 READ DIRECTORY Ok. CED1.04*.*\\CON:AUX:PRT:rawCON:AUX:PRT: NCNpAzN$mp*$mL("mNbprAzNNfN$mp*$mL( mS؅!HprAzNNfN$mp*$mL( mS؅!H$mp*$mL( mS؅ 0H$mp*$mL( mS؅!HprAzNNfN$mp*$mL( mS؅!HprAzNNfN$mp*$mL( mS؅!HprAzNNfN$mp*$mL( mS؅!Hpr"AzNNfN$mp*$mL( mS؅!Hpr)AzNNfN$mp*$mL( mbS؅!HpAzNNfN$mp*$mL( mS؅!H$mpR$mp roA Np~A NP$mLR$mL UoN쳂NApN|A@N|ADN|AHN|ATN|ApNN6<qpstsrN`6<qpxtxrN`pN>pNNpNpNpNpNNEpNtdrNXprNǂEpN6<q0<4<rN`p rNǂEpN6<q0<4<rN`p rNǂEpN`xO 3|a^J9gD 9f2A1|A!|A!|&A1|.`By|a 0< "<a"A>0<#"<A0A aA3 N0<"<A RaA R P(f09 Nhf?A Jf \fC @fA #aNuJy|faNua"x,Ag#,~A!,aA01|AC 0< "<aNu o Pf(!~,B9 |:"yf |N y~N0<4"<A 'A0a&NuB?< NA\#Nu/9?< NA\NuA0"<0<NBNu CedC:\CED\CED.PRGC:\STARTPRG\*.*[1][|Unsupported TOS version !][ SORRY ]Copyright (C) 1990 by Matthias PfersdorffP  ,    $ (-v mD/0H*-( mS؅ 0HNN̎N˶ ************************************************************ * * * Shareware * * * * * * ------------------------------------ * * ULTRACOOL CED Texteditor * * ------------------------------------ * * * * * * * * * * Version 1.03 * * * * Release 26-03-91 * * * * * * * * fr Atari ST (TT) * * * ************************************************************ * * * * * Copyright (C) 1990/91 by Matthias Pfersdorff * * Rubensstr. 9 * * D-6780 Pirmasens * * Germany * * * * * ************************************************************ CED V1.03 Seite 1 Copyrightbestimmungen ============================================================== CED ist Shareware. Das bedeutet, da sich der Autor alle Rechte an dem Programmpaket vorbehlt. Die zum Programmpaket gehrenden Dateien (s.u.) drfen in keiner Weise modifiziert werden. Kommerzielle Vervielfltigung und Vertrieb des Programmpakets durch Public-Domain-Anbieter oder sonstige Firmen bedrfen einer schriftlichen Erlaubnis des Autors. CED darf nur in privatem Rahmen frei kopiert und getestet werden. Falls Ihnen CED gefllt und Sie CED regelmig benutzen wollen, sollten Sie so fair sein, die Shareware- Gebhr von DM 30.- (Schler/Studenten DM 20.-) in bar oder in Form eines Schecks an den Autor zu entrichten. Sie erhalten dafr nicht nur das Recht CED guten Gewissens regelmig zu benutzen, sondern auch einen Update-Service: Sie werden bei Erscheinen eines Updates automatisch benachrichtigt und erhalten die neue Version gegen Einsendung einer Diskette und eines frankierten Rckumschlags. Der Autor mchte noch darauf hinweisen, da es i.a. blich ist, einem Shareware-Programm lediglich eine Kurzanleitung mitzugeben und erst nach dem Erhalt der Share-Gebhr eine vollstndige Anleitung herauszugeben. Da der Autor jedoch der Meinung ist, da eine Kurzanleitung nicht den ntigen Einblick in die Fhigkeiten eines Programmes bieten kann, wird CED, vertrauend auf die Rechtschaffenheit der ST-User, gleich mit einer ausfhrlichen Dokumentation geliefert. Das Programmpaket besteht aus folgenden Dateien, die sich in den Verzeichnissen 'CED_V103' bzw. 'CED' befinden: CED.PRG -> der Texteditor CED.CFG -> Beispiel-Kofiguartion GENPRN.TTP -> Programm zur Erzeugung des Druckertreibers CEDSTART.ACC -> Acc zum Starten von CED ber die Menleiste des Desktop (s. Anhang C) CED.PRS -> Source zum Mini-Druckertreiber CED.PRN DOKU.TXT -> dieses Benutzerhandbuch READ_ME.TXT Das Verzeichnis 'CED' enthlt folgende CED-Systemdateien, auf die bei Programmstart bzw. whrend der Laufzeit zuge- griffen wird: CED_M.FNT -> ein 8*16 'Mac-like' Font CED.PRN -> Mini-Druckertreiber (fr's '') C_HEADER.TXT -> Beispiel fr einen Textkopf CEDHELP.TXT -> Beispiel fr einen Hilfstext !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! CED darf nur vollstndig kopiert werden, d.h. es mu ! ! immer das Verzeichnis 'CED_V103' mit allen oben genannten ! ! Dateien kopiert werden. ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 2 INHALT 1. Einfhrung 1.1 Nomenklatur 1.2 Einige CED-Features 1.3 CED installieren 1.4 Speicherorganisation 2. Grundablauf einer Editorsitzung 2.1 CED starten 2.2 Textpuffer aktivieren 2.3 Laden einer Datei 2.4 Speichern einer Datei 2.5 Beenden der Editorsitzung 2.5.1 Beenden ohne Abspeichern 2.5.2 Beenden mit Abspeichern 3. GEM oder nicht GEM 3.1 Der CED Desktop 3.2 Accessory Modus 3.3 CED-Windows und Mausfunktionen 3.4 Die Fileselektorbox 3.4.1 Die FSB-Komponenten 3.4.2 Funktionstastenbelegung der FSB 3.4.3 Bedienung der FSB ber die Tastatur 3.5 Bedienung der GEM-Dialoge ber die Tastatur 4. Makros 4.1 Grundlegendes 4.2 Makro aufzeichnen 4.3 Abbruch-Automatik 4.4 Makro-Loop 4.5 Makros per Kommandozeile 4.5.1 Format einer Kommandozeile 4.6 Startup macro 4.7 Anwendungsmglichkeiten und Beispiele 5. Die Blockarten 5.1 Der 'One-line-block' 5.2 Der fragmentierte Block 5.3 Der zusammenhngende Block 5.4 Der Zeilenausschnitt 6. Suchen/Ersetzen von Zeichenketten 6.1 Suchen von Zeichenketten 6.1.1 Suchbereiche 6.1.2 Substring/Wortsuche 6.1.3 Gro/Keinschreibung 6.1.4 Suchrichtung 6.1.5 Suchstart 6.1.6 Wahl des Suchstrings ber die Tastatur. 6.2 Ersetzen von Zeichenketten 6.2.1 Replace-Bereiche 6.2.2 Substring/Wort ersetzen 6.2.3 Gro/Keinschreibung 6.2.4 Ersetzen ohne Nachfrage 6.2.5 Ersetzen mit Nachfrage 6.3 Suchen eines C-Funktionskopfes CED V1.03 Seite 3 7. Druckeranpassung 7.1 Die Source-Datei des Druckertreibers 7.2 Erzeugung des Druckertreibers 8. Der Hilfsdialog 9. Der Textkopf 10. Die CED Konfiguration 10.1 Flags im Modus-Men 10.2 Path & Files-Dialog 10.3 Accessories-Dialog 10.4 Misc-Dialog 11. Editier-Funktionen 11.1 Zeilenlnge 11.2 Standard-Funktionen 11.2.1 Cursor positionieren 11.2.2 Lschfunktionen 11.2.3 Einfgefunktionen 11.3 Spezielle Editierfunktionen 11.3.1 Gro-/Kleinbuchstaben Umwandlung 11.3.2 Zeichen vertauschen 11.3.3 Zahlen inkrementieren/dekrementieren. 11.3.4 Klammerebenen anspringen 11.3.5 Datei laden/hinzuladen 11.4 Eingabe von Sonderzeichen 11.5 Restaurieren gelschter Zeichen/Zeilen 11.6 Die 'Jump to error' Funktion 11.7 Die Zeilenmarken 12. Die Menleiste 12.1 Das Men 'CED' 12.2 Das Men 'File' 12.3 Das Men 'Text' 12.4 Das Men 'Block' 12.5 Das Men 'Find' 12.6 Das Men 'Mark' 12.7 Das Men 'Macro' 12.8 Das Men 'Extras' 12.9 Das Men 'Options' Anhang A bersicht ber die Tastaturbefehle A.1 Cursor A.2 Zeilenmarken A.3 Block A.4 Makros A.5 Suchen/Ersetzen A.6 Datei A.7 Sonstiges A.8 Fileselektorbox Anhang B Nachfragedialoge u. Fehlermeldungen B.1 Nachfragedialoge B.2 Fehlermeldungen Anhang C Das Accessory 'CEDSTART.ACC' CED V1.03 Seite 4 1. Einfhrung ============================================================== CED ist ein reinrassiger Texteditor. Das heit: CED stellt keine Funktionen wie Blocksatz, Zeichenattribute etc. zur Verfgung, denn dies sollte Textverarbeitungsprogrammen vor- behalten bleiben. CED ist spezialisiert auf komfortable, sichere und natrlich schnelle Erfassung beliebiger ASCII- Texte. CED enthlt keinen eingebauten Bildschirmschoner, keine Uhr, keinen Kalkulator und auch keinen Rasierapparat. Solcherlei Schnickschnack wird i.a. schon von zehn Accessories ausgiebig abgedeckt. CED ist auf allen Atari ST-Caputtern unter jedweder Betriebs- systemversion lauffhig, jedenfalls sind bis dato keine allflligen Inkompatibilitten bekannt. Whrend eines halb- jhrigen klinischen Dauertests mit 2000*10^-3 Testpersonen (hallo Uli, hallo Oli) ist CED zu einem hoffentlich fehler- freien Produkt gereift. Falls doch noch ein kleiner Bug sein Unwesen in CED treiben sollte (Jack T. behte uns davor), machen Sie bitte Ihrem Unmut mit einer mglichst genauen Fehlerbeschreibung Luft. Auch fr konstruktive Kritik und Anregungen hat der Autor stets ein offenes Ohr... Etwas Statistik: CED wurde mit MEGAMAX C V1.1 auf einem Mega ST2 (TOS 1.2/TOS 1.4) + Protar Profile 40DC entwickelt. Der Sourcecode ist in 31 Dateien untergliedert, die zusammen ca. 600 Kb belegen. Und noch etwas: Bevor Sie mit dem Ausprobieren beginnen, machen Sie sich bitte eine Sicherheitskopie von CED ! In letzter Sekunde: CED versteht sich in der hchsten und mittleren ST-Auflsung prchtig mit dem Atari TT (16 Mhz Entwicklerversion). CED V1.03 Seite 5 1.1 Nomenklatur -------------------------------------------------------------- Die Bezeichnungen der ST-Tasten werden in der Dokumentation grundstzlich in eckige Klammern eingeschlossen. Werden mehrere Tastenbezeichnungen durch einen Slash (/) getrennt zwischen den eckigen Klammern angegeben, so bedeutet dies, da diese Tasten gleichzeitig zu drcken sind. Beachten Sie bitte, da die Zifferntasten oben auf der Tastatur bzw. auf dem numerischen Tastenblock nicht immer die gleiche Funktionalitt besitzen. Wo eine Funktion nur ber den numerischen Tastenblock ausfhrbar ist, werden Ziffern mit einem vorangestellten 'NUM' gekennzeichnet (also NUM0, NUM1, usw.). Das unmgliche Wort 'Fileselektorbox' (in Fachkreisen auch 'Viel-Esel-Elektrobox' genannt) wird durch das Krzel FSB ersetzt. Spezielle Tastenbezeichnungen in dieser Dokumentation: ------------------------------------------------------ [LEFT SHIFT] - linke Shift-Taste. Wird nur [SHIFT] an- gegeben, kann sowohl die linke als auch auch die rechte Shift-Taste benutzt werden. [CNTRL] - Control Taste [ALT] - Alternate Taste [UP ARROW] - Taste mit dem Pfeil nach oben [DOWN ARROW] - Taste mit dem Pfeil nach unten [LEFT ARROW] - Taste mit dem Pfeil nach links [RIGHT ARROW] - Taste mit dem Pfeil nach rechts Maustasten: ----------- - Klick => einfacher Klick mit der linken oder rechten Maustaste - Doppelklick => zweifacher Klick mit der linken oder rechten Maustaste - Linksklick => ... - doppelter Linksklick => ... - Rechtsklick => ... - doppelter Rechtsklick => ... Eintrge in der Menzeile: -------------------------- Hinter fast allen Meneintrgen wird ein Tastaturkrzel an- gegeben, ber die der Meneintrag anwhlbar ist. Das Krzel ist immer eine Kombination aus einer oder zwei Sondertasten und einer normalen Taste. Zur Darstellung der Sondertasten werden folgende Zeichen in den Meneintrgen benutzt: - ^ steht fr die [CNTRL]-Taste - der Diamant steht fr die [ALT]-Taste - der angeknapperte Cursor steht fr [ALT/LEFT SHIFT] CED V1.03 Seite 6 1.2 Einige CED-Features -------------------------------------------------------------- - 10 getrennt editierbare Textpuffer in 10 Windows. - max. Textgre wird nur durch den zur Verfgung stehenden Speicherplatz beschrnkt. - Tastatur/Maus Bedienung. - Bedienung der GEM-Dialoge ber Tastatur mglich. - eigene Windowroutinen. - eigener Bildschirmtreiber, dadurch schnelles, absolut nachlauffreies Scrolling. - Ereignisrecorder fr Tastatur- und GEM-Dialog-Makros (!!) - Makros aus der Commandline aufrufbar, dadurch Einsatz als Filter in einem Shellscript mglich. - automatische Ausfhrung eines Makros bei Programmstart. - Makro-Looping in einem Block. - Makro Abbruch-Automatik - 4 Blocktypen. - 10 Blockfunktionen. - Markieren eines Blockes mit der Maus. - Untersttzung des GEM-Clipboards - sehr schnelle und komfortable 'Find/Replace' Funktion (maximal 30000 Ersetzungen pro Sekunde!!). 'Replace' in einem Textpuffer, allen Textpuffern oder Blockbereich. Wortsuche. Durchsuchen von Dateien/Ordnern auf einem Massenspeicher (rekursiv/lokal). - Suchen eines C-Funktionskopfes in den Textpuffern oder auf einem Massenspeicher (rekursiv/lokal). - Klammerebenen anspringen, Klammerung berprfen. C-Kommentare, Char- und Stringkonstanten werden dabei berlesen. - Untersttzung der Programmdokumentation durch Laden eines Textkopfes auf Tastendruck mit automatischem Eintragen der aktuellen Zeit und Datum. - FSB mit 10 frei einstellbaren Extensionen, Untersttzung von 16 Laufwerken, Laufwerk-Info, mehrere Dateien gleichzeitig selektierbar, Funktionstasten mit Pfaden belegbar. CED V1.03 Seite 7 - eigener Font installierbar. - 2 Fontgren (nur im Monochrom-Modus). - individuell nutzbarer Hilfsdialog. - individuelle Druckeranpassung mglich. - 'Jump to error' Funktion. - 5 Zeilenmarken und 1 Ping-Pong Zeilenmarke fr jeden Textpuffer. - Undo nach Zeilenlschen, Zeichenlschen bzw. Zeilenmodifikation. - 'Save with backup' legt bis zu 100 Duplikate einer Datei an. - automatisches Laden der zuletzt bearbeiteten Datei (inklusive Systemkonfiguration) bei Programmstart. - Accessory-Modus. Accessories ber die Tastatur aufrufbar. - zahlreiche Editierkommandos (auch Ausgefallenes, wie z.B. Zahlen-Inkrement/Dekrement, Wort kapitalisieren, Zeichen vertauschen, etc). - Cursor frei positionierbar. Optional automatischer Zeilenumbruch. - in hchster und mittlerer Auflsung lauffhig (auch auf dem Atari TT). CED V1.03 Seite 8 1.3 CED installieren -------------------------------------------------------------- CED benutzt mehrere externe Hilfsdateien, die bei Programm- start bzw. zur Laufzeit geladen/gespeichert werden, jedoch >> nicht obligatorisch (!!) << fr die Funktion von CED sind: benutzt bei | Hilfsdatei --------------------+-------------------------------- Programmstart | CED.CFG | CED.MAC | CED.PRN | CED.INF | CED_[MC].FNT | Zur Laufzeit | CEDHELP.TXT (konfigurierbar) | C_HEADER.TXT (konfigurierbar) | _CEDBLK.TMP CED.CFG => Konfigurations-Datei. Enthlt alle CED- Voreinstellungen, die Sie nach Ihren Bedrfnissen einrichten und abspeichern knnen. (s. Kapitel 'Die CED Konfiguration') CED.MAC => Makro-Datei. Enthlt die von Ihnen auf- gezeichneten Makros. (s. Kapitel 'Makros') CED.PRN => Druckeranpassung. (s. Kapitel 'Die Druckeranpasung') CED.INF => Info ber die zuletzt gesicherte Textdatei (inklusive Systemkonfiguration). (s. Kapitel 'Die CED Konfiguration') CED_[MC].FNT => 8*16 Font (M -> monochrom) bzw. 8*8 Font (C -> color) CEDHELP.TXT => Der Hilfstext, der bei Aufruf des Hilfs- dialogs ausgegeben wird. (s. Kapitel 'Der Hilfsdialog') C_HEADER.TXT => Textkopf der automatisch am Textanfang ein- gefgt werden kann. (s. Kapitel 'Der Textkopf') SCRAP.TXT => zwischengespeicherter Blockbereich auf GEM-Clipboard. (s. Kapitel 'Die Blockarten') !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Der Font (CED_[MC].FNT) ist fr die Funktion von CED nicht! ! unbedingt notwendig. Das automatische Laden kann durch ! ! Umbenennen oder Lschen der Fontdatei unterbunden werden. ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 9 Die Hilfsdateien sollten zwecks besserer bersichtlichkeit alle in einem Verzeichnis untergebracht werden. Der Zugriffs- pfad fr dieses Verzeichnis ist frei festlegbar und wird in der Konfigurations-Datei (CED.CFG) abgespeichert. Diese Datei enthlt noch weitere Konfigurations-Parameter, die im Kapitel 'Die CED Konfiguration' nher beschrieben werden. Bei Programmstart passiert nun folgendes: Zuerst sucht CED die Konfigurations-Datei im aktuellen Ver- zeichnis und dann im Vereichnis 'CED' auf Laufwerk 'C:'. Ist die Konfigurations-Datei in einem dieser Vezeichnisse vor- handen, wird sie geladen und der darin enthaltene Zugriffs- pfad auf Ansprechbarkeit geprft. Ist der Zugriffspfad an- sprechbar, wird er zum Laden der restlichen Hilfsdateien benutzt. Ist der Pfad nicht ansprechbar, werden die rest- lichen Hilfsdateien aus dem aktuellen Verzeichnis geladen. Ist keine Konfigurations-Datei vorhanden, wird zunchst der Pfad 'C:\CED\' auf Ansprechbarkeit geprft. Ist er ansprech- bar, werden die Hilfsdateien aus diesem Verzeichnis geladen. Ansonsten wird das aktuelle Verzeichnis zum Laden der Hilfs- dateien benutzt. Wichtig ist, da der bei Programmstart verwendete Pfad auch whrend der Laufzeit zum Laden bzw. Speichern der Hilfs- dateien benutzt wird. Wenn Sie eine Harddisk besitzen, knnen alle Hilfsdateien im Verzeichnis 'C:\CED\' untergebracht werden. Ansonsten mu sich mindestens die Konfigurations-Datei im gleichen Verzeichnis wie der Editor befinden. 1.3.1 Einstellen des Zugriffspfades -------------------------------------------------------------- Starten Sie CED. CED meldet sich mit der FSB, die Sie durch Drcken von [UNDO] schlieen. Jetzt klicken Sie den Menpunkt 'Path & Files...' im 'Options'-Men an, worauf ein Dialog er- scheint, in dem Sie den Zugriffspfad (Path) und die Namen von drei Hilfsdateien festlegen knnen. Der Cursor steht schon auf dem Eingabefeld fr den Zugriffspfad. Lschen Sie das Eingabe- feld und tragen Sie den gewnschten Pfad ein. Beenden Sie den Dialog durch Drcken von [RETURN]. Nun whlen Sie den Menpunkt 'Save config...' im 'Options'-Men an, worauf die FSB erscheint. Drcken Sie nun einfach die [RETURN]-Taste. Sie haben damit die Konfigurations-Datei 'CED.CFG' mit dem neuen Zugriffspfad angelegt. Jetzt knnen Sie den Editor ber den Menpunkt 'Quit' verlassen. Der Zugriffspfad kann sowohl absolut (z.B. 'C:\CED\') als auch relativ (z.B. '.\CED\') angegeben werden. Relative Pfadangaben mssen mit einem Punkt beginnen ('.' ist das aktuelle Directory). Bei einem relativen Pfad wird zur Laufzeit der Pfad, unter dem CED gestartet wurde, vor- geschaltet. Ein relativer Pfad ist z.B. dann sinnvoll, wenn CED mit der gleichen Konfigurations-Datei von Diskette und nach Umkopieren auch von einer Ramdisk gestartet werden soll. CED V1.03 Seite 10 1.3.2 Installieren auf Diskette -------------------------------------------------------------- Wenn Sie lediglich mit Diskettenlaufwerken arbeiten, sind einige wenige (ausgefallene) Funktionen des Editors nur mit Einschrnkungen nutzbar. Stellen Sie den Zugriffspfad auf '.\CED\' und speichern Sie die Konfiguration ab. Jetzt kopieren Sie den Ordner 'CED' der Originaldiskette, den Texteditor und die Konfigurations-Datei (CED.CFG) in das Wurzelverzeichnis einer Arbeitsdiskette. Wie oben schon erwhnt, wird der Zugriffspfad auch whrend der Laufzeit benutzt. Falls Sie nur ein Laufwerk besitzen und die Diskette wechseln, werden zwangslufig folgende Funktionen nicht funktionieren: - Block zwischenspeichern (s. Kapitel 'Die Blockarten') - Textkopf laden (s. Kapitel 'Der Textkopf') - Hilfsdialog aufrufen (s. Kapitel 'Der Hilfsdialog') Falls Sie zwei Laufwerke besitzen, wird alles wunderbar funktionieren, solange Sie die Diskette, von der CED gestartet wurde, im Laufwerk lassen. 1.3.3 Installieren auf einer Ramdisk -------------------------------------------------------------- Stellen Sie den Zugriffspfad auf '.\CED\' und speichern Sie die Konfigurations-Datei auf Diskette ab. Vor Beginn der Arbeit mit CED, kopieren Sie mit Hilfe eines Autocopy-Programmes den Ordner 'CED', den Editor und die Konfigurationsdatei 'CED.CFG' in das Wurzelverzeichnis der Ramdisk. Durch den relativen Zugriffspfad findet CED sowohl beim Starten von Diskette als auch beim Starten von der Ramdisk die Hilfsdateien. 1.3.4 Installieren auf einer Harddisk -------------------------------------------------------------- Falls Sie eine Harddisk besitzen, kopieren Sie einfach das Verzeichnis 'CED' der Originaldiskette auf Partition 'C:'. Den Editor knnen Sie in ein beliebiges Verzeichnis einer beliebigen Partition kopieren. Die auf der Originaldiskette befindliche Beispiel-Konfigurationsdatei sollten Sie nicht auf die Harddisk kopieren, da diese Datei einen relativen Zugriffspfad enthlt. Den Suchpfad mssen Sie nicht einstellen. Theoretisch brauchen Sie keine Konfigurations-Datei, sofern Sie mit der Standard-Konfiguration von CED zufrieden sind. Wahrscheinlich werden Sie jedoch nderungen an der Konfiguration vornehmen. In diesem Fall knnen Sie auch die Konfigurations-Datei in das Verzeichnis 'C:\CED\' speichern. Die Konfiguration wird im Kapitel 'Die CED Konfiguration' nher beschrieben. CED V1.03 Seite 11 1.4 Speicherorganisation -------------------------------------------------------------- In CED wird der bei Programmstart allokierte Speicherplatz dynamisch auf 10 Textpuffer verteilt, die von 0 bis 9 durch- nummeriert sind. Die maximale Gre des bei Programmstart allokierten Speicherplatzes und die minimale Gre des verbleibenden Systemspeicherplatzes gehren zur CED-Konfig- uration und knnen im 'Misc...'-Dialog festgelegt werden (s. 'Die CED-Konfiguration'). Es bestehen keine Einschrnkungen hinsichtlich der maximalen Gre eines Textpuffers. Von Zeit zu Zeit wird der Textspeicher reorganisiert, was Sie an der Meldung 'Reorganizing memory ! Please be patient...' im Statusfeld (s. Kapitel 'CED Windows') erkennen knnen. Die von dieser Prozedur in Anspruch genommene Zeit ist abhngig von der Gre des von CED allokierten Speicherplatzes und dem Grad des Durcheinanders im Textspeicher. Im allgemeinen liegt sie im Sekundenbereich, in seltenen Fllen kann es auch lnger dauern. CED V1.03 Seite 12 2. Grundablauf einer Editorsitzung ============================================================== 2.1 CED starten -------------------------------------------------------------- CED lt sich natrlich durch einen lssigen Doppelklick vom Desktop aus starten. Wer allerdings eine CLI Shell bevorzugt, kann neben Dateinamen zustzlich die Nummern mehrerer Makros bergeben, die nach Programmstart ausgefhrt werden sollen Auerdem ist es mglich, hinter jedem Dateinamen durch Leer- zeichen getrennt die Zeile (und die Spalte) anzugeben, in die der Cursor gesetzt werden soll (s. Kapitel 'Makros'). Nach erfolgreichem Anstarten ohne Parameter wird automatisch ein Window geffnet und die FSB erscheint auf dem Bildschirm. In der CED-Konfiguration lt sich ein 'Startup'-Makro installieren, das automatisch alternativ zur FSB bei Programmstart ausgefhrt wird. Ein Startup-Makro kann z.B. die FSB aufrufen und anschlieend einen bestimmten Ordner ffnen (s. Kapitel 'Makros' und 'Die CED Konfiguration'). 2.2 Textpuffer aktivieren -------------------------------------------------------------- Ein Textpuffer ist ein Arbeitsbereich, der einem Window zugeordnet ist. Das ffnen bzw. Schlieen eines Windows ist nicht mit dem Laden bzw. Speichern (oder Lschen) einer Datei gekoppelt. Ab Programmstart stehen zehn Text- puffer zur Verfgung, wobei das Window des ersten Text- puffers automatisch geffnet wird. Alle Textpuffer sind defaultmig mit dem Dateinamen 'UNTITLED' versehen. Ein Textpuffer kann auf mehrere Arten aktiviert werden (aktivieren bedeutet, da das Window eines Textpuffers ge- ffnet bzw. in den Vordergrund gebracht wird): - ber ein Popup-Men: Nach Anklicken des Menpunktes 'Activate...', Anklicken eines Textsymbols in der Statuszeile (s.u.) oder Drcken von [ENTER] erscheint ein Popup-Men. Das Men enthlt die Namen der Dateien, die in den Textpuffern gespeichert sind. Der Name der Datei im aktiven Textpuffer ist durch ein Pfeilchen gekennzeichnet. Ein Punkt vor einem Datei- namen weist darauf hin, da der betreffende Text modifi- ziert, aber noch nicht gesichert wurde. Mit einem Linksklick auf einen Dateinamen knnen Sie den den betreffenden Textpuffer aktivieren. Nach einem Rechts- klick oder einem Linksklick neben das Popup-Men, wird selbiges ohne Aktion verlassen. Das Popup-Men knnen Sie aber auch ber die Tastatur bedienen: Mit [UP ARROW] und [DOWN ARROW] wechseln Sie den aktiven Meneintrag. [RETURN] oder [ENTER] aktivieren den selektierten Textpuffer. Alle anderen Tasten beenden das Men ohne Aktion. CED V1.03 Seite 13 - Direkt ber die Tastatur: Sie drcken bei gehaltener [CNTRL]-Taste die gewnschte Textpuffernummer auf dem numerischen Tastenblock (also [CNTRL/NUM0], [CNTRL/NUM1], usw.). [CNTRL/NUM *] und [CNTRL/NUM -] schalten auf den nchsten bzw. vorhergehenden Textpuffer um. - ber die Windows: Ein Doppelklick auf ein Textsymbol im Statusfeld des aktiven Windows schaltet auf den entsprechenden Textpuffer um. Sind mehrere Windows geffnet (und sichtbar), so kann durch einfaches Anklicken eines Windows (Windowkomponenten oder Textbereich) der zugeordnete Textpuffer aktiviert werden. - ber den Info-Dialog: Durch einfaches Anklicken der Infos eines Textpuffers wird der Info-Dialog beendet und der entsprechende Textpuffer aktiviert (s. Menpunkt 'Info...'). Falls Sie nur zwischen geffneten Windows umschalten mchten, so benutzen Sie den Befehl 'Cycle windows' im Men 'Text'. 2.3 Laden einer Datei -------------------------------------------------------------- Die Auswahl der zu ladenden Datei geschieht ber die FSB (s. Kapitel 'Die Fileselektorbox'). Eine Datei wird immer in den aktiven Textpuffer geladen, Sie mssen also vor dem Aufruf der FSB auf den gewnschten Textpuffer schalten. ber die FSB knnen max. 10 Dateien gleichzeitig selektiert und nacheinander geladen werden, wobei jeweils automatisch auf den nchsten Textpuffer umgeschaltet wird. Beim Laden einer Datei knnen zwei Fehler auftreten: - der Textspeicher reicht nicht mehr aus. In diesem Fall wird der Ladevorgang abgebrochen und die Meldung 'Not enough workspace !' ausgegeben. - die Datei hat ein falsches Zeilenformat, d.h. die Zeilen werden nicht durch die Zeichen CR/LF abgeschlossen, der Text enthlt 'Nullen' (ASCII 0) oder eine bzw. mehrere Zeilen sind zu lang. In diesem Fall erscheint die Meldung 'File has inproper line format ! Repairing...' im Statusfeld. CED bringt die Datei im Speicher auf das korrekte Format, die Datei wird also verndert. CED V1.03 Seite 14 Sie sollten sich daher berlegen, ob Sie die Datei spter so abspeichern mchten ! Ein falsches Zeilen- format kann i.a. nur bei 'Nicht-Textdateien' oder Textdateien, die von einem anderen Rechnersystem bernommen wurden, auftreten. 2.4 Speichern einer Datei -------------------------------------------------------------- Der Text im aktiven Textpuffer kann entweder unter seinem aktuellen Pfad/Namen (Save) oder unter einem neuen Pfad/Namen (Save as...) abgespeichert werden. Auerdem kann vor dem Ab- speichern eine eventuell schon bestehende ltere Dateiversion zu einer Backup-Datei umbenannt werden, wobei maximal 100 Versionen angelegt werden knnen (Save with backup). Beim Speichern knnen folgende Fehler auftreten: - der Speicherplatz auf dem angesprochenen Speichermedium reicht nicht aus. Daraufhin wird die Meldung 'Out of disk space !' ausgegeben. Sie sollten es also mit einer anderen Diskette probieren oder mit 'Delete file...' Platz schaffen. - die Datei hat den 'Nurlese-Status'. Falls Sie die Datei trotzdem speichern wollen, mssen Sie die Datei unter einem anderen Namen ('Save as...') abspeichern. CED V1.03 Seite 15 2.5 Beenden der Editorsitzung -------------------------------------------------------------- Den Editor knnen Sie auf mehrere Arten verlassen: 2.5.1 Beenden ohne Abspeichern ------------------------------- Ganz normal verlassen Sie CED ber den Menpunkt 'Quit' oder durch Drcken von [ALT/LEFT SHIFT/Q]. Falls Sie einen oder mehrere Texte verndert, aber noch nicht ge- speichert haben, erscheint ein kleiner Dialog, in dem Sie folgende Mglichkeiten haben: - ohne Abspeichern CED verlassen (Button 'QUIT CED') - Text abspeichern (Button 'SAVE') - CED doch nicht verlassen (Button 'CANCEL') 2.5.2 Beenden mit Abspeichern ------------------------------ Hier gibt es drei Mglichkeiten, die sich lediglich im Rckgabewert an das aufrufende Programm unterscheiden: - 'Save & Quit' [ALT/LEFT SHIFT/ESC] Returnwert 0 - [ALT/CTRL/ESC] Returnwert 1 - [ALT/RIGHT SHIFT/ESC] Returnwert 2 Alle drei Varianten erzeugen die Hilfsdatei 'CED.INF', falls das 'Auto load' Flag im 'Modus...'-Popup-Men aktiv ist (s. Kapitel 'Die CED Konfiguration'). Diese Datei wird beim automatischen Laden des zuletzt gesicherten Textes (und der Konfiguration) bei Programm- start benutzt. CED V1.03 Seite 16 3. GEM oder nicht GEM... ============================================================== 3.1 Der CED Desktop -------------------------------------------------------------- Auf dem Desktop befinden sich zwanzig Tastensymbole, ber die durch einen Klick zwanzig der 38 Makros aufrufbar sind. Die Tastensymbole sind mit F1 bis F10 gekennzeichnet, was zum Ausdruck bringt, da die Makros auch ber die Funktionstasten zu erreichen sind. In den Tastensymbolen wird eine frei fest- legbare Abkrzung fr jedes Makro dargestellt (s. Kapitel 'Makros'). Die Tastensymbole sind nur im Edit-Modus sichtbar und sind defaultmig von einem Window verdeckt. 3.2 Accessory Modus -------------------------------------------------------------- CED benutzt keine GEM-Windows. Deshalb war es notwendig, einen speziellen Accessory-Modus einzufhren, in dem alle CED-Windows geschlossen und keinerlei Editorfunktionen aufrufbar sind. Gleichzeitig werden die bisher inaktiven Eintrge des Ced-Mens aktiviert, so da sich nun die eventuell vorhandenen Accessories aufrufen lassen. Den Accessory-Modus erreichen Sie - ber den Menpunkt 'Acc mode' im Ced-Men - durch das direkte Starten eines Accessories ber die Tastatur ([ALT/F1..F6]) (s. 'Accessory-Dialog'). Vor dem Verlassen des Accessory-Modus mssen alle permanent ffenbare Accessories (z.B. das Kontrollfeld) geschlossen werden, sonst erscheint die Meldung 'Please close all accessories !'. Verlassen knnen Sie den Accessory-Modus - ber den Menpunkt 'Edit mode' - durch Drcken einer beliebigen Taste - durch Anklicken des CED-Desktops CED V1.03 Seite 17 3.3 CED-Windows und Mausfunktionen -------------------------------------------------------------- Die CED-Windows sind den GEM-Windows hnlich. Wichtigster Unterschied: Es gibt keinen Scrollbalken am rechten Window- rand, so da volle 80 Zeichen pro Zeile dargestellt werden knnen. Der Redraw-Mechanismus ist so ausgelegt, da er vor dem Aufruf eines Dialogformulars den Hintergrund in den freien Textspeicher rettet, falls dort noch gengend Platz vorhanden ist. Nach dem Verlassen eines Dialogs wird der Bildschirm- abschnitt nur zurckkopiert und der bentigte Textspeicher freigegeben. Ansonsten wird der Hintergrund explizit neu ge- zeichnet. Die Window-Komponenten: ----------------------- Links oben befindet sich wie gewohnt das Close-Feld, mit dem ein Window geschlossen werden kann. Beim Schlieen des letzten geffneten Windows wird der Accessory-Modus aktiviert. Der dem Window zugeordnete Textpuffer bleibt in jedem Fall unangetastet. Zum Lschen eines Textpuffers mu die Funktion 'Clear...' im Men 'Text' benutzt werden. Rechts neben dem Close-Feld befindet sich ein Feld, in dem die Textnummer (0-9) angezeigt wird. Durch einen einfachen Klick auf dieses Feld knnen Sie auf den nchsten Textpuffer, durch einen Doppelklick auf den vorhergehenden Textpuffer schalten. Jetzt folgt die Titel-Leiste, in der Pfad und Name der im Window dargestellten Datei ausgegeben werden. Ein Punkt vor dem Pfad weist darauf hin, da die Datei modifiziert, aber noch nicht gesichert wurde. Nach einem Linksklick auf die Titel-Leiste lt sich das Window bei gedrckter linker Maustaste vertikal verschieben. Ein Rechtsklick lscht eine eventuell vorhandene Block- markierung. Rechts neben der Titel-Leiste befindet sich ein Feld mit einem Pfeil nach oben. Ein Linksklick scrollt den Window- inhalt eine Seite nach oben. Ein Rechtsklick scrollt den Windowinhalt eine Zeile nach oben. Ein Doppelklick setzt den Cursor an den Anfang des Textes. Jetzt kommt das Size-Toggle-Feld, mit dem zwischen den letzten beiden Window-Gren-Einstellungen umgeschaltet werden kann. Durch einen Doppelklick wird auf maximale Window-Gre geschaltet. CED V1.03 Seite 18 Unter der Titel-Leiste befindet sich der Textbereich, in dem minimal 2 (4) und maximal 21 (42) Zeilen dargestellt werden knnen. Die Zahlen in Klammern beziehen sich auf den kleinen (8*8) Font im Monochrommodus. Innerhalb des Textbereiches kann der Cursor mit der Maus durch einen Linksklick auf die gewnschte Textposition gesetzt werden. Ein einfacher bzw. doppelter Rechtsklick dient zur Markierung eines zusammenhngenden Blockes (s. Kapitel 'Blockarten'). Unterhalb des Textbereiches befindet sich die Statuszeile. Ganz links werden hier die aktuelle Zeilen- und Spalten- nummer angezeigt. Dahinter befindet sich eine prozentuale Angabe ber die Anzahl der Zeilen des Textabschnitts, der sich oberhalb der aktuellen Cursorposition befindet. Rechts davon befindet sich das Statusfeld, in dem im Normal- zustand zehn Piktogramme bzw. diverse Meldungen ausgegeben werden. Jedem Textpuffer ist ein Piktogramm zugeordnet, das ein unbeschriebenes Blatt (Papier) mit Eselsohr darstellen soll (eine Brille ist nicht im Lieferumfang enthalten). Wird ein Text in einen Textpuffer geladen oder ein leerer Textpuffer modifiziert, so wird aus dem unbeschriebenen Blatt mit Eselsohr ein beschriebenes Blatt (ebenfalls mit Eselsohr). Ein elftes Piktogramm (soll ein Clipboard sein) ist nur dann sichtbar, wenn ein Block ber das Kommando 'Clipbrd copy' auf das GEM-Clipboard geschrieben wurde. Durch einen Klick auf dieses Piktogramm knnen Sie sich den Block anschauen. Ein Doppelklick lscht den Block nach einer Sicherheitsabfrage vom Clipboard. Das Clipboard kann zum Austausch von Daten zwischen verschiedenen Applikationen oder aber zum dauerhaften Zwischenspeichern eines Blocks verwendet werden (s. Kapitel 'Die Blockarten'). Neben dem Statusfeld befindet ein Feld mit einem Pfeil nach unten, dessen Funktionen dem des oben beschriebenen Pfeil- feldes analog sind. Ganz rechts unten befindet sich das Size-Feld, ber das nach einem Linksklick bei weiterhin gedrckter linker Maustaste die vertikale Gre des Windows zeilenweise eingestellt werden kann. CED V1.03 Seite 19 3.4 Die Fileselektorbox -------------------------------------------------------------- 3.4.1 Die FSB-Komponenten -------------------------- Grob lt sich das Dialogformular der FSB in folgende funktionale Einheiten untergliedern: 3.4.1.1 Die Pfadbox -------------------- Oben wird der aktuelle Zugriffspfad angezeigt. Der Zugiffs- pfad ist editierbar, d.h. Sie knnen hier einen vllig neuen Zugriffspfad inklusive Laufwerk eingeben. Bitte beachten Sie, da der Pfad mit einem Backslash abgeschlossen werden mu. Ein neuer Pfad wird bernommen, wenn der Balken im Datei- fenster (s.u.) angeklickt bzw. [CNTRL/INSERT] gedrckt wird. Rechts neben dem Pfad befindet sich ein Feld, ber das ein Popupmen gestartet werden kann, das die Auswahl eines Pfades der Pfadbelegung der Funktionstasten ermglicht (s. 3.4.2). 3.4.1.2 Das Dateifenster ------------------------- Links befindet sich das Dateifenster, in dem die Namen der unter dem aktuellen Zugriffspfad erreichbaren Dateien und deren Gre in Bytes (bzw. das Erstellungsdatum oder die Erstellungszeit) ausgegeben werden. ber das Schliefeld gelangen Sie eine Stufe hher im Dateibaum. Durch einen Linksklick auf den Balken neben dem Schliefeld wird ein vernderter Zugriffspfad bernommen. Das Feld rechts neben dem Balken wechselt in das Wurzelver- zeichnis des aktiven Laufwerks. Mit den Pfeilbuttons bzw. dem Scrollbalken kann der Fenster- inhalt zeilen- bzw. seitenweise vertikal gescrollt werden. Der Balken unten schaltet zwischen Dateige, Dateierstell- ungsdatum bzw. Dateiertstellungszeit um. Nach einem einfachen Linksklick auf einen Dateinamen, wird dieser invertiert dargestellt, was anzeigt, da die Datei selektiert ist. Ein einfacher Linksklick auf einen Ordner ffnet selbigen. hnlich wie beim Desktop knnen in der FSB mehrere Dateien gleichzeitig selektiert werden, indem whrend des Links- klickens die [LEFT SHIFT]-Taste oder die rechte Maustaste gedrckt wird. Bei 'Open...' knnen max. 10 Dateien, bei 'Add...' und 'Delete file...' max. 40 Dateien gleichzeitig selektiert werden. In allen anderen Fllen ist eine Mehr- fachselektion nicht mglich (und auch nicht sinnvoll). CED V1.03 Seite 20 Nachdem Sie eine oder mehrere Dateien angewhlt haben, knnen Sie die FSB ber den Default-Exit-Button bzw. den 'CANCEL'- Button verlassen. Durch einen doppelten Linksklick auf einen Dateinamen kann die FSB direkt verlassen werden, wobei dann nur diese Datei selektiert und zurckgegeben wird. 3.4.1.3 Das Dateiname-Eingabefeld ---------------------------------- Die Eingabe eines Dateinamens ber die Tastatur wird durch das Eingabefeld in der Mitte der FSB ermglicht. Dies wird z.B. beim Speichern einer Datei unter einem neuen Namen bentigt. 3.4.1.4 Dateisuchmuster ------------------------ Unter dem Dateinamen-Eingabefeld befinden sich ein Feld zur Eingabe des Dateinamen-Suchmusters und 8 Buttons zur Fest- legung des Dateiextension-Suchmusters. Beide zusammen bestimmen, welche Dateien im Dateifenster angezeigt werden. Die Extension-Buttons sind im Grundzustand nicht editierbar. Durch einen Doppelklick kann jedoch die Eingabe einer neuen Extension erreicht werden. Durch Drcken von [RETURN] oder nochmaligem Anklicken des betreffenden Buttons wird die Ein- gabe beendet. Das Dateinamen-Suchmuster ist defaultmig mit einem '*' vorbelegt, so da alle Dateien der gewhlten Extension angezeigt werden. Nach einer nderung des Dateinamen- Suchmusters mu [CNTRL/INSERT] gedrckt oder der Balken ber dem Dateifenster angeklickt werden, damit das Inhalts- verzeichnis neu ausgegeben wird. Beide Suchmuster drfen Buchstaben, Ziffern, den Unter- strich ('_'), den Allquantor ('*') und den Existenzquantor ('?') enthalten. Folgende Besonderheiten, die durch das Betriebssystem bedingt sind, sollten Sie beachten: - nach einem Allquantor ('*') im Dateinamen-Suchmuster darf kein anderes Zeichen mehr folgen. Unzulssig ist also z.B. '*N'. - nach einem Allquantor ('*') im Dateiextension-Suchmuster werden alle nachfolgenden Zeichen ignoriert. Identisch sind also z.B. '*E' und '*'. CED V1.03 Seite 21 Beispiele: ---------- (Abkrzungen: Dateinamen-Suchmuster = DS Datei-Extension = DE ) DS | DE | Ausgabe im Dateifenster -------------------------------------------------------------- * | C | alle Dateien mit der Extension 'C'. F* | TXT | alle Dateien, die mit 'F' beginnen und die Extension 'TXT' haben. ?S* | H* | alle Dateien, deren zweiter Buchstabe 'S' ist und deren Extension mit einem 'H' beginnt. CED | * | alle Dateien mit dem Namen 'CED' und beliebiger Extension. Sowohl das Dateinamen-Suchmuster als auch die Extensionen sind Bestandteil der CED-Konfiguration und knnen mit 'Save config' abgespeichert werden. 3.4.1.5 Laufwerk-Buttons ------------------------- Rechts auen befinden sich in einer Doppelreihe maximal 16 Buttons, ber die durch einen Linksklick das aktive Laufwerk gewechselt werden kann. Der Button des aktiven Laufwerks wird invertiert dargestellt. Ein doppelter Linksklick auf einen Laufwerk-Button lt eine kleine Infobox erscheinen, in der die Gre des freien Speicherplatzes des betreffenden Lauf- werks ausgegeben wird. CED V1.03 Seite 22 3.4.2 Funktionstastenbelegung der FSB -------------------------------------- Die FSB hat die Aufgabe, die Auswahl einer Datei bzw. das Setzen eines Pfades so komfortabel wie mglich zu machen. Eine groe Hilfe ist dabei die Mglichkeit, die Funktions- tasten mit Pfaden zu belegen, die in der Konfigurations- datei (CED.CFG) abgespeichert werden knnen. Dabei gehen Sie wie folgt vor: - zuerst rufen Sie die FSB auf (z.B. ber 'Open...') - jetzt setzen Sie einen oft bentigten Pfad (Laufwerk whlen, Ordner anklicken, Dateimaske setzen, Extension anwhlen). - danach drcken Sie die zusammen mit [SHIFT] die Funktions- taste, die Sie mit dem Pfad belegen wollen. Den so gespeicherten Pfad knnen Sie nun jederzeit durch Drcken der Funktionstaste (ohne [SHIFT]) bei geffneter FSB (!!) setzen. Die Belegung der Funktionstasten knnen Sie sich anschauen, indem Sie das Feld rechts neben der Pfadbox anklicken, oder indem Sie [CNTRL/HELP] drcken. Daraufhin erscheint ein Popupmen mit der Pfadbelegung. Neben der Mglichkeit, einen Pfad durch einen Rechtsklick oder ber die Cursortasten und [RETURN] anzuwhlen, knnen Sie auch im Popupmen mit den Funktionstasten arbeiten. Bitte vergessen Sie nicht, die Funktionstastenbelegung der FSB ber 'Save config...' im Options-Men abzuspeichern. 3.4.3 Bedienung der FSB ber die Tastatur -------------------------------------------------------------- Folgende FSB-Komponenten lassen sich ber die Tastatur be- dienen: - Die Laufwerkbuttons lassen sich bei gedrckter [CNTRL]-Taste ber den jeweiligen Laufwerksbuchstaben anwhlen. Ist 'Use CNTRL in dialogs' im 'Modus...' Popupmen aktiv, so werden die Buttons mit unterstrichenen Buchstaben ber die [CNTRL]-Taste erreicht. Deshalb, mssen dann die Laufwerkbuttons ber die [ALT]-Taste angewhlt werden. - Die Extension-Buttons der FSB lassen sich bei gedrckter [CNTRL]-Taste mit den Zifferntasten oben auf der Tastatur auswhlen. Der erste Button links oben hat die Nummer 1, der Button rechts daneben die Nummer 2, usw. - [CNTRL/HOME] wechselt in das Wurzelverzeichnis des aktiven Laufwerks. - [CNTRL/INSERT] bernimmt einen neuen Zugriffspfad. - [CNTRL/HELP] ruft das Popupmen mit der Pfadbelegung auf. CED V1.03 Seite 23 3.5 Bedienung der GEM-Dialoge ber die Tastatur -------------------------------------------------------------- Folgendes lt sich generell fr alle GEM-Dialoge, die in CED auftauchen, festhalten: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! - ein Dialog kann durch Drcken von [UNDO] oder durch ! ! einen Linksklick neben die Dialogbox abgebrochen werden.! ! ! ! - Buttons mit mehr als einem Buchstaben lassen sich ! ! ber den unterstrichenen Buchstaben bei gedrckter ! ! [ALT]-Taste (*) erreichen. ! ! ! ! - Buttons mit nur einem Buchstaben lassen sich ber den ! ! jeweiligen Buchstaben bei gedrckter [CNTRL]-Taste ! ! (*) erreichen (z.B. Laufwerk-Buttons der FSB). ! ! ! ! ! ! ! ! (*) Falls das 'Use CNTRL in dialogs'-Flag im 'Modus...'- ! ! Popup-Men gesetzt ist, ist alles umgekehrt. ! ! ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 24 4. Makros ============================================================== 4.1 Grundlegendes -------------------------------------------------------------- Jetzt kommen wir zu einer wirklich feinen Sache, den Makros. Fr die noch Unerfahrenen: Ein Makro ist eine Zusammenfassung mehrerer Einzelkommandos (nachfolgend Atome genannt) zu einem neuen, komplexen Kommando. Das komplexe Kommando wird einer Funktionstaste oder einer Taste des numerischen Tastenblocks zugeordnet und ist dann durch Drcken dieser Taste aufrufbar. In CED knnen Sie die Funktionstasten F1..F10 und F11..F20 (d.h. [SHIFT/F1..F10]) und die Tasten des numerischen Tasten- blocks (ohne CONTROL oder ALT) mit Makros belegen. Atome sind: - Alle Tastatureingaben, d.h. Zeicheneingaben, Editierkommandos, GEM-Dialogaufrufe etc. - GEM-Dialogaufrufe ber die Menleiste. - Jede Eingabe in einem GEM-Dialog, d.h. Anwahl eines Buttons, Zeicheneingaben in einem editierbaren Feld etc. - Anwahl eines Funktionsfeldes eines Windows (auer Titel-Leiste und Size-Feld). Alle Atomarten sind beliebig kombinierbar. Es wird Ihnen vielleicht anfangs noch etwas Schwierigkeiten bereiten, eine Problemstellung als 'makrofhig' zu erkennen und dann das Makro auch noch funktionstchtig aufzunehmen. Aufnehmen? Ja, CED besitzt einen Makrorecorder, der, sobald er aktiviert wird, alle Ihre Aktionen aufzeichnet. 4.2 Makro aufzeichnen -------------------------------------------------------------- Hier das Ablaufschema fr das Aufnehmen eines Makros: - 'Macro start' im Makromen anklicken (oder [ALT/M] drcken). Im Statusfeld des aktiven Windows erscheint darauf die Meldung 'Recording macro...'. - Jetzt fhren Sie die gewnschten Atome aus. CED V1.03 Seite 25 - zum Abschlu des Makros klicken Sie 'Macro end' im Makromen an (oder drcken wieder [ALT/M]). Im Statusfeld wird nun die Meldung 'Redefine function/num key ! (ESC=cancel)' ausgegeben. - drcken Sie die Taste, die Sie mit dem gerade aufgenommenen Makro belegen wollen, oder drcken Sie [ESC], falls Sie das Makro nicht bernehmen wollen. - falls Sie das Makro bernehmen wollen, erscheint eine kleine Dialogbox, in der Sie eine Abkrzung fr das Makro eingeben knnen, falls Sie eine Funktionstaste belegt haben. Diese Abkrzung wird in dem entsprechenden Tastensymbol des CED-Desktops angezeigt. Die Makroaufzeichnung kann auch in einem GEM-Dialog beendet werden! Hierbei wird nach Eingabe des Makrokrzels der Dialog automatisch geschlossen (selbstverstndlich nicht bei der Ausfhrung des Makros!). Bitte beachten Sie, da ein Makro aus maximal 200 Atomen bestehen kann. Falls diese Anzahl bei der Aufzeichnung berschritten wird, wird die Meldung 'Macro too long !!' in der Statuszeile ausgegeben. Weitere Atome werden dann ignoriert. 4.3 Abbruch-Automatik -------------------------------------------------------------- Die Atome eines Makros sind fast immer voneinander abhngig, d.h. da z.B. Atom 4 nur dann sinnvoll ist, wenn vorher Atom 3 erfolgreich ausgefhrt werden konnte. In dem Fall, da ein Atom nicht ausfhrbar ist, wird das Makro automatisch ab- gebrochen. 4.4 Makro-Loop -------------------------------------------------------------- Unter einem Makro-Loop ist die automatische Ausfhrung eines Makros innerhalb eines zusammenhngenden Blockes zu verstehen. Ein Makro wird dabei solange wiederholt, wie der Cursor, dessen Position durch das Makro verndert wird, innerhalb des Blockes steht. Wird der Cursor durch ein Atom auerhalb des CED V1.03 Seite 26 Blockes positioniert, werden Makro und Makroloop automatisch abgebrochen. Den Abbruch eines Makroloops knnen Sie aber auch durch Drcken von [SHIFT] erzwingen. Natrlich ist nicht jedes Makro sinnvoll innerhalb eines Blockes auszufhren, aber das mssen Sie entscheiden. Prinzipiell gehen Sie wie folgt vor: - Markieren eines zusammenhngenden Blockes (s. Kapitel 'Die Blockarten') - 'Macro loop' im Macro-Men anklicken (oder [ALT/L] drcken) - Makro starten, d.h. die gewnschte Funktions/Num-Taste drcken. Beachten Sie, da der Cursor automatisch an den Blockanfang gesetzt wird, und zwar in die zuletzt aktuelle Spalte ! Die Makroloop-Option wird nach jeder Ausfhrung automatisch deaktiviert. 4.5 Makros per Kommandozeile -------------------------------------------------------------- Sogar die Kommandos zum Verlassen des Editors (z.B. Anklicken von 'Quit' im File-Men) lassen sich in einem Makro sinnvoll einsetzen. Zugegeben, das klingt seltsam, ist aber trotzdem kein Aprilscherz. Whrend der Aufnahme eines Makros werden diese Kommandos natrlich nur aufgezeichnet, nicht ausgefhrt. Einen Sinn erhlt dieser Sachverhalt dadurch, da Makros in der Kommandozeile an CED bergeben werden knnen, wodurch CED als Pseudo-Filter in einem Shellscript eingesetzt werden kann. Darunter ist folgendes zu verstehen: Sie erzeugen ein oder mehrere Makros, die einen Text modifizieren (z.B. Zeichenketten ersetzen), sichern und anschlieend CED verlassen. Diese Makros speichern Sie unter dem Namen 'CED.MAC' ber 'Save macros...' im Makro-Men ab, so da diese beim Starten von CED automatisch geladen werden. Sie schreiben ein Shellscript fr Ihren CLI, das CED nach- einander mit verschiedenen Dateinamen und den gewnschten Makronummern in der Kommandozeile aufruft. 4.5.1 Format einer Kommandozeile --------------------------------- Die Kommandozeile mu folgendermaen aufgebaut sein: Dateinamen und Makronummern drfen in beliebiger Reihenfolge in der Kommandozeile auftreten, wobei ein Makro durch ein vorangestelltes Minuszeichen gekennzeichnet werden mu. Jedem Dateinamen darf die Zeilen- und Spaltennummer, in die der Cursor gesetzt werden soll, folgen. Die Parameter mssen wie blich durch mindestens ein Leer- zeichen voneinander getrennt werden. Nach Programmstart wird die Kommandozeile von links nach rechts von CED abgearbeitet. Die Makronummern entsprechen der Nummer der zugeordneten Funktionstasten (also F1 -> Makronummer 1, usw.). CED V1.03 Seite 27 Beispiel: --------- f:\src\funks.c -1 -2 main.c 22 5 -18 io.c 102 Diese Zeile veranlasst CED zu folgenden Aktivitten: - die Datei "funks.c" von Laufwerk "f" aus dem Subdirectory "src" in Textpuffer #0 laden - Makro 1 ausfhren - Makro 2 ausfhren - die Datei "main.c" aus dem aktiven Verzeichnis in Textpuffer #1 laden - Cursor in Zeile 22, Spalte 5 setzen - Makro 18 ausfhren - die Datei "io.c" aus dem aktiven Verzeichnis in Textpuffer #2 laden - Cursor in Zeile 102 setzen 4.6 Startup macro -------------------------------------------------------------- Im 'Misc...'-Dialog knnen Sie unter 'Startup macro' die Nummer eines Makros festlegen, das nach Programmstart anstelle der FSB automatisch ausgefhrt werden soll. Dieses Makro wird aber nur dann gestartet, wenn CED ohne Parameter aufgerufen wurde bzw. keine 'Inf'-Datei (Auto load) vorhanden ist. Soll kein Makro ausgefhrt werden, tragen Sie die Makro- nummer 0 in das 'Startup macro'-Feld ein, oder drcken beim Anstarten von CED die [SHIFT]-Taste. Das Startup-Macro kann z.B. dazu benutzt werden, bei Pro- grammstart die FSB gleich mit einem bestimmten Verzeichnis zu ffnen (s.u.). 4.7 Anwendungsmglichkeiten und Beispiele -------------------------------------------------------------- Die Anwendungsmglichkeiten fr Makros sind vielfltig, angefangen bei der einfachen Belegung einer Funktionstaste mit einer Menleisten-Funktion, ber die Belegung der Funktionstasten mit Textfloskeln, bis hin zu komplexen Operationen in mehreren Textpuffern. Es sollen hier zwei kleine Beispiele vorgestellt werden, die Sie leicht nachvollziehen knnen. Beispiel 1: ----------- Das erste Beispiel ist von recht schlichter Natur und soll ein wenig die Makrofhigkeit der GEM-Dialoge demonstrieren. Angenommen, Sie haben auf Ihrer Harddisk tief im Dateibaum der Partition F folgendes Verzeichnis fr ASCII-Texte an- gelegt: CED V1.03 Seite 28 F:\IM\KELLER\SITZT\EIN\GESPENST\TEXTE\ Da Sie oft einen Text aus besagtem Kellerverzeichnis laden mssen, wird Ihnen die Klickerei in der FSB langsam aber sicher lstig... Also erzeugen Sie folgendes Makro: - [ALT/M] -> Makroaufzeichnung starten - [CNTRL/O] -> FSB fr 'Open...' aufrufen - [UP ARROW] -> Cursor in Pfadbox setzen - [ESC] -> Pfad lschen - F:\IM\KELLER\SITZT\EIN\GESPENST\TEXTE\ eingeben - [CNTRL/INSERT] -> neuen Pfad bernehmen - [ALT/M] -> Makroaufzeichnung beenden - [F9] -> eine Funktionstaste hat's erwischt - Krzel eingeben -> mu nicht unbedingt sein Nach Eingabe des Makro-Krzels wird die FSB automatisch geschlossen. Drcken Sie nun [F9], so erscheint die FSB und das 'Keller- verzeichnis' wird geffnet. Eine zweite und schnellere Mglichkeit dieses Makro zu verwirklichen, besteht darin, da im Makro die FSB-Belegung der Funktionstasten mit Pfaden augenutzt wird. Dazu belegen Sie (z.B.) F1 (in der FSB !) mit dem oben genannten Pfad und speichern diese Konfiguration mit 'Save config...' ab. Jetzt vereinfacht sich das Makro erheblich: - [ALT/M] -> Makroaufzeichnung starten - [CNTRL/O] -> FSB fr 'Open...' aufrufen - [F1] -> Pfad setzen - [ALT/M] -> Makroaufzeichnung beenden - [F9] -> Makro-Funktionstaste belegen - Krzel eingeben -> mu nicht unbedingt sein Dieses Makro ist ein seiner Ausfhrung um einiges schneller als die erste Version, hat aber den kleinen Nachteil, da es von der aktuellen Konfiguration (FSB-Funktionstasten) abhngig ist. So oder so, ein Makro dieser Art kann auch als Startup-Macro eingesetzt werden, so da nach dem Starten von CED die FSB gleich mit dem gewnschten Zugriffspfad geffnet wird. CED V1.03 Seite 29 Beispiel 2: ----------- Damit Sie dieses Beispiel ausprobieren knnen, mssen Sie zunchst diese Dokumentation (DOKU.TXT) in den Editor laden. Angenommen, in dieser Anleitung soll zwischen der dritten und der vierten Seite eine weitere Seite eingefgt werden. Es mssen also ab der bisherigen Seite 4 die Seitennummer um 1 erhht werden. Das macht bei ca. 80 Seiten schon keinen groen Spa mehr! Doch zum Glck gibt es Makros. Ok, zunchst mssen wir uns berlegen, wie wir gezielt die Zeilen anspringen knnen, in der die Seitennummern stehen. Nun ja, das geht recht einfach mit der 'Find'-Funktion. Wir rufen also zunchst den Find-Dialog auf und tragen den Suchstring ' Seite' ein. Die Leerzeichen vor 'Seite' sind unbedingt notwendig, denn im Text kommt das Wort 'Seite' so nicht nur in den fr uns relevanten Zeilen vor. Jetzt verlassen wir den Find-Dialog ber die [UNDO]-Taste und beginnen mit der Aufzeichnung des Makros. Zunchst jedoch setzen wir den Cursor in die dritte Seite der Dokumentation. Jetzt mssen folgende Kommandos ausge- fhrt werden: - [ALT/M] -> Makroaufzeichnung starten - [CNTRL/N] -> erste passende Zeile anspringen - [SHIFT/RIGHT ARROW] -> der Cursor steht jetzt auf 'Seite' - [SHIFT/RIGHT ARROW] -> der Cursor steht jetzt auf der Seitennummer - [CNTRL/+] -> Seitennummer inkrementieren - [CNTRL/RETURN] -> Cursor an Anfang der nchsten Zeile (sicher ist sicher) - [ALT/M] -> Makroaufzeichnung beenden - [ENTER] -> diesmal hat es eine Taste des numerischen Tastenblocks erwischt So, dieses Makro ist sogar tauglich fr einen Makro-Loop. Sie drcken also jetzt einfach [CNTRL/S] um den Blockstart festzulegen. Dann springen Sie mit [CNTRL/B] ans Ende des Textes und drcken [CNTRL/E], um das Blockende zu setzen. Nun mu noch [ALT/L] gedrckt werden, um anzuzeigen, da das Makro im Block ausgefhrt werden soll. Jetzt wird's spannend! Drcken Sie [ENTER] und harren Sie der Dinge, die da kommen. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! Das Anklicken von Buttons in einem GEM-Dialog whrend ! ! einer Makroaufzeichnung ist zwar grundstzlich erlaubt, ! ! fhrt aber dazu, da das Makro von der Bildschirmauf- ! ! lsung abhngig wird. Benutzen Sie deshalb immer die zu ! ! dem gewnschten Button gehrende Tastenkombination bzw. ! ! springen Sie ein Eingabefeld ber die Cursortasten an. ! ! (s. 'Bedienung der GEM-Dialoge ber die Tastatur'). ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 30 5. Die Blockarten ============================================================== In CED gibt es vier verschiedene Blockarten, die sich in der Art ihrer Markierung und in den auf sie anwendbaren Operationen unterscheiden. 5.1 Der 'One-line-block' -------------------------------------------------------------- Der 'One-line-block' besteht, wie der Name schon sagt, lediglich aus einer einzigen Zeile. Diese Blockart ist dann uerst ntzlich, wenn eine Einzelzeile kopiert werden mu. Markierung: ----------- Zuerst bringen Sie den Cursor in die Zeile, die kopiert werden soll. Der Cursor mu dabei nicht am Zeilenanfang stehen. Dann drcken Sie die [ESC]-Taste, womit Sie die Zeile in den 'One-line-block'-Puffer kopiert haben. Die Zeile wird nicht auf dem Bildschirm markiert ! Der 'OLB'-Puffer ist vollkommen unabhngig von den brigen Blockarten. Anwendbare Operationen: ----------------------- Jetzt bringen Sie den Cursor in die Zeile im Text, oberhalb der Sie den Inhalt des 'OLB'-Puffers eingefgen mchten. Auch hier mu sich der Cursor nicht am Zeilenanfang befinden. Zum Einfgen drcken Sie jetzt [LEFT SHIFT/ESC]. 5.2 Der fragmentierte Block -------------------------------------------------------------- Die zweite Blockart besteht aus beliebig vielen Zeilen, welche nicht hintereinander im Text stehen mssen. Markierung: ----------- Sie scrollen nacheinander in die Zeilen, die Sie markieren wollen und drcken dann jeweils [CNTRL/DOWN-ARROW]. Diese Zeilen werden daraufhin mit einem Muster unterlegt, um deren Zugehrigkeit zum Block anzuzeigen. Auf diese Weise ist es mglich, gezielt die Zeilen in den Block aufzunehmen, die auch wirklich bearbeitet werden sollen. Irrtmlich markierte Zeilen lassen sich aber auch wieder demarkieren: Dazu setzen Sie den Cursor in die Zeile, die Sie demarkieren wollen und drcken dann [CNTRL/UP-ARROW]. Die Zeile erscheint dann wieder normal, d.h. ohne Muster auf dem Bildschirm. Beachten Sie bitte, da die Blockzeilen lediglich auf dem Bildschirm markiert und nicht in einen Kopierpuffer ber- tragen werden! CED V1.03 Seite 31 Anwendbare Operationen: ----------------------- - Blockmarkierung invertieren (Meneintrag 'Invert'). - Einfgen des Blocks an jeder beliebigen Zeilenposition in einen Textpuffer (Meneintrag 'Copy' oder [CNTRL/C]). - Lschen des Blocks aus dem Textpuffer (Meneintrag 'Delete' oder [CNTRL/D]). - Block ausdrucken (Meneintrag 'Print block'). !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! Bei der Markierung eines fragmentierten Blocks geht eine ! ! eventuell vorhandene Markierung eines zusammenhngenden ! ! Blockes nicht verloren. Der zusammenhngende Block wird ! ! Teil des fragmentierten Blocks. ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5.3 Der zusammenhngende Block -------------------------------------------------------------- Die dritte Blockart besteht aus einem beliebigen Abschnitt eines Textpuffers, also aus zusammenhngenden Zeilen. Er besteht mindestens aus einer Zeile und hchstens aus allen Zeilen eines Textpuffers. Markierung mit der Tastatur: ---------------------------- Zuerst bringen Sie den Cursor in die Zeile, ab der der Block beginnen soll. Dann legen Sie den Blockstart durch Anklicken von 'Mark start' im Blockmen oder durch Drcken von [CNTRL/S] fest. Die Startzeile wird daraufhin mit einem Muster unterlegt dargestellt. Der Blockstart ist das erste Zeichen der Startzeile. Wichtig ist, da damit aber auch gleichzeitig das Blockende schon festgelegt wurde: Das vorlufige Blockende ist das letzte Zeichen der Startzeile. Das Blockende lt sich nun beliebig neu festlegen, indem Sie den Cursor in die gewnschte Endzeile bringen und anschlieend 'Mark end' im Blockmen anklicken oder [CNTRL/E] drcken. Daraufhin werden alle Zeilen von der Startzeile bis zur Endzeile mit einem Muster unterlegt dargestellt. Markierung mit der Maus: ------------------------ Einen zusammenhngenden Block knnen Sie auch mit der Maus markieren, indem Sie die Startzeile mit der rechten Maustaste einmal anklicken (unter TOS 1.0 mu die rechte Maustaste dabei etwas lnger gehalten werden). Das Ende des Blockes setzen Sie, indem Sie die Endzeile mit einem doppelten Rechtsklick markieren. Eine Blockmarkierung kann durch einen Rechtsklick auf die Titel-Leiste des aktiven Windows gelscht werden. Beachten Sie bitte, da die Blockzeilen lediglich auf dem Bildschirm markiert und nicht in einen Kopierpuffer ber- tragen werden! CED V1.03 Seite 32 Anwendbare Operationen: ----------------------- - Blockmarkierung invertieren (Meneintrag 'Invert'). - Einfgen des Blocks an jeder beliebigen Zeilenposition in einen Textpuffer (Meneintrag 'Copy' oder [CNTRL/C]). Der Cursor mu sich dabei auerhalb der Blockmarkierung oder auf der ersten Blockzeile befinden, sonst erscheint die Fehlermeldung 'Illegal cursor position'. - Block innerhalb des Textpuffers verschieben, d.h. der Block wird gelscht und dann an die aktuelle Cursor- position kopiert (Meneintrag 'Move' oder [CNTRL/M]). Hier mu sich der Cursor vllig auerhalb der Block- markierung befinden. - Lschen des Blocks aus dem Textpuffer (Meneintrag 'Delete' oder [CNTRL/D]). - Block horizontal nach links/rechts verschieben (Meneintrag 'Shift left' bzw. 'Shift right' oder [CNTRL/LEFT ARROW] bzw. [CNTRL/RIGHT ARROW]). Hier mu sich der Cursor innerhalb der Blockmarkierung befinden. - Block unter einem frei festlegbaren Pfad/Namen auf Disk abspeichern. (Meneintrag 'Write...' oder [CNTRL/W]). - Block ausdrucken (Meneintrag 'Print block'). - Block auf GEM-Clipboard zwischenspeichern. Hierbei wird der Name und Pfad, unter dem der Block gespeichert wird, von GEM verwaltet. Die Wirkungsweise ist also mit einem Kopierpuffer zu vergleichen, wobei als Puffer nicht das RAM, sondern ein Massenspeicher benutzt wird. Diese Operation ist nur mit einer Harddisk/Ramdisk sinnvoll einzusetzen (Meneintrag 'Clipbrd copy' oder [CNTRL/K]). - Block vom Clipboard an der aktuellen Zeilenposition einfgen (Meneintrag 'Clipbrd paste' oder [CNTRL/P]). Auch hier mu sich der Cursor auerhalb oder auf der ersten Blockzeile einer eventuell vorhandenen Markierung eines zusammenhngenden Blockes befinden. - nur anschauen knnen Sie einen Block auf dem Clipboard, indem Sie das Clipboard-Piktogramm im Statusfeld des aktiven Windows einmal anklicken. Ein Doppelklick auf das Piktogramm lscht den Block vom Clipboard. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! Bei der Markierung eines zusammenhngenden Blocks geht ! ! eine ventuell vorhandene Markierung eines fragmentierten ! ! Blockes verloren. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 33 5.4 Der Zeilenausschnitt -------------------------------------------------------------- Die bis jetzt vorgestellten Blockarten bestehen aus ganzen Zeilen. Mit der vierten Blockart ist es mglich, Ausschnitte aus einer Zeile in einen Wortpuffer zu bertragen und an- schlieend an jeder beliebigen Stelle im Text wieder einzu- fgen. Markierung: ----------- Zuerst bringen Sie den Cursor in die Zeile und Spalte, ab der der Block beginnen soll. Anschlieend drcken Sie [ALT/S] um den Blockstart festzulegen. Nun fahren Sie mit dem Cursor in der gleichen Zeile in die Spalte, wo der Block enden soll und drcken [ALT/E]. Damit haben Sie den Zeilenausschnitt in den Wortpuffer bertragen. Ein ganzes Wort kann durch Drcken von [ALT/W] in den Wort- puffer bertragen werden. Unter Wort ist eine Zeichenkette zu verstehen, die durch bestimmte Trennzeichen links bzw. rechts begrenzt ist. Die Trennzeichen knnen im 'Misc...'-Dialog unter 'Word separator' frei festgelegt werden. Der Cursor darf sich dabei an einer beliebigen Stelle innerhalb des Wortes befinden. Hier einige Beispiele: Wort mit Begrenzer Inahlt des Wortpuffers nach [ALT/W] ------------------------------------------------------------- "Oxenfrosch" Oxenfrosch parameter [23] 23 osbind.h .Beispiel: Beispiel Beachten Sie bitte, da der Zeilenausschnitt nicht auf dem Bildschirm markiert wird ! Einfgen: --------- Zum Einfgen des Wortpuffers setzen Sie den Cursor in die beabsichtigte Zeile/Spalte im Text und drcken [ALT/P]. Der Wortpuffer ist 252 Bytes gro und vollkommen unabhngig von den brigen Blockarten. CED V1.03 Seite 34 6. Suchen/Ersetzen von Zeichenketten ============================================================== 6.1 Suchen von Zeichenketten -------------------------------------------------------------- CED bietet Ihnen eine komfortable Mglichkeit eine Zeichen- kette innerhalb eines festlegbaren Bereichs zu suchen. Der Find-Dialog, den Sie ber den Meneintrag 'Find' oder durch [CNTRL/F] aufrufen knnen, bietet Ihnen dazu folgende Einstellmglichkeiten: - Verwaltung von zehn, maximal 55 Zeichen langen Suchstrings im Eingabefeld. Den Suchstring knnen Sie durch einen Linksklick auf die Pfeilbuttons oder ber [CNTRL/UP ARROW] bzw. [CNTRL/DOWN ARROW] wechseln. brigens, die Suchstrings (und Ersatzstrings) gehren zur CED-Konfiguration und knnen daher mit 'Save config...' abgespeichert werden. - Auswahl zwischen vier Suchbereichen - Suchen nach Substrings oder ganzen Worten - Gro/Kleinschreibung beachten/nicht beachten - Wahl der Suchrichtung - Wahl der Suchstarts 6.1.1 Suchbereiche ------------------- Zur Auswahl des Suchbereichs dienen die vier Buttons in der Box mit dem Titel 'Range' im Find-Dialog. 6.1.1.1 Suchbereich 'Text' --------------------------- Die Zeichenkette wird innerhalb der akiven Textespuffers gesucht. 6.1.1.2 Suchbereich 'Global' ----------------------------- Die Zeichenkette wird im aktiven Textpuffer und den folgenden Textpuffern gesucht (also #0 bis #9, #1 bis #9, usw.). Das Umschalten auf den nchsten Textpuffer wird automatisch dann ausgefhrt, wenn keine passende Textstelle mehr im aktuellen Text gefunden werden kann. CED V1.03 Seite 35 6.1.1.3 Suchbereich 'Block' ---------------------------- Die Zeichenkette wird innerhalb eines zusammenhngenden Blockes gesucht. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! Innerhalb der oben genannten Bereiche wird nach dem ! ! Starten der Find-Funktion die erste passende Textstelle ! ! angesprungen und dann die Suche abgebrochen. Nachfolgende ! ! passende Textstellen knnen Sie durch Drcken von ! ! [CNTRL/N] (abwrts) bzw. [ALT/N] (aufwrts) anspringen. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 6.1.1.4 Suchbereich 'Filesystem' --------------------------------- Eine Besonderheit stellt das Durchsuchen von Dateien/Ordnern auf einem Massenspeicher dar: In diesem Modus erscheint nach Anklicken des 'OK'-Buttons im Find-Dialog die FSB, mit der Sie noch folgende Parameter festlegen mssen: - den Pfad, unter dem die zu durchsuchenden Dateien/Ordner zu finden sind. Klicken Sie dazu die gewnschte Laufwerksbe- zeichnung an und setzen Sie den gewnschten Pfad. - ein Suchmuster, das angibt, welche Dateien durchsucht werden sollen. Klicken Sie dazu einfach den gewnschten Extensionbutton an. Gegebenenfalls knnen Sie auch noch ein spezielles Dateinamen-Suchmuster eingeben, das wie die Extension den Allquantor '*' und den Existenzquantor '?' enthalten darf (s. Kapitel 'Die Fileselektorbox'). Sie knnen jetzt ber den 'Local'-Button oder den 'Sub'- Button in der FSB die Find-Funktion starten. 'Local' bedeutet, da nur die Dateien im eingestellten Pfad durchsucht werden. Durch 'Sub' (Krzel fr Subdirectories) werden rekursiv smtliche unter dem Pfad auffindbaren Verzeichnisse durchsucht. In beiden Modi wird CED nacheinander die Dateien, die das Dateimuster erfllen, in den aktiven Textpuffer laden und nach der Zeichenkette durchsuchen. Falls CED fndig wird, erscheint ein kleiner Dialog, in dem Sie mit vier Buttons das weitere Verfahren steuern knnen: CED V1.03 Seite 36 - Cancel: die Suche wird unterbrochen. Sie knnen nun den aktuellen Text modifizieren und danach die Suche durch Drcken von [CNTRL/N] ([ALT/J] bei 'Find C-function') fortsetzen. Kann keine passende Textstelle im aktuellen Text mehr gefunden werden, wird die nchste Datei geladen. Wurde der aktuelle Text modifiziert, erscheint zuvor eine Alarmbox, die das Sichern des modifizierten Textes ermglicht. - Next: es wird die nchste passende Textstelle angesprungen, wobei zunchst im aktuellen Text weitergesucht wird. Sobald sich keine passende Textstelle mehr finden lt, wird die nchste Datei geladen. - Drop text: der Rest des aktuellen Textes wird ignoriert, d.h. es wird gleich die nchste Datei in den aktiven Textpuffer geladen und es geht weiter wie unter 'Next'. - Switch buf: Die Suche im aktiven Textpuffer wird abgebrochen, auf auf den nchsten Textpuffer umgeschaltet, die nchste Datei geladen und die Suche wie bei 'Next' weitergefhrt. So knnen Sie maximal 10 Dateien, in denen die gesuchte Zeichenkette vorkommt, in die Textpuffer laden. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! In der Zeitspanne, in der der oben beschriebene Dialog ! ! nicht sichtbar ist, kann die Suche jederzeit durch ! ! Drcken der [LEFT SHIFT]-Taste abgebrochen werden. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 6.1.2 Substring/Wortsuche -------------------------- In der Box mit dem Titel 'Target type' befinden sich zwei Buttons, die folgende Eigenschaften der Find-Funktion steuern: Substring: Ist dieser Button aktiv, so werden alle Zeichen- ketten innerhalb des gewhlten Suchbereichs gefunden, die den Suchstring an einer beliebigen Position enthalten. Word: Es werden nur solche Zeichenketten gefunden, die vollstndig dem Suchstring entsprechen. Das bedeutet, da die Textstelle von Wortseparatoren eingeschlossen sein mu. Die Wortseparatoren knnen im 'Misc...'-Dialog unter 'Word separator' bestimmt werden. Zeilenanfang bzw. Zeilenende bilden 'natrliche' Wortseparatoren. CED V1.03 Seite 37 6.1.3 Gro/Keinschreibung -------------------------- In der Box mit dem Titel 'Case' befinden sich zwei Buttons, die bestimmen, ob bei der Suche die Gro/Kleinschreibung beachtet werden soll. Match: Gro/Kleinschreibung beachten. Ignore: Gro/Kleinschreibung nicht beachten. 6.1.4 Suchrichtung ------------------- Zur Festlegung der Suchrichtung dienen die Buttons in der Box mit dem Titel 'Direction'. Whlen Sie den Button mit der Aufschrift 'Down', so wird ein Text von oben nach unten durchsucht. Der 'Up'-Button dreht die Suchrichtung um. Im Suchbereich 'Global' werden die Textpuffer in aufsteig- ender bzw. absteigender Reihenfolge durchsucht. 6.1.5 Suchstart ---------------- Rechts im Find-Dialog befinden sich die Buttons, mit denen Sie die Startposition festlegen und gleichzeitig die Suche starten knnen. Der 'Ok'-Button startet die Suche ab dem Textbeginn/Textende, je nach eingestellter Suchrichtung. Im Suchbereich 'Filesystem' ist die Suchrichtung irrelavant, die 'Direction'-Buttons sind dann nicht anwhlbar. Der 'Next'-Button startet die Suche ab der aktuellen Cursorposition. Auch dieser Button ist fr den Suchbereich 'Filesystem' nicht anwhlbar. 6.1.6 Wahl des Suchstrings ber die Tastatur --------------------------------------------- Da z.B. in Makros oft mehrere Suchstrings verwendet werden, der Aufbau des GEM-Dialoges aber recht langsam ist, kann von der Tastatur aus bestimmt werden, welcher der zehn Suchstrings angesprungen werden soll. Um einen bestimmten Suchstring ab Textstart zu suchen, drcken Sie zuerst [CNTRL/F] und halten beide Tasten weiter gedrckt. Jetzt drcken Sie oben auf der Tastatur eine Zifferntaste, um die Nummer des gewnschten Such- strings festzulegen (0 bis 9). Wenn Sie die nchste passende Textstelle ab der momentanen Cursorposition suchen wollen, drcken Sie zuerst [ALT/F] und halten beide Tasten weiter gedrckt. Jetzt drcken Sie wie oben beschrieben die Nummer des zu verwendenden Such- strings. Natrlich bleibt die Anwendung dieser Mglichkeiten nicht nur auf Makros beschrnkt... CED V1.03 Seite 38 6.2 Ersetzen von Zeichenketten (Replace) -------------------------------------------------------------- In den Eingabefeldern des Replace-Dialogs, den Sie ber den Meneintrag 'Replace' oder [CNTRL/R] aufrufen knnen, ist es mglich, maximal 10 Suchstrings und 10 Ersatzstrings zu ver- walten, wobei jeder Suchstring mit jedem Ersatzstring kombiniert werden kann. Wie schon beim Suchen von Zeichenketten, knnen Sie auch hier einen fr die Replace-Operation relevanten Bereich whlen, die Beachtung der Gro/Kleinschreibung einstellen und sowohl Sub- strings als auch nur vollstndige Worte ersetzen lassen. Auerdem knnen Sie whlen zwischen den Ersetz-Modi "Ersetzen aller passenden Textstellen ohne Nachfrage" (Start ber den 'Replace all' Button) oder "selektives Ersetzen mit Nachfrage" (Start ber den 'Verify all' Button). 6.2.1 Replace-Bereiche ----------------------- In der Box mit dem Titel 'Range' befinden sich drei Buttons mit deren Hilfe Sie den Replace-Bereich einstellen knnen: - Text: passende Textstellen werden innerhalb des aktiven Textpuffers ersetzt. - Global: passende Textstellen werden im aktiven Textpuffer und den darauffolgenden Textpuffern ersetzt. - Block: passende Textstellen werden nur innerhalb eines zusammenhngenden Blockes ersetzt. 6.2.2 Substring/Wort ersetzen ------------------------------ In der Box mit dem Titel 'Target type' befinden sich zwei Buttons, die folgende Eigenschaften der Replace-Funktion steuern: Substring: Ist dieser Button aktiv, so werden alle Zeichen- ketten innerhalb des gewhlten Suchbereichs ersetzt, die den Suchstring an einer beliebigen Position enthalten. Word: Es werden nur solche Zeichenketten ersetzt, die vollstndig dem Suchstring entsprechen. CED V1.03 Seite 39 6.2.3 Gro/Keinschreibung -------------------------- In der Box mit dem Titel 'Case' befinden sich zwei Buttons, die bestimmen, ob bei der Suche des zu ersetzenden Strings die Gro/Kleinschreibung beachtet werden soll. Match : Gro/Kleinschreibung beachten. Ignore: Gro/Kleinschreibung nicht beachten. Adapt : Ein besonderes Feature stellt die 'Adapt' Option dar. Dieser Button ist nur dann anwhlbar, wenn der 'Ignore'-Button aktiviert ist. 'Adapt' bedeutet, da der Ersatzstring der zu ersetzenden Textstelle bezglich der Gro/Kleinschreibung angepat wird. Beispiel: --------- Die Zeichenkette 'replace' soll durch 'austauschen' ersetzt werden, wobei die Zeichenkette in unter- schiedlicher Schreibweise bezglich der Gro/Klein- schreibung im Text vorkommt: gefundene Textstelle | angepater Ersatzstring ------------------------------------------------ Replace | Austauschen replace | austauschen REPLACE | AUSTAUSCHEN RePlAcE | AuStAuSchen Ist der Ersatzstring lnger als der Suchstring, so wird der Rest des Ersatzstrings nach folgenden Regeln angepat: - ist das erste Zeichen der Textstelle gro und der Rest klein, so wird auch die berlnge des Ersatz- strings klein angepat. - ist die Textstelle vollstndig klein, so wird auch die berlnge klein angepat. - ist die Textstelle vollstndig gro, so wird auch die berlnge gro angepat. CED V1.03 Seite 40 - ist die Textstelle unregelmig gro/klein, so wird die berlange so bernommen, wie sie im Replace- Dialog eingegeben wurde. Sie sehen, da nur im letzten Fall die Schreibweise des Ersatzstrings im Replace-Dialog relevant ist. 6.2.4 Ersetzen ohne Nachfrage ------------------------------ Beim Ersetzen ohne Nachfrage (Start ber den 'Replace All' -Button) werden alle Textstellen in dem ausgewhlten Bereich ersetzt. Wird eine Zeichenkette gegen eine lngere Zeichen- kette ausgetauscht, so kann es vorkommen, da die maximale Zeilenlnge berschritten wird. In diesem Fall wird die Operation abgebrochen, die betroffene Zeile angesprungen und die Fehlermeldung 'Line too long !' ausgegeben. 6.2.5 Ersetzen mit Nachfrage ----------------------------- Beim Ersetzen mit Nachfrage (Start ber den 'Verify all'- Button) wird zuerst die nchste passende Textstelle an- gesprungen und dann ein Nachfrage-Dialog gestartet. Im Nachfrage-Dialog werden zur Sicherheit nocheinmal der Such- und Ersatzstring angezeigt. Der Ersatzstring ist dabei sogar editierbar, so da vor dem Ersetzen noch eine nderung am Ersatzstring vorgenommen werden kann. Beim nchsten Erscheinen des Nachfrage-Dialogs ist wieder der ursprnglich im Replace-Dialog eingegebene Ersatzstring eingetragen. Der Nachfrage-Dialog bietet drei Buttons zur Steuerung des weiteren Verlaufs der Replace-Operation: - Replace: die Textstelle wird ersetzt und dann die nchste passende Textstelle angesprungen. - Skip: die Textstelle wird bersprungen, d.h. sie wird nicht ersetzt. Es wird gleich die nchste passende Textstelle angesprungen. - Cancel: die Replace-Operation wird abgebrochen. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! Nach einem Abbruch kann die Replace-Operation durch ! ! Drcken von [CNTRL/V] an jeder beliebigen Textstelle ! ! wieder gestartet werden. ! ! Direkt nach dem Starten der Replace-Operation wird das ! ! aktuelle Window auf Maximalgre geschaltet, wodurch eine ! ! berlagerung der angesprungenen Textstelle durch den ! ! Nachfrage-Dialog ausgeschlossen ist. Nach Beendigung oder ! ! Abbruch der Replace-Operation wird die ursprngliche ! ! Windowgre wiederhergestellt. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 41 6.3 Suchen eines C-Funktionskopfes -------------------------------------------------------------- In groen 'C'-Sourcetexten gestaltet sich die Suche nach einer Funktion oft ziemlich nervend, da ein normaler Suchalgorithmus nicht zwischen den Funktionsaufrufen (oder sonstigen Strings, die mit der gleichen Zeichenfolge beginnen wie der Funktionsname) und der Definition der C-Funktion unterscheiden kann. Fr die zahlreichen 'C'-Programmierer beinhaltet CED deshalb einen 'C-Funktionskopf-Suchalgorithmus'. Um einen C-Funktionskopf direkt anzuspringen, gehen Sie wie folgt vor: Zuerst rufen Sie das Dialogformular ber den Meneintrag 'Find C-function...' oder [CNTRL/J] auf. Nun geben Sie den Namen der Funktion im Eingabefeld ein. Fr die Funktion wunderbar(Parameterliste) geben Sie wunderbar ein. Die Parameterliste und die runden Klammern sind also wegzulassen ! Sie knnen aber auch nur einen Teil des Funktionsnamens eingeben, also z.B. 'wunder' , 'bar', 'wu' etc. Wollen Sie die erste C-Funktion (bzw. alle folgenden C-Funkionen) anspringen, geben Sie als Funktionsnamen nur ein Sternchen ('*') ein. Nachdem Sie den Funktionsnamen eingegeben haben, whlen Sie den Suchbereich (s.u.) und bestimmen ob die Gro/Klein- schreibung beachtet werden soll. Anschlieend drcken Sie [RETURN]. Die Operation wird nun den ersten C-Funktionskopf anspringen, in dem der eingegebene Teilstring vorkommt. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! Durch Drcken von [ALT/J] knnen Sie den nchsten ! ! passenden Funktionskopf anspringen. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Wie bei der normalen Find-Operation, knnen Sie auch hier einen Bereich whlen, in dem der Funktionskopf gesucht werden soll: - Text: der Funktionskopf wird im aktiven Textpuffer gesucht. - Global: der Funktionskopf wird im aktiven Textpuffer und den darauffolgenden Textpuffern gesucht. - Filesystem: es werden Dateien/Ordner auf einem Massen- speicher durchsucht. (s. Abschnitt 6.1.1.4) CED V1.03 Seite 42 Um ein korrektes Ergebnis zu erzielen werden C-Kommentare, String-Konstanten und Char-Konstanten, die eventuell eine geschweifte Klammer enthalten knnten, berlesen. Einschrnkungen -------------------------------------------------------------- Neben den Funktionsdefinitionen werden auch Funktions- prototypen (ANSI-C) gefunden. Da C-Kommentare berlesen werden, knnen auskommentierte Funktionen nicht gefunden werden. Die Operation kann nur dann funktionieren, wenn der Quell- text keine Fehler in der Block-Klammerung (das ist die Zu- sammenfassung von Anweisungen durch geschweifte Klammern) und Kommentaren enthlt. Ein Fehler in der Block-Klammerung bedeutet, da die Anzahl der ffnenden und schlieenden geschweiften Klammern nicht identisch sind. Daraufhin wird die Meldung 'Unbalanced braces !' ausgegeben. Ein beliebter Kommentarfehler ist, da versehentlich das Kommentarende vergessen wird. Dies wird unter Umstnden erkannt und dann die Meldung 'Unbalanced comment !' ausgegeben. CED V1.03 Seite 43 7. Druckeranpassung ============================================================== Bei Programmstart versucht CED einen Druckertreiber namens 'CED.PRN' zu laden. Den Druckertreiber mssen Sie selbst mit Hilfe von CED, Ihres Druckerhandbuches und dem mitge- lieferten Programm GENPRN.TTP erstellen. Selbstverstndlich knnen Sie einen CED-Druckertreiber mit beliebigem Namen von Hand nachladen, indem Sie den Menpunkt 'Install printer...' im Men 'Extras' aufrufen. 7.1 Die Source-Datei des Druckertreibers -------------------------------------------------------------- Zunchst mssen Sie eine Treiber-Source-Datei beliebigen Namens mit dem Editor erstellen. Diese Source-Datei besteht aus einer oder mehreren Zeilen. In einer Zeile wird jeweils fr ein Zeichen die Anpassung vorgenommen. Syntax: ------- [Zeichen] [mind. 1 Blank] [Anpassungssequenz] [# Kommentar] Die Anpassungssequenz besteht aus einer oder mehreren Dezimal- zahlen, die jeweils durch mindestens 1 Blank voneinander ge- trennt werden mssen.Die Zahlenwerte fr die Anpassungssequenz entnehmen Sie bitte Ihrem Druckerhandbuch. Beispiel: (fr Star NL-10, IBM-Interface-Cartridge) --------------------------------------------------- 27 82 2 126 27 82 0 # Das scharfe S Erklrung: = Zeichen, bei dessen Auftreten in einem Text die darauffolgende Anpassungssequenz ausgegeben werden soll. Jetzt folgt die Anpassungssequenz: 27 = Escape 82 = Zeichensatz selektieren 2 = Nummer des zu selektierenden Zeichensatzes (hier 'Germany') 126 = Nummer des auszugebenden Zeichens des neuen Zeichensatzes 27 = Escape 82 = Zeichensatz selektieren 0 = Nummer des zu selektierenden Zeichensatzes (hier 'USA') CED V1.03 Seite 44 Anschlieend knnen Sie die Zeile noch mit einen Kommentar versehen, der mit einem 'Gartenzaun' eingeleitet werden mu. brigens, den gleichen Effekt der oben vorgestellten An- passungszeile erreichen Sie mit folgender Zeile: 225 # So, geht's auch Nachdem Sie fr die gewnschten Zeichen die Anpassung vorgenommen haben, speichern Sie die Datei unter einem fr Sie sinnvollen Namen ab (z.B. NL_10.PRS ). 7.2 Erzeugung des Druckertreibers -------------------------------------------------------------- Die Treiber-Source-Datei mu nun noch von dem Programm GENPRN.TTP bearbeitet werden. Dieses Programm erstellt den fr CED lesbaren Treiber. Sie starten dazu GENPRN.TTP vom Desktop aus mit einem Doppelklick. Darauf erscheint wie gewohnt der Dialog, in dem Sie die Parameter fr das Programm eingeben mssen. Hier schreiben Sie als ersten Parameter den Namen der Treiber-Source-Datei hin (also z.B. NL_10.PRS). Der zweite Parameter ist optional und legt den Dateinamen des zu erstellenden Druckertreibers fest. Wenn Sie diesen Parameter weglassen, wird der Standardname 'CED.PRN' benutzt. Jetzt drcken Sie die [RETURN]-Taste, worauf GENPRN.TTP die Source- Datei einliest und in die Treiberdatei umwandelt. Falls sich ein Fehler in der Source-Datei befindet, wird die Zeilennummer nebst einer Fehlerdiagnose ausgegeben. Luft alles glatt, knnen Sie nun den Druckertreiber in das Verzeichnis kopieren, das unter 'Path' im Path & Files-Dialog festgelegt ist. CED V1.03 Seite 45 8. Der Hilfsdialog ============================================================== Der Hilfsdialog (Menpunkt 'Helpscreen...' oder [ALT/H]) erffnet Ihnen die Mglichkeit auf Tasten-/Maus-Druck einen beliebigen (Hilfs-)Text in einer Dialogbox ausgeben zu lassen. Den Hilfstext knnen Sie nach Ihren Bedrfnissen selbst erstellen. Anwendungsmglichkeiten sind z.B. eine ASCII- Tabelle, eine C-Operator-Tabelle, eine Hilfestellung zu den CED-Kommandos etc. Den Hilfstext erstellen Sie mit CED und speichern ihn unter dem Defaultnamen 'CEDHELP.TXT' oder einem fr Sie sinnvollen Namen ab. Beachten Sie bitte, da Sie den Hilfstext in das Verzeichnis stellen mssen, der als Zugriffspfad ('Path' im Path&Files-Dialog) festgelegt ist. Den Dateinamen tragen Sie nun noch im Path&Files-Dialog unter 'Help file' ein und sichern die Voreinstellungen mit 'Save config...'. Der Hilfstext darf von beliebiger Gre sein, da er nicht in den Speicher geladen wird. Der Text wird seitenweise in einer Dialogbox ausgegeben. Eine Seite umfat 20 Zeilen mit je 77 Zeichen. Alle Zeilen, die lnger als 77 Zeichen sind, werden automatisch umgebrochen. Nach der Ausgabe einer Seite wird auf einen Tastendruck gewartet. Durch Drcken der Leertaste (Spacebar = Weltraumkneipe) kann weitergeblttert werden. Alle anderen Tasten oder ein Klick mit der Maus brechen die Hilfsfunktion ab. Nach der letzten Seite wird automatisch wieder die erste Seite ausgegeben (falls [Space] gedrckt wurde). Bei CED befindet sich ein zweiseitiger Demo-Hilfstext namens CEDHELP.TXT, der eine ASCII-Tabelle und eine C-Operator- Tabelle enthlt. CED V1.03 Seite 46 9. Der Textkopf ============================================================== CED untersttzt das Laden eines Textkopfes auf Tastendruck. Durch Drcken von [ALT/LEFT SHIFT/H] wird der Textkopf von Disk eingelesen und an den Anfang des aktiven Textpuffers kopiert. Der Textkopf ist eine Textdatei, deren Namen Sie im Path&Files-Dialog unter 'Header file:' festlegen knnen. Diese Datei knnen Sie fr jede Programmiersprache, die Sie benutzen, nach Ihrem Geschmack erstellen. Der Textkopf sollte ber jeder neu erstellten Source-Datei stehen und mit diversen Informationen ber deren Inhalt jeweils ausgefllt werden. Zwei wichtige Informationen sind zweifellos das Datum des Beginns der Erstellung der Datei, und natrlich das Datum der aktuellen Version der Datei. Diese werden von CED beim Laden des Textkopfes bzw. bei jedem Abspeichern der Datei automatisch eingetragen. Damit dies mglich ist, mu der Textkopf zwei spezielle Eintrge, gefolgt von mindestens 30 Leerzeichen, enthalten. Diese Eintrge knnen Sie im 'Misc...'-Dialog in der Box 'HEADERFILE TITLE' festlegen. Defaultmig ist der erste Titel mit Started: und der zweite Titel mit Version: initialisiert. Hinter 'Started:' wird das aktuelle Datum/Zeit beim Laden des Textkopfes automatisch eingetragen. Hinter 'Version:' wird bei jedem Abspeichern der Datei das aktuelle Datum und die Zeit eingetragen. Beide Titel mssen exakt so, wie in 'Misc...' fest- gelegt, in den Textkopf geschrieben werden. Die Spalten- bzw. Zeilenposition ist jedoch frei whlbar. Selbstredend mu der Textkopf als gltiger Kommentar vom Compiler der verwendeten Programmiersprache akzeptiert werden knnen. Den Textkopf kopieren Sie in das Verzeichnis, das unter 'Path:' im Path&Files-Dialog festgelegt ist. Hinweis: Bei CED befindet sich ein Beispiel-Textkopf fr die Programmiersprache C (C_HEADER.TXT). CED V1.03 Seite 47 10. Die CED Konfiguration ============================================================== Zur Konfiguration gehren folgende Flags und Einstellungen, die mit 'Save config...' abgespeichert werden knnen: Insert/Overwrite -| Print line numbers | Auto indent | Auto line wrap | Auto load | Flags im 'Modus'-Popupmen Auto remove endblanks | Key klick | Cursor free moveable | Use CNTRL in dialogs -| Path -| Clipboard | Header file | 'Path & Files'-Dialog Macro file | Help file -| Accessories Filenames -| 'Accessories'-Dialog Accessories Menunames -| Startup macro -| Word separator | | Shift distance | Tab distance | Wrap column | 'Misc' Dialog | Fileheader title #1 | Fileheader title #2 | | CED max worksapce | System min memory -| Filenamen-Suchmuster -| File-Extensionen | FSB Parameter Pfadbelegung -| Windowgre -| Windowposition | Windowparameter fr jedes Fontgre -| Window getrennt einstellbar Find/Replace-Strings -| Find & Replace Strings C-Find-String -| CED V1.03 Seite 48 10.1 Flags im Modus-Popupmen -------------------------------------------------------------- Insert [CNTRL/INSERT] ------ Der Einfgemodus wird aktiviert. Im Einfgemodus wird ein eingegebenes Zeichen an der aktuellen Cursorposition ein- gefgt und dann der Cursor eine Spalte nach rechts bewegt. Der Schreibmodus wird rechts auen in der Menleiste an- gezeigt. Overwrite [CNTRL/CLR HOME] --------- Der berschreibemodus wird aktiviert. Im berschreibemodus wird das Zeichen, auf dem der Cursor steht, von dem ein- gegebenen Zeichen berbgelt. Toggle font size [ALT/Z] -------------------------- Im Monochrommodus knnen Sie zwischen zwei Zeichengren whlen, dem normalen 8*16 Font und dem 8*8 Font, der die Darstellung doppeltsovieler Zeilen in einem Window er- mglicht. Die Zeichengre ist ein Window-Parameter, d.h. Sie knnen fr jeden Textpuffer die Zeichengre getrennt einstellen und mit 'Save config...' abspeichern. Auto load --------- Ist dieses Flag gesetzt, werden beim Verlassen bzw. Starten des Editors folgende Aktionen ausgefhrt: Beim Verlassen des Editors ber 'Save & Quit' bzw. [ALT/SHIFT/ESC] wird die Datei 'CED.INF' angelegt. In dieser Datei werden der Name des Textes, die aktuelle Cursorposition und die aktuelle CED-Konfiguration abgelegt. Beim erneuten Starten von CED, wird die Inf-Datei eingelesen und ausgewertet, so da der zuletzt gesicherte Text auto- matisch geladen und der Cursor an die zuletzt aktuelle Position gesetzt werden kann. Auerdem steht die beim letzen Sichern aktuelle Konfiguration zur Verfgung (also auch die Such/Ersatzstrings etc.). CED wird die Hilfsdatei in das Verzeichnis stellen, das unter 'Path' im Path & Files-Dialog festgelegt ist. CED V1.03 Seite 49 Auto indent ----------- Ist dieses Flag gesetzt, so wird nach Drcken der [RETURN]- Taste der Anfang der neuen Zeile unter das erste 'Nicht-Leer- zeichen' der vorhergehenden Zeile eingerckt. Ansonsten springt der Cursor in die erste Spalte der neuen Zeile. Auto remove endblanks --------------------- Aktiviert das automatische Entfernen berflssiger Leer- zeichen vor dem Abspeichern eines Textes. (s. Menpunkt 'Remove endblanks') Auto line wrap -------------- Schaltet den automatichen Zeilenumbruch ein/aus. Die Umbruch-Spalte knnen Sie im Eingabefeld 'Wrap column' im 'Misc...'-Dialog festlegen. Key klick --------- Schaltet den Tastaturklick fr die Laufzeit von CED an bzw. aus. Bei ausgeschaltetem Tastaturklick ist das Zeilen- scrolling ber die Cursortasten ca. 25% schneller als mit Geruschuntermalung (ein gemeiner Trick !). Cursor free moveable -------------------- Ist dieses Flag gesetzt, kann der Cursor an jede Position innerhalb eines Windows gesetzt werden, also auch hinter das Ende einer Zeile. Dies ist z.B. beim Erstellen einer Tabelle sehr ntzlich. Use CNTRL in dialogs -------------------- Ist dieses Flag gesetzt, lassen sich Buttons, die mehr als ein Zeichen enthalten, durch Drcken der Taste des unter- strichenen Zeichens zusammen mit der [CNTRL]-Taste erreichen (defaultmig mit der [ALT]-Taste). Buttons mit nur einem Zeichen dagegen knnen ber die [ALT]-Taste aktiviert werden (defaultmig mit der [CNTRL]-Taste). Print line numbers ------------------ Aktiviert den Zeilennummerndruck beim Ausdrucken eines Textes ber 'Print text' bzw. 'Print block'. CED V1.03 Seite 50 10.2 Path & Files Dialog -------------------------------------------------------------- In diesem Dialog sind folgende Eingabefelder zu finden: Path: ----- Hier knnen Sie den Zugriffspfad fr das Laden/Speichern der CED-Hilfsdateien bei Programmstart bzw. zur Laufzeit fest- legen (s. 'CED installieren'). Clipboard: ---------- Dies ist der Pfad, unter dem bei Programmstart das GEM- Clipboard angelegt wird, falls dieses noch nicht von einer anderen Applikation bereits erledigt wurde. Das GEM-Clip- board wird zum Zwischenspeichern eines zusammenhngenden Blocks benutzt. Falls das Clipboard nicht angelegt werden kann, wird der CED-Zugriffspfad fr die Clipboardfunktionen benutzt. Macro file: ----------- Hier knnen Sie den Namen der Makrodatei festlegen, die bei Programmstart automatisch geladen werden soll. Help file: ---------- Hier knnen Sie den Namen der Datei festlegen, die nach Drcken von [ALT/H] im Hilfsdialog ausgegeben wird. Header file: ------------ Dies ist der Name eines Textkopfes, den Sie durch Drcken von [ALT/LEFT SHIFT/H] an den Anfang des aktiven Textpuffers kopieren knnen. CED V1.03 Seite 51 10.3 Accessories-Dialog -------------------------------------------------------------- Dieser Dialog ermglicht die Eingabe der Datei/Mennamen von sechs Accessories, die dann ber die Funktionstasten F1..F6 bei gleichzeitig gedrckter [ALT]-Taste aufgerufen werden knnen. Der Dialog enthlt 12 Eingabefelder in zwei Spalten. Die linke Spalte ist mit dem Titel 'FILENAME' versehen. Hier tragen Sie die Dateinamen der gewnschten Accessories ohne Extension ein. In der rechten Spalte ('MENUNAME') mssen Sie die Mennamen der Accessories eingeben. Hier reicht es aus, wenn Sie nur so viele Zeichen des Mennamens eintragen (mind. 1, max. 8 Zeichen), wie zur eindeutigen Identifikation notwendig sind (i.a. reicht schon der Anfangsbuchstaben). Beispiel: --------- Um das Kontrollfeld ('CONTROL.ACC') ber die Tastenkombination [ALT/F1] aufrufen zu knnen, mssen Sie die Eingabefelder in der ersten Zeile folgendermaen ausfllen: Unter 'FILENAME' tragen Sie den Dateinamen ohne Extension, also 'CONTROL' ein (natrlich ohne die Hochkommata). Das Kontrollfeld klinkt sich in die Menleiste unter dem Namen 'Kontrollfeld' ein. Also tragen Sie unter 'MENUNAME' die ersten acht Zeichen dieses Namens (d.h. 'Kontroll') ein. Bitte beachten Sie hierbei die Gro/Kleinschreibung! CED V1.03 Seite 52 10.4 'Misc...'-Dialog -------------------------------------------------------------- In diesem Dialog sind folgende Eingabefelder zu finden: Startup macro: -------------- Hier knnen Sie die Nummer eines Makros (1-38) eintragen, das bei Programmstart automatisch ausgefhrt werden soll. Die illegale Makronummer 0 sorgt dafr, da die FSB nach Programmstart automatisch geffnet wird. Tab : ------ Der Tabulatorabstand. Shift: ------ Anzahl der Leerzeichen fr die Shift-Operationen. Wrap column: ------------ Die Spalte, nach der eine Zeicheneingabe zu einem auto- matischen Zeilenumbruch fhrt (falls 'Auto wrap' aktiviert ist). Akzeptiert werden Werte von 10 bis 251. Word separator: --------------- Unter 'Word Separator' knnen die Wort-Begrenzungszeichen festgelegt werden, die in folgenden Funktionen benutzt werden: Wort lschen Wort in Wortpuffer kopieren Wort kapitalisieren Wort gro/klein Cursor auf nchstes/vorhergehendes Wort Wort suchen/ersetzen Headerfile title #1 ------------------- Dies ist der Standardtextkopf-Eintrag, hinter dem beim Laden des Textkopfes automatisch das aktuelle Datum eingetragen wird. Headerfile title #2 ------------------- Dies ist der Standardtextkopf-Eintrag, hinter dem beim Speichern einer Datei automatisch das aktuelle Datum eingetragen wird. CED V1.03 Seite 53 CED max: -------- Bei Programmstart allokiert CED einen Speicherblock, der dynamisch auf die Textpuffer aufgeteilt wird. Die maximale Gre dieses Speicherblockes kann hier in Kbyte vorbestimmt werden (mindestens 40 Kbyte). System min: ----------- Hier kann die Mindestgre des beim Betriebssystems ver- bleibenden Speicherplatzes vorbestimmt werden. Auch dieser Eintrag ist nur bei Programmstart relevant. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! nderungen im Path & Files/Accessories/Misc-Dialog werden ! ! nur dann bernommen, wenn der Dialog ber den 'OK'-Button ! ! verlassen wird. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CED V1.03 Seite 54 11. Editier-Funktionen ============================================================== 11.1 Zeilenlnge -------------------------------------------------------------- Eine Zeile kann maximal 252 Zeichen lang werden, was fr die meisten Anwendungen wohl ausreichen drfte. Falls durch eine Operation die maximale Zeilenlnge berschritten wird, wird die Fehlermeldung 'Line too long !' ausgegeben. 11.2 Standard-Funktionen -------------------------------------------------------------- 11.2.1 Cursor positionieren -------------------------------------------------------------- Der Cursor lt sich, Sie werden es schon vermuten, mit den Cursortasten nach oben, unten, links und rechts ber den Bildschirm bewegen. Sie knnen den Cursor auch direkt auf eine bestimmte Position setzen, indem Sie diese mit der linken Maustaste einmal anklicken. Der Cursor lt sich im 'Free cursor'-Modus (Flag im 'Modus...' Popupmen) be- liebig positionieren, ansonsten lt sich der Cursor nur auf eine mit einem Zeichen besetzte Stelle setzen. Halbseitenweise knnen Sie den Cursor mit [SHIFT/UP ARROW] respektive [SHIFT/DOWN ARROW] weiterbewegen. Seitenweises Scrolling erreichen Sie durch einen Linksklick auf die Pfeilfelder des aktiven Windows. [SHIFT/RIGHT ARROW] setzt den Cursor an den Anfang des nchsten Wortes, [SHIFT/LEFT ARROW] setzt den Cursor an den Anfang des vorhergehenden Wortes. Die Wortbegrenzer knnen im 'Misc...'-Dialog unter 'Word separator:' festgelegt werden. Wollen Sie den Cursor an den Anfang der nchsten Zeile setzen, so drcken Sie [CNTRL/RETURN]. [CLR HOME] setzt den Cursor an den Anfang, [SHIFT/CLR HOME] an das Ende der aktuellen Zeile. [TAB] bewegt den Cursor an die nchste Tabulatorposition. Den Tabulatorabstand knnen Sie unter 'Tab:' im 'Misc...'-Dialog frei bestimmen und mit 'Save config...' abspeichern. CED V1.03 Seite 55 11.2.2 Lschfunktionen -------------------------------------------------------------- 11.2.2.1 Zeichen lschen ------------------------- Einzelne Zeichen knnen mit [BACKSPACE] oder [DELETE] gelscht werden. [BACKSPACE] lscht das Zeichen links vom Cursor und zieht die Restzeile eine Spalte nach links. Steht der Cursor in der ersten Spalte, so wird die Zeile an das Ende der vor- hergehenden Zeile angehngt, sofern die beiden Zeilen zusammen nicht lnger als 252 Zeichen sind. [DELETE] lscht das Zeichen unter dem Cursor und zieht die Restzeile eine Spalte nach links. 11.2.2.2 Wort lschen ---------------------- Ein ganzes Wort kann durch [ALT/DELETE] gelscht werden. Der Cursor kann sich dabei an jeder beliebigen Position innerhalb eines Wortes befinden. Es werden nach links und rechts soviele Zeichen gelscht, bis eines der Begrenzungs- zeichen, die im 'Misc...'-Dialog unter 'Word separator' frei festgelegt werden knnen, auftritt oder das Zeilenende bzw. der Zeilenanfang erreicht ist. 11.2.2.3 Zeile lschen ----------------------- [SHIFT/DELETE] lscht die Zeile, in der der Cursor steht vollstndig. Die nachfolgenden Zeilen werden eine Zeile nach oben gezogen. Vor dem Lschen wird die Zeile in den sog. Pickbuffer kopiert. Hier bleibt die gerade gelschte Zeile so lange zwischengespeichert, bis eine weitere Zeile gelscht wird. Mit [SHIFT/UNDO] kann der Inhalt des Pickbuffers ber der Zeile, in der der Cursor steht, in den aktiven Textpuffer eingefgt werden. Dies knnen Sie zum transportieren einer Zeile benutzen. Falls Sie mehrere Zeilen hintereinander gelscht haben, knnen Sie alle Zeilen mit [UNDO] wieder zurckholen, solange Sie nach dem Lschen noch keine andere Funktion ausgefhrt haben. CED V1.03 Seite 56 [CNTRL/DELETE] lscht eine Zeile ab der Cursorposition bis zum Zeilenende. [CNTRL/BACKSPACE] lscht alle Zeichen links des Cursors bis zum Zeilenanfang. Der Cursor wird an den Zeilananfang gesetzt und die Restzeile wird nachgezogen. [ALT/BACKSPACE] lscht alle Zeichen links des Cursors bis zum Zeilenanfang, wobei hier allerdings die Cursorposition unverndert bleibt. 11.2.3 Einfgefunktionen -------------------------------------------------------------- 11.2.3.1 Leerzeichen einfgen ------------------------------ [INSERT] fgt in beiden Schreibmodi (Insert/Overwrite) ein Leerzeichen an der aktuellen Cursorposition ein. Die Cursor- position bleibt unverndert. 11.2.3.2 Leerzeile einfgen ---------------------------- [SHIFT/INSERT] fgt eine Leerzeile oberhalb der Zeile ein, in der sich der Cursor befindet. Der Cursor wird in die neue Zeile in die Spalte gesetzt, bei der in der vorher- gehenden Zeile das erste Zeichen steht. [RETURN] bewirkt einen Zeilenumbruch, falls sich der Cursor nicht am Ende einer Zeile befindet. Ansonsten wird eine Leerzeile unterhalb der aktuellen Zeile eingefgt. Ist die Option 'Auto indent' aktiv, so wird der Cursor in der neuen Zeile in die Spalte gesetzt, bei der in der vor- hergehenden Zeile das erste Zeichen steht. Befindet sich der Cursor vor dem Drcken von [RETURN] in der letzten im Window sichtbaren Zeile, so wird der Text automatisch in die Windowmitte gerckt. CED V1.03 Seite 57 11.3 Spezielle Editierfunktionen -------------------------------------------------------------- 11.3.1 Gro-/Kleinbuchstaben Umwandlung -------------------------------------------------------------- [ALT/U] wandelt den Buchstaben auf dem der Cursor steht in einen Gro- bzw. Kleinbuchstaben, je nach Zustand des Buch- stabens. [CNTRL/U] wandelt alle Buchstaben des Wortes auf dem der Cursor steht in Klein- bzw. Grobuchstaben, je nach Zustand des ersten Zeichens. Steht der Cursor zwischen zwei Worten auf einem Worttrennzeichen, so wird das linke Wort bearbeitet. [ALT/K] wandelt den ersten Buchstaben des Wortes auf dem der Cursor steht in einen Grobuchstaben und den Rest des Wortes in Kleinbuchstaben um (Kapitalisieren). Auch hier darf der Cursor rechts neben dem zu bearbeitenden Wort auf einem Worttrennzeichen stehen. 11.3.2 Zeichen vertauschen -------------------------------------------------------------- [CNTRL/X] vertauscht das Zeichen auf dem der Cursor steht mit dem Zeichen links neben dem Cursor. 11.3.3 Zahlen inkrementieren/dekrementieren -------------------------------------------------------------- Setzen Sie den Cursor auf eine pos. Dezimalzahl im aktiven Textpuffer und drcken Sie [CNTRL/+]. Sie werden sehen, da die Zahl um 1 inkrementiert wird. Analog knnen Sie mit [CNTRL/-] eine pos. Dezimalzahl um 1 dekrementieren. Beachten Sie bitte, da sich der Cursor dabei auf einer beliebigen Ziffer innerhalb der Zahl befinden darf. Die Ink/Dek-Funktion lt sich prima in einem Makro ein- setzen. Stellen Sie sich vor, Sie haben ein etwas greres Array mit Werten vorbesetzt, und Sie bemerken am Schlu, da Sie die zweite Komponente vergessen haben. Nicht verzagen, schreiben Sie ein kleines Makro, das alle Indizes ab der dritten Komponente inkrementiert, und fgen Sie die zweite Komponente ein. CED V1.03 Seite 58 11.3.4 Klammerebenen anspringen -------------------------------------------------------------- Diese Funktion ermglicht das Anspringen der zu einer Klammer korrespondierenden ffnenden bzw. schlieenden Klammer. C-Kommentare, String-Konstanten und Char-Konstanten, die eine Klammer enthalten knnten, werden dabei berlesen, um ein korrektes Ergebnis zu erzielen. Untersttzt werden runde, eckige und geschweifte Klammern. Setzen Sie den Cursor auf eine ffnende oder schlieende Klammer. Dann drcken Sie entweder [CNTRL/}] oder [CNTRL/{] um die korrespondierende schlieende bzw. ffnende Klammer anzuspringen. Steht der Cursor beim Drcken dieser Tasten nicht auf einer Klammer, so wird die erste bzw. letzte geschweifte Klammer der Zeile, in der sich der Cursor befindet, als die Klammer angesehen, zu der die korrespondierende Klammer gesucht werden soll. 11.3.5 Datei laden/hinzuladen -------------------------------------------------------------- Eine Datei kann nicht nur ber die FSB in einen Textpuffer geladen werden. Eine weitere Mglichkeit, die sich vorallem in Makros vorteilhaft einsetzen lt, ist folgendermaen realisiert: Der vollstndige Zugriffspfad einer zu ladenden Datei wird in einen Textpuffer geschrieben. Anschlieend mu der Cursor auf das erste Zeichen des Zugriffspfades gesetzt und [ALT/LEFT SHIFT/O] gedrckt werden. Die Textstelle auf der der Cursor steht (hier also der Zugriffspfad) wird so lange als Dateiname interpretiert, bis ein Zeichen auftritt, das nicht in einem TOS-Dateinamen vorkommen darf bzw. das Zeilenende erreicht ist. Die Datei wird nun in den nachfolgenden Textpuffer geladen. Analog kann mit [ALT/LEFT SHIFT/A] eine Datei in den nach- Textpuffer hinzugeladen werden. Auch hier ist die Anwendung innerhalb eines Makros sinn- voll, falls z.B. mehrere Dateien sequentiell bearbeitet werden sollen. Vielleicht werden Sie sich jetzt fragen, wie die Dateinamen samt Pfad in einen Textpuffer gelangen sollen. CED hlt dafr eine spezielle Funktion bereit ! (s. Menpunkt 'Read directory...') CED V1.03 Seite 59 11.4 Eingabe von Sonderzeichen -------------------------------------------------------------- In CED knnen die Zeichen 1-255 des Atari-Zeichensatzes ver- wendet werden. Nicht direkt eingebbare Zeichen knnen Sie erreichen, indem Sie bei gedrckter [ALT]-Taste den dezimalen ASCII-Code des Zeichens auf dem numerischen Ziffernblock ein- geben. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! Dies gilt sowohl fr Eingaben in einem Textpuffer als ! ! auch fr Eingaben in GEM-Dialogen. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Beispiel: Zur Eingabe des Zeichens mit dem ASCII-Wert 23 gehen Sie wie folgt vor: - [ALT] drcken - bei weiterhin gedrckter [ALT]-Taste geben Sie auf dem numerischen Tastenblock eine 2 und eine 3 ein. - jetzt lassen Sie die [ALT]-Taste los, worauf das gewnschte Zeichen auf dem Bildschirm an der aktuellen Cursorposition erscheint. Bei Zeichen mit einem dreistelligen ASCII-Code wird die Eingabe nach der dritten Ziffer automatisch abgebrochen. 11.5 Restaurieren gelschter Zeichen oder Zeilen -------------------------------------------------------------- Gelschte Zeichen oder Zeilen lassen sich durch Drcken von [UNDO] wieder zurckholen. Das funktioniert aber nur dann, wenn nach dem Lschen keine andere Taste gedrckt oder Funktion aufgerufen wurde ! Alle nderungen in einer Zeile lassen sich mit [UNDO] rck- gngig machen, solange der Cursor die Zeile noch nicht ver- lassen hat. Die Zeile wird in den Zustand gebracht, den sie vor dem 'Betreten' mit dem Cursor hatte. Zuvor erscheint jedoch eine Dialogbox, in der Sie den Undo- Vorgang besttigen mssen. Ist kein Undo mglich, wird dies durch ein Piepsen kundgetan. CED V1.03 Seite 60 11.6 Die 'Jump to error' Funktion -------------------------------------------------------------- Durch einen doppelten Linksklick auf eine Dezimalzahl in einem Textpuffer gelangen Sie in die entsprechende Zeile des Textes im vorhergehenden Textpuffer. (Ausnahme: Falls Textpuffer 0 aktiv ist, wird die Zeile in Textpuffer 1 angesprungen) Wozu das gut sein soll ? Die meisten Compiler/Assembler erstellen im Falle eines oder mehrerer Fehler im Sourcetext eine Fehlerdatei. Nach Unterbrechung des Compilationsvorgangs startet eine Shell automatisch den Editor, wobei sie diesem den Namen der Sourcedatei und der Fehlerdatei bergibt. bergibt man CED im Commandstring zwei Filenamen, so wird nach Laden beider Dateien gleich der zweite Textpuffer angezeigt, in dem sich in diesem Falle die Fehlerdatei befindet. Die Fehlerdatei enthlt nun die eigentlichen Fehlermeldungen und die Nummern der Zeilen, in denen die Fehler aufgetreten sind. Durch ein Doppelklick auf eine Zeilennummer springt CED in die entsprechende Zeile im ersten Textpuffer, der den Sourcetext enthlt. 11.7 Die Zeilenmarken -------------------------------------------------------------- Wenn Sie eine bestimmte Zeile in einem Text wiederholt anspringen mchten, bedienen Sie sich der Zeilenmarken. CED stellt insgesamt 6 Zeilenmarken pro Textpuffer zur Verfgung. Fnf davon knnen Sie ber das Mark-Men oder ber [CNTRL/0..9] bzw. [ALT/0..9] bedienen (s. 'Mark-Men'). Die sechste Marke, die 'Help Zeilenmarke', besitzt einen Sonderstatus. Diese Marke wird durch Drcken von [HELP] gesetzt. Durch Drcken von [SHIFT/HELP] kann sie angesprungen werden. Der Clou an der Sache ist, da beim Anspringen der Marke die Zeile, von der weggesprungen wird, als neue HELP- Marke gespeichert wird. Beispiel: --------- Der Cursor befindet sich in Zeile 20. Sie drcken die [HELP] Taste, um diese Zeile mit der Zeilenmarke zu versehen. Jetzt scrollen Sie in Zeile 100. Durch Drcken von [SHIFT/HELP] springt der Cursor in Zeile 20. Bei erneutem Drcken von [SHIFT/HELP] springt der Cursor wieder in Zeile 100 usw... brigens, Zeilenmarken gehen durch Textmodifikationen nicht verloren, es sei denn, Sie lschen die markierten Zeilen. CED V1.03 Seite 61 12. Die Menleiste ============================================================== Die meisten der Meneintrge knnen auch ber die Tastatur aufgerufen werden. Als kleine Gedchtnissttze steht hinter jedem Meneintrag die entsprechende Tastenkombination. ^ steht fr die [CNTRL]-Taste, der Diamant fr die [ALT]- Taste und der angeknapperte Cursor fr [ALT/LEFT SHIFT]. 12.1 Das Men 'CED' -------------------------------------------------------------- Info... [ALT/I] (Infodialog aufrufen) -------------------------------------------------------------- Im Infodialog werden folgende Informationen ber die Text- puffer ausgegeben: Textnummer Textname Textgre Anzahl der Zeilen Zeitpunkt des Ladens Zeitpunkt der letzten Modifikation Zeitpunkt der letzten Sicherung Ein Punkt vor einem Textnamen weist darauf hin, da der Text modifiziert, aber noch nicht abgespeichert wurde. Die Infos des aktiven Textpuffers werden invertiert dargestellt. Acc mode (Accessory Modus aktivieren) -------------------------------------------------------------- Dieser Menpunkt ist nur vorhanden, falls sich Accessories in die Menleiste eingetragen haben. Ist dies der Fall so knnen Sie ber diesen Menpunkt die Accessory-Eintrge aktivieren. (s. Kapitel 'Accessory Modus') 12.2 Das Men 'File' -------------------------------------------------------------- Open... [CNTRL/O] (Text laden) -------------------------------------------------------------- Es erscheint die FSB, in der Sie den Namen einer neu zu erstellenden Datei eingegeben knnen, oder bis zu zehn schon bestehende Dateien nacheinander in die Textpuffer laden knnen (s. Kapitel 'Fileselektorbox'). Geladen wird immer in den (bzw. ab dem) aktiven Textpuffer. Befindet sich schon eine Datei in dem Textpuffer, so wird diese ohne Vorwarnung berschrieben, falls keine ungesicherten CED V1.03 Seite 62 nderungen vorgenommen wurden. Ansonsten erscheint eine Dialogbox, in der Sie die Mglichkeit erhalten, die modi- fizierte Datei doch noch zu sichern. Add... [CNTRL/A] (Text hinzuladen) -------------------------------------------------------------- Dieses Kommando ermglicht das Einfgen einer oder mehrerer Dateien in den aktiven Textpuffer an der momentanen Cursor- position. Die FSB ermglicht eine Mehrfachselektion von bis zu 40 Dateien. Save [ALT/SHIFT/S] (Text abspeichern) -------------------------------------------------------------- Der aktive Textpuffer wird unter dem im Window angezeigten Pfad abgespeichert. Save as... [ALT/A] (Text speichern unter) -------------------------------------------------------------- Es erscheint die FSB, mit der Sie den Pfad respektive den neuen Namen, unter dem der aktive Textpuffer gespeichert werden soll, festlegen knnen. Save with backup [ALT/LEFT SHIFT/B] -------------------------------------------------------------- Fr alle vorsichtigen Leute! Bevor der Text gespeichert wird, wird die Extension einer schon existierenden Datei gleichen Namens auf Disk in 'Vxx' abgendert. 'xx' luft von 01 bis 99 und wird automatisch mit jeder neuen Version inkrementiert. Sie knnen also den Speicherplatz Ihrer Harddisk mit bis zu 100 Versionen einer Datei bestens ausnutzen... Save & quit (Text speichern und CED verlassen) -------------------------------------------------------------- Zuerst wird der aktive Text gespeichert und dann CED ver- lassen. Dabei wird zustzlich die Hilfsdatei 'CED.INF' an- gelegt, die neben der aktuellen Konfiguration den Namen und die aktuelle Cursorposition des gespeicherten Textes enthlt. Diese Datei wird, sofern die 'Auto load' Option aktiviert ist, bei Programmstart eingelesen und die darin enthaltene Information ausgewertet, d.h. der zuletzt gesicherte Text wird geladen und der Cursor an die zuletzt aktuelle Position gesetzt. CED V1.03 Seite 63 Delete file... (Dateien von Disk lschen) -------------------------------------------------------------- Bis zu 40 Dateien knnen mit der FSB selektiert und nach einer Sicherheitsabfrage von Disk gelscht werden. Quit [ALT/SHIFT/Q] (CED verlassen) -------------------------------------------------------------- Sie verlassen fast endgltig den Editor. Denn zuvor werden Sie unter Umstnden daran erinnert, da Sie einige Texte verndert, aber nicht abgespeichert haben. Dieses knnen Sie jetzt noch nachholen. Es werden dabei nacheinander die Windows der vernderten Texte aktiviert. 12.3 Das Men 'Text' -------------------------------------------------------------- Activate... (Textpuffer aktivieren) -------------------------------------------------------------- Nach Anklicken dieses Menpunktes erscheint das Popup-Men, ber das ein Textpuffer angewhlt werden kann. (s. Abschnitt 'Textpuffer aktivieren') Compress [ALT/Y] (Blanks durch Tabs ersetzen) -------------------------------------------------------------- Der aktive Text wird komprimiert, d.h. Leerzeichengruppen werden durch Tabulatorzeichen ersetzt. Der Tabulatorabstand kann im 'Misc...'-Dialog festgelegt werden. Expand [ALT/X] (Tabs durch Blanks ersetzen) -------------------------------------------------------------- Im aktiven Textpuffer werden Tabulatorzeichen durch die ent- sprechende Anzahl von Leerzeichen ersetzt. Der Tabulator- abstand kann im 'Misc...'-Dialog festgelegt werden. Remove endblanks [ALT/R] (berfl. Leerzeichen entfernen) -------------------------------------------------------------- Das Kunstwort 'endblanks' steht fr 'Leerzeichen am Ende einer Zeile'. Diese Leerzeichen sind i.a. redundant, verschwenden also Speicherplatz. Durch Anklicken dieses Menpunktes knnen Sie alle Endblanks aus dem aktiven Text- puffer entfernen (s. auch 'Die CED Konfiguration'). CED V1.03 Seite 64 Stack windows (Windows vertikal stapeln) -------------------------------------------------------------- Stapelt die oberen vier geffneten Windows, d.h. der vertikal zur Verfgung stehende Platz auf dem Desktop wird unter den Windows aufgeteilt. Overlap windows (Windows bereinander legen) -------------------------------------------------------------- Legt die geffneten Windows bereinander, so da sie sich bis auf die Titelzeile berschneiden. Cycle windows [ALT/C] (auf nchstes offenes Window schalten) -------------------------------------------------------------- Dieser Befehl ermglicht (im Gegensatz zu den im Abschnitt 'Textpuffer aktivieren' beschriebenen Kommandos) das zyklische Umschalten zwischen geffneten Windows. Drop text... [ALT/D] (Textpuffer lschen) -------------------------------------------------------------- Texte wollen nicht nur geschrieben, sondern auch gelscht werden. Dazu steht Ihnen diese Funktion zur Verfgung. Texte die geladen, aber noch nicht verndert bzw. nach der letzten nderung abgespeichert wurden, werden ohne Vor- warnung gelscht. Ansonsten erscheint der bliche Nachfrage- dialog. Clear all... (alle Textpuffer lschen) -------------------------------------------------------------- Die Radikalkur. Alle Texte werden gelscht und die zuge- hrigen Windows geschlossen (Nachfrage wie oben). Abschlieend wird der Textspeicher reorganisiert. CED V1.03 Seite 65 12.4 Das Men 'Block' -------------------------------------------------------------- Mark start [CNTRL/S] (Blockstart festlegen) -------------------------------------------------------------- Markiert den Anfang eines zusammenhngenden Blockes. Die erste Blockzeile ist die Zeile, in der der Cursor steht. Die Cursorspalte spielt dabei keine Rolle. Eine eventuell schon vorhandene Blockmarkierung wird vorher gelscht. Mark end [CNTRL/E] (Blockende festlegen) -------------------------------------------------------------- Markiert das neue Ende eines zusammenhngenden Blockes. Die letzte Blockzeile ist die Zeile, in der der Cursor steht. Die Cursorspalte spielt dabei keine Rolle. Invert [CNTRL/I] (Blockmarkierung invertieren) -------------------------------------------------------------- Dieser Befehl bildet das Komplement zur akzuellen Block- markierung. D.h. alle bisher nicht markierten Zeilen werden markiert und die bisher markierten Zeilen werden wieder normal dargestellt. Beachten Sie, da bei dieser Funktion ein zusammenhngender Block in einen fragmentierten Block umgewandelt wird. Unmark [CNTRL/Q] (Blockmarkierung entfernen) -------------------------------------------------------------- Eine Blockmarkierung wird gelscht. Dies gilt sowohl fr den zusammenhngenden als auch fr den fragmentierten Block. Copy [CNTRL/C] (Block kopieren) -------------------------------------------------------------- Ein zusammenhngender oder fragmentierter Block wird ab der momentanen Cursorposition in den aktiven Textpuffer eingefgt. Move [CNTRL/M] (Block verschieben) -------------------------------------------------------------- Ein zusammenhngender Block wird innerhalb des aktiven Text- puffers verschoben. Steht der Cursor oberhalb der ersten Blockzeile, so wird der Block ber die aktuelle Zeile verschoben. Steht der Cursor unterhalb der letzten Block- zeile, so wird der Block unter die aktuelle Zeile verschoben. CED V1.03 Seite 66 Delete [CNTRL/D] (Block lschen) -------------------------------------------------------------- Ein zusammenhngender oder fragmentierter Block wird nach einer Sicherheitsabfrage aus dem aktiven Textpuffer gelscht. Shift left [CNTRL/LEFT ARROW] (Block horiz. verschieben) -------------------------------------------------------------- Ein zusammenhngender Block wird horizontal nach links verschoben. Die linke Grenze wird durch die aktuelle Cursorspalte bestimmt. Verschoben wird um die Anzahl von Leerzeichen, die im 'Misc...'-Dialog unter 'Shift:' festgelegt werden kann. Shift right [CNTRL/RIGHT ARROW] -------------------------------------------------------------- Ein zusammenhngender Block wird horizontal nach rechts verschoben. Die Spalte, ab der der Block verschoben wird, wird durch die aktuelle Cursorspalte bestimmt. Verschoben wird um die Anzahl von Leerzeichen, die im 'Misc...'- Dialog unter 'Shift:' festgelegt werden kann. Clipbrd copy [CNTRL/K] (Blk auf CLipboard zwischenspeichern) -------------------------------------------------------------- Diese Funktion speichert einen zusammenhngenden Block auf dem GEM-Clipboard. Der Block wird unter dem Standard-Namen fr ASCII-Dateien ('SCRAP.TXT') in das aktuelle Clipboard- Verzeichnis geschrieben. Falls bei Programmstart noch kein Clipboard gesetzt sein sollte, wird dieses unter dem Pfad angelegt, das unter 'Clipboard' im Path & Files Dialog bestimmt werden kann (s. 'Die CED Konfiguration'). Diese Funktion kann also zum standardisierten Datenaustausch zwischen CED und anderen Applikationen, die das GEM-Clipboard untersttzen, verwendet werden. Eine nherliegende Anwendung ist aber die Benutzung des Clip- boards als Kopierpuffer, wobei eben ein Massenspeicher die Rolle des RAM's bernimmt. Daher ist diese Funktion leider nur mit Einschrnkungen fr Diskjockeys geeignet. Nach dem Speichern eines Blockes wird im Statusfeld des aktiven Windows ein Clipboard-Piktogramm dargestellt. Durch einen Klick auf dieses Piktogramm knnen Sie sich den aktuellen Block anschauen. Ein Doppelklick lscht nach einer Sicherheitsabfrage den Block vom Clipboard. Solange Sie den Block nicht explizit lschen (oder das Clipboard von einer anderen Applikation gelscht wird), wird er in zuknftigen Editorsitzungen verfgbar sein. CED V1.03 Seite 67 Clipbrd paste [CNTRL/P] (Clipboard einfgen) -------------------------------------------------------------- Ein durch 'Clipbrd copy' zwischengespeicherter Block (bzw. ein von einer anderen Applikation abgelegter ASCII-Text) wird vom GEM-Clipboard eingelesen und an der aktuellen Zeilenposition in den aktiven Textpuffer eingefgt. Write... [CNTRL/W] (Block auf Disk speichern) -------------------------------------------------------------- Es erscheint die FSB, in der Sie den Pfad und den Namen fest- legen knnen, unter dem ein zusammenhngender Block gesichert werden soll. CED V1.03 Seite 68 12.5 Das Men 'Find' -------------------------------------------------------------- Find... [CNTRL/F] ('Find'-Dialog aufrufen) -------------------------------------------------------------- Ruft den Find-Dialog auf. Dieser Dialog ermglicht Ihnen eine komfortable Mglichkeit, eine Zeichenkette innerhalb eines festlegbaren Bereichs zu suchen. Replace... [CNTRL/R] ('Replace'-Dialog aufrufen) -------------------------------------------------------------- Ruft den Dialog zur Steuerung der Replace-Operation auf. In diesem Dialog knnen Sie maximal 10 Suchstrings und 10 Ersatzstrings verwalten, wobei Sie jeden Suchstring mit jedem Ersatzstring kombinieren knnen. Find next [CNTRL/N] bzw. [ALT/N] -------------------------------------------------------------- Sucht die nchste passende Textstelle in der im Find-Dialog eingestellten Suchrichtung. Beachten Sie bitte, da Sie mit [CNTRL/N] und [ALT/N] unabhngig von der eingestellten Such- richtung die nchste passende Textstelle abwrts bzw. auf- wrts suchen knnen. Replace next... [CNTRL/V] -------------------------------------------------------------- Startet ab der aktuellen Cursorposition das Ersetzen mit Nachfrage. Find C-function... [CNTRL/J] (C-Funktionskopf anspringen) -------------------------------------------------------------- Ruft den Dialog zum Suchen eines C-Funktionskopfes auf. Find next func [ALT/J] -------------------------------------------------------------- Sucht den nchsten passenden C-Funktionskopf ab der aktuellen Cursorposition. CED V1.03 Seite 69 Check braces [CNTRL/~] (Geschweifte Klammern prfen) -------------------------------------------------------------- Diese Funktion prft in einem C-Quelltext, ob zu jeder ffnenden geschweiften Klammer eine korrespondierende schlieende Klammer vorhanden ist. Falls nicht, so wird die Klammer angesprungen, bei der die Unregelmigkeit entdeckt wurde. Bei einer fehlenden schlieenden Klammer ist dann der genaue Ort des Fehlers 'per pedes' unterhalb, bei einer fehlenden ffnenden Klammer oberhalb der ange- sprungenen Textstelle zu suchen. Kann kein Fehler in der Klammerung festgestellt werden, so wird in der Statuszeile die Meldung >> No errors found << ausgegeben. Selbstverstndlich werden C-Kommentare, Zeichen- und Stringkonstanten berlesen. Top of text [CNTRL/T] (Cursor an den Anfang des Textes) -------------------------------------------------------------- Positioniert den Cursor an den Anfang der ersten Zeile des aktiven Textes. Bottom of text [CNTRL/B] -------------------------------------------------------------- Positioniert den Cursor an den Anfang der letzten Zeile des aktiven Textes. Top of block [ALT/T] -------------------------------------------------------------- Positioniert den Cursor an den Anfang der ersten Zeile eines zusammenhngenden Blockes. Bottom of block [ALT/B] -------------------------------------------------------------- Positioniert den Cursor an den Anfang der letzten Zeile eines zusammenhngenden Blockes. Goto line... [CNTRL/G] (Zeile anspringen) -------------------------------------------------------------- Es erscheint das grte aller CED-Dialogformulare. Aber keine Angst vor der berwltigenden Funktionalitt - geben Sie einfach die Nummer der Zeile ein, in die Sie den Cursor positionieren mchten und drcken Sie [RETURN]. Der Cursor wird in die erste Spalte der betreffenden Zeile gesetzt. CED V1.03 Seite 70 12.6 Das Men 'Mark' -------------------------------------------------------------- Hier finden Sie fnf Sprungmarken, wobei die Marken eine pufferlokale Gltigkeit besitzen. Sie knnen also in jedem Text fnf Zeilen markieren. Die Zeilenmarkierung geht durch Textmodifikationen nicht verloren, es sei denn, Sie lschen die markierten Zeilen. (s. auch Kapitel 'Zeilenmarken') Jump #1 [ALT/1..5] (Markierte Zeile anspringen) . . Jump #5 -------------------------------------------------------------- Hiermit springen Sie eine Marke an. Sie knnen die Marken auch ber die Tastatur anspringen, indem Sie zusammen mit der [ALT]-Taste die gewnschte Markennummer oben auf der Tastatur drcken (nicht auf dem numerischen Tastenblock !) Set #1 [CNTRL/1..5] (Zeile markieren) . . Set #5 -------------------------------------------------------------- Hiermit setzen Sie eine Marke. Sie knnen die Marken auch ber die Tastatur setzen, indem Sie zusammen mit der [CNTRL]-Taste die gewnschte Markennummer auf der Tastatur drcken (nicht auf dem numerischen Tastenblock !) CED V1.03 Seite 71 12.7 Das Men 'Macro' -------------------------------------------------------------- Macro start [ALT/M] (Makroaufzeichnung beginnen) -------------------------------------------------------------- Die Auzeichnung eines Makros wird gestartet. Danach wird der Meneintrag durch 'Macro end' ersetzt, mit dem Sie die Aufzeichnung eines Makros beenden knnen. Macro loop [ALT/L] (Makro innerhalb eines Blockes) -------------------------------------------------------------- Ist dieser Menpunkt aktiv, wird ein Makro wiederholt innerhalb eines zusammenhngenden Blockes ausgefhrt, bis der Cursor auerhalb des Blockes positioniert wird. Dieser Menpunkt wird nach jedem Makroaufruf deaktiviert um Bedienungsfehler zu vermeiden. Load macros... (Makro-Datei laden) -------------------------------------------------------------- Es erscheint die FSB, mit der Sie eine Makrodatei laden knnen. Es lassen sich natrlich nur CED-Makros laden, andere Dateien werden mit einer Fehlermeldung zurck- gewiesen. Save macros... (Makros speichern) -------------------------------------------------------------- Sie knnen neu erzeugte Makros unter einem beliebigen Namen abspeichern, um diese zu einem spteren Zeitpunkt wiederver- wenden zu knnen. Dies erfolgt ber die FSB, in der Sie den Pfad und den Namen der Makrodatei festlegen knnen. Speichern Sie die Makros unter dem Dateinamen ab, der im 'Path'-Dialog festgelegt ist, so werden diese Makros bei Programmstart automatisch geladen. CED V1.03 Seite 72 12.8 Das Men 'Extras' -------------------------------------------------------------- Helpscreen... [ALT/H] (Hilfsdialog aufrufen) -------------------------------------------------------------- Die Textdatei, deren Name unter 'Help file' im Path- Dialog festgelegt werden kann, wird in einem Hilfsdialog seitenweise ausgegeben (s. Kapitel 'Der Hilfsdialog'). Weiterblttern mit der Leertaste, Abbruch mit jeder anderen Taste. Load header [ALT/LEFT SHIFT/H] (Textkopf laden) -------------------------------------------------------------- Nach Anklicken dieses Menpunktes oder Drcken von [ALT/LEFT SHIFT/H] wird ein Textkopf von Disk eingelesen und an den Anfang des aktiven Textpuffers kopiert. Der Textkopf ist eine Textdatei, deren Namen Sie im Path & Files-Dialog unter 'Header file:' festlegen knnen. Read directory... [ALT/D] (Directory einlesen) -------------------------------------------------------------- Dieser Menpunkt ruft die FSB auf, in der Sie den Pfad eines Verzeichnisses einstellen knnen. Nachdem Sie den 'OK'-Button in der FSB angeklickt haben, werden die Namen (mit vollstnd- igem Zugriffspfad) der in dem Ordner enthaltenen Dateien im aktiven Textpuffer eingefgt. ber das Dateinamen-Suchmuster und die Extension-Buttons knnen Sie die Art der Dateien bestimmen, deren Namen eingelesen werden sollen. Load font... (Font laden) -------------------------------------------------------------- Jetzt kommen wir zur Abteilung Zeichenstze. In CED knnen Sie einen eigenen Zeichensatz installieren, der sowohl zur Textdarstellung in den CED-Windows, als auch von GEM benutzt wird. ber den Menpunkt erreichen Sie die FSB, mit der Sie einen neuen Zeichensatz laden knnen. Verwendet werden knnen alle 8*16 Zeichenstze, bei denen die sechzehn Datenbytes jedes Zeichens direkt hintereinander stehen. Sysfont (Systemfont aktivieren) -------------------------------------------------------------- Hiermit knnen Sie den Systemzeichensatz installieren. CED V1.03 Seite 73 Print text (Text auf Drucker ausgeben) -------------------------------------------------------------- Der aktive Textpuffer wird auf dem Drucker ausgegeben. Folgendes sollten Sie dabei beachten: Ist keine Druckeranpassung geladen, so erscheint vor dem Druckbeginn eine Meldung, die Sie auf diesen Mistand hin- weist. Ist der Drucker nicht angeschaltet oder 'off line', wird eine Fehlermeldung ausgegeben. Den Druckvorgang knnen Sie jederzeit durch einen beliebigen Tastendruck unterbrechen. Es erscheint darauf ein kleiner Dialog, in dem Sie den Abbruch des Druckvorgangs besttigen oder zurcknehmen knnen. Der Cursor wird automatisch an den Anfang der Zeile gesetzt, die gerade an den Drucker abgeschickt wird (damit's nicht so langweilig wird...). Print block (Block auf Drucker ausgeben) -------------------------------------------------------------- Ein fragmentierter oder zusammenhngender Block wird auf dem Drucker ausgegeben. Install printer... (Druckeranpassung laden) -------------------------------------------------------------- Es erscheint die FSB, mit der Sie eine Druckeranpassung laden knnen. (s. Kapitel 'Druckeranpassung'). CED V1.03 Seite 74 12.9 Das Men 'Options' -------------------------------------------------------------- Modus... -------------------------------------------------------------- Nach Anklicken dieses Menpunktes erscheint ein Popupmen, ber das Sie die Modus-Flags einstellen knnen (s. Kapitel 'Die CED Konfiguration'). Falls Sie mehrere Einstellungen machen wollen, so knnen Sie durch Drcken von [LEFT SHIFT] whrend des Anklickens eines Meneintrags erreichen, da das Popupmen nicht beendet wird. Wie das Popupmen zum Aktivieren eines Textpuffers, kann auch dieses Popupmen ber die Tastatur bedient werden. Path & Files... Accessories... Misc... -------------------------------------------------------------- Es erscheinen Dialoge, in denen Sie die meisten CED-Parameter festlegen knnen (s. Kapitel 'Die CED Konfiguration'). Load config... -------------------------------------------------------------- Es erscheint die FSB, mit der Sie eine CED-Konfigurations- Datei laden knnen. Save config... -------------------------------------------------------------- ber diesen Menpunkt knnen Sie die CED-Konfiguration (s. Kapitel 'Die CED-Konfiguration') sichern. Zuerst erscheint eine Dialogbox, in der Sie festlegen knnen, ob Sie dabei auch die Windowparameter (Windowgren/-positionen, Fontgren) und die Such/Ersatz-Strings mit abspeichern mchten. Nach Anwahl des 'Save' Buttons erscheint dann die FSB, in der Sie den Pfad/Namen festlegen knnen, unter dem die CED- Konfiguration abgelegt werden soll. CED V1.03 Seite 75 Anhang A bersicht ber die Tastaturbefehle ============================================================== O-Block = One-line-Block F-Block = Fragmentierter Block Z-Block = Zusammenhngender Block W-Block = Wort-Block A.1 Cursor -------------------------------------------------------------- UP ARROW Cursor eine Zeile nach oben DOWN ARROW Cursor eine Zeile nach unten LEFT ARROW Cursor eine Spalte nach links RIGHT ARROW Cursor eine Spalte nach rechts SHIFT/UP ARROW halbe Seite nach oben scrollen SHIFT/DOWN ARROW halbe Seite nach unten scrollen SHIFT/LEFT ARROW Cursor auf vorhergehendes Wort SHIFT/RIGHT ARROW Cursor auf nchstes Wort HOME Cursor an den Anfang der Zeile SHIFT/HOME Cursor an das Ende der Zeile RETURN Zeilenumbruch CNTRL/RETURN Cursor an den Anfang der nchsten Zeile setzen BACKSPACE Zeichen vor Cursor lschen CNTRL/BACKSPACE Alle Zeichen links des Cursors bis Zeilenanfang lschen und Restzeile nachziehen ALT/BACKSPACE Zeile ab Zeilenstart bis Cursor lschen, Cursorposition bleibt unverndert DELETE Zeichen unter Cursor lschen ALT/DELETE Wort lschen SHIFT/DELETE Zeile in Pick-Buffer kopieren und anschlieend lschen CNTRL/DELETE Zeile ab Cursor bis Zeilenende lschen CED V1.03 Seite 76 INSERT Leerzeichen einfgen SHIFT/INSERT Leerzeile einfgen CNTRL/INSERT zwischen Insert-/Overwritemodus umschalten UNDO Zeichen-/Wort-/Zeilenlschen bzw. Zeilenmodifikation rckgngig machen SHIFT/UNDO Inhalt des Pick-Buffers einfgen CNTRL/T Cursor an den Textbeginn CNTRL/B Cursor an das Textende ALT/T Cursor an den Start eines Z-Blockes ALT/B Cursor an das Ende eines Z-Blockes CNTRL/G Zeile anspringen... CED V1.03 Seite 77 A.2 Zeilenmarken -------------------------------------------------------------- HELP Help-Zeilenmarke setzen SHIFT/HELP zur Help-Zeilenmarke springen CNTRL/1 Marke #1 setzen CNTRL/2 Marke #2 setzen . . CNTRL/5 Marke #5 setzen ALT/1 Marke #1 anspringen ALT/2 Marke #2 anspringen . . ALT/5 Marke #5 anspringen CED V1.03 Seite 78 A.3 Block -------------------------------------------------------------- ESCAPE Zeile in O-Blockpuffer kopieren SHIFT/ESCAPE O-Blockpuffer einfgen CNTRL/DOWN ARROW Zeile zu F-Block hinzufuegen CNTRL/UP ARROW Zeile aus F-Block entfernen CNTRL/S Start eines Z-Blockes definieren CNTRL/E Ende des Z-Blockes definieren CNTRL/I Blockmarkierung invertieren (Z/F) CNTRL/Q Blockmarkierung lschen (Z/F) CNTRL/C Block kopieren (Z/F) CNTRL/M Z-Block verschieben CNTRL/D Block lschen (Z/F) CNTRL/LEFT ARROW Z-Block nach links shiften CNTRL/RIGHT ARROW Z-Block nach rechts shiften CNTRL/W Z-Block abspeichern... CNTRL/K Z-Block auf Clipboard speichern CNTRL/P Z-Block bzw. ASCII-Text von Clip- board laden und einfgen ALT/S W-Block-Start markieren ALT/E W-Block-Ende markieren und in W-Blockpuffer bertragen ALT/W Wort in W-Blockpuffer bertragen ALT/P W-Blockpuffer einfgen CED V1.03 Seite 79 A.4 Makros -------------------------------------------------------------- ALT/M Makro Start/Ende ALT/L Makroloop F1..F20 Makros aufrufen Tasten des Num-Blocks " CED V1.03 Seite 80 A.5 Suchen/Ersetzen -------------------------------------------------------------- CNTRL/F Find-Dialog aufrufen... CNTRL/F 0..9 Suchstring 0..9 ab Textanfang suchen ALT/F 0..9 Suchstring 0..9 ab Cursorposition suchen CNTRL/N Weitersuchen abwrts ALT/N Weitersuchen aufwrts CNTRL/R Replace-Dialog aufrufen... CNTRL/V Weiter ersetzen (mit Verify) CNTRL/J C-Funktionskopf-Dialog aufrufen... ALT/J Nchsten passenden C-Funktionskopf suchen CED V1.03 Seite 81 A.6 Datei -------------------------------------------------------------- CNTRL/O Text laden... CNTRL/A Text hinzuladen... ALT/LEFT SHIFT/O Textstelle als Dateiname interpretieren und Datei laden ALT/LEFT SHIFT/A Textstelle als Dateiname interpretieren und Datei hinzuladen ALT/LEFT SHIFT/S Textpuffer speichern ALT/A Textpuffer speichern unter... ALT/LEFT SHIFT/B Textpuffer speichern mit Backup ALT/LEFT SHIFT/ESC Speichern und beenden (retcode 1) ALT/RIGHT SHIFT/ESC Speichern und beenden (retcode 2) ALT/LEFT SHIFT/Q CED verlassen (retcode 0) ALT/LEFT SHIFT/H Textkopf laden CED V1.03 Seite 82 A.7 Sonstiges -------------------------------------------------------------- ALT/I Info-Box aufrufen... ALT/D Textpuffer lschen ALT/O Speicher reorganisieren ALT / K Wort kapitalisieren ALT / U Zeichen Gro/Kleinumwandlung CNTRL/U Wort Gro/Kleinumwandlung CNTRL/X Zeichen vertauschen ALT/R berflssige Leerzeichen lschen ALT/X Text expandieren ALT/Y Text komprimieren ALT/H Hilfsdialog aufrufen... ALT/Z Fontgre umschalten CNTRL/+ Zahl inkrementieren CNTRL/- Zahl dekrementieren CNTRL/{ Klammerebenen anspringen CNTRL/} " CNTRL/~ Check braces CNTRL/NUM0..NUM9 Textpuffer aktivieren CNTRL/NUM * nchsten Textpuffer aktivieren CNTRL/NUM - vorherg. Textpuffer aktivieren (das ist eine Makrovorbelegung) ALT/C offene Windows zyklisch aktivieren ALT [numeric keypad] ASCII Code eingeben (auch in GEM Dialogen !) ENTER Popup-Men fr das Aktivieren eines Textpuffers aufrufen (das ist eine Makrovorbelegung) CED V1.03 Seite 83 A.8 Fileselektorbox -------------------------------------------------------------- F1..F10 Pfad setzen SHIFT/F1..F10 Pfad in Konfiguration speichern CNTRL/HELP Popupmen mit Funktionstasten- Belegung aufrufen CNTRL/INSERT neuen Pfad bernehmen CNTRL/CLR HOME ins Rootdirectory wechseln CNTRL/1..8 Extension 1 bis 8 anwhlen CNTRL/A..P Laufwerk anwhlen CED V1.03 Seite 84 Anhang B Nachfragedialoge u. Fehlermeldungen (alphabet. sortiert) ============================================================= B.1 Nachfragedialoge ------------------------------------------------------------- Delete block ? -------------- Sicherheitsabfrage vor dem Lschen eines Blockes. Restore line xxxxxx ? ---------------------- Sicherheitsabfrage vor dem Restaurieren einer Zeile mit [UNDO]. Stop printing ? --------------- Nachfragedialog vor dem endgltigen Abbrechen eines Druckvorganges. Unsaved modifications in text x ! ----------------------------------- Sicherheitsabfrage vor dem Lschen/berschreiben eines ungesicherten Textes. CED V1.03 Seite 85 B.2 Fehlermeldungen (alphabet. sortiert) ============================================================= Cannot search for nothing ! --------------------------- Es wurde versucht die erste/nchste passende Textstelle zu suchen, aber es ist kein Suchstring im Find- bzw. C-Find- Dialog eingetragen. Disk error ! ------------ Diese Fehlermeldung tritt bei einem nicht nher klassifizier- baren Fehler beim Sichern einer Datei auf. Eine mgliche Ursache ist z.B. der Versuch nach einem Diskettenwechsel eine Datei in einen nicht vorhandenen Ordner abzuspeichern. FATAL ERROR ! ------------- Der Supergau! Diese Fehlermeldung spielte in der Anfangsphase der CED-Entwicklung eine unrhmliche Rolle, denn sie weist unbarmherzig auf einen internen Fehler der CED-Speicher- verwaltung hin. Sollten Sie es tatschlich schaffen diese Meldung zu Gesicht zu bekommen, speichern Sie geschwind alle modifizierten Texte ab und beenden dann CED ber 'Quit'. File not found ! ---------------- Tritt beim Laden einer Hilfsdatei auf, falls die Datei nicht existiert. Illegal cursor position ! ------------------------- Der Cursor befindet sich innerhalb eines zusammenhngenden Blockes beim Aufruf der Funktionen 'Copy', 'Move', 'Clipbrd paste' oder 'Add...' oder der Cursor befindet sich auerhalb eines zusammenhngenden Blockes beim Aufruf der Funktionen 'Shift left' oder 'Shift right'. Illegal macro call ! -------------------- CED wurde in der Commandline eine Makronummer m_nr < 0 oder m_nr > 38 bergeben. Line too long ! --------------- Die maximale Zeilenlnge von 252 Zeichen wurde durch eine Operation berschritten. CED V1.03 Seite 86 Not enough workspace ! ---------------------- Eine Operation kann nicht ausgefhrt werden, weil der von CED allokierte Speicherplatz nicht ausreicht. No printer driver installed ! ----------------------------- Ist kein Druckertreiber installiert, so erscheint diese Meldung vor dem Drucken eines Textes/Blockes. Out of disk space ! ------------------- Auf dem angesprochenen Massenspeicher ist nicht mehr gengend Speicherplatz vorhanden. Please close all desk accessories ! ----------------------------------- Vor dem Verlassen des Accessory-Modus mssen alle permanent ffenbare Accessories (z.B. das Kontrollfeld) geschlossen werden. Printer not ready ! ------------------- Der Drucker ist nicht eingeschaltet oder off line. Unbalanced braces ! ------------------- Bei der Suche eines C-Funktionskopfes oder beim Anspringen bzw. Testen von Klammerebenen wurde entdeckt, da irgendwo eine geschweifte Klammer fehlen mu. Unbalanced comment ! -------------------- Bei der Suche eines C-Funktionskopfes oder beim Anspringen bzw. Testen von Klammerebenen wurde entdeckt, da irgendwo ein C-Kommentar nicht korrekt abgeschlossen wurde. Too much directory entries ! ---------------------------- Die FSB kann maximal 224 Directory-Eintrge darstellen. Enthlt ein Verzeichnis mehr Eintrge, so erscheint diese Meldung. CED V1.03 Seite 87 Wrong config file version ! --------------------------- Es wurde versucht eine veraltete Konfigurationsdatei zu laden. Wrong macro file version ! -------------------------- Es wurde versucht eine veraltete Makrodatei zu laden. Wrong printer driver version ! ------------------------------ Es wurde versucht einen veralteten Druckertreiber zu laden. CED V1.03 Seite 88 Anhang C Das Accessory 'CEDSTART.ACC' ============================================================= Bevor Sie weiterlesen, sollten Sie wissen, da dieses Accessory in der jetzigen Version nur unter ROM- und Blitter -TOS lauffhig ist. Jetzt aber zur Funktionalitt: Dieses Accessory kann zum direkten Starten von CED (oder zum indirekten Starten eines beliebigen anderen Programmes) aus der Desktopmenleiste benutzt werden. Das Accessory trgt sich unter dem Namen 'Ced' in die Men- leiste ein. Nach Anklicken dieses Meneintrags vom Desktop aus, versucht das Betriebssystem den Editor unter dem Pfad 'C:\CED\CED.PRG' zu starten. Halten Sie beim Aktivieren des Accessories die [CONTROL]- oder [SHIFT]- oder [ALTERNATE]-Taste gedrckt, so wird nicht der Editor gestartet, sondern die System-FSB mit dem Pfad 'C:\STARTPRG\' geffnet. Jetzt knnen Sie ein sich in diesem Verzeichnis befindendes Programm durch einen Doppelklick starten. Wenn Ihnen die voreingestellten Pfade nicht zusagen, so sei es hiermit offiziell erlaubt, die Pfade und den Men- Namen im Accessory zu patchen. Dazu wurden hinter den Pfaden und dem Accessory-Mennamen zustzlich Null-Bytes in den Code eingefgt, damit auch lngere Pfade oder Mennamen eingetragen werden knnen. Bitte beachten Sie, da das Starten eines Programmes mit Hilfe des Accessories nur vom Desktop aus funktioniert. Wenn Sie das Accessory von einer Applikation aus aktivieren, wird erst nach Verlassen der Applikation das gewnschte Programm gestartet. CED V1.03 Seite 89 Nachwort ============================================================== Bleibt nur noch zu hoffen, da Sie nach Durchlesen dieser Anleitung keine groen Probleme mit der Bedienung von CED haben werden. Falls Sie aber trotzallem auf unberwindliche Schwierigkeiten stoen sollten, ist der Autor gerne bereit Ihnen weiterzuhelfen. Richten Sie Ihre Fragen bitte an folgende Adresse: Matthias Pfersdorff Rubensstr. 9 D-6780 Pirmasens Germany Viel Spa mit CED ! Matthias Pfersdorff, im Dezember 1990 Hinweis: -------- Diese Software und die Dokumentation wurden mit grter Sorgfalt und Gewissenhaftigkeit angefertigt. Trotzdem knnen Fehler nicht vollstndig ausgeschlossen werden. Der Autor kann fr direkte oder indirekte Schden, die durch Benutzung von CED oder die Untauglichkeit von CED fr einen bestimmten Zweck entstehen, weder eine juristische Verantwortung noch irgendeine Haftung ber- nehmen. Atari ST/TT sind Warenzeichen der Atari Inc. GEM ist Warenzeichen von Digital Research Comp. Megamax C ist Warenzeichen von Megamax Inc. llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll`#2$N6N N :N N RN N N N"b*O*m - ЭЭм!"ҍ¼.A// Bg?<JNA m"m -So Q m -SBQ(m)M*mN0 lHhNX/,?,N\?<N?<A?<NAXNuNV0H0N  nlHlNXN N no n /(Hn0N NP`HlHn0N N^XHn/,Hl/ HlNBgHn0?<NXHn0Hl@NBP`HlPN4XNzNlL N^NuNVH0&n $n..=|BnBn=|B.Bn`|`| g`| g`| g`*BnHnHnHlHnNRS`V`| g`BnHnHnHlHnNP0.g0.. n|A` .g?.Hl`N8\N~NpRnRSBnB.=|Bn``|#g`RS=|``0.g RS`0.ghBnBn[S. n|A Po".|??.Hl~NPNN.| nA0`0.RnAABS` ``\ nR n00<`L N^NuNV ngV/.NX=@0. n2 n | nRP n P oHlNXN N nRP nBN^NuNVBgNZTN^NuNV/./. ?.?<@N< -@ . g"?.?<>NXHlNnXNNN^NuNV?.NT nn0<`?.?<>NX9@g0<`0<N^NuNVHl/.NPJ@g`Hl/.NxPJ@gNHl/.NfPJ@g n(g nf. n-P n(f HnNX` HnN>XA-H/./. 0.A PNPLN^/W DNuN^NuNVH nB fB`м8 LN^NuNVH n$fBCB`nD6< f႖|NzN^NuNVH0&n$n Bn-J @)P)h-l-lBEG>O|g|JGn|m` REHl/ NRPO`SEHl/ NPO`&0+H@JGgDG0<0dR@0.BAQ,>QQֆG|0QB`Rn0.g$nB`0R 2.HmB`b .6.HЃR$@ nH|0fRZ"` R"H|9n nH|0f$n R&@fSE .6.HЃ @B n0L N^NuNVH0&n BnH|bf=| RH|rgH|wgH|ag <`F ,$@ f*AF$H`0* |f` AF"Ҽm AF"Ҽm <`BBj Bn+H|+f =|j H|wf?./.NZ\>j `hH|afB0<n?/.N\> @f?./.N\>?<B?NPj `0.n?/.N\>j Gf Bj <`05G Bj <$%@?<B?* NP%@5lD L N^NuNV)n/.NX/. /.NLPN^NuNV`H0BnBnBB9| nRH|=@ .&@$@BG`TH| g(H| gH| gH| g H| f0.f0.gBnB` `H|"f< nfBn`*0.f 0.f=|0,RlA` `"`H|'f: nfBn`*0.f 0.f=|0,RlA` `'`r0.fj0.fd=|H|f. R @H|>f T-@=|` R-@Bn`0,RlA`  R0RG0nmB .g,AF H1| AF H1|HlFHl/.N .g2AZ H1| HlZ0.gA `A //.N 0,R@H/?<HN\)@><`0A` 2 l RG0lm l 0, lBL N^NuNV nl <`?.?./. ?<BN -@ m .`?<?.B?<BN~ -@?<?.B?<BNd -@ nf .Ю -@ `$ nf .Ю -@ `0.g <`b . oHn . /?.?<@N Bg?./. ?<BN ]|9@g <` `Bl . N^NuNV/.?<HN\N^NuNV/.?<IN\N^NuNVBn`60.A0f"0.A00.A0 ` Rn nLmN^NuNVBn`&0.A0nf0.ABPRn nLmN^NuNV?>.=|0A"HPgXHf0(>N^NuNVHl/.N PJ@f =|`Hl/.N PJ@f =|`Hl /.N fPJ@f=|`f0. |g0/.N`XJ@g0<``Bg/.?<NLX0. |?/.?<=N4P=@9@ @l0<`0. | ??.N~X0.N^Nu)I)J~)_zNA"l$l~/,zNuNV`/. nRH?NJ\ nfN^NuNV n R @H=@` n R @H=@ n g n g n g0.N^NuNV=| nxg nXf n f0<`f n0m n9n0.|0=@`2 nam0.|a| =@` nAm0.|A| =@0.n o0<``0.N^NuNVBnBHnNX=@ n-f0<=@ nRH=@`0 ./0.H/N 6.HЃ-@ nRH=@?.?.NX=@ @f g n 0.g .D` .N^NuNV?< /</.N@ HN^NuNV/.?<AN\9@g0<``0<N^NuNV`4 nH| f?< ?<NX nRH??<NX0. Sn J@fN^NuNV` nRH??<NX0. Sn J@fN^NuNV` nRH??<NXX0. Sn J@fN^NuNVH0&n $KA-H nf?./ N4\=n`L nf?./ N`\=n`. nf?./ Np\=n`-KBn?.NTJ@f`H| f |o@ H-@/./.?.?<@N 9@Hg0<`0,n/./<?.?<@NL 9@ @g0<`tRnR -@`R ned` 6.ƼЃ$@ H-@/./.?.?<@N 9@Hg0<`0,nBl0.L N^NuNVH&n Bn0.`|dg`>< `J`|ug`>< `2`|og`><``|xg` ><` l2 ndf SR- .D-@`0. f  Gf .`, Gf .` ./0H/NNX 2.RnA0 Gf .`. Gf .` ./0H/N X-@ .f``LSn0.A P m0.A0| |A`0.A0|0 SR0.fLN^NuNVH&n n f=| )n)nHlHl?<Nd]|@0. R@?HnHnHnNd.g SR-.H|0f.f SR`t nff>.n RG0lo 0,`0> Gl 0<`0?HnHnHnNBF`0RFA SRSGSn0g nl` SR0Sn nl0. g SR.` SR0RnSn 0. g nm`( Go0RFAH`0<0 SRSG0. Sn J@f`h SR0. g SR.><`0RGA SR0. Sn J@f SRE?.Hl/N /NXHѓLN^NuNVBn`$0. n PHC|0=@ nR n PH|0m n PH|9o0.`N^NuNVH0&n -n @$PX`` nRgH|%fH|%fjRBn=|Bn| H|-f =|RH|0f |0R-JHnNX=@$nH|.fR-JHnNX=@$nH|lf =|RgH-n Gdg Gog Gxg GufL0.g @ ` @0H/Hn?.?N 0.g 0<`0<H` Gcf R @ nRT` Gsf> @-PX<.` nR nRSF0g nf`T Geg Gfg Ggf0 @)P)h/,/,Hn?.?NP`0 nR .nl0.g,<.".A` nRSF0f`l .2.SAHЁ-@-@,.` .2SAHЁ @ nSSF0f` nR .o .R-@fh nB .`L N^NuNV/. HnN P=@/.HnNP0.N^NuNVHnHlZNPHlZNXN^NuNVHn /.NPN^NuNVHl ?< N`\N^NuNV` ?<NLT?< NBTJ@f?<N4TN^NuLB@ggSBAgHJ@gHANuL rWfNu op`R@SJWfFNuNVHBG".l~D$. l GD&gHC H@J@g@HCBCւJGgD-C LN^.JNuNVH$.f pr`J". BnJlVnDJlRnDvd`pbd nmDdD-@-A LN^NuCF"2"2 2"2"2"22"2"2"22"2x9|D)l)l)l)l)l9|CA"A"A"A$"A*"A"A ")|NuNo input file specified ! ced.prnPRN1.03Out of memory ! %s generated ! File not found Line %4d: Sequence missing Line %4d: Character %c double defined Printer driver too long ! Disk full ! CON:AUX:PRT:@$??rawCON:AUX:PRT: %dEllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll ************************************************************ * ULTRACOOL CED Texteditor * * Version 1.03 * * Release 26-03-91 * ************************************************************ Copyright (C) 1990/91 by Matthias Pfersdorff Rubensstr. 9 D-6780 Pirmasens Germany Copyrightbestimmungen ============================================================= CED ist Shareware. Das bedeutet, da sich der Autor alle Rechte an dem Programmpaket vorbehlt. Die zum Programmpaket gehrenden Dateien (s.u.) drfen in keiner Weise modifiziert werden. Kommerzielle Vervielfltigung und Vertrieb des Programmpakets durch Public-Domain-Anbieter oder sonstige Firmen bedrfen einer schriftlichen Erlaubnis des Autors. CED darf nur in privatem Rahmen frei kopiert und getestet werden. Falls Ihnen CED gefllt und Sie CED regelmig benutzen wollen, sollten Sie so fair sein, die Shareware- Gebhr von DM 30.- (Schler/Studenten DM 20.-) in bar oder in Form eines Schecks an den Autor zu entrichten. Sie erhalten dafr nicht nur das Recht CED guten Gewissens regelmig zu benutzen, sondern auch einen Update-Service: Sie werden bei Erscheinen eines Updates automatisch benachrichtigt und erhalten die neue Version gegen Einsendung einer Diskette und eines frankierten Rckumschlags. Das Programmpaket besteht aus folgenden Dateien, die sich in den Verzeichnissen 'CED_V103' bzw. 'CED' befinden: CED.PRG -> der Texteditor CED.CFG -> Beispiel-Kofiguartion GENPRN.TTP -> Programm zur Erzeugung des Druckertreibers CEDSTART.ACC -> Acc zum Starten von CED ber die Menleiste CED.PRS -> Source zum Mini-Druckertreiber CED.PRN DOKU.TXT -> das Benutzerhandbuch READ_ME.TXT Das Verzeichnis 'CED' enthlt folgende CED-Systemdateien, auf die bei Programmstart bzw. whrend der Laufzeit zuge- griffen wird: CED_M.FNT -> ein 8*16 'Mac-like' Font CED.PRN -> Mini-Druckertreiber (fr's '') C_HEADER.TXT -> Beispiel fr einen Textkopf CEDHELP.TXT -> Beispiel fr einen Hilfstext !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ! CED darf nur vollstndig kopiert werden, d.h. es mu ! ! immer das Verzeichnis 'CED_V103' mit allen oben genannten ! ! Dateien kopiert werden. ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Und nun die wichtigsten CED-Features: Allgemeines ----------------------------------------------------------------- - 10 getrennt editierbare Textpuffer in 10 Windows. Am unteren Rand des aktiven Windows werden (immer sichtbar) elf Piktogramme ausgegeben, die auf einen Blick Auskunft darber geben, welche Textpuffer belegt sind und ob das GEM-Clipboard belegt ist. - Dynamische Speicherverwaltung. Die max. Textgre wird nur durch den zur Verfgung stehenden Speicherplatz beschrnkt. - volle 80 Zeichen pro Zeile. - Tastatur/Maus Bedienung. - Bedienung der GEM-Dialoge und Popup-Mens ber Tastatur mglich. - schnelles, absolut nachlauffreies Scrolling - auch ber die Tastatur. - in hchster und mittlerer Auflsung lauffhig (auch auf dem Atari TT). Makros ----------------------------------------------------------------- - Ereignisrecorder - Tastatur- und GEM-Dialog-Makros (!!) - Makrokrzel werden auf dem CED-Desktop angezeigt - Makro-Looping in einem Block. - Makros aus der Commandline aufrufbar - automatische Ausfhrung eines Makros bei Programmstart. Block ----------------------------------------------------------------- - 4 Blocktypen: Zeilenausschnitt (unabhngiger Puffer) Einzelzeile (unabhngiger Puffer) fragmentierter Block zusammenhngender Block - Blockfunktionen: Invert Copy Move Delete Shift left -> Block horizontal ab Cursor- Shift right position verschieben Clipbrd copy -> Untersttzung des GEM Clipbrd paste Clipboards Write Print - Markieren eines Blockes ber Tastatur oder Maus. Suchen ----------------------------------------------------------------- - Suchbereiche: aktueller Textpuffer alle Textpuffer Blockbereich Dateisystem (lokal oder rekursiv) - Suchmodi: Substring- oder Wortsuche Gro-/Kleinschreibung beachten/nicht beachten abwrts/aufwrts Ersetzen ----------------------------------------------------------------- - Ersetzbereiche: aktueller Textpuffer alle Textpuffer Blockbereich - Ersetzmodi: Substrings oder Worte ersetzen Gro-/Kleinschreibung beachten/nicht beachten Gro-/Kleinschreibung anpassen Ersetzen ohne oder mit Nachfrage Unterstzung der Programmiersprache C ----------------------------------------------------------------- - C-Funktionskopf suchen: - Suchbereiche: aktueller Textpuffer alle Textpuffer Dateisystem (lokal oder rekursiv) - Suchmodi: Gro-/Kleinschreibung beachten/nicht beachten - Klammerebenen (,[,{ anspringen - Geschweifte Klammern berprfen C-Kommentare, Char- und Stringkonstanten werden dabei berlesen. Fileselektorbox ----------------------------------------------------------------- - frei festlegbares Dateinamensuchmuster - 10 frei festlegbare Extension-Suchmuster - mehrere Dateien gleichzeitig selektierbar - Ausgabe von Dateigre/Erstellungsdatum/Erstellungszeit - Funktionstasten mit Pfaden belegbar Popupmen zur Auswahl eines voreingestellten Pfades. - Untersttzung von 16 Laufwerken - Laufwerk-Info Untersttzung der Programmdokumentation ----------------------------------------------------------------- - Einfgen eines individuellen Textkopfes am Textanfang auf Tastendruck. - automatisches Eintragen der aktuellen Zeit und Datum beim Einfgen des Textkopfes bzw. bei jedem Sichern der Source- datei. und einige Kleinigkeiten... ----------------------------------------------------------------- - Untersttzung des GEM-Clipboards - Cursor frei positionierbar (auch an nicht mit einem Zeichen besetzte Positionen). - automatischer Zeilenumbruch. - eigener Font installierbar. - 2 Fontgren (nur in der hchsten ST-Auflsung). - individuell nutzbarer Hilfsdialog. - individuelle Druckeranpassung mglich. - 'Jump to error' Funktion. - 5 Zeilenmarken und 1 Ping-Pong Zeilenmarke fr jeden Textpuffer. - Undo nach Zeilenlschen, Zeichenlschen bzw. Zeilenmodifikation. - 'Save with backup' legt bis zu 100 Duplikate einer Datei an. - automatisches Laden der zuletzt bearbeiteten Datei (inklusive Systemkonfiguration) bei Programmstart. - Accessory-Modus. Accessories ber die Tastatur aufrufbar! - zahlreiche Editierkommandos (auch Ausgefallenes, wie z.B. Zahlen-Inkrement/Dekrement, Wort kapitalisieren, Zeichen vertauschen etc). ?p~~@ p?8@<??`~??x|p>~>8~Àpp?>CED1.04.\CED\C:\CLIPBRD\CED.MACC_HEADER.TXTCEDHELP.TXTStarted:Version:CG*HOUTSRCSTXTV** <>()[]{},;.:'"|!?+-vvvvvvvvvv<2 ) 32 (W, <, 42 ; S, <, 42 ) 33 (W, <, 44 ; S, <, 42 ) 41 (W, <, w ; W, <, w ) w (W, ^, 00 ; W, <, w ) l2 (W, <, 00 ; S, <, 00 ) 42 (W, v, l1 ; S, v, l1 ) 44 (W, ^, 00 ; S, ^, 00 ) l1 (W, >, l2 ; S, >, l2 ) p?p8???~x|8?~>>w~~~p~8>| ******************************************************************** Deze diskette is samengesteld door de Stichting ST, Postbus 11129, 2301 EC Leiden. Onze bibliotheek van public domain programma's omvat op dit moment (zomer 1992) al meer dan achthonderd disks. Daarop vindt u programma's op elk gebied, van tekstverwerker en database tot de leukste spelletjes, de fraaiste tekenprogramma's en de handigste utilities. Ook bevat onze bibliotheek een speciale afdeling voor public domain disks met Macintosh software, die te gebruiken zijn onder de ALADIN emulator. Deze MAC-PD serie bevat tot nu toe ongeveer vijfendertig disks. ******************************************************************** U vindt in het twee maandelijks tijdschrift "ST" (Onafhankelijk tijd- schrift van en voor gebruikers van Atari ST computers) een overzicht en een bespreking van de inhoud van de nieuwe public-domain diskettes. Dit tijdschrift bevat tevens een bestelkaart zodat U vlot over de software kunt beschikken. De november/december uitgave bevat een compleet overzicht van de Public Domain bibliotheek op dat moment. De Stichting ST geeft ook een speciale PD catalogus disk uit. Deze public domain disk is geproduceerd en gedistribueerd door: ************** Stichting ST afd. Software Bakkersteeg 9A 2311 RH LEIDEN ************** Ondanks onze controle komt het af en toe voor dat een diskje niet goed is gecopieerd.Mocht U dit overkomen, aarzel dan niet en stuur de defecte disk aan ons terug. U krijgt dan direct een vervangende disk toegestuurd. ************************************************************************ Teneinde het voor ons mogelijk te maken om productiefouten op te sporen en vervolgens in de toekomst te vermijden, zijn alle disks, geproduceerd door de Stichting ST, voorzien van een groen productienummer. ************************************************************************