SoundType=0;//----------------------------------------------------------------------------------------------------------------------

INT Type = 1;//1ならTWM2用、そのほかならSD-80用設定

TrackName =  {"Windear"}
Copyright =  {"球場のピアニスト"} 
MetaText  =  {"親愛なる風と共に駆ける"} 


/*----------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------*/
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 = 140                //テンポ
KeyFlag+() 　　　 　//調の設定 # = +,♭= -
Key(1)

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_SRV_PLATE);　//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)}

TimeKey((78:1:0),1)

Include(delay.h)

//----------------------------------------------------------------------------------------------------------------------
TR(1) @(50) EP(127) v(80) V(127) REV(80) CHO(30) P(32) o6 q99 l1
TR(2) @(50) EP(127) v(80) V(127) REV(80) CHO(30) P(96) o6 q99 l1
//----------------------------------------------------------------------------------------------------------------------
Str AEPW1={EP.W(30,120,!1)}
Str AEPW2={EP.W(80,120,!1)}
Str AEPW3={EP.W(110,120,!2)}

Str APW1={P.W(48,0,!1)}
Str APW2={P.W(48,0,!2)}
Str APW3={P.W(80,127,!1)}
Str APW4={P.W(80,127,!2)}

Str AT1={Time(17:1:0)}
Str AT2={Time(53:1:0)}
Str AT3={Time(79:1:0)}

#1A={'gc"e""c'^'f+"a"d""d'^'gc"e""c'^'f+"a"d""d'^}
#1B={['gc"e""c'^'ad"f+""d'^'be"g+""e'^:'ad"f+""d'^]'bd+"g+""d+'^}
#1C={v+20 'be"g+"c' v-20}
#1D={['gc"e""c''ad"f+""d''be"g+""e':'ad"f+""d']'bd+"g+""d+'}
#1E={'gc"e""c'l4'ad"f+""d'r'ad"f+""d'^ l1'be"g+""e'^}
#1F={< 'e"g"c""e'^}
#1x={AEPW1 APW1 [#1A] v+5 AEPW2 #1B AT2 #1C AEPW3 APW2 [#1D] v-30 #1D v+30 AT3 #1C [#1D]#1E#1F}
#TR1={DT #1x}

#2x={AEPW1 APW3 [#1A] v+5 AEPW2 #1B AT2 #1C AEPW3 APW4 [#1D] v-30 #1D v+30 AT3 #1C [#1D]#1E#1F}
#TR2={DT #2x}
//----------------------------------------------------------------------------------------------------------------------
TR(3) @(47) EP(127) v(90) V(127) REV(100) CHO(30) o6 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str BT1={Time(39:4:0)}
Str BT2={Time(94:4:0)}

Str BPT1={P.T(127,0,!4,0,127,!4,127,0,!4,0,127,!4,127,64,!4)}

#3A={erce ^^^^ ^^^^ ^^ga g^^^ c^^^ ^^^^ cdeg g^^^ ^^ag rrag > rcde e^^^ d^^^ dc"b"a < gara}
#3B={gf+gc ^^^^ ^^^^ cdeg gf+gc ^^"gc ^^^^ "g"a"bc c^^^ ^^ga grag rbar > rcde ^^^^ f+^^^ ^^^^}
#3C={o6 l16 v(110) BPT1 rr f+`d [4`f+`da v-10] v(110) }
#3x={#3A#3B BT1 #3C BT2 #3C }
#TR3={DT #3x}
//----------------------------------------------------------------------------------------------------------------------
TR(4) @(97) EP(127) v(110) V(127) REV(100) CHO(30) o6 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str BEPT1={EP.T(0,127,!1^1^1^1^1^1^1^1^}

#4A={[64 r]}
#4B={gf+gc ^^^^ ^^^^ cdeg gf+gc ^^"gc ^^^^ "g"a"bc c^^^ ^^ga grag rbar > rcde ^^^^ f+^^^ ^^^^}
#4x={#4A BEPT1 #4B}
#TR4={DT #4x}
//----------------------------------------------------------------------------------------------------------------------
TR(5) @(46) EP(127) v(110) V(127) REV(40) CHO(90) o4 q99 l16
//----------------------------------------------------------------------------------------------------------------------
Str CT1={Time(16:1:0)}

Str CPT1={P.T(0,127,16,112,32,96,48,80)}

#5A={CPT1 v(70) [4 df+a`d > v+12] P(64)}
#5B={o6 v(127) l16 [8 e`c`g`c v-10] }
#5x={CT1 #5A  #5B}
#TR5={DT #5x}

//----------------------------------------------------------------------------------------------------------------------
TR(6) @(33) EP(127) v(100) V(127) REV(30) CHO(40) o3 q99 l16
//----------------------------------------------------------------------------------------------------------------------
Str DT1={Time(17:1:0)}


#6A={[[c^^e ^^cr r"gr"g "c^"g^][d^^f+ ^^dr r"ar"a "d^"a^ ][e^^g+ ^^er r"br"b "e^"b^]:[d^^f+ ^^dr r"ar"a "d^"a^ ]][d+^^g+ ^^d+r r"br"b "d+^"b^]}
#6B={l8 c^^d ^^e^ ^^^^ ^^^^ c^^d ^e q399 d+^ q99 l16 [rrg+r rrd+r rd+rd+ "brd+r]}
#6C={[rrer rrcr rcrc "grcr rrf+r rrdr rdrd "ardr rrg+r rrer rere "brer : rrf+r rrdr rdrd "ardr] rrg+r rrd+r rd+rd+ "brd+r}
#6D={rrf+r rrdr rdrd "ardr rrg+r rrd+r rd+rd+ "brd+r}
#6F={rrer rrcr rcrc "grcr rrf+r rrrr d^^^ ^^^^ q799 e^ q99 g+r rrer rere "brer rrg+r rrer rere "brer}
#6G={l1 "e^^^}
#6x={DT1  #6A #6A #6B v+20 [#6C]  #6C #6D [#6C]#6F#6G}
#TR6={DT #6x}

//----------------------------------------------------------------------------------------------------------------------
TR(7) @(41) EP(127) v(100) V(127) REV(40) CHO(40) o6 q99 l16
TR(8) @(49) EP(127) v(80) V(127) REV(50) CHO(40) o6 q99 l16
//----------------------------------------------------------------------------------------------------------------------
Str ET1={Time(25:1:0)}
Str ET2={Time(53:1:0)}
Str ET3={Time(79:1:0)}

Str EMW1={M.W(0,40,!2)}

#7A={egaa ^^^^ egaa ^^^^ a^ba > rrgr f+^re ^rd^ e^f+e rre^ f+err e^f+e rree l12 edc dc"b <`cba l16}
#7B={f+^^g rrg^ ^arr a^^b rrb^ ^`crr > d^e^ g^a^ a+^^^ ^^^^ ^^^^ ^^^^ b^^^ ^^^^ ^^^^ ^^^^ <}
#7C={g^f+g rrg^ f+grr c^^^ ^^^^ ^^"g"g  l12 cde def+ l16 g^rg rra^ rarr b^^^ ^^a^ rraa l12 bag agf+ l16}
#7D={g^^a rrc^ v-40 g^^a rrc^ v-20 g^^a rrc^ v+60 rrgg l12 gab ab`c l16 b^^^ ^^^^ ^bab d^^^ ^^^^ ^^^^ ^^^^}
#7E={cdee rref+ ggrr gabb rrbb `c^^b rr`c`d > l12 f+ed edc l16 d^^r rf+^^ l12 gf+e dc"b cdc "a"bc "g"a"b l16}
#7F={cdec rr v-30 cdec rr v-20 cdec v+50 rrrr cdef+ l12 ggg aaa l16 b^^^ ^^a^ ^^^^ cdef+ g^^^ ^^f+^ ^^^^ e^^^}
#7G={l16 [14r] 'c"e''d"f+' l8 'e"g'^^^ ^^^'d"f+'16'e"g'16 'f+"a'^^^ ^^^'e"g'16'f+"a'16 'g"b'^^'ac' ^^'bd'^ 'a"a'^^^ 'f+"f+'^^^ }
#7H={'g"b'^^'ac' ^^'bd'^ '`eg'^^'`df+' ^^'`cc'^ 'b"b'^^^ ^^^^ ^^^^ ^^^'g"b'16'ac'16}
#7I={'bd'^^^ ^^^'`df+'16'`eg'16 '`f+a'^^^ ^^^'`eg'16'`f+a'16 '`gb'^^'`a`c' ^^'`bb'^ > '`ee'^^^ ^^^^ }
#7J={'g"g'^^'a"a' ^^'b"b'^ 'a"a'^^^ 'f+"f+'^^^ 'g"g'^^^ ^^^^ ^^^^ ^^^^}
#7K={'g"g'^^'a"a' ^^'b"b'^ 'a"a'^^r '`dd'^^^ '`ee'^^^ ^^^^ ^^^^ ^^^^}
#7x={ET1 EMW1 #7A#7B#7C#7D#7E#7F ET2 < #7G#7H#7I#7J ET3 < #7G#7H#7I#7J#7K}
#TR7={DT #7x}

#8x={ET1 #7A#7B ET2 #7G#7H#7I#7J ET3 < #7G#7H#7I#7J#7K}
#TR8={DT #8x}
//----------------------------------------------------------------------------------------------------------------------
TR(9) @(1) EP(127) v(110) V(127) REV(30) CHO(50) o5 q99 l8
//----------------------------------------------------------------------------------------------------------------------
Str FT1={Time(49:1:0)}
Str FT2={Time(70:1:0)}


#9A={'ec"g'^^'d"a"f+' ^^'"b"g+"e'^ ^^^^ ^^^^ 'ec"g'^^'d"a"f+' r'"b"g+"e''"b"g+"d+'^ ^^^^ ^^^^ ^^^^ ^^^^}
#9B={l1 [['g"c''a"d''b"e':'a"d']'b"d+']}
#9C={l16 'gc'^^^ ^^^^ ^^^^ 'g"b''ac''b"b''`cc' > l12 'd"d''d"d''d"d' 'e"e''e"e''e"e' 'f+"f+''f+"f+''f+"f+' 'g"g''g"g''g"g'
     l16 'a"a'^^'`dd' rr'a"a'r rrrr 'ac''g"b''f+"a''e"g' 'f+"f+'^^'"b""b' rr'f+"f+'r rrrr 'f+"a''g"b''f+"f+''e"e'}
#9D={'c"e'^^'d"f+' ^^'e"g'^ rrrr rrrr 'd"d'^^'e"e' ^^'f+"f+'^ 'g"g'^^'a"a' ^^'b"b'^ l8 '`cc'^^^ ^^^^  '`dd'^^^ '`ee'^^^}
#9E={'`eg+"b'^^^ ^^^^ '`dg+"b'^^^ '`eg"b"c'^^^}
#9F={'g"c'l4'a"d'r'a"d'^ l1 'b"e'^}
#9G={l1'e"g'^}
#9x={FT1 #9A < #9B FT2 > #9C#9D << #9E #9B#9F#9G}
#TR9={FT1 #9x}
//----------------------------------------------------------------------------------------------------------------------
TR(10) @(1) EP(127) v(110) V(127) REV(40) CHO(30) q10 l8
TR(20) CH(10) v(100) q10 l8
TR(21) CH(10) v(70) q10 l16
TR(22) CH(10) v(100) q10 l16
TR(23) CH(10) v(100) q10 l16
TR(11) @(1) EP(127) v(120) V(127) REV(120) CHO(120) q10 l6
//----------------------------------------------------------------------------------------------------------------------

Str TD1={Time(15:1:0)}
Str TD2={Time(17:1:0)}
Str TD3={Time(31:1:0)}
Str TD4={Time(33:1:0)}
Str TD5={Time(48:1:0)}
Str TD6={Time(53:1:0)}
Str TD7={Time(69:1:0)}
Str TD8={Time(79:1:0)}
Str TD9={Time(96:1:0)}

$a{n40}
#D1={l8 aaaa aaaa l16 aaaa aaaa aaaa aaaa}
#D2={l16 araa arar arar aaaa aaaa aaaa aaaa aaaa}
#Dx={DT TD1 #D1 TD3 #D2}
#TR10={Rhythm{#Dx}}

$b{n35} $c{n36}
#DA1={brrb rrrr brrb rrbr}
#DA2={brrb rrbr}
#DA3={brrb rrbr brrr brbr}
#DAx={DT TD2 [8#DA1] [8#DA1] [#DA1] #DA2 [8#DA1] [4#DA1] [#DA2] [8#DA1] #DA3 #DA1}
#TR20={Rhythm{#DAx}}

$d{n42} $e{n44} $f{n46}
#DB1={derd erfr derd erfr derd erfr derd erfr}
#DB2={derd erfr derd erfr }
#DB3={derd erfr derd erfr rrrr rrrr derd erfr}
#DBx={DT TD2 [8#DB1] [8#DB1] [#DB1] #DB2 [8#DB1] [4#DB1] [#DB2] [8#DB1] #DB3 #DB1}
#TR21={Rhythm{#DBx}}

$g{n38} $h{n40}
#DC1={rrrr rrrr rrrr grrr rrrr rrrr rrrr rrrr}
#DC2={rrrr rrrr rrrr grrr}
#DC3={rrrr rrrr rrrr grrr rrrr rrrr grrg rrgr}
#DCx={DT TD2 [8#DC1] [8#DC1] [#DC1] #DC2 [8#DC1] [4#DC1] [#DC2] [8#DC1] #DC3 #DC1}
#TR22={Rhythm{#DCx}}

$i{n48} $j{n45} $k{n43}
#DD1={rrii jkrk ijkk ijkk}
#DDx={TD5 #DD1 TD7 #DD1 TD8 #DD1}
#TR23={Rhythm{#DDx}}

$s{n49} $t{n39}
#DS1={l6 [4 s^ v-25] v(120)}
#DS2={l6 [4 g^ v-25] v(120)}
#DS3={l8 rrrr hrrr}
#DS4={l8 rrrr rrsr}
#DS5={l8 rrrr rrrr rrsr rrrr}
#DSx={DT TD2 #DS1 TD4 #DS1 TD5 #DS1 TD6 #DS4 TD8 #DS4 TD9 #DS5}
#TR11={Rhythm{#DSx}}
//----------------------------------------------------------------------------------------------------------------------
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(9) |#TR9|

UseKeyShift(off)//キーを変えるとドラムの指定までずれるのでこれで防ぐ

TR(10) |#TR10| TR(20) |#TR20| TR(21) |#TR21| TR(22) |#TR22| TR(23) |#TR23|

TR(11) |#TR11|
