Open main menu

Difference between revisions of "SCUMM/Technical Reference/Charset resources"

Different grouping
(→‎V1/V2 charset format: mention char size)
(Different grouping)
Line 2: Line 2:
Character sets define the fonts used by SCUMM to draw text, such as dialogue, on the screen.
Character sets define the fonts used by SCUMM to draw text, such as dialogue, on the screen.


== V1/V2 charset format ==
 
== The old charset format: V1-V3 ==
 
=== V1/V2 charset format ===


The V1 and V2 font format is identical to that found in V3 games; the big difference is that in V1 and V2, the font is not stored in the game data files, but rather is hardcoded into the executable. All characters are 8x8 pixels big.
The V1 and V2 font format is identical to that found in V3 games; the big difference is that in V1 and V2, the font is not stored in the game data files, but rather is hardcoded into the executable. All characters are 8x8 pixels big.
Line 10: Line 13:
Currently, ScummVM includes fonts for english, french, german, italian and spanish game variants. It is not known whether there were other localizations, but if you encounter any make sure to tell the team about it!
Currently, ScummVM includes fonts for english, french, german, italian and spanish game variants. It is not known whether there were other localizations, but if you encounter any make sure to tell the team about it!


== V3 charset format ==
=== V3 charset format ===


The header looks as follows:
The header looks as follows:
Line 28: Line 31:
After this header the character data starts. Every character in the charset takes up exactly 8 bytes, representing 8x8 pixels in which the actual character is contained (the actual width and height of the char should be computed from the charset header).
After this header the character data starts. Every character in the charset takes up exactly 8 bytes, representing 8x8 pixels in which the actual character is contained (the actual width and height of the char should be computed from the charset header).


== V4 charset format ==
== The new charset format: V4-V6 ==
 
=== V4 charset format ===


The header looks as follows:
The header looks as follows:
Line 103: Line 108:
</pre>
</pre>


== V5/V6 charset format ==
=== V5/V6 charset format ===


Like all other resources in V5 and later, the charset data is stored in a chunk, in this case a 'CHAR' chunk. The header looks as follows:
Like all other resources in V5 and later, the charset data is stored in a chunk, in this case a 'CHAR' chunk. The header looks as follows:
Line 129: Line 134:
Observe that this header is identical to the V4 header with a few bytes added to the start of it. The charset format is otherwise identical to the V4 format described above.
Observe that this header is identical to the V4 header with a few bytes added to the start of it. The charset format is otherwise identical to the V4 format described above.


== NUT (V7 & V8) charset format ==
== The modern charset format: V7-V8 ==
 
=== NUT (V7 & V8) charset format ===


In V7 and V8 (Dig, FT, Comi), the fonts where stored in separate files with the extension "nut". We thus call the format used in these games the "NUT format".  
In V7 and V8 (Dig, FT, Comi), the fonts where stored in separate files with the extension "nut". We thus call the format used in these games the "NUT format".  
1,079

edits