diff --git a/TODO b/TODO index cc1ec36..3d3fc4c 100644 --- a/TODO +++ b/TODO @@ -1,8 +1,6 @@ --make complete gui --effects level +-make complete gui (expression pedal settings, usb settings, effect level, preset level) -handling presets (saving, exporting to xml patches) -buildsystem (install knob.png to share dir, don't use inline knob pixbuf) --add expression pedal settings to gui -various fixes to MIDI IN messages handling -guess device port when user doesn't explicitly provide it (don't use hardcoded "hw:1,0,0") -optimizations diff --git a/gdigi.h b/gdigi.h index bb4268a..62ec793 100644 --- a/gdigi.h +++ b/gdigi.h @@ -567,76 +567,81 @@ enum { #define LIBRARY_TONE 8704 #define LIBRARY_EFFECTS 8705 +#define EFFECTS_LEVEL 8706 #define LIBRARY_POSITION 25 -/* LIBRARY_TONE valid options */ -#define TONE_LIB_OVERDRIVE 1793 -#define TONE_LIB_ROCK1 1794 -#define TONE_LIB_ROCK2 1795 -#define TONE_LIB_BLUES1 1796 -#define TONE_LIB_BLUES2 1797 -#define TONE_LIB_METAL1 1798 -#define TONE_LIB_METAL2 1799 -#define TONE_LIB_COUNTRY1 1800 -#define TONE_LIB_COUNTRY2 1801 -#define TONE_LIB_WARM_DRIVE 1802 -#define TONE_LIB_CRUNCH 1803 -#define TONE_LIB_TEXAS_TONE 1804 -#define TONE_LIB_ROCKABILLY 1805 -#define TONE_LIB_SOLO1 1806 -#define TONE_LIB_SOLO2 1807 -#define TONE_LIB_ROCKWAH 1808 -#define TONE_LIB_CHUNKY 1809 -#define TONE_LIB_SMOOTH 1810 -#define TONE_LIB_HEAVY 1811 -#define TONE_LIB_CLEAN1 1812 -#define TONE_LIB_CLEAN2 1813 -#define TONE_LIB_BRITISH1 1814 -#define TONE_LIB_BRITISH2 1815 -#define TONE_LIB_AMERICAN1 1816 -#define TONE_LIB_AMERICAN2 1817 -#define TONE_LIB_TUBE_DRIVE 1818 -#define TONE_LIB_DISTORTION 1819 -#define TONE_LIB_SCOOPED 1820 -#define TONE_LIB_PUNCHY 1821 -#define TONE_LIB_BRIGHT_CLEAN 1822 -/* setting LIBRARY_TONE to this option seems to crash device */ -#define TONE_LIB_CUSTOM 1792 +enum { + TONE_LIB_OVERDRIVE = 1793, + TONE_LIB_ROCK1 = 1794, + TONE_LIB_ROCK2 = 1795, + TONE_LIB_BLUES1 = 1796, + TONE_LIB_BLUES2 = 1797, + TONE_LIB_METAL1 = 1798, + TONE_LIB_METAL2 = 1799, + TONE_LIB_COUNTRY1 = 1800, + TONE_LIB_COUNTRY2 = 1801, + TONE_LIB_WARM_DRIVE = 1802, + TONE_LIB_CRUNCH = 1803, + TONE_LIB_TEXAS_TONE = 1804, + TONE_LIB_ROCKABILLY = 1805, + TONE_LIB_SOLO1 = 1806, + TONE_LIB_SOLO2 = 1807, + TONE_LIB_ROCKWAH = 1808, + TONE_LIB_CHUNKY = 1809, + TONE_LIB_SMOOTH = 1810, + TONE_LIB_HEAVY = 1811, + TONE_LIB_CLEAN1 = 1812, + TONE_LIB_CLEAN2 = 1813, + TONE_LIB_BRITISH1 = 1814, + TONE_LIB_BRITISH2 = 1815, + TONE_LIB_AMERICAN1 = 1816, + TONE_LIB_AMERICAN2 = 1817, + TONE_LIB_TUBE_DRIVE = 1818, + TONE_LIB_DISTORTION = 1819, + TONE_LIB_SCOOPED = 1820, + TONE_LIB_PUNCHY = 1821, + TONE_LIB_BRIGHT_CLEAN = 1822, -/* LIBRARY_EFFECTS valid options */ -#define EFFECTS_LIB_CHORUS 1857 -#define EFFECTS_LIB_PHASER 1858 -#define EFFECTS_LIB_FLANGER 1859 -#define EFFECTS_LIB_PITCH 1860 -#define EFFECTS_LIB_TREMOLO 1861 -#define EFFECTS_LIB_ROTARY 1862 -#define EFFECTS_LIB_ENVELOPE 1863 -#define EFFECTS_LIB_DIGITAL 1864 -#define EFFECTS_LIB_ANALOG 1865 -#define EFFECTS_LIB_PONG 1866 -#define EFFECTS_LIB_MOD 1867 -#define EFFECTS_LIB_TAPE 1868 -#define EFFECTS_LIB_HALL 1869 -#define EFFECTS_LIB_PLATE 1870 -#define EFFECTS_LIB_SPRING 1871 -#define EFFECTS_LIB_CHORUS_DIGITAL 1872 -#define EFFECTS_LIB_CHORUS_DELAY_REVERB 1873 -#define EFFECTS_LIB_FLANGER_ANALOG 1874 -#define EFFECTS_LIB_PHASER_TAPE 1875 -#define EFFECTS_LIB_PHASER_MOD 1876 -#define EFFECTS_LIB_PHASER_ROOM 1877 -#define EFFECTS_LIB_DIGITAL_HALL 1878 -#define EFFECTS_LIB_ANALOG_SPRING 1879 -#define EFFECTS_LIB_CHORUS_HALL 1880 -#define EFFECTS_LIB_PONG_HALL 1881 -#define EFFECTS_LIB_TAPE_SPRING 1882 -#define EFFECTS_LIB_TREMOLO_TAPE 1883 -#define EFFECTS_LIB_PITCH_DIGITAL 1884 -#define EFFECTS_LIB_MOD_PLATE 1885 -#define EFFECTS_LIB_ROTARY_TAPE 1886 -/* setting EFFECTS_LIBRARY to this option seems to crash device */ -#define EFFECTS_LIB_CUSTOM 1856 + /* setting LIBRARY_TONE to this option seems to crash device */ + TONE_LIB_CUSTOM = 1792 +}; + +enum { + EFFECTS_LIB_CHORUS = 1857, + EFFECTS_LIB_PHASER = 1858, + EFFECTS_LIB_FLANGER = 1859, + EFFECTS_LIB_PITCH = 1860, + EFFECTS_LIB_TREMOLO = 1861, + EFFECTS_LIB_ROTARY = 1862, + EFFECTS_LIB_ENVELOPE = 1863, + EFFECTS_LIB_DIGITAL = 1864, + EFFECTS_LIB_ANALOG = 1865, + EFFECTS_LIB_PONG = 1866, + EFFECTS_LIB_MOD = 1867, + EFFECTS_LIB_TAPE = 1868, + EFFECTS_LIB_HALL = 1869, + EFFECTS_LIB_PLATE = 1870, + EFFECTS_LIB_SPRING = 1871, + EFFECTS_LIB_CHORUS_DIGITAL = 1872, + EFFECTS_LIB_CHORUS_DELAY_REVERB = 1873, + EFFECTS_LIB_FLANGER_ANALOG = 1874, + EFFECTS_LIB_PHASER_TAPE = 1875, + EFFECTS_LIB_PHASER_MOD = 1876, + EFFECTS_LIB_PHASER_ROOM = 1877, + EFFECTS_LIB_DIGITAL_HALL = 1878, + EFFECTS_LIB_ANALOG_SPRING = 1879, + EFFECTS_LIB_CHORUS_HALL = 1880, + EFFECTS_LIB_PONG_HALL = 1881, + EFFECTS_LIB_TAPE_SPRING = 1882, + EFFECTS_LIB_TREMOLO_TAPE = 1883, + EFFECTS_LIB_PITCH_DIGITAL = 1884, + EFFECTS_LIB_MOD_PLATE = 1885, + EFFECTS_LIB_ROTARY_TAPE = 1886, + + /* setting EFFECTS_LIBRARY to this option seems to crash device */ + EFFECTS_LIB_CUSTOM = 1856 +}; #define USB_POSITION 0 #define USB_AUDIO_PLAYBACK_MIX 12297