Iron Turbo
From Atariki
System turbo opracowany przez Dariusza Rogozińskiego przeznaczony dla użytkowników magnetofonów, rozwiązanie czystko programowe teoretycznie nie wymagające sprzętowej przeróbki magnetofonu. Wymagał naprawdę dobrze "zestrojonego" magnetofonu (tzn. bardzo dobrze działającego i stabilnego demodulatora FSK) , rzadko który z firmowych magnetofonów (w szczególności XC12, CA12 lub XCA12) był w stanie sprostać wymaganiom tegoż systemu, być może dlatego właśnie program nie zdobył szczególnej popularności wśród użytkowników. Wydaje się jednak że zewnętrzne interfejsy przeznaczone dla dowolnego magnetofonu nie miały problemu z współpracą z tym systemem turbo. Programy zapisane w tym standardzie bardzo dobrze wczytywały się za pomocą interfejsów opartych dyskryminatorach częstotliwości, a nie na klasycznych demodulatorach FSK opartych o filtry pasmowe, które to wymagały naprawdę precyzyjnego zestrojenia jeżeli miały pracować stabilnie przy prędkości 1200bps. Nagrania w tym systemie były bezproblemowo wczytywane również przez interfejs przeznaczony dla systemu Turbo 2600.
Oprogramowanie przeznaczone dla tego systemu było transmitowane w audycji Radiokomputer. Pierwszy z programów "Iron Turbo" był wyemitowany jako "prezent gwiazdkowy" dla słuchaczy Radiokomputera w grudniu 1988 roku.
Spis treści |
Oprogramowanie
Dla tego systemu turbo opracowano programy umożliwiające konwersję programów typu Boot lub binarnych plików Atari DOS:
- Iron Turbo - program kopiujący kaseta/kaseta umożliwiał konwersję pliku wczytanego z kasety na format Iron Turbo
- Iron Turbo INIT/RUN - program ten zmienia sposób uruchamiania programów binarnych. Należy nim skopiować tylko te programy, które po wczytaniu do kopiarki IRON TURBO automatycznie się uruchamiają.
- Disk Iron Turbo - program kopiujący który umożliwiał kopiowanie programów z dyskietek i zapisanie ich na taśmie w standardzie "Iron Turbo". Program odczytywał dyskietki w formacie formacie Atari DOS. Po jego uruchomieniu wyświetlany był katalog dysku, a każdej pozycji w katalogu nadawana została litera, której wybór powodował zapis wskazanego programu w formacie IRON TURBO na taśmę.
Technikalia
Przyspieszenie transmisji osiągnięto dzięki zastosowaniu trzech technik:
- pierwsza z nich to zwiększenie prędkości transmisji z 600bps do 1200bps
- druga z zastosowanych technik to zapis programu w jednym długim bloku (z pomięciem przerw między rekordami)
- trzecia z zastosowanych technik to kompresja danych (RLE), którą autor w krótkiej instrukcji do programu nazwał "kondensacją". Zastosowany algorytm RLE stosuje dwa znaczniki, które odpowiednio określają ile powtórzeń bajtu zero następuje, lub ile powtórzeń określonego bajtu następuje. Podobny mechanizm kompresji stosował Turbo Copy 3/4.
Programy kopiujące dla systemu Iron Turbo, prezentowały dość ciekawe podejście dotyczące konwersji programu na format wynikowy, mianowicie program kopiujący umiejscawiał się w pamięci pod systemem operacyjnym i wczytywał wskazany program do pamięci nie jako plik danych, ale traktował wczytywany program tak jakby był typowym loaderem plików binarnych (a także BOOT) uruchamiał on wszystkie segmenty INIT, przy czym nie uruchamiał on wczytanego programu po zakończeniu wczytywania, natomiast przechodził do kompresji całej zawartości pamięci wcześniej opisanym algorytmem RLE. Z następnie tak skompresowany blok pamięci zapisywał jako jeden ciągły blok danych (oczywiście z prędkością 1200bps). Ponieważ niektóre gry i programy uruchamiały się używając segmentów INIT zamiast RUN, ich wczytanie z użyciem kopiera Iron Turbo/Disk Iron Turbo powodowało uruchomienie gry zamiast przejście do procedur kompresji i zapisu danych na taśmie. Właśnie dla takich programów został opracowany program "Iron Turbo INIT/RUN", który to zamieniał ostatni segment INIT na RUN.
Tego typu podejście do wczytywania programu do pamięci i jego kompresji prezentował Cruncher 4.64 który to powstał dopiero w 1990 roku, wszystko więc wskazuje na to że właśnie "Iron Turbo" był pierwszym tego typu programem, który prezentował tego typu podejście do kompresji programu, który wcześniej został wczytany do pamięci w docelowe miejsca, łącznie z uruchamianiem segmentów INIT. Później powstałe programy kompresujące, takie jak wcześniej wspominany Cruncher 4.64, czy też Cruncher 5.0 a także Code3 Cruncher opierały się na podobnym mechanizmie ładowania i uruchamiania segmentów INIT wskazanego do kompresji programu, jednak jak się okazuje to właśnie "Iron Turbo" było prawdopodobnie pierwszym programem w którym zastosowano tą nietypową jak na czas powstania programu technikę. Można powiedzieć że był to pomysł innowacyjny i dość pionierski jeżeli brać pod uwagę rok powstania tegoż oprogramowania. Na chwilę obecną wydaje się iż był to pierwszy program stosujący tego typu rozwiązania techniczne.
Odnośniki
- przykład ładowania programu z użyciem systemu Iron Turbo (film na YouTube nagrany z użyciem realnego sprzętu)