MoonDriverTechDoc

MoonDriver 技術文章


OPL3スペック

・最大6和音の4OPが使用可能
・18和音 or 15和音 + 5リズム(2OP時)
・6和音 4OP + 6和音 2OP
・6和音 4OP + 3和音 2OP + 5リズム
・8つの波形選択
・ビブラートとトレモロの為のLFO

レジスタ(A1 = L)

ビット順 : 76543210
REG 7 6 5 4 3 2 1 0
$01 LSI TEST
$02 TIMER 1
$03 TIMER 2
$04 RST MT1 MT2 x x x ST2 ST1
$08 x NTS x x x x x x
$20 - $35 AM VIB EGT KST MULT
$40 - $55 KSL TL
$60 - $75 AR DR
$80 - $95 SL RR
$A0 - $A8 F-Number(L)
$B0 - $B8 x x KON BLOCK F-Number(H)
$BD DAM DVB RYT BD SD TOM TC HH
$C0 - $C8 CHD CHC CHB CHA FB CNT
$E0 - $F5 x x x x x WS

レジスタ(A1 = H)

ビット順 : 76543210
REG 7 6 5 4 3 2 1 0
$01 x x LSI TEST
$04 x x CONNECTION SEL
$05 x x x x x x x NEW
$20 - $35 AM VIB EGT KST MULT
$40 - $55 KSL TL
$60 - $75 AR DR
$80 - $95 SL RR
$A0 - $A8 F-Number(L)
$B0 - $B8 x x KON BLOCK F-Number(H)
$C0 - $C8 CHD CHC CHB CHA FB CNT
$E0 - $F5 x x x x x WS

※レジスタはリセット時に全クリア

4OP時、有効フラグCHxは$Cxと$Cx + 3の両方を1にする。

アドレス・オペレータ対応表

アドレス $0-$5 $8-$D $10-$15
オペレータ 1-6 7-12 13-18

定義一覧

@TONE (OPL4用)
@OPL
#EX-OPL3
#OPL4-NOUSE


コマンド一覧 : 内部コマンド番号 : 意味

コマンド一覧 内部番号 意味
VOP, RV $EA ボリュームOP設定
DA $EB DAMPスイッチ(OPL4)
OPM $EB コネクションセレクタ(Reg.$104)の設定
OPB $E6 オペレータベースアドレス(W/WX時に利用)
WX $E5 2オペ音色設定
TVP $E4 TVPの設定
DR $F2 ドラム
FB $E3 FeedBackの設定
W $F1 4OP音色設定

TVPについて

Reg.$BDの上位3ビット
DAM, DVB, RYTの3ビットを設定する

音色定義(@OPL)

@OPL0 = {
;FB ST VOP
0, 0, 0,

;予約
0, 0

;TR VI SU KSR MUL KSL OL AR DR SL RR WF
0 ,0 ,0 ,0 ,1 ,0 ,2 ,5 ,4 ,5 ,5 ,0,
0 ,0 ,0 ,0 ,1 ,0 ,8 ,5 ,2 ,4 ,8 ,0,
0 ,0 ,0 ,0 ,0 ,0 ,0 ,5 ,5 ,5 ,5 ,0,
0 ,0 ,0 ,0 ,0 ,0 ,0 ,5 ,5 ,5 ,5 ,0
}

; OL=TLです



FB ST VOP
TR VI SU KSR MUL KSL OL AR DR SL RR WF

OPL3への書き込み
Reg.$C0 =
((FB & 0x07) << 1) |
(ST & 0x01)

Reg.$C0 + 3 =
((ST & 0x2)>>1)

Reg.$BD =
((T & 1) << 7) |
((V & 1) << 6) |
((P & 1) << 5)

■ループ開始(Regはベースアドレス)
Reg.$20 =
((TR & 1) << 7) |
((VI & 1) << 6) |
((SU & 1) << 5) |
((KSR & 1) << 4) |
(MUL & 0x0F)

Reg.$40 =
((KSL & 3) << 6) |
(OL & 0x3f)

Reg.$60 =
((AR & 0x0f) << 4) |
(DR & 0x0f)

Reg.$80 =
((SL & 0x0f) << 4) |
(RR & 0x0f)

Reg.$E0 =
(WF & 0x07)

オペレータ分だけループします。WとWXではループ回数が異なります。

4OP時のオペレータとアドレスの例

オペレータ スロット番号 アドレス
1 1 $00
2 4 $03
3 7 $08
4 10 $0B
1から6までが一つの集まりで、
6つのスロット毎にアドレスの初期位置が異なるので注意。

  • 最終更新:2015-05-08 08:34:41

このWIKIを編集するにはパスワード入力が必要です

認証パスワード