add set_eq_mid_hz and set_eq_treb_hz
This commit is contained in:
1
TODO
1
TODO
@@ -1,7 +1,6 @@
|
|||||||
-figure out all magic commands
|
-figure out all magic commands
|
||||||
-fix usb handling code
|
-fix usb handling code
|
||||||
-make complete gui
|
-make complete gui
|
||||||
-figure out setting EQ mid Hz and EQ treb Hz
|
|
||||||
-amp/cabinet models
|
-amp/cabinet models
|
||||||
-expression pedal options
|
-expression pedal options
|
||||||
-audio setup options
|
-audio setup options
|
||||||
|
|||||||
146
gdigi.c
146
gdigi.c
@@ -26,27 +26,28 @@ char buf[255];
|
|||||||
struct usb_device *dev;
|
struct usb_device *dev;
|
||||||
struct usb_dev_handle *handle;
|
struct usb_dev_handle *handle;
|
||||||
|
|
||||||
static char magic[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x7F, 0x7F, 0x04, 0x7F, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x06, 0x6E, 0xF7, 0x00}; /* causes COMAND to be displayed on device? */
|
/*
|
||||||
static char presets_user[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x21, 0x00, 0x07, 0x01, 0x6C, 0xF7}; /* this command seems to query user presets? */
|
static char magic[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x7F, 0x7F, 0x04, 0x7F, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x06, 0x6E, 0xF7, 0x00}; // causes COMAND to be displayed on device?
|
||||||
static char presets_system[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x21, 0x00, 0x07, 0x00, 0x6D, 0xF7}; /* this command seems to query system presets? */
|
static char presets_user[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x21, 0x00, 0x07, 0x01, 0x6C, 0xF7}; // this command seems to query user presets?
|
||||||
|
static char presets_system[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x21, 0x00, 0x07, 0x00, 0x6D, 0xF7}; // this command seems to query system presets?
|
||||||
|
|
||||||
static char magic3[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x2A, 0x00, 0x04, 0x04, 0x00, 0x62, 0x05, 0xF7, 0x00, 0x00}; /* seems to query active preset name */
|
|
||||||
static char magic4[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x2B, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic4[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x2B, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
static char magic5[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic5[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
|
|
||||||
|
|
||||||
/* xedit calls those after calling hbsc pickup change */
|
// xedit calls those after calling hbsc pickup change
|
||||||
static char magic12[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic12[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
static char magic13[] = {0x07, 0x41, 0x73, 0xF7, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x7E, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic13[] = {0x07, 0x41, 0x73, 0xF7, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x7E, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
|
|
||||||
/* xedit calls those after calling schb pickup change */
|
// xedit calls those after calling schb pickup change
|
||||||
static char magic22[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic22[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
static char magic23[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic23[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
static char magic24[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3B, 0x00, 0x04, 0x00, 0x00, 0x00, 0x06, 0x6E, 0xF7, 0x00};
|
static char magic24[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3B, 0x00, 0x04, 0x00, 0x00, 0x00, 0x06, 0x6E, 0xF7, 0x00};
|
||||||
|
|
||||||
/* seems to be called after changing dist type */
|
// seems to be called after changing dist type
|
||||||
static char magic8[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
static char magic8[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x3A, 0x00, 0x04, 0x00, 0x01, 0x77, 0x05, 0xF7, 0x00, 0x00};
|
||||||
/* X-edit also calls 2 different commands, but those seems to vary each time */
|
// X-edit also calls 2 different commands, but those seems to vary each time
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
calculate checksum
|
calculate checksum
|
||||||
@@ -82,6 +83,8 @@ int read_device(struct usb_dev_handle *handle, int bytes)
|
|||||||
|
|
||||||
void check_preset(struct usb_dev_handle *handle)
|
void check_preset(struct usb_dev_handle *handle)
|
||||||
{
|
{
|
||||||
|
static char magic3[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x2A, 0x00, 0x04, 0x04, 0x00, 0x62, 0x05, 0xF7, 0x00, 0x00}; // seems to query active preset
|
||||||
|
|
||||||
int i;
|
int i;
|
||||||
i = usb_bulk_write(handle, 4, magic3, sizeof(magic3), TIMEOUT);
|
i = usb_bulk_write(handle, 4, magic3, sizeof(magic3), TIMEOUT);
|
||||||
|
|
||||||
@@ -413,6 +416,25 @@ void set_preset_level(struct usb_dev_handle *handle, int level)
|
|||||||
printf("wrote: %d\n", i);
|
printf("wrote: %d\n", i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void set_eq_type(struct usb_dev_handle *handle, int type)
|
||||||
|
{
|
||||||
|
static char set_eq[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x2A, 0x04, 0x0C, 0x02, 0x18, 0x04, 0x02, 0x05, 0x00 /* type1 */, 0x06, 0x00 /* checksum */, 0xF7, 0x00};
|
||||||
|
|
||||||
|
switch (type) {
|
||||||
|
case EQ_TYPE_BRIGHT: set_eq[19] = 0x42; break;
|
||||||
|
case EQ_TYPE_MIDBOOST: set_eq[19] = 0x40; break;
|
||||||
|
case EQ_TYPE_SCOOP: set_eq[19] = 0x41; break;
|
||||||
|
case EQ_TYPE_WARM: set_eq[19] = 0x43; break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_eq[21] = calculate_checksum(set_eq, sizeof(set_eq), 21) ^ 0x05;
|
||||||
|
|
||||||
|
int i;
|
||||||
|
i = usb_bulk_write(handle, 4, set_eq, sizeof(set_eq), TIMEOUT);
|
||||||
|
printf("wrote: %d\n", i);
|
||||||
|
}
|
||||||
|
|
||||||
/* x = 0 to 99 */
|
/* x = 0 to 99 */
|
||||||
void set_eq_gain(struct usb_dev_handle *handle, int x)
|
void set_eq_gain(struct usb_dev_handle *handle, int x)
|
||||||
{
|
{
|
||||||
@@ -465,6 +487,60 @@ void set_eq_mid(struct usb_dev_handle *handle, int x)
|
|||||||
printf("wrote: %d\n", i);
|
printf("wrote: %d\n", i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
x = 0 to 4700 (which transforms into 300-5000 Hz)
|
||||||
|
device itself will accept higher value, but X-Edit allows only 300-5000Hz
|
||||||
|
*/
|
||||||
|
void set_eq_mid_hz(struct usb_dev_handle *handle, int x)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if (x <= 0x7F) {
|
||||||
|
static char set_hz[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x20, 0x04, 0x0C, 0x06, 0x18, 0x07, 0x00 /* value */, 0x00 /* checksum */, 0xF7};
|
||||||
|
|
||||||
|
set_hz[17] = x;
|
||||||
|
set_hz[18] = calculate_checksum(set_hz, sizeof(set_hz), 18);
|
||||||
|
|
||||||
|
i = usb_bulk_write(handle, 4, set_hz, sizeof(set_hz), TIMEOUT);
|
||||||
|
} else {
|
||||||
|
x -= 0x80;
|
||||||
|
if (x <= 0x7F) {
|
||||||
|
static char set_hz[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x2C, 0x04, 0x0C, 0x06, 0x18, 0x04, 0x01, 0x00 /* value */, 0x00 /* checksum */, 0x05, 0xF7, 0x00, 0x00};
|
||||||
|
|
||||||
|
set_hz[18] = x;
|
||||||
|
set_hz[19] = x^0x32;
|
||||||
|
|
||||||
|
i = usb_bulk_write(handle, 4, set_hz, sizeof(set_hz), TIMEOUT);
|
||||||
|
} 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[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x00 /* a */, 0x04, 0x0C, 0x06, 0x18, 0x04, 0x02, 0x00 /* b */, 0x00 /* value */, 0x06, 0x00 /* checksum */, 0xF7, 0x00};
|
||||||
|
|
||||||
|
set_hz[11] = a;
|
||||||
|
set_hz[18] = b;
|
||||||
|
set_hz[19] = x;
|
||||||
|
set_hz[21] = a^b^x^0x1B^set_hz[14];
|
||||||
|
|
||||||
|
i = usb_bulk_write(handle, 4, set_hz, sizeof(set_hz), TIMEOUT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
printf("wrote: %d\n", i);
|
||||||
|
}
|
||||||
|
|
||||||
/* x = 0x00 (-12dB) to 0x18 (12dB) */
|
/* x = 0x00 (-12dB) to 0x18 (12dB) */
|
||||||
void set_eq_treble(struct usb_dev_handle *handle, int x)
|
void set_eq_treble(struct usb_dev_handle *handle, int x)
|
||||||
{
|
{
|
||||||
@@ -478,6 +554,60 @@ void set_eq_treble(struct usb_dev_handle *handle, int x)
|
|||||||
printf("wrote: %d\n", i);
|
printf("wrote: %d\n", i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
x = 0 to 7500 (which transforms into 500-8000 Hz)
|
||||||
|
device itself will accept higher value, but X-Edit allows only 500-8000Hz
|
||||||
|
*/
|
||||||
|
void set_eq_treb_hz(struct usb_dev_handle *handle, int x)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if (x <= 0x7F) {
|
||||||
|
static char set_hz[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x20, 0x04, 0x0C, 0x0B, 0x18, 0x07, 0x00 /* value */, 0x00 /* checksum */, 0xF7};
|
||||||
|
|
||||||
|
set_hz[17] = x;
|
||||||
|
set_hz[18] = calculate_checksum(set_hz, sizeof(set_hz), 18);
|
||||||
|
|
||||||
|
i = usb_bulk_write(handle, 4, set_hz, sizeof(set_hz), TIMEOUT);
|
||||||
|
} else {
|
||||||
|
x -= 0x80;
|
||||||
|
if (x <= 0x7F) {
|
||||||
|
static char set_hz[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x2C, 0x04, 0x0C, 0x0B, 0x18, 0x04, 0x01, 0x00 /* value */, 0x00 /* checksum */, 0x05, 0xF7, 0x00, 0x00};
|
||||||
|
|
||||||
|
set_hz[18] = x;
|
||||||
|
set_hz[19] = x^0x3F;
|
||||||
|
|
||||||
|
i = usb_bulk_write(handle, 4, set_hz, sizeof(set_hz), TIMEOUT);
|
||||||
|
} 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[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x00 /* a */, 0x04, 0x0C, 0x0B, 0x18, 0x04, 0x02, 0x00 /* b */, 0x00 /* value */, 0x06, 0x00 /* checksum */, 0xF7, 0x00};
|
||||||
|
|
||||||
|
set_hz[11] = a;
|
||||||
|
set_hz[18] = b;
|
||||||
|
set_hz[19] = x;
|
||||||
|
set_hz[21] = a^b^x^0x1B^set_hz[14];
|
||||||
|
|
||||||
|
i = usb_bulk_write(handle, 4, set_hz, sizeof(set_hz), TIMEOUT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
printf("wrote: %d\n", i);
|
||||||
|
}
|
||||||
|
|
||||||
void set_eq_on_off(struct usb_dev_handle *handle, gboolean val)
|
void set_eq_on_off(struct usb_dev_handle *handle, gboolean val)
|
||||||
{
|
{
|
||||||
static char set_eq[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x20, 0x04, 0x0C, 0x0C, 0x18, 0x07, 0x00 /* on/off */, 0x00 /* checksum */, 0xF7};
|
static char set_eq[] = {0x04, 0xF0, 0x00, 0x00, 0x04, 0x10, 0x00, 0x5E, 0x04, 0x02, 0x41, 0x20, 0x04, 0x0C, 0x0C, 0x18, 0x07, 0x00 /* on/off */, 0x00 /* checksum */, 0xF7};
|
||||||
|
|||||||
10
gdigi.h
10
gdigi.h
@@ -93,6 +93,13 @@ enum {
|
|||||||
#define DIST_MP_TONE 0x0E
|
#define DIST_MP_TONE 0x0E
|
||||||
#define DIST_MP_VOLUME 0x0F
|
#define DIST_MP_VOLUME 0x0F
|
||||||
|
|
||||||
|
enum {
|
||||||
|
EQ_TYPE_BRIGHT = 0,
|
||||||
|
EQ_TYPE_MIDBOOST,
|
||||||
|
EQ_TYPE_SCOOP,
|
||||||
|
EQ_TYPE_WARM
|
||||||
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
NOISEGATE_GATE = 0,
|
NOISEGATE_GATE = 0,
|
||||||
NOISEGATE_SWELL
|
NOISEGATE_SWELL
|
||||||
@@ -356,11 +363,14 @@ void set_dist_type(struct usb_dev_handle *handle, int type);
|
|||||||
void set_dist_option(struct usb_dev_handle *handle, char option, int value);
|
void set_dist_option(struct usb_dev_handle *handle, char option, int value);
|
||||||
void set_dist_on_off(struct usb_dev_handle *handle, gboolean val);
|
void set_dist_on_off(struct usb_dev_handle *handle, gboolean val);
|
||||||
void set_preset_level(struct usb_dev_handle *handle, int level);
|
void set_preset_level(struct usb_dev_handle *handle, int level);
|
||||||
|
void set_eq_type(struct usb_dev_handle *handle, int type);
|
||||||
void set_eq_gain(struct usb_dev_handle *handle, int x);
|
void set_eq_gain(struct usb_dev_handle *handle, int x);
|
||||||
void set_eq_level(struct usb_dev_handle *handle, int x);
|
void set_eq_level(struct usb_dev_handle *handle, int x);
|
||||||
void set_eq_bass(struct usb_dev_handle *handle, int x);
|
void set_eq_bass(struct usb_dev_handle *handle, int x);
|
||||||
void set_eq_mid(struct usb_dev_handle *handle, int x);
|
void set_eq_mid(struct usb_dev_handle *handle, int x);
|
||||||
|
void set_eq_mid_hz(struct usb_dev_handle *handle, int x);
|
||||||
void set_eq_treble(struct usb_dev_handle *handle, int x);
|
void set_eq_treble(struct usb_dev_handle *handle, int x);
|
||||||
|
void set_eq_treb_hz(struct usb_dev_handle *handle, int x);
|
||||||
void set_eq_on_off(struct usb_dev_handle *handle, gboolean val);
|
void set_eq_on_off(struct usb_dev_handle *handle, gboolean val);
|
||||||
void set_noisegate_type(struct usb_dev_handle *handle, int type);
|
void set_noisegate_type(struct usb_dev_handle *handle, int type);
|
||||||
void set_gate_option(struct usb_dev_handle *handle, char option, int x);
|
void set_gate_option(struct usb_dev_handle *handle, char option, int x);
|
||||||
|
|||||||
13
gui.c
13
gui.c
@@ -151,6 +151,10 @@ static SettingsWidget eq_widgets[] = {
|
|||||||
{"EQ bass", set_eq_bass, NULL, 0.0, 24.0},
|
{"EQ bass", set_eq_bass, NULL, 0.0, 24.0},
|
||||||
{"EQ mid", set_eq_mid, NULL, 0.0, 24.0},
|
{"EQ mid", set_eq_mid, NULL, 0.0, 24.0},
|
||||||
{"EQ treble", set_eq_treble, NULL, 0.0, 24.0},
|
{"EQ treble", set_eq_treble, NULL, 0.0, 24.0},
|
||||||
|
// TODO: make this display propertly (display range 300 to 5000)
|
||||||
|
{"EQ mid Hz", set_eq_mid_hz, NULL, 0.0, 4700.0},
|
||||||
|
// TODO: make this display propertly (display range 500 to 8000)
|
||||||
|
{"EQ treb Hz", set_eq_treb_hz, NULL, 0.0, 7500.0},
|
||||||
};
|
};
|
||||||
|
|
||||||
static SettingsWidget noisegate_gate_widgets[] = {
|
static SettingsWidget noisegate_gate_widgets[] = {
|
||||||
@@ -430,7 +434,9 @@ typedef struct {
|
|||||||
} WidgetContainer;
|
} WidgetContainer;
|
||||||
|
|
||||||
static WidgetContainer wah_container[] = {
|
static WidgetContainer wah_container[] = {
|
||||||
{-1, NULL, NULL, wah_widgets, G_N_ELEMENTS(wah_widgets), NULL},
|
{WAH_TYPE_CRY, "Cry wah", set_wah_type, wah_widgets, G_N_ELEMENTS(wah_widgets), NULL},
|
||||||
|
{WAH_TYPE_FULLRANGE, "Fullrange wah", set_wah_type, wah_widgets, G_N_ELEMENTS(wah_widgets), NULL},
|
||||||
|
{WAH_TYPE_CLYDE, "Clyde wah", set_wah_type, wah_widgets, G_N_ELEMENTS(wah_widgets), NULL},
|
||||||
};
|
};
|
||||||
|
|
||||||
static WidgetContainer comp_container[] = {
|
static WidgetContainer comp_container[] = {
|
||||||
@@ -499,7 +505,10 @@ static WidgetContainer reverb_container[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static WidgetContainer eq_container[] = {
|
static WidgetContainer eq_container[] = {
|
||||||
{-1, NULL, NULL, eq_widgets, G_N_ELEMENTS(eq_widgets), NULL},
|
{EQ_TYPE_BRIGHT, "Bright", set_eq_type, eq_widgets, G_N_ELEMENTS(eq_widgets), NULL},
|
||||||
|
{EQ_TYPE_MIDBOOST, "Mid Boost", set_eq_type, eq_widgets, G_N_ELEMENTS(eq_widgets), NULL},
|
||||||
|
{EQ_TYPE_SCOOP, "Scoop", set_eq_type, eq_widgets, G_N_ELEMENTS(eq_widgets), NULL},
|
||||||
|
{EQ_TYPE_WARM, "Warm", set_eq_type, eq_widgets, G_N_ELEMENTS(eq_widgets), NULL},
|
||||||
};
|
};
|
||||||
|
|
||||||
void combo_box_changed_cb(GtkComboBox *widget, WidgetContainer *widgets)
|
void combo_box_changed_cb(GtkComboBox *widget, WidgetContainer *widgets)
|
||||||
|
|||||||
9
tests.c
9
tests.c
@@ -228,6 +228,11 @@ void test_eq(struct usb_dev_handle *handle)
|
|||||||
{
|
{
|
||||||
int x;
|
int x;
|
||||||
|
|
||||||
|
set_eq_type(handle, EQ_TYPE_BRIGHT);
|
||||||
|
set_eq_type(handle, EQ_TYPE_MIDBOOST);
|
||||||
|
set_eq_type(handle, EQ_TYPE_SCOOP);
|
||||||
|
set_eq_type(handle, EQ_TYPE_WARM);
|
||||||
|
|
||||||
for (x=0; x<=99; x++)
|
for (x=0; x<=99; x++)
|
||||||
set_eq_gain(handle, x);
|
set_eq_gain(handle, x);
|
||||||
for (x=0; x<=99; x++)
|
for (x=0; x<=99; x++)
|
||||||
@@ -237,8 +242,12 @@ void test_eq(struct usb_dev_handle *handle)
|
|||||||
set_eq_bass(handle, x);
|
set_eq_bass(handle, x);
|
||||||
for (x=0; x<=0x18; x++)
|
for (x=0; x<=0x18; x++)
|
||||||
set_eq_mid(handle, x);
|
set_eq_mid(handle, x);
|
||||||
|
for (x=0; x<=4700; x++)
|
||||||
|
set_eq_mid_hz(handle, x);
|
||||||
for (x=0; x<=0x18; x++)
|
for (x=0; x<=0x18; x++)
|
||||||
set_eq_treble(handle, x);
|
set_eq_treble(handle, x);
|
||||||
|
for (x=0; x<=7500; x++)
|
||||||
|
set_eq_treb_hz(handle, x);
|
||||||
|
|
||||||
set_eq_on_off(handle, TRUE);
|
set_eq_on_off(handle, TRUE);
|
||||||
set_eq_on_off(handle, FALSE);
|
set_eq_on_off(handle, FALSE);
|
||||||
|
|||||||
Reference in New Issue
Block a user