<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://epd.zeldamods.org/wiki/Bffnt/history?feed=atom</id>
	<title>Bffnt - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://epd.zeldamods.org/wiki/Bffnt/history?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://epd.zeldamods.org/wiki/Bffnt/history"/>
	<updated>2026-05-04T13:47:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://epd.zeldamods.org/w/index.php?title=Bffnt&amp;diff=92&amp;oldid=prev</id>
		<title>Watertoon: Early bffnt.</title>
		<link rel="alternate" type="text/html" href="https://epd.zeldamods.org/w/index.php?title=Bffnt&amp;diff=92&amp;oldid=prev"/>
		<updated>2023-12-27T03:46:19Z</updated>

		<summary type="html">&lt;p&gt;Early bffnt.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Binary Cafe Font. nn::font in addition to supporting Open Type Fonts supports this custom bitmap font file format.&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
[[Common nn::ui2d|Standard ui2d header.]]&lt;br /&gt;
&lt;br /&gt;
There are 5 section types, Font Information (FINF), Texture Glyph (TGLP), Character Width (CWDH), Code Map (CMAP), and Kerning (KRNG).&lt;br /&gt;
&lt;br /&gt;
=== Font Information ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x8&lt;br /&gt;
|Ui2d Section Header&lt;br /&gt;
|Magic: &amp;quot;FINF&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x8&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Font Type&lt;br /&gt;
|-&lt;br /&gt;
|0x9&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Height&lt;br /&gt;
|-&lt;br /&gt;
|0xa&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Width&lt;br /&gt;
|-&lt;br /&gt;
|0xb&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Ascent&lt;br /&gt;
|-&lt;br /&gt;
|0xc&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Line Feed&lt;br /&gt;
|-&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Alternate Character Index&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|0x3&lt;br /&gt;
|CharacterWidthData&lt;br /&gt;
|Default Character Widths&lt;br /&gt;
|-&lt;br /&gt;
|0x13&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Character Encoding&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Texture Glyph Offset (TGLP)&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Character Width Offset (CWDH)&lt;br /&gt;
|-&lt;br /&gt;
|0x1c&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Code Map Offset (CMAP)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Font Type ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Enum Value&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Glyph&lt;br /&gt;
|0x0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Texture&lt;br /&gt;
|0x1&lt;br /&gt;
|Not witnessed by author&lt;br /&gt;
|-&lt;br /&gt;
|PackedTexture&lt;br /&gt;
|0x2&lt;br /&gt;
|Not witnessed by author&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Character Encoding ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Enum Value&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Utf16&lt;br /&gt;
|0x0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ShiftJis&lt;br /&gt;
|0x1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|CP1252&lt;br /&gt;
|0x2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Character Width Data ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x1&lt;br /&gt;
|s8&lt;br /&gt;
|Left Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Glyph Width&lt;br /&gt;
|-&lt;br /&gt;
|0x2&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Character Width&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Texture Glyph ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x8&lt;br /&gt;
|Ui2d Section Header&lt;br /&gt;
|Magic: &amp;quot;TGLP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x8&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Cell Width&lt;br /&gt;
|-&lt;br /&gt;
|0x9&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Cell Height&lt;br /&gt;
|-&lt;br /&gt;
|0xa&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Texture Count&lt;br /&gt;
|-&lt;br /&gt;
|0xb&lt;br /&gt;
|0x1&lt;br /&gt;
|u8&lt;br /&gt;
|Max Character Width&lt;br /&gt;
|-&lt;br /&gt;
|0xc&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Per Texture Size&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Baseline Position&lt;br /&gt;
|-&lt;br /&gt;
|0x12&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Image Format&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Cells Per Row&lt;br /&gt;
|-&lt;br /&gt;
|0x16&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Cells Per Column&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Image Width&lt;br /&gt;
|-&lt;br /&gt;
|0x1a&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Image Height&lt;br /&gt;
|-&lt;br /&gt;
|0x1c&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Image Data Offset ([[Bntx]])&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Image Format ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Enum Value&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|R8G8B8A8_Unorm&lt;br /&gt;
|0x0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|R8G8B8_Unorm&lt;br /&gt;
|0x1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|R5G5B5A1_Unorm&lt;br /&gt;
|0x2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|R5G6B5_Unorm&lt;br /&gt;
|0x3&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|R4G4B4A4_Unorm&lt;br /&gt;
|0x4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|LA8_Unorm&lt;br /&gt;
|0x5&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|LA4_Unorm&lt;br /&gt;
|0x6&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|A4_Unorm&lt;br /&gt;
|0x7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|A8_Unorm&lt;br /&gt;
|0x8&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC1_Unorm&lt;br /&gt;
|0x9&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC2_Unorm&lt;br /&gt;
|0xa&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC3_Unorm&lt;br /&gt;
|0xb&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC4_Unorm&lt;br /&gt;
|0xc&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC5_Unorm&lt;br /&gt;
|0xd&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|R8G8B8A8_SRGB&lt;br /&gt;
|0xe&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC1_SRGB&lt;br /&gt;
|0xf&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC2_SRGB&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC3_SRGB&lt;br /&gt;
|0x11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC7_Unorm&lt;br /&gt;
|0x12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BC7_SRGB&lt;br /&gt;
|0x13&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Character Width ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x8&lt;br /&gt;
|Ui2d Section Header&lt;br /&gt;
|Magic: &amp;quot;CWDH&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x8&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|First Entry Index&lt;br /&gt;
|-&lt;br /&gt;
|0xa&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Last Entry Index&lt;br /&gt;
|-&lt;br /&gt;
|0xc&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Next Character Width Offset (CWDH)&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|0x3&lt;br /&gt;
|CharacterWidthData&lt;br /&gt;
|Character Width Array&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Code Map ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x8&lt;br /&gt;
|Ui2d Section Header&lt;br /&gt;
|Magic: &amp;quot;CMAP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|0x8&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Code Range Begin&lt;br /&gt;
|-&lt;br /&gt;
|0xc&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Code Range End&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Map Method&lt;br /&gt;
|-&lt;br /&gt;
|0x12&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Unknown/Reserved&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|0x4&lt;br /&gt;
|u32&lt;br /&gt;
|Next Code Map Offset (CMAP)&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|0x2&lt;br /&gt;
0x2 * Range&lt;br /&gt;
0x4 + 0x4 * Range&lt;br /&gt;
|Direct&lt;br /&gt;
Table&lt;br /&gt;
Scan&lt;br /&gt;
|See below&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Code Map Method ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Name&lt;br /&gt;
!Enum Value&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Direct&lt;br /&gt;
|0x0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Table&lt;br /&gt;
|0x1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Scan&lt;br /&gt;
|0x2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Direct ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Base Character&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Table ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x2 * Range&lt;br /&gt;
|u16&lt;br /&gt;
|Character&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Scan ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Scan Half Count&lt;br /&gt;
|-&lt;br /&gt;
|0x2&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Unknown/Reserved&lt;br /&gt;
|-&lt;br /&gt;
|0x4&lt;br /&gt;
|0x4 * Range&lt;br /&gt;
|ScanEntry&lt;br /&gt;
|Scan Entry Array (sorted)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Scan Entry =====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Offset&lt;br /&gt;
!Size&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0x0&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Key&lt;br /&gt;
|-&lt;br /&gt;
|0x2&lt;br /&gt;
|0x2&lt;br /&gt;
|u16&lt;br /&gt;
|Code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Kerning (TODO) ===&lt;br /&gt;
This section has not yet been witnessed by author.&lt;/div&gt;</summary>
		<author><name>Watertoon</name></author>
	</entry>
</feed>