X-Git-Url: https://git.cworth.org/git?p=scherzo;a=blobdiff_plain;f=pitch.c;h=6bb64702936363813ac8ebdfae2d1c1f5ac5f5c0;hp=211e68c1aeb1252ff60c62b1d214475ffe5d5ce9;hb=HEAD;hpb=5b1797d26aff3a1b2f0cbe83583496b42abcd056 diff --git a/pitch.c b/pitch.c index 211e68c..6bb6470 100644 --- a/pitch.c +++ b/pitch.c @@ -18,6 +18,7 @@ * along with this program. If not, see http://www.gnu.org/licenses/ . */ +#include #include #include "pitch.h" @@ -254,13 +255,13 @@ pitch_from_midi (unsigned char midi_note) return PITCH_LITERAL (C, NATURAL, octave); break; case 1: - return PITCH_LITERAL (C, SHARP, octave); + return PITCH_LITERAL (D, FLAT, octave); break; case 2: return PITCH_LITERAL (D, NATURAL, octave); break; case 3: - return PITCH_LITERAL (D, SHARP, octave); + return PITCH_LITERAL (E, FLAT, octave); break; case 4: return PITCH_LITERAL (E, NATURAL, octave); @@ -269,22 +270,28 @@ pitch_from_midi (unsigned char midi_note) return PITCH_LITERAL (F, NATURAL, octave); break; case 6: - return PITCH_LITERAL (F, SHARP, octave); + return PITCH_LITERAL (G, FLAT, octave); break; case 7: return PITCH_LITERAL (G, NATURAL, octave); break; case 8: - return PITCH_LITERAL (G, SHARP, octave); + return PITCH_LITERAL (A, FLAT, octave); break; case 9: return PITCH_LITERAL (A, NATURAL, octave); break; case 10: - return PITCH_LITERAL (A, SHARP, octave); + return PITCH_LITERAL (B, FLAT, octave); break; case 11: return PITCH_LITERAL (B, NATURAL, octave); break; } } + +int +pitch_enharmonic_to (pitch_t a, pitch_t b) +{ + return pitch_to_midi (a) == pitch_to_midi (b); +}