3Dダンジョンロールプレイングゲーム 第91回目です。
今回は効果音処理を組んでいきます。
前回、効果音が必要な個所に、効果音フラグ(&HE025)を立てましたので、後はBGMと同様「走査線割込み」処理内でフラグをチェックし、音を鳴らし始めたらフラグを「&HFF」にします。
BGMと異なるのは、鳴らし終わったらそこでフラグを「&H00」にして終了、繰り返しません。
私は基本的にPSGのチャンネルAとBをBGM用、チャンネルCを効果音用として使っていました。
過去作品の効果音を再利用しようかとも思ったのですが、シューティングやアクションが多かったので、合わない…。
止むを得ず、久しぶりの効果音作り…。
難しい!
うーん…、思ったような音になりません。
敵への攻撃時は、イースの「デュバッ」っていうのが良いんだけど、出来ない…。
因みに昔は作れてました…、昔どうやって作ってたんだっけ…?
今作で使っているBGM演奏ロジックではあまり複雑なことできないのでノイズやエンベロープも切り替えられないので、これ以上は無理ですね…。
とりあえず、あまり時間かけたくなかったので、一応それらしい効果音が出来たらそれを採用。
全9種類完成しました。
▲効果音データの一部
共通ロジック側の効果音は、ロジック内に組むには流石にメモリがない…。
止む無く&H9A00~&H9AFFまでを効果音データとして、メモリマップに入れました。
アドレス
データ名
備考
9A00〜9AFF
効果音データエリア
3種類、256バイト
9B00〜9CB4
アイテムデータエリア
23種類×19バイト=437バイト
9D00〜9D4D
魔法データエリア
6種類×13バイト=78バイト
9E00〜9EAF
敵データエリア
8種類×22バイト=176バイト
9F00〜9FE7
レベルアップデータエリア
29レベル×8バイト=232バイト
A000〜A1B8
2Dマップデータ
21マス×21マス=441バイト
A200〜A7FF
壁キャラクタデータ
15パターン、1,536バイト
A800〜ABFF
BGMデータ
4
曲( 無音、
ダンジョン、店屋、戦闘)1,024バイト
AC00〜AFFF
システムメッセージデータエリア
1,024バイト
B000〜B7FF
フォントキャラクタデータ
256キャラ×縦8バイト=2,048バイト
B800〜BFFF
フォントカラーデータ
256キャラ×縦8バイト=2,048バイト
C000〜D9FF
マシン語エリア
6,655バイト
DA00〜DFFF
メッセージデータエリア
1,536バイト
E000〜E0FF
変数エリア
256バイト
EF00〜EFFF
メニュー表示用ワークエリア
256バイト
再度、イヤホンを付けてのデバッグ作業です。