#define EQUAL_TEMPERAMENT 0
#define WELL_TEMPERED_GUITAR 1
-#define TUNING WELL_TEMPERED_GUITAR
+//#define TUNING WELL_TEMPERED_GUITAR
+#define TUNING EQUAL_TEMPERAMENT
#endif /* !defined(_CONFIG_H) */
--- /dev/null
+#ifndef _NOTES_H
+#define _NOTES_H 1
+
+#include <math.h>
+
+#include "config.h"
+
+struct note {
+ char notename[16];
+ double freq;
+};
+
+#if TUNING == WELL_TEMPERED_GUITAR
+static note notes[] = {
+ { "E-3", BASE_PITCH/4.0 * (3.0/4.0) },
+ { "A-3", BASE_PITCH/4.0 },
+ { "D-4", BASE_PITCH/4.0 * (4.0/3.0) },
+ { "G-4", BASE_PITCH/4.0 * (4.0/3.0)*(4.0/3.0) },
+ { "B-4", BASE_PITCH * (3.0/4.0)*(3.0/4.0) },
+ { "E-5", BASE_PITCH * (3.0/4.0) }
+};
+#else
+static note notes[] = {
+ { "E-3", BASE_PITCH/4.0 * pow(2.0, -5.0/12.0) },
+ { "A-3", BASE_PITCH/4.0 },
+ { "D-4", BASE_PITCH/4.0 * pow(2.0, 5.0/12.0) },
+ { "G-4", BASE_PITCH/4.0 * pow(2.0, 10.0/12.0) },
+ { "B-4", BASE_PITCH/2.0 * pow(2.0, 2.0/12.0) },
+ { "E-5", BASE_PITCH/2.0 * pow(2.0, 7.0/12.0) },
+};
+#endif
+
+#endif /* !defined(_NOTES_H) */
}
#else
-struct note {
- char notename[16];
- double freq;
-};
-static note notes[] = {
- { "E-3", BASE_PITCH/4.0 * (3.0/4.0) },
- { "A-3", BASE_PITCH/4.0 },
- { "D-4", BASE_PITCH/4.0 * (4.0/3.0) },
- { "G-4", BASE_PITCH/4.0 * (4.0/3.0)*(4.0/3.0) },
- { "B-4", BASE_PITCH * (3.0/4.0)*(3.0/4.0) },
- { "E-5", BASE_PITCH * (3.0/4.0) }
-};
-
void print_spectrogram(double freq, double amp)
{
double best_away = 999999999.9;