HuSICのポルタメント仕様

HuSICのポルタメント仕様。

c_gとすると、
c_gをcの音長で、cからgに近い音まで変化させます。
gの音長は無視されます。

l4 c_g&gでは、コンパイラによって次のように分離されます。

・ポルタメントコマンド:次の音符のピッチを発音時から変化させます
・4分音符 c
・スラーコマンド:次の音符のキーオンをスキップします
・4分音符 g
スポンサーサイト

YM2151のタイマー割り込みとNRTDRVのテンポ設定

■YM2151(OPM)のTimerA、TimerB割り込み

YM2151アプリケーションマニュアル(の断片)より
http://www.msxarchive.nl/pub/msx/docs/datasheets/ym2151synthesis.pdf

Ta(ms) = 64 * (1024-CLKA) / MCLK(kHz)
Tb(ms) = 1024 * (256-CLKB) / MCLK(kHz)

OPMが4MHz駆動だった場合、
Ta = 64 * (1024 - A) / 4000
Ta = 1024 * (256 - B) / 4000
となり、

最小割り込み時間は、
TimerA = 64 / 4000 = 0.016(ms) = 16(us)
TimerB = 1024 / 4000 = 0.256(ms) = 256(us)
となります。

■NRTDRVのテンポ

X1用FM音源ボードCZ8BS1は、x1center様の回路図によると、
・YM2151のIRQは未接続
・スロットの割り込み端子にはCTCのIRQ出力が接続
となっています。

NRTDRVのテンポ最小割り込みはCTC0とCTC3の連動によって得られており、
設定は次の通りでです。

((CTC0定数) * 64us) * (CTC3定数)

最小割り込み時間は、
CTC3 = (1 * 64us) * 1 = 64(us)となります。

少し詳しくは、
http://clogging.blog57.fc2.com/blog-entry-202.html
にて。

AYB01ノイズ対策

ayb01_noise.png

この部分がノイズ源でした。
高インピーダンスなオーディオ信号がデータバスの近くを通るので、
データ変化がオーディオ信号にもノイズとして出てしまいました。

ayb01_fig.png

対策としては、該当のパターンを通らずにコンデンサまで通る道をつくります。
具体的には、R16とR19、C22を取り外して、R16、R19のパターンの○の側(赤い線参照)より、
撚り線などでC22の付近までジャンパを作ります。C22の近くで、元のR16とR19の抵抗を
それぞれのジャンパにつけ、抵抗の先同士を接続します。
C22は、マイナス極はパターンに接続、プラス極を浮かせて先ほどの抵抗先と接続します。

抵抗をC22の近くにしたのは高いインピーダンスの信号をできるだけ短くするためです。

sch_jump.png

抽象的な回路図はこのような感じになります。

NBCTRLV1,AYC01共通ファームウェア / LimeWrite ver 1.0

NBCTRLV1, AYC01共通ファームウェア NLGPLAY ver 1.20

LW01.png


■LimeWrite ver 1.0
LimeWriteはmbedなどで生成されるbinファイルをLPC1114FN28などに書き込むための
Windows用ツールです。(HSPで書かれています)

既知の不具合として、ファイル選択ダイアログ後、書き込みがうまくいかないというものがありまして、
おそらくHSPかWindowsかのどちらかのバグだと思われます。

回避方法としては、ファイル選択後にLimeWriteを1度再起動して書き込むか、
LimeWriteにドラッグアンドドロップしてファイルを選択するという方法があります。

https://www.dropbox.com/s/etqst9nrxquxw8o/limewrite151011.zip?dl=0

■NLGPLAY ver 1.20

NLGPLAYはNBCTRLV1やAYC01用のファームウェアです。

・タイトル表示時にNEXTボタンでメニューモードに移行

 メニューにはファイル選択モード、1層までのディレクトリ選択モード、プレイリストモードなどがあります。

・PLAYボタンで停止時にはファイル選択モードに移行するようにした。

 ファイル選択モードではNEXT/PREVで選択、PLAYボタンで決定です。


■音源ボード側のジャンパ設定
AYB01では、8x2bit、A0はSFです。(正面から見て両方を左側にする)
NBV3ではWRとA0をそれぞれSRの方にします。(正面から見て両方を左側にする)

■書き換え方法
1. 下記URLよりUSBシリアルケーブルのドライバをインストールする
http://www.ftdichip.com/Drivers/VCP.htm
(Windowsにより自動でインストールされる場合は不要)

2. USBシリアルとPCを接続し、認識させておく

2. RESETボタンを押しながらPLAY/ISPボタンを押す
3. RESETボタンのみを離す
4. 書き込みソフトウェアで書き込む

https://www.dropbox.com/s/tdyxmf8zwa5l8l2/nlgplay_LPC1114_20151009.bin?dl=0


■NLGPLAYフロー図
nlg_flow.png

謎メモ

./configure --prefix="$(pwd)/opt/wine" CC="gcc -mmacosx-version-min=10.6" CXX="g++ -mmacosx-version-min=10.6"

昔のメモ。うーむ、これで通ったのかなあ…。
今は中身がclangだから通らないとかありそう…。

プロフィール

Author:BouKiCHi
ABOUT ME
MAIL:alf_byncyou at hotmail.com

WEB:http://clogging.web.fc2.com/
TWITTER:@bkc_alf

月別アーカイブ

FC2カウンター

ブロとも申請フォーム

ブログ内検索