CAS

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 10:28, 6 sie 2006
KMK (Dyskusja | wkład)

← Previous diff
Wersja z dnia 21:53, 15 paź 2007
Krótki (Dyskusja | wkład)
(Szczegółowy opis formatu pliku)
Next diff →
Linia 3: Linia 3:
Analogicznie, program [[CAS2WAV]] zamienia pliki CAS na format WAV, który następnie można zapisać na kasetę. Analogicznie, program [[CAS2WAV]] zamienia pliki CAS na format WAV, który następnie można zapisać na kasetę.
-{{stub}}+Format CAS został zaprojektowany przez [[Ernest R. Schreurs|Ernesta R. Schreursa]], autora pakietu WAV2CAS.
 + 
 +==Opis formatu CAS==
 +Plik CAS składa się z bloków, z których każdy ma nagłówek długości 8 bajtów. Każdy blok ma następującą postać:
 +{| border=1
 +|+ Opis bloku CAS
 +! Offset !! Rozmiar (bajty) !! Nazwa !! Znaczenie
 +|-
 +| 0 || 4 || ''type'' || Typ bloku - 4-znakowy napis.
 +|-
 +| 4 || 2 || ''length'' || długość bloku (najpierw LSB; długość nagłówka nie wliczona)
 +|-
 +| 6 || 2 || ''aux'' || zależne od typu bloku
 +|-
 +| 8 || ''length'' || ''data'' || dane (znaczenie zależne od typu bloku)
 +|}
 +Zatem cały blok ma długość ''length''+8.
 + 
 +Plik CAS ma następującą strukturę: najpierw blok typu "FUJI", a następnie dowolna kombinacja bloków typu "baud" i "data".
 + 
 +===Typy bloków===
 +Nazwa typu bloku jest jednocześnie wartością pola ''type'' nagłówka.
 + 
 +====FUJI====
 +Blok typu "FUJI" występuje tylko raz, na początku pliku. Pole ''aux'' jest ignorowane, natomiast ''data'' zawiera ciąg ASCII będący (czytelnym dla użytkownika) opisem pliku.
 +====baud====
 +Blok typu "baud" określa częstotliwość (w bodach) następujących po nim bloków typu "data" (aż do następneg bloku "baud"). Blok ten ma długość ''length'' równą 0, a pole ''aux'' zawiera częstotliwość w formie liczby dwubajtowej (najpierw LSB). Standardowa prędkość transmisji wynosi 600 bodów i taka też wartość jest domyślnie przyjmowana przez program CAS2WAV dla bloków "data", których nie poprzedza blok "baud".
 +====data====
 +Blok typu "data" zawiera właściwe dane - pojedynczy rekord pliku taśmowego. Pole ''aux'' zawiera długość przerwy (IRG - Inter Record Gap) znajdującej się '''przed''' rekordem, a ''data'' zawiera kolejne bajty znajdujące się w rekordzie.
 + 
 +W bloku typu "data" można przechować wyłącznie standardowe rekordy [[SIO]] (aczkolwiek moga mieć dowolną długość, nie tylko standardowe 132 bajty). W standardowym rekordzie SIO każdy bajt jest zakodowany na 10 bitach: bit startu = 0, 8 bitów danych (najpierw LSB), bit stopu = 1. Nie jest możliwe zapisanie rekordu, w środku którego zmienia się prędkość odczytu, ani żadnych innych nietypowych danych. Fromat CAS nie pozwala zatem zarchiwizować taśm zabezpieczonych przed kopiowaniem.
 + 
 +==Użyteczność==
 +Oprócz programów WAV2CAS i CAS2WAV, format CAS jest także obsługiwany przez emulator [[Atari800]] i pochodne, aczkolwiek wszystkie rekordy są tam wczytywane z prędkością 600 bodów (stan z wersji 2.0.3). Plik CAS można także wysłać bespośrednio do Atari za pomocą kabla [[SIO2PC]] i programu CAS2SIO/cassio, a także za pomocą [[SIO2USB]].
 + 
 +==Odnośniki zewnętrzne==
 +[http://home.planet.nl/~ernest/atarixle.html Strona domowa Ernesta R. Schreursa] - m. in. programy WAV2CAS, CAS2WAV
 + 
 +[[Kategoria:Atari 8-bit]]
[[Kategoria:Emulacja]] [[Kategoria:Emulacja]]
[[Kategoria:Formaty plików]] [[Kategoria:Formaty plików]]

Wersja z dnia 21:53, 15 paź 2007

Plik zawierający obraz taśmy z Atari. Przygotowywany jet przy pomocy programu WAV2CAS - zamiana modulacji częstotliwości WAV na postać binarną.

Analogicznie, program CAS2WAV zamienia pliki CAS na format WAV, który następnie można zapisać na kasetę.

Format CAS został zaprojektowany przez Ernesta R. Schreursa, autora pakietu WAV2CAS.

Spis treści

Opis formatu CAS

Plik CAS składa się z bloków, z których każdy ma nagłówek długości 8 bajtów. Każdy blok ma następującą postać:

Opis bloku CAS
Offset Rozmiar (bajty) Nazwa Znaczenie
0 4 type Typ bloku - 4-znakowy napis.
4 2 length długość bloku (najpierw LSB; długość nagłówka nie wliczona)
6 2 aux zależne od typu bloku
8 length data dane (znaczenie zależne od typu bloku)

Zatem cały blok ma długość length+8.

Plik CAS ma następującą strukturę: najpierw blok typu "FUJI", a następnie dowolna kombinacja bloków typu "baud" i "data".

Typy bloków

Nazwa typu bloku jest jednocześnie wartością pola type nagłówka.

FUJI

Blok typu "FUJI" występuje tylko raz, na początku pliku. Pole aux jest ignorowane, natomiast data zawiera ciąg ASCII będący (czytelnym dla użytkownika) opisem pliku.

baud

Blok typu "baud" określa częstotliwość (w bodach) następujących po nim bloków typu "data" (aż do następneg bloku "baud"). Blok ten ma długość length równą 0, a pole aux zawiera częstotliwość w formie liczby dwubajtowej (najpierw LSB). Standardowa prędkość transmisji wynosi 600 bodów i taka też wartość jest domyślnie przyjmowana przez program CAS2WAV dla bloków "data", których nie poprzedza blok "baud".

data

Blok typu "data" zawiera właściwe dane - pojedynczy rekord pliku taśmowego. Pole aux zawiera długość przerwy (IRG - Inter Record Gap) znajdującej się przed rekordem, a data zawiera kolejne bajty znajdujące się w rekordzie.

W bloku typu "data" można przechować wyłącznie standardowe rekordy SIO (aczkolwiek moga mieć dowolną długość, nie tylko standardowe 132 bajty). W standardowym rekordzie SIO każdy bajt jest zakodowany na 10 bitach: bit startu = 0, 8 bitów danych (najpierw LSB), bit stopu = 1. Nie jest możliwe zapisanie rekordu, w środku którego zmienia się prędkość odczytu, ani żadnych innych nietypowych danych. Fromat CAS nie pozwala zatem zarchiwizować taśm zabezpieczonych przed kopiowaniem.

Użyteczność

Oprócz programów WAV2CAS i CAS2WAV, format CAS jest także obsługiwany przez emulator Atari800 i pochodne, aczkolwiek wszystkie rekordy są tam wczytywane z prędkością 600 bodów (stan z wersji 2.0.3). Plik CAS można także wysłać bespośrednio do Atari za pomocą kabla SIO2PC i programu CAS2SIO/cassio, a także za pomocą SIO2USB.

Odnośniki zewnętrzne

Strona domowa Ernesta R. Schreursa - m. in. programy WAV2CAS, CAS2WAV

Personal tools