サウンド

ARM7のコードは書かなくてもOK.

フォーマットは,波形データが入った単なるsigned charの配列です.Windowsの.wavファイルは,0x80が振幅の中心なので注意.

サンプル

sound01.binとかをdataディレクトリに入れてmakeすると,自動的にヘッダファイルを作ってリンクまでしてくれます.

#include <nds.h>
#include <stdio.h>
#include <stdint.h>

#include "sound01_bin.h"
#include "sound02_bin.h"

int main(void)
{
    irqInit();
    irqEnable(IRQ_VBLANK);

    //void setGenericSound( u32 rate, u8 vol, u8 pan, u8 format);
    setGenericSound(11025,127,64,1);
/*
    TransferSoundData snd;
    snd.data=sound01_bin;
    snd.len=sound01_bin_size;
    snd.rate=11025;
    snd.vol=127;
    snd.pan=64;
    snd.format=1;
    playSound(&snd);
*/

    for (;;) {
        swiWaitForVBlank();
        scanKeys();
        if (keysDown()&KEY_A)
            playGenericSound(sound01_bin, sound01_bin_size);
        if (keysDown()&KEY_B)
            playGenericSound(sound02_bin, sound02_bin_size);
    //        playSound(&snd);
        if (keysDown()&KEY_START)
            swiSoftReset();
    }



}

Copyright © binzume all rights reserved.