1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

プチコン3号 備忘録

Last updated at Posted at 2014-12-23

プチコン3号 MMLリファレンス
プチコン3号MML用参考、プチコン2号のサウンド関係マニュアル
http://smileboom.com/special/ptcm2/co_manual/p10.php#3

プチコン3号MMLメモ
:コマンドは、:0~:15 の16ch指定可能
ポルタメントについて。
 ・L16C_Gで、
  ・発音時間:16分音符2個ぶん
  ・ポルタメントタイム:16分音符2個ぶん
  ・つまりポルタメントがかかるのは16分音符2個ぶんの間ずっと
 ・ポルタメントタイムを短くしたいなら、L16C32_G32
 ・もっとポルタメントタイムを短くしたいなら、L16C64_G32.
 ・挙動が表記に比べ複雑。詳しいことはぐぐるといいのかも
スラーとピッチベンド(をデチューンを使って実現)について
 ・例 O5C& @D32C& @D64C&
プリセットPCM音色にはどんなものがあるか
 ・MMLで@で使えるPCM音色は0~511(ユーザ音色や空を含む)
 ・128~130の3つはdrum setで、ノートナンバーごとに別PCM音色
 ・0~511とdrumそれぞれ音色旨みのわかるピッチはまちまち
デチューンコマンドについて
 ・HELPにある「1音」とは、「全音1つ」の意味、つまり200centの意味である。
 ・半音(100cent)デチューンしたいなら、+64か-64を指定する。
WAVSETAする波形について
 ・16384サンプルのバッファに256周期で波形を書いて、基準ノートナンバー69で登録した場合、
  @D-4O4C で、プリセット波形のO4Cと概ね同じピッチになる。

プチコン3号MML以外のメモ(3.02以降で未確認かも)
 SMILEボタンから起動した場合のみの仕様
  ・LOADで他プロジェクトのファイルをLOAD可能。
   例:LOAD"PRG1:WORK/AAA" ※WORKというPROJECTのAAAというファイルをSLOT1にロード。"PRG1:"のようにSLOTを明示的に指定しないとエラー。
  ・EXECで他プロジェクトのファイルをEXEC可能。
   ・LOAD同様、"PRG1:"のようにSLOTを明示的に指定しないとエラー。
   ・このとき、カレントプロジェクトは、他プロジェクトのものになる。
   ・EXECしたプログラムが終了したあとは、カレントプロジェクトは、
    実行直前のプロジェクトに戻る。
   ・EXECでSLOTを指定しているため、
    指定SLOTにプログラムがあったらそれは上書きされて消える。
    ・備考:EXECで、SLOT指定せず、SMILEボタンに登録したツールと同じプロジェクトのファイルを実行した場合、
     つまり通常SMILEボタンを使う流儀の場合は、
     内部的にはSLOT4にプログラムがロードされるため、
     SLOT0~3のプログラムは上書きされない。
  ・参考 http://d.hatena.ne.jp/eidaht/20160320/1458432429
 FILESの隠し仕様
  ・FILESの第一引数にプロジェクト名を指定できる。
   例:FILES"WORK"で、WORKというPROJECTのファイル一覧を取得できる。
     配列変数に格納して利用することも可能。
 現SLOTを知る方法
  プログラム先頭でBACKTRACE実行後にCHKCHR命令で画面に表示されたスロット番号を取得
  BACKTRACE:SLOT=CHKCHR(CSRX,CSRY-1)-48

(3.02で解決済み、備忘)ハング原因と対策
 ・BGMPLAY 128直後にBGMSET 128実行を繰り返すとハング
 ・再現コード(実行すると保存していないプログラムは消えるので、電源落としてもいい状態にしてから実行すること)> FOR I=0 TO 99999:IF I MOD 99==0 THEN ?I:ENDIF:BGMSET 128,"CDE":BGMPLAY 128:NEXT
 ・応急対策はBGMSET直後にWAIT 1を入れること。これでハングしなくなった
 ・バージョン3.02では、上記は修正された。上記コードでハングしなくなったことを確認した。上記にWAIT 1を入れる必要はなくなった。
(3.02で解決済み、備忘)VSYNCちらつきバグ対策
  VSYNC後にfor空ループ999回を実行 ※New3DSでVSYNCが想定より短時間で終了するバグ。3.02で修正済み

プチコン3号公開キー
 ソフトシンセWAVLPF:V3EN3JK1 ※Cutoff+reso、簡易オートメーション付
  DEMO SOUND: https://soundcloud.com/cat2151/wavlpf-demo-20150301
  説明書: https://miiverse.nintendo.net/posts/AYIHAAAEAAA5VHwlAmxH8Q
 簡易リズムシーケンサ開発中:S344FD
 処理落ちチェックツール(関数):N3ANEDRS
 MICオシロスコープ: QKADJ3KD ※autoGain,noiseGate付
 MML移調: BA5XE33J ※scale変更付
 SPANIMやWAVSETの10行~1画面サンプルTIPS集: PE3X3NQE
 MENU関数: T45XA3R4 ※簡易仕様。関数 MENU$() を呼ぶだけで使えます

リンク
プチコン3号 備忘録(Github.Gist版)
https://gist.github.com/cat2151/d35667ee8227919165c3
プチコン3号 備忘録(Qiita版)
http://qiita.com/cat2151/items/c289b650d28006b78f92

1
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?