scaleGenerator2

Generates a copy of the scalings of the scalebank module onto your SDcard in the file "0:/scalebank.tab". After using this module once (ever), you can use the scalebank2 module to automatically load this file. This prevents to having to load the whole array into sram, filling up constly memory that could be used for more modules.
Author: Remco van der Most
License: GPL
Github: sss/harmony/scaleGenerator2.axo

Inlets

None

Outlets

None

Declaration
static const uint32_t LENGTH = 552;
static const uint32_t tLENGTH = 1644;
int32_t TMPR[1644];
bool DO = 1;
bool dO = 1;
int i;
int8_t note[552] = {
    0, 0, 2, 2, 4, 5, 5, 7, 7, 9, 9,  11, 0, 0, 2, 2, 4, 5, 5, 7, 8, 8, 11, 11,
    0, 0, 2, 2, 4, 5, 6, 6, 8, 8, 10, 10, 0, 0, 2, 2, 4, 5, 5, 7, 7, 9, 9,  10,
    0, 0, 2, 2, 4, 4, 7, 7, 9, 9, 11, 11, 0, 0, 0, 3, 3, 5, 5, 7, 7, 7, 10, 10,
    0, 0, 2, 3, 3, 5, 5, 7, 8, 8, 10, 10, 0, 1, 1, 3, 3, 5, 6, 6, 8, 8, 10, 10,
    0, 0, 2, 3, 3, 5, 5, 7, 8, 8, 11, 11, 0, 0, 2, 3, 3, 5, 5, 7, 7, 9, 9,  11,
    0, 0, 2, 3, 3, 5, 5, 7, 7, 8, 8,  10, 0, 0, 2, 3, 3, 5, 6, 6, 8, 9, 9,  11,
    0, 0, 3, 3, 4, 4, 4, 7, 8, 8, 8,  11, 0, 0, 2, 2, 4, 6, 6, 8, 8, 9, 9,  11,
    0, 1, 1, 4, 4, 5, 7, 7, 8, 8, 10, 10, 0, 1, 1, 3, 3, 5, 5, 7, 8, 8, 10, 10,
    0, 0, 2, 2, 4, 4, 6, 6, 9, 9, 10, 10, 0, 0, 2, 2, 4, 6, 6, 7, 7, 9, 10, 10,
    0, 1, 1, 3, 3, 4, 6, 6, 8, 8, 10, 10, 0, 0, 2, 2, 4, 5, 5, 7, 8, 9, 9,  11,
    0, 0, 2, 2, 4, 5, 5, 7, 7, 9, 10, 11, 0, 0, 4, 4, 5, 6, 6, 7, 7, 7, 10, 10,
    0, 0, 2, 3, 3, 5, 5, 7, 7, 9, 10, 10, 0, 0, 2, 3, 3, 6, 6, 7, 7, 9, 10, 10,
    0, 1, 1, 1, 4, 5, 5, 7, 8, 8, 8,  11, 0, 1, 1, 4, 4, 6, 6, 8, 9, 9, 10, 11,
    0, 1, 1, 1, 4, 5, 5, 7, 8, 8, 8,  10, 0, 0, 2, 3, 3, 6, 6, 7, 8, 8, 10, 10,
    0, 0, 2, 3, 3, 5, 6, 6, 8, 8, 10, 10, 0, 0, 3, 3, 4, 5, 5, 7, 7, 9, 9,  9,
    0, 0, 0, 4, 4, 4, 6, 6, 7, 7, 11, 11, 0, 0, 2, 3, 3, 6, 6, 7, 8, 8, 11, 11,
    0, 0, 2, 3, 3, 6, 6, 7, 8, 8, 10, 10, 0, 0, 1, 1, 1, 5, 5, 5, 7, 7, 8,  8,
    0, 0, 1, 1, 5, 5, 5, 7, 7, 7, 10, 10, 0, 0, 1, 1, 3, 3, 4, 4, 6, 6, 7,  7,
    0, 0, 1, 1, 1, 5, 5, 6, 6, 6, 10, 10, 0, 1, 1, 3, 3, 5, 5, 7, 8, 8, 11, 11,
    0, 1, 1, 3, 3, 4, 6, 7, 7, 9, 10, 10, 0, 0, 2, 3, 3, 5, 6, 6, 8, 9, 9,  10,
    0, 1, 1, 3, 3, 6, 6, 7, 8, 8, 10, 10, 0, 1, 1, 1, 4, 5, 6, 6, 8, 8, 10, 10,
    0, 0, 2, 2, 2, 5, 5, 7, 7, 7, 9,  9,  0, 1, 1, 4, 4, 6, 6, 7, 7, 7, 10, 10,
    0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 0, 0, 0, 3, 3, 5, 5, 7, 7, 7, 10, 10,
};

float32_t TmPR[1644] = {
    // Equal Tempered, Perfect Octave
    0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
    0.000,
    // Equal Tempered, Perfect Fourth
    3.519, 3.128, 2.737, 2.346, 1.955, 1.564, 1.173, 0.782, 0.391, 0.000,
    -0.391, -0.782,
    // Equal Tempered, Perfect Fifth
    -2.514, -2.235, -1.956, -1.677, -1.397, -1.118, -0.838, -0.559, -0.280,
    0.000, 0.279, 0.558,
    // Equal Tempered, Streched (1.0 Cent)
    -0.750, -0.667, -0.583, -0.500, -0.417, -0.333, -0.250, -0.167, -0.083,
    0.000, 0.083, 0.167,
    // Equal Tempered, Streched (1.25 Cent)
    -0.938, -0.834, -0.730, -0.625, -0.521, -0.417, -0.313, -0.209, -0.105,
    0.000, 0.104, 0.208,
    // Equal Tempered, Streched (1.5 Cent)
    -1.125, -1.000, -0.875, -0.750, -0.625, -0.500, -0.375, -0.250, -0.125,
    0.000, 0.125, 0.250,
    // Just Tempered (Schugk)
    15.641, -13.686, 19.551, 31.282, 1.955, 13.686, 5.864, 17.596, 29.327,
    0.000, 33.237, 3.910,
    // Just Tempered (Barbour)
    15.641, -13.686, 19.551, 31.282, 1.955, 13.686, 5.864, 17.596, -11.732,
    0.000, 33.237, 3.910,
    /// Naturally harmonious (Thirds)
    15.641, 27.372, 19.551, 31.282, 1.955, 13.686, 5.864, 17.596, 29.327, 0.000,
    11.731, 3.910,
    // Naturally harmonious
    15.641, 27.372, 19.551, 31.282, 1.956, 13.686, 5.864, 17.596, 29.327, 0.000,
    33.237, 3.910,
    // Pythagorean
    -5.865, 7.820, -1.955, -11.730, 1.955, -7.820, 5.865, -3.910, 9.775, 0.000,
    -9.775, 3.910,
    // Pythagorean (Perfect)
    15.640, 7.820, 19.550, 11.730, 1.955, 13.685, 5.865, 17.595, 9.775, 0.000,
    11.730, 3.910,
    // Pythagorean (Fifth chain Cb - E)
    -5.865, -15.640, -1.955, -11.730, 1.955, -7.820, -17.595, -3.910, -13.685,
    0.000, -9.775, -19.550,
    // Pythagorean (Fifth chain Db - F#)
    -5.865, -15.640, -1.955, -11.730, 1.955, -7.820, 5.865, -3.910, -13.685,
    0.000, -9.775, 3.910,
    // Pythagorean (Fifth chain Ebb - G)
    17.595, 7.820, -1.955, 11.730, 1.955, 15.640, 5.865, 19.550, 9.775, 0.000,
    13.685, 3.910,
    // Pythagorean (Fifth chain Fb - A)
    -5.865, -15.640, -1.955, -11.730, -21.505, -7.820, -17.595, -3.910, -13.685,
    0.000, -9.775, -19.550,
    // Pythagorean (Fifth chain F - A#)
    -5.865, 7.820, -1.955, 11.730, 1.955, -7.820, 5.865, -3.910, 9.775, 0.000,
    13.685, 3.910,
    // Pythagorean (Fifth chain Gb - B)
    -5.865, -15.640, -1.955, -11.730, 1.955, -7.820, -17.595, -3.910, -13.685,
    0.000, -9.775, 3.910,
    // Pythagorean (Fifth chain Ab - C#)
    -5.865, 7.820, -1.955, -11.730, 1.955, -7.820, 5.865, -3.910, -13.685,
    0.000, -9.775, 3.910,
    // Pythagorean (Fifth chain Bb - D#)
    -5.865, 7.820, -1.955, 11.730, 1.955, -7.820, 5.865, -3.910, 9.775, 0.000,
    -9.775, 3.910,
    // Meantone
    8.798, -9.775, 2.933, 15.640, -2.932, 11.731, -7.819, 5.865, -10.752, 0.000,
    13.686, -5.864,
    // Meantone # (-1/4)
    10.265, -13.686, 3.422, -20.529, -3.421, 13.686, -10.265, 6.843, -17.108,
    0.000, -23.951, -6.843,
    // Meantone b (-1/4)
    10.265, 27.373, 3.422, 20.530, -3.421, 13.686, 30.794, 6.843, 23.951, 0.000,
    17.108, -6.843,
    // Meantone (-1/4) (LargeThird)
    10.265, -13.686, 3.422, 20.530, -3.421, 13.686, -10.265, 6.843, -17.108,
    0.000, 17.108, -6.843,
    // Meantone (Small third)
    15.642, -20.856, 5.214, 31.284, -5.214, 20.856, -15.642, 10.428, -26.070,
    0.000, 26.070, -10.428,
    // Meantone (Homogeneous)
    7.038, -9.384, 2.346, 14.076, -2.346, 9.384, -7.038, 4.692, -11.730, 0.000,
    11.730, -4.692,
    // Meantone (Homogeneous third)
    12.570, -16.760, 4.190, 25.140, -4.190, 16.760, -12.570, 8.380, -20.950,
    0.000, 20.950, -8.380,
    // Meantone (Homogeneous gradated)
    4.887, -6.516, 1.629, 9.775, -1.629, 6.516, -4.889, 3.258, -8.145, 0.000,
    8.145, -3.258,
    // Comma - Temperament (1/7)
    3.351, -4.468, 1.117, 6.702, -1.117, 4.468, -3.351, 2.234, -5.585, 0.000,
    5.585, -2.234,
    // Comma - Temperament (1/8)
    2.199, -2.932, 0.733, 4.398, -0.733, 2.932, -2.199, 1.466, -3.665, 0.000,
    3.665, -1.466,
    // Comma - Temperament (1/9)
    1.305, -1.740, 0.435, 2.610, -0.435, 1.740, -1.305, 0.870, -2.175, 0.000,
    2.175, -0.870,
    // Comma - Temperament (2/9)
    8.472, -11.296, 2.824, 16.944, -2.824, 11.296, -8.472, 5.648, -14.120,
    0.000, 14.120, -5.648,
    // Comma - Temperament (1/10)
    0.588, -0.784, 0.196, 1.176, -0.196, 0.784, -0.588, 0.392, -0.980, 0.000,
    0.980, -0.392,
    // Comma - Temperament (3/11)
    11.730, -15.640, 3.910, 23.460, -3.910, 15.640, -11.730, 7.820, -19.550,
    0.000, 19.550, -7.820,
    // Pythagorei comma (3-Split)
    9.775, 0.000, -1.955, 3.910, 1.955, 7.820, -1.955, 3.910, 1.955, 0.000,
    5.865, 3.910,
    // Pythagorei comma (4-Split)
    5.865, 1.955, -1.955, 0.000, 1.955, 3.910, 0.000, 1.955, 3.910, 0.000,
    1.955, -1.955,
    // Pythagorei comma (5-Split)
    8.211, -1.564, 2.737, 2.346, -2.737, 6.256, -3.519, 5.474, 0.391, 0.000,
    4.301, -5.474,
    // Pythagorei comma (6-Split)
    5.865, -3.910, 1.955, 0.000, -1.955, 3.910, -5.865, 3.910, -1.955, 0.000,
    1.955, -3.910,
    // Pythagorei comma (6 & 12-Split)
    5.865, -3.910, 1.955, 7.820, -1.955, 7.820, -3.910, 3.910, -3.910, 0.000,
    7.820, -3.910,
    // Syntonic comma (2-Split)
    15.641, -13.686, 8.798, 31.282, 1.955, 13.686, -4.888, 17.596, -11.731,
    0.000, 22.484, 3.910,
    // Syntonic comma (4-Split)
    10.264, -3.910, 3.421, 4.399, -3.422, 8.309, -10.265, 6.842, 2.444, 0.000,
    6.354, -6.844,
    // Syntonic comma (5-Split)
    7.038, 1.173, 2.346, 3.519, -2.346, 5.865, 0.000, 4.692, 2.346, 0.000,
    4.692, -1.173,
    // Diatonic (Chromatic addition)
    15.631, -13.696, 19.541, 31.272, 1.945, 13.676, 5.855, 17.586, -11.741,
    0.000, 11.721, 3.900,
    // Organ of Freiberg (Silbermann-Orgel, 1985)
    3.910, -5.865, 0.000, 1.955, -1.955, 3.910, -5.865, 1.955, -5.865, 0.000,
    3.910, -3.910,
    // Organ of Fribourg (Manderscheidt-Orgel, 1640)
    7.820, -0.978, 2.933, 14.662, -4.887, 8.798, -2.933, 5.865, -10.752, 0.000,
    12.708, -4.887,
    // Organ of Hamburg (Schnitger-Orgel, 1993)
    7.038, -5.083, 2.346, 3.128, -2.346, 9.384, -7.038, 4.692, -3.128, 0.000,
    7.429, -4.692,
    // Organ of Maihingen (Baumeister-Orgel, 1737)
    3.910, -10.752, 2.933, 9.775, -8.797, 4.888, -12.707, 5.865, -14.662, 0.000,
    -1.955, -9.775,
    // Organ of Muri (Evangelien-Orgel)
    8.798, -10.752, 3.911, 14.663, -2.932, 10.753, -8.797, 7.821, -11.730,
    0.000, 9.775, -5.864,
    // Organ of Niederbobritzsch (Göthel-Orgel)
    0.000, -1.955, 2.444, -1.955, -0.978, 3.421, 0.489, -0.977, -1.955, 0.000,
    1.466, -5.865,
    // Organ of Weingarten (Gabler-Orgel, 1750)
    6.399, -8.532, 2.133, 12.798, -2.133, 8.532, -6.399, 4.266, -10.665, 0.000,
    10.665, -4.266,
    // Organ of Weingarten (Gabler-Orgel, 1983)
    4.888, 0.000, 0.978, 6.354, -0.977, 3.910, -3.910, 2.933, 2.933, 0.000,
    6.354, -3.909,
    // Agricola (Martin, 1539, 1543, 1545)
    -5.865, -13.686, -1.955, -9.776, 1.955, -7.820, -15.641, -3.910, -11.731,
    0.000, -9.775, 3.910,
    // Ammerbach (1571)
    5.865, -7.820, 3.910, 8.798, -1.955, 3.910, -3.910, 7.820, -9.775, 0.000,
    4.888, -1.955,
    // Ammerbach (1583, Interpretation 1)
    6.135, -4.180, 4.045, 6.270, 1.955, 4.180, -0.135, 8.090, -2.225, 0.000,
    8.225, 3.910,
    // Ammerbach (1583, Interpretation 2)
    6.135, -8.180, 4.045, 9.270, -2.045, 4.180, -4.135, 8.090, -10.225, 0.000,
    5.225, -2.090,
    // Bach (Billeter, Well-Tempered)
    4.888, -2.932, 4.888, 0.978, -4.887, 4.888, -4.887, 4.888, -0.977, 0.000,
    2.933, -4.887,
    // Bach (Kelletats, 1966)
    9.124, -0.651, 4.563, 3.259, -4.563, 7.169, -2.606, 9.126, 1.304, 0.000,
    5.214, -4.561,
    // Bach (Kellner, Well-Tempered)
    9.774, -0.001, 3.258, 3.909, -3.258, 7.819, -1.956, 6.516, 1.954, 0.000,
    5.864, -1.303,
    // Bach (Kellner, 1977)
    8.211, -1.564, 2.737, 2.346, -2.737, 6.256, -3.519, 5.474, 0.391, 0.000,
    4.301, -0.782,
    // Bach (Klais)
    7.491, -1.953, 3.741, 1.852, -4.878, 5.651, -3.815, 7.512, -0.020, 0.000,
    3.770, -5.700,
    // Barnes (1971)
    2.933, -0.977, 0.978, 0.000, -0.977, 3.911, -2.932, 1.956, 0.978, 0.000,
    1.956, -1.955,
    // Barnes (1977)
    5.865, 0.000, 1.955, 3.910, -1.955, 7.820, -1.955, 3.910, 1.955, 0.000,
    5.865, 0.000,
    // Bendeler (Fractions)
    10.456, 0.681, -1.955, 4.591, 1.955, 8.501, -1.274, 3.229, 2.636, 0.000,
    6.546, 3.910,
    // Bendeler III
    5.865, 1.955, -1.955, 0.000, 1.955, 3.910, 0.000, 1.955, 3.910, 0.000,
    1.955, -1.955,
    // Bermudo (1555)
    -1.955, -1.955, -1.955, -7.820, -1.955, -3.910, -3.910, 0.000, 0.000, 0.000,
    -5.865, 0.000,
    // Bossart I
    5.865, -3.910, 3.910, 14.663, -3.910, 9.775, -5.865, 4.888, 0.000, 0.000,
    13.685, -4.888,
    // Bossart II
    5.865, 0.000, 0.978, 14.663, 0.000, 9.775, -1.955, 4.888, 1.955, 0.000,
    10.753, 1.955,
    // Bossart III
    5.865, -0.978, 3.910, 11.730, -3.910, 9.775, -2.933, 4.888, 2.932, 0.000,
    10.753, -4.888,
    // Bruder (1829)
    2.933, -1.955, 5.866, 0.000, -5.865, 1.955, -3.422, 4.399, -0.977, 0.000,
    0.978, -4.887,
    // Ganassi (1543)
    15.641, 4.442, -1.955, -3.001, 1.955, 13.686, 12.641, 17.596, 6.397, 0.000,
    -1.046, 3.910,
    // Goebel (1967)
    -0.169, 0.109, 0.208, 0.128, 0.118, -0.140, 0.026, 0.020, -0.019, 0.000,
    -0.051, -0.117,
    // Grammateus (1518)
    -5.865, -3.910, -1.955, 0.000, 1.955, -7.820, -5.865, -3.910, -1.955, 0.000,
    -9.775, 3.910,
    // Kelletat (1960)
    7.820, -1.955, 3.910, 1.955, -4.887, 5.865, -3.910, 7.820, 0.000, 0.000,
    3.910, -5.865,
    // Kelletat (1966)
    7.820, -1.955, 3.910, 1.955, -3.910, 5.865, -3.910, 7.820, 0.000, 0.000,
    3.910, -5.865,
    // Kellner
    8.211, -1.564, 2.737, 2.346, -2.737, 6.256, -3.519, 5.474, 0.391, 0.000,
    4.301, -0.782,
    // Kircher
    15.640, -13.685, 19.550, -9.775, 1.955, 13.685, 5.865, 17.595, -11.730,
    0.000, -7.820, 3.910,
    // Kirnberger I (1766)
    15.640, 5.865, 19.550, 9.775, 1.955, 13.685, 5.865, 17.595, 7.820, 0.000,
    11.730, 3.910,
    // Kirnberger II (1771)
    4.888, -4.887, 8.798, -0.977, -8.798, 2.933, -4.888, 6.843, -2.932, 0.000,
    0.978, -6.843,
    // Kirnberger II (1776)
    5.865, -3.910, 9.775, 0.000, -9.775, 3.910, -5.865, 7.820, -1.955, 0.000,
    1.955, -7.820,
    // Kirnberger III (1779)
    10.264, 0.489, 3.421, 4.399, -3.422, 8.309, 0.488, 6.842, 2.444, 0.000,
    6.354, -1.467,
    // Lambert (1774)
    4.190, -2.234, 1.397, 1.676, -1.396, 5.586, -4.189, 2.793, -0.279, 0.000,
    3.631, -2.793,
    // Lublin (1540)
    1.090, -13.686, -1.955, 2.180, 1.955, 6.090, 5.865, 3.045, -11.731, 0.000,
    4.135, 3.910,
    // Malcolm (Alexander, 1721)
    15.641, 20.596, 19.551, 13.154, 1.955, 13.686, 18.641, 17.596, 11.199,
    0.000, 4.955, 3.910,
    // Marpurg I
    15.640, 5.865, 19.550, 9.775, 1.955, 13.685, 5.865, 17.595, 7.820, 0.000,
    11.730, 3.910,
    // Marpurg II
    -5.865, 3.910, -1.955, 7.820, 1.955 - 7.820, 1.955, -3.910, 5.865, 0.000,
    9.775, 0.000,
    // Marpurg III
    -5.865, -9.775, -1.955, -5.865, 1.955, -7.820, -11.730, -3.910, -7.820,
    0.000, -9.775, -13.685,
    // Marpurg IV
    -5.865, -7.820, -1.955, -11.730, 1.955, -7.820, -9.775, -3.910, -5.865,
    0.000, -9.775, -11.730,
    // Marpurg V
    -5.865, -1.955, -1.955, 1.955, 1.955, -7.820, -3.910, -3.910, 0.000, 0.000,
    3.910, -5.865,
    // Marpurg VI
    -5.865, -3.910, -1.955, 0.000, 1.955, -7.820, -5.865, -3.910, -1.955, 0.000,
    1.955, 3.910,
    // Marpurg VII
    1.955, 0.000, -1.955, -3.910, 1.955, 0.000, -1.955, -3.910, 1.955, 0.000,
    -1.955, -3.910,
    // Marpurg VIII
    0.000, 1.955, -1.955, 0.000, 1.955, -1.955, 0.000, -3.910, -1.955, 0.000,
    1.955, -1.955,
    // Marpurg IX
    -5.865, -3.910, -1.955, 0.000, 1.955, -1.955, 0.000, -3.910, -1.955, 0.000,
    1.955, 3.910,
    // Marpurg X
    1.955, 0.000, 1.955, 0.000, 1.955, 0.000, 1.955, 0.000, 1.955, 0.000, 1.955,
    0.000,
    // Marpurg XI
    -5.865, 0.000, -1.955, -3.910, 1.955, -7.820, 1.955, -3.910, -1.955, 0.000,
    -5.865, 3.910,
    // Marpurg XII
    -7.820, 3.910, -1.955, -11.730, -1.955, -7.820, 1.955, -3.910, 5.865, 0.000,
    -9.775, 0.000,
    // Meister
    4.888, 16.618, 3.422, 20.528, -3.421, 2.933, 14.663, 6.843, 18.573, 0.000,
    0.978, -6.842,
    // Mersenne (Fractions)
    15.640, -13.685, 19.550, 31.280, 1.955, 13.685, -15.640, 17.595, 29.325,
    0.000, 11.730, 3.910,
    // Mersenne (Marin, 1636)
    5.131, 1.710, -1.711, -5.132, -8.553, -6.843, -5.132, -3.422, -1.711, 0.000,
    1.710, 3.421,
    // Neidhardt (1724, Grosse Stadt)
    5.865, 1.955, 1.955, 3.910, 0.000, 3.910, 1.955, 1.955, 1.955, 0.000, 3.910,
    1.955,
    // Neidhardt (1732, Dorf)
    5.865, 0.000, 3.910, 1.955, -3.910, 3.910, -1.955, 5.865, 0.000, 0.000,
    3.910, -1.955,
    // Neidthardt I
    5.865, 0.000, 1.955, 1.955, -1.955, 3.910, -1.955, 3.910, 1.955, 0.000,
    1.955, -1.955,
    // Neidthardt II
    5.865, 1.955, 1.955, 3.910, 0.000, 5.865, 1.955, 3.910, 1.955, 0.000, 5.865,
    1.955,
    // Neidthardt III
    5.865, 1.955, 1.955, 3.910, 0.000, 3.910, 1.955, 3.910, 1.955, 0.000, 3.910,
    1.955,
    // Rameau
    11.730, -3.910, 3.910, 0.000, -3.910, 15.640, -5.865, 7.820, -1.955, 0.000,
    7.820, -7.820,
    // Rameau (-1/4)
    10.265, -2.933, 3.422, -4.561, -3.421, 13.686, -4.888, 6.843, -0.978, 0.000,
    4.562, -6.843,
    // Ramis de Pareia (1482)
    15.641, 7.820, -1.955, 9.776, 1.955, 13.686, 5.865, 17.596, 7.821, 0.000,
    11.731, 3.910,
    // Reinhard (Andreas, 1604)
    15.641, 14.596, 19.551, 8.352, 1.955, 13.686, 12.641, 17.596, 6.397, 0.000,
    -1.046, 3.910,
    // Rossi (-1/5)
    7.039, -9.385, 2.346, 14.078, -2.346, 9.385, -7.039, 4.693, -11.731, 0.000,
    11.731, -4.693,
    // Rossi (-2/9)
    8.473, -11.296, 2.824, 16.945, -2.824, 11.297, -8.472, 5.648, -14.121,
    0.000, 14.121, -5.648,
    // Salinas (-1/3)
    15.642, -20.854, 5.214, 31.283, -5.213, 20.856, -15.641, 10.428, -26.068,
    0.000, 26.069, -10.427,
    // Schlick (Barbour)
    5.865, -3.910, 1.955, 7.820, -1.955, 7.820, -3.910, 3.910, 1.955, 0.000,
    7.820, -3.910,
    // Schlick (Dupont)
    10.266, -13.688, 3.422, 20.532, -3.422, 13.688, -10.266, 6.844, 3.422,
    0.000, 17.110, -6.844,
    // Schlick (Lange)
    6.231, -8.308, 2.077, 12.462, -2.077, 8.308, -6.231, 4.154, 6.475, 0.000,
    10.385, -4.154,
    // Schlick (Ratte)
    5.865, -5.865, 1.955, 9.775, -1.955, 7.820, -3.910, 3.910, 5.865, 0.000,
    7.820, -3.910,
    // Schlick (Schugk)
    8.211, -10.948, 2.737, 16.422, -2.737, 10.948, -8.211, 5.474, 19.159, 0.000,
    13.685, -5.474,
    // Schlick (Tessmer)
    7.331, -4.888, 2.444, 9.775, -2.444, 9.775, -4.888, 4.887, 5.865, 0.000,
    9.775, -4.888,
    // Schlick (Vogel)
    8.211, -6.256, 2.737, 2.346, -2.737, 10.948, -8.211, 5.474, -4.301, 0.000,
    8.993, -5.474,
    // Schneegass I (1590)
    10.340, -13.786, 3.447, 20.680, -3.446, 13.787, -10.340, 6.893, -17.233,
    0.000, 17.233, -6.893,
    // Schneegass II (1590)
    10.341, -10.655, 3.447, 20.682, -0.314, 13.788, -7.208, 6.894, -14.102,
    0.000, 17.235, -3.761,
    // Schneegass III (1590)
    10.198, -9.020, 4.270, 18.306, -1.449, 11.105, -8.576, 6.158, -14.463,
    0.000, 15.656, -4.319,
    // Silbermann (-1/6)
    4.889, -6.517, 1.630, 9.777, -1.629, 6.518, -4.888, 3.259, -8.146, 0.000,
    8.147, -3.258,
    // Silbermann (1/6)
    5.865, -7.820, 1.955, 11.730, -1.955, 7.820, -5.865, 3.910, -9.775, 0.000,
    9.775, -3.910,
    // Sorge
    5.865, 1.955, 1.955, 3.910, 0.000, 3.910, 1.955, 3.910, 3.910, 0.000, 3.910,
    1.955,
    // Stanhope (1801)
    9.775, 0.000, 5.865, 3.910, -5.865, 7.820, -1.955, 11.730, 1.955, 0.000,
    5.865, -3.910,
    // Trost (Johann Caspar, 1677)
    -3.421, -6.842, 3.422, -6.842, -3.421, 0.000, -3.421, -6.842, -10.263,
    0.000, 3.421, -13.685,
    // Valotti (1754)
    5.865, 0.000, 1.955, 3.910, -1.955, 7.820, -1.955, 3.910, 1.955, 0.000,
    5.865, -3.910,
    // Van Zwolle
    -5.865, -15.640, -1.955, -11.730, 1.955, -7.820, -17.595, -3.910, -13.685,
    0.000, -9.775, 3.910,
    // Veroli (Ordinaire)
    10.266, -8.799, 3.422, -1.464, -3.422, 8.311, -8.799, 6.844, -6.844, 0.000,
    4.401, -6.844,
    // Werckmeister I
    11.730, 1.955, 3.910, 5.865, 1.955, 9.775, 0.000, 7.820, 3.910, 0.000,
    7.820, 3.910,
    // Werckmeister II
    9.775, -7.820, 5.865, 3.910, 1.955, 7.820, -1.955, 3.910, -5.865, 0.000,
    13.685, -3.910,
    // Werckmeister III
    0.000, -3.910, 3.910, 0.000, -3.910, 3.910, 0.000, 1.955, -7.820, 0.000,
    1.955, -1.955,
    // Werckmeister IV
    7.539, -2.236, -5.307, 5.026, 1.955, 5.584, 2.513, 6.090, -0.281, 0.000,
    6.981, 3.910,
    // Wiegleb
    5.865, -1.955, 1.955, 1.955, 0.000, 5.865, -3.910, 3.910, 0.000, 0.000,
    3.910, -1.955,
    // Wiegleb (1790)
    8.798, 0.000, 2.933, 3.911, 0.000, 7.820, -1.955, 5.865, 1.956, 0.000,
    5.865, -0.977,
    // Young I
    5.865, 0.000, 1.955, 3.910, -1.955, 5.865, -1.955, 3.910, 1.955, 0.000,
    5.865, -1.955,
    // Young II
    5.865, -3.910, 1.955, 0.000, -1.955, 3.910, -5.865, 3.910, -1.955, 0.000,
    1.955, -3.910,
    // Zarlino (-2/7)
    12.569, -16.759, 4.190, 25.138, -4.190, 16.758, -12.569, 8.379, -20.949,
    0.000, 20.948, -8.380};
Init
for (i = 0; i < 1644; i++) {

  TMPR[i] = ((TmPR[i] * (1 << 19)) / 100) * 4;
}

if (dO == 1) {
  FIL FileObject;
  FRESULT err;
  UINT bytes_written;
  err = f_open(&FileObject, "0:/scalebank.tab", FA_WRITE | FA_CREATE_ALWAYS);
  if (err != FR_OK) {
    report_fatfs_error(err, "0:/scalebank.tab");
    return;
  }
  int rem_sz = sizeof(*note) * LENGTH;
  int offset = 0;
  while (rem_sz > 0) {
    if (rem_sz > sizeof(fbuff)) {
      memcpy((char *)fbuff, (char *)(&note[0]) + offset, sizeof(fbuff));
      err = f_write(&FileObject, fbuff, sizeof(fbuff), &bytes_written);
      rem_sz -= sizeof(fbuff);
      offset += sizeof(fbuff);
    } else {
      memcpy((char *)fbuff, (char *)(&note[0]) + offset, rem_sz);
      err = f_write(&FileObject, fbuff, rem_sz, &bytes_written);
      rem_sz = 0;
    }
  }
  if (err != FR_OK)
    report_fatfs_error(err, "0:/scalebank.tab");
  err = f_close(&FileObject);
  if (err != FR_OK)
    report_fatfs_error(err, "0:/scalebank.tab");
}

if (DO == 1) {
  FIL FileObject;
  FRESULT err;
  UINT bytes_written;
  err = f_open(&FileObject, "0:/tempbank.tab", FA_WRITE | FA_CREATE_ALWAYS);
  if (err != FR_OK) {
    report_fatfs_error(err, "0:/tempbank.tab");
    return;
  }
  int rem_sz = sizeof(*TMPR) * tLENGTH;
  int offset = 0;
  while (rem_sz > 0) {
    if (rem_sz > sizeof(fbuff)) {
      memcpy((char *)fbuff, (char *)(&TMPR[0]) + offset, sizeof(fbuff));
      err = f_write(&FileObject, fbuff, sizeof(fbuff), &bytes_written);
      rem_sz -= sizeof(fbuff);
      offset += sizeof(fbuff);
    } else {
      memcpy((char *)fbuff, (char *)(&TMPR[0]) + offset, rem_sz);
      err = f_write(&FileObject, fbuff, rem_sz, &bytes_written);
      rem_sz = 0;
    }
  }
  if (err != FR_OK)
    report_fatfs_error(err, "0:/tempbank.tab");
  err = f_close(&FileObject);
  if (err != FR_OK)
    report_fatfs_error(err, "0:/tempbank.tab");
}

Privacy

© 2024 Zrna Research