ILC
From Atariki
| Wersja z dnia 21:21, 14 sie 2024 Mono (Dyskusja | wkład) (organizacja wyświetlania linii w ramkach) ← Previous diff |
Wersja z dnia 15:41, 16 sie 2024 Mono (Dyskusja | wkład) (długość pliku i format niestandardowy, rozszerzenia) Next diff → |
||
| Linia 1: | Linia 1: | ||
| + | == Format standardowy == | ||
| + | |||
| Format pliku generowany przez [[APAC View]]. Podobny do [[APC (format pliku)|APC]], tylko o dwukrotnie większej rozdzielczości (80x192), czyli zarówno linia jasności ([[Graphics 9]]) jak i koloru ([[Graphics 11]]) jest [[interlace|interlace'owana]]. Użyty m.in. w grze [[Sexy Six]]. | Format pliku generowany przez [[APAC View]]. Podobny do [[APC (format pliku)|APC]], tylko o dwukrotnie większej rozdzielczości (80x192), czyli zarówno linia jasności ([[Graphics 9]]) jak i koloru ([[Graphics 11]]) jest [[interlace|interlace'owana]]. Użyty m.in. w grze [[Sexy Six]]. | ||
| Linia 19: | Linia 21: | ||
| </table> | </table> | ||
| - | Spotykane są też rozszerzenia [[PZM]] oraz [[AP3]] dla tego formatu. | + | Standardowa długość pliku ILC to $3C00 (15360) bajtów. |
| + | |||
| + | '''UWAGA!''' Często spotyka się też pliki o dwa bajty dłuższe (15362) - wygląda na to, że są bez znaczenia dla wyświetlanego obrazu. | ||
| + | |||
| + | Spotykane są też rozszerzenia: | ||
| + | * [[PZM]] i [[AP3]] tworzone przez program "Pryzm", | ||
| + | * [[DGI]] i [[DGP]] tworzone przez program "Digi Paint", | ||
| + | * [[ESC]] tworzone przez program "Escal Paint" będący sukcesorem "Digi Paint". | ||
| + | |||
| + | == Format niestandardowy == | ||
| + | |||
| + | Niekiedy tymi rozszerzeniami opatrywane są pliki będące zgranymi bezpośrednio fragmentami pamięci z danymi obrazu przygotowanymi dla [[ANTIC]]-a. Taki plik jest wtedy dłuższy o 2 strony. | ||
| + | |||
| + | Z czego biorą się te dwie strony? | ||
| + | |||
| + | Pojedynczy ekran trybu GTIA o rozdzielczości 80×192 pikseli zajmuje 40*192=7680 ($1E00) bajtów. | ||
| + | Pamiętając o tym, że licznik pamięci ekranu pozwala poruszać się bez przeładowania (rozkazem LMS) maksymalnie w obszarze 4 KB ($1000 bajtów) należy taki ekran podzielić na dwie części, na przykład po 96 linii co zajmuje 40*96=3840 ($0F00) bajtów. | ||
| + | Przykładowo więc pierwszy blok umieszcza się w pamięci począwszy od adresu $4100 i rozciąga się on aż do $4FFF, a drugi od $5000 aż do $5EFF. | ||
| + | Pierwszy blok drugiego ekranu można umieścić zatem w $6100..$6FFF, a drugi w $7000..$7EFF. | ||
| + | Jak widać między ekranami zostaje wtedy luka dwóch stron pamięci w $5F00..$60FF - jest ona zgrywana do pliku, ale nie zawiera żadnych znaczących danych i powinna być zignorowana. | ||
| + | |||
| + | $4000..$40FF wolny RAM | ||
| + | $4100..$4FFF blok 96 linii 1 ekranu z luminancją | ||
| + | $5000..$5EFF blok 96 linii 2 ekranu z luminancją | ||
| + | $5F00..$60FF wolny RAM | ||
| + | $6100..$6FFF blok 96 linii 1 ekranu z chrominancją | ||
| + | $7000..$7EFF blok 96 linii 2 ekranu z chrominancją | ||
| + | $7F00..$7FFF wolny RAM | ||
| + | |||
| + | Taki plik ma wtedy ten nieużywany blok umieszczony między obrazami, a więc jego format wygląda tak: | ||
| + | |||
| + | <table border=1> | ||
| + | <tr><td>offset</td><td>długość</td><td>opis</td></tr> | ||
| + | <tr><td>$0000</td><td>$0028</td><td>linia 0 (linia skanningowa 0 ramki parzystej) obrazu w trybie [[Graphics 9]]</td></tr> | ||
| + | <tr><td>$0028</td><td>$0028</td><td>linia 1 (linia skanningowa 1 ramki nieparzystej) obrazu w trybie [[Graphics 9]]</td></tr> | ||
| + | <tr><td>$0050</td><td>$0028</td><td>linia 2 (linia skanningowa 2 ramki parzystej) obrazu w trybie [[Graphics 9]]</td></tr> | ||
| + | <tr><td>$0078</td><td>$0028</td><td>linia 3 (linia skanningowa 3 ramki nieparzystej) obrazu w trybie [[Graphics 9]]</td></tr> | ||
| + | <tr><td>...</td><td>...</td><td>kolejne linie</td></tr> | ||
| + | <tr><td>$1DB0</td><td>$0028</td><td>linia 190 (linia skanningowa 190 ramki parzystej) obrazu w trybie [[Graphics 9]]</td></tr> | ||
| + | <tr><td>$1DD8</td><td>$0028</td><td>linia 191 (linia skanningowa 191 ramki nieparzystej) obrazu w trybie [[Graphics 9]]</td></tr> | ||
| + | <tr><td>$1E00</td><td>$0200</td><td>pusty blok nieużywanych danych</td></tr> | ||
| + | <tr><td>$2000</td><td>$0028</td><td>linia 0 (linia skanningowa 0 ramki nieparzystej) obrazu w trybie [[Graphics 11]]</td></tr> | ||
| + | <tr><td>$2028</td><td>$0028</td><td>linia 1 (linia skanningowa 1 ramki parzystej) obrazu w trybie [[Graphics 11]]</td></tr> | ||
| + | <tr><td>$2050</td><td>$0028</td><td>linia 2 (linia skanningowa 2 ramki nieparzystej) obrazu w trybie [[Graphics 11]]</td></tr> | ||
| + | <tr><td>$2078</td><td>$0028</td><td>linia 3 (linia skanningowa 3 ramki parzystej) obrazu w trybie [[Graphics 11]]</td></tr> | ||
| + | <tr><td>...</td><td>...</td><td>kolejne linie</td></tr> | ||
| + | <tr><td>$3DB0</td><td>$0028</td><td>linia 190 (linia skanningowa 190 ramki nieparzystej) obrazu w trybie [[Graphics 11]]</td></tr> | ||
| + | <tr><td>$3DD8</td><td>$0028</td><td>linia 191 (linia skanningowa 191 ramki parzystej) obrazu w trybie [[Graphics 11]]</td></tr> | ||
| + | </table> | ||
| + | |||
| + | a sam plik ma długość $3E00 (15872) bajtów. | ||
| [[Kategoria:Formaty plików]] | [[Kategoria:Formaty plików]] | ||
| [[Kategoria: Tryby graficzne]] | [[Kategoria: Tryby graficzne]] | ||
Wersja z dnia 15:41, 16 sie 2024
Format standardowy
Format pliku generowany przez APAC View. Podobny do APC, tylko o dwukrotnie większej rozdzielczości (80x192), czyli zarówno linia jasności (Graphics 9) jak i koloru (Graphics 11) jest interlace'owana. Użyty m.in. w grze Sexy Six.
| offset | długość | opis |
| $0000 | $0028 | linia 0 (linia skanningowa 0 ramki parzystej) obrazu w trybie Graphics 9 |
| $0028 | $0028 | linia 1 (linia skanningowa 1 ramki nieparzystej) obrazu w trybie Graphics 9 |
| $0050 | $0028 | linia 2 (linia skanningowa 2 ramki parzystej) obrazu w trybie Graphics 9 |
| $0078 | $0028 | linia 3 (linia skanningowa 3 ramki nieparzystej) obrazu w trybie Graphics 9 |
| ... | ... | kolejne linie |
| $1DB0 | $0028 | linia 190 (linia skanningowa 190 ramki parzystej) obrazu w trybie Graphics 9 |
| $1DD8 | $0028 | linia 191 (linia skanningowa 191 ramki nieparzystej) obrazu w trybie Graphics 9 |
| $1E00 | $0028 | linia 0 (linia skanningowa 0 ramki nieparzystej) obrazu w trybie Graphics 11 |
| $1E28 | $0028 | linia 1 (linia skanningowa 1 ramki parzystej) obrazu w trybie Graphics 11 |
| $1E50 | $0028 | linia 2 (linia skanningowa 2 ramki nieparzystej) obrazu w trybie Graphics 11 |
| $1E78 | $0028 | linia 3 (linia skanningowa 3 ramki parzystej) obrazu w trybie Graphics 11 |
| ... | ... | kolejne linie |
| $3BB0 | $0028 | linia 190 (linia skanningowa 190 ramki nieparzystej) obrazu w trybie Graphics 11 |
| $3BD8 | $0028 | linia 191 (linia skanningowa 191 ramki parzystej) obrazu w trybie Graphics 11 |
Standardowa długość pliku ILC to $3C00 (15360) bajtów.
UWAGA! Często spotyka się też pliki o dwa bajty dłuższe (15362) - wygląda na to, że są bez znaczenia dla wyświetlanego obrazu.
Spotykane są też rozszerzenia:
- PZM i AP3 tworzone przez program "Pryzm",
- DGI i DGP tworzone przez program "Digi Paint",
- ESC tworzone przez program "Escal Paint" będący sukcesorem "Digi Paint".
Format niestandardowy
Niekiedy tymi rozszerzeniami opatrywane są pliki będące zgranymi bezpośrednio fragmentami pamięci z danymi obrazu przygotowanymi dla ANTIC-a. Taki plik jest wtedy dłuższy o 2 strony.
Z czego biorą się te dwie strony?
Pojedynczy ekran trybu GTIA o rozdzielczości 80×192 pikseli zajmuje 40*192=7680 ($1E00) bajtów. Pamiętając o tym, że licznik pamięci ekranu pozwala poruszać się bez przeładowania (rozkazem LMS) maksymalnie w obszarze 4 KB ($1000 bajtów) należy taki ekran podzielić na dwie części, na przykład po 96 linii co zajmuje 40*96=3840 ($0F00) bajtów. Przykładowo więc pierwszy blok umieszcza się w pamięci począwszy od adresu $4100 i rozciąga się on aż do $4FFF, a drugi od $5000 aż do $5EFF. Pierwszy blok drugiego ekranu można umieścić zatem w $6100..$6FFF, a drugi w $7000..$7EFF. Jak widać między ekranami zostaje wtedy luka dwóch stron pamięci w $5F00..$60FF - jest ona zgrywana do pliku, ale nie zawiera żadnych znaczących danych i powinna być zignorowana.
$4000..$40FF wolny RAM $4100..$4FFF blok 96 linii 1 ekranu z luminancją $5000..$5EFF blok 96 linii 2 ekranu z luminancją $5F00..$60FF wolny RAM $6100..$6FFF blok 96 linii 1 ekranu z chrominancją $7000..$7EFF blok 96 linii 2 ekranu z chrominancją $7F00..$7FFF wolny RAM
Taki plik ma wtedy ten nieużywany blok umieszczony między obrazami, a więc jego format wygląda tak:
| offset | długość | opis |
| $0000 | $0028 | linia 0 (linia skanningowa 0 ramki parzystej) obrazu w trybie Graphics 9 |
| $0028 | $0028 | linia 1 (linia skanningowa 1 ramki nieparzystej) obrazu w trybie Graphics 9 |
| $0050 | $0028 | linia 2 (linia skanningowa 2 ramki parzystej) obrazu w trybie Graphics 9 |
| $0078 | $0028 | linia 3 (linia skanningowa 3 ramki nieparzystej) obrazu w trybie Graphics 9 |
| ... | ... | kolejne linie |
| $1DB0 | $0028 | linia 190 (linia skanningowa 190 ramki parzystej) obrazu w trybie Graphics 9 |
| $1DD8 | $0028 | linia 191 (linia skanningowa 191 ramki nieparzystej) obrazu w trybie Graphics 9 |
| $1E00 | $0200 | pusty blok nieużywanych danych |
| $2000 | $0028 | linia 0 (linia skanningowa 0 ramki nieparzystej) obrazu w trybie Graphics 11 |
| $2028 | $0028 | linia 1 (linia skanningowa 1 ramki parzystej) obrazu w trybie Graphics 11 |
| $2050 | $0028 | linia 2 (linia skanningowa 2 ramki nieparzystej) obrazu w trybie Graphics 11 |
| $2078 | $0028 | linia 3 (linia skanningowa 3 ramki parzystej) obrazu w trybie Graphics 11 |
| ... | ... | kolejne linie |
| $3DB0 | $0028 | linia 190 (linia skanningowa 190 ramki nieparzystej) obrazu w trybie Graphics 11 |
| $3DD8 | $0028 | linia 191 (linia skanningowa 191 ramki parzystej) obrazu w trybie Graphics 11 |
a sam plik ma długość $3E00 (15872) bajtów.
