左側のノブとかスライダーが、セット切り替え時に物理インタフェースの位置とは独立して、既定値の位置で点灯する。ノブやスライダーを規定値に移動するまではインタフェースには反応せず、既定値に一致したらインタフェースと連動して点灯位置と実際のパラメータが変化するようになる。ハイエンド・コンソールの可動式インタフェースには勝てないけど、これはわりと便利かつ安心。うっかり触って変なパラメータになった状態で気付かず上書き保存する心配から解放される。バンド2017年3月5日日曜日SoundCortexについてGitHubで公開している音源チッププロジェクトSoundCortexについて、Qiita等で公開されている情報のリンクを集めてみました。2017/03/05時点で投稿した内容とぐぐった結果のまとめになります。Pi、PCからの具体的な利用例。I2Cで制御できるSCC+互換チップSCC音源部について利用方法の説明、SCC+レジスタについての概要説明など。80円PSGをWindowsから鳴らしてみるWindowsから利用する具体的な方法を紹介。実際にlibkssにパッチを当ててKSSファイルをチップから再生する例を紹介しています。ユーザによる記事FreeBSD+mrubyでサウンドプログラミングyamori813さんによる記事。FreeBSDと言っていますが、謎のボード上から鳴らしているようです。UNOで利用する際の具体的な記事。Arduino用のライブラリも作成されているようですので、Arduinoから利用してみたいという方には助けになるかと思います。I2Cはプロトコルの性質上、エラーが起きたときにバスハングしやすいのが難点です。通信が不安定だという方は(2)で書かれているように電圧やコンデンサなど、回路的な面をチェックすると改善されるかもしれません。泰介さん、IchigoJamに繋げる実験をしたようです。オリジナルのSoundCortexはI2Cのデバッグで詰まった時にデバッガを使いたくてSWD経由で開発できるようポート配置を変更したのですが、福野さんはシリアルで開発しやすいようにポート配置を再変更したforkを公開されています。書き込み環境としてはシリアルを利用している人の方が多いと思いますので参考になるかと思います。本家でも配置をビルド時に指定できるようにした方が良いかも。IchigoJamみたいな開発環境から使うのはターゲットとして一番面白いと思います。Piだと自分でサウンド出力を持ってるので実はあまり嬉しくない。自作の電子工作に直接組み込めればそれが一番美味しいんですが、それはそれで敷居が高いですから。チップの入手についてImpactDrillさんが(1)の記事でも報告していますが、一部店舗でLPC810が大幅に値上げされています。卸しの段階でキャンペーン価格が終了した等の可能性があり、今後ほかの店舗でも在庫がなくなり次第値上げされる事も考えられます。現時点(2017/03/05)ではマルツパーツが75円を維持していてお勧めです。仮に安く入手できるお店がなくなってしまったら、別のチップでの対応を考えたいと思います。M系で適当なのがあれば良いのですが。大した規模でもないのでMIPSやAVRに移動するのも辞さない覚悟で。悪友イモリに誘われてマイコン・インフィニット☆PRO-68Kにイモリプロダクション名義で参加します。(事前予約制・締切りました)※第一部から通しで入場できます。展示はイモリと僕とで絶賛準備中なわけですが、ひとまず僕の方から出す予定の物を紹介したいと思います。AVRで動作するCP/Mだいぶ古いネタで恐縮ですが、2009年から2010年にかけて制作したATMEGA88上で動作するCP/Mエミュレータです。エレキジャック・フォーラムで発表させて頂き、それなりに好評だったようです。当時、FPGAによるレトロPCの再現が流行っていたわけですが、本業が論理設計だった私は、敢えてマイコン1つでCP/M互換機を再現するという暴挙に出ました。スライドのセンスが7年間変わっていなくてショックです。IIをLPC1114ワンチップで実装したもの。こっちはもっと最近の制作です。IIはシリアルコンソールで動作するようなものではないのですが、VRAMの動きをトレースしつつ、シリアル端末情報に変換しています。画面スクロールとかの検出が大変だった。IIのI/OにLPC1114のGPIOをマップしてあげているので、BASICからのPOKE命令でLチカできます。4KBしかRAMがない中で、本来それより大きなRAMを必要とするBASICを動かすには、結構な黒魔術が必要でした。雑誌の付録になっていたMARY-MB基板を使った動画もあります。AVRで動作するMZ-80KCP/Mを作った後に、次はビデオ出力込みで何か作れないかな、という事で制作。4個のAVRを使ったヘテロマルチコア構成。ビデオ出力はATMEGA328が担当。RAMの大部分をVRAMとして使いつつ、クロック数えながらビデオ信号を生成しています。Z80エミュレーションはATMEGA644上で行っており、必要に応じてVRAMへの書き込みをフォワードするわけですが、書き込み可能な期間がVSYNCの間だけに限られているため、ATMEGA328との間にバッファとしてATTINY2313を挟んでいます。このチップはサウンドエミュレーションも兼任しています。キーボード代わりのファミコンコントローラ制御に別途ATTINY2313を1つ使っています。これらのチップは共有バスを通じて通信します。USARTベースの独自仕様。80円で再現したPSG+SCC音源Qiitaで何回か記事を書いていますが、(当時)80円のLPC810というARMを使ったPSG+SCC音源モドキです。I2Cで制御できるのがポイント。Pi上で動作する魔改造MSXエミュレータを通しての演奏デモを予定しています。写真のようにSDスナッチャーのオープニングを流す予定。2を演奏するデモもあります。今回このファームウェアを焼いたLPC810を持ち込み、実費+α(というか、送料考えると赤字)の100円で配布しようかなぁ、と思っています。実際に遊んでくれるユーザーを増やしたいので。10個くらいですかね。X68k用ゲームをHTML5でHD化X68k用のシューティングゲーム、SION2を最新の技術を駆使してウェブ上で動くようにしてみました。ハイレゾ化やステレオ表示といった謎の拡張が施されています。実際に遊んでもらう方が早いかも。bit.ly/sion2で遊べます。黒魔術の詳細については以下のスライドで説明しています。電子工作2017年2月11日土曜日Rolandのシンセの電源を買い直した先日、セッションのためスタジオに入ったら自分のシンセの電源が入らない。スタジオにはRolandのシンセを使っているメンバー多数(というか、最近はほぼ全員Roland。頑張れYAMAHA、KORG)。いう事で、その場は他のメンバーの電源を借りて事なきを得ました。いう事で、その後保守部品の電源を購入したのでメモ。Storeに行くと保守パーツに電源コード/アダプターというコーナーがあり、その中に「ACアダプター」と「ACコード」があります。ACコードはアダプタから出ているコンセントに刺す側のケーブル。この部分はプレステの電源ケーブルとかと同じ標準品ですね。ACアダプターがフルセットの電源アダプターで機種ごとに違って2000円〜7000円とお値段に幅もあり、お安くもない。soundhouseで調べちゃうんですがPSB-100ってやつが、だいたいの人が使ってるようなシンセ一般に使えるやつでした。対応機種一覧があるので念のため確認を。今日現在、Rolandでは3,240円、soundhouseでは2,408円。こいつを購入してAC-DC部を古いのと比較した写真がこれ。僕の機種は古いので対応品と言っても世代が違う。新しいやつは一回り小さくなって、LEDが追加されてました。このLEDなんだけど、もしかしたら故障時の判定に役立つのかね。今回僕は古いほうだったので全部買い直したわけですが、もし新しいタイプだったらACコード部分の断線についてはLEDが点くかどうかで判断できるわけですね。LED点かなければACケーブルかな、と。それ以外の本体含めた部分の故障の心配はぐっと減ります。ACコードだけで売っている事を考えると、ACコード部分の断線は意外と多いのかな。実際、僕の左のアダプタも試しにACコードを差し替えたら動いてました。ケーブル的にはAC-DCからシンセ本体に伸びてるDC側の方がずっと長いので、ACコード側が断線し易いってのは不思議ですけどね。次回は断線しても400円くらいで直るのかな。