改造系のネタ。ロックマン2の解析資料、IPSファイル等
  • 2017/06
  • 2017-07 :
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 2017/08
中間地点の設定
2008年09月04日(木) 16:10
中間地点関連

$0-7番バンク($00000-1FFFF)のそれぞれのアドレス始点を$8000として
$BB00から順に6Byte毎に
$BB00 ロックマンの着地Y座標
$BB06 登場場所の部屋番号 メモリ$20
$BB0C 出現するオブジェクトの順番号 メモリ$48-49
$BB12 出現するアイテムの順番号 メモリ$4C-4D
$BB18 ネームテーブルへの書き込み関連 メモリ$17
$BB1E ネームテーブルへの書き込み関連 メモリ$16
$BB24 ネームテーブルへの書き込み関連 メモリ$19
$BB2A ネームテーブルへの書き込み関連 メモリ$18
$BB30 スクロール番号 $38
$BB36 スクロール部屋の左端の部屋番号 メモリ$14
$BB3C スクロール部屋の右端の部屋番号 メモリ$15

メモリ$B0(何番目の中間地点か)をYレジスタに代入し、
上記のアドレスにアクセスしている。
$B0に値が書き込まれる時は$BB07から参照している。

中間地点に関連するアドレスを変更したい場合は
以上の12箇所を参照しているルーチンを修正していく必要があります。
これを修正すれば中間地点の数を増やす事も出来ます。

 
・偽スクロール番号の話
スクロール番号を扱うメモリ$38は$13までの値しか格納できません。
$38の値が$13を越えると不正終了してしまうのです。
これのコア部分がどうなっているかは調べていませんが、
オブジェクトを作ってこのスクロール番号を誤魔化す事も出来ます。
例えばオブジェクトのルーチンにおいて、
BD A0 04 オブジェクトのY座標をAに読み込む
29 1F   A and $1F
85 38   結果をスクロール番号に代入
とすると、オブジェクトのY座標0-4bitをスクロール番号に代入する事が出来ます。
同じスクロール、スプライトの場合は番号節約に有効です。
RaxXだと落下縦スクロールの場面で使用しています。
エディタがあるお陰で、特定のオブジェクトの座標から特定の条件を作る、
というのは製作において融通が利くので自分はよく使っています。
オブジェクトの数も有限なのであまり消費はしないようにしたいところですが。
シャッターのグラフィックについて
2008年08月31日(日) 10:58
シャッターが閉じる時に読み込むパターンテーブルの情報について調べているんですが…なかなかうまくいきませんわOTL




これはクワタさんところのエディタのチップ表示なんですが、
例えばこの状態だとシャッターのグラフィックを保持してるPPUアドレスは
1200-123F になりますよね。

この1200-123Fのデータを読み込んで、
ネームテーブルの値を書き換えていると思うんですけど…。

で、結局何がしたいかというと、
シャッターを描画する時のパターンテーブルの読み込みアドレスを変更したい、
という事なんですよね。
1200-123F → 1040-107F(左上端から一つ右のチップの位置)
のアドレスから読み込ませたいところなんですが…。
なかなか上手くいきません。

BGチップ関連は未だに自分の理解が足りていないので苦労してます…。
メモリの役割
2008年08月26日(火) 05:59
間違ってるところあったら指摘ください。
日本語でおkな箇所がいくつもあるのは気にしない方向で。
というより分からないところだらけなので新しい情報とか欲しいです…。

Read more>>



 | HOME | 

DARS




Powered by DTIブログ
Designed by GALPOP BLOG + GALPOP.NET