FNT

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 22:19, 31 maj 2010
Mono (Dyskusja | wkład)
(link do kodów ekranowych)
← Previous diff
Aktualna wersja
Mono (Dyskusja | wkład)
(Zobacz też)
Linia 1: Linia 1:
-Format pliku czcionki rastrowej.+Format pliku fontu rastrowego.
 +Zawiera definicje poszczególnych znaków fontu w postaci wymaganej do bezpośredniego wyświetlenia przez maszynę (jest to format "zależny od urządzenia").
-Zawiera definicje znaków czcionki w postaci wymaganej do bezpośredniego wyświetlenia przez maszynę (jest to format "zależny od urządzenia").+Każdy znak zdefiniowany jest za pomocą 8 następujących po sobie bajtów i definiuje kolejne linie znaku (licząc od góry).
-Każdy znak zdefiniowany jest za pomocą 8 następujących po sobie bajtów i definiuje kolejne linie znaku (licząc od góry). Znaki w zestawie uporządkowane są według [[Kody ekranowe|kodów ekranowych]], a nie wg [[ATASCII|kodów ATASCII]].+ 0 $00 ........
 + 1 $18 ...oo...
 + 2 $3C ..oooo..
 + 3 $66 .oo..oo.
 + 4 $66 .oo..oo.
 + 5 $7E .oooooo.
 + 6 $66 .oo..oo.
 + 7 $00 ........
-Sposób interpretacji piksela zależy od trybu graficznego, w którym font zostanie użyty (liczby hex 0..F oznaczają indeks koloru piksela): +Znaki w zestawie uporządkowane są według [[Kody ekranowe|kodów ekranowych]], a nie wg [[ATASCII|kodów ATASCII]].
-* w trybach [[Graphics 0|0]], [[Graphics 1|1]] i [[Graphics 2|2]] OS oraz [[ANTIC Display List#Tryby znakowe|3 ANTICa]] pojedynczy bit odpowiada pojedynczemu pikselowi znaku,+Sposób interpretacji piksela zależy od [[ANTIC Display List#Tryby znakowe|trybu znakowego]], w którym font zostanie użyty (patrz [[Generator znaków|generator znaków]]).
- 7 6 5 4 3 2 1 0 bit 0 1 2 3 4 5 6 7 piksel+Plik FNT zazwyczaj zawiera definicję 128 znaków i liczy sobie 1024 bajty (128 znaków po 8 bajtów). Tryby [[Graphics 1]] i [[Graphics 2]] potrafią wyświetlić tylko 64 znaki, jednak bardzo rzadko spotyka się pliki FNT o długości 512 bajtów.
- 0 . . . . . . . . 0 0 0 0 0 0 0 0 0 +
- 1 . . . o o . . . 1 0 0 0 1 1 0 0 0 +
- 2 . . o o o o . . 2 0 0 1 1 1 1 0 0 +
- 3 . o o . . o o . 3 0 1 1 0 0 1 1 0 +
- 4 . o o . . o o . 4 0 1 1 0 0 1 1 0 +
- 5 . o o o o o o . 5 0 1 1 1 1 1 1 0 +
- 6 . o o . . o o . 6 0 1 1 0 0 1 1 0 +
- 7 . . . . . . . . 7 0 0 0 0 0 0 0 0 +
- bajt linia+
-* w trybach [[Graphics 12|12]] i [[Graphics 13|13]] OS para bitów odpowiada pojedynczemu pikselowi znaku,+<table border=1>
 +<tr><td>offset</td><td>długość</td><td>opis</td></tr>
 +<tr><td>$0000</td><td>$0008</td><td>znak $00 ANTIC-a (spacja)</td></tr>
 +<tr><td>$0008</td><td>$0008</td><td>znak $01 ANTIC-a (wykrzyknik)</td></tr>
 +<tr><td>$0010</td><td>$0008</td><td>znak $02</td></tr>
 +<tr><td>$0018</td><td>$0008</td><td>znak $03</td></tr>
 +<tr><td>$0020</td><td>$0008</td><td>znak $04</td></tr>
 +<tr><td>...</td><td>...</td><td>kolejne bloki </td></tr>
 +<tr><td>$03F0</td><td>$0008</td><td>znak $7E</td></tr>
 +<tr><td>$03F8</td><td>$0008</td><td>znak $7F</td></tr>
 +</table>
- 76 54 32 10 para bitów 0 1 2 3 piksel+Spotykane są również pliki FNT zawierające dane czcionki opakowane w [[Binarny plik DOSu|binarny nagłówek DOSu]] - plik zawiera wtedy 1030 bajtów (1024 bajty czcionki + 6 bajtów nagłówka).
- 0 .. .. .. .. 0 0 0 0 0 +
- 1 .. .o o. .. 1 0 1 2 0 +
- 2 .. oo oo .. 2 0 3 3 0 +
- 3 .o o. .o o. 3 1 2 1 2 +
- 4 .o o. .o o. 4 1 2 1 2 +
- 5 .o oo oo o. 5 1 3 3 2 +
- 6 .o o. .o o. 6 1 2 1 2 +
- 7 .. .. .. .. 7 0 0 0 0 +
- bajt linia +
-* po włączeniu trybu GTIA w [[Rejestry GTIA#GTIACTL|rejestrze GTIACTL]] (dane obrazu interpretowane są wtedy analogicznie, jak w trybach graficznych [[Graphics 9|9]], [[Graphics 10|10]] i [[Graphics 11|11]] OS) nibble odpowiada pojedynczemu pikselowi znaku.+== Ciekawostki ==
 +* Identycznie zbudowany jest też plik FNT z [https://pl.wikipedia.org/wiki/Commodore_64 Commodore 64]. Jedyną różnicą jest tylko to, że zawiera 256 znaków a nie 128, a więc jest dwukrotnie większy - liczy sobie 2048 bajtów.
 +* Analogicznie jest też z fontem [https://pl.wikipedia.org/wiki/ZX_Spectrum ZX Spectrum]. Zawiera on jednakże definicje tylko znaków $20-$7F uporządkowanych według kodów ASCII, a więc jego długość to 768 bajtów.
- 7654 3210 nibble 0 1 piksel+== Linki ==
- 0 .... .... 0 0 0 +* Na AtariOnline można znaleźć zbiory fontów [http://atarionline.pl/v01/index.php?subaction=showfull&id=1236639234&archive=&start_from=20&ucat=7&ct=poczatki z Atari] i [http://atarionline.pl/v01/index.php?subaction=showfull&id=1242399102&archive=&start_from=20&ucat=7&ct=poczatki z C64 ].
- 1 ...o o... 1 1 8 +* [https://www.fontspace.com/atari-classic-font-f30342 Font TrueType] autorstwa Marka Simmonsona
- 2 ..oo oo.. 2 3 C +* Inny [https://atari8bit.net/projects/artwork/atari-fonts/ zbiór fontów]
- 3 .oo. .oo. 3 6 6 +* Fonty [https://damieng.com/typography/zx-origins/ z ZX Spectrum]
- 4 .oo. .oo. 4 6 6 +
- 5 .ooo ooo. 5 7 E +
- 6 .oo. .oo. 6 6 6 +
- 7 .... .... 7 0 0 +
- bajt linia +
-Plik FNT zazwyczaj zawiera definicję 128 znaków i liczy sobie 1024 bajty (128 znaków po 8 bajtów).+== Zobacz też ==
- +* [[SXS]]
-Spotykane są pliki FNT zawierające dane czcionki opakowane w [[Binarny plik DOSu|binarny nagłówek DOSu]] - plik zawiera wtedy 1030 bajtów (1024 bajty czcionki + 6 bajtów nagłówka).+* [[ODF]]
[[Kategoria:Atari 8-bit]] [[Kategoria:Atari 8-bit]]
[[Kategoria:Formaty plików]] [[Kategoria:Formaty plików]]

Aktualna wersja

Format pliku fontu rastrowego. Zawiera definicje poszczególnych znaków fontu w postaci wymaganej do bezpośredniego wyświetlenia przez maszynę (jest to format "zależny od urządzenia").

Każdy znak zdefiniowany jest za pomocą 8 następujących po sobie bajtów i definiuje kolejne linie znaku (licząc od góry).

0 $00 ........
1 $18 ...oo...
2 $3C ..oooo..
3 $66 .oo..oo.
4 $66 .oo..oo.
5 $7E .oooooo.
6 $66 .oo..oo.
7 $00 ........

Znaki w zestawie uporządkowane są według kodów ekranowych, a nie wg kodów ATASCII.

Sposób interpretacji piksela zależy od trybu znakowego, w którym font zostanie użyty (patrz generator znaków).

Plik FNT zazwyczaj zawiera definicję 128 znaków i liczy sobie 1024 bajty (128 znaków po 8 bajtów). Tryby Graphics 1 i Graphics 2 potrafią wyświetlić tylko 64 znaki, jednak bardzo rzadko spotyka się pliki FNT o długości 512 bajtów.

offsetdługośćopis
$0000$0008znak $00 ANTIC-a (spacja)
$0008$0008znak $01 ANTIC-a (wykrzyknik)
$0010$0008znak $02
$0018$0008znak $03
$0020$0008znak $04
......kolejne bloki
$03F0$0008znak $7E
$03F8$0008znak $7F

Spotykane są również pliki FNT zawierające dane czcionki opakowane w binarny nagłówek DOSu - plik zawiera wtedy 1030 bajtów (1024 bajty czcionki + 6 bajtów nagłówka).

Ciekawostki

  • Identycznie zbudowany jest też plik FNT z Commodore 64. Jedyną różnicą jest tylko to, że zawiera 256 znaków a nie 128, a więc jest dwukrotnie większy - liczy sobie 2048 bajtów.
  • Analogicznie jest też z fontem ZX Spectrum. Zawiera on jednakże definicje tylko znaków $20-$7F uporządkowanych według kodów ASCII, a więc jego długość to 768 bajtów.

Linki

Zobacz też

Personal tools