gktempo init 1 gkphasor init 0 gkslowph init 0 gkbeat init 0 gkgain init 0.05 #define tempo #gktempo# instr metronome_instr kenv = expseg(1.01, p3, 0.01) - 0.01 asig = oscili(0.3, 3000) * kenv chnmix(asig, "out1") chnmix(asig, "out2") endin opcode metronome, 0, 0 kmet = gkbeat if (kmet == 1) then schedulek("metronome_instr", 0, 0.1) endif endop instr gclock gkphasor = phasor:k(gktempo) gkslowph = phasor:k(gktempo / 100) gkbeat = metro:k(gktempo) endin schedule("gclock", 0, -1) opcode reset_clock, 0, 0 turnoff2( nstrnum("gclock"), 0, 0) schedule("gclock", 0.01, -1) endop instr audio_out a1 = clip:a(chnget:a("out1"), 0, 0.99);limit:a(chnget:a("out1"), -1, 1) ;* gkgain a2 = clip:a(chnget:a("out2"), 0, 0.99);limit:a(chnget:a("out2"), -1, 1) ;* gkgain chnclear("out1") chnclear("out2") outs a1, a2 endin schedule("audio_out", 0, -1) gklorenz_speed init 0.00001 gklorenz_x init 0 gklorenz_y init 0 gklorenz_z init 0 gkmirlorenz_x init 0 gkmirlorenz_y init 0 gkmirlorenz_z init 0 galorenz_x init 0 galorenz_y init 0 galorenz_z init 0 opcode lorenz_ctl, aaa, kppp kspeed, ix, iy, iz xin kspeed = limit:k(kspeed, 0.0000001, 0.09) ksv init 10 krv init 28 kbv init 2.6 ; kh init 0.001 kh = kspeed ix = (ix != 0) ? ix : 0.6 iy = (iy != 0) ? iy : 0.6 iz = (iz != 0) ? iz : 0.6 iskip = 1 ax1, ay1, az1 lorenz ksv, krv, kbv, kh, ix, iy, iz, iskip ax1 /= krv ay1 /= krv az1 /= krv xout ax1, ay1, az1 endop #define LORENZ_TIME #720# instr lorenz_sched ix = random:i(0, 1) iy = random:i(0, 1) iz = random:i(0, 1) ax, ay, az lorenz_ctl gklorenz_speed, ix, iy, iz gklorenz_x = lag(k(ax), 0.01) gklorenz_y = lag(k(ay), 0.01) gklorenz_z = lag(k(az), 0.01) gkmirlorenz_x = mirror:k(gklorenz_x, 0, 1) gkmirlorenz_y = mirror:k(gklorenz_y, 0, 1) gkmirlorenz_z = mirror:k(gklorenz_z, 0, 1) galorenz_x = ax galorenz_y = ay galorenz_z = az schedule("lorenz_sched", $LORENZ_TIME, $LORENZ_TIME) endin schedule("lorenz_sched", 0, $LORENZ_TIME) #define FQ # isavage_mode init p6 ifq mtof inote ksavage init 0 if (isavage_mode == 1) then ksavage = savage_1() elseif (isavage_mode == 2) then ksavage = savage_2() elseif (isavage_mode == 3) then ksavage = savage_3() elseif (isavage_mode == 4) then ksavage = savage_4() elseif (isavage_mode == 5) then ksavage = savage_5() endif kfq = limit:k(ifq + (ksavage * ifq), 20, 20000) # #define FQPERC # isavage_mode = rint:i(1, 5) ksavage init 0 if (isavage_mode == 1) then ksavage = savage_1() elseif (isavage_mode == 2) then ksavage = savage_2() elseif (isavage_mode == 3) then ksavage = savage_3() elseif (isavage_mode == 4) then ksavage = savage_4() elseif (isavage_mode == 5) then ksavage = savage_5() endif # #define SAVAGE(isavage_mode') # ksavage init 0 if (isavage_mode == 1) then ksavage = savage_1() elseif (isavage_mode == 2) then ksavage = savage_2() elseif (isavage_mode == 3) then ksavage = savage_3() elseif (isavage_mode == 4) then ksavage = savage_4() elseif (isavage_mode == 5) then ksavage = savage_5() endif # opcode tempo, 0, k kval xin $tempo = limit:k(kval, 0.001, 10) endop opcode chaos_speed, 0, k kval xin gklorenz_speed = 0.0000001 * (limit:k(kval, 0.01, 100) * 10) endop