227 lines
8.0 KiB
Plaintext
Executable File
227 lines
8.0 KiB
Plaintext
Executable File
{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf190
|
|
{\fonttbl\f0\fnil\fcharset0 Menlo-Regular;}
|
|
{\colortbl;\red255\green255\blue255;\red0\green116\blue0;\red170\green13\blue145;\red100\green56\blue32;
|
|
\red28\green0\blue207;}
|
|
\paperw16840\paperh11900\margl1440\margr1440\vieww16500\viewh14280\viewkind0
|
|
\deftab560
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
|
|
\f0\fs22 \cf0 \CocoaLigature0 CFO H\'c5RNET CHEAT SHEET\
|
|
\
|
|
\
|
|
\cf2 // FREQUENCY AND DETUNE FUNCTIONS\cf0 \
|
|
\cf3 void\cf0 setFrequency(\cf3 float\cf0 frequency); \cf2 // 0.0 - whatever, not sure what happens when negative :)\cf0 \
|
|
\cf3 void\cf0 setFrequency1(\cf3 float\cf0 frequency1); \
|
|
\cf3 void\cf0 setFrequency2(\cf3 float\cf0 frequency2);\
|
|
\cf3 void\cf0 setFrequency3(\cf3 float\cf0 frequency3);\
|
|
\
|
|
\cf3 void\cf0 setSemitone1(int8_t semi); \cf2 // -24 to 24\cf0 \
|
|
\cf3 void\cf0 setSemitone2(int8_t semi);\
|
|
\cf3 void\cf0 setSemitone3(int8_t semi);\
|
|
\
|
|
\cf3 void\cf0 setDetune(\cf3 float\cf0 detune); \cf2 // 0.0 to whatever.\cf0 \
|
|
\cf3 void\cf0 setDetune1(\cf3 float\cf0 detune); \cf2 // 1.0 is one octave.\cf0 \
|
|
\cf3 void\cf0 setDetune2(\cf3 float\cf0 detune); \cf2 // best results with detune between 0.00 and 0.02\cf0 \
|
|
\cf3 void\cf0 setDetune3(\cf3 float\cf0 detune);\
|
|
\
|
|
\cf3 void\cf0 setOsc1LFO(\cf3 bool\cf0 lfo); \cf2 // true or false\cf0 \
|
|
\cf3 void\cf0 setOsc2LFO(\cf3 bool\cf0 lfo);\
|
|
\cf3 void\cf0 setOsc3LFO(\cf3 bool\cf0 lfo);\
|
|
\
|
|
\cf3 void\cf0 setFM1(uint8_t fm); \cf2 // 0 - 127\cf0 \
|
|
\cf3 void\cf0 setFM2(uint8_t fm);\
|
|
\cf3 void\cf0 setFM3(uint8_t fm);\
|
|
\
|
|
\cf3 void\cf0 setFMoctaves(uint8_t octs); \cf2 // 1 - 128, it won\'92t go down to zero.\cf0 \
|
|
\cf3 void\cf0 setFM1octaves(uint8_t octs);\
|
|
\cf3 void\cf0 setFM2octaves(uint8_t octs);\
|
|
\cf3 void\cf0 setFM3octaves(uint8_t octs);\
|
|
\
|
|
\cf3 void\cf0 setFM1Source(uint8_t source); \cf2 // 0 - 3 where\cf0 \
|
|
\cf3 void\cf0 setFM2Source(uint8_t source); \cf2 // 0 is linear, 1 is Osc1\cf0 \
|
|
\cf3 void\cf0 setFM3Source(uint8_t source); \cf2 // 2 is Osc2 and 3 is Osc3\cf0 \
|
|
\
|
|
\cf3 void\cf0 setFM1Shape(uint8_t shape); \cf2 // 0 - 5 where\cf0 \
|
|
\cf3 void\cf0 setFM2Shape(uint8_t shape); \cf2 // 0 is linear full signal\cf0 \
|
|
\cf3 void\cf0 setFM3Shape(uint8_t shape); \cf2 // 1 is envelope1, 2 is envelope2, \
|
|
// 3 is oscillator1, 4 is oscillator2 and 5 is oscillator 3\cf0 \
|
|
\
|
|
\cf3 void\cf0 fmToZeroHertz(\cf3 bool\cf0 ); \cf2 // true or false, if set to true the FM sounds more harmonic\cf0 \
|
|
\
|
|
\cf3 void\cf0 setPortamento(int32_t port); \cf2 // 0 - 127\cf0 \
|
|
\
|
|
\cf3 void\cf0 set12bit(\cf3 bool\cf0 ) \cf2 // true or false\cf0 \
|
|
\
|
|
\
|
|
\
|
|
\
|
|
\cf2 // FILTER FUNCTIONS\cf0 \
|
|
\cf3 void\cf0 setCutoff(int32_t c); \cf2 // 0 - 65535\cf0 \
|
|
\cf3 void\cf0 setFilterType(uint8_t type); \cf2 // 0 - 3 where filter type can be seen below \cf0 \
|
|
\cf3 void\cf0 setCutoffModAmount(int32_t amount); \cf2 // -65536 to 65535\cf0 \
|
|
\cf3 void\cf0 setCutoffModSource(uint8_t source); \cf2 // 0 - 5, same as FM shape\cf0 \
|
|
\
|
|
\cf2 // SHORTNAMES FOR FILTER TYPES\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 LOWPASS \cf5 0\cf4 \
|
|
HIGHPASS \cf5 1\cf4 \
|
|
BANDPASS \cf5 2\cf4 \
|
|
NOTCH \cf5 3\cf0 \
|
|
\
|
|
\
|
|
\
|
|
\
|
|
\cf2 // WAVEFORM FUNCTIONS\cf0 \
|
|
\cf3 void\cf0 setWaveform(uint16_t waveForm); \cf2 // JUST FOR 8bit WAVEFORMS\cf0 \
|
|
\cf3 void\cf0 setWaveform1(uint16_t waveForm); \cf2 // 0 - 15\cf0 \
|
|
\cf3 void\cf0 setWaveform2(uint16_t waveForm); \cf2 //\cf0 \
|
|
\cf3 void\cf0 setWaveform3(uint16_t waveForm); \cf2 //\
|
|
\
|
|
// SHORTNAMES FOR WAVEFORMS\cf0 \
|
|
\cf4 SINE \cf5 0\cf4 \
|
|
SQUARE \cf5 1\cf4 \
|
|
PULSE \cf5 2\cf4 \
|
|
TRIANGLE \cf5 3\cf4 \
|
|
SAW \cf5 4\cf4 \
|
|
FUZZ \cf5 5\cf4 \
|
|
DIGI1 \cf5 6\cf4 \
|
|
DIGI2 \cf5 7\cf4 \
|
|
DIGI3 \cf5 8\cf4 \
|
|
DIGI4 \cf5 9\cf4 \
|
|
NOISE \cf5 10\cf4 \
|
|
DIGI6 \cf5 11\cf4 \
|
|
TAN1 \cf5 12\cf4 \
|
|
TAN2 \cf5 13\cf4 \
|
|
TAN3 \cf5 14\cf4 \
|
|
TAN4 \cf5 15\cf2 \
|
|
\
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\
|
|
\
|
|
\page \cf2 // GAIN FUNCTIONS\cf0 \
|
|
\cf3 void\cf0 setGain(\cf3 float\cf0 value); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\cf3 void\cf0 setGain1(\cf3 float\cf0 value); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\cf3 void\cf0 setGain2(\cf3 float\cf0 value); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\cf3 void\cf0 setGain3(\cf3 float\cf0 value); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\
|
|
\cf3 float\cf0 getGain(); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\cf3 float\cf0 getGain1(); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\cf3 float\cf0 getGain2(); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\cf3 float\cf0 getGain3(); \cf2 // 0.0 - 1.0 \cf0 \
|
|
\
|
|
\
|
|
\
|
|
\
|
|
\cf2 // NOTE FUNCTIONS\cf0 \
|
|
\cf3 void\cf0 noteOn(uint8_t note, uint8_t vel); \cf2 // 0 - 127\cf0 \
|
|
\cf3 void\cf0 noteOn(uint8_t note); \cf2 // 0 - 127\cf0 \
|
|
\
|
|
\cf3 void\cf0 noteOff(uint8_t note); \cf2 // 0 - 127\cf0 \
|
|
\cf3 void\cf0 noteOff();\
|
|
\
|
|
\cf3 float\cf0 getNoteFrequency(uint8_t note); \cf2 // 0 - 127\cf0 \
|
|
\
|
|
\
|
|
\
|
|
\
|
|
\cf2 // ENVELOPE FUNCTIONS\cf0 \
|
|
\cf3 void\cf0 enableEnvelope1();\
|
|
\cf3 void\cf0 disableEnvelope1(); \
|
|
\
|
|
\cf3 void\cf0 setEnv1Attack(uint8_t att); \cf2 // 0 - 127 \cf0 \
|
|
\cf3 void\cf0 setEnv1Decay(uint8_t dec); \cf2 // 0 - 127 \cf0 \
|
|
\cf3 void\cf0 setEnv1Sustain(uint8_t sus); \cf2 // 0 - 127 \cf0 \
|
|
\cf3 void\cf0 setEnv1Release(uint8_t rel); \cf2 // 0 - 127 \cf0 \
|
|
\
|
|
\cf3 void\cf0 enableEnvelope2();\
|
|
\cf3 void\cf0 disableEnvelope2();\
|
|
\
|
|
\cf3 void\cf0 setEnv2Attack(uint8_t att); \cf2 // 0 - 127 \cf0 \
|
|
\cf3 void\cf0 setEnv2Decay(uint8_t dec); \cf2 // 0 - 127 \cf0 \
|
|
\cf3 void\cf0 setEnv2Sustain(uint8_t sus); \cf2 // 0 - 127 \cf0 \
|
|
\cf3 void\cf0 setEnv2Release(uint8_t rel); \cf2 // 0 - 127 \cf0 \
|
|
\
|
|
\
|
|
\cf3 void\cf0 getPreset(uint8_t p); \cf2 // 0 - 47, 0 to 15 are user presets on EEPROM\
|
|
// 16 to 47 are \'93factory presets\'94\cf0 \
|
|
\cf3 void\cf0 savePreset(uint8_t p); \cf2 // 0 - 15, saves current instrument to EEPROM \cf0 \
|
|
\cf3 void\cf0 sendInstrument(); \cf2 // send current instrument via MIDI as controller messages\cf0 \
|
|
\cf2 \page //synth parameters as MIDI controller numbers\cf0 \
|
|
\cf2 //synth functions and parameters as MIDI controller numbers\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 PRESET_SAVE \cf5 0\cf4 \
|
|
PRESET_RECALL \cf5 1\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 IS_12_BIT \cf5 3\cf4 \
|
|
CUTOFF \cf5 4\cf4 \
|
|
ZERO_HZ_FM \cf5 5\cf4 \
|
|
FM_OCTAVES \cf5 6\cf4 \
|
|
PORTAMENTO \cf5 8\cf4 \
|
|
FILTER_TYPE \cf5 9\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 LFO1 \cf5 10\cf4 \
|
|
SEMITONE1 \cf5 11\cf4 \
|
|
DETUNE1 \cf5 12\cf4 \
|
|
GAIN1 \cf5 13\cf4 \
|
|
WAVEFORM1 \cf5 14\cf4 \
|
|
FM1 \cf5 15\cf4 \
|
|
FM1_OCTAVES \cf5 16\cf4 \
|
|
FM1_SOURCE \cf5 17\cf4 \
|
|
FM1_SHAPE \cf5 18\cf4 \
|
|
FREQUENCY1 \cf5 19\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 LFO2 \cf5 20\cf4 \
|
|
SEMITONE2 \cf5 21\cf4 \
|
|
DETUNE2 \cf5 22\cf4 \
|
|
GAIN2 \cf5 23\cf4 \
|
|
WAVEFORM2 \cf5 24\cf4 \
|
|
FM2 \cf5 25\cf4 \
|
|
FM2_OCTAVES \cf5 26\cf4 \
|
|
FM2_SOURCE \cf5 27\cf4 \
|
|
FM2_SHAPE \cf5 28\cf4 \
|
|
FREQUENCY2 \cf5 29\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 LFO3 \cf5 30\cf4 \
|
|
SEMITONE3 \cf5 31\cf4 \
|
|
DETUNE3 \cf5 32\cf4 \
|
|
GAIN3 \cf5 33\cf4 \
|
|
WAVEFORM3 \cf5 34\cf4 \
|
|
FM3 \cf5 35\cf4 \
|
|
FM3_OCTAVES \cf5 36\cf4 \
|
|
FM3_SOURCE \cf5 37\cf4 \
|
|
FM3_SHAPE \cf5 38\cf4 \
|
|
FREQUENCY3 \cf5 39\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 CUTOFF_MOD_AMOUNT \cf5 70\cf4 \
|
|
CUTOFF_SOURCE \cf5 72\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 ENV1_VELOCITY \cf5 112\cf4 \
|
|
ENV1_ENABLE \cf5 113\cf4 \
|
|
ENV1_ATTACK \cf5 114\cf4 \
|
|
ENV1_DECAY \cf5 115\cf4 \
|
|
ENV1_SUSTAIN \cf5 116\cf4 \
|
|
ENV1_RELEASE \cf5 117\cf4 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf0 \
|
|
\pard\tx560\pardeftab560\pardirnatural
|
|
\cf4 ENV2_VELOCITY \cf5 122\cf4 \
|
|
ENV2_ENABLE \cf5 123\cf4 \
|
|
ENV2_ATTACK \cf5 124\cf4 \
|
|
ENV2_DECAY \cf5 125\cf4 \
|
|
ENV2_SUSTAIN \cf5 126\cf4 \
|
|
ENV2_RELEASE \cf5 127\cf4 \
|
|
\
|
|
} |