MetaText  ={"                                                  '2分 00秒 - `16 1/2 update'"} 
TrackName ={"prologue. - ver.4"}
Copyright ={"庚申works"}

/*
  guitar2.h ver4.01以降が必要です

  TW向けにタイミング調整済み、サクラでも可
  構造化エディタ対応

  XPでのみチェックしています


*/

 
Include(gs.h) ResetGS()r4 

Include(guitar2.h)
 #Down_set=3
 #Up_set=2

 TimeBase=120;
 Time=(!1) TrackSync Int j=0; Array Cap;

//	TW-Music2(DirectX[Music]) Effect
//	      ReverbSetting     Time Dpth High Mix
   	CuePoint={"TwmParam	( 16, 118,  48,117)"}	//初期値(127,117,0,127)

//	       ChorusSetting    Wave  Mix Dpth  FB Freq Dly Phs
//	CuePoint={"TwmChorus	( 1,   44,  66, 111, 66,111,  1)"}	//初期値(0,64,25,79,14,114,3)


 Function GSScaleTuningKAI(Int j,""){

	j= j+ 64; //
	If(j<0| j>127){ Print({"数値エラー[+63,-64] RPN"}) End; }

	Int DeviceNumber = $10;
	For(Int i=$10;i<= $1F;i++){
		Switch(i){
			Case($10){}	//[TR=10に該当]
			//Case($1A){}	//[TR=11に該当]
			//Case($1D){}	//[TR=14に該当]
			Default{ SysEx= $F0,$41,DeviceNumber,$42,$12,{$40,i,$40,j,j,j,j, j,j,j,j, j,j,j,j},$F7; }
		} //sw
	} //
 } //func

 GSScaleTuningKAI(20)r3; // (1200*log(445/440))/log(2)
 Int Key_chger= -2;
 Int Pitch_adj= -44;
 
TR=1 t_-1 V=100 l8 o3 CHO=0 TrackKey= Key_chger 

 Tempo=111;
 r-%3 @25 q106 v118 P=64 REV=34 v_.Random=4 q_.Random=4 r%3


   #Mode_set="arp"
   #Arp_set="r t+1 121 t-1 31u1"

  [ Am Dm(,,5) Bm7b5("r t+1 121 t-1 3121") : E("r t+1 1h1 t-1 3121") ]
   E7sus4("r t+1 131 t-1 u1h1") E7("r t+1 131 t-1 u1h1")
 
   Amadd9(" [r t+1 323 : t-1 q+20 123 t+2 h q-20] t+2 q+20 123u t+4 q-20 '3 t+6 2 t+13 1'^^^^ ^^^ t0 ",,6) r%6 


 
 Tempo=116; 
 #Cut_set= "d^du ^udu"
 #Arp_set= "r t+1 u2 q-40 1^ q+40 2 t-1 r[u:31] 3"

[

  r%-3 @26 q91 v88 P=64 REV=34 r%3 Cap(j)=Time; j++; // タイムキャプ
   #Mode_set="cut" v_.Random=12 q_.Random=0

[
  Chdprint("d^du^",,"r22 102 A")  // Aadd9
  Chdprint("udu",,"r22 100 A")  // A
  Chdprint("r22 010 A")  // FM7/A
  Chdprint("r00 202 A")  // A9sus4
: Chdprint("r02 200 A")  // Asus4
]
  Chdprint("d^du^",,"r20 013 A")  // Am7b13
  Chdprint("udu t2 d^^^ ^^^^^ t0",,"r20 013 A") // Am7b13


  r%-3 @25 q106 v106 P=64 REV=34 r%3 Cap(j)=Time; j++; // タイムキャプ
   #Mode_set="arp" v_.Random=4 q_.Random=4

[
  Chdprint("r22 102 A")  // Aadd9
  Chdprint("r22 010 A")  // FM7/A
  Chdprint("r00 202 A")  // A9sus4
: Chdprint("r t+1 [u2:1] ",,"r00 010 A")  // Dm7,11/A
  Chdprint("t-1 ru31^3",,"r20 010 A")  // Am7b13
]
: Chdprint("r t+1 u21^2",,"r20 013 A")  // Am7b13
  Chdprint("r t+1 u t+1 3 t+1 1 t+1 2 t+1 3 t0",,"r20 010 A") // Am7b13
]
  Chdprint("r t+1 [u2:1]",,"r20 013 A")  // Am7b13
  Chdprint("r t+1 u t+1 3 t+1 1 t+1 2 t+1 3 t0",,"r20 010 A") // Am7b13
  Chdprint("t16 rhu 3 t+1 2 t+3 1 v-33 t+12 q+40 'Key=3 1 Key=0 t+6 2 t+6 3'^^^ ^^^^ ^^ v+33 t0 q-40",,"r20 010 A") //r%4  // Am7b13


// PlayFrom(40:4:48)

TR=10 t_1 V=100 l8 p%= Pitch_adj; v100 REV=50 CHO=0 v_.Random=12

~{ち} = {n46,,,-22,-1} // lqvto
~{つ} = {n42,,,-28,-1}
~{ぱ} = {n49,,,,0,2}
~{だ} = {'n37,,,-6,2 n38,,,+6,0'} // リムショット+スネア
~{た} = {n38,,,+5,1}
~{ず} = {n36,,,+6,0}

~{か} = {n59,,,-24,0}
~{と} = {n50,,,+6,3}
~{ろ} = {n43,,,+6,3}
~{む} = {n47,,,+6,3}

#DRUM2 = { v__1.onCycle(!8,+3,-6,+9,-6)
	Sub{ つつつつ|つつっつ|つつつち|つつ #?1 } // フィルでミュート
	Sub{ っっっっ|っっだっ|っっっっ|っっ #?2 }
v__1=0	     ずっっっ|っっっず|っっずっ|っっ #?3
}
#DRUM1 = { v__1.onCycle(!4,+3,-6,+9,-6)
	Sub{ ちつっつ|っつっつ|っっっつ|っつっつ|っつっつ|っつ #?1 }
	Sub{ っっっっ|っっっっ|っだっっ|っっっっ|っっっっ|っっ #?2 }
v__1=0	     っっっっ|ずっっっ|っっっず|っっっっ|っずっっ|っっ #?3
}

#DRUM4 = { v__1.onCycle(!8,+3,-6,+9,-6)
	Sub{ つつつつ|つつっつ|つつつち|っつ #?1 }
	Sub{ っっっっ|っっだっ|っっっっ|っっ #?2 }
v__1=0	     ずっっず|っっっず|っっずっ|っっ #?3
}
#DRUM3 = { v__1.onCycle(!4,+3,-6,+9,-6)
	Sub{ ちつっつ|っつっつ|っっっつ|っつっつ|っつっつ|っつ #?1 }
	Sub{ かっかっ|かかかっ|かっかっ|かっかっ|かかかっ|かっ #?2 }
	Sub{ っっっっ|っっっっ|っだっっ|っっっっ|っっっっ|っっ #?3 }
v__1=0	     っっっっ|ずっっっ|っっっず|っっっっ|っずっっ|っっ #?4
}

#Ds0={ [3 #DRUM2("っつ","たっ","ずっ")] #DRUM2("っつ","っっ","っっ") }
#Ds1={ [3 #DRUM1("っつ","たっ","っっ")] #DRUM1("っっ","っっ","っっ") }
#Ds2={ [3 #DRUM4("っつ","たっ","ずっ")] #DRUM4("っつ","っっ","っっ") }
#Ds3={ [3 #DRUM3("っつ","かっ","たっ","っっ")] #DRUM3("っっ","かっ","っっ","っっ") }

Time=Cap(0) r-4 't6n40t0た' // フラム
Time=Cap(0) #Ds0; Sub{r-1^2^^  とろ }        Sub{ r-^^  v-11ちv+11 rた ぱ1 }
Time=Cap(1) #Ds1; Sub{r-1^1^ v-16 t+2 ぱ t-2 v+16}   Sub{ r-2^^ たろ v+11ちv-11 たとむ v-11 ぱ1 v+11 } // スネアからフィルイン
Time=Cap(2) #Ds2; Sub{r-1^2^^  とろ }        Sub{ r-^^  た r v-11ちv+11 v+6 t+4 ぱ1 v-6 t0 }
Time=Cap(3) #Ds3; Sub{r-1^2^^  と   }        Sub{ r-^   t+5たとろ v+6ちv-6 r t+4た t+8むr t+12 v+6ぱ1^1v-6 t0 } // 再タム回しはハットから


Function Bs(Str Junban,""){  // ベースユニゾン化

	Junban= Junban+ "Z"; // SW=0 last no tame
	Str TT; Str ZZ; Str XX; Int SW=0; Array RR; Str Cmd; Str Value;
	For(Int i=1; i< SizeOf(Junban)+1; i++){
		XX= MID(Junban,i,1) // i=1~

		If(SW==6){
			Switch(XX){
				Case(" "){}
				Case("#"){ Cmd= Cmd+ XX }
				Case("+"){ Cmd= Cmd+ XX }
				Case("-"){ Cmd= Cmd+ XX }
				Default{ SW= 4 }
			} //sw
		}
		If(SW==4){
			Switch(XX){
				Case(" "){}
				Case(","){ RR=(RR,Value); Value=""; }
				Case("^"){ Value= Value+ XX }
				Case("+"){ Value= Value+ XX }
				Case("-"){ Value= Value+ XX }
				Case("0"){ Value= Value+ XX }
				Case("1"){ Value= Value+ XX }
				Case("2"){ Value= Value+ XX }
				Case("3"){ Value= Value+ XX }
				Case("4"){ Value= Value+ XX }
				Case("5"){ Value= Value+ XX }
				Case("6"){ Value= Value+ XX }
				Case("7"){ Value= Value+ XX }
				Case("8"){ Value= Value+ XX }
				Case("9"){ Value= Value+ XX }
				Default{ RR=(RR,Value); Value=""; SW= 2 }
			} //sw
		}
		If(SW==2){
			For(Int i=0;i<SizeOf(RR);i++){
				If(i!=0){ ZZ= ZZ+ ","; }
				ZZ= ZZ+ RR(i);
			} //
			TT= TT+ "'"+ Cmd+ ">v-50"+ Cmd+ "v+50<'"+ ZZ; RR=(); ZZ=""; Cmd=""; SW= 0;
		}
		If(SW==0){
			Switch(XX){
				Case("Z"){ Exit; }
				Case("`"){ Cmd=Cmd+ XX; }
				Case(CHR(34)){ Cmd=Cmd+ XX; } // ["]
				Case("a"){ Cmd=Cmd+ XX; SW=6 }
				Case("b"){ Cmd=Cmd+ XX; SW=6 }
				Case("c"){ Cmd=Cmd+ XX; SW=6 }
				Case("d"){ Cmd=Cmd+ XX; SW=6 }
				Case("e"){ Cmd=Cmd+ XX; SW=6 }
				Case("f"){ Cmd=Cmd+ XX; SW=6 }
				Case("g"){ Cmd=Cmd+ XX; SW=6 }
				Default{ TT= TT+ XX; }
			} //sw
		}
	} //
	TT;
} //func

TR=6 V=100 t_1 l8 v98 q122 P=31 REV=17 CHO=0 TrackKey=Key_chger v_.Random=3 q_.Random=3

#Bs0={
 @34 o3 v111 Bs(" [[[3 q+44 arr  q-44<a> ] : q+44 f   rrq-44 <g> ]
		       q+44 f:rr q-44<e> ] rrq-44 <g> a^^^")
}
#Bs1={
 @35 o2 v104 Bs("[rrr rrr`e v-22 q+11 e q-11 v+22 rrrr
                   [12 r]
                   rrr rrr`a v-22 q+11 a q-11 v+22 rrrr
                   rrrr :  rrq-11 aa^ v-11 q+11 `ee q-11 v+11 ]")
}

Time= Cap(0); #Bs0;
Time= Cap(1); #Bs1; Bs("rr q-11 v+11 g^ rr v-11 q+11 f")
Time= Cap(2); #Bs0;
Time= Cap(3); #Bs1; Bs("rrr q-11 v+11 t+10 gg^ v-11 q+11 t+8 ff^ t+18 a^^^ ^^^^ ^^^r t0")