Atari Super Turbo

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 22:26, 7 gru 2004
Dely (Dyskusja | wkład)

← Previous diff
Aktualna wersja
FUJI (Dyskusja | wkład)
(Dotychczasowa struktura nagrania była dla wersji XC12.)
Linia 1: Linia 1:
-Pierwszy polski system turbo dla magnetofonów. Zaprojektował je [[Sławomir Nienałtowski]] (autor m.in. stacji [[SN-360]]), a sprzedawała je firma [[Atari Studio]] (późniejszy [[Mirage]]). System pierwotnie przeznaczony był dla magnetofonu [[1010]], później powstała wersja dla [[XC12]] i jego klonów. +Pierwszy polski system turbo dla magnetofonów. Zaprojektował go [[Sławomir Nienałtowski]] (autor m.in. stacji [[SN-360]]), zainspirowany podobnymi rozwiązaniami dla komputerów Commodore 64 i ZX Spectrum. Prace rozpoczął pod koniec 1986 roku, w ciągu pół roku przygotowując prototypową wersję dla magnetofonu [[1010]], a później także dla [[XC12]] i jego klonów. Pierwsza wersja systemu zaczęła być rozprowadzana w końcu 1987 roku. Sprzedawała go firma [[Atari Studio]] (późniejszy [[Mirage]]).
-Dodatkowym wyposażeniem AST był AST Cartridge, później AST Multicartridge zawierające zestaw programów użytkowych takich jak Loadery (kilka typów), Tracer, program do testowania skosu głowicy itp.+==Oprogramowanie==
 +AST był sprzedawany w kilku wersjach. W skład wersji podstawowej, oprócz przeróbki magnetofonu, wchodziła kaseta z oprogramowaniem do obsługi systemu, instrukcja obsługi tychże oraz kaseta z zestawem 16 gier w AST (zestawów było kilka). Na kasecie z oprogramowaniem znajdowało się 6 narzędzi:
 +* Loader AST - służący do wczytywania programów w formacie [[#AST|AST]]
 +* System operacyjny - program do uruchamiania, kopiowania i zamiany nazwy programów w formacie AST
 +* Copy wyk - program do konwersji programów w formacie [[COM]] (czyli popularnych "[[Loader z wykrzyknikiem|wykrzykników]]") do formatu AST
 +* Copy 1blok - program do konwersji jednoblokowych plików [[BOOT (format pliku)|bootowalnych]] do formatu AST
 +* Test - program do ustawiania skosu głowicy
 +* AST BASIC - handler urządzenia T: pozwalający na zapis programów [[BASIC]]-owych w AST
 + 
 +Wersja dla bardziej zamożnych użytkowników zamiast kasety z programami użytkowymi zawierała [[cartridge]] "AST Utility". Prezentował on opcje do wyboru:
 +<ol start="0">
 +<li>Wyjście do systemu</li>
 +<li>AST Loader - patrz wyżej</li>
 +<li>BUT Loader - do wczytywania programów w formacie [[#BUT|BUT]]</li>
 +<li>BOT Loader - do wczytywania programów w formacie [[#BOT|BOT]]</li>
 +<li>AST BASIC - patrz wyżej</li>
 +<li>AST Copy - patrz wyżej (System operacyjny)</li>
 +<li>Wyk to AST Copy - patrz wyżej (Copy wyk)</li>
 +<li>Unichanger</li>
 +</ol>
 + 
 +W późniejszym czasie zamiast AST Utility sprzedawany był AST Multi-Cartridge, na którym zawarty był bogatszy zestaw programów.
 + 
 +Programy użytkowe były w osobnych wersjach dla magnetofonów [[1010]] i [[XC12]].
 + 
 +Atari Studio sprzedawało też gotowe zestawy gier w systemie AST. W studiu można też było zamówić kasetę z indywidualnie wybranym zestawem programów, które programiści z AS przerabiali na AST w razie potrzeby.
 + 
 +*[[:Grafika:AST zestaw podstawowy - wkładka.jpg|Jedna z kaset dołączanych do systemu AST]]
 +*[[:Grafika:AST zestaw 05 - wkładka.jpg|Gotowy zestaw gier nr 05]]
 +*[[:Grafika:AST zestaw 13 - wkładka.jpg|Gotowy zestaw gier nr 13]]
 +*[[:Grafika:AST zestaw na życzenie - wkładka.jpg|Przykładowy zestaw indywidualnie zamówionych gier]]
 + 
 +==Formaty plików==
 +Programy w turbo AST były zapisywane w jednym z 3 formatów: "AST", "BUT" i "BOT". Na kasetach rozprowadzanych przez Atari Studio obok każdego programu widniała nazwa formatu, w którym jest on zapisany.
 + 
 +===AST===
 +Najprostszy format "AST" służy do konwersji programów jednoblokowych ([[COM]] i [[BOOT (format pliku)|BOOT]]). Przed wczytaniem programu należy wgrać wspomniany wyżej Loader AST. Plik w formacie AST ma zapisaną nazwę (do 20 znaków), która pojawia się na ekranie po wczytaniu 1 bloku. Naciśnięcie spacji powoduje kontynuację odczytu, natomiast Reset powoduje powrót do loadera.
 + 
 +===BUT===
 +Format "BUT" służy do konwersji programów wieloblokowych. Do wczytania programu potrzebny jest Loader BUT, dostępny na cartridge'u AST. Na kasetach rozprowadzanych przez Atari Studio loader BUT był nagrany przed programami, które go potrzebowały.
 + 
 +===BOT===
 +Format "BOT" służy do konwersji programów wieloczęściowych, w których poszczególne części są ładowane oddzielnie (np. gry z doczytywanymi poziomami). Do wczytania programu potrzebny jest Loader BOT, dostępny na cartridge'u AST. Na kasetach rozprowadzanych przez Atari Studio loader BOT był nagrany przed programami, które go potrzebowały.
 + 
 +===Inne formaty===
 +System AST jest kompatybilny sprzętowo z innymi systemami turbo, jak [[KSO Turbo 2000]] - do wczytania programów zapisanych w Turbo 2000 wystarczy użyć specjalnego loadera. Na rynku dostępne były zestawy kaset z programami w systemie Turbo 2000, które zawierały loader [[AST-Turbo 2000 Converter]] autorstwa [[*Ajek|*Ajka]].
 + 
 +===Szczegóły techniczne===
 +Montaż polega na instalacji płytki interfejsu wewnątrz magnetofonu oraz, w przypadku XC12, poprowadzeniu dodatkowego kabla z interfejsu do styku COMMAND w [[gniazdo SIO|gnieździe SIO]].
 + 
 +Podczas odczytu oprogramowanie AST uaktywnia linię COMMAND, co powoduje przełączenie magnetofonu w tryb turbo. Sygnał dźwiękowy jest teraz interpretowany przez magnetofon inaczej - na bicie 4 rejestru [[Rejestry POKEY-a#SKSTAT|SKSTAT]] pojawia się 0 lub 1 w zależności od tego, czy zbocze sygnału dźwiękowego odpowiednio opada się lub wznosi (''lub na odwrót''). Standardowe oprogramowanie AST jest bardzo prymitywne - inaczej niż w [[Turbo Blizzard]] czy [[turbo 6000]], podczas odczytu nie są używane żadne przerwania [[POKEY]]-a ani [[PIA]].
 + 
 +==Struktura nagrania (wersja dla XC12)==
 +''Opis na podstawie analizy sygnału z taśmy''
 + 
 +Do zapisu wykorzystywana jest modulacja szerokości impulsu ([http://pl.wikipedia.org/wiki/Pulse_Width_Modulation PWM]). Przez impuls rozumiana jest sekwencja stanów '1' i '0' (w tej kolejności) na linii danych portu szeregowego lub inaczej mówiąc sekwencja wysokiego i niskiego poziomu sygnału na taśmie (lub sekwencja zbocza narastającego i opadającego). Występują trzy rodzaje impulsów:
 +* impulsy o szerokości 0.5 ms odpowiadające bitowi '1' i sygnałowi pilotującemu
 +* impulsy o szerokości 0.25 ms odpowiadające bitowi '0'
 +* impulsy o szerokości 1.5 ms odpowiadające sygnałowi 'stop'
 + 
 +Zapis jest podzielony na bloki. Każdy blok jest zbudowany podobnie i zawiera kolejno:
 +* sygnał pilotujący trwający 5s dla pierwszego bloku nagrania i 2s dla bloków kolejnych
 +* 1 impuls odpowiadający bitowi '0' oznaczający koniec sygnału pilotującego i poczatek danych
 +* bajty danych; generalnie ich ilość jest różna w każdym bloku
 +* 4 impulsy odpowiadające bitowi '0'
 +* 128 impulsów sygnału 'stop'; razem z poprzednimi 4 impulsami oznacza koniec bloku
 + 
 +Bity w bajcie zapisywane są w kolejności od najmłodszego do najstarszego.
 + 
 +====Format AST (i być może inne)====
 +Nagranie zawiera co najmniej dwa bloki: blok informacyjny i jeden lub więcej bloków danych.
 + 
 +Blok nie zawiera specjalnego bajtu z sumą kontrolną, sumy kontrolne sa przechowywane w bloku informacyjnym (pierwszym bloku nagrania). Suma kontrolna obliczana jest przez wykonanie operacji [http://pl.wikipedia.org/wiki/Xor XOR] na wszystkich bajtach bloku.
 + 
 +Blok informacyjny ma 256 bajtów i zbudowany jest następująco:
 +{| border="1"
 +|-
 +!Offset
 +!Długość
 +!Zawartość
 +|-
 +|0
 +|1
 +|Ilość bloków danych bez uwzględniania bloku informacyjnego (?)
 +|-
 +|1
 +|1
 +|?? (co najmniej 2 możliwości: 1 - bajt dobrany tak, żeby suma kontrolna całego bloku informacyjnego wynosiła 0; 2 - ilość 4-bajtowych pozycji na dane dotyczące ładowania kolejnych bloków zwiększona o 3; do sprawdzenia)
 +|-
 +|2+n*4<br>n=0..43(?)
 +|2
 +|Adres ładowania kolejnych bloków (LSB, MSB) (pozycje nieużywane są losowe ?)
 +|-
 +|4+n*4<br>n=0..43(?)
 +|2
 +|Długość kolejnych bloków (LSB, MSB) (pozycje nieużywane są losowe ?)
 +|-
 +|178
 +|2
 +|?
 +|-
 +|180
 +|20
 +|Nazwa programu zapisana przy użyciu kodów ekranowych (nie ASCII)
 +|-
 +|200
 +|44 (?)
 +|Sumy kontrolne kolejnych bloków poczynając od bloku informacyjnego. Suma kontrolna bloku informacyjnego zawsze wynosi 0 (odpowiada za to któryś, odpowiednio dobrany, bajt w tym bloku) (pozycje nieużywane są losowe ?)
 +|-
 +|244
 +|12
 +|??
 +|}
 + 
 + 
 +Bloki danych nie zawieraja niczego oprócz samych, czystych danych.
 + 
 +==Bibliografia==
 +*[[Tomasz Mazur]], "Atari Super Turbo". [http://atarionline.pl/biblioteka/czasopisma/Bajtek/Bajtek_1989_04.djvu Bajtek 4/1989] (w [[Atarionline.pl]]), s. 10-11
 +*[[Tomasz Mazur]], "Atari Super Turbo". [http://atarionline.pl/biblioteka/czasopisma/Komputer/Komputer_1989_04.djvu "Komputer" 4/1989] (w [[Atarionline.pl]]), s. 20-22 (także u [[Dely]]'ego[http://www.kozminski.info/smietnik/atari_super_turbo.pdf])
 +*Jakub Cebula, "AST - drugie spojrzenie". [http://atarionline.pl/biblioteka/czasopisma/Bajtek/Bajtek_1990_11_12.djvu Bajtek 11-12/1990] (w [[Atarionline.pl]]), s. 8
 +*[[Tomasz Mazur]], "AST - odpowiedź". [http://atarionline.pl/biblioteka/czasopisma/Bajtek/Bajtek_1991_03.djvu Bajtek 3/1991] (w [[Atarionline.pl]]), s. 12
 + 
 +==Zobacz też==
 +*[[Grafika:AST_MULTICART.pdf|Instrukcja do AST Multi-Cartridge]]
 +*[[Systemy turbo]]
 + 
 +==Odnośniki zewnętrzne==
 +*[http://ftp.pigwa.net/stuff/mirror/www.atari.cuprum.com.pl/ast.htm Opis konstrukcji AST Cartridge] wraz z obrazem cartridge'a AST Utility XC12 (pod emulatorem należy wybrać typ "Phoenix")
 +*[http://atarionline.pl/v01/index.php?ct=utils&sub=9.%20ROM-y&tg=Kasetowe%20systemy%20turbo#Kasetowe%20systemy%20turbo Katalog "Kasetowe Systemy turbo" na AtariOnline.pl] - tu dostępny obraz kartridża AST Utility w wersji XC12 (AST (v1).rom) i 1010 (AST (v2).rom)
 + 
 +[[Kategoria:Atari 8-bit]]
 +[[Kategoria:Magnetofonowe systemy turbo]]

Aktualna wersja

Pierwszy polski system turbo dla magnetofonów. Zaprojektował go Sławomir Nienałtowski (autor m.in. stacji SN-360), zainspirowany podobnymi rozwiązaniami dla komputerów Commodore 64 i ZX Spectrum. Prace rozpoczął pod koniec 1986 roku, w ciągu pół roku przygotowując prototypową wersję dla magnetofonu 1010, a później także dla XC12 i jego klonów. Pierwsza wersja systemu zaczęła być rozprowadzana w końcu 1987 roku. Sprzedawała go firma Atari Studio (późniejszy Mirage).

Spis treści

Oprogramowanie

AST był sprzedawany w kilku wersjach. W skład wersji podstawowej, oprócz przeróbki magnetofonu, wchodziła kaseta z oprogramowaniem do obsługi systemu, instrukcja obsługi tychże oraz kaseta z zestawem 16 gier w AST (zestawów było kilka). Na kasecie z oprogramowaniem znajdowało się 6 narzędzi:

  • Loader AST - służący do wczytywania programów w formacie AST
  • System operacyjny - program do uruchamiania, kopiowania i zamiany nazwy programów w formacie AST
  • Copy wyk - program do konwersji programów w formacie COM (czyli popularnych "wykrzykników") do formatu AST
  • Copy 1blok - program do konwersji jednoblokowych plików bootowalnych do formatu AST
  • Test - program do ustawiania skosu głowicy
  • AST BASIC - handler urządzenia T: pozwalający na zapis programów BASIC-owych w AST

Wersja dla bardziej zamożnych użytkowników zamiast kasety z programami użytkowymi zawierała cartridge "AST Utility". Prezentował on opcje do wyboru:

  1. Wyjście do systemu
  2. AST Loader - patrz wyżej
  3. BUT Loader - do wczytywania programów w formacie BUT
  4. BOT Loader - do wczytywania programów w formacie BOT
  5. AST BASIC - patrz wyżej
  6. AST Copy - patrz wyżej (System operacyjny)
  7. Wyk to AST Copy - patrz wyżej (Copy wyk)
  8. Unichanger

W późniejszym czasie zamiast AST Utility sprzedawany był AST Multi-Cartridge, na którym zawarty był bogatszy zestaw programów.

Programy użytkowe były w osobnych wersjach dla magnetofonów 1010 i XC12.

Atari Studio sprzedawało też gotowe zestawy gier w systemie AST. W studiu można też było zamówić kasetę z indywidualnie wybranym zestawem programów, które programiści z AS przerabiali na AST w razie potrzeby.

Formaty plików

Programy w turbo AST były zapisywane w jednym z 3 formatów: "AST", "BUT" i "BOT". Na kasetach rozprowadzanych przez Atari Studio obok każdego programu widniała nazwa formatu, w którym jest on zapisany.

AST

Najprostszy format "AST" służy do konwersji programów jednoblokowych (COM i BOOT). Przed wczytaniem programu należy wgrać wspomniany wyżej Loader AST. Plik w formacie AST ma zapisaną nazwę (do 20 znaków), która pojawia się na ekranie po wczytaniu 1 bloku. Naciśnięcie spacji powoduje kontynuację odczytu, natomiast Reset powoduje powrót do loadera.

BUT

Format "BUT" służy do konwersji programów wieloblokowych. Do wczytania programu potrzebny jest Loader BUT, dostępny na cartridge'u AST. Na kasetach rozprowadzanych przez Atari Studio loader BUT był nagrany przed programami, które go potrzebowały.

BOT

Format "BOT" służy do konwersji programów wieloczęściowych, w których poszczególne części są ładowane oddzielnie (np. gry z doczytywanymi poziomami). Do wczytania programu potrzebny jest Loader BOT, dostępny na cartridge'u AST. Na kasetach rozprowadzanych przez Atari Studio loader BOT był nagrany przed programami, które go potrzebowały.

Inne formaty

System AST jest kompatybilny sprzętowo z innymi systemami turbo, jak KSO Turbo 2000 - do wczytania programów zapisanych w Turbo 2000 wystarczy użyć specjalnego loadera. Na rynku dostępne były zestawy kaset z programami w systemie Turbo 2000, które zawierały loader AST-Turbo 2000 Converter autorstwa *Ajka.

Szczegóły techniczne

Montaż polega na instalacji płytki interfejsu wewnątrz magnetofonu oraz, w przypadku XC12, poprowadzeniu dodatkowego kabla z interfejsu do styku COMMAND w gnieździe SIO.

Podczas odczytu oprogramowanie AST uaktywnia linię COMMAND, co powoduje przełączenie magnetofonu w tryb turbo. Sygnał dźwiękowy jest teraz interpretowany przez magnetofon inaczej - na bicie 4 rejestru SKSTAT pojawia się 0 lub 1 w zależności od tego, czy zbocze sygnału dźwiękowego odpowiednio opada się lub wznosi (lub na odwrót). Standardowe oprogramowanie AST jest bardzo prymitywne - inaczej niż w Turbo Blizzard czy turbo 6000, podczas odczytu nie są używane żadne przerwania POKEY-a ani PIA.

Struktura nagrania (wersja dla XC12)

Opis na podstawie analizy sygnału z taśmy

Do zapisu wykorzystywana jest modulacja szerokości impulsu (PWM). Przez impuls rozumiana jest sekwencja stanów '1' i '0' (w tej kolejności) na linii danych portu szeregowego lub inaczej mówiąc sekwencja wysokiego i niskiego poziomu sygnału na taśmie (lub sekwencja zbocza narastającego i opadającego). Występują trzy rodzaje impulsów:

  • impulsy o szerokości 0.5 ms odpowiadające bitowi '1' i sygnałowi pilotującemu
  • impulsy o szerokości 0.25 ms odpowiadające bitowi '0'
  • impulsy o szerokości 1.5 ms odpowiadające sygnałowi 'stop'

Zapis jest podzielony na bloki. Każdy blok jest zbudowany podobnie i zawiera kolejno:

  • sygnał pilotujący trwający 5s dla pierwszego bloku nagrania i 2s dla bloków kolejnych
  • 1 impuls odpowiadający bitowi '0' oznaczający koniec sygnału pilotującego i poczatek danych
  • bajty danych; generalnie ich ilość jest różna w każdym bloku
  • 4 impulsy odpowiadające bitowi '0'
  • 128 impulsów sygnału 'stop'; razem z poprzednimi 4 impulsami oznacza koniec bloku

Bity w bajcie zapisywane są w kolejności od najmłodszego do najstarszego.

Format AST (i być może inne)

Nagranie zawiera co najmniej dwa bloki: blok informacyjny i jeden lub więcej bloków danych.

Blok nie zawiera specjalnego bajtu z sumą kontrolną, sumy kontrolne sa przechowywane w bloku informacyjnym (pierwszym bloku nagrania). Suma kontrolna obliczana jest przez wykonanie operacji XOR na wszystkich bajtach bloku.

Blok informacyjny ma 256 bajtów i zbudowany jest następująco:

Offset Długość Zawartość
0 1 Ilość bloków danych bez uwzględniania bloku informacyjnego (?)
1 1 ?? (co najmniej 2 możliwości: 1 - bajt dobrany tak, żeby suma kontrolna całego bloku informacyjnego wynosiła 0; 2 - ilość 4-bajtowych pozycji na dane dotyczące ładowania kolejnych bloków zwiększona o 3; do sprawdzenia)
2+n*4
n=0..43(?)
2 Adres ładowania kolejnych bloków (LSB, MSB) (pozycje nieużywane są losowe ?)
4+n*4
n=0..43(?)
2 Długość kolejnych bloków (LSB, MSB) (pozycje nieużywane są losowe ?)
178 2 ?
180 20 Nazwa programu zapisana przy użyciu kodów ekranowych (nie ASCII)
200 44 (?) Sumy kontrolne kolejnych bloków poczynając od bloku informacyjnego. Suma kontrolna bloku informacyjnego zawsze wynosi 0 (odpowiada za to któryś, odpowiednio dobrany, bajt w tym bloku) (pozycje nieużywane są losowe ?)
244 12 ??


Bloki danych nie zawieraja niczego oprócz samych, czystych danych.

Bibliografia

Zobacz też

Odnośniki zewnętrzne

Personal tools