revise set_eq_mid_hz, set_eq_treb_hz and set_delay_time

This commit is contained in:
Tomasz Moń
2009-02-23 18:02:19 +01:00
parent 2d4798abf7
commit 5cf9c021d8
2 changed files with 10 additions and 92 deletions

98
gdigi.c
View File

@@ -368,47 +368,9 @@ void set_eq_mid(int x)
void set_eq_mid_hz(int x) void set_eq_mid_hz(int x)
{ {
if (x <= 0x7F) { if (x <= 0x7F) {
static char set_hz[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x20, 0x0C, 0x06, 0x18, 0x00 /* value */, 0x00 /* checksum */, 0xF7}; set_option(EQ_MID_HZ, EQ_POSITION, x);
set_hz[13] = x;
set_hz[14] = calculate_checksum(set_hz, sizeof(set_hz), 14) ^ 0x07;
send_data(set_hz, sizeof(set_hz));
} else { } else {
x -= 0x80; set_higher_option(EQ_MID_HZ, EQ_POSITION, x);
if (x <= 0x7F) {
static char set_hz[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x2C, 0x0C, 0x06, 0x18, 0x01, 0x00 /* value */, 0x00 /* checksum */, 0xF7};
set_hz[14] = x;
set_hz[15] = calculate_checksum(set_hz, sizeof(set_hz), 15) ^ 0x07;
send_data(set_hz, sizeof(set_hz));
} else {
x -= 0x80;
int a, b, c;
a = 0x28;
b = 0x01;
c = 0;
while (x > 0x7F) {
c++;
if ((c % 2) == 0) {
a ^= 0x02; b++;
} else {
a ^= 0x02;
}
x -= 0x80;
}
static char set_hz[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x00 /* a */, 0x0C, 0x06, 0x18, 0x02, 0x00 /* b */, 0x00 /* value */, 0x00 /* checksum */, 0xF7};
set_hz[9] = a;
set_hz[14] = b;
set_hz[15] = x;
set_hz[16] = calculate_checksum(set_hz, sizeof(set_hz), 16) ^ 0x07;
send_data(set_hz, sizeof(set_hz));
}
} }
} }
@@ -425,47 +387,9 @@ void set_eq_treble(int x)
void set_eq_treb_hz(int x) void set_eq_treb_hz(int x)
{ {
if (x <= 0x7F) { if (x <= 0x7F) {
static char set_hz[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x20, 0x0C, 0x0B, 0x18, 0x00 /* value */, 0x00 /* checksum */, 0xF7}; set_option(EQ_TREBLE_HZ, EQ_POSITION, x);
set_hz[13] = x;
set_hz[14] = calculate_checksum(set_hz, sizeof(set_hz), 14) ^ 0x07;
send_data(set_hz, sizeof(set_hz));
} else { } else {
x -= 0x80; set_higher_option(EQ_TREBLE_HZ, EQ_POSITION, x);
if (x <= 0x7F) {
static char set_hz[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x2C, 0x0C, 0x0B, 0x18, 0x01, 0x00 /* value */, 0x00 /* checksum */, 0xF7};
set_hz[14] = x;
set_hz[15] = calculate_checksum(set_hz, sizeof(set_hz), 15) ^ 0x07;
send_data(set_hz, sizeof(set_hz));
} else {
x -= 0x80;
int a, b, c;
a = 0x28;
b = 0x01;
c = 0;
while (x > 0x7F) {
c++;
if ((c % 2) == 0) {
a ^= 0x02; b++;
} else {
a ^= 0x02;
}
x -= 0x80;
}
static char set_hz[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x00 /* a */, 0x0C, 0x0B, 0x18, 0x02, 0x00 /* b */, 0x00 /* value */, 0x00 /* checksum */, 0xF7};
set_hz[9] = a;
set_hz[14] = b;
set_hz[15] = x;
set_hz[16] = calculate_checksum(set_hz, sizeof(set_hz), 16) ^ 0x07;
send_data(set_hz, sizeof(set_hz));
}
} }
} }
@@ -509,19 +433,9 @@ void set_chorusfx_on_off(gboolean val)
void set_delay_time(int x) void set_delay_time(int x)
{ {
if (x <= 0x7F) { if (x <= 0x7F) {
static char set_time[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x00, 0x07, 0x60, 0x0F, 0x00 /* value */, 0x00 /* checksum */, 0xF7}; set_option(DELAY_TIME, DELAY_POSITION, x);
set_time[13] = x;
set_time[14] = calculate_checksum(set_time, sizeof(set_time), 14) ^ 0x07;
send_data(set_time, sizeof(set_time));
} else { } else {
static char set_time[] = {0x00, 0xF0, 0x00, 0x00, 0x10, 0x00, 0x5E, 0x02, 0x41, 0x0C, 0x07, 0x60, 0x0F, 0x01, 0x00 /* value */, 0x00 /* checksum */, 0xF7}; set_higher_option(DELAY_TIME, DELAY_POSITION, x);
set_time[14] = x - 0x80;
set_time[15] = calculate_checksum(set_time, sizeof(set_time), 15) ^ 0x07;
send_data(set_time, sizeof(set_time));
} }
} }

View File

@@ -140,7 +140,9 @@ enum {
#define EQ_BASS 3203 #define EQ_BASS 3203
#define EQ_MID 3204 #define EQ_MID 3204
#define EQ_MID_HZ 3206
#define EQ_TREBLE 3205 #define EQ_TREBLE 3205
#define EQ_TREBLE_HZ 3211
enum { enum {
NOISEGATE_GATE = 768, NOISEGATE_GATE = 768,
@@ -340,6 +342,8 @@ enum {
#define DELAY_ON_OFF 1857 #define DELAY_ON_OFF 1857
#define DELAY_POSITION 15 #define DELAY_POSITION 15
#define DELAY_TIME 1888
#define ANALOG_LEVEL 1860 #define ANALOG_LEVEL 1860
#define ANALOG_REPEATS 1863 #define ANALOG_REPEATS 1863