colorchord/embedded8266/ccconfig.h
2018-11-30 07:01:36 -05:00

72 lines
2.2 KiB
C

#ifndef _CCCONFIG_H
#define _CCCONFIG_H
#include <c_types.h>
#define HPABUFFSIZE 512
#define CCEMBEDDED
#define NUM_LIN_LEDS 541
#define DFREQ 16000
#define memcpy ets_memcpy
#define memset ets_memset
#define ROOT_NOTE_OFFSET CCS.gROOT_NOTE_OFFSET
#define DFTIIR CCS.gDFTIIR
#define FUZZ_IIR_BITS CCS.gFUZZ_IIR_BITS
#define MAXNOTES 12 //MAXNOTES cannot be changed dynamically.
#define FILTER_BLUR_PASSES CCS.gFILTER_BLUR_PASSES
#define SEMIBITSPERBIN CCS.gSEMIBITSPERBIN
#define MAX_JUMP_DISTANCE CCS.gMAX_JUMP_DISTANCE
#define MAX_COMBINE_DISTANCE CCS.gMAX_COMBINE_DISTANCE
#define AMP_1_IIR_BITS CCS.gAMP_1_IIR_BITS
#define AMP_2_IIR_BITS CCS.gAMP_2_IIR_BITS
#define MIN_AMP_FOR_NOTE CCS.gMIN_AMP_FOR_NOTE
#define MINIMUM_AMP_FOR_NOTE_TO_DISAPPEAR CCS.gMINIMUM_AMP_FOR_NOTE_TO_DISAPPEAR
#define NOTE_FINAL_AMP CCS.gNOTE_FINAL_AMP
#define NERF_NOTE_PORP CCS.gNERF_NOTE_PORP
#define USE_NUM_LIN_LEDS CCS.gUSE_NUM_LIN_LEDS
#define COLORCHORD_OUTPUT_DRIVER CCS.gCOLORCHORD_OUTPUT_DRIVER
#define COLORCHORD_ACTIVE CCS.gCOLORCHORD_ACTIVE
#define INITIAL_AMP CCS.gINITIAL_AMP
#define LED_DRIVER_MODE CCS.gLED_DRIVER_MODE
//We are not enabling these for the ESP8266 port.
#define LIN_WRAPAROUND 0
#define SORT_NOTES 0
struct CCSettings
{
uint16_t gSETTINGS_KEY;
uint16_t gROOT_NOTE_OFFSET; //Set to define what the root note is. 0 = A.
uint16_t gDFTIIR; //=6
uint16_t gFUZZ_IIR_BITS; //=1
uint16_t gFILTER_BLUR_PASSES; //=2
uint16_t gSEMIBITSPERBIN; //=3
uint16_t gMAX_JUMP_DISTANCE; //=4
uint16_t gMAX_COMBINE_DISTANCE; //=7
uint16_t gAMP_1_IIR_BITS; //=4
uint16_t gAMP_2_IIR_BITS; //=2
uint16_t gMIN_AMP_FOR_NOTE; //=80
uint16_t gMINIMUM_AMP_FOR_NOTE_TO_DISAPPEAR; //=64
uint16_t gNOTE_FINAL_AMP; //=12
uint16_t gNERF_NOTE_PORP; //=15
uint16_t gUSE_NUM_LIN_LEDS; // = NUM_LIN_LEDS
uint16_t gCOLORCHORD_ACTIVE;
uint16_t gCOLORCHORD_OUTPUT_DRIVER;
uint16_t gLED_DRIVER_MODE;
uint16_t gINITIAL_AMP;
};
#define CCCONFIG_ADDRESS 0xAF000
extern struct CCSettings CCS;
#endif