2.5. Loader58

Loader58 je obdobou svojho predchodcu, zvyšuje však prenosovú rýchlosť o 50%. Ako už bolo spomenuté, pri tejto rýchlosti je nemožné spracovať prijatý bajt a uložiť ho kdekoľvek do pamäte, lebo na zmenu mapovania už nezostáva voľný čas. Preto Loader58 môže pracovať len s pamäťou, ktorá nekoliduje so vstupným portom. Port je obsluhovaný v prípade, že A13, A14 a 15 sú na log. 1. Zvyšná časť pamäte je voľná. Do tejto časti teda môže Loader58 ukladať dáta.

Pri maximálnej optimalizácii chýba na plnohodnotný účel len asi 4T, ale kde ich ušetriť?

Loader58 je len na experimentálne účely. Použiť je ho možné aj s programom OndraLink, treba však zmeniť názov súbora zavádzača a prenosový index (na hodnotu 5).

Všetky čítacie cykly boli nahradené po sebe nasledujúcimi čítaniami portu s následným spracovaním. Tým došlo k skráteniu nevyhnutných časov čítania, na druhú stranu však narástla rutina na svojej dĺžke asi o 50 bajtov. Ale poviete si: čo je dnes 50 bajtov? Na celkovej dĺžke prenosu sa to prejaví zanedbateľne.

Zdrojový kód rutiny zavádzača je v prílohe.

JetPac prejde do počítača aj pri rýchlosti 57 600 Bd.

A to už za 6 sekúnd.

Pri rýchlosti 57 600 Bd je časovanie už na hranici možností. Detekcia start-bitu je najkritickejším miestom, trvá 21T, čo je viac ako polovica štandardnej dĺžky jedného bitu. Nasledné časovanie je kompromisom, aby bol bit správne načítaný v prípade, že dôjde k detekciu start-bitu na prvý i druhý pokus.

Dva príklady, keď k detekcii start-bitu dôjde blízko jeho začiatku. V prvom prípade bol začiatok

start-bitu tesne minutý (a sken musel byť opakovaný), v druhom len tesne predchádza skenu. Následné skeny ďalších bitov sa blížia k hranám a aj malý rozdiel vo frekvencii oscilátora môže spôsobiť nesprávne načítanie jednotlivých bitov.