make set_chorusfx_on_off, set_delay_option and set_delay_on_off wrappers to set_option

This commit is contained in:
Tomasz Moń
2009-02-22 16:40:24 +01:00
parent e7ce11164b
commit 66c5a966a6
2 changed files with 24 additions and 46 deletions

32
gdigi.c
View File

@@ -692,17 +692,7 @@ void set_chorusfx_type(int type)
void set_chorusfx_on_off(gboolean val) void set_chorusfx_on_off(gboolean val)
{ {
static char set_chorus[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x00, 0x03, 0x01, 0x0E, 0x00 /* on/off */, 0x00 /* checksum */, 0xF7}; set_option(CHORUSFX_ON_OFF, CHORUSFX_POSITION, (val == TRUE) ? 1 : 0);
if (val == FALSE) { /* turn chorusfx off */
set_chorus[13] = 0;
} else { /* turn chorusfx on */
set_chorus[13] = 1;
}
set_chorus[14] = calculate_checksum(set_chorus, sizeof(set_chorus), 14) ^ 0x07;
send_data(set_chorus, sizeof(set_chorus));
} }
/* x = 0 to 139 */ /* x = 0 to 139 */
@@ -745,28 +735,12 @@ void set_delay_type(int type)
void set_delay_option(guint32 option, int x) void set_delay_option(guint32 option, int x)
{ {
static char set_option[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x00, 0x07, 0x00 /* option */, 0x0F, 0x00 /* value */, 0x00 /* checksum */, 0xF7}; set_option(option, DELAY_POSITION, x);
set_option[11] = option;
set_option[13] = x;
set_option[14] = calculate_checksum(set_option, sizeof(set_option), 14) ^ 0x07;
send_data(set_option, sizeof(set_option));
} }
void set_delay_on_off(gboolean val) void set_delay_on_off(gboolean val)
{ {
static char set_delay[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x00, 0x07, 0x41, 0x0F, 0x00 /* on/off */, 0x00 /* checksum */, 0xF7}; set_option(DELAY_ON_OFF, DELAY_POSITION, (val == TRUE) ? 1 : 0);
if (val == FALSE) { /* turn delay off */
set_delay[13] = 0;
} else { /* turn delay on */
set_delay[13] = 1;
}
set_delay[14] = calculate_checksum(set_delay, sizeof(set_delay), 14) ^ 0x07;
send_data(set_delay, sizeof(set_delay));
} }
/* x = 0 to 15 (predelay), otherwise 0 to 99 */ /* x = 0 to 15 (predelay), otherwise 0 to 99 */

38
gdigi.h
View File

@@ -134,6 +134,7 @@ enum {
CHORUS_TYPE_IPS CHORUS_TYPE_IPS
}; };
#define CHORUSFX_ON_OFF 769
#define CHORUSFX_POSITION 14 #define CHORUSFX_POSITION 14
#define CE_CHORUS_SPEED 837 #define CE_CHORUS_SPEED 837
@@ -286,27 +287,30 @@ enum {
DELAY_TYPE_TAPE DELAY_TYPE_TAPE
}; };
#define ANALOG_LEVEL 0x44 #define DELAY_ON_OFF 1857
#define ANALOG_REPEATS 0x47 #define DELAY_POSITION 15
#define DIGITAL_LEVEL 0x44 #define ANALOG_LEVEL 1860
#define DIGITAL_REPEATS 0x47 #define ANALOG_REPEATS 1863
#define DIGITAL_DUCKER_THRESH 0x61
#define DIGITAL_DUCKER_LEVEL 0x62
#define MODULATED_LEVEL 0x44 #define DIGITAL_LEVEL 1860
#define MODULATED_REPEATS 0x47 #define DIGITAL_REPEATS 1863
#define MODULATED_DEPTH 0x51 #define DIGITAL_DUCKER_THRESH 1889
#define DIGITAL_DUCKER_LEVEL 1890
#define PONG_LEVEL 0x44 #define MODULATED_LEVEL 1860
#define PONG_REPEATS 0x47 #define MODULATED_REPEATS 1863
#define PONG_DUCKER_THRESH 0x61 #define MODULATED_DEPTH 1873
#define PONG_DUCKER_LEVEL 0x62
#define TAPE_LEVEL 0x44 #define PONG_LEVEL 1860
#define TAPE_REPEATS 0x47 #define PONG_REPEATS 1863
#define TAPE_WOW 0x63 #define PONG_DUCKER_THRESH 1889
#define TAPE_FLUTTER 0x64 #define PONG_DUCKER_LEVEL 1890
#define TAPE_LEVEL 1860
#define TAPE_REPEATS 1863
#define TAPE_WOW 1891
#define TAPE_FLUTTER 1892
enum { enum {
REVERB_TYPE_TWIN = 0, REVERB_TYPE_TWIN = 0,