„Płoń, maleńka” – tak odpalano silnik Apollo 11

Michał Tomaszkiewicz
11.07.2016 13:53
„Płoń, maleńka” – tak odpalano silnik Apollo 11 Fot. NASA

Kod źródłowy programu, który sterował komputerem misji Apollo 11 – pierwszego lądowania na Księżycu – został udostępniony w internecie wraz z oryginalnymi komentarzami twórców. Jak się okazało, udało im się przemycić całkiem sporo heheszków.

Żarty i żarciki trzymały się programistów zarówno w nazwach poszczególnych sekwencji, jak i w komentarzach do kodu, służących do określania jego zastosowania. Programiści stworzyli programy obsługujące moduł dowodzenia CM (w którym przebywali członkowie misji w czasie transferu pomiędzy Ziemia i Księżycem), modułem serwisowym SM oraz modułem księżycowym LM.

Za działanie poszczególnych konstrukcji odpowiadał Apollo Guidance Computer (AGC) – to właśnie programy nim sterujące zostały upublicznione.

Funkcja, która była odpowiedzialna za uruchamianie silników rakietowych w tym ostatnim została nazwana „BURN, BABY, BURN” –z komentarza wynika, że inspiracją był zwyczaj zapowiadania nowych, premierowych utworów przez DJ-a popularnej w latach 50-tych i 60-tych XX wieku rozgłośni radiowej.

Oprogramowanie zajmujące się obsługą przycisków, w jaki wyposażony był AGC, zyskał miano PINBALL GAME BUTTONS AND LIGHTS, w nawiązaniu do stołów do gry. Czy rzeczywiście podobieństwo istniało, można przekonać się oglądając film prezentujący działanie repliki komputera Apollo 11.

W kodzie źródłowym można także znaleźć nazwy i komentarze budzące niepokój – jak na przykład TRASHY LITTLE SUBRUTINE (mała tandetna funkcja) czy oznaczenie niektórych instrukcji jako „to tylko tymczasowe – mam nadzieję nadzieję nadzieję”.

Aplikacje sterujące zostały napisane w specjalnej wersji assemblera – języka programowania niskiego poziomu – która powstała w NASA z myślą o programie Apollo. Jego używanie wymagało dużych umiejętności i skupienia, jako że oznaczało pisanie instrukcja po instrukcji programu sterującego pracą poszczególnych systemów modułu mieszkalnego i lądownika.

Stosowane dziś języki programowania wysokiego poziomu znacznie ułatwiają pracę – pozwalają napisać aplikację w bardziej zrozumiałych dla ludzi komendach, a następnie podczas kompilacji są tłumaczone na instrukcje dla procesora.

To, co dziś można zmieścić w jednej linijce kodu, kiedyś musiałoby być napisane od podstaw w całości. Jak ogromne było to przedsięwzięcie, widać po zdjęciu pokazującym wydruk opracowanego programu i nadzorującej jego tworzenie Margaret Hamilton.

foto: NASA Fot. foto: NASA

Skany poszczególnych stron z tego stosu zostały udostępnione przez NASA w 2003 roku – na ich podstawie entuzjaści przepisali (a czasem, ze względu na nieczytelność danych, odtworzyli) całość programu.

Po udostępnieniu pełnej wersji kodu źródłowego razem z komentarzami twórców internauci nie mogli powstrzymać się od własnych żartów. Zgłoszono między innymi odkrycie błędu, który może doprowadzić do awarii zbiorników kriogenicznych (co było przyczyną kłopotów misji Apollo 13) – i przedyskutowano go na modłę dzisiejszych działów wsparcia IT („to problem sprzętowy, nie programowy, zgłoszenie zamknięte”).

Do oprogramowania dodano funkcję MATTDAMON, której zadaniem jest wyliczenie odpowiedniej trajektorii na Marsa.

A Wam udało się znaleźć coś fajnego w programie, który dostarczył ludzi na Księżyc?

Michał Tomaszkiewicz Redaktor antyradia
CZYTAJ TAKŻE
Logo 18plus

Ta strona zawiera treści przeznaczone tylko dla dorosłych jeżeli nie masz ukończonych 18 lat, nie powinieneś jej oglądać.