Turbo 2T06
From Atariki
Wersja z dnia 19:59, 4 maj 2008 Daniel Koźmiński (Dyskusja | wkład) (+struktura zapisu na taśmie - podesłane przez Zenona/Dial) ← Previous diff |
Wersja z dnia 16:45, 8 maj 2008 Daniel Koźmiński (Dyskusja | wkład) (+ bardziej szczegółowy opis) Next diff → |
||
Linia 1: | Linia 1: | ||
+ | == MENU K.S.O. 2T06 == | ||
+ | |||
+ | System umożliwia współpracę z magnetofonem w trybie TURBO oraz z magnetofonem firmowym , dlatego w MENU znajdują sie opcje związane ze zwykłym trybem transmisji. | ||
+ | System Turbo odporny jest na niedokładne ustawienie taśmy, daleko przed początkiem pliku. | ||
+ | |||
+ | D - długie przerwy pomiędzy rekordami | ||
+ | |||
+ | K - krótkie przerwy pomiędzy rekordami | ||
+ | |||
+ | E - włączenie silnika, dotyczy również magnetofonu firmowego | ||
+ | |||
+ | H - zatrzymanie silnika, dotyczy również magnetofonu firmowego | ||
+ | |||
+ | R - załadowanie i uruchomienie programu | ||
+ | |||
+ | L - załadowanie pliku bez uruchomienia | ||
+ | |||
+ | C - powrót do kartridża, jeżeli jest aktywny | ||
+ | |||
+ | - - zimny start systemu | ||
+ | |||
+ | ===Nazewnictwo plików=== | ||
+ | |||
+ | Pliki uruchamiane przez system TURBO powinny mieć strukturę DOSową. Nazwa pliku może zawierać do 10 znaków, Nazwa krótsza zostaje uzupełniona spacjami do 10 znaków, nazwy dłuższe zostają obcięte do 10 znaków. | ||
+ | |||
+ | Trzy znaki są zastrzeżone i nie należy ich używać w nazwie pliku: | ||
+ | |||
+ | *Znak ''/'' (slash) oznacza że dany znak nie będzie porównywany przy identyfikacji pliku | ||
+ | |||
+ | *Znak ''@'' (małpa) oznacza, że identyfikację nazwy pliku należy zakończyć na tym znaku | ||
+ | |||
+ | *Znak ''*'' (gwiazdka) powoduje, że jeżeli znaki występujące przed nim były zgodne, to zostaje wprowadzona pełna nazwa pliku z pytaniem czy jest on właściwy. Klawisz "T" akceptacja. | ||
+ | |||
+ | Inny klawisz, poszukiwanie następnego pliku. | ||
+ | |||
+ | Identyfikatorem urządzenia T206 jest znak D: taki sam jak dla stacji dysków, ze względu na zgodność z programami typu SOUNDMACHINE, MAGIC PAINTER itp. | ||
+ | |||
+ | Przykład: ''SAVE "D:s012345679"'' | ||
+ | |||
+ | Znak ''s'' jest znakiem sterującym, ważnym tylko w trybie zapisu. Informuje czy ma nastąpić rzeczywisty zapis pliku czy tylko weryfikacja zapisu. Umieszczenie na jego miejscu znaku ''V'' powoduje weryfikację, Natomiast znak spacji na miejscu znaku ''s'' powoduje zapis. Niektóre programy nie tolerują znaku spacji w nazwie pliku, w takim przypadku na pozycji znaku ''s'' należy umieścić znak inny niż ''V'' | ||
+ | |||
+ | ===Posługiwanie się trybem weryfikacji=== | ||
+ | |||
+ | Posługując sie programem SPEEDSCRIPT na taśmie zapisany został plik o nazwie ''TEKST''. W tym celu po wyborze CTRL+S podana została nazwa ''D:TEKST'', gdy plik został zapisane na taśmie należałoby go zweryfikować. Dyrektywa CTRL+L wprowadza tekst z urządzenia zewnętrznego na pozycję za kursorem, usuwając znajdujący się tam wcześniej tekst. Może się zdarzyć że plik ''TEKST'' się nie wczyta bo jest zbyt długi i nie mieści się w buforze edytora. Natomiast kasując tekst z edytora i wczytując go z taśmy może się zdarzyć że wystąpi błąd i tekst zostanie utracony. | ||
+ | |||
+ | Weryfikacja zatem pozwala zachować tekst w buforze edytora, bo weryfikacja nie kasuje go i nie wczytują się do bufora kolejne znaki. | ||
+ | Taśmę należy przewinąć na początek pliku ''TEKST '' wydać polecenie CTRL+S i nazwę pliku do zapisu tym razem jako ''D:VTEKST''. Ewentualne przekłamanie zostanie zgłoszone jako błąd 136, 140,143 lub 145. | ||
+ | |||
+ | Trudność pojawia się przy używaniu instrukcji SAVE w BASIC (i niektórych innych). Instrukcja SAVE zapisuje także linię wprowadzania w trybie bezpośrednim, a więc zapisana zostaje także podana nazwa pliku. Zapisanie programu pod nazwą ''SAVE "D:PLIK"'' i zweryfikowaniu go instrukcją ''SAVE "D:VPLIK"'' zakończy się błędem 145. Przyczyną jest właśnie inna nazwa zapisywanego pliku. Ominięcie tej niedogodności polega na wprowadzeniu w jednej linii instrukcji: ''SAVE "D:PLIK" SAVE "D:VPLIK"''. Gdy plik zostanie zapisany na taśmie, należy ją przewinąć na początek pliku i nacisnąć RETURN. | ||
+ | |||
==Struktura zapisu na taśmie== | ==Struktura zapisu na taśmie== | ||
''Źródło: IKS Nr 12/1988'' | ''Źródło: IKS Nr 12/1988'' | ||
Linia 5: | Linia 55: | ||
1 - Impuls synchronizacji (stan wysoki przez 800 cykli zegara i stan niski przez 800 cykli zegara) | 1 - Impuls synchronizacji (stan wysoki przez 800 cykli zegara i stan niski przez 800 cykli zegara) | ||
+ | |||
2 - Impuls "1" (stan wyskoki przez 400 cykli zegar i stan niski przez 400 cykli zegara) | 2 - Impuls "1" (stan wyskoki przez 400 cykli zegar i stan niski przez 400 cykli zegara) | ||
+ | |||
3 - Impuls "0" (stan wysoki przez 200 cykli zegara i stan niski przez 200 cykli zegara) | 3 - Impuls "0" (stan wysoki przez 200 cykli zegara i stan niski przez 200 cykli zegara) | ||
Linia 11: | Linia 63: | ||
Przy korzystaniu z urządzenia D: na taśmie mogą być zapisane następujące bloki, (każdy blok poprzedzony jest impulsami synchronizującymi i zakończony bajtem sumy kontrolnej) | Przy korzystaniu z urządzenia D: na taśmie mogą być zapisane następujące bloki, (każdy blok poprzedzony jest impulsami synchronizującymi i zakończony bajtem sumy kontrolnej) | ||
+ | |||
1 - Blok nagłówka, zawsze na początku pliku | 1 - Blok nagłówka, zawsze na początku pliku | ||
+ | |||
Blok ma długość 12 bajtów. Na początku zawiera bajty 0,255 stanowiące identyfikator nagłówka, i 10 bajtów będących kodami ATASCII znaków nazwy pliku. | Blok ma długość 12 bajtów. Na początku zawiera bajty 0,255 stanowiące identyfikator nagłówka, i 10 bajtów będących kodami ATASCII znaków nazwy pliku. | ||
+ | |||
2 - Pełny blok danych, ilość tych bloków zależy od długości pliku | 2 - Pełny blok danych, ilość tych bloków zależy od długości pliku | ||
- | Blok ma długość 3074 bajtów. Na początku znajdują się bajty o wartości 0 i 12 ( 0+12x256=3072 ) informujące o ilości bajtów danych , a za nimi 3072 bajty danych ( 2+3072=3074 ). | + | |
+ | Blok ma długość 3074 bajtów. Na początku znajdują się bajty o wartości 0 i 12 ( 0+12x256=3072 ) informujące o ilości bajtów danych , a za nimi 3072 bajty danych (2+3072=3074). | ||
+ | |||
3 - Blok końca pliku, zawsze na końcu pliku | 3 - Blok końca pliku, zawsze na końcu pliku | ||
+ | |||
Blok ma długość 3074 bajtów. Na początku znajdują się dwa bajty ( LSB, MSB ) informujące o ilości bajtów danych ( LSM + 256 x MSB ) Po nich następują bajty danych, a za nimi bajty uzupełniające blok do długości 3074 bajtów. | Blok ma długość 3074 bajtów. Na początku znajdują się dwa bajty ( LSB, MSB ) informujące o ilości bajtów danych ( LSM + 256 x MSB ) Po nich następują bajty danych, a za nimi bajty uzupełniające blok do długości 3074 bajtów. | ||
Wersja z dnia 16:45, 8 maj 2008
Spis treści |
MENU K.S.O. 2T06
System umożliwia współpracę z magnetofonem w trybie TURBO oraz z magnetofonem firmowym , dlatego w MENU znajdują sie opcje związane ze zwykłym trybem transmisji. System Turbo odporny jest na niedokładne ustawienie taśmy, daleko przed początkiem pliku.
D - długie przerwy pomiędzy rekordami
K - krótkie przerwy pomiędzy rekordami
E - włączenie silnika, dotyczy również magnetofonu firmowego
H - zatrzymanie silnika, dotyczy również magnetofonu firmowego
R - załadowanie i uruchomienie programu
L - załadowanie pliku bez uruchomienia
C - powrót do kartridża, jeżeli jest aktywny
- - zimny start systemu
Nazewnictwo plików
Pliki uruchamiane przez system TURBO powinny mieć strukturę DOSową. Nazwa pliku może zawierać do 10 znaków, Nazwa krótsza zostaje uzupełniona spacjami do 10 znaków, nazwy dłuższe zostają obcięte do 10 znaków.
Trzy znaki są zastrzeżone i nie należy ich używać w nazwie pliku:
- Znak / (slash) oznacza że dany znak nie będzie porównywany przy identyfikacji pliku
- Znak @ (małpa) oznacza, że identyfikację nazwy pliku należy zakończyć na tym znaku
- Znak * (gwiazdka) powoduje, że jeżeli znaki występujące przed nim były zgodne, to zostaje wprowadzona pełna nazwa pliku z pytaniem czy jest on właściwy. Klawisz "T" akceptacja.
Inny klawisz, poszukiwanie następnego pliku.
Identyfikatorem urządzenia T206 jest znak D: taki sam jak dla stacji dysków, ze względu na zgodność z programami typu SOUNDMACHINE, MAGIC PAINTER itp.
Przykład: SAVE "D:s012345679"
Znak s jest znakiem sterującym, ważnym tylko w trybie zapisu. Informuje czy ma nastąpić rzeczywisty zapis pliku czy tylko weryfikacja zapisu. Umieszczenie na jego miejscu znaku V powoduje weryfikację, Natomiast znak spacji na miejscu znaku s powoduje zapis. Niektóre programy nie tolerują znaku spacji w nazwie pliku, w takim przypadku na pozycji znaku s należy umieścić znak inny niż V
Posługiwanie się trybem weryfikacji
Posługując sie programem SPEEDSCRIPT na taśmie zapisany został plik o nazwie TEKST. W tym celu po wyborze CTRL+S podana została nazwa D:TEKST, gdy plik został zapisane na taśmie należałoby go zweryfikować. Dyrektywa CTRL+L wprowadza tekst z urządzenia zewnętrznego na pozycję za kursorem, usuwając znajdujący się tam wcześniej tekst. Może się zdarzyć że plik TEKST się nie wczyta bo jest zbyt długi i nie mieści się w buforze edytora. Natomiast kasując tekst z edytora i wczytując go z taśmy może się zdarzyć że wystąpi błąd i tekst zostanie utracony.
Weryfikacja zatem pozwala zachować tekst w buforze edytora, bo weryfikacja nie kasuje go i nie wczytują się do bufora kolejne znaki. Taśmę należy przewinąć na początek pliku TEKST wydać polecenie CTRL+S i nazwę pliku do zapisu tym razem jako D:VTEKST. Ewentualne przekłamanie zostanie zgłoszone jako błąd 136, 140,143 lub 145.
Trudność pojawia się przy używaniu instrukcji SAVE w BASIC (i niektórych innych). Instrukcja SAVE zapisuje także linię wprowadzania w trybie bezpośrednim, a więc zapisana zostaje także podana nazwa pliku. Zapisanie programu pod nazwą SAVE "D:PLIK" i zweryfikowaniu go instrukcją SAVE "D:VPLIK" zakończy się błędem 145. Przyczyną jest właśnie inna nazwa zapisywanego pliku. Ominięcie tej niedogodności polega na wprowadzeniu w jednej linii instrukcji: SAVE "D:PLIK" SAVE "D:VPLIK". Gdy plik zostanie zapisany na taśmie, należy ją przewinąć na początek pliku i nacisnąć RETURN.
Struktura zapisu na taśmie
Źródło: IKS Nr 12/1988
Do zapisu wykorzystuje sie system uproszczonej modulacji częstotliwości. Występują trzy rodzaje generowanych impulsów.
1 - Impuls synchronizacji (stan wysoki przez 800 cykli zegara i stan niski przez 800 cykli zegara)
2 - Impuls "1" (stan wyskoki przez 400 cykli zegar i stan niski przez 400 cykli zegara)
3 - Impuls "0" (stan wysoki przez 200 cykli zegara i stan niski przez 200 cykli zegara)
Blok danych tworzony na taśmie składa się z 4096 impulsów synchronizacji, po których następują impulsy kodujące bajt danych, (od najstarszego bitu do najmłodszego bitu). Po nich generowany jest bajt sumy kontrolnej utworzonej jako suma modulo 256 wszystkich nadanych bajtów.
Przy korzystaniu z urządzenia D: na taśmie mogą być zapisane następujące bloki, (każdy blok poprzedzony jest impulsami synchronizującymi i zakończony bajtem sumy kontrolnej)
1 - Blok nagłówka, zawsze na początku pliku
Blok ma długość 12 bajtów. Na początku zawiera bajty 0,255 stanowiące identyfikator nagłówka, i 10 bajtów będących kodami ATASCII znaków nazwy pliku.
2 - Pełny blok danych, ilość tych bloków zależy od długości pliku
Blok ma długość 3074 bajtów. Na początku znajdują się bajty o wartości 0 i 12 ( 0+12x256=3072 ) informujące o ilości bajtów danych , a za nimi 3072 bajty danych (2+3072=3074).
3 - Blok końca pliku, zawsze na końcu pliku
Blok ma długość 3074 bajtów. Na początku znajdują się dwa bajty ( LSB, MSB ) informujące o ilości bajtów danych ( LSM + 256 x MSB ) Po nich następują bajty danych, a za nimi bajty uzupełniające blok do długości 3074 bajtów.
Montaż
Turbo współpracuje z dowolnym magnetofonem kasetowym w którym nie dokonuje sie żadnych przeróbek, z wyjątkiem pobrania sygnały wyjściowego z końcówki głośnika, o czym niżej w tym opisie.
Do wejścia interfejsu należy doprowadzić sygnał z gniazda słuchawkowego lub "gorącej" końcówki głośnika gdy komputer nie odczytuje danych z magnetofonu.
W razie potrzeby można zmniejszyć wartość opornika R12 (10k) nawet do 100 omów). Regulowany opornik ustawić tak, by na wyjściu interfejsu uzyskać sygnały o poziomach TTL.
Regulacji wymaga też ustawienie barwy dźwięku w magnetofonie (tony wysokie, średnie, niskie, korektor graficzny... etc)
Tranzystor T3 (BD136) należy wyposażyć w radiator!!!
W czasie operacji I/O obraz monitora jest wyłączany z podanymi niżej wyjątkami. W czasie zapisu lub odczytu impulsów synchronizacji na ekranie pojawią się szerokie pasy. W czasie zapisu lub odczytu rekordu danych, na ekranie pojawią się wąskie paski. W krótkich przerwach pomiędzy zapisywanymi rekordami pojawi się obraz. Gdy poszukiwany jest początek pliku na taśmie na ekranie obrazu brak.
W przerwach pomiędzy plikami, na ekranie mogą być widoczne dwa szerokie pasy oraz kilka drobnych, "poszarpanych" pasków o nieregularnych kształtach. Szczególnie wtedy gdy na taśmie pozostały ślady poprzednich nagrań, gdy taśma nie została wykasowana. Pojawiające sie pasy lub paski mogą "płynąć" z góry w dół. Należy dobrać opornik R12 i wyregulować potencjometr montażowy R11 tak by pojawiające sie na ekranie pasy i paski nie były postrzępione.
W trakcie transmisji danych z głośnika monitora komputerowego nie słychać charakterystycznych dźwięków, pisków, i innych "radosnych" efektów. Po udanej transmisji, na ekranie monitora pojawia sie obraz. Gdy wystąpi błąd w czasie operacji I/O i na ekran nie wraca obraz, to należy jednocześnie nacisnąć klawisze START, OPTION, SELECT.
W torze sterowania silnikiem magnetofonowym przełącznik P1 służy do ręcznego sterowania silnikiem, by na taśmie nie pojawiały sie wgnioty, co normalnie może mieć miejsce gdy silnikiem steruje oprogramowanie TURBO 2T06 i użytkownik systemu zaśnie.
Dla hackerów
System umożliwia niestandardowe wykorzystanie trybu TURBO, transmisja przebiega bez podziału na bloki, czyli znacznie szybciej. Tak zapisany program jest trudniejszy do skopiowania. Pod adresem 1792 ( $700 ) znajduje się instrukcja skoku do procedury transmisji. Procedura wymaga jako danych wejściowych adresu początku i końca bloku danych i kodu operacji.. Informacje te wprowadza sie w następujący sposób. Adres początku bloku umieszcza się w komórkach $50 i $51, w komórkach $52 i $53 umieszcza się adres pierwszego bajtu po przesłanym bloku (bajt ten nie będzie już transmitowany), oraz kod operacji umieszcza się w akumulatorze i w komórce $704. Niezerowa zawartość komórki $704 wymusza tryb weryfikacji bez względu na zawartość akumulatora. Zero w akumulatorze oznacza ZAPIS, a wartość różna od zera ODCZYT. Procedura transmisji zapisuje lub odczytuje wskazany blok danych uzupełniony suma kontrolna. Informacje o wyniku operacji zawiera rejestr Y, podobnie jak przy innych operacjach I/O