 ^ 44$/3 str ^^^695Z)4I 44$/3^^^   +do p eetl tento uivatelsk` manu
l a po tato m	sta vid	 u mnoho monost	 vyuit	 pro 44$/3 0 esto jsme si dovolili dopsat tuto kapitolu ve kter; pop	eme nkolik fint a post eh kter; vyly z praktick;ho u	v
n	 44$/3u^^^^^^         0/:/2 ^^   44$/3 umoNuje pou	vat pouze programy nezasahuj	c	 do oblasti $/3 Rada rzn upravovan`ch program 	 en`ch na magnetofonov`ch kazet
ch je proto nepouiteln
^  0ou	vejte proto origin
ly program pro disketovou jednotku nebo programy z referenn	ch kazet 44$/3kter; existuj	 v !tari klubu 0raha^^^^^^^ !33%-",%2^^  -noho syst;mov`ch program se po naten	 nainstaluje na inicializan	 vektor $/3).) aby se po stlaen	 tla	tka 2%3%4 progam opt ohl
sil podobn jako "!3)# 0 i tom je dleit; aby se p ed nastartov
n	m programu vdy prov
dla i inicializace 44$/3u jinak bychom p ili o jeho periferie 6tina program to  e	 tak e inicializan	 adresu zap	ou do sebe jako adresu inicializan	ho podprogramu a do vektoru $/3).) zap	ou svoji vlastn	 startovac	 adresu 0 i n
vratu do 44$/3u pak vektor $/3).) opt obnov	 4	mto zpsobem je mono k operan	mu syt;mu p idat i dal	 periferii nap rozhran	 #%.42/.)#3 "4  !,)'2!& apod^  .ov
 periferie pak k inicializaci 44$/3u p id
 svoji inicializan	 rutinu a p ed
  	zen	 nap  "!3)#u nebo jin;mu 2/-
modulu pod kter`m ji meme novou periferii pou	vat $leit; je aby v inicializaci nov;ho za 	zen	 byly spr
vn nastaveny dleit; syst;mov; vektory p edev	 -%-,/ kter
 ud
v
 nejni	 voln` byte 2!- Fadresa  G% 0ro ty kte 	 by chtli takov; jednoduch; programy k 44$/3u p ipojovat je urena mal
 uk
zka spr
vn; inicializace programu v assembleru F!4-!3 ))^          ^          ,$! G$         .ejprve test zda je $/3 p 	tomen^          #-0 G^          "## ./$/3^          #-0 G^          "#3 ./$/3^          34! ).)4B      :
znam^          ,$! G#           inicializace^          34! ).)4B        $/3u^  ./$/3   ,$! ).)4,     .astaven	^          34! G#           inicializace^          ,$! ).)4(       programu^          34! G$           na vektor $/3).)^          ,$! G^          34! G^          ,32^          34! G^          34! G^  ).)4    *32 2%4         ).)#)!,):!#% $/3u nebo 243^          ,$! 4/0,      6,!34.I 02/'2!- nebo inicializace^          34! G%          za	n
 nastaven	m -%-,/ pop ^          ,$! 4/0(        jin`ch promnn`ch Fvdy po 2%3%4^          34! G%^          ^          ^  2%4     243             )nstrukce uvnit  programu^          ^          ^  4/0     %15 H           /znaen	 za
tku voln; 2!-^^^^  "!3)#^^  0 	kazy "!3)#u a p edev	m 452"/
"!3)#u n
m sk`taj	 pomrn irok; pole vyuit	 operan	ho syst;mu 44$/3 6 t;to kapitole bychom chtli uv;st nkolik zaj	mav`ch post eh z program
torsk; praxe uivatel disketov`ch jednotek kter; me vyu	t s 44$/3em t;m  kad`^  6echny periferie obsaen; v 44$/3u umoNuj	 v`pis adres
 e 4;to zaj	mav; funkce lze vyu	t podobn jako v profesion
ln	ch programech k nab	dce obsahu m;dia p ed zav
dn	m datov`ch soubor 452"/
"!3)# m
 pro v`pis adres
 e p 	mo speci
ln	 p 	kaz $)2 lze ho vak snadno nahradit i v !4!2) "!3)#u .
sleduj	c	 uk
zka 
sti programu umon	 zav;st znakovou sadu z nab	dnut;ho adres
 e^   ^ #("!30%%+F
0/+%  #("!3'2!0()#3 ^ 02).4 $)3+ /"3!(5*% 494/ 3!$9 ^ /0%. $H&.442!0  2%- /4%62%.) !$2%3!2%^ ).054 $G02).4 $G'/4/  2%- 690)3 !$2%3!2%^ #,/3% ^ 02).4 .!:%6 69"2!.% 3!$9  ).054 "G^ $G$$GF"G$GF,%.F$GB&.4^ 42!0 /0%. $G2%- /4%62%.) 69"2!.%(/ 3/5"/25^ &/2 ) 4/ ^ '%4 !0/+% #("!3HB)!2%- 5,/:%.) $!4 $/ 0!-%4)^ .%84 )^ 0/+% #("!32%- 0/5:% 0/ .!#4%.) #%,% 3!$9^ #,/3% 42!0 2%- :253%.) 42!0^   ^.a  
dku  je provedeno rezervov
n	 pamti pro znakovou sadu nejastji u	van`m zpsobem R
dky  a  provedou v`pis dares
 e disketov; jednotky  na obrazovku .a  
dku  je vytvo en	 specifikace n
zvu za 	zen	 a souboru kter` m
 b`t zaveden do pamti /d  
dku   je prov
dno vlastn	 zav
dn	 dat do vyhrazen;ho pamTov;ho prostoru 0okud p i zav
dn	 dojde k chyb nebude znakov
 sada na  
dku  p epnuta na nov zaveden
 data^   $al	 zaj	mavou funkc	 kterou vak lze vyu	t pouze u disketov`ch m;di	 tedy u diskety a 2!-
disku je tzv !00%.$ neboli p ipojen	 ji existuj	c	mu souboru 0 ipojov
n	 dat lze vyu	vat nap  u bin
rn	ch textov`ch a jin`ch soubor 0 evedeme p ipojen	 startovac	  
dky k v`pisu programu^^^^ 42!0 /0%. $02/',34^ 02).4 25.^ #,/3% ^ %.$^ %0%%+ F^ #,/3% ^ 02).4 #(9"! c%^ %.$^^^4akto upraven` program zaznamenan` p 	kazem ,)34$02/',34 se po zaveden	 p 	kazem %.4%2$02/',34 s
m spust	 protoe posledn	  
dek s p 	kazem nem
 	slo a proto nen	 uloen do pamti ale je okamit proveden 4	mto zpsobem lze vytv
 et mnoho zaj	mav`ch efekt avak nesm	me zruit 	slo kan
lu p es kter` se program zav
d	 4oto omezen	 lze snadno obej	t n
sleduj	c	m zpsobem 6yuijeme v`hody e 44$/3 n
m umon	 souasn otev 	t dva soubory na jednom m;diu^^ $)- ,GF^ /0%. $02/',34^ /0%. $5+!:+!,34^ 02).4 !0%%+F02).4 #(2GF#(2GF:!6!$)- 02/'2!- 5+!:+! 
 02/3)- #%+%*#(2GF0/+% !^ 42!0 ^ ).054 ,G02).4 ,G'/4/ ^ #,/3% ^ 02).4 25.^ #,/3% ^ %.$^^^4ento kr
tk` program vytvo 	 z v`pisu programu 02/' samostartuj	c	 program kter` se nav	c s
m na za
tku zav
dn	 p edstav	 !by bylo mono pou	t p 	kazu 02).4 pro v`pis titulku je nutno po t;to operaci obnovit obsah buNky  ve kter; je 	slo kan
lu ze kter;ho se zav
d	 program^^^  452"/
"!3)#^^4ento velice pou	van` a obl	ben` programovac	 jazyk n
m p in
	 drobn; komplikace p i pou	v
n	 s 44$/3 452"/
"!3)# vyu	v
 operan	 pamti v oblasti pod 2/-
/3 : tohoto dvodu nen	 mon; na !4!2)  8, pou	vat mal` 2!-
disk a 44$/3 vyaduje p i kad;m vol
n	 funkce $/3 zaveden	 souboru 44$50393 z kazety diskety nebo z
suvn;ho modulu :at	mco zaveden	 tohoto souboru ze z
suvn;ho modulu nein	 probl;my p i pou	v
n	 disketov; jednotky mus	me vloit spr
vnou disketu -ajitel; 8#
 se t	m zdr	 nejv	ce neboT mus	 vloit spr
vnou kazetu vyhledat soubor a pokat na jeho zaveden	 0roto doporuujeme majitelm !tari s operan	 pamt	  k" a kazetov`m magnetofonem n
kup 44$/3 v z
suvn;m modulu^  0/:/2 0od operan	m syst;mem 44$/3 je mon; pou	vat 452"/
"!3)#  a  6erze  kter
 je v souasn; dob nejroz	 enj	  na magnetofonov; kazet nelze pou	vat^ 452"/
"!3)# n
m umoNuje mnoho operac	 zapsat daleko elegantNeji ne !4!2) "!3)# d	ky roz	 en`m p 	kazm pro vstupn
v`stupn	 operace^^^ 0rvn	 uk
zku lze v 452"/
"!3)#u zapsat n
sledovn^    ^ #("!30%%+F
0/+% #("!3'2!0()#3 ^ 02).4 $)3+ /"3!(5*% 494/ 3!$9 ^ $)2 $H&.4^ ).054 .!:%6 69"2!.% 3!$9 "G^ $G$$GF"G$GF,%.F$GB&.4^ 42!0 /0%. $G^ "'%4 #("!3H^ 0/+% #("!3^ #,/3% ^   ^2ozd	l je patrn` na prvn	 pohled 452"/
"!3)# n
m ale samoz ejm umoNuje vyu	t i jin`ch uiten`ch p 	kaz *ejich pouit	 z
vis	 p edev	m na fantasii program
tora  .ap  p 	kazy W'%4 a  W054 n
m poskytnou =sporn; ukl
d
n	 	sel v plovouc	  
dov; 
rce p 	kazy ",/!$ a "25. poslou	 k zav
dn	 strojov`ch podprogram nebo grafick`ch dat p 	kazy "'%4 a "054 jsou vhodn; k z
znamu jak;koliv souvisl; oblasti pamti 2!- atd 6elmi zaj	mav
 je monost z
znamu obsahu vech promnn`ch na disketov; medium co me velmi usnadnit ladn	 programu 3ta	 na kl	ov
 m	sta programu um	stit p 	kaz $5-0 podle n
sleduj	c	 uk
zky^   ^ $5-0 $$5-0484^   ^ $5-0 $$5-0484^   ^4yto soubory n
m posl;ze umon	 prohl	et p 	mo i syst;m 44$/3 funkc	  #  v menu^^^^ 4-^^  #hceme
li vyu	t 44$/3u pro v`sup dat v monitoru 4- mus	me p ed pouit	m funkce inicializovat 44$/3 funkc	 53%2 na adrese  0otom meme prov
dt v`pisy program a datF$)3!33%-",%2 $5-0 i na disk 2!-
disk a kazetu ve form
tu 452"/4!0% 6znikne textov` soubor kter` je mono d
le vylepovat nkter`m editorem apod^^  *et zaj	mavj	 je spojen	 monitoru s 44$/3em pro z
znam dat v bin
rn	m form
tu 0op	eme zde alespoN p eveden	 programu ve form
tu 5niversal 452"/ do bin
rn	ho form
tu kter` lze zapsat na disketu nebo do ramdisku co je pro spolupr
ci nkolika program mnohem v`hodnj	 vzhledem k vt	 rychlosti p echodu mezi jednotliv`mi programy^^  0ostupujeme n
sledovn ^  
 zavedeme do po	tae monitor 4-^  
 funkc	 4"//4 zavedeme program uren` pro z
znam do bin
rn	ho form
tu^  
 zap	eme si po
ten	 koncovou a startovac	 adresu souboru Fmonitor vypisuje po
tek a d;lku startovac	 adresu si zjist	me v bufferu hlaviky 452"/ ^  
 pokud je program uloen na ni	ch adres
ch ne  FG mus	me ho jet funkc	 -/6% p esunout na vy	 adresu^^^  
 nyn	 zavedeme pomoc	 4"//4 operan	 syst;m 44$/3 6 p 	pad e m
me z
suvn` modul 44$/3 meme modul aktivovat stiskem tla	tka na modulu pomoc	 -/6% syst;m p esunout na adresu  FG Fd;lka je stejn
 jako adresa potom modul odpojit prohl	en	m nap  funkc	 -/.)4/2 na adres
ch 
 FG$
$&& *i p i prvn	m ten	 nkter; t;to adresy by se ml modul odpojit^  
 nyn	 funkc	 '/4/ odstartujeme operan	 syst;m 44$/3 3tartovac	 adresa verze  v z
suvn;m modulu je  FG&%^  
 jestlie se objev	 menu 44$/3u je ve v po 
dku a meme ji p 	mo vyu	t funkce  +  
 ").!29 3!6% .a dotaz   &2/-  zad
me adresu na kter; se nyn	 program nach
z	 "yl
li program p esunut monitorem na vy	 adresu zad
me pvodn	 adresu p i dotazu  ).4/  3tartovac	 adresu meme uv;st jak p i dotazu  ).)4  tak p i dotazu   25.  .akonec uv
d	me v`stupn	 za 	zen	 a n
zev souboru Fnap   $02/'#/-  *ako p 	ponu je u tchto soubor obvykl; uv
dt  #/-  nebo  02'  pop   %8%  ^^^  0robl;my se zav
dn	m program v syst;mu 5niversal 452"/^^/peran	 syst;m umoNuje sice zav;st libovoln` program ve form
tu 5niversal 452"/ nedovol	 n
m zav;st programy kter; ho sv`m um	stn	m p ekr`vaj	 tj kter; jsou um	stny pod adresou  FG% .kter; programy nelze nahr
vat na adresu vy	 vzhledem k jejich d;lce vtinu program je vak mono zav;st na vy	 adresu a teprve p ed sputn	m p esunout na spr
vnou adresu + tomu n
m poslou	 jednoduch
 p esouvac	 rutina kterou lze p ipojit na konec programu nap  monitorem 4-^^  .%734!24 ,$9 delka   $;lka programu ve str
nk
ch pamti^           ,$8 ^  ,//0     ,$! !$28   .ov
 adresa programu^           34! !$28   0vodn	 adresa programu^           ).8^           ".% ,//0^           ).# ,//0B   :v`en	 adresy ^           ).# ,//0B   :v`en	 adresy ^           $%9^           ".% ,//0^           *-0 34!24    3kok na pvodn	 startovac	 adresu^^$;lku vyj
d enou ve str
nk
ch pamti z	sk
me vydlen	m skuten; d;lky programu 	slem  a zaokrouhlen	m nahoru^ 4ato rutina slou	 pouze k jednomu p esunu smrem k ni	m adres
m a mla by proto b`t um	stna na konci programu 0rogram by ml b`t posunut alespoN o jednu str
nku tj  byte avak nen	
li to nutn; nep esouv
me ho a na konec pamti aby nezasahoval do 6)$%/
2!-^ 0 esunut` program doplnn` posunovac	 rutinou meme monitorem zaznamenat na kazetu ji s novou po
ten	 F!$2 a startovac	 F.%734!24 adresou a s novou d;lkou^^^) 0opis chybov`ch hl
en	 syst;mu 44$/3^^  6 t;to kapitole je uveden strun` p ehled chybov`ch hl
en	 t`kaj	c	ch se pr
ce s operan	m syst;mem^^^  	slo  chyby        popis chyby^  dec    hex^

































































^                 .epostauj	c	 2!- pro kop	rov
n	^                 "yl p eten posledn	 byte souboru .
sleduje^                    p 	znak konce souboru F%/&^                 #hybn` vstup 	seln; hodnoty^               /perace byla p eruena kl
vesou "2%!+^               0okus o otev en	 ji otev en;ho kan
lu )/^               0okus o osloven	 za 	zen	 kter; nebylo^                    zaps
no do tabulky (!4!"3^               +an
l je otev en pouze pro v`stup^               #hybn` kOd povelu^               +an
l nen	 otev en^               #hybn; 	slo kan
lu v povelu )/^               +an
l byl otev en jen pro ten	^               "ylo dosaeno konce souboru F%/&^               :
znam u 	znut "yla tena del	 vta ne^                    je maxim
ln	 d;lka vty pro #)/^       !        :a 	zen	 se v asov;m limitu neozvalo^       "        :a 	zen	 nemohlo odpovdt v dsledku^                    chybn`ch parametr z po	tae^       #        3elh
n	 s;riov; komunikace -ohlo vzniknout^                    zastaven	m magnetofonu nebo p eruen	m^                    sign
lov; cesty^       %        0o	ta nestail vas odpovdt za 	zen	^                    na seriov; sbrnici^       &        #hyba v kontroln	m soutu dat^               :a 	zen	 nen	 schopno vykonat platn` povel^               :a 	zen	 nevykon
v
 poadovanou operaci^       !        #hybn; 	slo disketov; jednotky^       !        0 	li mnoho souasn otev en`ch soubor^       !        6echny sektory jsou ji obsazeny^       !        .esouhlas	 	slo souboru v p eten;m sektoru^       !        #hybn` n
zev souboru Fneplatn; znaky^       !        0okus o jin` p 	stup ne ten	 u blokovan;ho^                    souboru^       !        .eplatn` povel pro tuto periferii^       !        6 adres
 i ji nen	 m	sto pro dal	 soubor^       !!        0oadovan` soubor nebyl nalezen^       !#        0okus o p ipojen	 dat k souboru form
tu^                    $/3 ^       !$        .e=spn` pokus o form
tov
n	^       !&        0okus o zaveden	 jin;ho ne bin
rn	ho^                    souboru^^^^)) &/2-A4 ",/+5 :!RI:%.I 452"/ 4!0%^^byte  n
zev           v`znam^
































































^      .",          	slo bloku ukl
d
 se p 	mo na adresu^                     G"^      "34!4        status bloku odpov	d
 !58 p i z
znamu^    "94, "94(   poet byte v bloku 
 maxim
ln  "^                    .astaven	m bitu  "94( uren konec souboru^                   F%/&^    4-0 4-0   rezervov
no pro 44$/3 v^  .!-%         jm;no souboru^ %84%.$%2     popisn
 
st jm;na souboru^ $!4!          vlastn	 data v d;lce max  "^ ^  #(#+          kontroln	 souet bloku^^6lastn	 ten	 prob	h
 p es adresu  G# : t;to adresy se p esouv
 p 	mo  byte bloku na adresu  G" $o bufferu se tedy na	taj	 byte  a  +ontroln	 souet se prbn s	t
 v registru na adrese  G a porovn
v
 se s posledn	m nahran`m bytem bloku co je #(#+ kter` se opt neukl
d
 do bufferu *eden blok 44 m
 tedy na magnetofonov;m p
sku  " ale do bufferu se ukl
d
 pouze  "^^^^)))           &5.+#% *%$./4,)6Y#( 3%+4/2\ .! $)3+%4L^^sektor     funkce^






























































^
        "//4 soubor^
      datov; soubory^        64/#  mapa voln`ch sektor do sektoru 	slo ^
    $)2%#4/29 
st rezervovan
 pro adres
  +ad` soubor^           m
 vyhraeno  byte -axim
ln je mono uloit ^           soubor3loen	 $)2%#4/29 pro jeden soubor^            "        34!453 bit   soubor zruen^                                   soubor aktivn	^                                   soubor uzamen^                               nevyuity ^                                 typ souborunastaven	 bitu ^                                   pro $/3  a kompatibiln	^^            "     d;lka souboru v sektorech^            "     po
ten	 sektor^           
 "    n
zev souboru^           
 "   popisn
 
st jm;na souboru^
   datov; sektory^       64/#  mapa voln`ch sektor od sektoru  do ^^.a rozd	l od $/3  vyu	v
 44$/3 i sektor  co zvyuje poet vyuiteln`ch sektor na disket v roz	 en; hustot na  sektor $isketu takto naform
tovanou pak um	 v pln; m	 e vyu	t i zm	nn` $/3 ^^^               3eznam doporuen; literatury ^^     *and	k 0       0 	ruka uivatele disketov; jednotky^                     0 	loha :!+ 8) 0raha ^     2ichter *      452"/  
 syst;m zrychlen;ho p enosu^                     dat mezi po	taem !4!2) 8,8% a kazetov`m^                     magnetofonem^                     0 	loha :!+ )) 0raha ^    +olektiv *2#     -onitor 4- 
 manu
l^                     *2# 0raha ^        
            -anu
l k disketov`m operan	m syst;mm^                     $/3  a $/3 ^                     0 eklad manu
lu k disketov; jednotce ^    /strovski &     452"/
"!3)# interpreter^                     0 eklad :!+  0raha^    2ichter *       452"/
"!3)#  a 5niversal 452"/ :!+ ^                     0raha^                     -anu
l k !tari "asic^^^ 44$/3 konec  d	lu^^