4.新しいカスタムブロックを作ってみよう2

ブロックに対する触れ方の違いで効果が異なるブロックを作ってみましょう。
cape_fire.txtというファイルを作り、以下の内容を書き込みます。
LDA #$02
STA $19
RTS
LDA #$03
STA $19
RTS
前回と同じ様にして、cape_fire.binを作り、blktoolに追加します。

さて、各offsetの設定をするわけですが、前回は動作させたい時を0、
動作させたくない時を-1としました。

これについて細かく説明すると、動作させたい時は、
動作させたい処理の開始アドレスを10進数で入力する必要があります。

今回は、ファイアを当てたときには、一番初めのLDA #$02〜からの処理を、
マントを当てたときには、途中のLDA #$03〜からの処理を実行させるようにしましょう。

cape_fire.binをバイナリエディタで開いてみます。


ハンドアセンブル(手作業によるアセンブル)が出来ないと難しいかもしれませんが、

A9 02 85 19 60 までが、
LDA #$02
STA $19
RTS
に、

後半のA9 03 85 19 60 が、
LDA #$03
STA $19
RTS
に対応しています。

マントを当てたときには、0x05から処理をスタートさせればいいわけです。
16進数の5は10進数に直しても5ですが、10進数に直すと言うことは忘れないでください。
例えば、0x0Fから処理を始めたい場合は、offsetには15と入力する必要があります。



では、早速ブロックの追加を行いましょう。




これで無事導入に成功しました。