countersince January 6, 2001X68000 LIBRARYEnglish
更新日: 2011 年 11 月 15 日
X68000 LIBRARY > ソフトウェアライブラリ > グラフィックス > PIC > PIC 拡張ヘッダ

PIC 拡張ヘッダ

メモ

結城見さん のページから転載。

picheader.txt
 (A)PICが持っていないセーブ時の座標などの情報を、コメントの領域を利用して
埋め込もうというアイデアです。埋め込みに使っているのがコメント領域なので普
通のAPICローダーでも正常にロードできます。

PIC/MM/         ファイルの先頭がこれで始まらなかったらこの規格外
                と、いうわけで通常の(A)PICファイルとしてロード

この後は順不同で、以下のフラグがあります。フラグの切れ目は/であり、途中
に余計なスペースをはさんではいけません。また大文字のみです。

XY00000000/     左上の座標。    無い時は(0, 0)
MK/             縦横2倍拡大    無い時は拡大の必要無し
MY/             縦2倍拡大      無い時は拡大の必要無し
MHY/            縦方向補正拡大(512/424倍)       無い時は補正の必要無し
MS?/            表示スクリ−ンモ−ド ?...5,6,7,8,A,B,C 無い時はSC8
XS?/            画面モード。?...Nは512x512モード。Sは768x512モード。
                無い時は512x512。       ただしAPIC16色の時には強制的に768x512
XF?/            解像度。?...Hは31kHz。Lで15kHz。無い時は31kHz
AU名前/         著者名(GORRY.さんのAPICGに付いている)
:               ヘッダの終わり。あとは自由にコメントを書いていい

これ以外の文字列は将来への拡張用ということで、次の/,あるいは0x1aまで無視する


フラグの詳細
・XY????????/   セーブされた矩形の左上の座標。
                ちなみに大きさについてはPICフォーマット内部で規定されている

MSXでセーブ時に使われるフラグ
・MK/   縦横を単純に2倍に拡大する
・MY/   縦を単純に2倍に拡大する
・MHY/  X68000で表示するときには縦方向を512/424倍に拡大する
・MS?/  スクリーンモード7は512*256,最大16色。8は256*256,最大256色

X68000でセーブ時に使われるフラグ
・XS?/  768x512モードというのは画面が768x512モードで、
        そこに512x512以内の絵を表示することです。
        (つまり横が2/3に潰れて、ドット縦横比がほぼ正方形になる)
・XF?/  普通は31kHzで使っています。15kHzにするとやや縦が伸びます。
・他    元々のapicフォーマットで画面モード(65536, 32768, 256, 16色)が決ります
        ドット比        31kHzで 横 / 縦 = 1.44
                        15kHzで 横 / 縦 = 1.28
        (768x512モード 31kHzで 横 / 縦 = 0.96) いずれも定規で測った推定値

例
PIC/MM/XY00120035/:<1a><00>             (12, 35)からセーブしたもの
PIC/MM/MK/:あればコメント<1a><00>       縦横2倍拡大
PIC/MM/MY/XY00320015/MK/:<1a><00>       縦横2倍拡大、縦補正。位置は(32,15)
PIC/MM/XSS/:コメント<1a><00>            正方形モード
PIC/MM/AU結城 見:<1a><00>              著者名は「結城 見」

前世の遺物
PIC/mfged5/????????<1a><00>
 これは PIC/MM/XY????????/:<1a><00> と同じことです。mfged.x V4.5fと、V5.0
のプロトタイプで使用しているので、mfged.xは宿命としてサポートしますが、他
では気が向かなければサポートする必要はないと思います。

 MSX:MERONさん(NAT23181)と、X68000:結城 見(NAT21946)とで考えました。
今のところこの2人の作ったプログラムと、あとzedやepicなどで画面モードと位置
(要はX68000用のフラグ)を読んでロードしてくれるようになりました。
 ほんとうは、元祖PICでこうした情報を埋め込むように拡張されるのが良いので、
もしPICが作者の柳沢さんによって拡張されたら、
このヘッダは、はかなくも消える運命にあります。

 GORRY.さんのAPICGで「AU」追加になりました。私も対応することにしました。
(mmapicの方はもう手を加えることはないので、mfgedの方で)

このドキュメント、転載自由です。