ATR
From Atariki
Wersja z dnia 12:28, 3 paź 2011 KMK (Dyskusja | wkład) (→Nagłówek SIO2PC) ← Previous diff |
Wersja z dnia 12:29, 3 paź 2011 KMK (Dyskusja | wkład) (→Nagłówek APE) Next diff → |
||
Linia 128: | Linia 128: | ||
<table BORDER="1" cellpadding="5" WIDTH="100%" cellspacing="0"> | <table BORDER="1" cellpadding="5" WIDTH="100%" cellspacing="0"> | ||
<tr> | <tr> | ||
+ | <th>Offset</th> | ||
<TH>Typ</TH> | <TH>Typ</TH> | ||
<TH>Nazwa</TH> | <TH>Nazwa</TH> | ||
Linia 134: | Linia 135: | ||
<tr> | <tr> | ||
+ | <td>$00</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
WORD | WORD | ||
Linia 146: | Linia 148: | ||
<tr> | <tr> | ||
+ | <td>$02</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
WORD | WORD | ||
Linia 158: | Linia 161: | ||
<tr> | <tr> | ||
+ | <td>$04</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
WORD | WORD | ||
Linia 170: | Linia 174: | ||
<tr> | <tr> | ||
+ | <td>$06</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
BYTE | BYTE | ||
Linia 182: | Linia 187: | ||
<tr> | <tr> | ||
+ | <td>$07</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
DWORD | DWORD | ||
Linia 194: | Linia 200: | ||
<tr> | <tr> | ||
+ | <td>$0B</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
DWORD | DWORD | ||
Linia 206: | Linia 213: | ||
<tr> | <tr> | ||
+ | <td>$0F</td> | ||
<td width="10%" align="center"> | <td width="10%" align="center"> | ||
BYTE | BYTE |
Wersja z dnia 12:29, 3 paź 2011
Obraz dyskietki 8-bitowego Atari używany w emulatorach, APE itp. opracowany przez Nicka Kennedy'ego.
Istnieje też odmiana ATZ, jest to obraz dyskietki w formacie ATR skompresowany przy pomocy programu gzip. Format ATZ (i ATR też) jest obsługiwany przez emulatory Atari800 oraz Atari800Win PLus.
Spis treści |
Nagłówek
16 bajtów zgodnie z poniższą tabelką. Istnieją dwie wersje, pierwsze siedem bajtów ma takie samo znaczenie w obu:
Nagłówek SIO2PC
Offset | Typ | Nazwa | Opis |
---|---|---|---|
$00 |
WORD |
wMagic |
Kolejno wartości: $96 i $02 ($0296, suma 'NICKATARI') |
$02 |
WORD |
wPars |
Rozmiar obrazu (bez nagłówka), liczony w paragrafach: innymi słowy rozmiar w bajtach podzielić przez 16. |
$04 |
WORD |
wSecSize |
Rozmiar sektora w bajtach: $80, $0100 lub $0200. |
$06 |
WORD |
wParsHigh |
Najstarsze słowo rozmiaru w paragrafach (wprowadzono w REV 3.00). |
$08 |
BYTE |
btFlags |
|
$09 |
WORD |
wBad |
Numer pierwszego "bad sektora" (jeśli bit 5 btFlags jest ustawiony). |
$0B |
DWORD |
dwUnused |
Cztery bajty nieużywane, równe $00. |
$0F |
BYTE |
btUnused |
Bajt nieużywany, równy $00. |
Nagłówek APE
Offset | Typ | Nazwa | Opis |
---|---|---|---|
$00 |
WORD |
wMagic |
Kolejno wartości: $96 i $02 ($0296, suma 'NICKATARI') |
$02 |
WORD |
wPars |
Rozmiar obrazu (bez nagłówka), liczony w paragrafach: innymi słowy rozmiar w bajtach podzielić przez 16. |
$04 |
WORD |
wSecSize |
Rozmiar sektora w bajtach: $80, $0100 lub $0200. |
$06 |
BYTE |
btParsHigh |
Najstarszy bajt rozmiaru w paragrafach. |
$07 |
DWORD |
dwCRC |
32-bit CRC pliku. Wartość ta jest ważna jeśli bit 1 bajtu nr 15 (btFlags) jest ustawiony. |
$0B |
DWORD |
dwUnused |
Niewykorzystane. |
$0F |
BYTE |
btFlags |
Pozostałe bity są niewykorzystane i powinny być równe zero. |
Treść
Po nagłówku występują po kolei sektory danych.
Dla wielkości sektora równej 256 bajtów występują dwa sposoby zapisania pierwszych trzech sektorów obrazu dysku:
- jako obszaru 768 bajtów, w których "rzeczywiste" dane sektorów zajmują pierwsze 384 bajty, a druga połówka jest niewykorzystana
- jako trzech porcji danych po 128 bajtów
Ten drugi format uchodzi za prawidłowy, w tej sytuacji sektor nr 4 zapisywany jest w pliku o 384 bajty wcześniej niż wynikałoby to z prostego obliczenia wzoru:
((nr_sektora-1)*wielkość_sektora)+wielkość_nagłówka
Z kolei obrazy dla rozmiaru sektora równego 512 bajtów (DD 512) mają, podobnie jak te z sektorami 128-bajtowymi, wszystkie sektory tej samej wielkości - nie ma wyróżnionego obszaru odczytu wstępnego (zajmuje on zresztą tylko jeden sektor, pierwszy).
Narzędzia
- Do przygotowania pliku ATR na komputerze PC można użyć programu makeATR autorstwa Soudiego.
- Wtyczka dla programu Total Commander umożliwiająca operowanie na plikach ATR autorstwa Pajero Total Commander ATR Plugin
Zobacz też
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.