2008年08月31日(日) 10:58
シャッターが閉じる時に読み込むパターンテーブルの情報について調べているんですが…なかなかうまくいきませんわOTL
これはクワタさんところのエディタのチップ表示なんですが、
例えばこの状態だとシャッターのグラフィックを保持してるPPUアドレスは
1200-123F になりますよね。
この1200-123Fのデータを読み込んで、
ネームテーブルの値を書き換えていると思うんですけど…。
で、結局何がしたいかというと、
シャッターを描画する時のパターンテーブルの読み込みアドレスを変更したい、
という事なんですよね。
1200-123F → 1040-107F(左上端から一つ右のチップの位置)
のアドレスから読み込ませたいところなんですが…。
なかなか上手くいきません。
BGチップ関連は未だに自分の理解が足りていないので苦労してます…。
これはクワタさんところのエディタのチップ表示なんですが、
例えばこの状態だとシャッターのグラフィックを保持してるPPUアドレスは
1200-123F になりますよね。
この1200-123Fのデータを読み込んで、
ネームテーブルの値を書き換えていると思うんですけど…。
で、結局何がしたいかというと、
シャッターを描画する時のパターンテーブルの読み込みアドレスを変更したい、
という事なんですよね。
1200-123F → 1040-107F(左上端から一つ右のチップの位置)
のアドレスから読み込ませたいところなんですが…。
なかなか上手くいきません。
BGチップ関連は未だに自分の理解が足りていないので苦労してます…。
はじめまして、MAXX楽しませて頂いています〜
シャッターの件ですが調べてみたところ、
3D290 : A2 20 ldx #$20 (NESヘッダ含むアドレス)
の#$20がシャッター(閉)のグラフィックを指定する値のようで、
8x8タイル単位で数えた時のシャッターに使うタイル番号となっているようです。
シャッター画像はどのステージもパターンテーブル上の8x8タイル単位で数えて#$20〜23番にあるので上の値で固定されているようです。
この値を書き換えることでシャッターに使用するチップを変更することができると思います(左上端から一つ右なら#$04でいけると思います)。
シャッターの件ですが調べてみたところ、
3D290 : A2 20 ldx #$20 (NESヘッダ含むアドレス)
の#$20がシャッター(閉)のグラフィックを指定する値のようで、
8x8タイル単位で数えた時のシャッターに使うタイル番号となっているようです。
シャッター画像はどのステージもパターンテーブル上の8x8タイル単位で数えて#$20〜23番にあるので上の値で固定されているようです。
この値を書き換えることでシャッターに使用するチップを変更することができると思います(左上端から一つ右なら#$04でいけると思います)。
初めまして。MAXX楽しんでいただけて何よりです〜。
なんと!シャッターの件、わざわざ解析して頂くとは…。
本当に助かりました、ありがとうございます…!
成る程…そんな場所に読み込みのルーチンがあったんですか…。
ノーマークでしたわ…。
すぐ後ろで$2006にアクセスしてますね…。
成る程、$3B6は$2006への一回目のアクセス、
$3BCは2回目のアクセスに使われているんですね…参考になりました。
しかし…この辺のは何処から解析していけるんでしょう。
基本的にG-NESのデバッガ使ってルーチンおっかけてはいるんですけど、
どうも扱い方がまだまだみたいですわ…(笑
とりあえず名無しさん、本当にありがとうございました!
なんと!シャッターの件、わざわざ解析して頂くとは…。
本当に助かりました、ありがとうございます…!
成る程…そんな場所に読み込みのルーチンがあったんですか…。
ノーマークでしたわ…。
すぐ後ろで$2006にアクセスしてますね…。
成る程、$3B6は$2006への一回目のアクセス、
$3BCは2回目のアクセスに使われているんですね…参考になりました。
しかし…この辺のは何処から解析していけるんでしょう。
基本的にG-NESのデバッガ使ってルーチンおっかけてはいるんですけど、
どうも扱い方がまだまだみたいですわ…(笑
とりあえず名無しさん、本当にありがとうございました!
シャッターについて調べたときは、シャッターの前で[Write][$2007]の条件で
ブレークポイントをセットしてどこでネームテーブルに書き込んでいるかを
特定した後、そこから逆アセンブルテキストとにらめっこしました。
解析は根気の要る作業だとは思いますが、思い入れのあるゲームが
どんな風に動いているのかを知ることができるのは面白いですね。
それではステージ2も楽しみに待っています〜
ブレークポイントをセットしてどこでネームテーブルに書き込んでいるかを
特定した後、そこから逆アセンブルテキストとにらめっこしました。
解析は根気の要る作業だとは思いますが、思い入れのあるゲームが
どんな風に動いているのかを知ることができるのは面白いですね。
それではステージ2も楽しみに待っています〜
成る程…自分は[Write][$2006]でブレーク貼ってました。
これでも見つかったと思うので、なんというか見逃してた感がかなりありますわ…。
逆汗テキスト生成せず、そのままデバッガで調べるのは効率悪そうですね。
今後はテキスト生成して試してみたいと思います。
2がどういう風に動いているか、解析を通して色々なことが分かって、
ゲームって凄い、と思いましたね…。本当、解析は面白いです。
ステージ2の構想から練っているような状態ですが、
ゆったりと見守ってくれればなと思います〜。本当ありがとうございました!
これでも見つかったと思うので、なんというか見逃してた感がかなりありますわ…。
逆汗テキスト生成せず、そのままデバッガで調べるのは効率悪そうですね。
今後はテキスト生成して試してみたいと思います。
2がどういう風に動いているか、解析を通して色々なことが分かって、
ゲームって凄い、と思いましたね…。本当、解析は面白いです。
ステージ2の構想から練っているような状態ですが、
ゆったりと見守ってくれればなと思います〜。本当ありがとうございました!
Comment投稿
TrackBack URL