xbasip
パッケージmusic
モジュールm_init(mode=0)
mode
-- 初期化モード
m_alloc(trk, size)
trk
-- トラック番号(1~80)size
-- バッファサイズ(バイト)m_free(trk)
trk
-- トラック番号(1~80)戻り値
-- 空き容量(バイト)m_assign(ch, trk)
ch
-- チャネル番号(1~25)trk
-- トラック番号(1~80)m_play(*ch_s)
*ch_s
-- チャネル番号(1~25)。ただしzmusic2.x常駐時はトラック番号(1~80)を意味しますm_stop(*ch_s)
*ch_s
-- チャネル番号(1~25)。ただしzmusic2.x常駐時はトラック番号(1~80)を意味しますm_cont(*ch_s)
*ch_s
-- チャネル番号(1~25)。ただしzmusic2.x常駐時はトラック番号(1~80)を意味しますm_stat(ch=0)
ch
-- チャネル番号(1~25)戻り値
m_tempo(tempo)
tempo
-- 1分間に4分音符を演奏する回数(20~300)。初期状態は120m_trk(trk, mml)
trk
-- トラック番号(1~80)mml
-- MMLデータ(bytearrayもしくはbytes)m_atoi(trk)
trk
-- トラック番号(1~80)戻り値
-- トラックバッファの先頭アドレスm_vset(vo, buf)
vo
-- 音色番号(1~200)buf
-- 音色データ(bytesarrayもしくはbytes)。55バイトm_vget(vo, buf=None)
vo
-- 音色番号(1~200)buf
-- 取り出し用のデータバッファ(bytesarray)。55バイト。省略時は内部で確保して返します戻り値
-- 音色データ(bytearray)。55バイト音色データ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|---|
AF | OM | WF | SYC | SPD | PWD | AMD | PMS | AMS | PAN | DUMMY | |
OP1 | AR | D1R | D2R | RR | D1L | TL | KS | MUL | DT1 | DT2 | AMSEM |
OP2 | AR | D1R | D2R | RR | D1L | TL | KS | MUL | DT1 | DT2 | AMSEM |
OP3 | AR | D1R | D2R | RR | D1L | TL | KS | MUL | DT1 | DT2 | AMSEM |
OP4 | AR | D1R | D2R | RR | D1L | TL | KS | MUL | DT1 | DT2 | AMSEM |
musicモジュールを使用するには、opmdrv3.xもしくはzmusic2.xをシステムに組み込んでおく必要があります。ただし、opmdrv3.xとzmusic2.xにはいくつかの仕様の違いがあり、本ライブラリをする場合の動作にも差異が生じることがあります。例えば、opmdrv3.xでのm_play()はX-BASIC同様にチャネルを指定して演奏しますが、zmusic2.xはトラックを指定して演奏します。多くの場合チャネルとトラックは1対1の関係で使われますが、そうではない場合に動作が異なります。m_stop()、m_cont()も同様です。また、opmdrv3.xでは音色番号1~68に対し下記のプリセットデータが組み込まれていますが、zmusic2.xには組み込まれていません。
番号 | 音色 | 番号 | 音色 |
---|---|---|---|
@1 | A.ピアノ | @35 | ホルン |
@2 | H.ピアノ | @36 | トロンボーン |
@3 | エレクトリックピアノ | @37 | チューバー |
@4 | クラビネット | @38 | ブラス1 |
@5 | セレスタ | @39 | ブラス2 |
@6 | チェンバロ | @40 | ハーモニカ |
@7 | アコースティックギター | @41 | オカリナ |
@8 | エレクトリックギター | @42 | リコーダー |
@9 | ウッドベース | @43 | サンバホイッスル[3,4] |
@10 | エレクトリックベース | @44 | パンフルート |
@11 | バンジョー | @45 | スネアドラム[2] |
@12 | シタール | @46 | リムショット[3] |
@13 | ハープ | @47 | バスドラム[0] |
@14 | 琴 | @48 | タムタム[2] |
@15 | パイプオルガン1 | @49 | ティンパニ[2,3] |
@16 | パイプオルガン2 | @50 | ボンゴ[2,3] |
@17 | エレクトリックオルガン | @51 | ティンバレス[3] |
@18 | アコーディオン | @52 | トライアングル[3,4] |
@19 | バイオリン | @53 | カウベル[3,4] |
@20 | チェロ | @54 | チューブラーベル |
@21 | ストリングス1 | @55 | スチールドラム |
@22 | ストリングス2 | @56 | グロッケン |
@23 | ピチカート | @57 | ビブラフォン |
@24 | ボイス | @58 | マリンバ |
@25 | コーラス | @59 | クローズハイハット[3] |
@26 | グラスハープ | @60 | オープンハイハット[4] |
@27 | ホイッスル | @61 | シンバル[4] |
@28 | ピッコロ | @62 | シンセサイザ1 |
@29 | フルート | @63 | シンセサイザ2 |
@30 | オーボエ | @64 | アンビューランス |
@31 | クラリネット | @65 | 嵐 |
@32 | バスーン | @66 | レーザーガン |
@33 | サックス | @67 | ゲーム1 |
@34 | トランペット | @68 | ゲーム2 |
ガキ括弧内の数字はその音色で推奨のオクターブ。