Skip to content

Instantly share code, notes, and snippets.

--- emulating a small subset of Cold Mac
-- bank of functions
-- args: input
-- output: transformed version of input
last_integral = 0
last_input = 0
function clamp(v,min,max)
return math.max( math.min(v,max), min )
end
--- subharmonic pitch source
magic = 1/math.log(2)
function init()
output[1].volts = 0
metro[1].time = 1.0
metro[1].event = next_step
metro[1]:start()
--input[1].mode( 'stream', 0.002)
--- timeline sequencer
-- aka 'function tracker'
-- out1: pitch
-- out2: volume
-- out3: filter cf
scale = {0,6,11,-12,-1,4,0,0,7,6,4,1}
scaleIX = 1
function next_note()
--- subharmonic pitch source
magic = 1/math.log(2)
function init()
output[1].volts = 0
metro[1].time = 1.0
metro[1].event = next_step
metro[1]:start()
--input[1].mode( 'stream', 0.002)
--- Exploring crow's input modes
function init()
input[1].mode( 'volume', 0.001 )
output[4].slew = 3
end
new_base = false
input[1].volume = function( level )
#define NUM_OSCS 6
void ii_vox( uint8_t* d )
{
if( !jt_state.smode ){ return; } // ignore if *not* in syn mode
int8_t voice = (int8_t)d[0] -1;
if( voice >= NUM_OSCS ){ return; } // voice out of range
int16_t note = (d[1] << 8) + d[2];
--- clocky -- a demo of norns' clock library on crow
-- NB: requires experimental crow beta
-- available from https://github.com/monome/crow/pull/352
myarp = {}
myarp2 = {}
mylfo = {}
--myskal = {0,2,4,7,9,12,14,16,19,24}
--- An exploration of Just Friends' Geode
j = ii.jf -- alias used throughout
function init()
j.mode(1)
input[1]{ mode = 'change'
, direction = 'rising'
}
--- An exploration of Just Friends' Geode
j = ii.jf -- alias used throughout
function init()
j.mode(1)
input[1]{ mode = 'change'
, direction = 'rising'
}
--- just friends poly sequencer
function init()
metro[1].event = n
metro[1].time = 0.2
metro[1]:start()
metro[2].event = n2
metro[2].time = 0.21
metro[2]:start()