SpartaDOS
From Atariki
Wersja z dnia 12:19, 7 lip 2005 Jellonek (Dyskusja | wkład) (→Program ładujący SpartaDOS) ← Previous diff |
Aktualna wersja Jellonek (Dyskusja | wkład) (chwilowe (poki 4.4x jest mniejsze niz 4.50) zaktualizowanie danych) |
||
Linia 1: | Linia 1: | ||
- | Najbardziej zaawansowany [[DOS]] dla Atari XL/XE. Powstał w amerykańskiej firmie [[ICD|ICD, Inc.]] w połowie lat osemdziesiątych. Znane wersje: | + | {{grafr|spartados.png}} |
+ | |||
+ | Najbardziej zaawansowany [[DOS]] dla Atari XL/XE. Powstał w amerykańskiej firmie [[ICD|ICD, Inc.]] w połowie lat osiemdziesiątych. Znane wersje: | ||
* SpartaDOS 1.1 - komercyjny DOS dla komputerów serii 400/800, posługujący się też nieco innym od reszty wersji formatem dyskietek; wydany przez ICD. | * SpartaDOS 1.1 - komercyjny DOS dla komputerów serii 400/800, posługujący się też nieco innym od reszty wersji formatem dyskietek; wydany przez ICD. | ||
* SpartaDOS 2.3 - komercyjny DOS dla komputerów serii XL/XE, wydany przez ICD. | * SpartaDOS 2.3 - komercyjny DOS dla komputerów serii XL/XE, wydany przez ICD. | ||
- | * SpartaDOS 3.2 - komercyjny DOS dla komputerów serii XL/XE, wydany przez ICD. | + | * SpartaDOS 3.2d - komercyjny DOS dla komputerów serii XL/XE, wydany przez ICD. |
- | * SpartaDOS 3.3 - wydana przez [[FTe]] jako shareware nieco zmodyfikowana wersja SpartaDOS 3.2 | + | * SpartaDOS 3.2f, 3.2g i 3.2gx - wydana przez [[FTe]] jako shareware nieco zmodyfikowana wersja SpartaDOS 3.2 |
- | * [[SpartaDOS X]] 4.19-4.20 - opracowana zupełnie od nowa wersja SpartaDOS, wydana przez ICD na module ROM. | + | * SpartaDOS 3.3 - jeszcze jedna shareware'owa odmiana SpartaDOS 3.2 |
- | * [[SpartaDOS X]] 4.22 - nieco zmodyfikowana - nie zawsze na korzyść - wersja SpartaDOS X wydana przez [[FTe]] | + | * [[SpartaDOS X]] 4.17-4.21 - opracowana zupełnie od nowa wersja SpartaDOS, wydana przez ICD na module ROM. |
+ | * SpartaDOS X 4.22 - nieco zmodyfikowana - nie zawsze na korzyść - wersja SpartaDOS X wydana przez [[FTe]]. | ||
+ | * SpartaDOS X 4.39RC - próbna aktualizacja wersji 4.22, z poprawkami błędów, nowymi programami użytkowymi, sterownikami itp., przygotowywana przez [[DLT (grupa)|DLT]] [http://trub.atari8.info/index.php3?strona=html%2Fsdx_upgrade.html]. | ||
+ | * SpartaDOS X 4.4x - [[SpartaDOS_X#SpartaDOS_X_4.4x|kolejne wersje]] zaczynając od 4.41 przygotowywane przez DLT. | ||
+ | |||
+ | == Technikalia == | ||
+ | SpartaDOS pracuje z dyskietkami w [[format SpartaDOS|formacie niezgodnym z innymi DOSami]]. Standardowo instalowany jest sterownik zapewniający obsługę [[format AtariDOS 2|formatu AtariDOS 2]], lecz - w wersji 'X' DOS-u - może on nie być ładowany do pamięci. | ||
+ | |||
+ | Obsługuje praktycznie wszystkie pojemności dyskietek (oraz oczywiście dyski twarde) aż do 16MB pojemności (65536 sektorów po 256 bajtów) na jedną partycję (może ich być osiem). SpartaDOS X w wersjach do 4.22 włącznie obsługuje dziewięć dysków (wciąż po 16 MB), a w wersji od 4.39 - piętnaście po 32 MB. | ||
+ | |||
+ | Mimo iż system plików SpartaDOS nie wprowadza sam z siebie organiczeń co do liczby wpisów w katalogu, SpartaDOS 2.x i 3.x dopuszczają tylko do 126 wpisów; SpartaDOS X zwiększa ten limit do 1423 wpisów. | ||
- | SpartaDOS pracuje z dyskietkami w formacie niezgodnym z innymi DOSami (standardowo instalowany jest sterownik zapewniający obsługę [[Format AtariDOS|formatów AtariDOS]], lecz może on nie być ładowany do pamięci). Obsługuje praktycznie wszystkie pojemności dyskietek (oraz oczywiście dyski twarde) aż do 16MB pojemności (65536 sektorów po 256b). Trzeba podkreślić, że format ten jako jedyny na ośmiobitowym Atari pozwala na swobodny dostęp do danych zgromadzonych wewnątrz pliku - a SpartaDOS jako jedyny DOS implementuje ekwiwalent znanej z innych systemów funkcji seek(). | + | SpartaDOS jako jedyny popularny DOS dla ośmiobitowego Atari implementuje znaną z "większych" systemów funkcję [[SEEK]] (pozostałymi są raczej egzotyczne [[DOS 3.0]], [[DOS 4.0]] i [[DOS XE]]). |
- | Istnieje także w wersji zawartej w module ROM pod nazwą [[SpartaDOS X]], a [[Jiri Bernasek]] stworzył własną odmianę tego DOSa - [[BW-DOS]]. | + | Istnieje także stworzony przez [[BeWeSoft]]a klon SpartaDOS - [[BW-DOS]]. |
- | ==Program ładujący SpartaDOS== | + | Wadą SpartaDOS (której pozbawione są SpartaDOS X i BW-DOS) jest to, że rezyduje w pamięci znajdującej się "pod" ROM-em systemu operacyjnego. Z tego powodu nie można pod tym DOS-em używac niektórych programów korzystających z tej pamięci, np. z [[Turbo BASIC XL|Turbo BASIC-a XL]]. |
- | Program ten znajduje się w pierwszych trzech sektorach dyskietki sformatowanej przez SpartaDOS. W odróżnieniu od loadera [[AtariDOS 2.5|Atari DOS-u w wersji 2.5]], loader SpartaDOS jest w stanie wczytywać standardowe pliki binarne (z nagłówkiem $FFFF). Takim plikiem jest też plik *.DOS zawierający SpartaDOS. | + | == Obsługa == |
- | Loader SpartaDOS, głównie z powodu konieczności zmieszczenia się w przestrzeni ograniczonej do nieco ponad 256 bajtów, ma następujące ograniczenia: | + | SpartaDOS komunikuje się z użytkownikiem przez interpreter poleceń, podobnie jak [[DOS XL]] (jednak interpreter poleceń SpartaDOS jest bardziej rozbudowany niż w DOS XL). W SpartaDOS 1.1, 2.x i 3.x interpreter poleceń rezyduje cały czas w pamięci, natomiast w SpartaDOS X jest każdorazowo (przy uruchamianiu programów) usuwany z pamięci i ładowany ponownie, kiedy jest potrzebny (o ile użytkownik nie zażyczy sobie zatrzymania interpretera na stałe w pamięci lub jego wymiany na coś innego). |
- | * plik binarny może składać się z wielu segmentów, ale nie mogą się one zaczynać pełnym nagłówkiem ze znacznikiem $FFFF na początku; taki nagłówek może mieć tylko pierwszy segment pliku, dalsze muszą mieć nagłówki skrócone. | + | == Zobacz też == |
- | * plik binarny nie może naruszać pamięci w obszarach $90-$97 oraz $2E00-$3180. | + | * [[SpartaDOS X]] |
- | * plik binarny musi zawierać segment RUN. | + | * [[SpartaDOS Construction Set]] |
- | * po ostatnim segmencie muszą następować dwa bajty o wartości zero; to dziwaczne na pierwszy rzut oka ograniczenie spowodowane jest faktem, że loader nie czyta katalogu dysku, nie zna więc długości pliku, który ma załadować, a co za tym idzie - nie jest w stanie stwierdzić wystąpienia końca tego pliku, jeśli nie jest to jakoś zaznaczone w samych danych. Znacznikiem takim jest nagłówek segmentu zaczynający się od dwóch zer. | + | * [http://www.krap.pl/mirrorz/www.strotmann.de/cas/Infothek/RefSpartaDos/spartadosreference.pdf SpartaDOS Construction Set User's Manual] |
- | * długość żadnego z segmentów nie może być całkowitą wielokrotnością wielkości sektora; plik zawierający taki segment zostanie załadowany nieprawidłowo - jest to więc raczej błąd w programie loadera, niż ograniczenie. | + | * [http://www.krap.pl/mirrorz/www.strotmann.de/cas/Infothek/FTEdosReference32g/ SpartaDOS 3.2g Quick Reference] |
- | [[Kategoria:Atari 8-bit]] | + | [[Kategoria:Oprogramowanie Atari 8-bit]] |
+ | [[Kategoria:Programy użytkowe]] |
Aktualna wersja
Najbardziej zaawansowany DOS dla Atari XL/XE. Powstał w amerykańskiej firmie ICD, Inc. w połowie lat osiemdziesiątych. Znane wersje:
- SpartaDOS 1.1 - komercyjny DOS dla komputerów serii 400/800, posługujący się też nieco innym od reszty wersji formatem dyskietek; wydany przez ICD.
- SpartaDOS 2.3 - komercyjny DOS dla komputerów serii XL/XE, wydany przez ICD.
- SpartaDOS 3.2d - komercyjny DOS dla komputerów serii XL/XE, wydany przez ICD.
- SpartaDOS 3.2f, 3.2g i 3.2gx - wydana przez FTe jako shareware nieco zmodyfikowana wersja SpartaDOS 3.2
- SpartaDOS 3.3 - jeszcze jedna shareware'owa odmiana SpartaDOS 3.2
- SpartaDOS X 4.17-4.21 - opracowana zupełnie od nowa wersja SpartaDOS, wydana przez ICD na module ROM.
- SpartaDOS X 4.22 - nieco zmodyfikowana - nie zawsze na korzyść - wersja SpartaDOS X wydana przez FTe.
- SpartaDOS X 4.39RC - próbna aktualizacja wersji 4.22, z poprawkami błędów, nowymi programami użytkowymi, sterownikami itp., przygotowywana przez DLT [1].
- SpartaDOS X 4.4x - kolejne wersje zaczynając od 4.41 przygotowywane przez DLT.
Technikalia
SpartaDOS pracuje z dyskietkami w formacie niezgodnym z innymi DOSami. Standardowo instalowany jest sterownik zapewniający obsługę formatu AtariDOS 2, lecz - w wersji 'X' DOS-u - może on nie być ładowany do pamięci.
Obsługuje praktycznie wszystkie pojemności dyskietek (oraz oczywiście dyski twarde) aż do 16MB pojemności (65536 sektorów po 256 bajtów) na jedną partycję (może ich być osiem). SpartaDOS X w wersjach do 4.22 włącznie obsługuje dziewięć dysków (wciąż po 16 MB), a w wersji od 4.39 - piętnaście po 32 MB.
Mimo iż system plików SpartaDOS nie wprowadza sam z siebie organiczeń co do liczby wpisów w katalogu, SpartaDOS 2.x i 3.x dopuszczają tylko do 126 wpisów; SpartaDOS X zwiększa ten limit do 1423 wpisów.
SpartaDOS jako jedyny popularny DOS dla ośmiobitowego Atari implementuje znaną z "większych" systemów funkcję SEEK (pozostałymi są raczej egzotyczne DOS 3.0, DOS 4.0 i DOS XE).
Istnieje także stworzony przez BeWeSofta klon SpartaDOS - BW-DOS.
Wadą SpartaDOS (której pozbawione są SpartaDOS X i BW-DOS) jest to, że rezyduje w pamięci znajdującej się "pod" ROM-em systemu operacyjnego. Z tego powodu nie można pod tym DOS-em używac niektórych programów korzystających z tej pamięci, np. z Turbo BASIC-a XL.
Obsługa
SpartaDOS komunikuje się z użytkownikiem przez interpreter poleceń, podobnie jak DOS XL (jednak interpreter poleceń SpartaDOS jest bardziej rozbudowany niż w DOS XL). W SpartaDOS 1.1, 2.x i 3.x interpreter poleceń rezyduje cały czas w pamięci, natomiast w SpartaDOS X jest każdorazowo (przy uruchamianiu programów) usuwany z pamięci i ładowany ponownie, kiedy jest potrzebny (o ile użytkownik nie zażyczy sobie zatrzymania interpretera na stałe w pamięci lub jego wymiany na coś innego).