Difference between revisions of "Xtf"

From xboxdevwiki
Jump to: navigation, search
m
m (Fix 404 GitHub link)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[File:Xbox-dashboard-font-specimen.png|thumb|200px|Xbox Font Specimen]]
 
 
 
XTF is a font file format used in the [[Dashboard]].
 
XTF is a font file format used in the [[Dashboard]].
 
It became famous for being [[Exploits#Font hacks|exploited]].
 
It became famous for being [[Exploits#Font hacks|exploited]].
Both fonts were also used for branding and promotional use.
 
  
 
== Dashboard fonts ==
 
== Dashboard fonts ==
  
The dashboard fonts were designed by [[Wikipedia:Steve Matteson|Steve Matteson]] of [[Wikipedia:Ascender Corporation|Ascdender Corporation]] for use on the Xbox. Matteson had already created many of Microsoft's [[Wikipedia:Microsoft Windows|Windows]] core fonts and would later create the [https://www.fonts.com/font/microsoft/convection Convection fonts used on the Xbox 360].
+
The fonts were designed by [[Wikipedia:Steve Matteson|Steve Matteson]] for use in the Xbox [[Dashboard]] as well as for promotional materials.
  
Each font contain 7365 glyphs.
+
The XTF versions of these fonts contain 7365 glyphs each.
  
 
=== Xbox.xtf ===
 
=== Xbox.xtf ===
 +
 +
[[File:Xbox-dashboard-font-specimen.png|thumb|200px|Xbox Font Specimen]]
  
 
A monospace font.
 
A monospace font.
Line 31: Line 30:
 
** 4 byte (Offset of glyph in file)
 
** 4 byte (Offset of glyph in file)
 
* For each GLYPHSET range
 
* For each GLYPHSET range
** For each glyph in this range (stored as a triangle strip)
+
** For each glyph in this range
 
*** 2 byte (Index count)
 
*** 2 byte (Index count)
 
*** 2 byte (Vertex count)
 
*** 2 byte (Vertex count)
Line 40: Line 39:
 
**** 4 byte float (Y-coordinate)
 
**** 4 byte float (Y-coordinate)
  
 
+
The mesh data is stored as triangle list. 3 indices per triangle.
  
 
{{FIXME|reason=Confirm these findings and format them better}}
 
{{FIXME|reason=Confirm these findings and format them better}}
Line 46: Line 45:
 
== Links ==
 
== Links ==
  
* [https://github.com/JayFoxRox/xbox-tools/tree/master/xtf-converter A tool to convert XTF fonts to SVG fonts]
+
* [https://github.com/XboxDev/xtf-converter A tool to convert XTF fonts to SVG fonts]
 +
[[Category:Fileformats]]

Latest revision as of 09:12, 2 June 2020

XTF is a font file format used in the Dashboard. It became famous for being exploited.

Dashboard fonts

The fonts were designed by Steve Matteson for use in the Xbox Dashboard as well as for promotional materials.

The XTF versions of these fonts contain 7365 glyphs each.

Xbox.xtf

Xbox Font Specimen

A monospace font.

Xbox.xtf from Dashboard.

XBox Book.xtf

XBox Book.xtf from Dashboard.

File format

  • 4 byte (magic)
  • 4 byte (length prefix for following string)
  • zero-terminated string with given buffer length (font-name)
  • GLYPHSET (List of supported glyphs)
  • For each cGlyphsSupported:
  • For each GLYPHSET range
    • For each glyph in this range
      • 2 byte (Index count)
      • 2 byte (Vertex count)
      • For each index:
        • 2 byte (Vertex index)
      • For each vertex:
        • 4 byte float (X-coordinate)
        • 4 byte float (Y-coordinate)

The mesh data is stored as triangle list. 3 indices per triangle.

[FIXME]

Links