BFNT(+)
仕様書
仕様書「BFNT+データフォーマット仕様書 Rev.1.6」は noe が書いたもので、1992年11月16日の日付がある。仕様書には Rev.1.4・Rev.1.5 のときの仕様にも触れた箇所があり、Rev.1.6 は改訂版だが、最初の版がいつ作られたかは書かれていない。1
noe は仕様書の謝辞で、tacox が言ったひとこと(「フォントの共通規格みたいのあるといいよねー、みたいなこと」)が BFNT を作るきっかけになったと書いている。拡張ヘッダまわりの仕様は Daichi が固めた。1
BFNT・BFNT+ の形式と仕様書の権利はすべて放棄されていて、自由に使え、商用のソフトウェアに使ってもよいとされている。1
ファイルの構造
ファイルは32バイトの基本ヘッダーで始まり、拡張ヘッダ(あれば)、パレット表(あれば)、字形のデータ(ベタデータ)が続く。基本ヘッダーの主な項目は次のとおり。1
| 位置 | 項目 | 内容 |
|---|---|---|
| +00〜+04 | “BFNT” と 0x1A | BFNT のファイルであることを示す |
| +05 | col | 色数(最上位ビットはパレット表の有無) |
| +06 | ver | 形式の版(Rev.1.6 では 0x16) |
| +08 | Xdots・Ydots | 横と縦のドット数 |
| +0C | START・END | 開始キャラクタコードと終了キャラクタコード |
| +10 | font name | フォント名(8文字。未定義なら 0x00 で埋める) |
| +18 | time | 時刻(グリニッジ標準時の1970年1月1日0時からの秒数) |
| +1C | extSize | 拡張ヘッダの大きさ(0なら拡張ヘッダなし) |
基本ヘッダーには、開始と終了のキャラクタコード(START・END)がある。1このサイトの字形の一覧は、元のデータのキャラクタコードの順(0x00〜0xFF)に並べている。
色数は2色から1677万色まで表せ、col の最上位ビットが1のときはヘッダーのあとにパレット表(1色3バイト)が付く。1このサイトのフォントでは、wings.fnt(WinG Speed)が256色のパレット表を持つ。3
字形のデータは、1字ずつ左上から右へ、上から下へドットを並べたもの。1ドットあたりのビット数は色数で決まり、2色なら1バイトに8ドットを詰める。1
拡張ヘッダには、拡張フォント名、作成者、透明色の指定、コメントを入れられる。1拡張子は、Rev.1.4 までは決まっておらず、Rev.1.5 から独立したフォントとして公開する場合は .BFT が推奨された。1Rev.1.5 までにあった「リンクドBFNT」の仕様は Rev.1.6 で削除され、そのヘッダーの位置に形式の版(ver)が入った。1
Bio_100% のフォントとの関係
このサイトで確かめられた最も古い BFNT のフォントは、mogler 0.03(1991年1月12日)に入っている mogler.fnt(ファイルの日付は1990年12月5日)で、noe の TAITO16.FNT を改造したもの。34Rev.1.6 の仕様書(1992年)より前から、BFNT は使われていたことになる。
1990年に発表された GETS!・TWINS 1.10・Gemini Snake・舞瑠華Ⅰ 改訂版のアーカイブには、BFNT のファイルが入っていない。TWINS で bkfont.bft と同じ字形のフォント(twff.bft)が入っているのは、このサイトで調べたアーカイブでは2.11(1994年)から。3
このサイトで紹介している BFNT のフォントは、どれもヘッダーの版(ver)と時刻(time)が0で、フォント名も定義されていない。3
BFNT のフォント28書体のうち11書体は、単独のファイルではなく、pf.lib で実行ファイルなどの中に圧縮して格納されていた。c2gp.fnt(CarII GRANDPRIX 1.00)は、pf.lib とは別の形式のデータファイル c2gp.dat の中に入っていた(0.20 には単独のファイルの c2gp.fnt がある)。3フォントやキャラクタを「Gajet」で作ったと同梱ドキュメントに書いているゲームもあり、いずれも Daichi への謝辞を添えている。5
Dynamo のフォントだけは BFNT ではなく、独自のキャラクタの形式(dynamo1.chr)の中の絵を字として使っている。3
ビューア
BFNT(+) のファイルを置くと、ヘッダーの内容と字形の一覧を表示する。
出典・注
「BFNT+データフォーマット仕様書 Rev.1.6」(noe、1992年11月16日)。bfnt16.lzh に同梱の bfnt16.doc ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11
「BFNT(+)ファイルフォーマットの詳細情報」(Vector、2026年9月25日閲覧) ↩
書体ラボが、各アーカイブのファイルの一覧(ファイルの日付)と、フォントのヘッダーを調べた結果 ↩ ↩2 ↩3 ↩4 ↩5 ↩6
mogler 0.03 の同梱ドキュメント(MOG003.LZH の mogler.yah) ↩
同梱ドキュメント(AJ201SP.LZH の artsjuke.man、GGL2_100.LZH の goggle2.doc) ↩