2026-08-26 07:26:58 +08:00
|
|
|
|
#ifndef __MIDI_TABLES_H__
|
|
|
|
|
|
#define __MIDI_TABLES_H__
|
|
|
|
|
|
|
|
|
|
|
|
#include "includes.h"
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
|
|
uint8_t Midi_6;
|
|
|
|
|
|
uint8_t Midi_5;
|
|
|
|
|
|
uint8_t Midi_4;
|
|
|
|
|
|
uint8_t Midi_3;
|
|
|
|
|
|
uint8_t Midi_2;
|
|
|
|
|
|
uint8_t Midi_1;
|
|
|
|
|
|
char* name;
|
|
|
|
|
|
} STRING_MIDI;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
|
|
uint8_t type;
|
|
|
|
|
|
uint8_t midi;
|
|
|
|
|
|
uint8_t PitchOffset;
|
|
|
|
|
|
uint8_t ChordOffset;
|
|
|
|
|
|
} CHORD_TYPE_INDEX;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* 指板和弦指型映射表 */
|
|
|
|
|
|
extern CHORD_TYPE_INDEX chord_type_index_map[22];
|
|
|
|
|
|
|
|
|
|
|
|
/* MIDI 和弦音符表(7 个根音 × 9 种和弦类型) */
|
|
|
|
|
|
extern STRING_MIDI MIDI_1[];
|
|
|
|
|
|
extern STRING_MIDI MIDI_2[];
|
|
|
|
|
|
extern STRING_MIDI MIDI_3[];
|
|
|
|
|
|
extern STRING_MIDI MIDI_4[];
|
|
|
|
|
|
extern STRING_MIDI MIDI_5[];
|
|
|
|
|
|
extern STRING_MIDI MIDI_6[];
|
|
|
|
|
|
extern STRING_MIDI MIDI_7[];
|
|
|
|
|
|
|
|
|
|
|
|
/* 风琴音色和弦表 */
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_1[];
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_2[];
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_3[];
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_4[];
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_5[];
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_6[];
|
|
|
|
|
|
extern const STRING_MIDI OrganMIDI_7[];
|
|
|
|
|
|
|
|
|
|
|
|
/* 和弦根音表索引 */
|
|
|
|
|
|
extern const STRING_MIDI *Chord_Midi_Table[7];
|
|
|
|
|
|
extern const STRING_MIDI *OrganChord_Midi_Table[7];
|
|
|
|
|
|
extern const uint8_t Timbre_index[5];
|
2026-10-08 12:15:08 +08:00
|
|
|
|
/* 开机不记忆:显示第 1 项,Bank1 Program 24(音色表 25 号)= Timbre_index[0] */
|
|
|
|
|
|
#define TIMBRE_BOOT_SLOT 0u
|
2026-08-26 07:26:58 +08:00
|
|
|
|
|
|
|
|
|
|
/* 当前使用的 MIDI 音符 */
|
|
|
|
|
|
extern STRING_MIDI USE_MIDI;
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* __MIDI_TABLES_H__ */
|