【mkII 専用】 2012年3月25日 公開
これはMML演奏プログラム「プチコンMML」に「棒歌ロイドOSP2」の機能を追加したものです。プチコンMMLでの演奏に合わせて自動的に歌ってくれます。
CLS M$="T120L999>CE<G4E4E2>FG<F4D4D2>CE<C4D4E4F4>G<G4G4G2 K$="チョ:ウ:チョ:チョ:ウ:チョ:ナ:ノ:ハ:ニ:ト:マ:レ: GOSUB @MML M$="T120L999>CE<G4E4E4E4>FG<F4D4D4D4>CE<C4E4G4G4>G<E4E4E2 K$="ナ:ノ:ハ:ニ:ア:キ:タ:ラ:サ:ク:ラ:ニ:ト:マ:レ: GOSUB @MML END @MML Q=LEN (M$)-1:M=0:N=22:V=127:F=1 A$="09110002040507":T=120:O=2 VSYNC 0:X=0:FOR I=0TO Q A=ASC(MID$ (M$,I,1)) M=M+(A==43)+(A==35)-(A==45) O=O+(A==60)-(A==62):A=A-65 IF A>=0 AND A<7 THEN GOSUB @S IF A==-19THEN F=1.5 IF A==-1 THEN GOSUB @N IF A==11 THEN GOSUB @L IF A==14 THEN GOSUB @O IF A==17 THEN GOSUB @R IF A==19 THEN GOSUB @T IF A==21 THEN GOSUB @V NEXT:RETURN @S GOSUB @P B=VAL (MID$ (A$,A*2,2)) R=L:IF P THEN R=P Z=O*12+M+B-24:M=0 Y=R/F:IF Y<999THEN GOSUB @OSP @BP BEEP N,341.3*Z,V GOTO @W @L GOSUB @P:L=P:RETURN RETURN @N GOSUB @P:N=P:RETURN @O GOSUB @P:O=P:RETURN @R GOSUB @P R=L:IF P THEN R=P GOTO @W @T GOSUB @P:T=P:RETURN @V GOSUB @P:V=P:RETURN @P P=VAL (MID$ (M$,I+1,Q-I)) RETURN @W VSYNC 14400/R/T*F:F=1:RETURN @OSP K=LEN(K$) W=INSTR(RIGHT$(K$,K-X),":") N$=MID$(K$,X,W)+"-"*(16/Y) E=185000/T/Y/(LEN(N$)-4/Y) T$="@T"+STR$(0OR E)+"@E16@N" TALK T$+STR$(Z*58+1447)+N$ ?N$:X=X+W+1:RETURN |
変数T(テンポ) | その曲のテンポ |
変数X(歌詞データの位置) | その歌詞データの最初から歌う場合はOSPを呼び出す前にX=0<とする |
変数Y(音長) | 一般的なMMLの音長指定に準ずる |
変数Z(音高) | 「低いド(C3)が0」で半音上がるごとに1大きくなる。 |