 //----------------------------------------------------------------------------------------------------------------------

INT Type = 1;//1ならTWM2用、そのほかならSD-80用設定

TrackName =  {" ニブルヘイム "}
Copyright =  {" 球場のピアニスト "} 
MetaText  =  {"≡≡≡≡≡≡≡≡≡≡c⌒っﾟДﾟ)っ＜滑り込みセーフ！あれ？"} 


/*----------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------*/
System.MeasureShift(1);    //音源初期化用に発音を１小節遅らせる
IF(Type =1){ResetGS;TrackSync;}ELSE{SysEx$=f0,41,10,00,48,12,0,0,0,0,0,0,f7; Time(1:1:0); }//音源初期化
//----------------------------------------------------------------------------------------------------------------------
TimeSignature =  4,4      //4/4
Tempo = 180               //テンポ
KeyFlag+() 　　　 　//調の設定 # = +,♭= -
Key(-3)

IF(Type=1){
CuePoint={"TwmParam(64,120,2);"} //TW-MUSIC2を使うとき専用、キューポイントを指定して音色をつくるのじゃ
}ELSE{
//ここからSD-80の設定
//7bit を、4bit ずつ分ける
Function HIGH(I){ Result = (I / 16) & $F }
Function LOW(I){ Result = (I & $F) }

//REVERB TYPE
Int RT_OFF = 0;
Int RT_REVERB = 1;
Int RT_SRV_ROOM = 2;
Int RT_SRV_HALL = 3;
Int RT_SRV_PLATE = 4;
Int RT_GM2_REVERB = 5;
Function SD80ReverbType(V){
SysEx=$F0,$41,(DeviceNumber),0,$48,$12,{$10,00,$04,00,(V)},$F7;
}

Function SD80ReverbTime(V){//0~127
SysEx$=F0,41,10,00,48,12,{10,00,04,07,08,00,(HIGH(V)),(LOW(V))},F7;
}

SD80ReverbType(RT_REVERB);　//SD-80専用、ここの値を変えてリバーブのタイプを変更できる
//ここまでSD-80の設定
}



CH(11) SysEx$ = f0,41,10,42,12,{40,1a,15,02},f7;
//CH(12) SysEx$ = f0,41,10,42,12,{40,1b,15,02},f7;
//CH(13) SysEx$ = f0,41,10,42,12,{40,1c,15,02},f7;

Str DT={Time(1:1:0)}


//----------------------------------------------------------------------------------------------------------------------
TR(1) @(51) EP(127) v(50) V(127) REV(40) P(72) CHO(30) o5 q99 l1
TR(2) @(51) EP(127) v(50) V(127) REV(50) P(34) CHO(30) o3 q99 l1
//----------------------------------------------------------------------------------------------------------------------
Str AEPT1={EP.T(20,127,!1^1^1^1)}

Str AT1={Time(81:1:0)}

//#ODAI1={「レファラ」ー「↓シ↑レファ」ー「ドミソ」ー「ファラ`ド」ー }
//#ODAI2={「ラ`ド`ミ」ー「シ`レ`ファ」ー「レファラ」ー「ファラ`ド」ー}
#1A={'a`c`e'^^^ 'b`d`f'^^^ 'dfa'^^^ 'fa`c'^'ga`d'^  }
#1B={'a`c`e'^^^ 'b`d`f'^^^ 'dfa'^^^ 'fa`c'^'ga`d''a`c`e`g'}
#1C={'dfa'^^^ '"bdf'^^^ 'ceg'^^^ 'fa`c'^^^ }
#1D={'dfa'^^^ '"bdf'^^^ 'ceg'^^^ 'fa`c'^'dg`c'^ }
#1x={AEPT1 #1A #1B #1A#1B v+20 [#1C#1D]}
#TR1={DT #1x}

#2A={a^^^ b^^^ d^^^ f^^a a^^^ b^^^ d^^^ f^^a }
#2B={d^^^ d^^^ c^^^ c^^^ }
#2C={d^^^ d^^^ c^^^ c^d^ }
#2x={AEPT1 #2A #2A AT1 #2C v+40 #2B#2C}
#TR2={DT #2x}
//----------------------------------------------------------------------------------------------------------------------
TR(3) @(51) EP(127) v(30) V(127) P(109) REV(127) CHO(30) o7 q99 l1
TR(4) @(51) EP(127) v(30) V(127) P(44) REV(127) CHO(30) o7 q99 l1
//----------------------------------------------------------------------------------------------------------------------
Str BT1={Time(17:1:0)}
Str BT2={Time(81:1:0)}

#3A={e^^^ f^^^ 'fa'^^^ a^^^}
#3B={a^^^ f^^^ g^^^ `c^^^}
#3C={a^^^ f^^^ g^^^ `c^^^}
#3x={BT1 #3A  [#3A] BT2 #3C #3B #3C}
#TR3={DT #3x}

#4A={c^^^ d^^^ d^^^ f^g^}
#4B={f^^^ d^^^ e^^^ a^^^}
#4C={f^^^ d^^^ e^^^ a^g^}
#4x={BT1 #4A  [#4A] BT2 #4C #4B #4C}
#TR4={DT #4x}

//----------------------------------------------------------------------------------------------------------------------
TR(5) @(82) EP(127) v(90) V(127) P(70) REV(80) CHO(30) o6 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str CT1={Time(17:1:0)}

Str RM={Random(127)}

#5A={[4 c"ace r"ace  v-22 ]v(90) [4 d"bdf r"bdf v-22] v(90) [4 fdfa rdfa v-22] v(90) [afa`cr fa`c v-22] aga`d rga`d v-22 a`c`e`g a`c`e`g v(90)}
#5B={[4 c"ace r"ace  v-22 ]v(90) [4 d"bdf r"bdf v-22] v(90) [4 fdfa rdfa v-22] v(90) [afa`cr fa`c v-22] [aga`d rga`d v-22 ]v(90)}
#5C={[4 c"ace r"ace  v-22 ]v(90) [4 d"bdf r"bdf v-22] v(90) [4 fdfa rdfa v-22] v(90) [afa`cr fa`c v-22] aga`d rga`d v-22 a`c`e`g a`c`e`g v(90)}
#5D={[4 fdfa rdfa  v-22 ]v(90) [4 d"bdf r"bdf v-22] v(90) [4 eceg rceg v-22] v(90) [4 afa`cr fa`c v-22] v(90)}
#5x={CT1 #5A V(90)#5B#5C [4 #5D]}
#TR5={DT #5x}
//----------------------------------------------------------------------------------------------------------------------
TR(6) @(38) EP(127) v(120) V(127) P(56) REV(80) CHO(30) o3 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str DT1={Time(33:1:0)}
Str DT2={Time(97:1:0)}
#6A={aara araa rrrr rrrr rrrr rraa aara araa bbrb brbb rrrr rrrr rrrr rrbb bbrb brbb ddrd drdd rrrr rrrr rrrr rrdd ddrd drdd 
     ffrf frff rrrr rrrr < rrrr rraa aara araa >}
#6B={ddrd drdd rrrr rrrr rrrr rrdd ddrd drdd < bbrb brbb rrrr rrrr rrrr rrbb bbrb brbb > 
     ccrc crcc rrrr rrrr rrrr rrcc ccrc crcc < ffrf frff rrrr rrrr rrrr rrff ffrf frff >}
#6C={ddrd drdd rrrr rrrr rrrr rrdd ddrd drdd < bbrb brbb rrrr rrrr rrrr rrbb bbrb brbb > 
     ccrc crcc rrrr rrrr rrrr rrcc ccrc crcc < ffrf frff rrrr rrrr rrrr rrdd ddrd drdd >}
#6x={DT1 [#6A] DT2  #6B#6C}
#TR6={DT #6x}
//----------------------------------------------------------------------------------------------------------------------
TR(7) @(3) EP(127) v(110) V(127) P(79) REV(80) CHO(30) p%(-400) NRPN(96,0,127) o6 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str ET1={Time(33:1:0)}
Str ET2={Time(81:1:0)}

#7A={efga rcrc "g"f"g"a "e"f"g"e rcde fedc "g"a"gr "a"e"f"e rcde fgab rrr`c efed `c`cr`d `dr`e`e eefg agfe}
#7B={rgag fedc "g"a"g"d cdef 'eg'fef 'gc'a'bf''`ca' r'`da''`dg'r '`e`c''`eb'r'`fc' rrrc gced crrr '`cg'^^^ '`da''`ca'r'be' r'g`c'r'gb' rb`cb abag}
#7C={f^^^ ^^^^ ^^^^ ^fga d^^^ ^^^^ agra rgrf e^^^ ^^^^ ^^^^ ^efg 'af'gr'ad' r'bg'r'`cg' r`c`d`c 'bg'`c'bf''ac' 
     'gc'^^^ ^^^^ ^^^^ ^^^^ '`cg'^^^ ^^^^ ^^^^ ^'`ca''`da''`e`c' '`f`c'^^'`g`c' r'`a`d'r'`g`d' ^^^^ ^^^^ '`g`cg'^^^ ^^^^ '`f`c'^^^ ^^^^}
#7D={'gc'^^^ cdef gab`c r`dr`c '`da'^^'`e`c' rr'`f`d''`e`c' ^`e`f`e '`da''`e`c''`db''`cg' 'bg'^^'fd' rrrr 'ec''ec'rr cagf 'gc'^^'c"g' rrrr rcde gfed 
     'ec'^^'fc' rrrr rr'`cg'^ ^^^^ '`e`c'^^'`f`c' rr'`g`e`c'^ ^^^r '`a`f`d'^^^ '`g`e'efg ab'`ca''`db''`e`cg''`f`d`a' r'`g`c''`f`c''`gb' '`f`d'r'`a`f`d'^^^ ^^^^ 
     '`b`g`e'^^^ '`d`g``c'^^^ }
#7E={'``d`a`f`d'^^^ ^^^^ ^^^^ ^^^^ ^^^^ ^^^^ ^^^^ ^^^^ v-20 '``c`a`f`c'^^^^ ^^^^ ^^^^ ^^^^ ^^^^ ^^^^ ^^^^ ^^^^}
#7x={ET1 #7A#7B ET2 #7C #7D #7E}
#TR7={DT #7x}
//----------------------------------------------------------------------------------------------------------------------
TR(8) @(49) EP(127) v(110) V(127) P(79) REV(80) CHO(30) p%(-400) NRPN(96,0,127) o5 q99 l4
//----------------------------------------------------------------------------------------------------------------------
Str FT1={Time(49:1:0)}
Str FT2={Time(97:1:0)}


#8A={e^^^ ^^f^ g^^^ `c^^^ `d^^^ ^^^^ `e^^^ `f^^^ `g^^^ ^^^^ `a^^^ g^^^ a^^^ `e^^^ `d^^^ `c^^^ }
#8x={FT1 #8A#8B FT2 l8 >  #7D#7E}
#TR8={DT #8x}
//----------------------------------------------------------------------------------------------------------------------
TR(15) @(9) EP(90) v(65) V(127) REV(80) CHO(30) o8 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str RPN1={P.N(32,127,0,64,96)}

#15A={[8 ec"a"e v-5] v(45) [8 fd"b"f v-5] v(45) [8 afd"a v-5] v(45) [4 `cafc v-5][4 `dagd v-5] v(45)}
#15B={[8 ec"a"e v-5] v(45) [8 fd"b"f v-5] v(45) [8 afd"a v-5] v(45) [4 `cafc v-5][ `dagd v-5][gec"a v-5] v(45)}
#15C={[8 afd"a v-5] v(45) [8 fd"b"f v-5] v(45) [8 gec"g v-5] v(45) [8 `cafc v-5]v(45)}
#15D={afd"a  <[3"adfa >]}
#15x={RPN1 [#15A#15B] [4 #15C] #15D}
#TR15={DT #15x}
//----------------------------------------------------------------------------------------------------------------------
TR(16) @(123) EP(127) v(127) V(127) REV(127) CHO(30) o5 q99 l1
//----------------------------------------------------------------------------------------------------------------------
Str ST1={Time(31:1:0)}
Str ST2={Time(96:1:0)}

Str SEPT1={EP.T(30,127,!1^1)}

#16A={SEPT1 'cegb'^^^ }
#16x={ST1 #16A ST2 #16A}
#TR16={#16x}
//----------------------------------------------------------------------------------------------------------------------
TR(10) @(17) EP(100) v(100) V(100) REV(30) CHO(30) l8
TR(20) CH(10) v(100) l8
TR(21) CH(10) v(100) l8
TR(22) CH(10) v(120) l8
//----------------------------------------------------------------------------------------------------------------------
Str TD1={Time(32:1:0)}
Str TD2={Time(48:1:0)}
Str TD3={Time(97:1:0)}
Str TD4={Time(96:1:0)}

$a{n42} $b{n44} $c{n46}

#D1={[4 abab abab abab crrr abab abab abab cabc ]}
#Dx={AEPT1 [#D1] [6 #D1]}
#TR10={DT Rhythm{#Dx}}

$e{n35} $f{n36}
#DA1={rrfe ffef}
#DA2={[8 frrf errr frfr errr]}
#DA3={[8 frre frrr frfe fref]}
#DAx={TD1 #DA1 [#DA2] [4 #DA3]}
#TR20={DT Rhythm{#DAx}}

$g{n38} $h{n40}
#DB1={rrrr ghhg}
#DB2={[4 rrrr hrrr rrrr grrr rrrr hrrr rrrr ghhg]}
#DBx={TD1 #DB1 [#DB2] TD3 [#DB2]}
#TR21={DT Rhythm{#DBx}}

$i{n50} $j{n47} $k{n43} 
#DC1={rrrr rijk}
#DC2={rrkk iijj}
#DCx={TD1 #DC1 TD2 #DC2 TD4 #DC2}
#TR22={DT Rhythm{#DCx}}
//----------------------------------------------------------------------------------------------------------------------
TR(1) |#TR1| TR(2) |#TR2|

TR(3) |#TR3| TR(4) |#TR4|

TR(5) |#TR5|

TR(6) |#TR6|

TR(7) |#TR7|

TR(8) |#TR8|

TR(15) |#TR15|

TR(16) |#TR16|

UseKeyShift(off)//キーを変えるとドラムの指定までずれるのでこれで防ぐ

TR(10) |#TR10| TR(20) |#TR20| TR(21) |#TR21| TR(22) |#TR22|
