ホーム > セレクトバグ > ピカチュウ版での任意コード実行+没BGM再生

ピカチュウ版での任意コード実行+没BGM再生

雫月さん初代ポケモンのBGM周りの話に触発されてピカ版の没BGMをうまく鳴らせないか試したらできちゃいました。

私の任意コード実行の主戦場は緑なのでピカ版はあんまりちゃんとやってませんでしたが、
ピカ版の「5かい」はエントリポイントがずれているためD123に飛んでくれず、
もっと手前に飛ぶのでだいたいは主人公の名前に引っかかって固まるようです。
特に名前「れんだ(DA DE 30 50)」は1文字目からしてjp cなのでキャリーが立ってたら30deにジャンプして暴走確実です。
ということで代用品を探したところ、どうやら「はやぶさバッヂ(65)」がD4CAに飛ぶっぽいということを確認しました。
(今のところ条件付きとかではないと思っているのですが、ちゃんと追ったわけではないので100%飛ぶかは怪しい)追跡しました、必ずD4CAに飛びます。
これは自分のパソコンの9番目の種類にあたります。

ということで、ポケスタを利用するなりして「はやぶさバッヂ」をピカ版に密輸、
自分のパソコンの9番目から
9: かみなりのいし x 99
10: 技22 x 35 ←2015/7/28修正、0x23なので10進数では35個が正しいです
11: 技33 x any
を並べるとjp de64が達成されてボックスのニックネーム1文字目から実行されます。
これで赤緑用と同様の5かいプログラムが実行できます。しかも手持ちが制限されないおまけつき。

本題に戻り、これを利用して没BGMを再生するコードを書きました。
例によってボックス頭から並べ、自転車に乗って「はやぶさバッヂ」を起動、自転車から降りるとBGMが変わります。
このまま赤緑で実行すると多分フリーズしますが、適切にBGMのバンク番号とBGM番号を設定してやれば流用可能です。
(02とかは文字にできないので引き算するなり改造が必要です)

; 1匹目 ヅろめゆゅ
11 db d2; ld de, d2db
d5; push de
e1; pop hl
50;

; 2匹目 ぼぐづぼム
3e 28; ld a, 28 ここがBGMバンク号 28はピカ版専用曲バンク
32; ldd (hl), a
3e 9f; ld a, 9f ここがBGM番号 9fは没曲
50;

; 3匹目 づの
32; ldd (hl), a
c9; ret
50;

広告
カテゴリー:セレクトバグ タグ:
  1. まだコメントはありません。
  1. No trackbacks yet.

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。