■掲示板に戻る■
全部
1-
101-
201-
301-
401-
501-
601-
701-
801-
901-
最新50
[PR]
ぜろちゃんねるプラス
[PR]
レス数が950を超えています。1000を超えると表示できなくなるよ。
FF7をファミコンに移植させた職人は神認定 Part7.5
681 :
名前が無い@ただの名無しのようだ
:2010/02/21(日) 18:21:49 ID:AjCoGi4h0
なんで何もしない人間が、知識も技術もある人間を追い出そうとしてるんだ?
知識を持った人間からの否定的意見を排除するんじゃ、むしろ可能性を閉ざすだけだぞ。
>>642
サンクス。圧縮方法は1と同じだね。
フィールドマップの格納方法も同じっぽい。
お礼と言うわけではないが、フィールドマップ展開方法の解説。
このスペースでの解説は難しいのでかなり箇条書きだけど。
(オフセットはすべてヘッダなしでの計算)
$D000 からインデックスデータ(フィールド1列ごとに2バイト)
下位バイトはそのままアドレスの下位バイト
上位バイトは、bank = ((data + $10) >> 5) + $06
addr(hi) = ((data + $10) & $1F) | $80
浮遊大陸の最初の列ならデータが 00 08 なので、bank=$06 addr=$9800
(ROMファイル内のオフセットは、bank * $2000 + (addr - $8000) で求められるはず)
データは最上位ビットが0ならそのまま1バイト出力し、
最上位ビットが1なら次の1バイトを個数 ($00なら256個) として、(data & $3F) を出力。
個数が256になったら1列分が終了。
最初の列なら、E4 00 なので、$64 が256個。
次の列は E4 0F E5 5F E4 92 なので、$64*15個、$65*95個、$64*146個。
少なくとも浮遊大陸は全列ぴったり256個の出力になったのでこれでいけるはず。
例として、$E01F の $79 を他の数字に変えると、ウルの町の右下が違うマップチップになる。
266KB
続きを読む
掲示板に戻る
全部
前100
次100
最新50
名前:
E-mail
(省略可)
:
READ.CGI - 0ch+ BBS 0.7.4 20131106
ぜろちゃんねるプラス