WonderWitchでプログラム〜音楽をならす〜


目次に戻る


WonderWitchを使ったプログラムで音楽をならしたい場合は、SoundILというものを使うと便利です。WWitch\il\sound\というディレクトリの中にsound.ilというファイルがあるので、これをあらかじめWonderSwanのプログラムエリアに転送しておきましょう。また、同じディレクトリの中にある、il_sound.hというファイルをソースファイルがあるディレクトリにコピーします。
 
 
# makefile メイクファイル
# makefile for sound
#

include ../makefile.inc

all: sound.fx

sound.fx: main.fx
 copy main.fx sound.fx
main.fx: main.bin
main.bin: main.obj
main.obj: main.c

main.cf cfファイル
name: sound
info: 蛙の歌
mode: 7
source: main.bin
output: main.fx
/* main.c Cソースファイル */
#include <sys/bios.h>
#include "il_sound.h"

SoundIL soundIL; /* SoundILデータ。変数名は変更してはいけない。 */
BYTE bgmdata[256]; /* 演奏用データが代入されるエリア */

int main()
{
    /* SoundILを読み込む */
    if( open_sound_il(&soundIL) != E_FS_SUCCESS ){
        /* SoundILが存在しない */
        return -1;
    }
 
    sounddrv_init();  /* SoundILの初期化 */
    sound_open();   /* 演奏出来る状態にする */
 
    parse_mml( bgmdata , "CDEFEDCREFGAGFERCRCRCRCRL8CCDDEEFFERDRCRL4R" , 0 ); /* MMLを解析して演奏できる形式に変換し、bgmdataに代入する */
    bgm_play( bgmdata , PLAY_LOOP ); /* 繰り返しモードで演奏を開始する */
 
    key_wait(); /* キー入力を待つ */
 
    /* SoundILの後処理 */
    sound_close();
    sounddrv_release();
 
    return 0;
}

ほとんど、マニュアルにのっているサンプルと同じになります。詳しい解説は省略します。

目次に戻る