COM
From Atariki
Wersja z dnia 21:59, 2 mar 2010 Yansen (Dyskusja | wkład) ← Previous diff |
Wersja z dnia 16:29, 17 cze 2011 KMK (Dyskusja | wkład) (→Formaty niestandardowe) Next diff → |
||
Linia 21: | Linia 21: | ||
* .word $FFFB ($FD,$FF) - blok określający położenie odwołań do symboli zewnętrznych. | * .word $FFFB ($FD,$FF) - blok określający położenie odwołań do symboli zewnętrznych. | ||
* .word $FFFC ($FC,$FF) - blok definicji symbolu. | * .word $FFFC ($FC,$FF) - blok definicji symbolu. | ||
+ | |||
+ | === OSS === | ||
+ | |||
+ | Firmowy program zawierający rozszerzenia dla [[BASIC XE]] istnieje w postaci pliku z rozszerzeniem "OSS". Jest to zwykły plik binarny Atari DOS-u, w którym sygnatura została zmieniona na wartość .word $DDFF ($FF,$DD). | ||
=== AlfAssembler === | === AlfAssembler === |
Wersja z dnia 16:29, 17 cze 2011
COM to format pliku zawierającego pliki wykonywalne dla ośmiobitowego Atari. Pliki o tym formacie występują też z rozszerzeniami EXE (głównie na Atari), oraz XEX (głównie do użycia w emulatorach). W wyniku niepełnej standaryzacji zamiennie stosuje się rozszerzenia .COM i .EXE, choć pierwotnie zakładano rozszerzenie .COM (command) dla plików rozszerzeń przeznaczonych dla procesora komend DOS-u oraz .EXE jako plików wykonywalnych (executable) czyli właściwych (użytkowych) programów.
Spis treści |
Format standardowy
Plik COM to standardowy plik binarny DOSu.
Standardowy format nie przewiduje automatycznej relokacji kodu, nagłówek dosłownie wskazuje adresy, pod które należy wczytać dane zawarte w bloku (segmencie). Relokowalne binaria ma tylko SpartaDOS X.
Formaty niestandardowe
XL OS
XL OS zawiera własny loader i relokator binariów nazwanych umownie ACX.
SpartaDOS X
SpartaDOS X definiuje, jak wspomniano powyżej, format relokowalnych binariów. Są w nim zapisane załączone do DOS-u procedury systemowe i większość programów narzędziowych. Opcję tworzenia takich binariów mają m.in.: Fast Assembler, HCASM oraz MADS. Segmenty tych binariów mają - w zależności od funkcji - następujące sygnatury:
- .word $FFFA ($FA,$FF) - blok nierelokowalny, ładowany pod wskazany w nagłówku adres (identycznie jak w przypadku bloku o sygnaturze $FFFF); na ogół zawiera nierezydentny (instalacyjny) segment jakiegoś sterownika.
- .word $FFFE ($FE,$FF) - blok relokowalny, ładowany nad MEMLO lub do dodatkowej pamięci, w zależności od zawartości nagłówka (blok może takźe rezerwować pusty obszar pamięci).
- .word $FFFD ($FD,$FF) - blok określający położenie adresów w programie, używany przy relokacji.
- .word $FFFB ($FD,$FF) - blok określający położenie odwołań do symboli zewnętrznych.
- .word $FFFC ($FC,$FF) - blok definicji symbolu.
OSS
Firmowy program zawierający rozszerzenia dla BASIC XE istnieje w postaci pliku z rozszerzeniem "OSS". Jest to zwykły plik binarny Atari DOS-u, w którym sygnatura została zmieniona na wartość .word $DDFF ($FF,$DD).
AlfAssembler
AlfAssembler definiuje format binarny funkcjonalnie identyczny ze standardowym, ale rozszerzony na całą przestrzeń adresową 65C816. Nagłówek ma osiem bajtów: po sygnaturze $FBFB nastepuje 24-bitowy adres poczatku bloku, a po nim 24-bitowy adres końca bloku.
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.