FrontPage  Index  Search  Changes  RSS  Login

ROMEO

ページを編集するにはログインが必要です。

ANCIENT-FM Sound Technology -ROMEO-

インストール

ドライバ

対応プログラムなど

対応プログラムの所在

ROMEO対応プログラムの作成とかソースとか

julietライブラリ

GORRYさんのページもしくはうささんのページより取得してください。

YM2151 X1/X3切り替え

こんな感じでいかがでしょうか?

juliet.h

/* clock */
#define YMF288_ROMEO_CLOCK    (8000000)	/* ROMEO YMF288 Clock(  :8.000000)	*/
#define YM2151_ROMEO_CLOCK_X1 (4000000)	/* ROMEO YM2151 Clock(X1:4.000000)	*/
#define YM2151_ROMEO_CLOCK_X3 (3579545)	/* ROMEO YM2151 Clock(X3:3.579545)	*/
#define YM2151OSC_X1          (0x00)   	/* use X1(4.000000) */
#define YM2151OSC_X3          (0x01)   	/* use X3(3.579545) */
#define X1_MAX                (4096000)	/* X1 MAX */
#define X1_MIN                (4000000)	/* X1 MIN */
#define X3_MAX                (3582000)	/* X3 MAX */
#define X3_MIN                (3000000)	/* X3 MIN */
#define juliet_YM2151SetCurrentOsc(osc)    (ym2151osc = osc)
#define juliet_YM2151GetCurrentOsc()       (ym2151osc)
BYTE    ym2151osc = YM2151OSC_X1;          /* YM2151 oscillator (X1 or X3) */

juliet.c

/**
 *  YM2151 オシレータ選択. 
 *  YM2151 のクロックから使用するオシレータを変更する。  
 *    'clock' is the chip clock in Hz  
 *  
 *  @param int clock クロック  
 */  
void juliet_YM2151OscSelect(int clock)  
{ 
    if (juliet_YM2151IsEnable()) {  
        // 4.000-4.096MHz     
        if (clock >= X1_MIN && clock <= X1_MAX) {         
            juliet_YM2151SetCurrentOsc(YM2151OSC_X1);    // X1:4.000000         
        }             
        // 3.000-3.582MHz         
        else if (clock >= X3_MIN && clock <= X3_MAX) {         
            juliet_YM2151SetCurrentOsc(YM2151OSC_X3);    // X3:3.579545         
        }             
        // ?MHz         
        else {         
            juliet_YM2151SetCurrentOsc(YM2151OSC_X1);    // default:X1:4.000000         
        }             
        romeo.out32(romeo.addr + ROMEO_YM2151CTRL, juliet_YM2151GetCurrentOsc());         
        Sleep(10);                // 44.1kHz x 192 clk = 4.35ms 以上ないと、DACのリセットかからない         
    }         
}
Last modified:2004/06/25 22:43:44
Keyword(s):
References:[SideMenu]