Historia komputerów i nośników do zapisywania danych jest stosunkowo krótka, jednak dość dynamiczna. Chociaż mógłbym zacząć artykuł od kart dziurkowanych, które zostały wynalezione w 1832 roku, by zapisywać informacje, to jednak chciałbym się skupić na nośnikach, na których zapisywane były gry komputerowe, a pierwszym z nich były właśnie taśmy magnetofonowe. W tym artykule postaram się w prosty sposób wyjaśnić, jak gry były zapisywane w postaci audio oraz jak komputer odczytywał taki sygnał. Dodam też, że na potrzeby artykułu starałem się w jak najprostszy sposób zobrazować proces zapisu i przetwarzania danych na taśmie. Jeśli ktoś miałby ochotę zagłębić się w ten temat, na końcu artykułu umieściłem referencje do wszystkich tekstów źródłowych, które posłużyły mi do napisania tego artykułu.

Ten czip zdefiniował muzykę ośmiobitową

Cem Tezcan

Zacznijmy od tego, że kasety, które używane były do zapisywania gier na Commodore PET, VIC oraz 64 nie różniły się niczym od kaset z muzyką sprzedawanych w sklepach muzycznych. Stąd łatwo było skopiować grę z jednej kasety na drugą, co było dość popularną praktyką w Polsce na początku lat 90. Miało to swoje zalety jak i wady. Kaseta magnetofonowa jest stosunkowo powszechnym i dostępnym nośnikiem. Jest także tania w produkcji i dystrybucji, a sposób przenoszenia danych z jednej taśmy na drugą jest bardzo prosty, o ile ma się dwa odtwarzacze kaset z możliwością nagrywania. Ta prostota niesie za sobą jednak konsekwencje praw autorskich w przypadku produktów komercyjnych. Niemniej zakładam, że niemal każdy posiadacz Commodore zakupił przynajmniej jedną taśmę z grami od smutnego pana na bazarze. Oprócz kwestii praw autorskich dochodziły również aspekty związane z wytrzymałością taśm. Przechowywane w niekorzystnych warunkach mogły ulec fizycznemu uszkodzeniu, co również wpływało na jakość zapisanego na nich materiału.

Taśmy magnetyczne nadal wykorzystywane są w przemyśle jako jedna z najlepszych metod archiwizowania danych.

Jak wygląda jednak proces zapisywania danych na taśmie magnetofonowej oraz co dzieje się po włożeniu kasety z grą do odtwarzacza Commodore, Datasette? Po przewinięciu taśmy do początku i wciśnięciu przycisku „Play” system oczekuje tak zwanego nagłówka nagranego na taśmie, który informuje system że w tym miejscu nagrany został program. Dopiero po nim system zaczyna ładować dane nagrane na taśmie wybrzmiewając „melodię”, którą zna każdy użytkownik Commodore 64 w postaci szumu.

Metod zapisu danych na taśmę magnetofonową jest kilka. Jedną z nich jest schemat modulacji szerokości impulsu (Pulse Width Modulation – PWM). W ten sposób dwie różne częstotliwości przedstawiane są jako zero lub jeden. PWM odczytywał jedynkę jako wyższą częstotliwość, a zero jako niższą. W przypadku metody zapisu CUTS (Computer User Tape System) jedynka reprezentowana jest jako ton o częstotliwości 2840 Hz (lub 2400 Hz, jak podają inne źródła), zero zaś reprezentowane jest jako ton niższy o częstotliwości 1200 Hz.

gry taśma dźwięk 2

Metoda Tone Burst dla odmiany używała jednego sygnału o obojętnie jakiej częstotliwości do reprezentacji jedynki oraz braku sygnału – ciszy – do reprezentacji zera. Metod zapisu jest więcej, jednak wszystkie działają na podobnej zasadzie: jedynka – wysoki ton, zero – brak lub niższy ton. Różnica między nimi polegała na kompromisie pomiędzy długością zapisanego materiału a jego jakością.

gry taśma dźwięk 1

Ile takich informacji można zmieścić na kasecie? W przeciwieństwie do kaset z muzyką ilość informacji zapisanych w postaci programów komputerowych nie była mierzona w minutach. Nie była także mierzona w bitach czy bajtach, lecz w tak zwanych bodach (eng. Baud). Magnetofon Commodore 1530 (Datasette) odczytywał 300 bodów na sekundę, co oznacza, że w ciągu sekundy sygnał może zmienić się do 300 razy. Różne metody zapisu danych (PWM, Tone Burst etc.) dodatkowo powodowały, że pojemność danych na sekundę nagrania była zmienna. Każdy sygnał bowiem może przenieść ze sobą więcej niż jeden bit danych, stąd znacznie łatwiej mierzyć pojemność informacji w bodach, aniżeli w bitach.

Kasety, które używane były do zapisywania gier na Commodore PET, VIC oraz 64 nie różniły się niczym od kaset z muzyką sprzedawanych w sklepach muzycznych.

Program zapisywany jest na taśmie dwukrotnie. Po wspomnianym wyżej nagłówku system wczytuje pierwszą wersję programu, po czym pokrywa ją drugą wersją dokładnie takiego samego kodu. Jeśli obydwie wersje są identyczne, program wczytany został prawidłowo. W przeciwnym razie na końcu nagrania ukaże nam się nielubiany przez wszystkich komunikat „LOAD ERROR”. Dlaczego programy zapisywane są dwukrotnie na taśmie? Wynika to z mechaniki napędu taśmowego, która obraca się czasem minimalnie szybciej lub wolniej oraz ze wspomnianej na początku podatności taśmy na uszkodzenia. Jeśli podczas wczytywania pierwszej wersji system wykryje błąd, wówczas może go nadpisać z drugiego nagrania. Datasette posiada nie tylko wbudowany konwerter sygnału analogowego na cyfrowy, ale również filtr audio, by móc konwertować sygnał cyfrowy na analogowy (i vice versa).

I jak wszyscy posiadacze „komodorka” pamiętają, proces wczytywania gry był czasochłonny. Zazwyczaj zajmował kilka minut, a i tak przez wspomniane wyżej różne czynniki nierzadko wczytywanie kończyło się komunikatem „LOAD ERROR”. Stąd popularną metodą szybszego wczytywania programów były Turbo Loadery, które przyspieszają ładowanie programu, zagęszczając tym samym informacje o programie zapisane na taśmie. Taka metoda zapisu różni się nieco od standardowej formy, gdzie zero i jeden reprezentowane są jako dwa różne tony. Turbo Tape zapisuje zero i jeden tym samym sygnałem, który jednak różni się długością wybrzmiewania. Taka metoda pozwala na znacznie lepsze „skompresowanie” programu na taśmie, zmniejszając czas ładowania, a tym samym zwiększając pojemność na taśmie. Każdy kij ma jednak dwa końce i taka metoda również ma swoje wady. W przeciwieństwie do standardowego zapisu, Turbo Save nie zapisuje programu dwukrotnie, stąd jeśli przy ładowaniu program natrafi na błąd, nie może go później nadpisać. Prawo Murphy’ego w najczystszej postaci.

(Nie)doskonałe MIDI. Początek muzyki na komputerach stacjonarnych

Mimo 70 lat istnienia na rynku i nowszych metod zapisu danych, taśmy magnetyczne nadal wykorzystywane są w przemyśle jako jedna z najlepszych metod archiwizowania danych. Pomijając prędkość zapisywania/odczytywania informacji na tym nośniku, dobrej jakości nowoczesna taśma potrafi pomieścić nawet kilkaset terabajtów danych. Co więcej, mimo swojej wrażliwości na czynniki zewnętrzne, taśma nadal jest trwalsza niż wrażliwe dyski twarde. Mam nadzieję, że pomogłem nieco zrozumieć, w jaki sposób wygląda zapis i odczyt danych na taśmie każdemu, kto z jakiegokolwiek powodu chciałby wydać grę na commodore 64 lub zwyczajnie chciał dowiedzieć się, jak Commodore wczytywał gry z taśm magnetofonowych.

Teksty źródłowe:

Czytaj więcej:

Współpracownik

Marcin Maślanka

Kompozytor, sound designer, klawiszowiec, amator technologii. Oprócz tworzenia muzyki i dźwięków do gier i filmów, interesuje go również inżynieria dźwięku na żywo i wszystkie technologiczne aspekty związane z jego przetwarzaniem.