1 2 /* 3 * Diverse Bristol audio routines. 4 * Copyright (c) by Nick Copeland <nickycopeland@hotmail.com> 1996,2012 5 * 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, see <http://www.gnu.org/licenses/>. 19 * 20 */ 21 22 /* 23 * These need to be redone. Each white key should be placed first, then the 24 * black keys layered on top. That way we can get better graphics with shading 25 * on the white keys for each black key. 26 */ 27 28 #ifndef BRIGHTONKEYS_H 29 #define BRIGHTONKEYS_H 30 31 #define KEY_COUNT 61 32 #define KEY_COUNT_2OCTAVE2 32 33 #define KEY_COUNT_2OCTAVE 29 34 #define KEY_COUNT_3OCTAVE 44 35 #define KEY_COUNT_3_OCTAVE 37 36 #define KEY_COUNT_4OCTAVE 49 37 #define KEY_COUNT_PEDAL 24 38 #define VKEY_COUNT 48 39 #define KEY_COUNT_5OCTAVE KEY_COUNT 40 #define KEY_COUNT_6_OCTAVE 73 41 42 extern guimain global; 43 44 extern brightonLocations keys[KEY_COUNT_5OCTAVE]; 45 extern brightonLocations keysprofile[KEY_COUNT_5OCTAVE]; 46 extern brightonLocations keysprofile2[KEY_COUNT_5OCTAVE]; 47 extern brightonLocations keys6octave[KEY_COUNT_6_OCTAVE]; 48 extern brightonLocations keys6hammond[KEY_COUNT_6_OCTAVE]; 49 extern brightonLocations keys2octave[KEY_COUNT_2OCTAVE]; 50 extern brightonLocations keys2octave2[KEY_COUNT_2OCTAVE2]; 51 extern brightonLocations keys3_octave[KEY_COUNT_3_OCTAVE]; 52 extern brightonLocations keys3octave[KEY_COUNT_3OCTAVE]; 53 extern brightonLocations keys3octave2[KEY_COUNT_3OCTAVE]; 54 extern brightonLocations keys4octave[KEY_COUNT_4OCTAVE]; 55 extern brightonLocations keys4octave2[KEY_COUNT_4OCTAVE]; 56 extern brightonLocations pedalBoard[KEY_COUNT_PEDAL]; 57 extern brightonLocations vkeys[VKEY_COUNT]; 58 extern brightonLocations mods[2]; 59 extern int bristolMidiControl(int, int, int, int, int); 60 61 extern int modCallback(brightonWindow *, int, int, float); 62 extern int keyCallback(brightonWindow *, int, int, float); 63 #endif /* BRIGHTONKEYS_H */ 64 65