前略 長嶋 様 先日の、「H8用原人コッツ用プログラム」ありがとうございました。   ところで、なぜか動きませんでした。   以下に経緯を記載します。  1 AKI−H8にトランジスター等を接続して原人コッツを動かすよう   にしています。    もっとも、原人コッツは32人もいないので、4人をポートBに接続    しています。  2 MAX232の11,12Pinはカットしています。   3 「作るサウンドエレクトロニクス」の「3 MIDIとマイコン制御」で   図3-16とlist3.11及び図3-18とlist3.13は動きました。    (list3.13は MIDI in→MIDI out MIDI 2nd byte(7bit)    LED display LED bit7 toggle display です。)    list3.13ですが、ポートBの最後だけ(CN-1の23Pin)が定期的に動き   他のコッツ(CN-1の16〜22Pin)はシーケンスソフトの音符でガチャ   ガチャと動きます。    シーケンスソフトに音符を入力するたびに音符1個(音程も関係なく)でも   23Pinを除く他のコッツが複数同時に動きます。    動きはこれでいいのでしょうか。   (list3.12はA38Hのアセンブル後、エラーが確か2個位出ました。何か間違って    いるのでしょうか。)       4 上記までで、AKI−H8及び周辺回路は「異状なし」として良いですか。  5 とりあえず良いとして、先日ご回答いただいたコッツ用プログラムで試し   たのですが、残念ながら動きませんでした。(ハード側の原因と思われる。)  6 「靄夜」そのもののプログラムでも全員手を上げたままで、動きませんでした。  7 上記3のようにコッツは4人のためポートBに接続し、MIDI noteの   56〜63付近をシーケンスソフトの音符で動かそうとしたのですが、動かなく   ダメでした。(56〜63以外でも色々入力しましたがダメでした。)  8 AKI-80は24で割っていますが、このプログラムは64で割っているのでしょうか。   動くようになったらポートBのみデータが集まるように変更したいです。 9 もう一度「靄夜」を読んでみると頻繁に「MAX」と言う言葉が出てきますが、    何か関係するのでしょうか。    現在のパソコンは巷で賑わしているwindowsです。         いままでやったことを色々書きました。やり方が違っているのか或いは   初歩的勘違いしているかも知れませんが、分かりません。    (どこも悪いところが無いように思いますが..しかし、動かない。)    不具合の原因で気付いた点がありましたらご指導いただけないでしょうか。    お忙しいところ申し訳ありませんが、よろしくお願いします。               宮城県   FM   ------------------------------------------------------------------- こんにちは、長嶋です。(^_^) > 先日の、「H8用原人コッツ用プログラム」ありがとうございました。 >   ところで、なぜか動きませんでした。 >   以下に経緯を記載します。 以下、コメントします。 >  1 AKI−H8にトランジスター等を接続して原人コッツを動かすよう >   にしています。 >    もっとも、原人コッツは32人もいないので、4人をポートBに接続  >   しています。 >  2 MAX232の11,12Pinはカットしています。  ここまでまったく問題ありません。 >  3 「作るサウンドエレクトロニクス」の「3 MIDIとマイコン制御」で >   図3-16とlist3.11及び図3-18とlist3.13は動きました。 おぉぉ、これならもうMIDIは受かるしポートも 出力されているし、つまりはAKI-H8のソフトが ちゃんとダウンロードできているので、こうなれば だいぶいいセンです。(^_^) >    (list3.13は MIDI in→MIDI out MIDI 2nd byte(7bit) >    LED display LED bit7 toggle display です。) ということは(もうとっくに詳細は忘れているの ですが(^_^;))、MIDI入力をいったんAKI-H8に取り込んで 溜めて、それを再びAKI-H8から出しています。 >    list3.13ですが、ポートBの最後だけ(CN-1の23Pin)が定期的に動き >   他のコッツ(CN-1の16〜22Pin)はシーケンスソフトの音符でガチャ >   ガチャと動きます。 >    シーケンスソフトに音符を入力するたびに音符1個(音程も関係なく)でも >   23Pinを除く他のコッツが複数同時に動きます。 >    動きはこれでいいのでしょうか。 これは、MIDIメッセージのうち、最終バイトの 値をポートBの下位7ビットに出しています。 (ステータスに関わらずなので、ノートイベントでも  反応しているわけです) つまり、新しいMIDIデータが来るたびに、 16-22ピンの7ポートはそれぞれ同時にいろいろ 変化して当然です。ビットによっては変化しない ものもあります。 23ピンのビット7だけは、それとは別に、ソフトで 定期的にON-OFFを繰返すLED動作表示にしている ので、MIDIと関係なく点滅です。これも正常です。 ノートオンイベントであれば、この7ビットは velocityですので、電子ピアノとかでタッチの出る もので送ると、とても弱いタッチに限定すると、 22ピンあたりは変化がないと思います。音量と して半分以下のタッチだけにすれば、です。 >   (list3.12はA38Hのアセンブル後、エラーが確か2個位出ました。何か間違って >    いるのでしょうか。) これは不明です。程度によっては無視してもいいのですが、 僕の場合にはエラーは出ません。これは開発環境の設定に よるのでなんともいえません。ちょっと気持ち悪いですが。 >  4 上記までで、AKI−H8及び周辺回路は「異状なし」として良いですか。 ということで、エラーメッセージについて無視すると すれば、YESです。 >  5 とりあえず良いとして、先日ご回答いただいたコッツ用プログラムで試し >   たのですが、残念ながら動きませんでした。(ハード側の原因と思われる。) >  6 「靄夜」そのもののプログラムでも全員手を上げたままで、動きませんでした。 >  7 上記3のようにコッツは4人のためポートBに接続し、MIDI noteの >   56〜63付近をシーケンスソフトの音符で動かそうとしたのですが、動かなく >   ダメでした。(56〜63以外でも色々入力しましたがダメでした。) これはですね、ノートオンでは駄目です。(^_^;) 「靄夜」でもそうですし、今回のプログラムでも、 メッセージは * MIDIステータス = アフタータッチ (ポリフォニックプレッシャー) * MIDIチャンネル = 16 (status=0xAF) * ノートナンバ = 0 - 63 * データ = 0 - 127 データ = 0 の時にポートOFF 128 > データ > 1 の時にポートON と定義されています。この意味は http://nagasm.org/ASL/midi03/index.html とかで勉強して下さい。この内容についての質問は お受けしている余裕はすいませんがありません。 従って、シーケンサから送ってテストする情報は 音符では駄目です。(^_^;) シーケンサがMIDIの全ての情報を送れるという 前提となりますが、送って動くのは 「アフタータッチ (ポリフォニックプレッシャー)」 です。それもMIDIチャンネルは16に限定です。 このメッセージは、128種類のMIDI鍵盤ごとに、 鍵盤をあとからググッと押す、という圧力を 個別に規定しているものです。 「靄夜」のページ http://nagasm.org/1106/moya/index.html の下の方にずらっとあるのがその鍵盤番号と AKI-H8のポートの対応です。従って、今回はポートBです ので、 * MIDI note = 56 : AKI-H8 [PB] - bit0 * MIDI note = 57 : AKI-H8 [PB] - bit1 * MIDI note = 58 : AKI-H8 [PB] - bit2 * MIDI note = 59 : AKI-H8 [PB] - bit3 * MIDI note = 60 : AKI-H8 [PB] - bit4 * MIDI note = 61 : AKI-H8 [PB] - bit5 * MIDI note = 62 : AKI-H8 [PB] - bit6 * MIDI note = 63 : AKI-H8 [PB] - bit7 ということです。 この8ビットのうちどの4ポートを使っているか 不明ですが、対応は http://nagasm.org/ASL/mse/fig3-16.gif とは、ちょうど上下が逆順になっています。 つまり、AKI-H8の23ピンはビット7なので、 対応する「アフタータッチ (ポリフォニックプレッシャー)」 のノートは63です。 今回のソフトでは、実際のタッチのvalueは無視して データが0であるか1以上か、で見ています。 そこで、例えば以下のようになります。  ・AKI-H8の23ピン、PB7  ・MIDI16チャンネル  ・アフタータッチ (ポリフォニックプレッシャー)  ・データ=127 を送るとここがONになります。そして  ・AKI-H8の23ピン、PB7  ・MIDI16チャンネル  ・アフタータッチ (ポリフォニックプレッシャー)  ・データ=0 を送るとここがOFFになります。 他のポートも以下同文。 >  8 AKI-80は24で割っていますが、このプログラムは64で割っているのでしょうか。 >   動くようになったらポートBのみデータが集まるように変更したいです。 この質問は意味がありませんね。(^_^;) 「靄夜」のページ http://nagasm.org/1106/moya/index.html の下の方にずらっとあるのが鍵盤番号と AKI-H8のポートの対応です。 これをよく見れば、最大64ビットまで、自由に 個別に対応できます。 > 9 もう一度「靄夜」を読んでみると頻繁に「MAX」と言う言葉が出てきますが、 >    何か関係するのでしょうか。 シーケンサーでこういう特別なMIDIを別個に 送るのは面倒です。お勧めはMaxということです。 Maxについては、 http://nagasm.org/ASL/max01/index.html とかで勉強して下さい。この内容についての質問は お受けしている余裕はすいませんがありません。 ちなみにMaxはWindowsでは走りません。Maxを使う ためだけにMacを使う音楽家・専門家は世界中にたくさん います。(^_^)