Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

Autor artykułu: mgr Jerzy Wałaszek

©2024 mgr Jerzy Wałaszek
I LO w Tarnowie

Dodatek C

Magnetofon kasetowy ATARI

Podrozdziały

Zamieszczone w tym dodatku omówienie magnetofonu kasetowego ATARI 410™ Program Recorder zawiera następujące tematy:

Jak działa magnetofon kasetowy ATARI

Struktura rekordów

Definicja bajtu

 System operacyjny ATARI zapisuje pliki w blokach o ustalonej długości z szybkością 600 bodów (fizycznych bitów na sekundę). Przy odczytywaniu i zapisywaniu danych pomiędzy komputerami ATARI 400/800 a magnetofonem ATARI Program Recorde używana jest transmisja asynchroniczna. Układ POKEY rozpoznaje każdy bajt danych w tej kolejności: 1 bit startowy (spacja), 8 bitów danych (0 = spacja, 1 = znak), następnie jeden bit stopu (znak). Bajt jest wysyłany/odbierany z bitem najmniej znaczącym jako pierwszym.

Dla znaku używana jest częstotliwość 5327 Hz. Dla spacji częstotliwość wynosi 3995 Hz. Format bajtu danych jest następujący:

A = Bit startu (spacja)
0-7 = Bity danych
B = Bit stopu (znak)

Definicja rekordu

Rekordy mają długość 132 bajtów. Rekord rozkłada się następująco: 2 znaczniki do pomiaru prędkości, bajt kontrolny, 128 bajtów danych i bajt sumy kontrolnej. Format rekordu pokazany jest poniżej:

1-szy i 2-gi znacznik

Każdy znacznik ma wartość $55 (szesnastkowo). Łącznie z bitami startu i stopu znaczniki te mają 10 bitów długości. W przypadku idealnym nie powinno być pustej taśmy pomiędzy tymi znacznikami a następującymi za nimi danymi.

Pomiar prędkości:

Przeznaczeniem tych dwóch znaczników jest ustawienie prędkości transmisji bitów.

Wejściowa szybkość transmisji jest wstępnie ustawiana na nominalne 600 bodów. Jednakże jest ona regulowana przez procedurę SIO w celu zniwelowania odchyłek w prędkości silnika napędowego magnetofonu, rozciągniętej taśmy, itp. Po obliczeniu rzeczywistej szybkości przesyłu bitów zostają odpowiednio ustawione układy odbiorcze. Za pomocą tej metody teoretycznie można obsłużyć prędkości odczytu od 318 do 1407 bodów.

System operacyjny sprawdza szybkość taśmy w następujący sposób: Oprogramowanie ciągle sprawdza stan bitu wejścia szeregowego układu POKEY. Poszukiwany jest bit startu (bit 0), który oznacza początek rekordu. Gdy zostanie znaleziony, system operacyjny zapamiętuje bieżący stan licznika ramek obrazu telewizyjnego w rejestrze VCOUNT układu ANTIC. Ciągle sprawdzając stan bitu wejścia szeregowego, system operacyjny zlicza 20 bitów (koniec znacznika drugiego), a następnie używa zawartość VCOUNT i zapamiętany stan licznika ramek do określenia czasu, który upłynął. Szybkość transmisji do użycia wyprowadzana jest z tego wyniku. Jest to robione dla każdego rekordu.

Bajt kontrolny

Bajt kontrolny zawiera jedną z trzech wartości:

Suma kontrolna

Suma kontrolna jest tworzona i sprawdzana przez procedurę SIO, lecz nie umieszcza się jej w buforze we/wy sterownika magnetofonu kasetowego CASBUF [03FD].

Suma kontrolna jest jednobajtową sumą wszystkich bajtów w bieżącym rekordzie, łącznie z dwoma początkowymi znacznikami. Suma kontrolna jest obliczana z uwzględnieniem przeniesienia. Każdy bajt jest dodawany do tej sumy, bit przeniesienia jest również dodawany.

Chronometraż

Odstęp między-rekordowy

Jak wspomniano wcześniej, każdy rekord składa się z 132 bajtów zawierających bajt sumy kontrolnej. W celu odróżnienia jednego rekordu od drugiego, sterownik magnetofonu kasetowego dodaje ton przed-rekordowy (ang. Pre-Record Write Tone, PRWT) i odstęp po-rekordowy (ang. Post-Record Gap, PRG). PRWT i PRG są czystymi tonami znacznikowymi. Odstęp między-rekordowy (ang. InterRecord Gap, IRG) pomiędzy dowolnymi dwoma kolejnymi rekordami składa się z PRG pierwszego rekordu, po czym następuje PRWT drugiego rekordu. Układ rekordów i odstępów jest następujący:

PRWT ZNACZNIK DANE PRG PRWT ZNACZNIK DANE PRG
Rekord nr 1 Rekord nr 2

Normalny tryb IRG i krótki tryb IRG

Długość PRWT i PRG są zależne od trybu otwarcia do zapisu. Są dwa rodzaje trybów IRG: normalny tryb IRG i krótki tryb IRG.

Gdy jest otwierany plik, najbardziej znaczący bit bajtu AUX2 określa tryb. W kolejnych operacjach wyjścia lub wejścia sterownik magnetofonu kasetowego wykonuje ODCZYT/ZAPIS w jednym z dwóch trybów w oparciu o najstarszy bit bajtu AUX2:

AUX2 7 6 5 4 3 2 1 0
C              

c = 1 wskazuje, iż kaseta ma być odczytywana/zapisywana w krótkim trybie IRG (tryb ciągły).
c = 0 wskazuje normalny tryb IRG.

Normalny tryb IRG

Ten tryb używa się przy odczycie przeplatanym przetwarzaniem danych: t.j. taśma zawsze zostaje zastopowana po odczytaniu każdego rekordu. Jeśli komputer "ZATRZYMA" taśmę i wykona przetwarzanie danych wystarczająco szybko, to następny ODCZYT może wystąpić tak szybko, iż magnetofon kasetowy otrzyma jedynie krótki impuls ujemny na linii sterującej.

Krótki tryb IRG

W tym trybie taśma nie jest zatrzymywana pomiędzy rekordami, ani przy zapisywaniu, ani przy odczytywaniu.

Przy odczycie program musi wykonać rozkaz odczytu dla każdego rekordu zanim minie on głowicę odczytującą. Jak dotąd jedynym powszechnym zastosowaniem tego trybu jest zapis programów w języku BASIC w wewnętrznej (stokenizowanej) postaci, przy odczycie których BASIC nie ma nic więcej do roboty jak tylko umieszczać odczytane dane w pamięci RAM. Tryb ten określają specjalne rozkazy BASIC'a  "CSAVE" i "CLOAD".

Może tu wystąpić potencjalny problem. Oprogramowanie zapisujące taśmę musi wytworzyć na niej wystarczająco długie odstępy, aby początek rekordów nie został przegapiony przy odczycie.

Struktura chronometrażu

Chronometraż dla każdego z trzech odstępów między-rekordowych jest następujący:

NORMALNY IRG + PRWT 3 sekundy tonu znacznikowego.
KRÓTKI IRG + PRWT 0,25 sekundy tonu znacznikowego.
NORMALNY IRG + PRG Do 1 sekundy nieokreślonych tonów
KRÓTKI IRG + PRG Od 0 to N sekund nieokreślonych tonów, gdzie N zależy od odmierzania czasu przez program użytkownika.

Każdy rekord jest zapisywany z następującym chronometrażem: po uruchomieniu silnika i zapisie PRWT czas trwania tonu zależy od powyższego formatu. Następuje rekord, następnie zapisywany jest PRG. Wtedy silnik zostaje zapisany w trybie normalnym, lecz w trybie krótkim IRQ kontynuowany jest zapis tonu znacznikowego.

Zwróć uwagę, iż w trybie normalnym IRG taśma będzie zawierała fragment nieznanych danych z powodu zatrzymania i ponownego uruchomienia silnika. (Taśma może się jeszcze przesuwać do 1 sekundy w zależności od mechanizmu magnetofonu kasetowego). Te nieznane dane mogą być śmieciowymi danymi pozostawionymi z poprzednich zapisów na taśmie.

Funkcja hałasu we/wy

Funkcja ta jest użyteczna przy określaniu sukcesu odczytu taśmy, szczególnie z rozkazem CLOAD. Tony znacznikowe i odstępy używają różnych częstotliwości dźwięków i szybko nauczysz się dobrych i złych dźwięków wydawanych przez system operacyjny.

Struktura pliku

Plik składa się z następujących trzech elementów:

Gdy plik zostaje otwarty (jako wyjście), system operacyjny rozpoczyna od zapisu 20-sekundowej rozbiegówki z tonu znacznikowego, po czym system operacyjny wraca do wywołującego go programu, lecz pozostawia taśmę w ruchu zapisując znaczniki.

Licznik przekroczenia czasu ZAPISU/ODCZYTU ustawiony zostaje na około 35 sekund po powrocie systemu operacyjnego. Jeśli czas ten upłynie przed zapisem pierwszego rekordu, taśma zostanie zatrzymana, pozostawiając przerwę pomiędzy rozbiegówką otwierającą a rozbiegówką pierwszego rekordu.

Struktura taśmy


Taśma magnetyczna w kasecie kompaktowej

Na każdej taśmie są dwie strony. Każda strona posiada dwie ścieżki, jedną dźwiękową i drugą do nagrań cyfrowych. W ten sposób taśma może być nagrywana w obu kierunkach. Poniżej jest płaski widok fragmentu taśmy.


Ścieżki zapisu na taśmie magnetycznej

Taśmy są zapisywane w formacie stereo przy prędkości 17/8 cala na sekundę (4,76 cm/s). Zauważ, iż komputer ATARI 800 wykorzystuje magnetofon kasetowy, który posiada stereofoniczną konfigurację głowicy (nie typu monofonicznego).

Program startowy z kasety

Kasetowy program startowy może zostać z kasety magnetofonowej w czasie startu komputera jako część inicjalizacji systemu. Inicjalizacja wykonuje takie funkcje jak zerowanie wszystkich rejestrów sprzętowych, czyszcząc pamięć RAM, ustawiając znaczniki itd.


Klawisz [START] komputera ATARI 800/400

Po uruchomieniu wszystkich rezydentnych sterowników, jeśli przycisk [START] jest naciskany, to zostanie ustawiony znacznik żądania startu z kasety (ang. Cassette Boot request flag, CKEY [004A]). Jeśli znacznik ten jest ustawiony, podjęta jest próba operacji załadowania programu startowego z kasety.

Należy spełnić następujące wymagania, aby załadować program startowy z kasety:

  1. Operator musi naciskać przycisk [START] przy włączaniu zasilania komputera.
  2. Taśma kasetowa z plikiem w odpowiednim formacie startowym musi być włożona do magnetofonu kasetowego, odpowiednio przewinięta na początek tego pliku i klawisz PLAY magnetofonu musi być wciśnięty.
  3. Plik kasetowy musi być utworzony w krótkim trybie IRG.
  4. Gdy pojawi się zgłoszenie dźwiękowe, operator musi nacisnąć jakiś klawisz na klawiaturze.

Jeśli wszystkie te wymagania zostaną spełnione, to system operacyjny odczyta plik startowy z kasety i następnie przekaże kontrolę nad komputerem do oprogramowania, które zostało wczytane. Bardziej szczegółowo proces ładowania pliku startowego z kasety jest opisany poniżej:

  1. ODCZYT pierwszego rekordu z kasety do bufora kasety.
  2. Wydobycie informacji z pierwszych 6 bajtów. Pierwsze 6 bajtów pliku startowego z kasety są sformatowane następująco:

    Bajt nr 1 nie jest używany w procesie startu z kasety.

    Bajt nr 2 zawiera liczbę 128 bajtowych rekordów na kasecie, które mają zostać wczytane jako część procesu startowego (łącznie z rekordem zawierającym tę informację). Liczba ta może być z zakresu od 1 do 255, a 0 oznacza tutaj 256.

    Bajty nr 3 i 4 zawierają adres (dolny/górny bajt), pod który rozpocznie się ładowanie pierwszego bajtu tego pliku.

    Bajty nr 5 i 6 zawierają adres (dolny/górny bajt), do którego zostanie przekazana kontrola nad komputerem po zakończeniu procesu ładowania. Naciśnięcie klawisza [S/RESET] również przekaże kontrolę pod ten adres przy założeniu, że proces startu się zakończył.

    Gdy krok 2 zostanie ukończony, program startu z kasety będzie miał zakończone następujące operacje:

    • Zachowaną liczbę rekordów do odczytu
    • Zachowany adres do ładowania rekordów
    • Zachowany adres inicjalizacji w CASINI [02,03]
  3. Przeniesienie właśnie odczytanego rekordu pod określony adres ładowania.
  4. ODCZYT pozostałych rekordów bezpośrednio do obszaru ładowania.
  5. Wykonanie skoku JSR pod adres ładowania  + 6, gdzie może być kontynuowany wieloetapowy proces ładowania startowego. Wtedy bit przeniesienia oznacza sukces operacji przy powrocie (przeniesienie ustawione = błąd, przeniesienie wyzerowane = sukces).
  6. Skok JSR pośrednio poprzez CASINI w celu inicjalizacji aplikacji, podczas której aplikacja powinna umieścić swój adres startu w DOSVEC [0A,0B], a następnie powrócić.
  7. Skok JMP pośrednio poprzez DOSVEC w celu przekazania kontroli aplikacji.

Naciśnięcie klawisza [S/RESET] po pełnym załadowaniu aplikacji spowoduje powtórzenie kroków 6 i 7.


Na początek:  podrozdziału   strony 

Aplikacje na magnetofon kasetowy ATARI

Jak skonfigurować system kasetowy


Wtyczka magistrali szeregowej ATARI

Większość urządzeń ATARI współpracujących z magistralą szeregową posiada dwa identyczne gniazda: jedno jest wejściem magistrali szeregowej, a drugie jest jej rozszerzeniem. Używając tych gniazd i współpracujących z nimi kabli można połączyć urządzenia peryferyjne w łańcuch, jak na poniższym rysunku:

Rys.C-1 Urządzenia zewnętrzne połączone w łańcuch

Jednakże magnetofon kasetowy ATARI 410 odbiega od tego schematu. Musi on być zawsze ostatnim urządzeniem w tym łańcuchu, ponieważ nie posiada gniazda rozszerzenia magistrali szeregowej jak inne urządzenia.


Magnetofon kasetowy Atari 4010

Brak gniazda rozszerzenia gwarantuje, iż do systemu nigdy nie zostanie podłączony więcej niż jeden magnetofon kasetowy. System nie potrafi wykryć braku ani obecności magnetofonu kasetowego, zatem można go podłączać i rozłączać wedle woli.

 Gdy zajdzie potrzeba otwarcia pliku na kasecie do odczytu lub do zapisu, stosuj się do następujących instrukcji:


Zapisywanie i ładowanie programów cyfrowych

Metoda

Poniższa metoda zapisuje dane cyfrowe bezpośrednio z komputera poprzez jego port we/wy na magnetofonie kasetowym ATARI 410 Program Recorder.

W BASIC'u:

Format: CSAVE
100 CSAVE
Ten rozkaz zwykle stosowany jest w trybie bezpośrednim do zapisu przebywającego w RAM programu na taśmę kasetową. CSAVE zapisuje stokenizowaną wersję programu na magnetofonie kasetowym ATARI 410.
Format: CLOAD
100 CLOAD
Ten rozkaz można używać albo w trybie bezpośrednim, albo w wierszu programu do odczytu stokenizowanych programów z taśmy kasetowej do pamięci RAM w celu wykonania.

W edytorze asemblera:

Program źródłowy
Format:    LIST#C:[,XX,YY]
Ten rozkaz używany jest do zapisu kodu źródłowego w asemblerze. Elementy opcjonalne w klamerkach [,XX,YY] oznaczają przesłanie na kasetę tylko wierszy o numerach od XX do YY. Jeśli tych numerów wierszy nie będzie, to rozkaz wylistuje cały program na kasetę.
Format:    ENTER#C:
Ten rozkaz odczytuje kod źródłowy z kasety.
Program wynikowy
Format:    SAVE#C:<XXXX,YYYY
Zawartość bloku pamięci od adresu XXXX do YYYY jest zapisywana na kasecie.
Format:    LOAD#C:

Ten rozkaz załaduje pamięć zawartością, która została poprzednio zapisana. Zakres wypełnianych komórek pamięci jest taki sam jak ten podany w pierwotnym rozkazie SAVE.


Zapisywanie cyfrowych programów z dźwiękiem w tle

Metoda

Metoda zapisu nie daje żadnej kontroli programowej nad dźwiękiem. Dźwięk jest odtwarzany tylko w tle w celu umilenia spędzenia czasu przy monotonnym procesie ładowania.

Krok 1: Postępuj zgodnie z instrukcjami zapisu danych cyfrowych opisanych powyżej, jednak teraz zamiast standardowego magnetofonu ATARI 410 używany jest specjalny magnetofon laboratoryjny ATARI Recording Lab Machine, który zapisuje na taśmie matce z prędkością 7 1/2 cala na sekundę. Magnetofon ten jest urządzeniem bardziej zaawansowanym od zwykłego magnetofonu kasetowego ATARI i umożliwia on zapis wybranej ścieżki.
W magnetofonie tym należy włączyć zapis prawej ścieżki dla danych cyfrowych.
Krok 2: Użyj kroku 1 do nagrania dźwięku, lecz najpierw przewiń taśmę do początku programu, po czym przełącz nagrywanie na ścieżkę lewą.

Programy cyfrowe, dźwięk, znacznik synchronizacji i zarządzanie ekranem

Metoda znaczników synchronizacji

Nie ma żadnego efektywnego sposobu dla programu wykrywania segmentu dźwiękowego, gdy magnetofon odtwarza nagranie. Aby rozwiązać problem synchronizacji, używany jest znacznik synchro do przenoszenia sygnału informującego program, że został odtworzony segment dźwiękowy (segment ten może albo być albo fragmentem muzyki, albo jakąś instrukcją, zależnie od aplikacji).

Mówiąc bardziej precyzyjnie, ponieważ dane dźwiękowe nie posiadają żadnej struktury rekordowej, znacznik synchro nagrany na ścieżce cyfrowej jest mniej więcej jak coś w rodzaju znacznika końca rekordu dla dźwięku. Na przykład, gdy program wykryje ten znacznik synchro, może wtedy zdecydować, co zrobić dalej, np. czy zatrzymać silnik w magnetofonie kasetowym na długie przetwarzanie danych, czy kontynuować odtwarzanie następnego segmentu dźwiękowego.

Krok 1: Programista tworzy skrypt dźwiękowy dla ŻABY. Skrypt może wyglądać następująco:

(MUZYKA) DZISIAJ OPOWIEM CI BAJKĘ POD TYTUŁEM "KSIĘŻNICZKA I ŻABA". JEST TO SŁODKA OPOWIEŚĆ, WIĘC NIE UCIEKAJ. /

(MUZYKA) ZANIM ROZPOCZNĘ MOJĄ OPOWIEŚĆ, CHCIAŁBYM WIEDZIEĆ, DO KOGO MÓWIĘ. JAK MASZ NA IMIĘ? WPISZ JE I NACIŚNIJ KLAWISZ RETURN. (PRZERWA)

(MUZYKA) TERAZ ZACZNIJMY OPOWIEŚĆ. PEWNEGO RAZU BYŁA SOBIE PIĘKNA KSIĘŻNICZKA, KTÓRA MIESZKAŁA W ZAMKU I MIAŁA NA IMIĘ YYYY. /

(MUZYKA) PEWNEGO PIĘKNEGO I POGODNEGO DNIA KSIĘŻNICZKA SZŁA WZDŁUŻ .... /

UWAGI:
- "/" oznacza, że program czeka na znacznik synchro. Najlepiej, aby głośnik nie odtwarzał dźwięku przez około 1/2 sekundy przed rozpoczęciem następnego segmentu skryptu dźwiękowego.
- "PRZERWA" jest do wskazania, iż głośnik przestaje odtwarzać dźwięk tutaj przez około 1 sekundę, aby dać czas na zatrzymanie i uruchomienie silnika w magnetofonie. Każdy segment dźwiękowy powinien mieć co najmniej od 10 do 30 sekund długości, ponieważ zbyt dużo znaczników synchro umieszczonych blisko siebie może zmylić komputer.

Krok 2: Sugeruje się, aby przed rozpoczęciem kodowania programista nakreślił sobie jakiś ogólny plan programu, w którym oznaczy powiązania pomiędzy informacją wyświetlaną na ekranie (mikroprocesor) a odtwarzanym dźwiękiem.

Przykład: Rys.C-2 ilustruje, jak programista powinien utworzyć kasetę zawierającą program sterujący ścieżką dźwiękową. Przykład nosi tytuł ŻABA:

Krok 3: Programista może rozpocząć kodowanie programu ŻABA, a będzie on wyglądał mniej więcej tak:
10 REM PROGRAM "ŻABA" DO DEMONSTRACJI SYNCHRONIZACJI
20 REM ŚCIEŻKI DŹWIĘKOWEJ Z CYFROWĄ DLA SYSTEMU KASETOWEGO
30 REM
40 DIM IN$(20)
50 POKE 54018,52:REM WŁĄCZ SILNIK
60 GRAPHICS 1
70 PRINT #6;"KSIĘŻNICZKA I ŻABA":PRINT #6; .... :REM
    PRZYGOTUJ EKRAN NA ZDARZENIE 2.
80 GOSUB 1000:REM SPRAWDŹ ZNACZNIK SYNCHRO, UPEWNIJ SIĘ,
    IŻ WSTĘP ZOSTAŁ ODCZYTANY.
100 POSITION X,Y:PRINT #6;"JAK MASZ NA IMIĘ?":REM ZDARZENIE 4
105 GOSUB 1000:REM ZDARZENIE 5
110 POKE 54018,60:REM ZATRZYMAJ SILNIK NA CZAS
     WPROWADZANIA PRZEZ UŻYTKOWNIKA
120 INPUT IN$:REM CZEKAJ NA IMIĘ UŻYTKOWNIKA
130 POKE 54018,52
135 PRINT #6,CHR$(125):REM WYCZYŚĆ EKRAN
140 POSITION X,Y:PRINT #6;IN$:PRINT #6; .... :REM WYŚWIETL
     EKRAN DLA ZDARZENIA 10
150 GOSUB 1000:REM UPEWNIJ SIĘ, ŻE MOWA DLA
     ZDARZENIA 10 ZAKOŃCZYŁA SIĘ
160 PRINT #6; .... :REM GOTOWOŚĆ NA ZDARZENIE 12
ZDARZENIE DŹWIĘK EKRAN SPRAWDZENIE
SYNCHRO
TRYB
SILNIKA
1        
2 'DZISIAJ OPOWIEM CI...' KSIĘŻNICZKA I ŻABA
OBRAZEK
   
3     TAK  
4 'ZANIM ROZPOCZNĘ...' KSIĘŻNICZKA I ŻABA
OBRAZEK
 
JAK MASZ NA IMIĘ? XXXX
   
5     TAK  
6       STOP
7   CZEKAJ NA PODANIE IMIENIA    
8        
9   WYCZYŚĆ EKRAN   START
10 'TERAZ ZACZNIJMY...'
XXXX
OBRAZEK
 
   
11     TAK  
12 'PEWNEGO PIĘKNEGO...'
OBRAZEK
 
   
13        

Rys.C-2 Podział funkcji pomiędzy komputerem a magnetofonem kasetowym

PROCEDURA SPRAWDZANIA ZNACZNIKA SYNCHRO: Na taśmie brak znacznika synchro jest reprezentowany przez sygnał "ZNAK", a znacznik synchro jest reprezentowany przez sygnał "SPACJI" (spacja jest częstotliwością dla "0"; jest to niższy ton niż ZNAK, który odpowiada częstotliwości dla "1". Jak wspomniano wcześniej częstotliwość dla "1" wynosi 5327 Hz, częstotliwość dla "0" wynosi 3995 Hz). procedura sprawdzania znacznika synchro ciągle szuka "SPACJI" na porcie szeregowym. Procedura wygląda następująco:

1000 IF INT(PEEK(53775)/32+0.5)=INT(PEEK(53775)/32)
     THEN RETURN: REM SPRAWDZAJ PIĄTY BIT KAŻDEGO
                  NADCHODZĄCEGO BAJTU. JEŚLI WYNOSI "0", TO
                  SPACJA SYNCHRO ZOSTAŁA ZNALEZIONA.
1010 GOTO 1000

PROCEDURA STEROWANIA SILNIKIEM MAGNETOFONU: Program może włączać i wyłączać silnik magnetofonu kasetowego przez wstawienie podanych niżej wartości do komórki o adresie 54018:

WŁĄCZANIE:  POKE 54018,52
WYŁĄCZANIE: POKE 54018,60
Krok 4: Po wstępnym napisaniu skryptu dźwiękowego programista powinien oszacować czas i długość taśmy potrzebne na skrypt dźwiękowy (łącznie z przerwami) i program. Jeśli długość taśmy jest za duża, aby zmieścić się na jednej kasecie, to należy zmodyfikować albo program, albo skrypt, tak aby kaseta je pomieściła.
Krok 5: Zapisz ten program na taśmie matce, np. "MATKA 1".
Krok 6: Przy pomocy skryptu dźwiękowego głos jest zapisywany z przerwami na innej taśmie matce, "MATKA 2".
Krok 7: Po utworzeniu taśm "MATKA 1" i "MATKA 2" łączy się je w celu otrzymania kolejnej taśmy matki o nazwie "MATKA 3". Na tej taśmie najpierw nagrany jest program, a później dźwięk. Do produkcji potrzebne są trzy magnetofony laboratoryjne. Utwórz dwie kopie taśmy "MATKA 3".
Krok 8: Załaduj do komputera ATARI 800 program tworzący znacznik synchro. Celem tego programu jest zapisanie ciągłego znaku synchro (częstotliwość dla "0") na ścieżkę cyfrową. Ten znacznik synchro informuje program, że został odtworzony jakiś segment dźwiękowy. Tam, gdzie w skrypcie dźwiękowym oznaczono przerwę, potrzebny jest znacznik synchro w tym miejscu. Gotowa taśma z dźwiękiem i synchro bedzie wyglądała jak na rys. C-3.


Rys. C-3

Program znaczników synchro wygląda następująco:

10 REM NACIŚNIJ PRZYCISK "START" NA KONSOLI,
20 REM ABY ZAPISAĆ ZNACZNIK SYNCHRO NA TAŚMIE
30 REM
40 REM 
50 IO=53760 : CONSOLE=53279 : CASS=54018
100 FOR I=0 TO 8
110 READ J : POKE IO+I,J
120 NEXT I
125 REM PĘTLA FOR USTAWIA CZĘSTOTLIWOŚĆ DŹWIĘKU I KANAŁ
130 DATA 5,160,7,160,5,160,7,160,0
140 REM 
150 REM WE/WY JEST USTAWIONE; TERAZ URUCHOM MAGNETOFON
160 POKE CASS, 52
200 POKE CONSOLE,8
210 IF PEEK(CONSOLE)=7 THEN 230:REM CONSOLE=7 OZNACZA ZAPIS ZNACZNIKA
220 POKE 10+15,11: GOTO 200: REM KLAWISZE KONSOLI NIENACIŚNIĘTE
230 POKE 10+15,128+11: GOTO 200: REM JEŚLI CONSOLE=7, ZAPISZ "SPACJĘ"
Krok 9: Zamontuj obie taśmy MATKA 3 w dwóch niezależnych magnetofonach laboratoryjnych i przewiń je do miejsca podziału programu z dźwiękiem. Ustaw jeden magnetofon na nagrywanie z komputera ATARI 800 z załadowanym programem znaczników synchro. Ten magnetofon będzie nagrywał znaczniki synchro na ścieżce cyfrowej. Drugi magnetofon będzie odtwarzał dźwięk nagrany wcześniej.
Krok 10: Wpisz rozkaz RUN, aby uruchomić program znaczników synchro. Uruchom jednocześnie oba magnetofony laboratoryjne, jeden do nagrywania, drugi do odtwarzania. Słuchaj nagrania dźwiękowego i naciskaj klawisz [START] w miejscach oznaczonych w skrypcie dźwiękowym jako przerwa.
Krok 11: Teraz taśma jest gotowa z nagranym programem oraz materiałem dźwiękowym przeplatanym znacznikami synchro. Można ją przesłać do produkcji masowej.

Blokowanie klawisza BREAK

Sugerujemy, aby programista zablokował klawisz BREAK. Zapobiegnie to przerwaniu programu kasetowego, gdy użytkownik przypadkowo naciśnie klawisz [BREAK]. System operacyjny nie odtworzy częściowego rekordu, o ile użytkownik nie przewinie taśmy do miejsca, w którym ten rekord został zgubiony. Procedura zablokowania klawisza BREAK wygląda następująco:

4000 X=PEEK(16): IF X<128 THEN RETURN
4010 POKE 16,X-128: POKE 53774,X-128: RETURN 

Ta procedura blokująca powinna być wywoływana w miejscach zmiany trybu graficznego lub wywołań otwierania ekranu.


Produkcja masowa


Szpula z taśmą matką

Programista tworzy jedną lub więcej TAŚM MATEK zgodnie z metodami nagrywania opisanymi w poprzedzającym podrozdziale. Wszystkie taśmy matki ATARI są nagrywane na taśmie szpulowej 1/4 cala przy prędkości 71/2 cala na sekundę. TAŚMA MATKA jest dostarczana do duplikatora jako MATKA ŹRÓDŁOWA.

Duplikator utworzy ze źródłowej taśmy matki roboczą taśmę matkę do końcowej produkcji masowej kaset. Końcowy produkt będzie trzecią generacją oryginału. Oto przebieg tego procesu:

MATKA POŚREDNIA jest zalecana dla duplikatora, ponieważ MATKA ROBOCZA może się uszkodzić lub zużyć przy intensywnym używaniu. MATKA ŹRÓDŁOWA powinna być zarezerwowana tylko do użytku awaryjnego. MATKA POŚREDNIA jest kopią zapasową dla MATKI ROBOCZEJ.

Masowa produkcja kaset

Obecnie ATARI preferuje metodę pętli nieskończonej przy produkcji masowej. MATKA ROBOCZA jest kopiowana w celu utworzenia PĘTLI GŁÓWNEJ. Taśma tej pętli może posiadać dowolną szerokość. Następnie z tej taśmy tworzona jest PĘTLA CIĄGŁA, na którą składają się nagrany segment i krótka, nienagrana rozbiegówka w miejscu połączenia. Tak utworzona pętla zostaje umieszczona w szybkiej maszynie kopiującej, z którą połączone są maszyny podrzędne z załadowanymi szpulami taśmy magnetycznej. Konfigurację pokazuje rys.C-4.


Rys.C-4

PĘTLA CIĄGŁA w szybkiej maszynie kopiującej jest odczytywana w kółko. Jeśli duplikator chce utworzyć przykładowo po 100 kaset z programem, to na MASZYNY PODRZĘDNE ładowana jest taśma o długości potrzebnej na program razy 100. Na maszynie kopiującej znajduje się licznik, który zostaje ustawiony na 0.

Gdy PĘTLA GŁÓWNA jest ciągle odczytywana, zapisane na niej dane (wszystkie cztery ścieżki naraz) są kopiowane na taśmy w MASZYNACH PODRZĘDNYCH.

Gdy zostanie wykryta pusta rozbiegówka w PĘTLI GŁÓWNEJ, maszyna kopiująca wytwarza specjalny TON ODCINAJĄCY, który zostaje nagrany na jednej lub więcej ścieżkach taśmy na MASZYNIE PODRZĘDNEJ. Licznik jest wtedy zwiększany o jeden.

Każda gotowa taśma z MASZYNY PODRZĘDNEJ zawiera 100 nagranych programów oraz za nimi 100 nagranych TONÓW ODCINAJĄCYCH. Taśma ta zostaje załadowana do automatycznej maszyny lądującej, która nawija ją do pustych kaset C-ZERO.

Kasety C-0

Wewnątrz pudełka kasety C-0 znajduje się mała pętla czystej rozbiegówki, która jest przymocowana do obu wewnętrznych rolek taśmy. Ładowarka wyciąga tę rozbiegówkę z obudowy, rozcina ją i zlepia z końcem taśmy otrzymanej z maszyny podrzędnej. Rolka w kasecie jest używana do nawinięcia taśmy do wnętrza kasety do momentu wykrycia tonu odcinającego. Wtedy taśma jest przecinana i łączona z pozostałą rozbiegówką połączoną z drugą rolką w kasecie.

Kaseta jest usuwana ręcznie lub automatycznie z ładowarki, a taśma wewnątrz zostaje w pełni przewinięta na początek. Do ładowarki zostaje wtedy załadowana następna kaseta. Nagrane kasety są oblepiane etykietami i umieszczane w pudełkach, po czym rozprowadzane po punktach sprzedaży.


Gotowa kaseta z grą na komputer ATARI

Kontrola jakości

Gdy zostanie uruchomiona produkcja, muszą być pobierane z niej próbki i weryfikowane, zanim dana partia zostanie zatwierdzona i przekazana do sprzedaży.

Kontrolę jakości zwykle wykonuje się przez zabranie pierwszej i ostatniej kasety w partii. Atari musi otrzymać co najmniej 10 próbek z każdej produkcji masowej dla każdej taśmy matki.


Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2024 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.

Informacje dodatkowe.