カラーひよこ愛好会
since 2005/6/1
「生きる目的ってある?」 byクワタ(2011/06/28)
このエントリーを含むYahoo!ブックマーク このブログをRSSで購読

 
2005|01|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|11|12|
2011|01|02|03|05|06|07|08|09|10|12|
2012|01|02|04|06|07|08|09|10|11|12|
2013|01|02|03|04|06|07|08|11|12|
2014|01|02|04|06|08|12|
2015|08|12|
2016|01|08|

  


 ハックロム、改造ロックマン関連はこちらへ⇒ゲイムのお部屋

コミックマーケット90は8/12(金)[1日目]東ウ-15b カラーひよこ愛好会で参加予定です

コミックマーケット88は8/15(土)[2日目]東メ-15a カラーひよこ愛好会で参加予定です

コミックマーケット86は8/16(土)[2日目]西れ-18a カラーひよこ愛好会で参加予定です

コミックマーケット85は12/29(日)[1日目]西れ-25a カラーひよこ愛好会で参加予定です

コミックマーケット84は8/10(土)[1日目]西あ-23b カラーひよこ愛好会で参加予定です

コミックマーケット83は12/29(土)[1日目]西れ-20a カラーひよこ愛好会で参加予定です

コミックマーケット82は8/11(土)[2日目]西る-17a カラーひよこ愛好会で参加予定です

コミックマーケット81は12/30(金)[2日目]東ペ-15b カラーひよこ愛好会で参加予定です

天職遊民様さん主催のうらバン♪合同誌「しんふぉにあ」に1ページほど寄稿しています

スタジオハゲさん主催のゆるゆり合同誌「ゆりめいつ」に2ページほど寄稿しています

例大祭8は5/8(日) J-25a カラーひよこ愛好会で参加予定です

コミックマーケット79は12/29(水) 西あ-37b カラーひよこ愛好会で参加予定です

コミックマーケット78は8/13(金) 東E-37b カラーひよこ愛好会で参加予定です

オークス様より発行のハートキャッチプリキュアアンソロジー キュアビッチ HCに寄稿しています。(再録)

5/30のぷにケット21ドド07(入り口の近く)で参加予定です

同人情報を更新しました(2010/05/17)

 ⇒過去の告知はこちら


2007/10/20(土) 唐突にロックマン2

久々にロックマン2です

最近の改造ロックマン2は凄いのが多いですね
ですが、少しだけ疑問が残ります
「どうしてここまで凄い改造をしてるのに、あーいったところやこーいったところは未改造なんだろう?」と・・・

ロックマン2のボスの音楽セット

その中の代表的なものが「ロックマン2のボスの音楽」です
ロックマン2はボスの音楽が一種類しかありませんが、改造ロックマンでは複数種類用意しているものが多いですよね

ですが、せっかくメカドラゴンやピコピコ君やボスラッシュやワイリーマシンの音楽に違うものを使っているのに、ガッツタンクやブービームトラップやエイリアン(ラスボス)は通常ボスと同じにしてしまっているのでしょう?
普通に考えたら、「8ボスとワイリー面ボス」で音楽を分ける(更にボスラッシュとラスボスで別音楽)のがセオリーかと思います
もしも「やりたかったけどできなかった」「やりたいけどやり方がわからない」という方がいたら、今日の日記が少しでも役に立てば幸いです
なお、6502アセンブラがわからない人は読み飛ばしてください(汗

まず、ボスの音楽を鳴らす処理は
 A9 0B    lda #$0B ;ボス音楽トラック指定
 20 51 C0  jsr $C051 ;音楽再生サブルーチン

ですよね?
そこで、「A9 0B 20 51 C0」で検索するとたくさん出てくると思われます
全部で5つ「メカドラゴン」「ピコピコ君」「ボスラッシュ」「ワイリーマシン」「その他のボス(8ボス等)」かと思われます

これまでボスの音楽セットを変えていた人は、ここでの指定トラックを変えていたのだと思います
8ボス、ガッツタンク、ブービームトラップ、エイリアンに共通する事はシャッターを開けてボスの部屋に入るという点です
シャッターを使用しないメカドラゴン、ピコピコ君の場合はボスの処理の中に音楽を鳴らす処理が入っています(ボスラッシュは、ワープ装置に・・・)
ロックマンEXHAUSTではエイリアンの音楽だけ変えてありますが、これもメカドラゴンと同じようにボスの変身処理に「A9 0B 20 51 C0」を挿入する事によって実現しています

0x38FF4の「A9 0B 20 51 C0」を見てみましょう
実はこれは、シャッターの開閉処理の内部です
シャッター開閉処理は「0x38F39の20 20 92」〜「0x39043の60」の間です
では、その一部分を見てみましょう

38FEF : DD 6F 90  cmp $906F,x ;ボスの部屋か?
38FF2 : D0 0F    bne $0F ;ボスの部屋でなかったら音楽を鳴らさない(下の処理を0Fbyte飛ばす)
38FF4 : A9 0B    lda #$0B ;ボスの音楽トラックをAレジスタにセット
38FF6 : 20 51 C0  jsr $C051 ;Aレジスタにセットした音楽を鳴らす


この処理を抜粋しただけでは面ごとにボスの音楽を変えることはできません
ですが、その下にヒントがあります

38FF9 : A5 2A    lda $2A ;ステージ番号(メモリの0x2A)を読み出す
38FFB : C9 0B    cmp #$0B ;ステージ番号と0B(ブービームトラップ)との差を求める
38FFD : F0 04    beq $04 ;差が0であればシャッターを閉める(下の4byteを飛ばす)
38FFF : C9 08    cmp #$08 ;ステージ番号と08との差を求める
39001 : B0 3A    bcs $3A ;ステージ番号が08以上であればシャッターを閉めない(下の処理を3Abyte飛ばす)
39003 : シャッターを閉める処理


これは、「ボスの部屋に入った際にシャッターを閉めるか否か?」の処理です(実際のシャッターを閉める処理は39001以降)
ROCKMAN EXILE.ではクイックマン戦でシャッターが閉まりませんが、ここを少し変えているからです
この処理があるお陰で「8ボス(0x00〜0x07)とブービームトラップ(0x0B)シャッターが閉まり、ガッツタンク(0x0A)とエイリアン(0x0D)ではシャッターが閉まらない」というものが実現できます

この処理を応用すれば、例えば
A5 2A    lda $2A ;
C9 08    cmp #$08 ;
B0 04    bcs $04 ;
A9 0B    lda #$0B ;
D0 02    bne $02 ;
A9 0C    lda #$0C ;
20 51 C0  jsr $C051 ;

ってな感じに書けば「ステージ07までなら音楽トラック0Bを、ステージ08以降は音楽トラック0Cを」みたいな処理になるんじゃないのかなーと思います(試してないので間違えてたら御免)
ロックマン1はそんな感じにやってたと思います、確か
でも、こんな感じにステージで音楽トラックを分ける処理を入れる場合は近隣の他の処理を潰さないと入りきりません
「ボス以外でシャッターなんかいらねえよ」という方は手前の処理を、「ボスの部屋に入った後にシャッター閉める必要なんかねえよ!」って方は後ろの処理を潰すと良いかと思います

でも、処理を潰すのは誰だって怖いですよね?
そんな方に良い方法があります
「A9 0B 20 51 C0」を「A5 2A 20 51 C0」に修正してみましょう
ボスの音楽トラックがステージ番号になります
0x30A50からの音楽トラックをステージに対応したボスの音楽アドレスに変更してしまえば簡単にステージ毎のボス音楽を指定できます
まぁ、音楽トラックが勿体無いですが、これについては一曲目のデータを削ればいくらでも(256トラックまで)確保可能なので問題ないかもしれません
このA5 2Aのような処理は結構使えます
「面によって雑魚の耐久力を変える」「面によって違う動きをする敵」「ボスラッシュでボスがパワーアップ」等に役立つかもしれません
自分だったら「音楽トラック=ステージ番号」にして、現在の0x381D0から入っている「面ごとの指定音楽トラック」を別のことに使用するために確保するかと思います(モチベーションがあれば)

WEB拍手レス

はぁはあ
>クワたんの描く初音ミクを見てみたい
mjd!?

本日のツッコミ(全6件) [ツッコミを入れる]
sato_tiff (2007/10/22(月) 23:45)

この手の話は久しぶりですね。ROMの絶対アドレスよりかは bank:PC のほうがよいかと思うんですが、そこも理解してない人向けかなぁ。<br>0x と $ も統一した方がいいんじゃ。

クワタ (2007/10/23(火) 00:47)

ローカルではバンク毎に切り取ったアドレスで、後から絶対アドレスに直してますw<br>統一はした方が良かったですね。いつも0x使ってて、$はmd6502での書き方だから・・

クワタ (2007/10/23(火) 00:49)

でも人に説明して書こうとすると、こんな事でも凄い量になっちゃいます。<br>書く前までは、このくらいの事なら十数行程度で書けると思ってました

sato_tiff (2007/10/24(水) 05:22)

ロックマンのプログラム拡張の方々の技術力は存じませんが、たぶん基礎的なことを知るとクワタさんが今回書いたことよりもっとできると思うような。<br>それをしるとプログラムもとても楽しくなると思う。けど書いても読む人がどれだけいるかどうかとか。<br>暇ができたら私が書きたいなと思います。

クワタ (2007/10/24(水) 06:51)

改造の世界では、ある程度できてしまえば何でもできてしまうので、基礎的なことを自分では書くことはないと思います。<br>取り敢えず、「折角6502を勉強してるのに、元々の作りで思考停止している」のが勿体無いと思ったので書いただけです

クワタ (2007/10/24(水) 06:53)

読む人、いると思いますよ。<br>でも、読者の対象を何処にするかで記事の難易度は変わりそうですね

[]



WEB拍手
web拍手、待ってます♪


リンク集(バナー付リンク集はもうしばらくお待ちください)
ジャンル違いや誤植の指摘はメールかweb拍手かコメントにて
    同盟・リング等
 
 

相互リンク受付中です、メールかコメントかWEB拍手で


ブログランキング


2016/08/09(火)

1. お久です、夏コミ出ます
2. 新刊情報1
3. 新刊情報2

2016/01/30(土)

1. コミケお疲れ様です
2. 戦果です
3. Web拍手レス

2015/12/25(金)

1. 御無沙汰してしまいました
2. 新刊サンプル

2015/08/12(水)

1. 生きてます
2. 新刊サンプル
3. そうそう

2014/12/21(日)

1. 新刊入稿しました

2014/12/12(金)

1. 生きてます
2. 12月12日

2014/08/25(月)

1. コミケお疲れ様でした!
2. 打ち上げとか
3. 新松戸アパートで電子工作?

2014/08/12(火)

1. 夏コミ新刊出ます!
2. Web拍手レス

2014/06/28(土)

1. アパート3棟目を買いました
2. ところがどっこい
3. 夏コミ受かりました
4. Web拍手レス

2014/06/01(日)

1. 不動産投資のお話
2. 「マンション買いませんか?」という電話
3. 「利回り」と「返済比率」を考える
4. 最初から古いマンションを買えば?
5. 木造築古アパート投資
6. 税金面のお話
7. オマケ「そんな金ねーよ!」という人は?
8. Web拍手レス

2014/04/17(木)

1. 35歳になりました(先月)
2. Web拍手レス

2014/02/22(土)

1. らき☆すた本の新刊です
2. 新刊情報

2014/01/30(木)

1. コミケお疲れ様です!
2. いつものあれ
3. その他

2013/12/27(金)

1. コミケでは新刊2種です
2. 新刊その1
3. 新刊その2 艦これ合同誌

2013/12/12(木)

1. 亡くなった方の部屋に行ってきました
2. 38歳の誕生日おめでとうございます
3. 遺書?

2013/12/02(月)

1. ここ最近の動向
2. kuwatan.jpドメイン失効?
3. 深刻な話です(江戸川区アパートの話)

2013/11/06(水)

1. 生きてます
2. 冬コミ情報
3. 今後のイベント情報
4. 艦これやってます

2013/08/07(水)

1. 新刊2冊目、きんいろモザイク本出ます
2. 新刊2冊目サンプル
3. アパート経営について小言

2013/07/31(水)

1. 入稿しました!
2. 新刊情報
3. 何故か今、2冊目の原稿をやってます。

2013/06/17(月)

1. とうとう1ヶ月半も空いてしまいました。
2. 陵桜祭お疲れ様です!
3. 夏コミ当選しました
4. 丼丸マジウマ

2013/04/01(月)

1. アパート焼けました
2. まぁ、わかるだろうけど(4月2日追記)

2013/03/27(水)

1. アパート2棟目買いました

2013/02/07(木)

1. 3年ぶりにらき☆すた本でます

2013/01/08(火)

1. コミケお疲れ様です!
2. いつものあれ
3. 忘れてた

2012/12/27(木)

1. 冬コミ案内

2012/12/12(水)

1. 新刊の作業中です!
2. アパートの修繕
3. 桑島法子さん誕生日

2012/11/28(水)

1. 大洗に行ってきました
2. コミケの準備

2012/11/07(水)

1. ぷにけっとお疲れ様でした
2. お詫び
3. コミケ当選しました!
4. Web拍手レス

2012/10/31(水)

1. 新刊情報です
2. 近頃の不動産

2012/09/04(火)

1. 太りました
2. アパート修繕
3. まどか☆マギカオンライン

このサイトはリンクフリーです
リンクの際にはhttp://kuwatan.jp/にリンクしてくださると嬉しいです
リンク報告、相互リンク願い、リンク削除のお願い等はクワタ()まで御連絡下さい
これは一応バナーです→バナー