Turbo 2T06
From Atariki
Wersja z dnia 13:16, 4 maj 2008 Daniel Koźmiński (Dyskusja | wkład) (+ kategoria) ← Previous diff |
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) Next diff → |
||
Linia 1: | Linia 1: | ||
- | ==Montaż Turbo 2T06== | + | ==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. | 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. | ||
Linia 18: | Linia 37: | ||
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. | 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 | ||
[http://atariki.krap.pl/index.php/Grafika:Turbo_2T06.png Schemat] | [http://atariki.krap.pl/index.php/Grafika:Turbo_2T06.png Schemat] | ||
[[Kategoria:Atari 8-bit]] [[Kategoria: Magnetofonowe Systemy Turbo]] | [[Kategoria:Atari 8-bit]] [[Kategoria: Magnetofonowe Systemy Turbo]] |
Wersja z dnia 19:59, 4 maj 2008
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