Pozn.: Tento soubor je v kodovani "TCHEKO", ktere bylo popsano v magazinu FLOP 36 (4/95). Prevod do jinych formatu umoznuje prave zde popisovany program BTC.¢¢¢ ====================================¢ B T C 1 . 0¢ (Bewesoft's Text Converter)¢ Autor: Ji② Bern⇧③ek - BEWESOFT 1999¢ ====================================¢¢¢ BTC je program ur⇨en⑨ k p②evodu text
do jin⑦ho kdov⇧n . Poskytuje jednoduch⑦ ②e③en v p② padech, kdy jsou pot əe s p②enosem textov⑨ch soubor
do jin⑨ch program
⇨i po⇨ ta⇨
.¢ Jak zn⇧mo, prakticky v③echny programy na v③ech po⇨ ta⇨ ch pouə vaj pro texty kd ASCII. Bohuəel v③ak existuje cel⇧ ②ada r
zn⑨ch modifikac tohoto kdu, takəe p②enos soubor
mezi r
zn⑨mi syst⑦my neb⑨v⇧ vədy jednoduch⑨. Kdo uə n❎kdy vid❎l text z IBM PC vypsan⑨ na obrazovku mal⑦ho Atari, nebo se pokusil vytisknout BASICov⑨ listing s grafick⑨mi znaky na tisk⇧rn❎ standardu EPSON, ten jist❎ v , o co jde. A pokud vstoup do hry je③t❎ odli③n⑦ kdov⇧n ⇨esk⑨ch znak
, bylo by snad jednodu③③ napsat text znovu, neə p②en⇧③et a opravovat soubor...¢¢ BTC umoəuje p②ev⇧d❎t texty mezi libovoln⑨mi kdy. Pot②ebujeme k tomu jen programov⑨ soubor BTC.COM a defini⇨n soubor odpov daj c poəadovan⑦mu p②evodu. Tyto defini⇨n soubory jsou vlastn❎ textov⑦ soubory v ASCII, takəe je m
əeme vytv⇧②et ⇨i opravovat pomoc t⑦m❎② libovoln⑦ho textov⑦ho editoru. Definovat m
əeme:¢--- Prost⑨ p②evod znaku na znak jin⑨¢--- Nahrazen znaku ②et❎zcem¢--- Z⇧m❎na ②et❎zce za jin⑨¢--- Jednoduch⑦ ⇨ seln⑦ operace na kdech znak
(+/-/AND/OR/EX-OR)¢--- Definov⇧n vstupn ch kd
t⑦ə jako rozsah od-do, nebo tzv. "wildcards" (symbol pro "libovoln⑨ znak")¢--- N⇧hrada znak
tabel⇧toru mezerami¢--- Form⇧tov⇧n textu ve 3 moən⑨ch reəimech aə do 255 znak
na ②⇧dek¢--- Vkl⇧d⇧n hlavi⇨ek na za⇨⇧tek ⇨i konec souboru¢--- V③echna ⇨ sla ⇨i ②et❎zce lze zad⇧vat v des tkov⑦m, hexadecim⇧ln m ⇨i dvojkov⑦m tvaru, jako ②et❎zec, a p② padn❎ je③t❎ s po⇨tem opakov⇧n .¢¢¢ JAK PROGRAM POU⑧VAT¢ ====================¢¢ BTC funguje s prakticky libovoln⑨m DOSem, pokud umoəuje sou⇨asn⑦ otev②en dvou soubor
, a hodnota MEMLO nen v❎t③ neə $5200 (plat pro BTC verze 1.0). Pokud v m, vyhovuj v③echny existuj c DOSy. (Pozor ale na - v ⇨esk⑨ch podm nk⇧ch pom❎rn❎ roz③ ②en⑦ - kazetov⑦ syst⑦my. Zde nelze konvertovat p② mo z kazety na kazetu.) BTC nepouə v⇧ pam❎④ skrytou pod Opera⇨n m Syst⑦mem, ani banky roz③ ②en⑦ pam❎ti (Ramdisk).¢¢ Pod SpartaDOSem a BW-DOSem se BTC chov⇧ jako norm⇧ln extern povel. Syntaxe je:¢¢ BTC zdroj c l [definice]¢¢(Hranat⑦ z⇧vorky ozna⇨uj nepovinn⑦ parametry.)¢¢Pozn.: Pod SpartaDOSem a BW-DOSem zastavuje BTC v p② pad❎ chyby b❎ə c d⇧vkov⑦ soubory. C lem je zabr⇧nit pot ə m (nap②. smaz⇧n zdrojov⑦ho souboru, kter⑨ nebyl ⑤sp❎③n❎ zkonvertov⇧n).¢¢ Pod jak⑨mkoliv jin⑨m DOSem prost❎ jen spust me soubor BTC.COM. Program se v tomto p② pad❎ bude postupn❎ dotazovat na n⇧zvy v③ech t② soubor
, kter⑦ zad⇧me z kl⇧vesnice.¢¢ Po p②evzet n⇧zv
soubor
BTC analyzuje defini⇨n soubor. Obvykle tuto ⇨innost ani nepost②ehneme, je-li v③ak soubor hodn❎ dlouh⑨ nebo sloəit⑨, m
əe to chv li trvat. Pokud by se snad objevilo hl⇧③en "Out of memory" (nedostatek voln⑦ pam❎ti), zkus me odpojit ve③ker⑦ cartridge (z⇧suvn⑦ moduly) a vypnout vestav❎n⑨ BASIC - t m rozsah dostupn⑦ pam❎ti zv❎t③ me.¢ N⇧sleduje vlastn konverze textu. D⑦lka soubor
nen nijak omezena - dlouh⑦ soubory se zpracov⇧vaj po ⇨⇧stech. I zde m
əe dlouh⑨ ⇨i sloəit⑨ defini⇨n soubor zp
sobit znateln⑦ prodlevy mezi ⇨ten m a z⇧pisem.¢¢ N⇧zvy v③ech t② soubor
je moən⑦ zad⇧vat bez ozna⇨en disketov⑨ch jednotek a bez roz③i②uj c ⇨⇧sti. V tom p② pad❎ program pouəije roz③ ②en .TXT pro zdrojov⑨ a c lov⑨ soubor, .BTC pro defini⇨n soubor, pracovn disketovou jednotku pod SpartaDOSem ⇨i BW-DOSem, nebo jednotku ⇨ slo 1 pod jin⑨m DOSem. Pokud v
bec nezad⇧me n⇧zev defini⇨n ho souboru, pouəije se DEFAULT.BTC. (To umoəuje p②ejmenov⇧n m ⇨i zkop rov⇧n m defini⇨n ho souboru na DEFAULT.BTC dos⇧hnout zjednodu③en syntaxe pro nej⇨ast❎ji pouə vanou konverzi.)¢¢ Defini⇨n soubory se obvykle jmenuj "xxx2yyy.BTC", kde "xxx" a "yyy" jsou zkratky pro zdrojov⑦ a c lov⑦ kdov⇧n textu. Soubory dod⇧van⑦ s programem pouə vaj n⇧sleduj c zkratky:¢¢ATA - Kompletn ATASCII, v⇨etn❎ inverzn ch a grafick⑨ch znak
.¢ASC - Klasick⑨ 7-bitov⑨ kd ASCII bez jak⑨chkoliv zvl⇧③tn ch znak
, ale se zakon⇨en m ②⇧dk
kdem $9B (ATASCII EOL). Tento kd lze bez probl⑦m
tisknout na libovoln⑦ tisk⇧rn❎ p②ipojen⑦ k Atari XL/XE (t.j. akceptuj c EOL $9B), stejn❎ jako na obrazovce.¢ATM - Zdrojov⑦ soubory programu ATMAS II.¢PC - Standardn ASCII kd po⇨ ta⇨
IBM PC (verze pro USA - pokud lze v❎②it n⇧vodu k m⑦ tisk⇧rn❎, jmenuje se "PC437").¢EED - Texty z ENERGY EDITORu, kter⑨ se ⇨asto pouə v⇧ v Polsku pro psan ⇨l⇧nk
do r
zn⑨ch disketov⑨ch magaz n
.¢CAP - Form⇧t programu ⑥apek.¢TCH - Kdov⇧n "TCHEKO", kter⑦ bylo pops⇧no v magaz nu FLOP 36.¢KAM - Kdov⇧n Kamenick⑨ch - jedna z n❎kolika variant ⇨e③tiny na PC i jin⑨ch "v❎t③ ch" po⇨ ta⇨ ch. (Sestaveno podle oxeroxovan⑦ tabulky, kterou jsem kdysi dostal ve firm❎ JRC. M⇧m ur⇨it⑦ pochybnosti o jej d
v❎ryhodnosti - z⇧sadn m zp
sobem se v posledn ⇨tvrtin❎ rozch⇧z s programem MAT na Atari ST - o um st❎n ⇨esk⑨ch znak
v③ak na③t❎st nen sporu.)¢¢Pr klad: Pro p②eveden souboru EXAMPLE.TXT v kdu ATASCII na TEMP.TXT v kdu IBM PC zad⇧me (pod SpartaDOSem ⇨i BW-DOSem) n⇧sleduj c :¢¢ BTC EXAMPLE TEMP ATA2PC¢¢(Soubory EXAMPLE.TXT, BTC.COM a ATA2PC.BTC mus b⑨t v pracovn m adres⇧②i.) Pokud takov⑦ p②evody d❎l⇧me ⇨asto, m
əeme p②ejmenovat ATA2PC.BTC na DEFAULT.BTC, a pak dos⇧hneme stejn⑦ho v⑨sledku zad⇧n m zjednodu③en⑦ho:¢¢ BTC EXAMPLE TEMP¢¢¢ JAK SESTAVIT DEFINICI¢ =====================¢¢ Defini⇨n soubory jsou ve skute⇨nosti norm⇧ln textov⑦ soubory v kdu ASCII, kter⑦ lze vytv⇧②et pomoc prakticky libovoln⑦ho textov⑦ho editoru. (⇧dky mus b⑨t zakon⇨eny kdem $9B - ATASCII EOL.)¢¢Pozn.: BTC dok⇧əe zpracovat kompletn znakovou sadu ATASCII, takəe ve③ker⑦ p② kazy, ⇨ sla atd. mohou b⑨t norm⇧ln i inverzn , velk⑨mi i mal⑨mi p smeny - s v⑨jimkou uvozovek na konci ②et❎zce (inverzn uvozovky nezakon⇨uj ②et❎zec, ale st⇧vaj se jeho sou⇨⇧st ). P②esto v③ak v②ele doporu⇨uji pouə vat pouze standardn ASCII (ə⇧dn⇧ inverze, ə⇧dn⑦ grafick⑦ a ② dic znaky, rad❎ji velk⇧ p smena) - umoən me t m snadn⑦ prohl əen ⇨i tisk pomoc skoro libovoln⑦ho programu (tisk⇧rny).¢¢ Jm⑦na defini⇨n ch soubor
by m❎la dodrəovat v⑨③e zm n❎n⑨ model "xxx2yyy.BTC". (Nen to sice povinn⑦, ale "libovoln⑦" n⇧zvy b⑨vaj mnohem obt ən❎ji srozumiteln⑦...)¢¢ Hotov⑨ defini⇨n soubor snadno vyzkou③ me t m, əe ho pouəijeme ke konverzi n❎jak⑦ho zku③ebn ho textu. Pokud jsme n❎kde ud❎lali chybu, BTC ji ohl⇧s i s po②adov⑨m ⇨ slem ②⇧dku v souboru. (Ohl⇧③ena bude vədy jen prvn nalezen⇧ chyba, proto zkou③ku po oprav❎ zopakujeme!) Je tak⑦ vhodn⑦ dob②e si prohl⑦dnout (nejl⑦pe znak po znaku) v⑨sledek zku③ebn konverze, a ujistit se tak o spr⇧vnosti definice. BTC totiə pochopiteln❎ nenajde chyby typu "34" m sto "43" - kontroluje se pouze syntaxe.¢¢¢ Syntaxe¢¢ Kaəd⑨ ②⇧dek v defini⇨n m souboru m
əe definovat p②evod n❎jak⑨ch kd
, m
əe obsahovat speci⇧ln p② kaz (viz. d⇧le), nebo koment⇧② uveden⑨ znakem ";". Mimoto lze kamkoli libovoln❎ vkl⇧dat mezery a pr⇧zdn⑦ ②⇧dky (a dokonce i ATASCII znak TAB - $7F) pro zlep③en p②ehlednosti - samoz②ejm❎ z v⑨jimkou ②et❎zc
v uvozovk⇧ch. BTC takov⑦ pr⇧zdn⑦ znaky p②eskakuje.¢¢P② klady:¢ 13>155/EOL;Bez mezer¢ 13 > 155 /EOL ;Tot⑦ə¢ 1 3 > 1 5 5 / e o l ;Znovu to sam⑦¢ 13>"[ C R ]";V tomto p② pad❎ mezery JSOU sou⇨⇧st ②et❎zce!¢ ; Toto je ②⇧dek koment⇧②e.¢¢ V③echny parametry (⇨ sla nebo znaky) mohou b⑨t definov⇧ny jako des tkov⑦ ⇨ slo, hexadecim⇧ln ⇨ slo uveden⑦ znakem "$", bin⇧rn ⇨ slo uveden⑦ "%", nebo jako ②et❎zec mezi uvozovkami " " nebo apostrofy ' '. ⑥ sla mohou b⑨t pouze v rozsahu jednoho bytu (0-255), zat mco ②et❎zce mohou b⑨t dlouh⑦ aə 128 znak
(samoz②ejm❎ jen tam, kde je takov⑨ parametr povolen). et❎zcem obsahuj c m jen jedin⑨ znak lze nahradit jak⑨koliv ⇨ seln⑨ parametr.¢¢P② klady:¢ SETTAB 33 ;V③echny tyto¢ SETTAB $21 ;②⇧dky jsou¢ SETTAB %100001 ;navz⇧jem¢ SETTAB "!" ;rovnocenn⑦!¢ SETTAB '!'¢¢¢ ⇧dky pro p②evod kd
, je n⇧sleduj c :¢¢ zdroj > [c l] [/EOL] [;koment⇧②]¢¢ Kdykoliv je ②et❎zec uveden⑨ jako "zdroj" nalezen ve vstupn m souboru, bude na v⑨stupu nahrazen ②et❎zcem "c l", p② padn❎ ignorov⇧n pokud nen "c l" uveden. (Parametr "/EOL" bude objasn❎n pozd❎ji.)¢¢Pozn.: Znaky, kter⑦ nevyhovuj ə⇧dn⑦ definici, budou prost❎ jen zkop rov⇧ny do v⑨stupn ho souboru.¢¢ Oba ②et❎zce "zdroj" i "c l" lze poskl⇧dat z mnoha ⇨ sel ⇨i ②et❎zc
:¢¢ ②et❎zec[*po⇨et][,②et❎zec[*po⇨et]]...¢¢Pokud je uveden parametr "*po⇨et" ("po⇨et" je ⇨ slo od 1 do 255), bude p② slu③n⑨ ②et❎zec tolikr⇧t opakov⇧n.¢¢Pozn.: Oba ②et❎zce, "zdroj" i "c l", mohou b⑨t dlouh⑦ nejv⑨③e 255 znak
(v rozloəen⑦ podob❎, t.j. po proveden v③ech opakov⇧n definovan⑨ch jako "*po⇨et").¢¢P② klady:¢ 13 > $9B ;P②ev⑦st CR na ATASCII EOL¢ 13 > $9B*2 ;P②ev⑦st CR na dva ATASCII EOLy¢ 13 > "[EOL]",$9B*2 ;P②ev⑦st CR na text "[EOL]" n⇧sledovan⑨ dv❎ma ATASCII EOLy¢ 13>"(","EOL"*4,")" ;P②ev⑦st CR na 4x opakovan⑨ text "EOL", to cel⑦ v z⇧vork⇧ch¢ 13 > '"EOL"' ;P②ev⑦st CR na text "EOL" v uvozovk⇧ch (v ②et❎zci ohrani⇨en⑦m apostrofy lze pouə t uvozovky - a tak⑦ naopak)¢ 13,10,13,10 > 155 ;P②ev⑦st zdvojenou kombinaci CR/LF na jeden ATASCII EOL¢ "Good bye" > "Bye" ;et❎zec "Good bye" nahradit ②et❎zcem "Bye"¢ $FF*16 > ;Ignorovat ②et❎zec 16-ti znak
s kdem $FF¢¢ Definice "zdroj" m
əe obsahovat m sto ②et❎zce tak⑦ znak "?" ("wild card"), kter⑨ znamen⇧ "libovoln⑨ znak".¢¢P② klady:¢ "A",? > "All" ;Zm❎nit "A" n⇧sledovan⑦ libovoln⑨m znakem na ②et❎zec "All"¢ "(",?*5,")" > "()" ;Vypustit libovoln⑨ ②et❎zec 5-ti znak
, pokud je v z⇧vork⇧ch¢¢ Jinou moənost je definovat "zdroj" jako rozmez "⇨ slo1-⇨ slo2". Takov⇧ definice plat pro v③echny kdy mezi ob❎ma ⇨ sly (v⇨etn❎). (T mto zp
sobem lze definovat jen jednotliv⑦ znaky, nikoliv ②et❎zce.)¢¢P② klad:¢ 0-$1F > "." ;P②ev⑦st v③echny znaky s kdy pod $20 (netisknuteln⑦ znaky) na te⇨ky¢¢Pozn.: Z definic typu rozsah "⇨ slo1-⇨ slo2" nebo "wild card" lze d❎lat v⑨jimky. Toho dos⇧hneme um st❎n m dal③ ho ②⇧dku ZA tuto definici, p②i⇨emə ②et❎zec "zdroj" mus b⑨t stejn❎ dlouh⑨ (nebo del③ ).¢ Obecn❎ maj del③ ②et❎zce ("zdroj") p②ednost p②ed krat③ mi; pokud je d⑦lka stejn⇧, maj p②ednost pozd❎ji definovan⑦. (Definice typu rozsah "⇨ slo1-⇨ slo2" se pro tento ⑤⇨el povaəuj za jednoznakov⑨ ②et❎zec pro kaəd⑨ vyhovuj c kd.) Ve③ker⑦ ②et❎zce za⇨ naj c otazn kem ("wild card") p②ich⇧zej na ②adu aə po v③ech ostatn ch.¢¢P② klady:¢ 0-$FF > "." ;P②ev⑦st kaəd⑨ znak na te⇨ku¢ "A" > "?" ;Ale "A" na otazn k!¢¢ "A" > "?" ;Tot⑦ə jako p②edchoz p② klad. Definice¢ ? > "." ;za⇨ naj c otazn kem se testuje jako posledn .¢¢ "A" > "?" ;V tomto p② pad❎ m⇧ druh⑨ ②⇧dek p②ednost,¢ 0-$FF > "." ;takəe i "A" bude p②evedeno na te⇨ku.¢¢ "#" > ;Vynechat v③echny znaky "#"¢ "#1" > "#1" ;Ale nikoliv p②ed jedni⇨kou!¢¢ "#",? > "#" ;Vynechat libovoln⑨ znak za "#"¢ "#9" > "#9" ;Ne v③ak dev tku!¢¢ Definice "c l" m
əe obsahovat m sto ②et❎zc
n⇧sleduj c p② kazy:¢ "=" - Znak beze zm❎ny (t.j. p②evzat⑨ ze stejn⑦ pozice v nalezen⑦m zdrojov⑦m ②et❎zci)¢ "-" - ⑧⇧dn⑨ znak¢ "I znak" - Vloəit znak bez posunut pozice ve zdrojov⑦m ②et❎zci¢ "+ ⇨ slo" - P②i⇨ st k p
vodn mu znaku¢ "- ⇨ slo" - Ode⇨ st od p
vodn ho znaku¢ "& ⇨ slo" - Bitov⑦ AND s p
vodn m znakem¢ "! ⇨ slo" - Bitov⑦ OR¢ "@ ⇨ slo" - Bitov⑦ EXCLUSIVE-OR¢ "TAB" - Tabel⇧tor (viz. d⇧le)¢¢P② klady:¢ "a"-"z" > -$20 ;P②ev⑦st mal⇧ p smena na velk⇧¢ "(",?,")" > -,= ;Kaəd⑨ jednotliv⑨ znak v z⇧vork⇧ch zbavit z⇧vorek¢ "0"-"9">I"(",=,")" ;Kaədou ⇨ slici d⇧t do z⇧vorek¢¢¢ Tabel⇧tor¢¢ Bude-li v definici "c l" uvedeno "TAB", vloə program na toto m sto prom❎nn⑨ po⇨et mezer (nejm⑦n❎ 1) tak, aby n⇧sleduj c znak p②i③el na p② ③t tabela⇨n zna⇨ku. V z⇧kladn m nastaven jsou tyto zna⇨ky na kaəd⑦ osm⑦ pozici a mezerov⑨ znak je nastaven na kd $20. Zm❎nit to m
əeme p② kazem:¢¢ SETTAB [SPC ⇨ slo,] ⇨ slo [,⇨ slo]...¢¢ ⑥ slo uveden⑦ za "SPC" (pokud tento parametr v
bec pouəijeme) znamen⇧ nov⑨ kd mezerov⑦ho znaku, ostatn jsou pak pozice tabela⇨n ch zna⇨ek na ②⇧dce (povolen je rozsah 0-254). P② kaz SETTAB m
əeme pouə t i v cekr⇧t, a tak nastavit i v ce zna⇨ek, neə se vejde na jeden ②⇧dek (podle toho, jak⑨ pouə v⇧me textov⑨ editor - BTC ə⇧dn⑦ omezen d⑦lky ②⇧dku nem⇧). Definovat v cekr⇧t mezerov⑨ znak nem⇧ smysl - vədy plat pouze posledn definice v souboru. Jakmile definujeme jakoukoliv tabela⇨n zna⇨ku, z⇧kladn nastaven (kaəd⇧ osm⇧ pozice) je zru③eno.¢¢Pozn.: Tabel⇧tor pracuje s v⑨stupn m souborem (je③t❎ p②ed form⇧tov⇧n m textu - viz. d⇧le), proto mus b⑨t mezerov⑨ znak vədy v c lov⑦m kdov⇧n . Ve③ker⑦ z⇧m❎ny ②et❎zc
definovan⑦ b❎ən⑨mi ②⇧dky pro p②evod kd
se prov⇧d❎j je③t❎ p②ed tabelac .¢¢ Pro spr⇧vnou funkci tabel⇧toru je nutn⑦ definovat, kter⑦ znaky (p② padn❎ ②et❎zce) zakon⇨uj textov⑦ ②⇧dky (t.j. vracej pozici na nulu). K tomu slouə parametr "/EOL".¢¢P② klad:¢ 13,10 > $9B /EOL ;P②ev⑦st CR/LF na ATASCII EOL a zakon⇨it ②⇧dek¢ $9B > = /EOL ;Znak nechat beze zm❎ny, ale zakon⇨it ②⇧dek¢¢Pozn.: Parametr "/EOL" je spole⇨n⑨ pro tabel⇧tor i form⇧tov⇧n textu (viz. d⇧le), takəe nelze ə⇧dn⑨m zp
sobem nastavit "/EOL" pouze pro tabel⇧tor, a nikoliv pro form⇧tov⇧n . Ve③ker⑦ znaky generovan⑦ ②⇧dkem s "/EOL" leə mimo b❎ən⑦ textov⑦ ②⇧dky, a proto nemohou obsahovat "TAB".¢ Prav⑨ okraj nastaven⑨ pro form⇧tov⇧n textu (viz. d⇧le) je vədy povaəov⇧n za tabela⇨n zna⇨ku. Pokud nen zvoleno ə⇧dn⑦ form⇧tov⇧n , pracuje tabel⇧tor s pomysln⑨mi ②⇧dky dlouh⑨mi 255 znak
. (To znamen⇧, əe v del③ ch textov⑨ch ②⇧dc ch je pozice 255 vədy tabela⇨n zna⇨kou, a pak se p②edchoz zna⇨ky opakuj na pozic ch zv❎t③en⑨ch o 255.) Nap② klad:¢¢SETTAB 128 ;Tabela⇨n zna⇨ky budou na pozic ch 128, 255, 383, 510, 638, 765, 893, atd.¢¢P② klady:¢¢*** Definice ***¢"-" > TAB ;Se z⇧kladn m nastaven m¢$9B > = /EOL ;EOL zakon⇨uje ②⇧dky¢*** Zdrojov⑨ soubor ***¢A-BB-CCC-DDDD¢EEEEE-FFFFFF-GGGGGGG-H¢IIIIIIII-JJJJJJJJJ¢*** C lov⑨ soubor ***¢A BB CCC DDDD¢EEEEE FFFFFF GGGGGGG H¢IIIIIIII JJJJJJJJJ¢¢*** Definice ***¢SETTAB SPC"_",5,7¢SETTAB 9,21,30,35¢"-" > "\",TAB,"/"¢$9B > = /EOL¢*** Zdrojov⑨ soubor ***¢A-B-C-D-E-F¢Atari XL/XE-BTC 1.0-!¢*** C lov⑨ soubor ***¢A\___/B\_/C\_________/D\______/E\__/F¢Atari XL/XE\_________/BTC 1.0\_____/!¢¢¢ Form⇧tov⇧n textu¢¢ Form⇧tov⇧n textu slouə k omezen d⑦lky textov⑨xh ②⇧dk
na zvolen⑦ maximum. Vyskytne-li se ve zdrojov⑦m souboru del③ ②⇧dek, BTC p②id⇧ znak(y) EOL (konec ②⇧dku), a p
vodn dlouh⑨ ②⇧dek tak rozd❎l na n❎kolik krat③ ch. Form⇧tov⇧n textu aktivujeme p② kazem:¢¢ FORMAT reəim d⑦lka_②⇧dku [,mezera]¢¢ D⑦lka ②⇧dku m
əe b⑨t od 1 do 255, "mezera" je kd mezerov⑦ho znaku (je-li jin⑨ neə $20). "Reəim" je n❎kter⑦ z t❎chto ⇨ty② p smen:¢¢ "N" - Bez form⇧tov⇧n (z⇧kladn nastaven ). Za "N" jiə nepat② ə⇧dn⑦ dal③ parametry!¢ "C" - Znakov❎ orientovan⑦ form⇧tov⇧n , podobn⑦ jako p②i v⑨pisu na obrazovku. Vsunuje znak EOL vədy po napln❎n ur⇨en⑦ d⑦lky ②⇧dku.¢ "W" - Slovn❎ orientovan⑦ form⇧tov⇧n , podobn⑦ jako ve v❎t③in❎ textov⑨ch editor
. D⇧v⇧ znaky EOL m sto mezer, a proto vədy zachov⇧v⇧ celistvost slov. Vypou③t tak⑦ p②ebyte⇨n⑦ (v cen⇧sobn⑦) mezery mezi slovy (odsazen na lev⑦m kraji ov③em zachov⇧v⇧). ⇧dky krat③ neə ur⇨en⇧ d⑦lka nech⇧v⇧ beze zm❎ny. Pokud se vyskytne slovo del③ neə zvolen⇧ d⑦lka ②⇧dku, bude rozd❎leno.¢ "R" - Form⇧tov⇧n se zarovn⇧n m prav⑦ho okraje. Funguje stejn❎ jako "W", nav c pak podle pot②eby p②id⇧v⇧ mezery mezi slova tak, aby byl prav⑨ okraj textu rovn⑨.¢¢Pozn.: Mezerov⑨ znak pro form⇧tov⇧n textu je nez⇧visl⑨ na nastaven pro tabel⇧tor, a mus b⑨t v c lov⑦m kdov⇧n . Ve③ker⑦ z⇧m❎ny ②et❎zc
a tabelace definovan⑦ ②⇧dky pro p②evod kd
se prov⇧d❎j d② ve, neə form⇧tov⇧n textu. Pokud jsou mezerov⑦ znaky pro form⇧tov⇧n textu a tabel⇧tor stejn⑦, a je-li pouəit n❎kter⑨ z reəim
"W" nebo "R", bude tabelace na dlouh⑨ch ②⇧dc ch ovlivn❎na form⇧tov⇧n m (zru③en v cen⇧sobn⑨ch mezer). Pokud bude p② kaz "FORMAT" pouəit v defini⇨n m souboru v cekr⇧t, plat pouze posledn z nich.¢¢ Pro spr⇧vnou funkci form⇧tov⇧n textu je nutn⑦ definovat znak(y) konce ②⇧dku - stejn⑨m zp
sobem, jako u tabel⇧toru (parametr "/EOL").¢¢ Znaky konce ②⇧dku p②id⇧van⑦ p②i form⇧tov⇧n mohou b⑨t odli③n⑦ od ostatn ch (tzv. "m❎kk⑦ EOLy"). V z⇧kladn m nastaven se jedn⇧ o kd $9B (ATASCII EOL), jin⑦ nastaven m
əeme prov⑦st p② kazem:¢¢ EOL > c l¢¢ Takto definovan⑨ ②et❎zec bude generov⇧n jako "m❎kk⑨" EOL.¢¢Pozn.: V③echny znaky v tomto ②et❎zci leə mimo b❎ən⑦ textov⑦ ②⇧dky, takəe zde nelze pouə t "TAB" (ani p② kazy odkazuj c se na vstupn data (=+-&!@); "-" (ə⇧dn⑨ znak) a "I" (vsunout znak) jsou p② pustn⑦, ale zbyte⇨n⑦).¢¢P② klady:¢*** Zdrojov⑨ soubor ***¢ Toto je uk⇧zkov⑨ textov⑨ soubor ur⇨en⑨ pro p②edv⇧d❎n funkc BTC.¢Velmi kr⇧tk⑨ ②⇧dek.¢Velmi dlouh⑦ slovo: Toto_slovo_je_dlouh⑦_46_znak
_zcela_bez_mezer!¢¢*** Definice ***¢FORMAT C 30¢$9B > = /EOL¢*** C lov⑨ soubor ***¢ Toto je uk⇧zkov⑨ textov⑨ sou¢bor ur⇨en⑨ pro p②edv⇧d❎n f¢unkc BTC.¢Velmi kr⇧tk⑨ ②⇧dek.¢Velmi dlouh⑦ slovo: Toto_slovo¢_je_dlouh⑦_46_znak
_zcela_bez_¢mezer!¢¢*** Definice ***¢FORMAT W 30¢$9B > = /EOL¢*** C lov⑨ soubor ***¢ Toto je uk⇧zkov⑨ textov⑨¢soubor ur⇨en⑨ pro p②edv⇧d❎n ¢funkc BTC.¢Velmi kr⇧tk⑨ ②⇧dek.¢Velmi dlouh⑦ slovo:¢Toto_slovo_je_dlouh⑦_46_znak
_¢zcela_bez_mezer!¢¢*** Definice ***¢FORMAT R 30¢$9B > = /EOL¢*** C lov⑨ soubor ***¢ Toto je uk⇧zkov⑨ textov⑨¢soubor ur⇨en⑨ pro p②edv⇧d❎n ¢funkc BTC.¢Velmi kr⇧tk⑨ ②⇧dek.¢Velmi dlouh⑦ slovo:¢Toto_slovo_je_dlouh⑦_46_znak
_¢zcela_bez_mezer!¢¢*** Definice ***¢FORMAT W 30¢$9B > = /EOL¢EOL > "**",$9B¢*** C lov⑨ soubor ***¢ Toto je uk⇧zkov⑨ textov⑨**¢soubor ur⇨en⑨ pro p②edv⇧d❎n **¢funkc BTC.¢Velmi kr⇧tk⑨ ②⇧dek.¢Velmi dlouh⑦ slovo:**¢Toto_slovo_je_dlouh⑦_46_znak
_**¢zcela_bez_mezer!¢¢¢*** Definice ***¢FORMAT W 35 ;P
vodn EOLy budou odstran❎ny a text nov❎¢$9B*2 > = /EOL ;zform⇧tov⇧n. Zdvojen⑦ EOLy (pr⇧zdn⑦ ②⇧dky)¢$9B > " " ;budou zachov⇧ny, av③ak zm❎n❎ny na jednoduch⑦.¢*** Zdrojov⑨ soubor ***¢Toto je soubor¢form⇧tovan⑨ na 20¢znak
/②⇧dek.¢¢Tato ⇨⇧st je za¢pr⇧zdn⑨m ②⇧dkem.¢*** C lov⑨ soubor ***¢Toto je soubor form⇧tovan⑨ na 20¢znak
/②⇧dek.¢Tato ⇨⇧st je za pr⇧zdn⑨m ②⇧dkem.¢¢¢ P②id⇧v⇧n hlavi⇨ek¢¢ Chceme-li vsunout n❎jak⑦ kdy (hlavi⇨ku) na za⇨⇧tek ⇨i konec souboru, pouəijeme n❎kter⑨ (nebo oba) z n⇧sleduj c ch p② kaz
:¢¢ START > c l¢ END > c l¢¢ et❎zec "c l" bude p②id⇧n na za⇨⇧tek resp. na konec v⑨stupn ho souboru.¢¢Pozn.: et❎zec nesm obsahovat ə⇧dn⑦ p② kazy odkazuj c se na vstupn data (=+-&!@). "TAB" je moən⑨.¢¢¢ DOD①VAN◆ SOUBORY¢ ================¢¢ V archivn m souboru BTC.ARC by m❎ly b⑨t obsaəeny v③echny n əe uveden⑦ soubory. Pokud n❎kter⑨ chyb , programov⑨ bal k nen ve sv⑦ p
vodn podob❎ od autora. Prakticky v③echny uveden⑦ defini⇨n soubory jsou okomentovan⑦ - jejich prohl dka m
əe b⑨t dal③ m zdrojem informac .¢¢BTC.COM - Programov⑨ soubor.¢BTC.DOC - Anglick⇧ verze tohoto n⇧vodu.¢¢ASC2ATM.BTC, ATA2ASC.BTC, ATA2PC.BTC, ATM2ASC.BTC, EED2ASC.BTC, PC2ATA.BTC - Defini⇨n soubory pro p②evody nejb❎ən❎j③ ch kd
(vybran⑦ soubory s celosv❎tovou pouəitelnost ). Je moən⑦, əe n❎kter⑦ soubory nebudou zcela p②esn❎ vyhovovat n❎kter⑨m aplikac m - bude je t②eba m rn❎ upravit. (Tak nap② klad ATA2PC p②ev⇧d ATASCII do kdov⇧n PC, v⇨etn❎ mnoh⑨ch grafick⑨ch znak
- t❎ch, kter⑦ m⇧ i PC - vytv⇧② v③ak zdvojen⑦ konce ②⇧dk
, coə je prevence proti p②eform⇧tov⇧n textu r
zn⑨mi programy na PC. Pokud bychom cht❎li pos lat data p② mo na tisk⇧rnu, bude asi t②eba zm❎nit konce ②⇧dk
na jednoduch⑦ CR/LF, ⇨i dokonce jen CR (m⇧me-li na tisk⇧rn❎ zapnut⑨ AUTO-FEED, jak to vyəaduj mnoh⑦ tisk⇧rnov⑦ interface k Atari XL/XE), jinak budou na pap ②e zbyte⇨n⑦ pr⇧zdn⑦ ②⇧dky.)¢¢EPSUBSCR.BTC - Tento defini⇨n soubor je uk⇧zkou pouəit hlavi⇨ek a form⇧tov⇧n textu. Slouə k tisku b❎ən⑨ch ASCII soubor
(n⇧vod
) na tisk⇧rn⇧ch EPSON, a to zhu③t❎n⑨m zp
sobem se 137 znaky na ②⇧dek. (Zkuste "BTC soubor P: EPSUBSCR") P②ed tiskem bude tisk⇧rna p②epnuta do mdu "condensed subscript" (velice mal⑦ p smo), text bude p②eform⇧tov⇧n (jednotliv⑦ EOLy budou odstran❎ny, coə rozbije p
vodn 40-sloupcov⑨ form⇧t, zdvojen⑦ EOLy z
stanou (odsazen odstavc
), pak budou p②id⇧ny nov⑦ EOLy d❎l c text na max. 137-znakov⑦ ②⇧dky - bez d❎len slov). Na konci bude tisk⇧rna inicializov⇧na zp❎t do norm⇧ln ho reəimu pr⇧ce.¢¢ATAEPSGR.BAS - Program v ATARI-BASICu, kter⑨ vytvo② soubor ATAEPSGR.BTC (nebyl za②azen v pln⑦m zn❎n pro svoji d⑦lku - asi 11kB). Jedn⇧ se o dal③ uk⇧zku pouəit BTC pro tisk. P②ev⇧d ve③ker⑦ znaky ATASCII na grafick⑨ tisk ve standardu EPSON, a tak umoəuje tisknout v③echny znaky ve stejn⑦ podob❎, jako na obrazovce. Jedn⇧ se sice jen o uk⇧zku - pro pravideln⑦ pouə v⇧n je to p② li③ pomal⑦, protoəe jsou jednotliv⑦ znaky tisknuty jako nez⇧visl⑦ mal⑦ obr⇧zky (m sto jednoho velk⑦ho obrazu cel⑦ ②⇧dky) - ale kdyə nev me, jak jinak n❎co vytisknout, m
əe se i toto ②e③en hodit.¢¢ ---¢¢CZECH.ARC - Dal③ mal⑨ archivn soubor, kter⑨ - jak uə asi laskav⑨ ⇨ten⇧② pochopil - obsahuje soubory ur⇨en⑦ speci⇧ln❎ pro uəivatele v ⑥esk⑦ republice:¢¢BTC.TCH - Tento text (v kdov⇧n "TCHEKO").¢¢ASC2CAP, CAP2ASC, CAP2ATA.BTC, CAP2KAM.BTC, CAP2TCH.BTC, KAM2ATA.BTC, KAM2CAP.BTC, KAM2TCH.BTC, TCH2ATA.BTC, TCH2CAP.BTC, TCH2KAM.BTC - Defini⇨n soubory pro p②evody kd
i s ⇨e③tinou (samoz②ejm❎ jen tam, kde to jde - jinak se p②ev⇧d jen na podobn⑦ znaky).¢¢¢ Z①V╱REM¢ =======¢¢ BTC je tzv. "FreeWare", neboli m
əe b⑨t libovoln❎ kop rov⇧n a pouə v⇧n dal③ mi osobami bez omezen , ov③em pod podm nkou, əe nebude nijak m❎n❎n (soubor BTC.ARC z
stane v p
vodn podob❎). Douf⇧m, əe se tenhle m
j mal⑨ progr⇧mek bude n❎komu hodit. Pokud by snad n❎kdo cht❎l n❎co sd❎lit autorovi, m
əe ps⇧t na adresu:¢¢ Ji② Bern⇧③ek¢ Na H②ebenk⇧ch 42¢150 00 Praha 5¢¢ Je mi l to, ale ə⇧dn⇧ Internetov⇧ adresa neexistuje! (V③echny zpr⇧vy se vlastn❎ d❎l na dv❎ skupiny: Prvn stoj i za klasick⑨ dopis, a druh⑦ nestoj ani za p⇧r hmat