OBD:TSGA: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (design + update)
No edit summary
Line 14: Line 14:
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtrBK}}
{{OBDtrBK}}
{{OBDtr| 0x00 | int16    |FFC8C8| 00 00      |unused| unknown }}
{{OBDtr| 0x00 | int16    |FFC8C8| 00 00      |unused| unknown; same value as the index of the element or 0 if not used }}
{{OBDtr| 0x02 | int16    |FFFFC8| 00 00      |unused| unknown }}
{{OBDtr| 0x02 | int16    |FFFFC8| 00 00      |unused| width (in pixels) }}
{{OBDtr| 0x04 | int16    |C8FFC8| 00 00      |unused| unknown }}
{{OBDtr| 0x04 | int16    |C8FFC8| 00 00      |unused| width again? }}
{{OBDtr| 0x06 | int32   |C8FFFF| 00 00 00 00 |unused| unknown }}
{{OBDtr| 0x06 | int16   |C8FFFF| 00 00       |unused| height (in pixels) }}
{{OBDtr| 0x0A | int16    |FFC8FF| 00 00      |unused| number of used elements in the [[OBD:TSFT|TSFT]] file }}
{{OBDtr| 0x08 | int16    |C8FFFF| 00 00       |unused| unknown; always 0 }}
{{OBDtr| 0x0A | int16    |FFC8FF| 00 00      |unused| unknown }}
{{OBDtr| 0x0C | int32    |FFC800| 00 00 00 00 |unused| start element in the [[OBD:TSFT|TSFT]] file }}
{{OBDtr| 0x0C | int32    |FFC800| 00 00 00 00 |unused| start element in the [[OBD:TSFT|TSFT]] file }}
{{OBDtr| 0x10 | int32    |C800C8| 00 00 00 00 |unused| unknown; always zero }}
{{OBDtr| 0x10 | int32    |C800C8| 00 00 00 00 |unused| unknown; always 0 }}
|}
|}
A glyph is basically a monochrome bitmap width * height pixels in size. Each pixel is stored in one byte in the [[OBD:TSFT|TSFT]] file (fonts are antialiased so shades of gray are needed rather than storing each pixel in one bit) so each element in the TSFT file contains 4 pixels. Rows of pixels are not 4 bytes aligned so a row can start inside an element.




{{OBD_File_Footer | type=TSGA | prev=TSFT | next=TStr | name=Glyph Array | family=Global}}
{{OBD_File_Footer | type=TSGA | prev=TSFT | next=TStr | name=Glyph Array | family=Global}}

Revision as of 23:41, 14 September 2007

ONI BINARY DATA
TSFT << Other file types >> TStr
TSGA : Glyph Array
switch to XML:TSGA page
Overview @ Oni Stuff
OBD.png


Every TSGA file contains 256 elements. One element stands for one of the 256 signs of the ASCII table. The first 32 signs are reserved control characters, so these elements are always complete zero.


Tsga a.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 04 00 00 4 00004-.TSGA
0x04 lev_id 01 00 00 00 0 level 0
First element (black outline)
0x00 int16 00 00 unused unknown; same value as the index of the element or 0 if not used
0x02 int16 00 00 unused width (in pixels)
0x04 int16 00 00 unused width again?
0x06 int16 00 00 unused height (in pixels)
0x08 int16 00 00 unused unknown; always 0
0x0A int16 00 00 unused unknown
0x0C int32 00 00 00 00 unused start element in the TSFT file
0x10 int32 00 00 00 00 unused unknown; always 0


A glyph is basically a monochrome bitmap width * height pixels in size. Each pixel is stored in one byte in the TSFT file (fonts are antialiased so shades of gray are needed rather than storing each pixel in one bit) so each element in the TSFT file contains 4 pixels. Rows of pixels are not 4 bytes aligned so a row can start inside an element.


ONI BINARY DATA
TSFT << Other file types >> TStr
TSGA : Glyph Array
Global file