プチコンまとめWiki (初代/mkII)

投稿プログラム : マビノギ用MMLをプチコン用に変換

2013年2月10日投稿 / 投稿者 : いったん / タグ : 投稿プログラム ツール QRコード mkII専用 MML

概要

最近知ったのですがmml はオンラインゲーム「mabinogi」においても使われているそうです。
が、<>の記号が逆だったりVが1〜15だったりチャンネル指定が「,」だったりしてそのままおちおちコピペすると直すのに時間がかかります。

いやほんとにmml は方言が多いですね。

マビノギのMMLはプチコンと文法が違うのでこのプログラムではそれを直します。
作者はマビノギについてはmml しか知らず、その上マビノギはやっていないのでご了承ください。

プログラム名の先端に「ITNと付けてみました」(他の方と区別するため)

仕様

調べてみたら修正しきれていない所ありました。まあそこは手作業で!

実装済み

  • ベロシティ修正
  • オクターブ上げ下げの修正
  • パート分け
  • 小文字修正

未実装(実装予定ではない。)

  • {} (和音)

使い方

  1. まずマビノギ用のMMLを何らかの方法でデータ文にして保存します。(数行に分けてもおk)
  2. データ文の末尾にはDATA 0を追加しておいてください。
  3. このプログラム「ITNMB」を読み込み、その後データ文をAPPENDします。
  4. プログラムを実行し、その後指示に従いファンクションキーでプログラム末尾に書き込みます。
  5. 必要であれば最初の数行の再生プログラムを使うと良いでしょう。

QR コード

プチコンmkII 向けの QR コードです。
この量で1枚に収まるという不思議。

PRG:ITNMB
qr0.PNG

プログラムリスト

  1. ’mabinogi mml →              
  2. ’   petitcomputer mml        
  3. ’                ヘンカン ツ−ル    
  4. ’                    by ittan
  5. ’−−−BGMサイセイヨウ テンフ゜レ−ト−−−
  6. ’BGMSETD 224,@BGM
  7. ’BGMPLAY 0,224
  8. ’ACLS
  9. ’LOCATE 0,0
  10. ’?”mml サイセイチュウ。 ホ゛タンヲオスト トマリマス。”
  11. ’FOR I=0 TO 1
  12. ’ CNT=CNT+1 AND 31
  13. ’ FOR _IF=1 TO CNT==0
  14. ’ LOCATE X,Y:?CHR$(0);
  15. ’ X=RND(32):Y=RND(23)+1
  16. ’ LOCATE X,Y:?”♪”;
  17. ’ NEXT _IF
  18. ’ I=BTRIG() AND 1023
  19. ’ VSYNC 1
  20. ’NEXT I
  21. ’BGMSTOP 0,2
  22. ’END
  23. ’−−−−−−−−−−−−−−−−−−−−−−−
  24. ’STEP1
  25. ’APPEND”FILENAME”
  26. ’STEP2
  27. ’サイコ゛ニ DATA 0
  28. ’STEP3
  29. ’RUN & PAST
  30. CLS
  31. ?”マヒ゛ノキ゛ ヨウ MMLヘンカン ツ−ルv2.0”
  32. IF LF THEN @KEY
  33. CLEAR
  34. DIM A$(100)
  35. RESTORE @MML
  36. FOR I=0 TO 99
  37. READ A$(I)
  38. IF A$(I)==”0” THEN X=I:I=99
  39. NEXT
  40. O=1
  41. SFLG=0
  42. IF INSTR(A$(0),”MML@”)==0 THEN A$(0)=RIGHT$(A$(0),LEN(A$(0))−4)
  43. IF INSTR(A$(0),”:0”)==−1 THEN A$(0)=”:0”+A$(0)
  44. FOR Y=0 TO X−1
  45.  FOR I=0 TO LEN(A$(Y))−1
  46.  IX=−1
  47.  @LP
  48.  IX=IX+1
  49.  B$=MID$(A$(Y),I+IX,1)
  50.  S$=S$+B$
  51.  IF S$>=”a” AND S$<=”z” THEN S$=CHR$(ASC(S$)−32)
  52.  IF S$==”<” THEN S$=”>” ELSE IF S$==”>” THEN S$=”<”
  53.  IF S$==”,” THEN S$=CHR$(13)+”DATA”+CHR$(34)+”:”+STR$(O):O=O+1
  54.  IF S$==”;” THEN S$=CHR$(0)
  55.  IF SFLG AND B$<=”9” AND B$>=”0” THEN GOTO@LP
  56.  IF SFLG THEN S$=”V”+STR$(VAL(S$)*8)+B$
  57.  IF B$==”V” OR B$==”v” THEN SFLG=1:S$=””:GOTO@LP
  58.  A$(Y)=SUBST$(A$(Y),I,1+IX,S$)
  59.  SFLG=0
  60.  S$=””
  61.  NEXT
  62. LOCATE 0,CSRY−1
  63. ?Y/(X−1)*100”%”+CHR$(0)*5
  64. NEXT
  65. LF=TRUE
  66. U=0
  67. ?”ヘンカンシュウリョウシマシタ。
  68. ?”モウイチト゛RUN シテ クタ゛サイ。
  69. ENDF=FALSE
  70. FOR I=0 TO X
  71. K$=”DATA”+CHR$(34)+A$(I)+CHR$(13)
  72. IF A$(I)==”0” THEN K$=”DATA ”+A$(I)+CHR$(13)
  73. IF I==0 THEN K$=”@BGM”+CHR$(13)*2+K$
  74. A$(I)=K$
  75. NEXT
  76. END
  77. @KEY
  78. FOR I=0 TO 4
  79. K$=””
  80.  FOR _DO=0 TO 1
  81.  K$=K$+A$(U)
  82.  U=U+1
  83.  ENDF=A$(U)==””
  84.  _DO=(LEN(K$)+LEN(A$(U)))>256 OR ENDF
  85.  NEXT
  86.  KEY I+1,K$
  87. NEXT
  88. IF ENDF THEN LF=0:?”サイコ゛ノ テ゛−タ テ゛ス。” ELSE ?”FONC 1―5ヲ ニュウリョクシテ モウイチト゛RUN”
  89. END
  90. @MML

CHECKER FLAG (ひとことコメント)

この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)

  • : おお!おせっかいかもしれませんがmidiファイル→マビノギ (2013/02/10 (日) 23:22:48)
  • 名無しさん : これはいいね (2013/02/11 (月) 00:30:17)
  • いったん : ↑↑javaもってないので私は無理ですね。でもmidiをmmlに変換するというのはすごいですね。 (2013/02/11 (月) 09:21:38)
  • 名無しさん : 変換した後、再生プログラムの使い方が分からない>< (2013/02/12 (火) 02:43:39)
  • いったん : プログラム本文に変換したmmlを入れたあと、「`------」で囲ってあるところのコメントアウトをはずし(一文字目を消す)てください。その状態で起動するとmmlが流れます。それと変換プログラムはもう要らないので消してもらっても結構です。保存する時は別名で保存してくださいね。 (2013/02/12 (火) 18:44:20)
  • Citrine : 凄い! (2013/02/12 (火) 20:42:39)
  • 名無しさん : こういうのを求めてました!! ありがとうございます。読み込みさせていただきます。 (2013/02/22 (金) 15:18:08)
  • いったん : ありがとうございます。マビノギはけっこう普及しているのでmmlを公開している人も多いですよね。 (2013/02/22 (金) 17:55:03)
  • yuy@ : ↑×10パソゲー用素材をプチコン用に変換するときには使えそうですね。ツーステップですが。 (2013/04/14 (日) 09:45:55)
  • えい : 3号用も出して‐‐ (2016/03/25 (金) 16:50:02)
  • 天郷思音(あろまモード) : 和音非対応だったのである… (2016/05/15 (日) 11:38:05)

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.028 秒 | このページの最終更新 : 2016/05/15 (日) 11:38:05 (1300d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30