<para>Siin kirjeldatakse Hayesi käsustikku. Enamik modemeid järgib suurel määral siintoodud käske. Kui oled oma modemi käsiraamatu kaotanud või kui sul seda polegi olnud, võib siinne lisa päris kasuks tulla. Mina näiteks leidsin siit, kuidas oma modemi heli välja lülitada: <command>ATM0</command> -- ja lõpuks ometi valitses vaikus!</para>
<para>Modemi initsialiseerimisstring koosneb reast käskudest. See valmistab modemi ette suhtlemiseks, määrates selliseid asju, nagu helistamisrežiim, ooteajad, hõivatud signaali tuvastamine ja veel palju muud. Uuemad modemikommunikatsiooni rakendused lähtestavad initsialisatsioonistringi juba sinu eest vastavalt sellele, millise menüüvõimaluse valid, mille sisse lülitad &etc;.</para>
<para>Aastaid kujutasid Hayesi modemid endast standardit. Kuigi modemite tootjaid on tunduvalt juurde tulnud, rakendab enamik siiski vähemalt osaliselt Hayesi standardit. Siin toome ära kõige olulisema osa Hayesi käskudest (neid nimetatakse ka <quote>AT</quote> käskudeks). Hayesi käsustikku võib jagada neljaks:</para>
<listitem><para><quote>&</quote> (ampersand) ja suurtäht ning number. See kujutab endast elementaarkäsustiku laiendust. Näide: <command>&M1</command>. Pane tähele, et <command>M1</command> ja <command>&M1</command> ei ole mitte üks ja sama.</para></listitem>
<listitem><para>Tavaliselt algavad längkriipsu (<quote>\</quote>) või protsendimärgiga (<quote>%</quote>). Need käsud erinevad tugevasti vastavalt modemite tootjate suvale, mistõttu siin on neist ära toodud vaid mõned.</para></listitem>
<listitem><para><command>S<replaceable>r</replaceable>=<replaceable>n</replaceable></command>, kus <replaceable>r</replaceable> on muudetava registri number ja <replaceable>n</replaceable> omistatav uus väärtus.</para>
<para><quote>Register</quote> tähendab arvutiinimeste keeles spetsiaalset füüsilist asukohta mälus. Modemitel on tavaliselt natuke omaenda mälu. Seda käsustikku kasutatakse väärtuste sisestamiseks konkreetsesse registrisse (ehk paika mälus). Register salvestab erilise <quote>muutuja</quote>, mida kasutab modem ja kommunikatsioonitarkvara. Näiteks <command>S7=60</command> annab arvutile korralduse <quote>Määra register #7 väärtuseks 60</quote>.</para></listitem>
<note><para>Kuigi suurem osa käskudest on defineeritud tähe ja numbri kombinatsiooniga (<command>L0</command>, <command>L1</command> &etc;), on nulli kasutamine lisavõimalus. Toodud näite korral on <command>L0</command> sama, mis <command>L</command>. Pea seda alltoodud tabelit uurides hästi meeles!</para></note>
<listitem><para>Sunnib tarkvara sekundiks pausi tegema. Käsku <command>,</command> võib anda ka mitu korda järjest. Näiteks <command>,,,,</command> sunnib tarkvara tegema neljasekundilise pausi. (Pausi kestvust valitseb register <varname>S8</varname>).</para></listitem>
<listitem><para>Saadab modemile lõpetava kelgu tagastamise märgi. See on juhtkood, mida enamik kommunikatsioonitarkvarast tõlgendab <quote>kelgu tagastamisena</quote>.</para></listitem></varlistentry>
<entry><command>E0</command> või <command>E</command></entry>
<entry>Ilma kajata</entry>
<entry>Vastuste kaja ei saadeta arvutile</entry>
</row>
<row>
<entry><command>E1</command></entry>
<entry>Kaja</entry>
<entry>Saadab käsud ka arvutile (nii et kasutaja näeb, mida kirjutab)</entry>
</row>
<row>
<entry><command>H0</command></entry>
<entry>Hargilolek</entry>
<entry>Hargil - lahutatud</entry>
</row>
<row>
<entry><command>H1</command></entry>
<entry>Hargilolek</entry>
<entry>Hargilt ära</entry>
</row>
<row>
<entry><command>I0</command> või <command>I</command></entry>
<entry>Info või päring</entry>
<entry>See käsk sõltub väga tugevasti mudelist. <command>I0</command> tagastab tavaliselt numbri või koodi, suuremad numbrid sageli ka huvitavamat infot.</entry>
</row>
<row>
<entry><command>L0</command> või <command>L</command></entry>
<entry>Valjuhääldi helitugevus. Helitugevuse reguleerimise nuppudega modemitel neid võimalusi ei kasutata.</entry>
<entry>Väljas või nõrk heli</entry>
</row>
<row>
<entry><command>L1</command></entry>
<entry></entry>
<entry>Nõrk heli</entry>
</row>
<row>
<entry><command>L2</command></entry>
<entry></entry>
<entry>Keskmine heli</entry>
</row>
<row>
<entry><command>L3</command></entry>
<entry></entry>
<entry>Vali heli</entry>
</row>
<row>
<entry><command>M0</command> või <command>M</command></entry>
<entry>Valjuhääldi väljas</entry>
<entry><command>M3</command> on ka üsna levinud paljudel brändidel</entry>
</row>
<row>
<entry><command>M1</command></entry>
<entry></entry>
<entry>Valjuhääldi sees kuni kaugpartneri tuvastamiseni (&ie; teise modemi kuulmiseni)</entry>
</row>
<row>
<entry><command>M2</command></entry>
<entry></entry>
<entry>Valjuhääldi on alati sees (andmete heli on kuulda pärast signaali CONNECT)</entry>
</row>
<row>
<entry><command>N0</command> või <command>N</command></entry>
<entry>Tagasiside kiirus</entry>
<entry>Tagasiside ainult <link linkend="hayes-s37"><varname>S37</varname></link> määratud kiirusel</entry>
</row>
<row>
<entry><command>N1</command></entry>
<entry></entry>
<entry>Tagasiside suurima kiirusega, mis on suurem kui <link linkend="hayes-s37"><varname>S37</varname></link> määratu</entry>
</row>
<row>
<entry><command>O0</command> või <command>O</command></entry>
<entry>Naaseb võrgurežiimi</entry>
<entry>Vaata ka <link linkend="hayes-basic-x1"><command>X1</command></link>, sest valimistooni tuvastus võib olla aktiveeritud.</entry>
</row>
<row>
<entry><command>O1</command></entry>
<entry></entry>
<entry>Naaseb võrgurežiimi pärast taandamisjada</entry>
</row>
<row>
<entry><command>Q0</command> või <command>Q1</command></entry>
<entry>Vaikne režiim</entry>
<entry>Väljas - näidatakse tulemuskoode, kasutaja näeb vastuseid käskudele (⪚ <computeroutput>OK</computeroutput>)</entry>
</row>
<row>
<entry><command>Q1</command></entry>
<entry>Vaikne režiim</entry>
<entry>Sees - tulemuskoode ei näidata, kasutaja vastuseid ei näe.</entry>
<entry>Salvestab väärtuse <replaceable>r</replaceable> registris S<replaceable>n</replaceable></entry>
</row>
<row>
<entry><command>V0</command> või <command>V</command></entry>
<entry>Selgitav režiim</entry>
<entry>Tulemuskoodid arvudena</entry>
</row>
<row>
<entry><command>V1</command></entry>
<entry></entry>
<entry>Tulemuskoodid inglise keeles (⪚ <computeroutput>CONNECT</computeroutput>, <computeroutput>BUSY</computeroutput>, <computeroutput>NO CARRIER</computeroutput> &etc;)</entry>
</row>
<row>
<entry><command>X0</command> või <command>X</command></entry>
<entry>Tavaliselt lisab nii hõivatud signaali kui kõnetooni tuvastamise</entry>
</row>
<row>
<entry><command>Z0</command> või <command>Z</command></entry>
<entry>Lähtestab</entry>
<entry>Lähtestab modemi salvestatud väärtustele. Mitme profiili puhul kasuta vastavalt <command>Z0</command>, <command>Z1</command> &etc; See on sama, mis <command>&F</command> tehase vaikeväärtus modemitel, millel puudub <acronym>NVRAM</acronym> ("non-volatile" mälu ehk selline mälu, mis hoiab andmeid ka voolu all olemata)</entry>
<entry>Lubab automaattaandamise, kuid lahutab kõne, kui liin ei parane registris <link linkend="hayes-s7"><varname>S7</varname></link> määratud aja jooksul</entry>
<entry>Mõned modemid lahutavad, kui <acronym>DTR</acronym> läheb sisselülitatud olekust väljalülitatud olekusse (tavaliselt on see vaikimisi sees)</entry>
<entry>Lahutab, lähtestab modemi ja naaseb käsurežiimi <acronym>DTR</acronym> järgi</entry>
</row>
<row>
<entry><command>&F0</command> või <command>&F</command></entry>
<entry>Tehase vaikeväärtused</entry>
<entry><para>Üldised Hayesiga ühilduvad vaikeväärtused. </para><para>Tavaliselt on seda kasulik initsialiseerimisstringis tarvitada, sest <command>&F1</command>-<command>&F3</command> seadistused võivad modemiti erineda ning tõeliselt suuri ühendusprobleeme tekitada (sest sa ei tea kunagi täpselt, mida õigupoolest teeb tootja X <command>&F2</command>).</para><para>Teisalt maksab proovida ka teisi allpool toodud võimalusi: paljud probleemid lahenevad, kui lisada initsialiseerimisstringi lihtsalt <command>&F2</command> või midagi sellist. Kui sa aga alles lood initsialiseerimisstringi, on parem alustada lihtsalt käsuga <command>&F</command> ja mitte kasutada <quote>kohandatud</quote> vaikeväärtuste vormi.</para></entry>
</row>
<row>
<entry><command>&F1</command></entry>
<entry>Tehase vaikeväärtused</entry>
<entry>Tehase vaikeväärtused IBM <acronym>PC</acronym>-ga ühilduvale kasutajale</entry>
<entry><command>&S0</command> või <command>&S</command></entry>
<entry><acronym>DSR</acronym> tegevus on valitud</entry>
<entry>Alati sees (vaikimisi)</entry>
</row>
<row>
<entry><command>&S1</command></entry>
<entry><acronym>DSR</acronym> tegevus on valitud</entry>
<entry>Järgib <acronym>EIA</acronym> spetsifikatsiooni (aktiivne kandja tooni järgimine, kuni kandja kaob)</entry>
</row>
<row>
<entry><command>&T0</command> või <command>&T</command></entry>
<entry>Enesetest</entry>
<entry>Mudelipõhine enesetest mõne modemi puhul</entry>
</row>
<row>
<entry><command>&U0</command> või <command>&U</command></entry>
<entry>Trellis-koodi modulatsioon</entry>
<entry>Lubab V.32 <acronym>TCM</acronym></entry>
</row>
<row>
<entry><command>&U1</command></entry>
<entry>Trellis-koodi modulatsioon</entry>
<entry>Keelab V.32 <acronym>TCM</acronym></entry>
</row>
<row>
<entry><command>&V0</command> või <command>&V1</command></entry>
<entry>Vaatab aktiivseid</entry>
<entry>(ja sageli salvestatud) seadistusprofiili seadistusi (või <command>ATI4</command>)</entry>
</row>
<row>
<entry><command>&W0</command> või <command>&W</command></entry>
<entry>Salvestab profiili</entry>
<entry><acronym>NVRAM</acronym> korral (<command>&W0</command>, <command>&W1</command> erinevate profiilide puhul). Mõningaid seadistusi ei saa salvestada. Neid sageli ei näita <command>&V</command> või <command>ATI4</command></entry>
</row>
<row>
<entry><command>&Y0</command> või <command>&Y</command></entry>
<entry>Valib voolu sisselülitamisel laaditava seadistuse</entry>
<entry>Laadib profiili 0 (vaikimisi)</entry>
</row>
<row>
<entry><command>&Y1</command></entry>
<entry>Valib voolu sisselülitamisel laaditava seadistuse</entry>
<para>Otseühendus ongi lihtsalt otsene ühendus ilma igasuguse veaparanduse või andmetihenduseta. Sellisel juhul peaksid õigupoolest arvuti-modemi ja modemi-modemi kiirus olema ühesugused.</para>
<para>Normaalne ühendus kasutab (tark- või riistvaralist) vookontrolli saadetavate või vastuvõetavate andmete puhverdamiseks, et modem saaks andmeid saata teistsuguse kiirusega, kui neid saadab või võtab vastu arvuti. Näiteks arvuti võib saata andmeid kiirusega 57 kbps, kuid tihendust kasutades saadab modem vaid 28,8 kbps. Nii töötab enamik modemeid.</para>
<para>Usaldusväärne ühendus on normaalse ühenduse alaliik: kui mingil põhjusel ei saa andmetihendust või vookontrolli rakendada, ühendus katkestatakse (selles mõttes tagab taoline modem, et kõik ühendused on usaldusväärsed, sest kui nad seda ei ole, siis ühendus ju katkestatakse!)</para>
<para>Automaatselt usaldusväärne ühendus on enam-vähem sama, ainult et modem püüab usaldusväärse ühenduse loomiseks vajadusel uuesti läbi rääkida. Ka seda kasutab enamik modemeid.</para>
<para>Enamikul modemitel on kümneid või isegi sadu S-registreid, kuid ainult esimesed paarkümmend on enam-vähem standardsed. Neid muudetakse selliste käskudega, nagu <command>ATS<replaceable>n</replaceable>=<replaceable>N</replaceable></command> ja uuritakse selliste käskudega, nagu <command>ATS<replaceable>n</replaceable>?</command> (⪚ <userinput><command>AT</command> <command>S10</command><option>=70</option> <command>S1?</command></userinput> ütleb modemile, et lahutada ei tule 7 sekundi jooksul, kui teist modemit ei kuulda vastamas, ja tagastab viimati helistatud kordade arvu).</para>