電音の工場ブログ

当ブログは…

自作エフェクターシンセサイザ製作のネタや開発覚え書きなど、筆者の電音活動を記録しています。お探しの記事が見つからない方は、検索カテゴリ一覧をご利用ください。

スパマーが来訪すると、ときどきコメントをはてなユーザのみに絞ったり開放したりすることがあります。

2006-03-07

作りかけ2 ― MIDI on Win

|  作りかけ2 ― MIDI on Win - 電音の工場ブログ を含むブックマーク はてなブックマーク -  作りかけ2 ― MIDI on Win - 電音の工場ブログ  作りかけ2 ― MIDI on Win - 電音の工場ブログ のブックマークコメント

id:Chuck:20040512#p1 で言及した作りかけのソフト。その後 1年と10ヶ月が経ようとしているが、なんの進捗もない。

しかしちょっと心に引っかかるものがあって、あわよくばまた弄ろうかと思ったが、すっかり忘れて思い出せない。何かBOSS GT-3 の仕様的な問題で、当初考えていた構成がうまく行かないということに突き当たって中断して今に至った、ということだけ思い出したが、その内容までは思い出せず…

ソースを見るとなぜか Pascal だし… 当時 Delphi を使っていたのだろうか>自分

あまりに思い出せなかったので

あまりに思い出せなかったので再勉強中につき、メモ

Short Msg の MIDI outだけど
http://codezine.jp/a/article.aspx?aid=172 (Delphi)
MIDI 制御
http://www.cs.k.tsukuba-tech.ac.jp/labo/koba/software/midi.html (VB)
古そう
http://ourworld.compuserve.com/homepages/Satsuki_Kojima/winprog.htm (Win3.1か)
本家
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpmltimd/html/_win32_midioutlongmsg.asp
こういうのも
http://www.sm.rim.or.jp/~shishido/midimsg.html
これはC++ Builderか
http://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-062.html
書籍
本もあった

たぶん APIの本を買おうと思わないところが敗因であろう>自分

「システム排他 MIDI メッセージ」という訳はヤメテほしい>MS

開発環境は

ツールがフリーであることを条件に Delphi で組むのと ActiveBasic で組むのと、どっちがいいでしょうか?

気になったので弄ってみているわけだが

なんとか(Delphi)動かしているうちに思い出してきた。

なんどもアプリを上げたり落としたりしていると「メモリが足りません」というのできっとどこかでリークを… 使用しているUSB MIDI I/F をはずしてつけ直せばOK(おい)。

作ったテストアプリは、BOSSのフロアマルチ GT-3 にシステムエクスクルーシブを送りつけて、とあるアドレスにある設定情報を吸い上げようとするもの。弄っていて思い出したのは、GT-3側でMIDI bulk load 待ちの状態にしないと [Request data 1] (RQ1) を受け付けないらしいことである。

これは使い勝手が悪い。最悪、

  1. bulk load 待ちにする
  2. パソコンからSysEXを送り、GT-3の状態を得る
  3. パソコンから変更したパラメータを送る
  4. 通常動作状態にする
  5. 音を出してみる
  6. さらに変更したいときはまた bulk load 待ちにする

ような動作が必要。

最初にGT-3の状態をbulk dumpして、あとはパソコン側の情報で制御という方法も考えられるが、パソコン側情報とGT-3のパラメータがミスマッチしたら修正は効かない。

GT-3 のエディタを作ろうと勇んでWindowsのMIDIに挑んだのであるが、プログラミングというよりは仕様の壁に阻まれたようである。ということを約2年前にもやっていたのにすっかり忘れてもう一度やり直すとは>自分

おそらくは GT-3のシスコン・マイコンがアップアップで通常動作状態のときに SysEX を処理する余力がなかったのだろうなぁ。GT-5も同じ仕様。GT-6以降は通常動作状態のときに RQ1 を受けられると、どこかで見たような気がする。GT-8も同じだろう。GT-8ならエディタを作れるかも。

ああ、誰か GT-8 を恵んでくれませんかねぃ…

追記
MIDI IN w/ VB
MIDIデバイスを列挙する
VBのお部屋 - エクスクルーシブ・メッセージの送信
VBのお部屋 - MIDIの入力を受信
MIDI w/ ActiveBasic
http://www.discoversoft.net/forum/viewtopic.php?t=524&highlight=MIDI&sid=abbeac3989cea13e4cd74800ac181087

RJBRJB2006/03/08 01:04僕もテスト用に任意のMIDIメッセージが出せるアプリが欲しいと思ってました。フリー開発環境と言えば、最近ではVCもありますね。MFCはついてないようですが…
APIの使い方なら、こちらのサイトも参考になります。
http://wisdom.sakura.ne.jp/system/winapi/media/mm11.html

ChuckChuck2006/03/08 08:19え? VC(++?)もあるんですか。へぇへぇ~ (ということで調べてみてWikipediaから)
http://ja.wikipedia.org/wiki/Visual_C_Plus_Plus#.E7.84.A1.E6.96.99.E7.89.88
しかしまぁとりあえずは (USB-)MIDI I/FデバイスのOpen/Close をActiveBasicから試みてみます。Excel連動でVisualBasicでも後でいいことがあるかもしれません。(すっかり忘れたが大昔に QuickBasicとかいうのを使ったことがあります)

r0r0r0r02006/03/08 16:13そうこうしているうちに、GT-3のMPUを作ってしまうわけですね?!

ChuckChuck2006/03/09 07:35えー、市販品のMPU入れ替えは難しすぎますー

トラックバック - http://emusic.g.hatena.ne.jp/Chuck/20060307