diff -Nru bristol-0.60.9/bin/bristoljackstats.c bristol-0.60.10/bin/bristoljackstats.c --- bristol-0.60.9/bin/bristoljackstats.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/bin/bristoljackstats.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bin/startBristol.in bristol-0.60.10/bin/startBristol.in --- bristol-0.60.9/bin/startBristol.in 2010-12-27 11:04:26.000000000 +0000 +++ bristol-0.60.10/bin/startBristol.in 2012-04-27 11:07:18.000000000 +0000 @@ -238,6 +238,9 @@ if [ $index = "--verbose" ]; then verbose=1 fi + if [ $index = "-version" ]; then + HELP=3 + fi if [ $index = "-V" ]; then HELP=3 fi Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/arp2600.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/arp2600.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/axxephat.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/axxephat.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/axxe.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/axxe.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/BME700mods.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/BME700mods.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/BME700.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/BME700.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/junoshade.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/junoshade.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/juno.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/juno.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/memMoogshade.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/memMoogshade.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/memMoog.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/memMoog.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/mini.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/mini.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/obxmod.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/obxmod.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/obx.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/obx.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/odyssey2.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/odyssey2.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/odysseymem.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/odysseymem.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/odyssey.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/odyssey.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/poly6.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/poly6.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/pro1.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/pro1.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/prophet52.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/prophet52.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/prophet.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/prophet.xpm.gz differ Binary files /tmp/KtvNzUzD9S/bristol-0.60.9/bitmaps/blueprints/sonic6.xpm.gz and /tmp/Wih4UpKyS3/bristol-0.60.10/bitmaps/blueprints/sonic6.xpm.gz differ diff -Nru bristol-0.60.9/brighton/brightonArp2600.c bristol-0.60.10/brighton/brightonArp2600.c --- bristol-0.60.9/brighton/brightonArp2600.c 2011-10-24 08:39:43.000000000 +0000 +++ bristol-0.60.10/brighton/brightonArp2600.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonAxxe.c bristol-0.60.10/brighton/brightonAxxe.c --- bristol-0.60.9/brighton/brightonAxxe.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonAxxe.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -51,6 +51,31 @@ #define CDIFF 32 #define CDIFF2 12 +#define PC0 118 +#define PC1 (PC0 + CDIFF) +#define PC2 (PC1 + CDIFF) +#define PC3 (PC2 + CDIFF) +#define PC4 (PC3 + CDIFF) +#define PC5 (PC4 + CDIFF) +#define PC6 (PC5 + CDIFF + CDIFF2) +#define PC7 (PC6 + CDIFF) +#define PC8 (PC7 + CDIFF) +#define PC9 (PC8 + CDIFF + CDIFF2) +#define PC10 (PC9 + CDIFF + CDIFF2) +#define PC11 (PC10 + CDIFF) +#define PC12 (PC11 + CDIFF) +#define PC13 (PC12 + CDIFF + CDIFF2) +#define PC14 (PC13 + CDIFF) +#define PC15 (PC14 + CDIFF + CDIFF2) +#define PC16 (PC15 + CDIFF) +#define PC17 (PC16 + CDIFF) +#define PC18 (PC17 + CDIFF + CDIFF2) +#define PC19 (PC18 + CDIFF) +#define PC20 (PC19 + CDIFF + CDIFF2) +#define PC21 (PC20 + CDIFF) +#define PC22 (PC21 + CDIFF) +#define PC23 (PC22 + CDIFF) + #define C0 126 #define C1 (C0 + CDIFF) #define C2 (C1 + CDIFF) @@ -76,13 +101,20 @@ #define C22 (C21 + CDIFF) #define C23 (C22 + CDIFF) +#define RP0 414 +#define RP1 (RP0 + 205) +#define RP2 (RP0 + 100) +#define RP3 880 + #define R0 500 #define R1 (R0 + 205) #define R2 (R0 + 75) #define R3 900 #define W1 12 +#define PW1 26 #define L1 300 +#define LP1 363 #define BDIFF (CDIFF + 2) #define BDIFF2 (CDIFF2 + 2) @@ -127,6 +159,136 @@ * * This example is for a axxeBristol type synth interface. */ +static brightonLocations phatlocations[DEVICE_COUNT] = { + /* Glide/Tranpose - 0 */ + {"Glide", 1, PC0, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"Transpose", 2, C1, R2 - 30, 15, LP1/2 - 60, 0, 2, 0, 0, 0, + BRIGHTON_THREEWAY|BRIGHTON_NOSHADOW}, + + /* VCO - 2 */ + {"VCO LFO Sine Mod", 1, PC2, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO LFO Square Mod", 1, PC3, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO S/H Mod", 1, PC4, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO ADSR Mod", 1, PC5, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO PW", 1, PC6, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO PWM LFO", 1, PC7, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO PWM ADSR", 1, PC8, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + + /* LFO - 9 */ + {"LFO Freq", 1, PC9, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + + /* Mixer - 10 */ + {"Mix Noise", 1, PC10, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"Mix VCO Ramp", 1, PC11, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"Mix VCO Pulse", 1, PC12, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + + /* VCF - 13 */ + {"VCF Cutoff", 1, PC13, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO Resonance", 1, PC14, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCO KBD", 1, PC15, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCF LFO Sine", 1, PC16, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCF ADSR", 1, PC17, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + + /* VCA - 18 */ + {"VCA Gain", 1, PC18, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"VCA ADSR", 1, PC19, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + + /* ADSR - 20 */ + {"Attack", 1, PC20, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"Decay", 1, PC21, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"Sustain", 1, PC22, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + {"Release", 1, PC23, RP0, PW1, LP1, 0, 1, 0, + "bitmaps/knobs/sliderblack.xpm", 0, 0}, + + /* Pink/White noise - 24 */ + {"Pink/White", 2, C1, 110, 14, 100, 0, 1, 0, + "bitmaps/buttons/klunk.xpm", 0, BRIGHTON_VERTICAL}, + + /* LFO mode - 25 */ + {"LFO S/M", 2, C22, 110, 14, 100, 0, 1, 0, + "bitmaps/buttons/klunk.xpm", 0, BRIGHTON_VERTICAL}, + + /* LFO trigger - gate/auto - 26 */ + {"LFO Trig", 2, C20, 110, 14, 100, 0, 1, 0, + "bitmaps/buttons/klunk.xpm", 0, BRIGHTON_VERTICAL}, + + /* Pitch Control - 27 */ + {"Pitch Flat", 2, 25, RP2, 30, 80, 0, 1, 0, "bitmaps/buttons/touchnlw.xpm", + "bitmaps/buttons/touchnlw.xpm", 0}, + {"Pitch Trill", 2, 53, RP2, 30, 80, 0, 1, 0, "bitmaps/buttons/touchnlw.xpm", + "bitmaps/buttons/touchnlw.xpm", 0}, + {"Pitch Sharp", 2, 80, RP2, 30, 80, 0, 1, 0, "bitmaps/buttons/touchnlw.xpm", + "bitmaps/buttons/touchnlw.xpm", 0}, + + /* Memory Load, mem, Save - 30 */ + {"", 2, B0, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffw.xpm", + "bitmaps/buttons/pressonw.xpm", BRIGHTON_CHECKBUTTON}, + + {"", 2, B1, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B2, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B3, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B4, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B5, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B6, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B7, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B8, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + + {"", 2, B9, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B10, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B11, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B12, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B13, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B14, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B15, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + {"", 2, B16, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffg.xpm", + "bitmaps/buttons/pressong.xpm", BRIGHTON_RADIOBUTTON}, + + {"", 2, B17, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffo.xpm", + "bitmaps/buttons/pressono.xpm", BRIGHTON_CHECKBUTTON}, + + /* MIDI - or android up/down memories */ + {"", 2, B18, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffw.xpm", + "bitmaps/buttons/pressonw.xpm", BRIGHTON_CHECKBUTTON}, + {"", 2, B19, RP3, 20, 60, 0, 1, 0, "bitmaps/buttons/pressoffw.xpm", + "bitmaps/buttons/pressonw.xpm", BRIGHTON_CHECKBUTTON}, +}; static brightonLocations locations[DEVICE_COUNT] = { /* Glide/Tranpose - 0 */ {"Glide", 1, C0, R0, W1, L1, 0, 1, 0, @@ -265,6 +427,89 @@ * This is a set of globals for the main window rendering. Again taken from * include/brighton.h */ +brightonApp axxePhatApp = { + "axxe", + 0, /* no blueprint on wood background. */ + "bitmaps/textures/metal4.xpm", + 0, /* BRIGHTON_STRETCH, //flags */ + axxeInit, + axxeConfigure, /* 3 callbacks, unused? */ + midiCallback, + destroySynth, + {1, 100, 2, 2, 5, 520, 0, 0}, + 600, 350, 0, 0, + 4, /* Panels */ + { + { + "Axxe", + "bitmaps/blueprints/axxephat.xpm", + "bitmaps/textures/metal6.xpm", + BRIGHTON_STRETCH, /* flags */ + 0, + 0, + axxeCallback, + 15, 0, 970, 620, + DEVICE_COUNT, + phatlocations + }, +#ifdef RIBBON_KEYBOARD + { + "RibbonKeyboard", + 0, + "bitmaps/newkeys/ribbonKeys.xpm", + BRIGHTON_STRETCH, + 0, + ribbonCallBack, + ribbonCallBack, + 80, 625, 840, 360, + 1, + ribbonkeyboard, + }, +#else + { + "Keyboard", + 0, + "bitmaps/newkeys/fkbg.xpm", /* flags */ + BRIGHTON_STRETCH|BRIGHTON_KEY_PANEL, + 0, + 0, + keyCallback, + 80, 625, 840, 360, + KEY_COUNT_2OCTAVE2, + keys2octave2 + }, +#endif + { + "Axxe", + 0, + "bitmaps/textures/metal4.xpm", + BRIGHTON_STRETCH|BRIGHTON_VERTICAL, /* flags */ + 0, + 0, + 0, + 0, 0, 15, 1000, + 0, + 0 + }, + { + "Axxe", + 0, + "bitmaps/textures/metal4.xpm", + BRIGHTON_STRETCH|BRIGHTON_VERTICAL, /* flags */ + 0, + 0, + 0, + 985, 0, 15, 1000, + 0, + 0 + } + } +}; + +/* + * This is a set of globals for the main window rendering. Again taken from + * include/brighton.h + */ brightonApp axxeApp = { "axxe", 0, /* no blueprint on wood background. */ diff -Nru bristol-0.60.9/brighton/brightonBassMaker.c bristol-0.60.10/brighton/brightonBassMaker.c --- bristol-0.60.9/brighton/brightonBassMaker.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonBassMaker.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonBitOne.c bristol-0.60.10/brighton/brightonBitOne.c --- bristol-0.60.9/brighton/brightonBitOne.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonBitOne.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonBME700.c bristol-0.60.10/brighton/brightonBME700.c --- bristol-0.60.9/brighton/brightonBME700.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonBME700.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brighton.c bristol-0.60.10/brighton/brighton.c --- bristol-0.60.9/brighton/brighton.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brighton.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -37,6 +37,8 @@ #include "brightonKeyboards.h" +#include "brightonVImages.h" + extern brightonApp miniApp; extern brightonApp prophetApp; extern brightonApp hammondApp; @@ -381,7 +383,9 @@ } } - if ((strcmp(argv[argCount], "-V") == 0) && (strlen(argv[argCount]) == 2)) + if (((strcmp(argv[argCount], "-V") == 0) + || (strcmp(argv[argCount], "-version") == 0)) + && (strlen(argv[argCount]) == 2)) { printf("Version %s\n", VERSION); exit(0); diff -Nru bristol-0.60.9/brighton/brightonCLI.c bristol-0.60.10/brighton/brightonCLI.c --- bristol-0.60.9/brighton/brightonCLI.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonCLI.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonControllers.c bristol-0.60.10/brighton/brightonControllers.c --- bristol-0.60.9/brighton/brightonControllers.c 2011-10-17 16:21:04.000000000 +0000 +++ bristol-0.60.10/brighton/brightonControllers.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonCS80.c bristol-0.60.10/brighton/brightonCS80.c --- bristol-0.60.9/brighton/brightonCS80.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonCS80.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonDX.c bristol-0.60.10/brighton/brightonDX.c --- bristol-0.60.9/brighton/brightonDX.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonDX.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonExplorer.c bristol-0.60.10/brighton/brightonExplorer.c --- bristol-0.60.9/brighton/brightonExplorer.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonExplorer.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonGranular.c bristol-0.60.10/brighton/brightonGranular.c --- bristol-0.60.9/brighton/brightonGranular.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonGranular.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonHammondB3.c bristol-0.60.10/brighton/brightonHammondB3.c --- bristol-0.60.9/brighton/brightonHammondB3.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonHammondB3.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -1794,7 +1794,7 @@ bristolMidiSendMsg(global.controlfd, synth->sid, 1, 0, 0); bristolMidiSendMsg(global.controlfd, synth->sid, 1, 1, 3); bristolMidiSendMsg(global.controlfd, synth->sid, 1, 2, 16383); - bristolMidiSendMsg(global.controlfd, synth->sid, 1, 3, 10); + bristolMidiSendMsg(global.controlfd, synth->sid, 1, 3, 400); bristolMidiSendMsg(global.controlfd, synth->sid, 1, 4, 13000); bristolMidiSendMsg(global.controlfd, synth->sid, 1, 5, 0); @@ -1804,7 +1804,7 @@ bristolMidiSendMsg(global.controlfd, synth->sid, 3, 0, 0); bristolMidiSendMsg(global.controlfd, synth->sid, 3, 1, 10); bristolMidiSendMsg(global.controlfd, synth->sid, 3, 2, 13000); - bristolMidiSendMsg(global.controlfd, synth->sid, 3, 3, 20); + bristolMidiSendMsg(global.controlfd, synth->sid, 3, 3, 400); bristolMidiSendMsg(global.controlfd, synth->sid, 3, 4, 13000); bristolMidiSendMsg(global.controlfd, synth->sid, 3, 5, 0); @@ -1818,7 +1818,7 @@ bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 0, 2); bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 1, 3); bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 2, 16383); - bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 3, 10); + bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 3, 1000); bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 4, 13000); bristolMidiSendMsg(manual.controlfd, synth->sid2, 1, 5, 0); diff -Nru bristol-0.60.9/brighton/brightonHammond.c bristol-0.60.10/brighton/brightonHammond.c --- bristol-0.60.9/brighton/brightonHammond.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonHammond.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonhelp.h bristol-0.60.10/brighton/brightonhelp.h --- bristol-0.60.9/brighton/brightonhelp.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonhelp.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -328,7 +328,7 @@ "; char *gplnotice = "\ -Copyright (c) by Nick Copeland 1996,2011\n\ +Copyright (c) by Nick Copeland 1996,2012\n\ This program comes with ABSOLUTELY NO WARRANTY; for details type ` w'.\n\ This is free software, and you are welcome to redistribute it\n\ under certain conditions; type ` g' for details of GPL terms.\n"; diff -Nru bristol-0.60.9/brighton/brightonJuno.c bristol-0.60.10/brighton/brightonJuno.c --- bristol-0.60.9/brighton/brightonJuno.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonJuno.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -317,7 +317,7 @@ destroySynth, {6, 100, 1, 2, 5, 520, 0, 0}, 820, 250, 0, 0, - 5, /* one panel only */ + 5, /* panels */ { { "Juno", @@ -334,14 +334,15 @@ { "Keyboard", 0, - "bitmaps/newkeys/kbg.xpm", /* flags */ + "bitmaps/newkeys/nkbg.xpm", /* flags */ 0x020|BRIGHTON_STRETCH, 0, 0, keyCallback, - 114, 562, 891, 425, + 114, 562, 889, 425, KEY_COUNT, - keys + //keys + keysprofile2 }, { "Mods", diff -Nru bristol-0.60.9/brighton/brightonJupiter.c bristol-0.60.10/brighton/brightonJupiter.c --- bristol-0.60.9/brighton/brightonJupiter.c 2011-10-22 12:05:47.000000000 +0000 +++ bristol-0.60.10/brighton/brightonJupiter.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonKeyboards.h bristol-0.60.10/brighton/brightonKeyboards.h --- bristol-0.60.9/brighton/brightonKeyboards.h 2011-10-07 15:30:30.000000000 +0000 +++ bristol-0.60.10/brighton/brightonKeyboards.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonKeys.h bristol-0.60.10/brighton/brightonKeys.h --- bristol-0.60.9/brighton/brightonKeys.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonKeys.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMaster.c bristol-0.60.10/brighton/brightonMaster.c --- bristol-0.60.9/brighton/brightonMaster.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMaster.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMemoryMoog.c bristol-0.60.10/brighton/brightonMemoryMoog.c --- bristol-0.60.9/brighton/brightonMemoryMoog.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMemoryMoog.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -320,48 +320,48 @@ /* Memory/Midi - 94 */ /* Load/Save */ - {"", 2, C20, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C20 - 4, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C22, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C23 + 3, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, /* 1 - 3 */ - {"", 2, C20, R1_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C20 - 4, R1_1 - 70, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C21, R1_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C21 + S2, R1_1 - 70, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C22, R1_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C23 + 3, R1_1 - 70, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, /* 4 - 6 */ - {"", 2, C20, R21_0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C20 - 4, R21_0 - 46, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C21, R21_0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C21 + S2, R21_0 - 46, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C22, R21_0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C23 + 3, R21_0 - 46, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, /* 7 - 9 */ - {"", 2, C20, R21_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C20 - 4, R21_1 - 23, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C21, R21_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C21 + S2, R21_1 - 23, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C22, R21_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C23 + 3, R21_1 - 23, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, /* 0 */ - {"", 2, C21, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C21 + S2, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, /* {"", 2, C23, R1_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", */ /* "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, */ /* {"", 2, C23, R21_0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", */ /* "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, */ - {"", 2, C23, R21_1, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C23 + 3, R0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C23, R3, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + {"", 2, C20 - 4, R0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C20, R0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", - "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, - {"", 2, C23, R0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", - "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_NOSHADOW}, + {"", 2, 0, 0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_WITHDRAWN}, + {"", 2, 0, 0, S2, S1, 0, 1, 0, "bitmaps/buttons/touchogb.xpm", + "bitmaps/buttons/touchgb.xpm", BRIGHTON_CHECKBUTTON|BRIGHTON_WITHDRAWN}, {"", 4, 790, 1020, 180, 140, 0, 1, 0, "bitmaps/images/memorymoog.xpm",0, 0}, @@ -404,14 +404,14 @@ { "Keyboard", 0, - "bitmaps/newkeys/kbg.xpm", /* flags */ + "bitmaps/newkeys/nkbg.xpm", /* flags */ 0x020|BRIGHTON_STRETCH, 0, 0, keyCallback, 100, 650, 913, 340, - KEY_COUNT, - keys + KEY_COUNT_5OCTAVE, + keysprofile2 }, { "Mods", @@ -1274,7 +1274,7 @@ /* Depth controls */ dispatch[89].controller = 126; - dispatch[89].operator = 126; + dispatch[89].operator = 47; dispatch[90].controller = 126; dispatch[90].operator = 3; @@ -1324,6 +1324,7 @@ dispatch[OSC_3_RADIO].other1 = -1; /* Put in diverse defaults settings */ + bristolMidiSendMsg(global.controlfd, synth->sid, 7, 0, 16383); /* Tune osc-1 */ bristolMidiSendMsg(global.controlfd, synth->sid, 0, 2, 8192); /* Gain on filter env - changed to fixed MOD on filter, variable Env. Then */ diff -Nru bristol-0.60.9/brighton/brightonMini.c bristol-0.60.10/brighton/brightonMini.c --- bristol-0.60.9/brighton/brightonMini.c 2011-10-24 12:32:49.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMini.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -148,14 +148,14 @@ 0, 0}, {"Release", 0, C9, R5, S1, S1, 0, 1, 0, "bitmaps/knobs/knob4.xpm", 0, 0}, /*25 */ -/* MAIN OUT */ +/* MAIN OUT 25 */ {"MasterVolume", 0, C10, R1, S3, S3, 0, 1, 0, "bitmaps/knobs/knob4.xpm", 0, 0}, {"On/Off", 2, C10 + 7, R1 - 92, B1, B1, 0, 1, 0, "bitmaps/buttons/rockerblue.xpm", 0, 0}, {"A-440", 2, C10 + 7, R2 + 75, B1, B1, 0, 1, 0, "bitmaps/buttons/rockerblue.xpm", 0, 0}, /*28 */ -/* MIX BUTTONS */ +/* MIX BUTTONS - 28 */ {"Mix Osc1", 2, C5, R1 + 45, B1, B1, 0, 1, 0, "bitmaps/buttons/rockerblue.xpm", 0, 0}, {"Mix Ext", 2, C5, R2 + 45, B1, B1, 0, 1, 0, @@ -166,10 +166,10 @@ "bitmaps/buttons/rockerblue.xpm", 0, 0}, {"Mix Osc3", 2, C5, R5 + 45, B1, B1, 0, 1, 0, "bitmaps/buttons/rockerblue.xpm", 0, 0}, /*33 */ -/* NOISE BUTTON */ +/* NOISE BUTTON - 33 */ {"White/Pink", 2, C11 - 6, C6, B2, B3, 0, 1, 0, "bitmaps/buttons/rockerblue.xpm", 0, BRIGHTON_VERTICAL}, /*34 */ -/* CONTROL BUTTONS */ +/* CONTROL BUTTONS - 34 */ {"Osc Mod 1", 2, C12 - 22, R2 - 13, B1, B1, 0, 1, 0, 0, 0, 0}, {"Osc Mod 2", 2, C12 - 22, R2 + 97, B1, B1, 0, 1, 0, 0, 0, 0}, {"Osc 3 LFO", 2, C12 - 9, R5 + 15, B2, B3, 0, 1, 0, 0, 0, BRIGHTON_VERTICAL}, @@ -177,7 +177,7 @@ "bitmaps/buttons/rockerwhite.xpm", 0, 0}, {"Multitrig", 2, 78, 825, B1, B1, 0, 1, 0, "bitmaps/buttons/rockerwhite.xpm", 0, 0}, /*39 */ -/* FILTER BUTTONS */ +/* FILTER BUTTONS - 39 */ {"Filter Mod1", 2, C11 - 5, R1 + 30, B1, B1, 0, 1, 0, 0, 0, 0}, {"Filter Velocity", 2, C11 - 5, R1 + 170, B1, B1, 0, 1, 0, 0, 0, 0}, {"Filter KBD", 2, C11 - 5, R3, B1, B1, 0, 1, 0, 0, 0}, /*42 */ @@ -256,8 +256,8 @@ { "Keyboard", 0, - "bitmaps/newkeys/ekbg.xpm", /* flags */ - 0x020|BRIGHTON_STRETCH, + "bitmaps/newkeys/ekbg.xpm", + 0x020|BRIGHTON_STRETCH|BRIGHTON_KEY_PANEL, 0, 0, keyCallback, @@ -398,7 +398,10 @@ { bristolMidiSendMsg(fd, chan, c, 1, v); - bristolMidiSendMsg(fd, chan, c, 3, v); + if (synth->mem.param[FIRST_DEV + 37]) + bristolMidiSendMsg(fd, chan, c, 3, v); + else + bristolMidiSendMsg(fd, chan, c, 3, 1024); } static void @@ -411,7 +414,7 @@ bristolMidiSendMsg(fd, chan, 5, 3, (int) (synth->mem.param[FIRST_DEV + 23] * C_RANGE_MIN_1)); else - bristolMidiSendMsg(fd, chan, 5, 3, 20); + bristolMidiSendMsg(fd, chan, 5, 3, 1024); } static void diff -Nru bristol-0.60.9/brighton/brightonMini.h bristol-0.60.10/brighton/brightonMini.h --- bristol-0.60.9/brighton/brightonMini.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMini.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMixer.c bristol-0.60.10/brighton/brightonMixer.c --- bristol-0.60.9/brighton/brightonMixer.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMixer.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMixer.h bristol-0.60.10/brighton/brightonMixer.h --- bristol-0.60.9/brighton/brightonMixer.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMixer.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMixerMemory.c bristol-0.60.10/brighton/brightonMixerMemory.c --- bristol-0.60.9/brighton/brightonMixerMemory.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMixerMemory.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMixerMemory.h bristol-0.60.10/brighton/brightonMixerMemory.h --- bristol-0.60.9/brighton/brightonMixerMemory.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMixerMemory.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMixerMenu.c bristol-0.60.10/brighton/brightonMixerMenu.c --- bristol-0.60.9/brighton/brightonMixerMenu.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMixerMenu.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonMS20.c bristol-0.60.10/brighton/brightonMS20.c --- bristol-0.60.9/brighton/brightonMS20.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonMS20.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonOBXa.c bristol-0.60.10/brighton/brightonOBXa.c --- bristol-0.60.9/brighton/brightonOBXa.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonOBXa.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonOBX.c bristol-0.60.10/brighton/brightonOBX.c --- bristol-0.60.9/brighton/brightonOBX.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonOBX.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonOdyssey.c bristol-0.60.10/brighton/brightonOdyssey.c --- bristol-0.60.9/brighton/brightonOdyssey.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonOdyssey.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -261,7 +261,8 @@ /* Glide/Tranpose - 0 */ {"", 1, C0, R0, W1, L1, 0, 1, 0, "bitmaps/knobs/sliderblack3.xpm", 0, 0}, - {"", 2, C1, R2, 15, L1/2 - 10, 0, 2, 0, 0, 0, +// {"", 2, C1, R2, 15, L1/2 - 10, 0, 2, 0, 0, 0, + {"Transpose", 2, C1, R2 + 20, 15, L1/2 - 40, 0, 2, 0, 0, 0, BRIGHTON_THREEWAY|BRIGHTON_NOSHADOW}, /* VCO - 2 */ diff -Nru bristol-0.60.9/brighton/brightonPoly6.c bristol-0.60.10/brighton/brightonPoly6.c --- bristol-0.60.9/brighton/brightonPoly6.c 2011-10-22 09:33:29.000000000 +0000 +++ bristol-0.60.10/brighton/brightonPoly6.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -668,10 +668,10 @@ /* * Configure a gate. */ - bristolMidiSendMsg(global.controlfd, synth->sid, 6, 0, 10); + bristolMidiSendMsg(global.controlfd, synth->sid, 6, 0, 512); bristolMidiSendMsg(global.controlfd, synth->sid, 6, 1, 16383); bristolMidiSendMsg(global.controlfd, synth->sid, 6, 2, 16383); - bristolMidiSendMsg(global.controlfd, synth->sid, 6, 3, 10); + bristolMidiSendMsg(global.controlfd, synth->sid, 6, 3, 512); } else { /* * Configure the env diff -Nru bristol-0.60.9/brighton/brightonPoly800.c bristol-0.60.10/brighton/brightonPoly800.c --- bristol-0.60.9/brighton/brightonPoly800.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonPoly800.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonPoly.c bristol-0.60.10/brighton/brightonPoly.c --- bristol-0.60.9/brighton/brightonPoly.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonPoly.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonProOne.c bristol-0.60.10/brighton/brightonProOne.c --- bristol-0.60.9/brighton/brightonProOne.c 2011-10-22 10:48:27.000000000 +0000 +++ bristol-0.60.10/brighton/brightonProOne.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -1057,12 +1057,12 @@ dispatch[31].operator = 101; dispatch[31].routine = (synthRoutine) pro1Arpeggiate; /* Modes, need to read up on function */ - dispatch[32].controller = 5; /* Rezero envelope on trigger */ - dispatch[32].operator = 6; - dispatch[33].controller = 126; + dispatch[32].controller = 126; /* multitrig envelope note */ + dispatch[32].operator = 27; + dispatch[33].controller = 126; /* Track LFO as trigger */ dispatch[33].operator = 9; - dispatch[34].controller = 126; - dispatch[34].operator = 101; + dispatch[34].controller = 126; /* Force gate open */ + dispatch[34].operator = 28; dispatch[34].routine = (synthRoutine) pro1Hold; /* Drone */ /* Mixer */ diff -Nru bristol-0.60.9/brighton/brightonProphet10.c bristol-0.60.10/brighton/brightonProphet10.c --- bristol-0.60.9/brighton/brightonProphet10.c 2011-10-22 11:00:15.000000000 +0000 +++ bristol-0.60.10/brighton/brightonProphet10.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonProphet52.c bristol-0.60.10/brighton/brightonProphet52.c --- bristol-0.60.9/brighton/brightonProphet52.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonProphet52.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonProphet.c bristol-0.60.10/brighton/brightonProphet.c --- bristol-0.60.9/brighton/brightonProphet.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonProphet.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonreadme.h bristol-0.60.10/brighton/brightonreadme.h --- bristol-0.60.9/brighton/brightonreadme.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonreadme.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonRealistic.c bristol-0.60.10/brighton/brightonRealistic.c --- bristol-0.60.9/brighton/brightonRealistic.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonRealistic.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonRhodesBass.c bristol-0.60.10/brighton/brightonRhodesBass.c --- bristol-0.60.9/brighton/brightonRhodesBass.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonRhodesBass.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonRhodes.c bristol-0.60.10/brighton/brightonRhodes.c --- bristol-0.60.9/brighton/brightonRhodes.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonRhodes.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonRoadRunner.c bristol-0.60.10/brighton/brightonRoadRunner.c --- bristol-0.60.9/brighton/brightonRoadRunner.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonRoadRunner.c 2012-04-27 11:04:29.000000000 +0000 @@ -9,7 +9,7 @@ touch response * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonRoutines.c bristol-0.60.10/brighton/brightonRoutines.c --- bristol-0.60.9/brighton/brightonRoutines.c 2011-10-22 10:29:55.000000000 +0000 +++ bristol-0.60.10/brighton/brightonRoutines.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -871,7 +871,7 @@ int flags; flags = BRISTOL_CONN_TCP|BRISTOL_DUPLEX|BRISTOL_CONN_NBLOCK| - (global->flags & BRISTOL_CONN_FORCE); + (global->flags & BRISTOL_CONN_FORCE); if ((global->controlfd = bristolMidiOpen(global->host, flags, global->port, -1, brightonMidiInput, global)) < 0) diff -Nru bristol-0.60.9/brighton/brightonSAks.c bristol-0.60.10/brighton/brightonSAks.c --- bristol-0.60.9/brighton/brightonSAks.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonSAks.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonSID2.c bristol-0.60.10/brighton/brightonSID2.c --- bristol-0.60.9/brighton/brightonSID2.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonSID2.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonSID2.h bristol-0.60.10/brighton/brightonSID2.h --- bristol-0.60.9/brighton/brightonSID2.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonSID2.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonSID.c bristol-0.60.10/brighton/brightonSID.c --- bristol-0.60.9/brighton/brightonSID.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonSID.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonSolina.c bristol-0.60.10/brighton/brightonSolina.c --- bristol-0.60.9/brighton/brightonSolina.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonSolina.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonSonic6.c bristol-0.60.10/brighton/brightonSonic6.c --- bristol-0.60.9/brighton/brightonSonic6.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonSonic6.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonStratus.c bristol-0.60.10/brighton/brightonStratus.c --- bristol-0.60.9/brighton/brightonStratus.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonStratus.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonTrilogy.c bristol-0.60.10/brighton/brightonTrilogy.c --- bristol-0.60.9/brighton/brightonTrilogy.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonTrilogy.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonVImages.h bristol-0.60.10/brighton/brightonVImages.h --- bristol-0.60.9/brighton/brightonVImages.h 1970-01-01 00:00:00.000000000 +0000 +++ bristol-0.60.10/brighton/brightonVImages.h 2012-04-27 11:04:29.000000000 +0000 @@ -0,0 +1,2667 @@ + +#define POLY_WHITE 0x00b8bab7 +#define BLUE_WHITE 0x00d0d0ff +#define BLUE_WHITE2 0x00c4e4ff +#define OFF_WHITE 0x00d0d0d0 +#define OFF_WHITER 0x00eeeeee + +bvgCoords potCoords[17] = { + {28, 5}, + {75, 100}, + {-1, -1}, + {7, 25}, + {95, 75}, + {-1, -1}, + {72, 5}, + {25, 100}, + {-1, -1}, + {93, 25}, + {7, 75}, + {-1, -1}, + {0, 50}, + {100, 50}, + {-1, -1}, + {50, 0}, + {50, 50}, +}; +bvgVect pot = { + 17, + potCoords +}; + +bvgCoords sharpCoords[11] = { + {30, 10}, + {30, 100}, + {-1, -1}, + {70, 0}, + {70, 90}, + {-1, -1}, + {10, 30}, + {100, 30}, + {-1, -1}, + {0, 80}, + {90, 80}, +}; +bvgVect sharp = { + 11, + sharpCoords +}; + +bvgCoords flatCoords[6] = { + {0, 0}, + {0, 80}, + {20, 100}, + {60, 60}, + {40, 40}, + {0, 60}, +}; +bvgVect flat = { + 6, + flatCoords +}; + +bvgCoords invenvCoords[5] = { + {0, 0}, + {20, 0}, + {20, 100}, + {80, 0}, + {100, 0}, +}; +bvgVect invenv = { + 5, + invenvCoords +}; + +bvgCoords envCoords[5] = { + {0, 100}, + {20, 100}, + {20, 0}, + {80, 100}, + {100, 100}, +}; +bvgVect env = { + 5, + envCoords +}; + +bvgCoords gateCoords[6] = { + {0, 100}, + {10, 100}, + {10, 0}, + {80, 0}, + {80, 100}, + {100, 100}, +}; +bvgVect gate = { + 6, + gateCoords +}; + +bvgCoords pulseWaveCoords[10] = { + {0, 100}, + {0, 0}, + {40, 0}, + {40, 100}, + {100, 100}, + {100, 0}, + {-1, -1}, + {50, 0}, + {70, 0}, + {70, 60}, +}; +bvgVect pulseWave = { + 10, + pulseWaveCoords +}; + +bvgCoords pWaveCoords[6] = { + {0, 100}, + {0, 0}, + {30, 0}, + {30, 100}, + {100, 100}, + {100, 0}, +}; +bvgVect pWave = { + 6, + pWaveCoords +}; + +bvgCoords sineWaveCoords[12] = { + {0, 60}, + {0, 40}, + {16, 10}, // 16 + {24, 0}, // 8 + {32, 10}, // 8 + {48, 40}, // 16 + {48, 60}, + {64, 94}, // 16 + {72, 100},//8 + {80, 94},//8 + {96, 60}, + {96, 30}, +}; +bvgVect sineWave = { + 12, + sineWaveCoords +}; + +bvgCoords squareWaveCoords[6] = { + {0, 100}, + {0, 0}, + {50, 0}, + {50, 100}, + {100, 100}, + {100, 0}, +}; +bvgVect squareWave = { + 6, + squareWaveCoords +}; + +bvgCoords triWaveCoords[3] = { + {0, 100}, + {50, 0}, + {100, 100}, +}; +bvgVect triWave = { + 3, + triWaveCoords +}; + +bvgCoords biRampWaveCoords[5] = { + {0, 100}, + {70, 20}, + {70, 80}, + {100, 0}, + {100, 100}, +}; +bvgVect biRampWave = { + 5, + biRampWaveCoords +}; + +bvgCoords sawWaveCoords[4] = { + {0, 0}, + {0, 100}, + {100, 0}, + {100, 100}, +}; +bvgVect sawWave = { + 4, + sawWaveCoords +}; + +bvgCoords rampWaveCoords[4] = { + {0, 100}, + {0, 0}, + {100, 100}, + {100, 0}, +}; +bvgVect rampWave = { + 4, + rampWaveCoords +}; + +/* + * Stuff for the ARP. There will be lots, might break it out + */ +#define aPAC 103 +bvgCoords arpPABoxCoords[aPAC] = { + {14, 2}, + {35, 2}, + {35, 85}, + {14, 85}, + {14, 112}, + {69, 112}, + {69, 85}, + {33, 85}, + {-1, -1}, + {69, 101}, + {71, 101}, + {71, 98}, + {74, 101}, + {71, 104}, + {71, 99}, + // Env Follower + {-1, -1}, + {2, 144}, + {2, 170}, + {43, 170}, + {43, 144}, + {2, 144}, + {-1, -1}, + {47, 144}, + {47, 170}, + {68, 170}, + {68, 144}, + {47, 144}, + {-1, -1}, + {69, 158}, + {71, 158}, + {71, 155}, + {74, 158}, + {71, 161}, + {71, 155}, + // First Arrow + {-1, -1}, + {9, 228}, + {9, 179}, + {7, 179}, + {9, 174}, + {11, 179}, + {9, 179}, + {-1, -1}, + {27, 270}, + {27, 179}, + {25, 179}, + {27, 174}, + {29, 179}, + {27, 179}, + {-1, -1}, + {46, 228}, + {53, 205}, + {53, 179}, + {51, 179}, + {53, 174}, + {55, 179}, + {51, 179}, + {-1, -1}, + {84, 228}, + {63, 205}, + {63, 179}, + {61, 179}, + {63, 174}, + {65, 179}, + {63, 179}, + {-1, -1}, + {0, 415}, + {0, 447}, + {18, 447}, + {18, 415}, + {0, 415}, + {-1, -1}, + {9, 415}, + {9, 407}, + {7, 407}, + {9, 403}, + {11, 407}, + {9, 407}, + {-1, -1}, + {36, 415}, + {36, 447}, + {55, 447}, + {55, 415}, + {36, 415}, + {-1, -1}, + {45, 415}, + {45, 407}, + {43, 407}, + {45, 403}, + {47, 407}, + {45, 407}, + {-1, -1}, + {75, 415}, + {75, 447}, + {93, 447}, + {93, 415}, + {75, 415}, + {-1, -1}, + {84, 415}, + {84, 407}, + {83, 407}, + {84, 403}, + {85, 407}, + {84, 407}, +}; +bvgVect arpPABox = { + aPAC, + arpPABoxCoords +}; + +/* + * Stuff for the ARP. There will be lots, might break it out + */ +#define aVCO1 105 +bvgCoords arpVCO1BoxCoords[aVCO1] = { + {0, 10}, + {0, 200}, + {-1, -1}, + {36, 82}, + {36, 97}, + {128, 97}, + {128, 82}, + {36, 82}, + {-1, -1}, + {128, 84}, + {134, 84}, + {138, 82}, + {-1, -1}, + {128, 95}, + {134, 95}, + {138, 97}, + {-1, -1}, + {12, 128}, + {12, 115}, + {58, 107}, + {58, 100}, + {55, 100}, + {58, 98}, + {61, 100}, + {58, 100}, + {-1, -1}, + {68, 115}, + {74, 107}, + {74, 100}, + {71, 100}, + {74, 98}, + {77, 100}, + {71, 100}, + {-1, -1}, + {109, 115}, + {92, 107}, + {92, 100}, + {89, 100}, + {92, 98}, + {95, 100}, + {89, 100}, + {-1, -1}, + {152, 115}, + {110, 107}, + {110, 100}, + {107, 100}, + {110, 98}, + {113, 100}, + {107, 100}, + {-1, -1}, + {8, 187}, + {8, 199}, + {48, 199}, + {48, 187}, + {8, 187}, + {28, 187}, + {28, 184}, + {26, 184}, + {28, 182}, + {30, 184}, + {26, 184}, + {-1, -1}, + {52, 187}, + {52, 199}, + {87, 199}, + {87, 187}, + {52, 187}, + {71, 187}, + {71, 184}, + {69, 184}, + {71, 182}, + {73, 184}, + {69, 184}, + {-1, -1}, + {90, 187}, + {90, 199}, + {130, 199}, + {130, 187}, + {90, 187}, + {110, 187}, + {110, 184}, + {108, 184}, + {110, 182}, + {112, 184}, + {108, 184}, + {-1, -1}, + {136, 187}, + {136, 199}, + {175, 199}, + {175, 187}, + {136, 187}, + {157, 187}, + {157, 184}, + {155, 184}, + {157, 182}, + {159, 184}, + {155, 184}, + {-1, -1}, + {153, 169}, + {153, 167}, + {143, 167}, + {-1, -1}, + {26, 169}, + {26, 167}, + {36, 167}, +}; +bvgVect arpVCO1Box = { + aVCO1, + arpVCO1BoxCoords +}; + +#define aVCO1a 19 +bvgCoords arpVCO1aBoxCoords[aVCO1a] = { + {179, 187}, + {179, 199}, + {215, 199}, + {215, 187}, + {179, 187}, + {198, 187}, + {198, 184}, + {196, 184}, + {198, 182}, + {200, 184}, + {198, 184}, + {-1, -1}, + {129, 87}, + {180, 87}, + {185, 84}, + {-1, -1}, + {129, 92}, + {180, 92}, + {185, 95}, +}; +bvgVect arpVCO1aBox = { + aVCO1a, + arpVCO1aBoxCoords +}; + +#define aMOD 241 +bvgCoords arpMODBoxCoords[aMOD] = { + // NOISE + {109, 4}, {109, 22}, {253, 22}, {253, 4}, {109, 4}, + {-1, -1}, {270, 0}, {270, 290}, {-1, -1}, // VOLTAGE PROCESSING + {385, 4}, {385, 22}, {554, 22}, {554, 4}, {385, 4}, {-1, -1}, + {340, 65}, {386, 65}, {386, 62}, {394, 65}, {386, 68}, {386, 65}, {-1, -1}, + {340, 123}, {386, 123}, {386, 120}, {394, 123}, {386, 126}, {386, 123}, {-1, -1}, + {340, 180}, {386, 180}, {386, 177}, {394, 180}, {386, 183}, {386, 180}, {-1, -1}, + {340, 235}, {386, 235}, {386, 232}, {394, 235}, {386, 238}, {386, 235}, {-1, -1}, + {552, 65}, {655, 65}, {655, 42}, {633, 42}, {-1, -1}, + {655, 65}, {655, 96}, {633, 96}, {-1, -1}, + {655, 96}, {655, 123}, {552, 123}, {-1, -1}, + {655, 80}, {665, 80}, {665, 75}, {675, 80}, {665, 85}, {665, 80}, {-1, -1}, + {675, 80}, {685, 80}, {-1, -1}, + {552, 180}, {635, 180}, {635, 175}, {645, 180}, {635, 185}, {635, 180}, {-1, -1}, + {610, 180}, {610, 170}, {-1, -1}, + {645, 180}, {675, 180}, {-1, -1}, + {655, 180}, {655, 140}, {675, 140}, {-1, -1}, + {552, 235}, {594, 235}, {594, 225}, {628, 225}, {628, 245}, {594, 245}, {594, 235}, {-1, -1}, + {628, 235}, {675, 235}, {-1, -1}, + {745, 0}, {745, 290}, {-1, -1}, // S&H + {808, 12}, {812, 12}, {812, 9}, {819, 12}, {812, 15}, {812, 12}, {-1, -1}, + {930, 12}, {936, 12}, {936, 9}, {943, 12}, {936, 15}, {936, 12}, {-1, -1}, + {820, 4}, {820, 22}, {930, 22}, {930, 4}, {820, 4}, {-1, -1}, + {755, 37}, {755, 68}, {815, 68}, {815, 37}, {755, 37}, {790, 37}, {790, 34}, {-1, -1}, + {780, 155}, {770, 165}, {770, 285}, {936, 285}, {936, 233}, {-1, -1}, + {780, 245}, {770, 255}, {-1, -1}, + {790, 249}, {790, 260}, {872, 260}, {872, 30}, {869, 30}, {872, 25}, {875, 30}, {872, 30}, {-1, -1}, + // The Electroswitch and connections + {943, 100}, {940, 100}, {940, 187}, {955, 187}, {-1, -1}, + {977, 143}, {983, 143}, {983, 187}, {970, 187}, {-1, -1}, + {963, 182}, {963, 234}, {-1, -1}, + {950, 198}, {946, 202}, {-1, -1}, + {1004, 0}, {1004, 290}, {-1, -1}, // FX + {1046, 4}, {1046, 22}, {1130, 22}, {1130, 4}, {1046, 4}, {-1, -1}, + {1200, 4}, {1200, 22}, {1285, 22}, {1285, 4}, {1200, 4}, {-1, -1}, + {1037, 70}, + {1050, 45}, + {1050, 28}, + {1048, 28}, + {1050, 25}, + {1052, 28}, + {1050, 28}, + {-1, -1}, + {1071, 70}, + {1076, 45}, + {1076, 28}, + {1074, 28}, + {1076, 25}, + {1078, 28}, + {1076, 28}, + {-1, -1}, + {1105, 70}, + {1100, 45}, + {1100, 28}, + {1098, 28}, + {1100, 25}, + {1102, 28}, + {1100, 28}, + {-1, -1}, + {1139, 70}, + {1123, 45}, + {1123, 28}, + {1121, 28}, + {1123, 25}, + {1125, 28}, + {1123, 28}, + {-1, -1}, + {1037 + 158, 70}, + {1208, 45}, + {1208, 28}, + {1206, 28}, + {1208, 25}, + {1210, 28}, + {1208, 28}, + {-1, -1}, + {158 + 1071, 70}, + {158 + 1076, 45}, + {158 + 1076, 28}, + {158 + 1074, 28}, + {158 + 1076, 25}, + {158 + 1078, 28}, + {158 + 1076, 28}, + {-1, -1}, + {158 + 1105, 70}, + {158 + 1100, 45}, + {158 + 1100, 28}, + {158 + 1098, 28}, + {158 + 1100, 25}, + {158 + 1102, 28}, + {158 + 1100, 28}, + {-1, -1}, + {158 + 1139, 70}, + {158 + 1123, 45}, + {158 + 1123, 28}, + {158 + 1121, 28}, + {158 + 1123, 25}, + {158 + 1125, 28}, + {158 + 1123, 28}, + {-1, -1}, + + {1334, 0}, {1334, 290}, {-1, -1},// PROG + // IN/OUT +}; +bvgVect arpMODBox = { + aMOD, + arpMODBoxCoords +}; + +#define aMIX 158 +bvgCoords arpMIXBoxCoords[aMIX] = { + {0, 10}, + {0, 200}, + // Main Box + {-1, -1}, {11, 83}, {11, 95}, {80, 95}, {80, 83}, {11, 83}, + // Mix Arrows + {-1, -1}, {26, 116}, {26, 114}, {24, 114}, {26, 112}, {28, 114}, {24, 114}, + {-1, -1}, {68, 116}, {68, 114}, {66, 114}, {68, 112}, {70, 114}, {66, 114}, + {-1, -1}, {26, 95}, {26, 98}, {24, 98}, {26, 100}, {28, 98}, {24, 98}, + {-1, -1}, {68, 95}, {68, 98}, {66, 98}, {68, 100}, {70, 98}, {66, 98}, + // Diverse lines + {-1, -1}, {47, 83}, {47, 79}, + {-1, -1}, {47, 68}, {47, 66}, {56, 61}, + {-1, -1}, {76, 52}, {85, 47}, + {-1, -1}, {110, 69}, {110, 64}, {73, 47}, {6, 47}, {6, 25}, {13, 25}, {13, 20}, {29, 25}, {13, 30}, {13, 22}, + {-1, -1}, {6, 41}, {16, 41}, + {-1, -1}, {6, 47}, {16, 52}, + // Pan lines + {-1, -1}, {77, 35}, {30, 35}, {30, 34}, {24, 35}, {30, 36}, {30, 35}, + {-1, -1}, {110, 35}, {150, 35}, {150, 34}, {156, 35}, {150, 36}, {150, 35}, + // Delay lines and box + {-1, -1}, {95, 134}, {95, 143}, {165, 143}, {165, 134}, {95, 134}, + {-1, -1}, {110, 134}, {110, 121}, {108, 121}, {110, 118}, {112, 121}, {110, 121}, + {-1, -1}, {152, 134}, {152, 121}, {150, 121}, {152, 118}, {154, 121}, {152, 121}, + {-1, -1}, {110, 170}, {110, 147}, {108, 147}, {110, 144}, {112, 147}, {110, 147}, + // Outer line + {-1, -1}, + {163, 155}, + {172, 152}, + {172, 25}, + {162, 25}, + {162, 20}, + {146, 25}, + {162, 30}, + {162, 25}, + {-1, -1}, + {172, 41}, + {166, 41}, + {-1, -1}, + {172, 57}, + {169, 57}, + {-1, -1}, + {172, 64}, + {154, 70}, + // Input Arrows + {-1, -1}, + {6, 187}, + {6, 199}, + {43, 199}, + {43, 187}, + {6, 187}, + {27, 187}, + {27, 184}, + {25, 184}, + {27, 182}, + {29, 184}, + {26, 184}, + {-1, -1}, + {47, 187}, + {47, 199}, + {87, 199}, + {87, 187}, + {47, 187}, + {71, 187}, + {71, 184}, + {69, 184}, + {71, 182}, + {73, 184}, + {69, 184}, + {-1, -1}, + {90, 187}, + {90, 199}, + {134, 199}, + {134, 187}, + {90, 187}, + {110, 187}, + {110, 184}, + {108, 184}, + {110, 182}, + {112, 184}, + {108, 184}, +}; +bvgVect arpMIXBox = { + aMIX, + arpMIXBoxCoords +}; + +#define aVCA 97 +bvgCoords arpVCABoxCoords[aVCA] = { + {0, 10}, + {0, 200}, + // Main Box + {-1, -1}, + {38, 82}, + {38, 97}, + {126, 97}, + {126, 82}, + {38, 82}, + {-1, -1}, + {126, 90}, + {132, 90}, + {132, 89}, + {139, 90}, + {132, 91}, + {132, 90}, + // Input Arrows + {-1, -1}, + {28, 115}, + {10, 96}, + {10, 84}, + {30, 84}, + {30, 83}, + {37, 84}, + {30, 85}, + {30, 84}, + {-1, -1}, + {70, 115}, + {21, 96}, + {21, 93}, + {30, 93}, + {30, 92}, + {37, 93}, + {30, 94}, + {30, 93}, + {-1, -1}, + {110, 115}, + {68, 102}, + {68, 100}, + {66, 100}, + {68, 98}, + {70, 100}, + {68, 100}, + {-1, -1}, + {150, 115}, + {108, 102}, + {108, 100}, + {106, 100}, + {108, 98}, + {110, 100}, + {108, 100}, + {-1, -1}, + {6, 187}, + {6, 199}, + {43, 199}, + {43, 187}, + {6, 187}, + {27, 187}, + {27, 184}, + {25, 184}, + {27, 182}, + {29, 184}, + {26, 184}, + {-1, -1}, + {47, 187}, + {47, 199}, + {87, 199}, + {87, 187}, + {47, 187}, + {71, 187}, + {71, 184}, + {69, 184}, + {71, 182}, + {73, 184}, + {69, 184}, + {-1, -1}, + {90, 187}, + {90, 199}, + {130, 199}, + {130, 187}, + {90, 187}, + {110, 187}, + {110, 184}, + {108, 184}, + {110, 182}, + {112, 184}, + {108, 184}, + {-1, -1}, + {134, 187}, + {134, 199}, + {173, 199}, + {173, 187}, + {134, 187}, + {152, 187}, + {152, 184}, + {150, 184}, + {152, 182}, + {154, 184}, + {153, 184}, +}; +bvgVect arpVCABox = { + aVCA, + arpVCABoxCoords +}; + +/* + * Stuff for the ARP. There will be lots, might break it out + */ +#define aVCF 196 +bvgCoords arpVCFBoxCoords[aVCF] = { + {0, 10}, + {0, 200}, + // Main Box + {-1, -1}, + {156, 82}, + {156, 97}, + {284, 97}, + {284, 82}, + {156, 82}, + {-1, -1}, + {284, 90}, + {293, 90}, + {293, 89}, + {300, 90}, + {293, 91}, + {293, 90}, + // Input Arrows + {-1, -1}, + {30, 115}, + {30, 110}, + {98, 84}, + //{152, 84}, + {147, 84}, + {147, 83}, + {152, 84}, + {147, 85}, + {147, 84}, + {-1, -1}, + {70, 115}, + {70, 110}, + {102, 87}, + {147, 87}, + {147, 86}, + {152, 87}, + {147, 88}, + {147, 87}, + {-1, -1}, + {110, 115}, + {110, 110}, + {110, 90}, + {147, 90}, + {147, 89}, + {152, 90}, + {147, 91}, + {147, 90}, + {-1, -1}, + {152, 115}, + {152, 110}, + {123, 93}, + {147, 93}, + {147, 92}, + {152, 93}, + {147, 94}, + {-1, -1}, + {194, 115}, + {194, 110}, + {135, 96}, + {147, 96}, + {147, 95}, + {152, 96}, + {147, 97}, + {147, 96}, + {-1, -1}, + {237, 115}, + {237, 100}, + {234, 100}, + {237, 98}, + {240, 100}, + {237, 100}, + {-1, -1}, + {280, 115}, + {280, 112}, + {254, 106}, + {254, 100}, + {251, 100}, + {254, 98}, + {257, 100}, + {254, 100}, + {-1, -1}, + {321, 115}, + {321, 112}, + {270, 106}, + {270, 100}, + {267, 100}, + {270, 98}, + {273, 100}, + {270, 100}, + {-1, -1}, + {27, 170}, + {27, 167}, + {81, 167}, + {-1, -1}, + {194, 170}, + {194, 167}, + {139, 167}, + {-1, -1}, + {235, 170}, + {235, 167}, + {244, 167}, + {-1, -1}, + {320, 170}, + {320, 167}, + {313, 167}, + {-1, -1}, + {6, 187}, + {6, 199}, + {48, 199}, + {48, 187}, + {6, 187}, + {27, 187}, + {27, 184}, + {25, 184}, + {27, 182}, + {29, 184}, + {26, 184}, + {-1, -1}, + {52, 187}, + {52, 199}, + {87, 199}, + {87, 187}, + {52, 187}, + {71, 187}, + {71, 184}, + {69, 184}, + {71, 182}, + {73, 184}, + {69, 184}, + {-1, -1}, + {90, 187}, + {90, 199}, + {130, 199}, + {130, 187}, + {90, 187}, + {110, 187}, + {110, 184}, + {108, 184}, + {110, 182}, + {112, 184}, + {108, 184}, + {-1, -1}, + {134, 187}, + {134, 199}, + {170, 199}, + {170, 187}, + {134, 187}, + {152, 187}, + {152, 184}, + {150, 184}, + {152, 182}, + {154, 184}, + {153, 184}, + {-1, -1}, + {174, 187}, + {174, 199}, + {216, 199}, + {216, 187}, + {174, 187}, + {195, 187}, + {195, 184}, + {191, 184}, + {195, 182}, + {197, 184}, + {193, 184}, + {-1, -1}, + {220, 187}, + {220, 199}, + {256, 199}, + {256, 187}, + {220, 187}, + {232, 187}, + {232, 184}, + {230, 184}, + {232, 182}, + {234, 184}, + {232, 184}, + {-1, -1}, + {260, 187}, + {260, 199}, + {302, 199}, + {302, 187}, + {260, 187}, + {278, 187}, + {278, 184}, + {276, 184}, + {278, 182}, + {280, 184}, + {278, 184}, + {-1, -1}, + {306, 187}, + {306, 199}, + {344, 199}, + {344, 187}, + {306, 187}, + {321, 187}, + {321, 184}, + {319, 184}, + {321, 182}, + {323, 184}, + {321, 184}, +}; +bvgVect arpVCFBox = { + aVCF, + arpVCFBoxCoords +}; + +#define aADSR 85 +bvgCoords arpADSRBoxCoords[aADSR] = { + {0, 10}, + {0, 200}, + {-1, -1}, + {15, 82}, + {15, 97}, + {110, 97}, + {110, 82}, + {15, 82}, + {-1, -1}, + {110, 90}, + {120, 90}, + {120, 89}, + {127, 90}, + {120, 91}, + {120, 89}, + {-1, -1}, + {72, 153}, + {72, 165}, + {140, 165}, + {140, 153}, + {72, 153}, + {105, 153}, + {105, 149}, + {80, 149}, + {80, 150}, + {72, 149}, + {80, 148}, + {80, 150}, + {-1, -1}, + {87, 165}, + {87, 167}, + {96, 170}, + {-1, -1}, + {125, 165}, + {125, 167}, + {134, 170}, + {-1, -1}, + {66, 170}, + {58, 167}, + {58, 160}, + {56, 160}, + {58, 158}, + {60, 160}, + {58, 160}, + // AR BOX + {-1, -1}, + {55, 129}, + {55, 140}, + {130, 140}, + {130, 129}, + {55, 129}, + {-1, -1}, + {58, 145}, + {58, 143}, + {56, 143}, + {58, 141}, + {60, 143}, + {58, 140}, + {-1, -1}, + {110, 129}, + {110, 127}, + {-1, -1}, + {105, 193}, + {107, 193}, + {107, 191}, + {114, 191}, + {114, 193}, + {116, 193}, + {-1, -1}, + {140, 193}, + {142, 193}, + {142, 191}, + {142, 193}, + {155, 193}, + {-1, -1}, + {48, 187}, + {48, 199}, + {87, 199}, + {87, 187}, + {48, 187}, + {71, 187}, + {71, 184}, + {69, 184}, + {71, 182}, + {73, 184}, + {69, 184}, +}; +bvgVect arpADSRBox = { + aADSR, + arpADSRBoxCoords +}; + +bvgImage arpImage = { + 1771, 1000, + 0x00000000, + 204, + { + {{BVG_STRING, BLUE_WHITE2, 47, 74, 20, 8, "on"}}, // ODD MODS + {{BVG_STRING, BLUE_WHITE2, 113, 135, 130, 8, "MAX GLIDE"}}, + {{BVG_STRING, BLUE_WHITE2, 75, 214, 110, 8, "PREAMPLIFIER"}}, + {{BVG_STRING, BLUE_WHITE2, 195, 245, 25, 6, "OUT"}}, + {{BVG_VECT, BLUE_WHITE2, 38, 101, 200, 120, (char *) &arpPABox}}, + {{BVG_STRING, BLUE_WHITE2, 47, 278, 80, 8, "ENVELOPE"}}, + {{BVG_STRING, BLUE_WHITE2, 47, 290, 80, 8, "FOLLOWER"}}, + {{BVG_STRING, BLUE_WHITE2, 136, 278, 40, 8, "RING"}}, + {{BVG_STRING, BLUE_WHITE2, 140, 290, 30, 8, "MOD"}}, + {{BVG_STRING, BLUE_WHITE2, 195, 310, 25, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 185, 345, 45, 8, "AUDIO"}}, + {{BVG_STRING, BLUE_WHITE2, 82, 470, 25, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 199, 533, 18, 7, "DC"}}, + {{BVG_STRING, BLUE_WHITE2, 44, 607, 28, 8, "PRE"}}, + {{BVG_STRING, BLUE_WHITE2, 44, 621, 28, 8, "AMP"}}, + {{BVG_STRING, BLUE_WHITE2, 115, 607, 36, 8, "VCO1"}}, + {{BVG_STRING, BLUE_WHITE2, 190, 607, 36, 8, "VCO2"}}, + {{BVG_VECT|2, BLUE_WHITE2, 116, 620, 24, 9, (char *) &rampWave}}, + {{BVG_VECT|2, BLUE_WHITE2, 195, 620, 24, 9, (char *) &sineWave}}, + {{BVG_STRING, BLUE_WHITE2, 240, 45, 200, 8, "INITIAL OSC FREQUENCY"}}, + {{BVG_STRING, BLUE_WHITE2, 240, 63, 200, 8, " -7 +7 "}}, + {{BVG_STRING, BLUE_WHITE2, 240, 74, 200, 8, " .03 0.3 3.0 30 "}}, + {{BVG_STRING, BLUE_WHITE2, 240, 115, 200, 8, " FINE TUNE "}}, + {{BVG_STRING, BLUE_WHITE2, 240, 155, 200, 8, " OSCILLATOR SYNC "}}, + {{BVG_STRING, BLUE_WHITE2, 304, 200, 80, 8, "1<-2 SYNC"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 185, 25, 8, "2'"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 201, 25, 8, "4'"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 218, 25, 8, "8'"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 234, 30, 8, "16'"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 252, 35, 8, "32'"}}, + {{BVG_STRING, BLUE_WHITE2, 372, 230, 30, 6, "SAW"}}, + {{BVG_STRING, BLUE_WHITE2, 372, 288, 30, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 358, 346, 60, 6, "SQUARE"}}, + {{BVG_VECT, BLUE_WHITE2, 232, 10, 100, 315, (char *) &arpVCO1Box}}, + {{BVG_STRING|3, BLUE_WHITE2, 278, 280, 85, 20, "VCO1"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 430, 30, 8, "LFO"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 445, 40, 8, "AUDIO"}}, + {{BVG_STRING, BLUE_WHITE2, 258, 460, 30, 8, "KBD"}}, + {{BVG_STRING, BLUE_WHITE2, 280, 530, 100, 8, "FM CONTROL"}}, + {{BVG_STRING, BLUE_WHITE2, 250, 607, 28, 8, "KBD"}}, + {{BVG_STRING, BLUE_WHITE2, 254, 621, 18, 8, "CV"}}, + {{BVG_STRING, BLUE_WHITE2, 290, 607, 28, 8, "S/H"}}, + {{BVG_STRING, BLUE_WHITE2, 290, 621, 28, 8, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 326, 612, 36, 8, "ADSR"}}, + {{BVG_STRING, BLUE_WHITE2, 372, 607, 36, 8, "VCO2"}}, + {{BVG_VECT|2, BLUE_WHITE2, 374, 620, 24, 9, (char *) &sineWave}}, + {{BVG_VECT, BLUE_WHITE2, 413, 10, 100, 315, (char *) &arpVCO1Box}}, + {{BVG_STRING|3, BLUE_WHITE2, 454, 280, 85, 20, "VCO2"}}, + {{BVG_STRING, BLUE_WHITE2, 440, 45, 200, 8, "INITIAL OSC FREQUENCY"}}, + {{BVG_STRING, BLUE_WHITE2, 440, 63, 200, 8, " -7 +7 "}}, + {{BVG_STRING, BLUE_WHITE2, 440, 74, 200, 8, " .03 0.3 3.0 30 "}}, + {{BVG_STRING, BLUE_WHITE2, 440, 115, 200, 8, " FINE TUNE "}}, + {{BVG_STRING, BLUE_WHITE2, 440, 165, 200, 8, " 10% 50% 90% "}}, + {{BVG_STRING, BLUE_WHITE2, 440, 190, 200, 8, " PULSE WIDTH "}}, + {{BVG_STRING, BLUE_WHITE2, 438, 185, 25, 8, "2'"}}, + {{BVG_STRING, BLUE_WHITE2, 438, 201, 25, 8, "4'"}}, + {{BVG_STRING, BLUE_WHITE2, 438, 218, 25, 8, "8'"}}, + {{BVG_STRING, BLUE_WHITE2, 438, 234, 30, 8, "16'"}}, + {{BVG_STRING, BLUE_WHITE2, 438, 252, 35, 8, "32'"}}, + {{BVG_STRING, BLUE_WHITE2, 547, 230, 100, 6, "TRIANGLE SAW"}}, + {{BVG_STRING, BLUE_WHITE2, 552, 288, 30, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 552, 346, 90, 6, "SINE PULSE"}}, + {{BVG_STRING, BLUE_WHITE2, 552, 360, 90, 6, " PWM "}}, + {{BVG_STRING, BLUE_WHITE2, 438, 430, 30, 8, "LFO"}}, + {{BVG_STRING, BLUE_WHITE2, 438, 445, 40, 8, "AUDIO"}}, + {{BVG_STRING, BLUE_WHITE2, 438, 460, 30, 8, "KBD"}}, + {{BVG_STRING, BLUE_WHITE2, 455, 530, 190, 8, "FM CONTROL PWM"}}, + {{BVG_STRING, BLUE_WHITE2, 430, 607, 28, 8, "KBD"}}, // 180 + {{BVG_STRING, BLUE_WHITE2, 434, 621, 18, 8, "CV"}}, + {{BVG_STRING, BLUE_WHITE2, 470, 607, 28, 8, "S/H"}}, + {{BVG_STRING, BLUE_WHITE2, 470, 621, 28, 8, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 506, 612, 36, 8, "ADSR"}}, + {{BVG_STRING, BLUE_WHITE2, 553, 607, 36, 8, "VCO1"}}, + {{BVG_VECT|2, BLUE_WHITE2, 554, 620, 24, 9, (char *) &squareWave}}, + {{BVG_STRING, BLUE_WHITE2, 596, 607, 36, 8, "NOISE"}}, + {{BVG_STRING, BLUE_WHITE2, 596, 621, 36, 8, " GEN "}}, + {{BVG_VECT, BLUE_WHITE2, 413, 10, 100, 315, (char *) &arpVCO1aBox}}, + {{BVG_VECT, BLUE_WHITE2, 635, 10, 100, 315, (char *) &arpVCO1Box}}, + {{BVG_STRING|3, BLUE_WHITE2, 222 + 454, 280, 85, 20, "VCO3"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 440, 45, 200, 8, "INITIAL OSC FREQUENCY"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 440, 63, 200, 8, " -7 +7 "}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 440, 74, 200, 8, " .03 0.3 3.0 30 "}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 440, 115, 200, 8, " FINE TUNE "}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 440, 165, 200, 8, " 10% 50% 90% "}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 440, 190, 200, 8, " PULSE WIDTH "}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 185, 25, 8, "2'"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 201, 25, 8, "4'"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 218, 25, 8, "8'"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 234, 30, 8, "16'"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 252, 35, 8, "32'"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 547, 230, 100, 6, "TRIANGLE SAW"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 552, 288, 30, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 552, 346, 90, 6, "SINE PULSE"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 552, 360, 90, 6, " PWM "}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 430, 30, 8, "LFO"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 445, 40, 8, "AUDIO"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 438, 460, 30, 8, "KBD"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 455, 530, 190, 8, "FM CONTROL PWM"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 430, 607, 28, 8, "KBD"}}, // 180 + {{BVG_STRING, BLUE_WHITE2, 222 + 434, 621, 18, 8, "CV"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 467, 607, 36, 8, "NOISE"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 471, 621, 28, 8, "GEN"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 506, 612, 36, 8, "ADSR"}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 553, 607, 36, 8, "VCO2"}}, + {{BVG_VECT|2, BLUE_WHITE2, 222 + 554, 620, 24, 9, (char *) &sineWave}}, + {{BVG_STRING, BLUE_WHITE2, 222 + 596, 607, 36, 8, "VCO2"}}, + {{BVG_VECT|2, BLUE_WHITE2, 222 + 596, 620, 24, 9, (char *) &triWave}}, + {{BVG_VECT, BLUE_WHITE2, 222 + 413, 10, 100, 315, (char *) &arpVCO1aBox}}, + {{BVG_VECT, BLUE_WHITE2, 857, 10, 100, 315, (char *) &arpVCFBox}}, + {{BVG_STRING, BLUE_WHITE2, 950, 45, 200, 8, "INITIAL FILT FREQUENCY"}}, + {{BVG_STRING, BLUE_WHITE2, 950, 74, 200, 8, "10HZ 100HZ 1KHZ 10KHZ"}}, + {{BVG_STRING, BLUE_WHITE2, 950, 115, 200, 8, " RESONANCE "}}, + {{BVG_STRING|3, BLUE_WHITE2, 1038, 280, 85, 20, "VCF"}}, + {{BVG_STRING, BLUE_WHITE2, 1168, 315, 30, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 946, 530, 250, 8, "AUDIO CONTROL"}}, + {{BVG_STRING, BLUE_WHITE2, 869, 607, 36, 8, "RING"}}, // 180 + {{BVG_STRING, BLUE_WHITE2, 872, 621, 28, 8, "MOD"}}, + {{BVG_STRING, BLUE_WHITE2, 913, 607, 36, 8, "VCO1"}}, + {{BVG_VECT|2, BLUE_WHITE2, 913, 620, 24, 9, (char *) &squareWave}}, + {{BVG_STRING, BLUE_WHITE2, 951, 607, 36, 8, "VCO2"}}, + {{BVG_VECT|2, BLUE_WHITE2, 951, 620, 24, 9, (char *) &squareWave}}, + {{BVG_STRING, BLUE_WHITE2, 995, 607, 36, 8, "VCO3"}}, + {{BVG_VECT|2, BLUE_WHITE2, 996, 620, 24, 9, (char *) &triWave}}, + {{BVG_STRING, BLUE_WHITE2, 1036, 607, 36, 8, "NOISE"}}, + {{BVG_STRING, BLUE_WHITE2, 1038, 621, 28, 8, "GEN"}}, + {{BVG_STRING, BLUE_WHITE2, 1083, 607, 28, 8, "KBD"}}, + {{BVG_STRING, BLUE_WHITE2, 1087, 621, 20, 8, "CV"}}, + {{BVG_STRING, BLUE_WHITE2, 1122, 612, 36, 8, "ADSR"}}, + {{BVG_STRING, BLUE_WHITE2, 1166, 607, 36, 8, "VCO2"}}, + {{BVG_VECT|2, BLUE_WHITE2, 1168, 620, 24, 9, (char *) &sineWave}}, + {{BVG_VECT, BLUE_WHITE2, 1205, 10, 100, 315, (char *) &arpADSRBox}}, + {{BVG_STRING, BLUE_WHITE2, 1210, 52, 200, 8, " A D S R "}}, + {{BVG_STRING, BLUE_WHITE2, 1210, 74, 200, 8, "TIME TIME VOLT TIME"}}, + {{BVG_STRING|3, BLUE_WHITE2, 1225, 280, 85, 20, "ADSR"}}, + {{BVG_STRING, BLUE_WHITE2, 1348, 315, 30, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 1210, 342, 200, 8, " A MANUAL R "}}, + {{BVG_STRING, BLUE_WHITE2, 1210, 360, 200, 8, "TIME START OUT TIME"}}, + {{BVG_STRING|3, BLUE_WHITE2, 1275, 425, 45, 16, "AR"}}, + {{BVG_STRING, BLUE_WHITE2, 1283, 498, 70, 8, "KEYBOARD"}}, + {{BVG_STRING, BLUE_WHITE2, 1284, 513, 70, 8, "GATE/TRIG"}}, + {{BVG_STRING, BLUE_WHITE2, 1295, 583, 90, 8, "GATE TRIG"}}, + {{BVG_STRING, BLUE_WHITE2, 1260, 607, 28, 8, "S/H"}}, + {{BVG_STRING, BLUE_WHITE2, 1256, 621, 36, 8, "GATE"}}, + {{BVG_VECT, BLUE_WHITE2, 1382, 10, 100, 315, (char *) &arpVCABox}}, + {{BVG_STRING, BLUE_WHITE2, 1400, 72, 200, 8, "MASTER VOLUME "}}, + {{BVG_STRING, BLUE_WHITE2, 1400, 115, 200, 8, "PROGRAM VOLUME "}}, + {{BVG_STRING, BLUE_WHITE2, 1400, 160, 200, 8, "INITIAL VOLUME "}}, + {{BVG_STRING, BLUE_WHITE2, 1530, 315, 30, 6, "OUT"}}, + {{BVG_STRING|3, BLUE_WHITE2, 1430, 280, 70, 20, "VCA"}}, + {{BVG_STRING, BLUE_WHITE2, 1410, 530, 50, 8, "AUDIO"}}, + {{BVG_STRING, BLUE_WHITE2, 1396, 612, 28, 8, "VCF"}}, + {{BVG_STRING, BLUE_WHITE2, 1432, 607, 36, 8, "RING"}}, + {{BVG_STRING, BLUE_WHITE2, 1436, 621, 28, 8, "MOD"}}, + {{BVG_STRING, BLUE_WHITE2, 1476, 612, 36, 8, " AR "}}, + {{BVG_STRING, BLUE_WHITE2, 1520, 612, 36, 8, "ADSR"}}, + {{BVG_VECT, BLUE_WHITE2, 1562, 10, 100, 315, (char *) &arpMIXBox}}, + {{BVG_STRING, BLUE_WHITE2, 1585, 45, 160, 10, "LEFT RIGHT"}}, + {{BVG_STRING, BLUE_WHITE2, 1585, 62, 160, 8, " OUT OUT "}}, + {{BVG_STRING, BLUE_WHITE2, 1645, 115, 28, 8, "PAN"}}, + {{BVG_STRING, BLUE_WHITE2, 1575, 207, 190, 8, "LEFT RIGHT "}}, + {{BVG_STRING|2, BLUE_WHITE2, 1580, 285, 60, 10, "MIXER"}}, + {{BVG_STRING|2, BLUE_WHITE2, 1667, 440, 60, 10, "DELAY"}}, + {{BVG_STRING, BLUE_WHITE2, 1584, 530, 50, 8, "AUDIO"}}, + {{BVG_STRING, BLUE_WHITE2, 1574, 612, 28, 8, "VCF"}}, + {{BVG_STRING, BLUE_WHITE2, 1618, 612, 28, 8, "VCA"}}, + {{BVG_STRING, BLUE_WHITE2, 1658, 607, 40, 8, "MIXER"}}, + {{BVG_STRING, BLUE_WHITE2, 1658, 621, 40, 8, " OUT "}}, + {{BVG_VECT, BLUE_WHITE2, 40, 660, 100, 100, (char *) &arpMODBox}}, + {{BVG_STRING, BLUE_WHITE2, 155, 669, 160, 10, "NOISE GENERATOR"}}, + {{BVG_STRING, BLUE_WHITE2, 175, 717, 88, 8, "WHITE MAX"}}, + {{BVG_STRING, BLUE_WHITE2, 145, 795, 42, 8, "PINK"}}, + {{BVG_STRING, BLUE_WHITE2, 165, 883, 96, 8, "LO-FREQ MIN"}}, + {{BVG_STRING, BLUE_WHITE2, 245, 774, 52, 6, "NOISE"}}, + {{BVG_STRING, BLUE_WHITE2, 255, 825, 30, 6, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 430, 669, 180, 10, "VOLTAGE PROCESSORS"}}, + {{BVG_STRING, BLUE_WHITE2, 450, 755, 160, 10, "INVERTING MIXER"}}, + {{BVG_STRING, BLUE_WHITE2, 450, 853, 160, 10, "INVERTING MIXER"}}, + {{BVG_STRING, BLUE_WHITE2, 460, 907, 140, 10, "LAG PROCESSOR"}}, + {{BVG_STRING, BLUE_WHITE2, 640, 888, 28, 10, "LAG"}}, + {{BVG_STRING, BLUE_WHITE2, 750, 767, 28, 10, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 750, 860, 28, 10, "OUT"}}, + {{BVG_STRING, BLUE_WHITE2, 867, 669, 120, 10, "SAMPLE+HOLD"}}, + {{BVG_STRING, BLUE_WHITE2, 800, 700, 58, 10, "NOISE"}}, + {{BVG_STRING, BLUE_WHITE2, 800, 715, 58, 10, " GEN "}}, + {{BVG_STRING, BLUE_WHITE2, 880, 718, 90, 10, "LVL RATE"}}, + {{BVG_STRING, BLUE_WHITE2, 973, 718, 70, 8, "ELECTRO"}}, + {{BVG_STRING, BLUE_WHITE2, 974, 730, 70, 8, "SWITCH"}}, + {{BVG_STRING, BLUE_WHITE2, 953, 828, 30, 8, "EXT"}}, + {{BVG_STRING, BLUE_WHITE2, 953, 840, 30, 8, "CLK"}}, + {{BVG_STRING, BLUE_WHITE2, 810, 758, 58, 8, "CLOCK"}}, + {{BVG_STRING, BLUE_WHITE2, 810, 773, 58, 8, " OUT "}}, + {{BVG_STRING, BLUE_WHITE2, 923, 902, 50, 8, "SYNC"}}, + {{BVG_STRING, BLUE_WHITE2, 850, 888, 58, 8, "CLOCK"}}, + {{BVG_STRING, BLUE_WHITE2, 850, 903, 58, 8, " IN "}}, + {{BVG_STRING, BLUE_WHITE2, 1020, 755, 10, 8, "A"}}, + {{BVG_STRING, BLUE_WHITE2, 1020, 793, 10, 8, "B"}}, + {{BVG_STRING, BLUE_WHITE2, 1020, 895, 10, 8, "C"}}, + {{BVG_STRING, BLUE_WHITE2, 850, 950, 120, 8, "INTERNAL CLOCK"}}, + {{BVG_STRING, BLUE_WHITE2, 1095, 669, 80, 10, "CHORUS"}}, + {{BVG_STRING, BLUE_WHITE2, 1252, 669, 70, 10, "DELAY"}}, + {{BVG_STRING, BLUE_WHITE2, 1060, 885, 160, 8, "RATE DEPTH SPIN GAIN"}}, + {{BVG_STRING, BLUE_WHITE2, 1220, 885, 160, 8, "TIME FEED CROSS GAIN"}}, + {{BVG_STRING, BLUE_WHITE2, 1480, 885, 50, 8, "PROG"}}, + {{BVG_STRING, BLUE_WHITE2, 1480, 910, 50, 8, "MIDI"}}, + } +}; + +bvgImage odysseyMemImage = { + 1200, 100, + 0x00000000, + 4, + { + {{BVG_STRING, BVG_WHITE, 20, 80, 200, 12, "MARK I/II DOWN UP"}}, + {{BVG_STRING, BVG_WHITE, 148, 45, 35, 12, "MIDI"}}, + {{BVG_STRING, BVG_WHITE, 225, 80, 440, 12, "LOAD 1 2 3 4 5 6 7 8"}}, + {{BVG_STRING, BVG_WHITE, 643, 80, 440, 12, "1 2 3 4 5 6 7 8 SAVE"}}, + } +}; + +bvgImage odysseyImage = { + 1200, 600, + 0x00000000, + 68, + { + {{BVG_STRING, BVG_WHITE, 150, 22, 360, 8, "FREQUENCY FREQUENCY "}}, + {{BVG_STRING, BVG_WHITE, 94, 35, 420, 8, "NOISE COARSE FINE KBD COARSE FINE SYNC"}}, + {{BVG_STRING, BVG_WHITE, 60, 60, 40, 8, "PINK"}}, + {{BVG_STRING, BVG_WHITE, 55, 77, 45, 8, "WHITE"}}, + {{BVG_STRING, BVG_WHITE, 94, 103, 420, 8, " LFO OFF "}}, + {{BVG_STRING, BVG_WHITE, 420, 196, 40, 8, "DUAL"}}, + {{BVG_STRING, BVG_WHITE, 96, 230, 420, 8, " VOLTAGE VOLTAGE "}}, + {{BVG_STRING, BVG_WHITE, 96, 242, 420, 8, " CONTROLLED CONTROLLED "}}, + {{BVG_STRING, BVG_WHITE, 96, 254, 420, 8, " OSCILLATOR OSCILLATOR "}}, + {{BVG_STRING, BVG_WHITE, 96, 266, 420, 8, " 1 2 "}}, + {{BVG_STRING, BVG_WHITE, 240, 307, 360, 8, "PW PWM PW PWM "}}, + {{BVG_VECT|2, OFF_WHITE, 280, 230, 24, 10, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 280, 270, 24, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 460, 230, 24, 10, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 460, 270, 24, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 617, 100, 16, 10, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 617, 140, 16, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 63, 307, 90, 8, "TRANSPOSE"}}, + {{BVG_STRING, BVG_WHITE, 100, 345, 20, 8, "+1"}}, + {{BVG_STRING, BVG_WHITE, 100, 445, 20, 8, "-1"}}, + {{BVG_STRING, BVG_WHITE, 25, 463, 50, 8, "GLIDE"}}, + {{BVG_STRING, BVG_WHITE, 25, 560, 130, 8, "PITCH CONTROL"}}, + {{BVG_STRING, BVG_WHITE, 507, 19, 800, 8, " LFO VCF VCF HPF VCA ENV "}}, + {{BVG_STRING, BVG_WHITE, 507, 35, 800, 8, " FREQ FREQ RES FREQ GAIN A R "}}, + {{BVG_STRING, BVG_WHITE, 510, 290, 800, 8, " ENV "}}, + {{BVG_STRING, BVG_WHITE, 510, 109, 800, 8, " LOW "}}, + {{BVG_STRING, BVG_WHITE, 512, 123, 800, 8, " FREQUENCY "}}, + {{BVG_STRING, BVG_WHITE, 510, 137, 800, 8, " OSCILLATOR "}}, + {{BVG_STRING, BVG_WHITE, 510, 236, 800, 8, " VOLTAGE HIGH VOLTAGE "}}, + {{BVG_STRING, BVG_WHITE, 510, 250, 800, 8, " SH SH AUDIO CONTROLLED PASS CONTROLLED "}}, + {{BVG_STRING, BVG_WHITE, 510, 264, 800, 8, " MIXER MIXER FILTER FILTER AMPLIFIER "}}, + {{BVG_STRING, BVG_WHITE, 510, 307, 800, 8, " OUTPUT A D S R "}}, + {{BVG_STRING, BVG_WHITE, 155, 465, 420, 8, " FM FM "}}, + {{BVG_STRING, BVG_WHITE, 153, 481, 420, 8, " LFO SH LFO LFO SH LFO "}}, + {{BVG_VECT|2, OFF_WHITE, 158, 495, 20, 10, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 280, 495, 20, 10, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 342, 495, 20, 10, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 462, 495, 20, 10, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 522, 495, 20, 10, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 726, 495, 20, 10, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 766, 495, 20, 10, (char *) &sawWave}}, + {{BVG_STRING, BVG_WHITE, 155, 560, 420, 8, " LFO ADSR ADSR SH ADSR ADSR "}}, + {{BVG_VECT|2, OFF_WHITE, 158, 574, 20, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 198, 574, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 282, 574, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 376, 574, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 465, 574, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 524, 574, 20, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 562, 574, 20, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 727, 574, 20, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 768, 574, 20, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 850, 574, 20, 10, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 889, 495, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 985, 495, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 889, 574, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 985, 574, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 1028, 574, 20, 10, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 1150, 574, 20, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 155, 574, 420, 8, " MIX "}}, + {{BVG_STRING, BVG_WHITE, 510, 481, 800, 8, " VCO1 NOISE TRIG NOISE VCO1 VCO2 KBD SH ADSR AR ADSR AR "}}, + {{BVG_STRING, BVG_WHITE, 510, 495, 800, 8, " KBD KBD KBD KBD "}}, + {{BVG_STRING, BVG_WHITE, 507, 560, 800, 8, " RING VCO1 VCO2 SH LFO AR ADSR REPEAT AUTO REPEAT "}}, + {{BVG_STRING, BVG_WHITE, 507, 574, 800, 8, " MOD MIX "}}, + {{BVG_VECT|2, OFF_WHITE, 1060, 16, 20, 10, (char *) &env}}, + {{BVG_VECT|2, OFF_WHITE, 1100, 285, 20, 10, (char *) &env}}, + {{BVG_VECT, OFF_WHITE, 40, 495, 12, 10, (char *) &flat}}, + {{BVG_VECT, OFF_WHITE, 73, 495, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 106, 495, 10, 10, (char *) &sharp}}, + } +}; + +bvgImage subMiniImage = { + 680, 400, + 0x00000000, + 2, + { + {{BVG_VECT, OFF_WHITE, 0, 0, 34, 53, (char *) &pot}}, + {{BVG_STRING, OFF_WHITE, 4, 55, 35, 8, "O 1O"}}, + } +}; + +bvgImage subMiniImage2 = { + 680, 400, + 0x00000000, + 3, + { + {{BVG_VECT, BVG_WHITE, 0, 0, 46, 70, (char *) &pot}}, + {{BVG_STRING, OFF_WHITE, 0, 4, 57, 8, "-3 3"}}, + {{BVG_STRING, OFF_WHITE, 0, 75, 55, 8, "-7 7"}}, + } +}; + +bvgImage subMiniImage3 = { + 680, 400, + 0x00000000, + 3, + { + {{BVG_STRING, OFF_WHITE, 8, 0, 38, 8, "8 4"}}, + {{BVG_STRING, OFF_WHITE, 0, 25, 55, 8, "16 2"}}, + {{BVG_STRING, OFF_WHITE, 7, 50, 45, 8, "32 1"}}, + } +}; + +bvgImage subMiniImage4 = { + 680, 400, + 0x00000000, + 6, + { + {{BVG_VECT, OFF_WHITE, 5, 48, 7, 8, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 0, 23, 7, 8, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 5, 0, 7, 8, (char *) &pWave}}, + {{BVG_VECT, OFF_WHITE, 30, 0, 7, 8, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 37, 23, 7, 8, (char *) &triWave}}, + {{BVG_VECT, BVG_WHITE, 34, 48, 7, 8, (char *) &biRampWave}}, + } +}; + +bvgImage pro1Pot = { + 1000, 600, + 0x00000000, + 6, + { + {{BVG_STRING, BVG_WHITE, 45, 17, 8, 9, "5"}}, + {{BVG_STRING, BVG_WHITE, 29, 21, 60, 9, " 4 6 "}}, + {{BVG_STRING, BVG_WHITE, 20, 36, 80, 9, " 3 7 "}}, + {{BVG_STRING, BVG_WHITE, 15, 56, 90, 9, " 2 8 "}}, + {{BVG_STRING, BVG_WHITE, 21, 78, 80, 9, " 1 9 "}}, + {{BVG_STRING, BVG_WHITE, 32, 93, 50, 9, " O 1O"}}, + } +}; + +bvgImage pro1ModPot = { + 1000, 600, + 0x00000000, + 10, + { + {{BVG_STRING, BVG_WHITE, 45, 17, 8, 9, "5"}}, + {{BVG_STRING, BVG_WHITE, 29, 21, 60, 9, " 4 6 "}}, + {{BVG_STRING, BVG_WHITE, 20, 36, 80, 9, " 3 7 "}}, + {{BVG_STRING, BVG_WHITE, 15, 56, 90, 9, " 2 8 "}}, + {{BVG_STRING, BVG_WHITE, 21, 78, 80, 9, " 1 9 "}}, + {{BVG_STRING, BVG_WHITE, 32, 93, 50, 9, " O 1O"}}, + {{BVG_STRING, BVG_WHITE, 30, 117, 55, 10, "AMOUNT"}}, + {{BVG_STRING, BVG_WHITE, 84, 16, 45, 9, "WHEEL"}}, + {{BVG_STRING, BVG_WHITE, 85, 100, 45, 9, "DIRECT"}}, + {{BVG_STRING, BVG_WHITE, 85, 117, 45, 9, "ROUTE"}}, + } +}; + +bvgImage pro1ModSwitch = { + 1000, 600, + 0x00000000, + 3, + { + {{BVG_STRING, BVG_WHITE, 0, 0, 40, 9, "WHEEL"}}, + {{BVG_STRING, BVG_WHITE, 0, 25, 40, 9," OFF "}}, + {{BVG_STRING, BVG_WHITE, 0, 50, 40, 9,"ROUTE"}}, + } +}; + +bvgImage bmeEnvSel = { + 1000, 400, + 0x00000000, + 2, + { + {{BVG_VECT|2, OFF_WHITE, 1, 0, 30, 12, (char *) &triWave}}, + {{BVG_VECT|2, OFF_WHITE, 1, 74, 30, 12, (char *) &squareWave}}, + } +}; + +bvgCoords obxLogoCoords[31] = { + {0, 0}, + {40, 0}, + {50, 5}, + {64, 14}, + {64, 28}, + {54, 39}, + {66, 48}, + {74, 70}, + {74, 82}, + {70, 90}, + {60, 100}, + {0, 100}, + {14, 96}, + {14, 4}, + {0, 0}, + {-1, -1}, + {28, 12}, + {36, 12}, + {46, 20}, + {46, 29}, + {35, 37}, + {28, 37}, + {28, 12}, + {-1, -1}, + {28, 52}, + {41, 52}, + {51, 70}, + {51, 79}, + {40, 92}, + {28, 92}, + {28, 52}, +}; +bvgVect obxLogo = { + 31, + obxLogoCoords +}; + +bvgCoords obxXCoords[21] = { + {0, 0}, + {40, 0}, + {38, 10}, + {53, 34}, + {70, 15}, + {75, 0}, + {85, 0}, + {80, 15}, + {57, 40}, + {90, 96}, + {100, 100}, + {60, 100}, + {62, 90}, + {43, 56}, + {15, 85}, + {10, 100}, + {00, 100}, + {5, 85}, + {40, 49}, + {15, 10}, + {0, 0}, +}; +bvgVect obxX = { + 21, + obxXCoords +}; + +bvgCoords obxHiphenCoords[7] = { + {30, 40}, + {70, 40}, + {60, 45}, + {50, 60}, + {0, 60}, + {20, 55}, + {30, 40}, +}; +bvgVect obxHiphen = { + 7, + obxHiphenCoords +}; + +bvgImage obxLogoImage = { + 900, 150, + 0x00000000, + 4, + { + {{BVG_VECT, OFF_WHITE, 200, 5, 45, 120, (char *) &obxLogo}}, + {{BVG_VECT, OFF_WHITE, 230, 5, 45, 120, (char *) &obxLogo}}, + {{BVG_VECT, OFF_WHITE, 265, 5, 35, 120, (char *) &obxHiphen}}, + {{BVG_VECT, OFF_WHITE, 278, 5, 45, 120, (char *) &obxX}}, + } +}; + +bvgImage obxModImage = { + 200, 200, + 0x00000000, + 1, + { + {{BVG_STRING, BVG_WHITE, 15, 140, 190, 10, "NARROW OSC2 TRANS"}}, + } +}; + +#define obxText(x, y, w, h, W, text) \ + {{BVG_SQUARE, BVG_BLACK, x - 1, y - 1, x + W + 1, y + h + 1}}, \ + {{BVG_STRING, BVG_WHITE, x, y, w, h, text}} + +bvgImage obxImage = { + 750, 200, + 0x00000000, + 81, + { + {{BVG_STRING, BVG_WHITE, 54, 10, 40, 5, "MANUAL"}}, + obxText(54, 30, 40, 5, 28, "VOLUME"), + obxText(39, 75, 80, 5, 58, "AUTO HOLD RESET"), + obxText(50, 110, 50, 5, 38, "MASTERTUNE"), + {{BVG_STRING, BVG_WHITE, 127, 10, 45, 5, "CONTROL"}}, + obxText(130, 30, 30, 5, 23, "GLIDE"), + obxText(127, 75, 40, 5, 28, "UNISON"), + obxText(122, 110, 60, 5, 42, "OSC2 DETUNE"), + {{BVG_STRING, BVG_WHITE, 210, 10, 65, 5, "MODULATION"}}, + obxText(184, 30, 23, 5, 17, "LFO"), + obxText(183, 75, 25, 5, 19, "SINE"), + obxText(178, 110, 45, 5, 35, "SQUARE"), + obxText(184, 144, 23, 5, 17, "S/H"), + obxText(223, 30, 38, 5, 29, "DEPTH"), + obxText(229, 75, 25, 5, 17, "OSC1"), + obxText(229, 110, 25, 5, 19, "OSC2"), + obxText(229, 144, 23, 5, 15, "FILT"), + obxText(269, 30, 23, 5, 17, "PWM"), + obxText(268, 75, 25, 5, 17, "OSC1"), + obxText(268, 110, 25, 5, 19, "OSC2"), + {{BVG_STRING, BVG_WHITE, 350, 10, 75, 5, "OSCILLATORS"}}, + obxText(308, 30, 35, 5, 26, "FREQ1"), + obxText(303, 75, 45, 5, 35, "SAW PULSE"), + obxText(342, 30, 60, 5, 48, "PULSEWIDTH"), + obxText(345, 75, 55, 5, 42, "XMOD SYNC"), + obxText(398, 30, 35, 5, 29, "FREQ2"), + obxText(393, 75, 45, 5, 35, "SAW PULSE"), + {{BVG_STRING, BVG_WHITE, 477, 10, 50, 5, "FILTER"}}, + obxText(443, 30, 30, 5, 23, "FREQ"), + obxText(434, 75, 55, 5, 39, "OSC1 KBD"), + obxText(475, 30, 55, 5, 43, "RESONANCE"), + obxText(480, 75, 45, 5, 35, "HALF FULL"), + obxText(535, 30, 25, 5, 20, "MOD"), + obxText(527, 75, 45, 5, 35, "HALF FULL"), + {{BVG_STRING, BVG_WHITE, 612, 10, 100, 5, "FILTER ENVELOPE"}}, + obxText(580, 30, 180, 5, 139, "ATTACK DECAY SUSTAIN RELEASE"), + obxText(580, 75, 180, 5, 139, "ATTACK DECAY SUSTAIN RELEASE"), + {{BVG_STRING, BVG_WHITE, 608, 115, 110, 5, "AMPLIFIER ENVELOPE"}}, + {{BVG_STRING, BVG_WHITE, 450, 135, 65, 5, "PROGRAMMER"}}, + obxText(310, 144, 25, 5, 18, "LOAD"), + obxText(338, 144, 170, 5, 130, "1 2 3 4 5 6 7 8"), + obxText(485, 144, 170, 5, 130, "1 2 3 4 5 6 7 8"), + obxText(628, 144, 25, 5, 18, "SAVE"), + {{BVG_STRING, BVG_WHITE, 692, 135, 25, 5, "MIDI"}}, + obxText(686, 144, 45, 5, 34, "DOWN UP"), + } +}; + +bvgImage BME700ModImage = { + 100, 100, + 0x00000000, + 4, + { + {{BVG_STRING|2, BVG_WHITE, 28, 8, 55, 6, "MEMORY"}}, + {{BVG_STRING, BVG_WHITE, 15, 33, 110, 3, " 1 2 3 4 "}}, + {{BVG_STRING, BVG_WHITE, 15, 58, 110, 3, " 5 6 7 8 "}}, + {{BVG_STRING, BVG_WHITE, 18, 83, 110, 3, "LOAD SAVE UP MOD "}}, + } +}; + +bvgImage BME700Image = { + 1000, 400, + 0x00000000, + 51, + { + {{BVG_STRING|2, BVG_WHITE, 59, 5, 60, 15, "MOD1"}}, + {{BVG_STRING|2, BVG_WHITE, 193, 5, 60, 15, "MOD2"}}, + {{BVG_IMAGE, BVG_WHITE, 48, 36, 48, 70, (char *) &bmeEnvSel}}, + {{BVG_IMAGE, BVG_WHITE, 243, 36, 48, 70, (char *) &bmeEnvSel}}, + {{BVG_STRING, BVG_WHITE, 102, 25, 120, 8, "CYCLE CYCLE"}}, + {{BVG_STRING, BVG_WHITE, 91, 90, 140, 8, "1Oms 1Os 1Oms 1Os"}}, + {{BVG_STRING, BVG_WHITE, 263, 63, 25, 8, "PWM"}}, + {{BVG_STRING, BVG_WHITE, 122, 112, 70, 8, "VIBRA MIX"}}, + {{BVG_STRING, BVG_WHITE, 220, 122, 40, 8, "SINGLE"}}, + {{BVG_IMAGE, BVG_WHITE, 256, 122, 48, 70, (char *) &bmeEnvSel}}, + {{BVG_STRING, BVG_WHITE, 78, 176, 210, 8, "ENV1 MOD2 MOD2 DOUBLE"}}, + {{BVG_STRING|2, BVG_WHITE, 391, 5, 70, 15, "MIXER"}}, + {{BVG_STRING, BVG_WHITE, 395, 28, 70, 8, "S/N RATIO"}}, + {{BVG_STRING, BVG_WHITE, 356, 87, 180, 8, "WHITE NOISE VCO OUTPUT"}}, + {{BVG_STRING|2, BVG_WHITE, 630, 5, 60, 15, "ENV1"}}, + {{BVG_STRING, BVG_WHITE, 578, 25, 200, 7, "MODE RISE FALL "}}, + {{BVG_STRING, BVG_WHITE, 630, 90, 140, 7, "2ms 2Os 2Oms 2s"}}, + {{BVG_STRING, BVG_WHITE, 630, 112, 70, 8, "ENV MIX VCF"}}, + {{BVG_STRING, BVG_WHITE, 630, 177, 70, 8, "ENV1/ENV2"}}, + {{BVG_STRING|2, BVG_WHITE, 865, 5, 60, 15, "ENV2"}}, + {{BVG_STRING, BVG_WHITE, 820, 25, 200, 7, "MODE RISE FALL "}}, + {{BVG_STRING, BVG_WHITE, 872, 90, 140, 7, "2ms 2Os 2Oms 2s"}}, + {{BVG_STRING, BVG_WHITE, 865, 112, 70, 8, "ENV MIX VCF"}}, + {{BVG_STRING, BVG_WHITE, 866, 177, 70, 8, "ENV1/ENV2"}}, + {{BVG_STRING|2, BVG_WHITE, 131, 189, 50, 15, "VCO"}}, + {{BVG_STRING, BVG_WHITE, 40, 208, 280, 8, "SPEED RATIO VIBRA - + "}}, + {{BVG_STRING, BVG_WHITE, 40, 297, 280, 8, "GLIDE PULSE SHAPE TUNE "}}, + {{BVG_STRING, BVG_WHITE, 40, 310, 280, 7, " ON MAN ENV 8 16"}}, + {{BVG_STRING, BVG_WHITE, 40, 362, 280, 7, " OFF AUTO MOD 4"}}, + {{BVG_VECT|2, OFF_WHITE, 160, 360, 10, 8, (char *) &squareWave}}, + {{BVG_VECT|2, OFF_WHITE, 200, 360, 10, 8, (char *) &triWave}}, + {{BVG_STRING|2, BVG_WHITE, 388, 189, 80, 15, "RES FILT"}}, + {{BVG_STRING, BVG_WHITE, 410, 208, 30, 8, "MODE"}}, + {{BVG_STRING, BVG_WHITE, 408, 221, 36, 8, "SHARP"}}, + {{BVG_STRING, BVG_WHITE, 410, 276, 30, 8, "FLAT"}}, + {{BVG_STRING, BVG_WHITE, 395, 295, 70, 8, "FREQUENCY"}}, + {{BVG_STRING, BVG_WHITE, 360, 310, 160, 7, "1 2 4 8 16 "}}, + {{BVG_STRING, BVG_WHITE, 360, 362, 160, 7, "O O O O O "}}, + {{BVG_STRING|2, BVG_WHITE, 631, 189, 50, 15, "VCF"}}, + {{BVG_STRING, BVG_WHITE, 563, 208, 200, 7, "RESONANCE BASIS ENV"}}, + {{BVG_STRING, BVG_WHITE, 561, 272, 220, 7, " O 6 O 6 MOD ENV "}}, + {{BVG_STRING, BVG_WHITE, 561, 296, 220, 7, " MOD MIX "}}, + {{BVG_IMAGE, BVG_WHITE, 582, 310, 48, 70, (char *) &bmeEnvSel}}, + {{BVG_STRING, BVG_WHITE, 561, 310, 220, 7, " MOD1 KBD "}}, + {{BVG_STRING, BVG_WHITE, 561, 362, 220, 7, " MOD2 MOD MOD ENV "}}, + {{BVG_STRING|2, BVG_WHITE, 868, 189, 50, 15, "VCA"}}, + {{BVG_STRING, BVG_WHITE, 805, 208, 220, 7, "FILTER-MIX OUTPUT MOD-MIX"}}, + {{BVG_STRING, BVG_WHITE, 803, 272, 220, 7, "VCF RES O 6 MOD ENV "}}, + {{BVG_STRING, BVG_WHITE, 803, 310, 220, 7, " MOD1 "}}, + {{BVG_STRING, BVG_WHITE, 803, 362, 220, 7, " MOD2 "}}, + {{BVG_IMAGE, BVG_WHITE, 923, 310, 48, 70, (char *) &bmeEnvSel}}, + {{BVG_STRING|2, BVG_RED, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + {{BVG_STRING|2, BVG_GREEN, 290, 110, 60, 15, "MOD2"}}, + } +}; + +bvgImage Prophet1Image = { + 1000, 600, + 0x00000000, + 100, + { + {{BVG_STRING, BVG_WHITE, 61, 34, 70, 10, "MODULATION"}}, + {{BVG_STRING, BVG_WHITE, 54, 53, 30, 8, "FROM"}}, + {{BVG_STRING, BVG_WHITE, 134, 53, 15, 8, "TO"}}, + {{BVG_IMAGE, BVG_BLACK, 10, 70, 85, 84, (char *) &pro1ModPot}}, + {{BVG_IMAGE, BVG_BLACK, 10, 218, 85, 84, (char *) &pro1ModPot}}, + {{BVG_IMAGE, BVG_BLACK, 10, 366, 85, 84, (char *) &pro1ModPot}}, + {{BVG_IMAGE, BVG_BLACK, 118, 71, 85, 84, (char *) &pro1ModSwitch}}, + {{BVG_IMAGE, BVG_BLACK, 118, 159, 85, 84, (char *) &pro1ModSwitch}}, + {{BVG_IMAGE, BVG_BLACK, 118, 242, 85, 84, (char *) &pro1ModSwitch}}, + {{BVG_IMAGE, BVG_BLACK, 118, 330, 85, 84, (char *) &pro1ModSwitch}}, + {{BVG_IMAGE, BVG_BLACK, 118, 413, 85, 84, (char *) &pro1ModSwitch}}, + {{BVG_STRING, BVG_WHITE, 35, 180, 60, 10, "FILTER ENV"}}, + {{BVG_STRING, BVG_WHITE, 35, 330, 35, 10, "OSC-B"}}, + {{BVG_STRING, BVG_WHITE, 35, 478, 25, 10, "LFO"}}, + {{BVG_STRING, BVG_WHITE, 118, 130, 50, 9, "OSC-A FREQ"}}, + {{BVG_STRING, BVG_WHITE, 118, 214, 50, 9, "OSC-A PW"}}, + {{BVG_STRING, BVG_WHITE, 118, 300, 50, 9, "OSC-B FREQ"}}, + {{BVG_STRING, BVG_WHITE, 118, 386, 50, 9, "OSC-B PW"}}, + {{BVG_STRING, BVG_WHITE, 125, 470, 35, 9, "FILTER"}}, + {{BVG_STRING, BVG_WHITE, 287, 53, 76, 10, "OSCILLATOR A"}}, + {{BVG_STRING, BVG_WHITE, 245, 75, 76, 8, " 1 2 "}}, + {{BVG_STRING, BVG_WHITE, 245, 89, 76, 8, "O 3"}}, + {{BVG_VECT|2, OFF_WHITE, 310, 80, 12, 12, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 340, 80, 12, 12, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 185, 170, 60, 9, "FREQUENCY"}}, + {{BVG_STRING, BVG_WHITE, 368, 170, 66, 9, "PULSE WIDTH"}}, + {{BVG_STRING, BVG_WHITE, 258, 150, 40, 8, "OCTAVE"}}, + {{BVG_STRING, BVG_WHITE, 321, 150, 27, 8, "SHAPE"}}, + {{BVG_STRING, BVG_WHITE, 430, 88, 25, 8, "SYNC"}}, + {{BVG_STRING, BVG_WHITE, 433, 150, 20, 8, "OFF"}}, + {{BVG_STRING, BVG_WHITE, 550, 53, 30, 10, "MIXER"}}, + {{BVG_STRING, BVG_WHITE, 480, 170, 210, 9, "OSC A OSC B NOISE "}}, + {{BVG_STRING, BVG_WHITE, 317, 200, 76, 10, "OSCILLATOR B"}}, + {{BVG_STRING, BVG_WHITE, 245, 222, 76, 8, " 1 2 "}}, + {{BVG_STRING, BVG_WHITE, 245, 237, 76, 8, "O 3"}}, + {{BVG_VECT|2, OFF_WHITE, 310, 227, 12, 12, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 340, 227, 12, 12, (char *) &triWave}}, + {{BVG_VECT|2, OFF_WHITE, 370, 227, 12, 12, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 185, 317, 60, 9, "FREQUENCY"}}, + {{BVG_STRING, BVG_WHITE, 400, 317, 66, 9, "PULSE WIDTH"}}, + {{BVG_STRING, BVG_WHITE, 258, 297, 40, 8, "OCTAVE"}}, + {{BVG_STRING, BVG_WHITE, 337, 297, 27, 8, "SHAPE"}}, + {{BVG_STRING, BVG_WHITE, 460, 234, 60, 8, "LOFREQ KEY"}}, + {{BVG_STRING, BVG_WHITE, 460, 297, 60, 8, "NORMAL OFF"}}, + {{BVG_STRING, BVG_WHITE, 579, 200, 35, 10, "GLIDE"}}, + {{BVG_STRING, BVG_WHITE, 610, 234, 40, 8, " KEY "}}, + {{BVG_STRING, BVG_WHITE, 605, 297, 44, 8, "NORMAL"}}, + {{BVG_STRING, BVG_WHITE, 565, 317, 30, 9, "RATE"}}, + {{BVG_STRING, BVG_WHITE, 780, 53, 36, 10, "FILTER"}}, + {{BVG_STRING, BVG_WHITE, 680, 170, 300, 9, "CUTOFF RESONANCE ENVELOPE KEYBOARD "}}, + {{BVG_STRING, BVG_WHITE, 680, 183, 300, 9, " AMOUNT AMOUNT "}}, + {{BVG_STRING, BVG_WHITE, 680, 318, 350, 9, "ATTACK DECAY SUSTAIN RELEASE TUNE "}}, + {{BVG_STRING, BVG_WHITE, 245, 350, 18, 10, "LFO"}}, + {{BVG_VECT|2, OFF_WHITE, 247, 374, 12, 12, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 276, 374, 12, 12, (char *) &triWave}}, + {{BVG_VECT|2, OFF_WHITE, 307, 374, 12, 12, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 185, 467, 60, 9, "FREQUENCY"}}, + {{BVG_STRING, BVG_WHITE, 274, 444, 27, 8, "SHAPE"}}, + {{BVG_STRING, BVG_WHITE, 371, 350, 64, 10, "SEQUENCER"}}, + {{BVG_STRING, BVG_WHITE, 370, 375, 80, 8, "ON RECORD"}}, + {{BVG_STRING, BVG_WHITE, 370, 450, 80, 8, "OFF PLAY "}}, + {{BVG_STRING, BVG_WHITE, 451, 350, 60, 10, "ARPEGGIATE"}}, + {{BVG_STRING, BVG_WHITE, 460, 375, 50, 8, " UP "}}, + {{BVG_STRING, BVG_WHITE, 490, 415, 50, 8, "OFF "}}, + {{BVG_STRING, BVG_WHITE, 460, 460, 50, 8, "UP/DOWN"}}, + {{BVG_STRING, BVG_WHITE, 577, 350, 30, 10, "MODE"}}, + {{BVG_STRING, BVG_WHITE, 536, 375, 140, 8, "RETRIG REPEAT DRONE"}}, + {{BVG_STRING, BVG_WHITE, 536, 450, 140, 8, "NORMAL NORMAL OFF "}}, + {{BVG_STRING, BVG_WHITE, 774, 350, 56, 10, "AMPLIFIER"}}, + {{BVG_STRING, BVG_WHITE, 680, 467, 350, 9, "ATTACK DECAY SUSTAIN RELEASE VOLUME"}}, + {{BVG_STRING, BVG_WHITE, 28, 530, 100, 9, "DOWN UP"}}, + {{BVG_STRING, BVG_WHITE, 59, 550, 30, 9, "MIDI"}}, + {{BVG_STRING, BVG_WHITE, 50, 565, 50, 9, "CHANNEL"}}, + {{BVG_STRING, BVG_WHITE, 183, 530, 100, 9, "LOAD SAVE BANK"}}, + {{BVG_STRING, BVG_WHITE, 335, 530, 100, 9, " PROGRAMMER "}}, + {{BVG_STRING, BVG_WHITE, 494, 530, 180, 9, "1 2 3 4 5 6 7 8"}}, + {{BVG_STRING, BVG_WHITE, 655, 530, 100, 9, "DOWN UP FIND"}}, + {{BVG_IMAGE, BVG_BLACK, 166, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 355, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 456, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 520, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 582, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 535, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 166, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 384, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 166, 368, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 657, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 720, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 782, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 845, 70, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 657, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 720, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 782, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 845, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 657, 368, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 720, 368, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 782, 368, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 845, 368, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 917, 218, 85, 84, (char *) &pro1Pot}}, + {{BVG_IMAGE, BVG_BLACK, 917, 368, 85, 84, (char *) &pro1Pot}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + {{BVG_VECT, BVG_GREEN, 500, 300, 20, 10, (char *) &biRampWave}}, + } +}; + +bvgImage Prophet52Image = { + 1024, 400, + 0x00000000, + 39, + { + {{BVG_STRING, OFF_WHITE, 70, 34, 85, 10, "POLY MOD"}}, + {{BVG_STRING, OFF_WHITE, 115, 50, 100, 10, "FREQA PWA FILT"}}, + {{BVG_STRING, OFF_WHITE, 9, 109, 120, 10, "FILT OSCB"}}, + {{BVG_STRING, OFF_WHITE, 39, 119, 50, 10, "AMOUNT"}}, + {{BVG_STRING, OFF_WHITE, 145, 114, 35, 10, "DEST"}}, + {{BVG_STRING, OFF_WHITE, 266, 34, 110, 10, "OSCILLATOR A"}}, + {{BVG_VECT, OFF_WHITE, 263, 50, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 294, 50, 10, 10, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 218, 111, 220, 10, "FREQ SHAPE PULSE SYNC"}}, + {{BVG_STRING, OFF_WHITE, 468, 34, 45, 10, "MIXER"}}, + {{BVG_STRING, OFF_WHITE, 419, 111, 155, 10, "OSC-A OSC-B NOISE"}}, + {{BVG_STRING, OFF_WHITE, 642, 34, 50, 10, "FILTER"}}, + {{BVG_STRING, OFF_WHITE, 575, 111, 200, 10, "CUTOFF RES ENV KBD"}}, + {{BVG_STRING, OFF_WHITE, 572, 226, 220, 10, "ATTACK DECAY SUSTAIN RELEASE"}}, + {{BVG_STRING, OFF_WHITE, 910, 34, 40, 10, "MIDI"}}, + {{BVG_STRING, OFF_WHITE, 778, 111, 280, 10, "TUNE A440 DOWN UP TUNE"}}, + {{BVG_STRING, OFF_WHITE, 110, 145, 22, 10, "LFO"}}, + {{BVG_VECT, OFF_WHITE, 120, 160, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 150, 160, 10, 10, (char *) &triWave}}, + {{BVG_VECT, OFF_WHITE, 180, 160, 10, 10, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 65, 226, 130, 10, "FREQ SHAPE"}}, + {{BVG_STRING, OFF_WHITE, 305, 145, 110, 10, "OSCILLATOR B"}}, + {{BVG_VECT, OFF_WHITE, 320, 160, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 350, 160, 10, 10, (char *) &triWave}}, + {{BVG_VECT, OFF_WHITE, 382, 160, 10, 10, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 222, 226, 350, 10, "FREQ FINE SHAPE PULSE LFO KBD"}}, + {{BVG_STRING, OFF_WHITE, 837, 145, 80, 10, "AMPLIFIER"}}, + {{BVG_STRING, OFF_WHITE, 765, 226, 280, 10, " ATTACK DECAY SUSTAIN RELEASE REL"}}, + {{BVG_STRING, OFF_WHITE, 60, 256, 90, 10, "WHEEL MOD"}}, + {{BVG_STRING, OFF_WHITE, 62, 274, 180, 10, "FRQA FRQB PWA PWB FILT"}}, + {{BVG_STRING, OFF_WHITE, 21, 340, 150, 10, "MIX DEST"}}, + {{BVG_STRING, OFF_WHITE, 220, 340, 120, 10, "GLIDE UNISON"}}, + {{BVG_STRING, OFF_WHITE, 528, 256, 90, 10, "PROGRAMMER"}}, + {{BVG_STRING, OFF_WHITE, 590, 274, 180, 10, "1 2 3 4 5 6 7 8"}}, + {{BVG_STRING, OFF_WHITE, 366, 340, 110, 10, "LOAD SAVE BANK"}}, + {{BVG_STRING, OFF_WHITE, 652, 340, 50, 10, "SELECT"}}, + {{BVG_STRING, OFF_WHITE, 847, 256, 50, 10, "CHORUS"}}, + {{BVG_STRING, OFF_WHITE, 775, 340, 230, 10, "SPEED DEPTH PHASE GAIN"}}, + {{BVG_STRING, OFF_WHITE, 980, 340, 50, 10, "VOLUME"}}, + } +}; + +bvgImage ProphetImage = { + 1024, 400, + 0x00000000, + 37, + { + {{BVG_STRING, OFF_WHITE, 75, 34, 85, 10, "POLY MOD"}}, + {{BVG_STRING, OFF_WHITE, 120, 50, 100, 10, "FREQA PWA FILT"}}, + {{BVG_STRING, OFF_WHITE, 10, 109, 120, 10, "FILT OSCB"}}, + {{BVG_STRING, OFF_WHITE, 42, 119, 50, 10, "AMOUNT"}}, + {{BVG_STRING, OFF_WHITE, 150, 114, 35, 10, "DEST"}}, + {{BVG_STRING, OFF_WHITE, 286, 34, 110, 10, "OSCILLATOR A"}}, + {{BVG_VECT, OFF_WHITE, 283, 50, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 315, 50, 10, 10, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 240, 111, 220, 10, "FREQ SHAPE PULSE SYNC"}}, + {{BVG_STRING, OFF_WHITE, 494, 34, 45, 10, "MIXER"}}, + {{BVG_STRING, OFF_WHITE, 449, 111, 155, 10, "OSC-A OSC-B NOISE"}}, + {{BVG_STRING, OFF_WHITE, 672, 34, 50, 10, "FILTER"}}, + {{BVG_STRING, OFF_WHITE, 605, 111, 200, 10, "CUTOFF RES ENV KBD"}}, + {{BVG_STRING, OFF_WHITE, 602, 226, 220, 10, "ATTACK DECAY SUSTAIN RELEASE"}}, + {{BVG_STRING, OFF_WHITE, 952, 34, 40, 10, "MIDI"}}, + {{BVG_STRING, OFF_WHITE, 818, 111, 220, 10, "TUNE A440 DOWN UP"}}, + {{BVG_STRING, OFF_WHITE, 115, 145, 22, 10, "LFO"}}, + {{BVG_VECT, OFF_WHITE, 124, 160, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 155, 160, 10, 10, (char *) &triWave}}, + {{BVG_VECT, OFF_WHITE, 185, 160, 10, 10, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 70, 226, 130, 10, "FREQ SHAPE"}}, + {{BVG_STRING, OFF_WHITE, 325, 145, 110, 10, "OSCILLATOR B"}}, + {{BVG_VECT, OFF_WHITE, 340, 160, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 370, 160, 10, 10, (char *) &triWave}}, + {{BVG_VECT, OFF_WHITE, 402, 160, 10, 10, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 242, 226, 350, 10, "FREQ FINE SHAPE PULSE LFO KBD"}}, + {{BVG_STRING, OFF_WHITE, 877, 145, 80, 10, "AMPLIFIER"}}, + {{BVG_STRING, OFF_WHITE, 806, 226, 250, 10, " ATTACK DECAY SUSTAIN RELEASE "}}, + {{BVG_STRING, OFF_WHITE, 63, 256, 90, 10, "WHEEL MOD"}}, + {{BVG_STRING, OFF_WHITE, 56, 274, 180, 10, "FRQA FRQB PWA PWB FILT"}}, + {{BVG_STRING, OFF_WHITE, 24, 340, 150, 10, "MIX DEST"}}, + {{BVG_STRING, OFF_WHITE, 238, 340, 120, 10, "GLIDE UNISON"}}, + {{BVG_STRING, OFF_WHITE, 552, 256, 90, 10, "PROGRAMMER"}}, + {{BVG_STRING, OFF_WHITE, 620, 274, 180, 10, "1 2 3 4 5 6 7 8"}}, + {{BVG_STRING, OFF_WHITE, 396, 340, 110, 10, "LOAD SAVE BANK"}}, + {{BVG_STRING, OFF_WHITE, 687, 340, 50, 10, "SELECT"}}, + {{BVG_STRING, OFF_WHITE, 808, 340, 250, 10, "RELEASE VOLUME TUNE "}}, + } +}; + +bvgImage AxxePhatImage = { + 800, 400, 0x00000000, + 61, + { + {{BVG_STRING, BVG_WHITE, 60, 56, 40, 8, "NOISE"}}, + {{BVG_STRING, BVG_WHITE, 50, 70, 70, 8, "GENERATOR"}}, + {{BVG_STRING, BVG_WHITE, 143, 45, 34, 8, "WHITE"}}, + {{BVG_STRING, BVG_WHITE, 143, 72, 30, 8, "PINK"}}, + {{BVG_STRING, BVG_WHITE, 178, 56, 140, 8, "VOLTAGE CONTROLLED"}}, + {{BVG_STRING, BVG_WHITE, 206, 70, 70, 8, "OSCILLATOR"}}, + {{BVG_VECT|2, OFF_WHITE, 300, 40, 17, 10, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 300, 77, 17, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 347, 42, 26, 8, "LOW"}}, + {{BVG_STRING, BVG_WHITE, 326, 56, 75, 8, "FREQUENCY"}}, + {{BVG_STRING, BVG_WHITE, 327, 70, 75, 8, "OSCILLATOR"}}, + {{BVG_VECT|2, OFF_WHITE, 400, 40, 19, 14, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 400, 77, 17, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 424, 56, 40, 8, "AUDIO"}}, + {{BVG_STRING, BVG_WHITE, 424, 70, 40, 8, "MIXER"}}, + {{BVG_STRING, BVG_WHITE, 476, 56, 140, 8, "VOLTAGE CONTROLLED"}}, + {{BVG_STRING, BVG_WHITE, 510, 70, 40, 8, "FILTER"}}, + {{BVG_STRING, BVG_WHITE, 615, 42, 50, 8, "VOLTAGE"}}, + {{BVG_STRING, BVG_WHITE, 606, 56, 75, 8, "CONTROLLED"}}, + {{BVG_STRING, BVG_WHITE, 605, 70, 75, 8, "AMPLIFIER"}}, + {{BVG_STRING, BVG_WHITE, 696, 42, 110, 8, "GATE SINGLE"}}, + {{BVG_STRING, BVG_WHITE, 696, 70, 110, 8, "AUTO MULTI "}}, + {{BVG_STRING, BVG_WHITE, 715, 94, 55, 8, "LFO/TRIG"}}, + {{BVG_STRING, BVG_WHITE, 262, 160, 130, 8, "PW PWM FREQ"}}, + {{BVG_STRING, BVG_WHITE, 478, 144, 28, 8, "VCF"}}, + {{BVG_STRING, BVG_WHITE, 462, 160, 70, 8, "FREQ RES"}}, + {{BVG_STRING, BVG_WHITE, 613, 160, 32, 8, "GAIN"}}, + {{BVG_STRING, BVG_WHITE, 710, 144, 28, 8, "ENV"}}, + {{BVG_STRING, BVG_WHITE, 680, 160, 100, 8, "A D S R"}}, + {{BVG_STRING, BVG_WHITE, 100, 160, 65, 8, "TRANSPOSE"}}, + {{BVG_STRING, BVG_WHITE, 122, 190, 18, 8, "+1"}}, + {{BVG_STRING, BVG_WHITE, 122, 280, 18, 8, "-1"}}, + {{BVG_VECT, OFF_WHITE, 28, 190, 8, 10, (char *) &flat}}, + {{BVG_VECT, OFF_WHITE, 50, 190, 10, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 73, 190, 8, 10, (char *) &sharp}}, + {{BVG_STRING, BVG_WHITE, 22, 245, 90, 8, "PITCH CONTROL"}}, + {{BVG_STRING, BVG_WHITE, 90, 315, 30, 8, "GLIDE"}}, + {{BVG_STRING, BVG_WHITE, 148, 315, 125, 8, "LFO LFO S/H ADSR"}}, + {{BVG_VECT, OFF_WHITE, 148, 328, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 173, 328, 16, 10, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 222, 328, 16, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 286, 315, 60, 8, "LFO ADSR"}}, + {{BVG_VECT, OFF_WHITE, 286, 328, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 313, 328, 16, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 375, 315, 100, 8, "NOISE VCO VCO"}}, + {{BVG_VECT, OFF_WHITE, 411, 328, 16, 10, (char *) &sawWave}}, + {{BVG_VECT, OFF_WHITE, 434, 328, 16, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 525, 315, 100, 8, "KBD LFO ADSR"}}, + {{BVG_VECT, OFF_WHITE, 555, 328, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 584, 328, 17, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 636, 315, 32, 8, "ADSR"}}, + {{BVG_VECT, OFF_WHITE, 639, 328, 17, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 50, 362, 32, 8, "MIDI"}}, + {{BVG_STRING, BVG_WHITE, 20, 384, 32, 8, "DOWN"}}, + {{BVG_STRING, BVG_WHITE, 83, 384, 16, 8, "UP"}}, + {{BVG_STRING, BVG_WHITE, 130, 384, 32, 8, "LOAD"}}, + {{BVG_STRING, BVG_WHITE, 176, 384, 250, 8, "1 2 3 4 5 6 7 8 "}}, + {{BVG_STRING, BVG_WHITE, 405, 384, 250, 8, "1 2 3 4 5 6 7 8 "}}, + {{BVG_STRING, BVG_WHITE, 627, 384, 32, 8, "SAVE"}}, + {{BVG_STRING|3, BVG_WHITE, 670, 364, 55, 18, "ARP"}}, + {{BVG_STRING|3, 0x00ff6900, 723, 364, 70, 18, "AXXE"}}, + } +}; + +bvgImage AxxeImage = { + 800, 400, + 0x00000000, + 61, + { + {{BVG_STRING, BVG_WHITE, 60, 100, 40, 8, "NOISE"}}, + {{BVG_STRING, BVG_WHITE, 50, 112, 70, 8, "GENERATOR"}}, + {{BVG_STRING, BVG_WHITE, 143, 90, 34, 8, "WHITE"}}, + {{BVG_STRING, BVG_WHITE, 143, 116, 30, 8, "PINK"}}, + {{BVG_STRING, BVG_WHITE, 178, 100, 140, 8, "VOLTAGE CONTROLLED"}}, + {{BVG_STRING, BVG_WHITE, 206, 112, 70, 8, "OSCILLATOR"}}, + {{BVG_VECT|2, OFF_WHITE, 300, 84, 17, 10, (char *) &sawWave}}, + {{BVG_VECT|2, OFF_WHITE, 300, 117, 17, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 347, 89, 26, 8, "LOW"}}, + {{BVG_STRING, BVG_WHITE, 326, 100, 75, 8, "FREQUENCY"}}, + {{BVG_STRING, BVG_WHITE, 327, 112, 75, 8, "OSCILLATOR"}}, + {{BVG_VECT|2, OFF_WHITE, 400, 84, 19, 14, (char *) &sineWave}}, + {{BVG_VECT|2, OFF_WHITE, 400, 117, 17, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 424, 100, 40, 8, "AUDIO"}}, + {{BVG_STRING, BVG_WHITE, 424, 112, 40, 8, "MIXER"}}, + {{BVG_STRING, BVG_WHITE, 476, 100, 140, 8, "VOLTAGE CONTROLLED"}}, + {{BVG_STRING, BVG_WHITE, 510, 112, 40, 8, "FILTER"}}, + {{BVG_STRING, BVG_WHITE, 615, 89, 50, 8, "VOLTAGE"}}, + {{BVG_STRING, BVG_WHITE, 606, 100, 75, 8, "CONTROLLED"}}, + {{BVG_STRING, BVG_WHITE, 605, 112, 75, 8, "AMPLIFIER"}}, + {{BVG_STRING, BVG_WHITE, 696, 89, 110, 8, "GATE SINGLE"}}, + {{BVG_STRING, BVG_WHITE, 696, 116, 110, 8, "AUTO MULTI "}}, + {{BVG_STRING, BVG_WHITE, 715, 133, 55, 8, "LFO/TRIG"}}, + {{BVG_STRING, BVG_WHITE, 262, 190, 130, 8, "PW PWM FREQ"}}, + {{BVG_STRING, BVG_WHITE, 478, 175, 28, 8, "VCF"}}, + {{BVG_STRING, BVG_WHITE, 462, 190, 70, 8, "FREQ RES"}}, + {{BVG_STRING, BVG_WHITE, 613, 190, 32, 8, "GAIN"}}, + {{BVG_STRING, BVG_WHITE, 710, 175, 28, 8, "ENV"}}, + {{BVG_STRING, BVG_WHITE, 680, 190, 100, 8, "A D S R"}}, + {{BVG_STRING, BVG_WHITE, 100, 190, 65, 8, "TRANSPOSE"}}, + {{BVG_STRING, BVG_WHITE, 122, 215, 18, 8, "+1"}}, + {{BVG_STRING, BVG_WHITE, 122, 300, 18, 8, "-1"}}, + {{BVG_VECT, OFF_WHITE, 28, 215, 8, 10, (char *) &flat}}, + {{BVG_VECT, OFF_WHITE, 50, 215, 10, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 73, 215, 8, 10, (char *) &sharp}}, + {{BVG_STRING, BVG_WHITE, 22, 270, 90, 8, "PITCH CONTROL"}}, + {{BVG_STRING, BVG_WHITE, 90, 322, 30, 8, "GLIDE"}}, + {{BVG_STRING, BVG_WHITE, 148, 322, 125, 8, "LFO LFO S/H ADSR"}}, + {{BVG_VECT, OFF_WHITE, 148, 334, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 173, 334, 16, 10, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 222, 334, 16, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 286, 322, 60, 8, "LFO ADSR"}}, + {{BVG_VECT, OFF_WHITE, 286, 334, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 313, 334, 16, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 375, 322, 100, 8, "NOISE VCO VCO"}}, + {{BVG_VECT, OFF_WHITE, 411, 334, 16, 10, (char *) &sawWave}}, + {{BVG_VECT, OFF_WHITE, 434, 334, 16, 10, (char *) &squareWave}}, + {{BVG_STRING, BVG_WHITE, 525, 322, 100, 8, "KBD LFO ADSR"}}, + {{BVG_VECT, OFF_WHITE, 555, 334, 16, 10, (char *) &sineWave}}, + {{BVG_VECT, OFF_WHITE, 584, 334, 17, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 636, 322, 32, 8, "ADSR"}}, + {{BVG_VECT, OFF_WHITE, 639, 334, 17, 10, (char *) &env}}, + {{BVG_STRING, BVG_WHITE, 50, 367, 32, 8, "MIDI"}}, + {{BVG_STRING, BVG_WHITE, 20, 386, 32, 8, "DOWN"}}, + {{BVG_STRING, BVG_WHITE, 83, 386, 16, 8, "UP"}}, + {{BVG_STRING, BVG_WHITE, 130, 386, 32, 8, "LOAD"}}, + {{BVG_STRING, BVG_WHITE, 176, 386, 250, 8, "1 2 3 4 5 6 7 8 "}}, + {{BVG_STRING, BVG_WHITE, 405, 386, 250, 8, "1 2 3 4 5 6 7 8 "}}, + {{BVG_STRING, BVG_WHITE, 627, 386, 32, 8, "SAVE"}}, + {{BVG_STRING|3, BVG_WHITE, 670, 367, 55, 18, "ARP"}}, + {{BVG_STRING|3, 0x00ff6900, 723, 367, 70, 18, "AXXE"}}, + } +}; + +bvgImage MemoryMoogImage = { + 800, 180, + 0x00000000, + 62, + { + {{BVG_STRING, OFF_WHITE, 25, 14, 40, 6, "GLOBAL"}}, + {{BVG_STRING, OFF_WHITE, 12, 47, 30, 6, "AUTO"}}, + {{BVG_STRING, OFF_WHITE, 42, 47, 30, 6, "TUNE"}}, + {{BVG_STRING, OFF_WHITE, 14, 73, 80, 6, "MONO HOLD MULT"}}, + {{BVG_STRING, OFF_WHITE, 18, 101, 60, 6, "GLIDE ON"}}, + {{BVG_STRING, OFF_WHITE, 20, 131, 50, 6, "OCTAVE"}}, + {{BVG_STRING, OFF_WHITE, 16, 159, 65, 6, "PITCH MOD"}}, + + {{BVG_STRING, OFF_WHITE, 95, 14, 60, 6, "PROGRAMMER"}}, + {{BVG_STRING, OFF_WHITE, 95, 32, 60, 6, "DOWN UP"}}, + {{BVG_STRING, OFF_WHITE, 80, 88, 105, 6, "1 2 3 "}}, + {{BVG_STRING, OFF_WHITE, 80, 112, 105, 6, "4 5 6 "}}, + {{BVG_STRING, OFF_WHITE, 80, 136, 105, 6, "7 8 9 "}}, + {{BVG_STRING, OFF_WHITE, 80, 160, 105, 6, "L 0 S "}}, + + {{BVG_STRING, OFF_WHITE, 166, 14, 50, 6, "PRESSURE"}}, + {{BVG_STRING, OFF_WHITE, 166, 25, 50, 6, "AMOUNT 1"}}, + {{BVG_STRING, OFF_WHITE, 166, 70, 50, 6, "PITCH FILT"}}, + {{BVG_STRING, OFF_WHITE, 166, 95, 45, 6, "VOLUME"}}, + {{BVG_STRING, OFF_WHITE, 166, 113, 50, 6, "AMOUNT 2"}}, + {{BVG_STRING, OFF_WHITE, 166, 160, 50, 6, "MOD OSC2"}}, + + {{BVG_STRING, OFF_WHITE, 270, 14, 60, 6, "MODIFIERS"}}, + {{BVG_STRING, OFF_WHITE, 227, 47, 28, 6, "FREQ"}}, + {{BVG_VECT, OFF_WHITE, 262, 47, 10, 6, (char *) &triWave}}, + {{BVG_VECT, OFF_WHITE, 281, 47, 10, 6, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 300, 47, 10, 6, (char *) &sawWave}}, + {{BVG_VECT, OFF_WHITE, 320, 47, 10, 6, (char *) &squareWave}}, + {{BVG_STRING, OFF_WHITE, 338, 47, 22, 6, "S/H"}}, + {{BVG_STRING, OFF_WHITE, 220, 83, 180, 6, "FM1 FM2 FM3 PW1 PW2 PW3 FILT"}}, + {{BVG_STRING, OFF_WHITE, 228, 122, 170, 6, "OSC3 ENV CONTOUR INVERT"}}, + {{BVG_STRING, OFF_WHITE, 240, 160, 130, 6, "FM1 FM2 PW1 PW2 FILT"}}, + + {{BVG_STRING, OFF_WHITE, 445, 14, 80, 6, "OSCILLATORS"}}, + {{BVG_STRING, OFF_WHITE, 372, 47, 156, 6, "16 8 4 2 SYNC PW"}}, + {{BVG_VECT, OFF_WHITE, 513, 47, 10, 6, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 534, 47, 10, 6, (char *) &sawWave}}, + {{BVG_VECT, OFF_WHITE, 555, 47, 10, 6, (char *) &triWave}}, + {{BVG_STRING, OFF_WHITE, 372, 83, 156, 6, "16 8 4 2 SYNC PW"}}, + {{BVG_VECT, OFF_WHITE, 513, 83, 10, 6, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 534, 83, 10, 6, (char *) &sawWave}}, + {{BVG_VECT, OFF_WHITE, 555, 83, 10, 6, (char *) &triWave}}, + {{BVG_STRING, OFF_WHITE, 372, 122, 156, 6, "16 8 4 2 SYNC PW"}}, + {{BVG_VECT, OFF_WHITE, 513, 122, 10, 6, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 534, 122, 10, 6, (char *) &sawWave}}, + {{BVG_VECT, OFF_WHITE, 555, 122, 10, 6, (char *) &triWave}}, + {{BVG_STRING, OFF_WHITE, 385, 160, 25, 6, "LFO"}}, + {{BVG_STRING, OFF_WHITE, 428, 160, 25, 6, "KBD"}}, + + {{BVG_STRING, OFF_WHITE, 575, 14, 30, 6, "MIXER"}}, + {{BVG_STRING, OFF_WHITE, 575, 47, 30, 6, "OSC-1"}}, + {{BVG_STRING, OFF_WHITE, 575, 83, 30, 6, "OSC-2"}}, + {{BVG_STRING, OFF_WHITE, 575, 122, 30, 6, "OSC-3"}}, + {{BVG_STRING, OFF_WHITE, 575, 160, 30, 6, "NOISE"}}, + + {{BVG_STRING, OFF_WHITE, 675, 14, 36, 6, "FILTER"}}, + {{BVG_STRING, OFF_WHITE, 623, 45, 36, 6, "1/3 2/3"}}, + {{BVG_STRING, OFF_WHITE, 629, 52, 20, 6, "KBD"}}, + {{BVG_STRING, OFF_WHITE, 656, 47, 120, 6, "CUTOFF RES ENV"}}, + {{BVG_STRING, OFF_WHITE, 620, 83, 180, 6, "ATTACK DECAY SUSTAIN RELEASE"}}, + {{BVG_STRING, OFF_WHITE, 621, 120, 160, 6, "ZERO COND KBD REL"}}, + {{BVG_STRING, OFF_WHITE, 620, 132, 180, 6, "ATTACK DECAY SUSTAIN RELEASE"}}, + + {{BVG_STRING, OFF_WHITE, 763, 14, 36, 6, "VOLUME"}}, + {{BVG_STRING, OFF_WHITE, 763, 47, 36, 6, "MASTER"}}, + {{BVG_STRING, OFF_WHITE, 763, 56, 36, 6, " PROG "}}, + {{BVG_STRING, OFF_WHITE, 763, 89, 36, 6, "CHORUS"}}, + {{BVG_STRING, OFF_WHITE, 763, 121, 36, 6, " GAIN "}}, + {{BVG_STRING, OFF_WHITE, 764, 132, 32, 6, "DEPTH"}}, + } +}; + +bvgImage Sonic6Image = { + 900, 800, + 0x00000000, + 102, + { + {{BVG_VECT, BVG_BLACK, 92, 65, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_WHITE, 98, 58, 22, 10, "LFO"}}, + {{BVG_STRING, BVG_BLACK, 88, 125, 50, 10, "MIX X/Y"}}, + {{BVG_VECT, BVG_BLACK, 275, 65, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_WHITE, 265, 58, 66, 10, "OSCILLATOR"}}, + {{BVG_STRING, BVG_BLACK, 268, 125, 50, 10, "MIX A/B"}}, + {{BVG_STRING, BVG_WHITE, 48, 167, 150, 10, "LFO X LFO Y"}}, + {{BVG_VECT, BVG_BLACK, 28, 206, 8, 10, (char *) &triWave}}, + {{BVG_VECT, BVG_BLACK, 35, 192, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, BVG_BLACK, 54, 192, 10, 10, (char *) &sawWave}}, + {{BVG_VECT, BVG_BLACK, 62, 206, 10, 10, (char *) &squareWave}}, + {{BVG_VECT, BVG_BLACK, 143, 206, 8, 10, (char *) &triWave}}, + {{BVG_VECT, BVG_BLACK, 150, 192, 10, 10, (char *) &rampWave}}, + {{BVG_VECT, BVG_BLACK, 169, 192, 10, 10, (char *) &sawWave}}, + {{BVG_VECT, BVG_BLACK, 175, 206, 10, 10, (char *) &biRampWave}}, + {{BVG_STRING, BVG_BLACK, 50, 295, 36, 10, "MASTER"}}, + {{BVG_STRING, BVG_BLACK, 50, 313, 36, 10, "MOD "}}, + {{BVG_STRING, BVG_BLACK, 50, 331, 36, 10, "ADSR "}}, + {{BVG_STRING, BVG_BLACK, 139, 295, 36, 10, "MASTER"}}, + {{BVG_STRING, BVG_BLACK, 139, 313, 36, 10, " MOD"}}, + {{BVG_STRING, BVG_BLACK, 139, 331, 36, 10, " ADSR"}}, + {{BVG_STRING, BVG_BLACK, 77, 342, 80, 10, "RATE RATE"}}, + {{BVG_STRING, BVG_BLACK, 99, 532, 22, 10, "LFO"}}, + {{BVG_STRING, BVG_BLACK, 92, 550, 36, 10, "MASTER"}}, + {{BVG_STRING, BVG_WHITE, 215, 167, 75, 10, "OSCILLATOR A"}}, + {{BVG_VECT, BVG_BLACK, 205, 204, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 205, 285, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_BLACK, 204, 260, 100, 10, "FREQUENCY 16 8 4 "}}, + {{BVG_STRING, BVG_BLACK, 205, 342, 35, 10, "WIDTH"}}, + {{BVG_VECT, BVG_BLACK, 248, 342, 8, 10, (char *) &triWave}}, + {{BVG_VECT, BVG_BLACK, 258, 342, 8, 10, (char *) &rampWave}}, + {{BVG_VECT, BVG_BLACK, 268, 342, 8, 10, (char *) &pWave}}, + {{BVG_STRING, BVG_WHITE, 210, 378, 85, 10, "PITCH CONTROL"}}, + {{BVG_VECT, BVG_BLACK, 205, 410, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 254, 410, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_BLACK, 210, 471, 90, 10, "X/Y ADSR"}}, + {{BVG_STRING, BVG_BLACK, 220, 546, 70, 10, " LOW OFF HIGH"}}, + {{BVG_STRING, BVG_WHITE, 310, 167, 75, 10, "OSCILLATOR B"}}, + {{BVG_VECT, BVG_BLACK, 348, 204, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 348, 285, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_BLACK, 296, 260, 100, 10, " 16 8 4 FREQUENCY"}}, + {{BVG_STRING, BVG_BLACK, 348, 342, 35, 10, "WIDTH"}}, + {{BVG_VECT, BVG_BLACK, 300, 342, 8, 10, (char *) &triWave}}, + {{BVG_VECT, BVG_BLACK, 310, 342, 8, 10, (char *) &rampWave}}, + {{BVG_VECT, BVG_BLACK, 320, 342, 8, 10, (char *) &pWave}}, + {{BVG_STRING, BVG_WHITE, 302, 378, 85, 10, "PITCH CONTROL"}}, + {{BVG_VECT, BVG_BLACK, 298, 410, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 348, 410, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 323, 489, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_BLACK, 298, 471, 96, 10, "OSC-A X/Y"}}, + {{BVG_STRING, BVG_BLACK, 326, 546, 24, 10, "PWM"}}, + {{BVG_STRING, BVG_WHITE, 410, 167, 50, 10, "RINGMOD"}}, + {{BVG_STRING, BVG_BLACK, 395, 205, 80, 10, "OSCA EXT"}}, + {{BVG_STRING, BVG_BLACK, 395, 290, 80, 10, "X/Y OSCB"}}, + {{BVG_STRING, BVG_WHITE, 412, 378, 35, 10, "NOISE"}}, + {{BVG_STRING, BVG_BLACK, 420, 448, 25, 10, "PINK"}}, + {{BVG_STRING, BVG_BLACK, 420, 525, 25, 10, "WHITE"}}, + {{BVG_STRING, BVG_WHITE, 490, 167, 35, 10, "MIXER"}}, + {{BVG_VECT, BVG_BLACK, 490, 203, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 490, 291, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 490, 380, 27, 60, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 490, 470, 27, 60, (char *) &pot}}, + {{BVG_STRING, BVG_BLACK, 490, 270, 45, 10, "MIX A/B"}}, + {{BVG_STRING, BVG_BLACK, 485, 360, 50, 10, "RINGMOD"}}, + {{BVG_STRING, BVG_BLACK, 485, 450, 50, 10, "EXTERNAL"}}, + {{BVG_STRING, BVG_BLACK, 490, 540, 35, 10, "NOISE"}}, + {{BVG_VECT, BVG_BLACK, 559, 67, 27, 58, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 606, 67, 27, 58, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 654, 67, 27, 58, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 700, 67, 27, 58, (char *) &pot}}, + {{BVG_STRING, BVG_WHITE, 620, 58, 55, 10, "ENVELOPE"}}, + {{BVG_STRING, BVG_BLACK, 560, 125, 210, 10, "ATTACK DECAY SUSTAIN RELEASE"}}, + {{BVG_VECT, BVG_BLACK, 758, 67, 27, 58, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 799, 67, 27, 58, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 839, 67, 27, 58, (char *) &pot}}, + {{BVG_STRING, BVG_WHITE, 765, 58, 120, 10, "DIRECT OUTPUT MIXER"}}, + {{BVG_STRING, BVG_BLACK, 757, 125, 140, 10, "OSC-A OSC-B RINGMOD"}}, + {{BVG_STRING, BVG_WHITE, 578, 167, 38, 10, "BYPASS"}}, + {{BVG_STRING, BVG_WHITE, 568, 228, 70, 10, "ARTICULATOR"}}, + {{BVG_STRING, BVG_WHITE, 575, 300, 50, 10, "ENVELOPE"}}, + {{BVG_STRING, BVG_BLACK, 575, 318, 50, 10, "ASR ADSD"}}, + {{BVG_STRING, BVG_BLACK, 565, 340, 80, 10, "AR ADSR"}}, + {{BVG_STRING, BVG_BLACK, 575, 426, 50, 10, "VELOCITY"}}, + {{BVG_STRING, BVG_WHITE, 560, 460, 90, 10, "TRIGGER INPUTS"}}, + {{BVG_STRING, BVG_BLACK, 558, 550, 90, 10, "KBD LFO-X LFO-Y"}}, + {{BVG_STRING, BVG_WHITE, 678, 167, 38, 10, "FILTER"}}, + {{BVG_STRING, BVG_BLACK, 658, 426, 90, 10, "FREQ RESONANCE"}}, + {{BVG_VECT, BVG_BLACK, 652, 488, 27, 58, (char *) &pot}}, + {{BVG_VECT, BVG_BLACK, 706, 488, 27, 58, (char *) &pot}}, + {{BVG_STRING, BVG_WHITE, 652, 460, 110, 10, "PITCH CONTROL INPUTS"}}, + {{BVG_STRING, BVG_BLACK, 652, 550, 100, 10, "ADSR KBD X/Y"}}, + {{BVG_STRING, BVG_WHITE, 765, 283, 110, 10, "1 2 3 4 "}}, + {{BVG_STRING, BVG_WHITE, 765, 350, 110, 10, "5 6 7 8 "}}, + {{BVG_STRING, BVG_WHITE, 760, 416, 130, 10, "LOAD SAVE MEM MIDI"}}, + {{BVG_STRING, BVG_WHITE, 760, 475, 60, 10, "BANK FIND"}}, + {{BVG_STRING, BVG_WHITE, 835, 378, 8, 10, "U"}}, + {{BVG_STRING, BVG_WHITE, 835, 450, 8, 10, "D"}}, + {{BVG_STRING|2, BVG_BLACK, 779, 500, 70, 23, "bristol"}}, + {{BVG_STRING, BVG_WHITE, 781, 532, 70, 14, "SONIC VX"}}, + {{BVG_STRING, BVG_WHITE, 776, 554, 80, 10, "SYNTHESIZER"}}, + {{BVG_STRING, OFF_WHITE, 56, 767, 130, 10, "TUNE X Y"}}, + {{BVG_STRING, OFF_WHITE, 779, 767, 32, 10, "REVERB"}}, + } +}; + +bvgImage PolyImage = { + 1500, 400, + 0x00000000, + 50, + { + {{BVG_STRING, POLY_WHITE, 15, 15, 130, 14, "OUTPUT PHONES"}}, + {{BVG_STRING, POLY_WHITE, 140, 15, 80, 14, "IN OUT"}}, + {{BVG_STRING, POLY_WHITE, 160, 25, 20, 14, "CV"}}, + {{BVG_STRING, POLY_WHITE, 218, 15, 90, 14, "IN OUT"}}, + {{BVG_STRING, POLY_WHITE, 240, 25, 30, 14, "TRIG"}}, + {{BVG_STRING, POLY_WHITE, 315, 15, 30, 14, "VCO"}}, + {{BVG_STRING, POLY_WHITE, 355, 15, 30, 14, "VCF"}}, + {{BVG_STRING, POLY_WHITE, 405, 12, 150, 14, "IN THRU OUT"}}, + {{BVG_STRING, POLY_WHITE, 455, 28, 35, 14, "MIDI"}}, + {{BVG_STRING, POLY_WHITE, 40, 355, 80, 16, "BEND MG"}}, + + {{BVG_STRING, POLY_WHITE, 25, 148, 150, 16, "VOLUME TUNE"}}, + {{BVG_STRING, POLY_WHITE, 30, 255, 140, 16, "GLIDE BEND"}}, + + {{BVG_STRING, POLY_WHITE, 312, 52, 35, 16, "VCO"}}, + {{BVG_STRING, POLY_WHITE, 175, 148, 270, 16, "OCTAVE WAVE PW/PWM FREQ"}}, + {{BVG_STRING, POLY_WHITE, 190, 65, 30, 16, "1 2"}}, + {{BVG_STRING, POLY_WHITE, 176, 80, 60, 16, "0 3"}}, + {{BVG_VECT, POLY_WHITE, 235, 80, 10, 16, (char *) &triWave}}, + {{BVG_VECT, POLY_WHITE, 250, 65, 10, 16, (char *) &sawWave}}, + {{BVG_VECT, POLY_WHITE, 268, 65, 10, 16, (char *) &squareWave}}, + {{BVG_VECT, POLY_WHITE, 285, 80, 10, 16, (char *) &pulseWave}}, + {{BVG_STRING, POLY_WHITE, 445, 80, 35, 16, "OFF"}}, + {{BVG_STRING, POLY_WHITE, 445, 110, 38, 16, "SUB1"}}, + {{BVG_STRING, POLY_WHITE, 445, 140, 38, 16, "SUB2"}}, + + {{BVG_STRING, POLY_WHITE, 175, 255, 280, 16, "NOISE FREQ DELAY LEVEL"}}, + {{BVG_STRING, POLY_WHITE, 445, 190, 35, 16, "VCO"}}, + {{BVG_STRING, POLY_WHITE, 445, 220, 35, 16, "VCF"}}, + {{BVG_STRING, POLY_WHITE, 445, 250, 35, 16, "VCA"}}, + {{BVG_STRING, POLY_WHITE, 340, 284, 28, 16, "MG"}}, + + {{BVG_STRING, POLY_WHITE, 590, 52, 35, 16, "VCF"}}, + {{BVG_STRING, POLY_WHITE, 490, 148, 250, 16, "FREQ RES ENV KBD"}}, + {{BVG_STRING, POLY_WHITE, 550, 255, 190, 16, "HOLD MONO POLY"}}, + {{BVG_STRING, POLY_WHITE, 620, 284, 50, 16, "MODE"}}, + + {{BVG_STRING, POLY_WHITE, 815, 52, 90, 16, "ENVELOPE"}}, + {{BVG_STRING, POLY_WHITE, 738, 148, 280, 16, "ATTACK DECAY SUSTAIN RELEASE"}}, + {{BVG_STRING, POLY_WHITE, 738, 255, 280, 16, "ATTACK DECAY SUSTAIN RELEASE"}}, + + {{BVG_STRING, POLY_WHITE, 1035, 52, 45, 16, "VCA"}}, + {{BVG_STRING, POLY_WHITE, 1028, 86, 35, 16, "ENV"}}, + {{BVG_STRING, POLY_WHITE, 1028, 116, 38, 16, "GATE"}}, + {{BVG_STRING, POLY_WHITE, 1072, 148, 40, 16, "GAIN"}}, + {{BVG_STRING, POLY_WHITE, 1013, 180, 40, 16, "1 2"}}, + {{BVG_STRING, POLY_WHITE, 1000, 200, 65, 16, "0 3"}}, + {{BVG_STRING, POLY_WHITE, 1008, 255, 130, 16, "MODE INTENSITY"}}, + {{BVG_STRING, POLY_WHITE, 1025, 284, 80, 16, "EFFECTS"}}, + + {{BVG_STRING, POLY_WHITE, 1255, 52, 120, 16, "MEMORY"}}, + {{BVG_STRING, POLY_WHITE, 1133, 148, 320, 16, "L 1 2 3 4 5 6 7 8"}}, + {{BVG_STRING, POLY_WHITE, 1133, 255, 320, 16, "S 1 2 3 4 5 6 7 8"}}, + + {{BVG_STRING, POLY_WHITE, 1448, 52, 40, 16, "MIDI"}}, + {{BVG_STRING, POLY_WHITE, 1448, 148, 40, 16, " U "}}, + {{BVG_STRING, POLY_WHITE, 1448, 255, 40, 16, " D "}}, + + {{BVG_STRING, POLY_WHITE, 1435, 16, 60, 14, "POWER"}}, + } +}; + +bvgImage MiniPhatImage = { + 680, 400, + 0x00000000, + 78, + { + {{BVG_STRING|2, OFF_WHITER, 5, 370, 100, 13, "CONTROLLERS"}}, + {{BVG_STRING, OFF_WHITE, 36, 80, 25, 11, "TUNE"}}, + {{BVG_STRING, OFF_WHITE, 44, 94, 7, 10, "O"}}, + {{BVG_STRING, OFF_WHITE, 30, 157, 45, 10, "-1 1"}}, + {{BVG_STRING, OFF_WHITE, 14, 195, 30, 11, "GLIDE"}}, + {{BVG_STRING, OFF_WHITE, 58, 195, 24, 11, "MOD"}}, + {{BVG_STRING, OFF_WHITE, 48, 284, 20, 10, "OSC"}}, + {{BVG_STRING, OFF_WHITE, 72, 284, 20, 10, "NSE"}}, + {{BVG_STRING, OFF_WHITE, 17, 310, 42, 10, "RELEASE"}}, + {{BVG_STRING, OFF_WHITE, 27, 332, 34, 10, "MULTI"}}, + {{BVG_STRING, OFF_WHITE, 86, 127, 24, 11, "MOD"}}, + {{BVG_STRING, OFF_WHITE, 88, 268, 24, 11, "LFO"}}, + + {{BVG_STRING|2, OFF_WHITER, 120, 370, 140, 13, "OSCILLATOR BANK"}}, + {{BVG_STRING, OFF_WHITE, 115, 23, 175, 11, "RANGE OSCILLATOR-1 WAVEFORM"}}, + {{BVG_STRING, OFF_WHITE, 145, 123, 90, 11, "OSCILLATOR-2"}}, + {{BVG_STRING, OFF_WHITE, 145, 238, 90, 11, "OSCILLATOR-3"}}, + + {{BVG_STRING|2, OFF_WHITER, 325, 370, 50, 13, "MIXER"}}, + {{BVG_STRING, OFF_WHITE, 270, 23, 38, 11, "VOLUME"}}, + {{BVG_STRING, OFF_WHITE, 365, 85, 60, 11, "EXTERNAL"}}, + {{BVG_STRING, OFF_WHITE, 370, 194, 40, 11, "NOISE"}}, + {{BVG_STRING, OFF_WHITE, 413, 266, 24, 9, "PINK"}}, + {{BVG_STRING, OFF_WHITE, 340, 90, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 148, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 206, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 262, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 318, 12, 8, "ON"}}, + + {{BVG_STRING|2, OFF_WHITER, 470, 370, 100, 13, "MODIFIERS"}}, + {{BVG_STRING, OFF_WHITER, 500, 6, 55, 12, "FILTER"}}, + {{BVG_STRING, OFF_WHITE, 442, 23, 190, 11, "FREQUENCY EMPHASIS CONTOUR"}}, + {{BVG_STRING, OFF_WHITE, 422, 46, 24, 11, "MOD"}}, + {{BVG_STRING, OFF_WHITE, 422, 146, 24, 11, "KBD"}}, + {{BVG_STRING, OFF_WHITE, 455, 138, 170, 9, "ATTACK DECAY SUSTAIN"}}, + {{BVG_STRING, OFF_WHITE, 470, 240, 130, 11, "LOUDNESS CONTOUR"}}, + {{BVG_STRING, OFF_WHITE, 455, 254, 170, 9, "ATTACK DECAY SUSTAIN"}}, + + {{BVG_STRING|2, OFF_WHITER, 620, 370, 55, 13, "OUTPUT"}}, + {{BVG_STRING, OFF_WHITE, 620, 34, 38, 9, "VOLUME"}}, + {{BVG_STRING, OFF_WHITE, 654, 22, 12, 9, "ON"}}, + {{BVG_STRING, OFF_WHITE, 630, 345, 25, 9, "MEM"}}, + + {{BVG_LINE|2, OFF_WHITE, 95, 6, 95, 90}}, + {{BVG_LINE|2, OFF_WHITE, 95, 175, 95, 255}}, + {{BVG_LINE|2, OFF_WHITE, 95, 340, 95, 390}}, + + {{BVG_LINE|2, OFF_WHITE, 258, 6, 258, 390}}, + + {{BVG_LINE|2, OFF_WHITE, 435, 6, 435, 35}}, + {{BVG_LINE|2, OFF_WHITE, 435, 86, 435, 110}}, + {{BVG_LINE|2, OFF_WHITE, 435, 190, 435, 390}}, + {{BVG_LINE|2, OFF_WHITE, 436, 232, 599, 232}}, + {{BVG_LINE|2, OFF_WHITE, 600, 6, 600, 390}}, + + {{BVG_LINE, OFF_WHITE, 310, 75, 320, 75}}, + {{BVG_LINE, OFF_WHITE, 310, 190, 320, 190}}, + {{BVG_LINE, OFF_WHITE, 310, 303, 320, 303}}, + {{BVG_LINE, OFF_WHITE, 345, 131, 360, 131}}, + {{BVG_LINE, OFF_WHITE, 345, 248, 360, 248}}, + + {{BVG_VECT, BVG_WHITE, 29, 104, 34, 53, (char *) &pot}}, + {{BVG_IMAGE, BVG_WHITE, 10, 218, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_WHITE, 52, 218, 100, 100, (char *) &subMiniImage}}, + + {{BVG_IMAGE, BVG_GREEN, 208, 46, 100, 100, (char *) &subMiniImage4}}, + {{BVG_IMAGE, BVG_GREEN, 208, 161, 100, 100, (char *) &subMiniImage4}}, + {{BVG_IMAGE, BVG_GREEN, 208, 276, 100, 100, (char *) &subMiniImage4}}, + + {{BVG_IMAGE, BVG_GREEN, 105, 46, 100, 100, (char *) &subMiniImage3}}, + {{BVG_IMAGE, BVG_GREEN, 105, 163, 100, 100, (char *) &subMiniImage3}}, + {{BVG_IMAGE, BVG_GREEN, 105, 276, 100, 100, (char *) &subMiniImage3}}, + {{BVG_IMAGE, BVG_WHITE, 156, 149, 100, 100, (char *) &subMiniImage2}}, + {{BVG_IMAGE, BVG_WHITE, 156, 260, 100, 100, (char *) &subMiniImage2}}, + //{{BVG_VECT, BVG_WHITE, 156, 260, 46, 70, (char *) &pot}}, + + {{BVG_IMAGE, BVG_GREEN, 268, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 268, 161, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 268, 276, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 370, 105, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 370, 218, 100, 100, (char *) &subMiniImage}}, + + {{BVG_IMAGE, BVG_GREEN, 455, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 509, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 559, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 455, 162, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 509, 162, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 559, 162, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 455, 276, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 509, 276, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 559, 276, 100, 100, (char *) &subMiniImage}}, + + {{BVG_IMAGE, BVG_GREEN, 612, 47, 142, 142, (char *) &subMiniImage}}, + } +}; + +bvgImage MiniImage = { + 680, 400, + 0x00000000, + 80, + { + {{BVG_STRING|2, OFF_WHITER, 5, 370, 100, 13, "CONTROLLERS"}}, + {{BVG_STRING, OFF_WHITE, 36, 80, 25, 11, "TUNE"}}, + {{BVG_STRING, OFF_WHITE, 44, 94, 7, 10, "O"}}, + {{BVG_STRING, OFF_WHITE, 30, 157, 45, 10, "-1 1"}}, + {{BVG_STRING, OFF_WHITE, 14, 195, 30, 11, "GLIDE"}}, + {{BVG_STRING, OFF_WHITE, 58, 195, 24, 11, "MOD"}}, + {{BVG_STRING, OFF_WHITE, 48, 284, 20, 10, "OSC"}}, + {{BVG_STRING, OFF_WHITE, 72, 284, 20, 10, "NSE"}}, + {{BVG_STRING, OFF_WHITE, 17, 310, 42, 10, "RELEASE"}}, + {{BVG_STRING, OFF_WHITE, 27, 332, 34, 10, "MULTI"}}, + {{BVG_STRING, OFF_WHITE, 86, 127, 24, 11, "MOD"}}, + {{BVG_STRING, OFF_WHITE, 88, 268, 24, 11, "LFO"}}, + + {{BVG_STRING|2, OFF_WHITER, 120, 370, 140, 13, "OSCILLATOR BANK"}}, + {{BVG_STRING, OFF_WHITE, 115, 23, 175, 11, "RANGE OSCILLATOR-1 WAVEFORM"}}, + {{BVG_STRING, OFF_WHITE, 145, 123, 90, 11, "OSCILLATOR-2"}}, + {{BVG_STRING, OFF_WHITE, 145, 238, 90, 11, "OSCILLATOR-3"}}, + + {{BVG_STRING|2, OFF_WHITER, 325, 370, 50, 13, "MIXER"}}, + {{BVG_STRING, OFF_WHITE, 270, 23, 38, 11, "VOLUME"}}, + {{BVG_STRING, OFF_WHITE, 365, 85, 60, 11, "EXTERNAL"}}, + {{BVG_STRING, OFF_WHITE, 370, 194, 40, 11, "NOISE"}}, + {{BVG_STRING, OFF_WHITE, 413, 266, 24, 9, "PINK"}}, + {{BVG_STRING, OFF_WHITE, 340, 90, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 148, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 206, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 262, 12, 8, "ON"}}, + {{BVG_STRING, OFF_WHITE, 340, 318, 12, 8, "ON"}}, + + {{BVG_STRING|2, OFF_WHITER, 470, 370, 100, 13, "MODIFIERS"}}, + {{BVG_STRING, OFF_WHITER, 500, 6, 55, 12, "FILTER"}}, + {{BVG_STRING, OFF_WHITE, 442, 23, 190, 11, "FREQUENCY EMPHASIS CONTOUR"}}, + {{BVG_STRING, OFF_WHITE, 422, 46, 24, 11, "MOD"}}, + {{BVG_STRING, OFF_WHITE, 422, 146, 24, 11, "KBD"}}, + {{BVG_STRING, OFF_WHITE, 455, 138, 170, 9, "ATTACK DECAY SUSTAIN"}}, + {{BVG_STRING, OFF_WHITE, 470, 240, 130, 11, "LOUDNESS CONTOUR"}}, + {{BVG_STRING, OFF_WHITE, 455, 254, 170, 9, "ATTACK DECAY SUSTAIN"}}, + + {{BVG_STRING|2, OFF_WHITER, 620, 370, 55, 13, "OUTPUT"}}, + {{BVG_STRING, OFF_WHITE, 620, 34, 38, 9, "VOLUME"}}, + {{BVG_STRING, OFF_WHITE, 654, 22, 12, 9, "ON"}}, + {{BVG_STRING, OFF_WHITE, 653, 140, 28, 11, "A440"}}, + {{BVG_STRING, OFF_WHITE, 605, 175, 28, 11, "MIDI"}}, + {{BVG_STRING, OFF_WHITE, 630, 345, 25, 9, "MEM"}}, + + {{BVG_LINE|2, OFF_WHITE, 95, 6, 95, 90}}, + {{BVG_LINE|2, OFF_WHITE, 95, 175, 95, 255}}, + {{BVG_LINE|2, OFF_WHITE, 95, 340, 95, 390}}, + + {{BVG_LINE|2, OFF_WHITE, 258, 6, 258, 390}}, + + {{BVG_LINE|2, OFF_WHITE, 435, 6, 435, 35}}, + {{BVG_LINE|2, OFF_WHITE, 435, 86, 435, 110}}, + {{BVG_LINE|2, OFF_WHITE, 435, 190, 435, 390}}, + {{BVG_LINE|2, OFF_WHITE, 436, 232, 599, 232}}, + {{BVG_LINE|2, OFF_WHITE, 600, 6, 600, 390}}, + + {{BVG_LINE, OFF_WHITE, 310, 75, 320, 75}}, + {{BVG_LINE, OFF_WHITE, 310, 190, 320, 190}}, + {{BVG_LINE, OFF_WHITE, 310, 303, 320, 303}}, + {{BVG_LINE, OFF_WHITE, 345, 131, 360, 131}}, + {{BVG_LINE, OFF_WHITE, 345, 248, 360, 248}}, + + {{BVG_VECT, BVG_WHITE, 29, 104, 34, 53, (char *) &pot}}, + {{BVG_IMAGE, BVG_WHITE, 10, 218, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_WHITE, 52, 218, 100, 100, (char *) &subMiniImage}}, + + {{BVG_IMAGE, BVG_GREEN, 208, 46, 100, 100, (char *) &subMiniImage4}}, + {{BVG_IMAGE, BVG_GREEN, 208, 161, 100, 100, (char *) &subMiniImage4}}, + {{BVG_IMAGE, BVG_GREEN, 208, 276, 100, 100, (char *) &subMiniImage4}}, + + {{BVG_IMAGE, BVG_GREEN, 105, 46, 100, 100, (char *) &subMiniImage3}}, + {{BVG_IMAGE, BVG_GREEN, 105, 163, 100, 100, (char *) &subMiniImage3}}, + {{BVG_IMAGE, BVG_GREEN, 105, 276, 100, 100, (char *) &subMiniImage3}}, + {{BVG_IMAGE, BVG_WHITE, 156, 149, 100, 100, (char *) &subMiniImage2}}, + {{BVG_IMAGE, BVG_WHITE, 156, 260, 100, 100, (char *) &subMiniImage2}}, + //{{BVG_VECT, BVG_WHITE, 156, 260, 46, 70, (char *) &pot}}, + + {{BVG_IMAGE, BVG_GREEN, 268, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 268, 161, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 268, 276, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 370, 105, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 370, 218, 100, 100, (char *) &subMiniImage}}, + + {{BVG_IMAGE, BVG_GREEN, 455, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 509, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 559, 46, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 455, 162, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 509, 162, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 559, 162, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 455, 276, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 509, 276, 100, 100, (char *) &subMiniImage}}, + {{BVG_IMAGE, BVG_GREEN, 559, 276, 100, 100, (char *) &subMiniImage}}, + + {{BVG_IMAGE, BVG_GREEN, 612, 47, 142, 142, (char *) &subMiniImage}}, + } +}; + +bvgImage JunoPhatImage = { + 788, 244, + 0x00000000, + 48, + { + {{BVG_STRING, BVG_BLACK, 3, 19, 30, 10, "power"}}, + {{BVG_STRING, BVG_BLACK, 61, 19, 25, 10, "tune"}}, + {{BVG_STRING, BVG_BLACK, 92, 19, 25, 10, "hold"}}, + {{BVG_STRING, OFF_WHITE, 137, 19, 70, 10, "arpeggio"}}, + {{BVG_STRING, OFF_WHITE, 225, 19, 25, 10, "lfo"}}, + {{BVG_STRING, OFF_WHITE, 325, 19, 28, 10, "dco"}}, + {{BVG_STRING, OFF_WHITE, 420, 19, 23, 10, "hpf"}}, + {{BVG_STRING, OFF_WHITE, 482, 19, 22, 10, "VCF"}}, + {{BVG_STRING, OFF_WHITE, 555, 19, 22, 10, "VCA"}}, + {{BVG_STRING, OFF_WHITE, 605, 19, 25, 10, "ENV"}}, + {{BVG_STRING, OFF_WHITE, 648, 19, 55, 10, "chorus"}}, + {{BVG_STRING, OFF_WHITE, 718, 19, 55, 10, "memory"}}, + {{BVG_STRING, OFF_WHITE, 26, 50, 45, 8, "DCO VCF"}}, + {{BVG_STRING, OFF_WHITE, 62, 105, 28, 8, "glide"}}, + {{BVG_STRING, OFF_WHITE, 65, 150, 18, 8, "LFO"}}, + {{BVG_STRING, OFF_WHITE, 87, 50, 25, 8, "Trans"}}, + {{BVG_STRING, OFF_WHITE, 128, 50, 113, 8, "ON MODE RANGE RATE"}}, + {{BVG_STRING, OFF_WHITE, 146, 80, 10, 8, "UP"}}, + {{BVG_STRING, OFF_WHITE, 140, 160, 30, 8, "DOWN"}}, + {{BVG_STRING, OFF_WHITE, 180, 100, 5, 8, "3"}}, + {{BVG_STRING, OFF_WHITE, 180, 117, 5, 8, "2"}}, + {{BVG_STRING, OFF_WHITE, 180, 134, 5, 8, "1"}}, + {{BVG_STRING, OFF_WHITE, 210, 50, 50, 8, "Rate Delay"}}, + {{BVG_STRING, OFF_WHITE, 245, 93, 15, 8, "MAN"}}, + {{BVG_STRING, OFF_WHITE, 242, 145, 20, 8, "AUTO"}}, + {{BVG_STRING, OFF_WHITE, 262, 50, 42, 8, "lfo pwm"}}, + {{BVG_STRING, OFF_WHITE, 308, 100, 18, 8, "ENV"}}, + {{BVG_STRING, OFF_WHITE, 308, 117, 18, 8, "LFO"}}, + {{BVG_STRING, OFF_WHITE, 308, 134, 18, 8, "MAN"}}, + {{BVG_STRING, OFF_WHITE, 378, 50, 50, 8, "sub noise"}}, + {{BVG_STRING, OFF_WHITE, 420, 50, 24, 8, "freq"}}, + {{BVG_STRING, OFF_WHITE, 445, 50, 45, 8, "freq res"}}, + {{BVG_STRING, OFF_WHITE, 497, 50, 60, 8, "ENV LFO KBD"}}, + {{BVG_STRING, OFF_WHITE, 561, 50, 25, 8, "LEVEL"}}, + {{BVG_STRING, OFF_WHITE, 546, 82, 18, 8, "ENV"}}, + {{BVG_STRING, OFF_WHITE, 545, 162, 21, 8, "GATE"}}, + {{BVG_STRING, OFF_WHITE, 590, 50, 67, 8, "A D S R"}}, + {{BVG_STRING, OFF_WHITE, 651, 50, 55, 8, "Off I II"}}, + {{BVG_STRING, OFF_WHITE, 721, 190, 49, 8, "D MEM U"}}, + {{BVG_VECT, OFF_WHITE, 74, 55, 6, 8, (char *) &sharp}}, + {{BVG_VECT, OFF_WHITE, 64, 55, 6, 8, (char *) &flat}}, + {{BVG_VECT, OFF_WHITE, 332, 82, 10, 8, (char *) &pulseWave}}, + {{BVG_VECT, OFF_WHITE, 347, 82, 10, 8, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 362, 82, 10, 8, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 482, 90, 12, 8, (char *) &env}}, + {{BVG_VECT, OFF_WHITE, 482, 145, 12, 8, (char *) &invenv}}, + {{BVG_VECT, OFF_WHITE, 545, 96, 15, 8, (char *) &env}}, + {{BVG_VECT, OFF_WHITE, 545, 147, 15, 8, (char *) &gate}}, + } +}; + +bvgImage JunoImage = { + 788, 244, + 0x00000000, + 50, + { + {{BVG_STRING, BVG_BLACK, 3, 19, 30, 10, "power"}}, + {{BVG_STRING, BVG_BLACK, 61, 19, 25, 10, "tune"}}, + {{BVG_STRING, BVG_BLACK, 92, 19, 25, 10, "hold"}}, + {{BVG_STRING, OFF_WHITE, 137, 19, 70, 10, "arpeggio"}}, + {{BVG_STRING, OFF_WHITE, 225, 19, 25, 10, "lfo"}}, + {{BVG_STRING, OFF_WHITE, 325, 19, 28, 10, "dco"}}, + {{BVG_STRING, OFF_WHITE, 420, 19, 23, 10, "hpf"}}, + {{BVG_STRING, OFF_WHITE, 482, 19, 22, 10, "VCF"}}, + {{BVG_STRING, OFF_WHITE, 555, 19, 22, 10, "VCA"}}, + {{BVG_STRING, OFF_WHITE, 605, 19, 25, 10, "ENV"}}, + {{BVG_STRING, OFF_WHITE, 648, 19, 55, 10, "chorus"}}, + {{BVG_STRING, OFF_WHITE, 718, 19, 55, 10, "memory"}}, + {{BVG_STRING, OFF_WHITE, 26, 50, 45, 8, "DCO VCF"}}, + {{BVG_STRING, OFF_WHITE, 62, 105, 28, 8, "glide"}}, + {{BVG_STRING, OFF_WHITE, 65, 150, 18, 8, "LFO"}}, + {{BVG_STRING, OFF_WHITE, 87, 50, 25, 8, "Trans"}}, + {{BVG_STRING, OFF_WHITE, 128, 50, 113, 8, "ON MODE RANGE RATE"}}, + {{BVG_STRING, OFF_WHITE, 146, 80, 10, 8, "UP"}}, + {{BVG_STRING, OFF_WHITE, 140, 160, 30, 8, "DOWN"}}, + {{BVG_STRING, OFF_WHITE, 180, 100, 5, 8, "3"}}, + {{BVG_STRING, OFF_WHITE, 180, 117, 5, 8, "2"}}, + {{BVG_STRING, OFF_WHITE, 180, 134, 5, 8, "1"}}, + {{BVG_STRING, OFF_WHITE, 210, 50, 50, 8, "Rate Delay"}}, + {{BVG_STRING, OFF_WHITE, 245, 93, 15, 8, "MAN"}}, + {{BVG_STRING, OFF_WHITE, 242, 145, 20, 8, "AUTO"}}, + {{BVG_STRING, OFF_WHITE, 262, 50, 42, 8, "lfo pwm"}}, + {{BVG_STRING, OFF_WHITE, 308, 100, 18, 8, "ENV"}}, + {{BVG_STRING, OFF_WHITE, 308, 117, 18, 8, "LFO"}}, + {{BVG_STRING, OFF_WHITE, 308, 134, 18, 8, "MAN"}}, + {{BVG_STRING, OFF_WHITE, 378, 50, 50, 8, "sub noise"}}, + {{BVG_STRING, OFF_WHITE, 420, 50, 24, 8, "freq"}}, + {{BVG_STRING, OFF_WHITE, 445, 50, 45, 8, "freq res"}}, + {{BVG_STRING, OFF_WHITE, 497, 50, 60, 8, "ENV LFO KBD"}}, + {{BVG_STRING, OFF_WHITE, 561, 50, 25, 8, "LEVEL"}}, + {{BVG_STRING, OFF_WHITE, 546, 82, 18, 8, "ENV"}}, + {{BVG_STRING, OFF_WHITE, 545, 162, 21, 8, "GATE"}}, + {{BVG_STRING, OFF_WHITE, 590, 50, 67, 8, "A D S R"}}, + {{BVG_STRING, OFF_WHITE, 651, 50, 55, 8, "Off I II"}}, + {{BVG_STRING, OFF_WHITE, 707, 80, 90, 8, "MIDI MEMORY"}}, + {{BVG_STRING, OFF_WHITE, 710, 93, 70, 8, "U D L S"}}, + {{BVG_STRING, OFF_WHITE, 721, 190, 49, 8, "D MEM U"}}, + + {{BVG_VECT, OFF_WHITE, 74, 55, 6, 8, (char *) &sharp}}, + {{BVG_VECT, OFF_WHITE, 64, 55, 6, 8, (char *) &flat}}, + {{BVG_VECT, OFF_WHITE, 332, 82, 10, 8, (char *) &pulseWave}}, + {{BVG_VECT, OFF_WHITE, 347, 82, 10, 8, (char *) &rampWave}}, + {{BVG_VECT, OFF_WHITE, 362, 82, 10, 8, (char *) &squareWave}}, + {{BVG_VECT, OFF_WHITE, 482, 90, 12, 8, (char *) &env}}, + {{BVG_VECT, OFF_WHITE, 482, 145, 12, 8, (char *) &invenv}}, + + {{BVG_VECT, OFF_WHITE, 545, 96, 15, 8, (char *) &env}}, + {{BVG_VECT, OFF_WHITE, 545, 147, 15, 8, (char *) &gate}}, +/* + {{BVG_LINE, BVG_BLUE, 20, 100, 10, 10}}, + {{BVG_SQUARE, BVG_GREEN, 500, 40, 590, 200}}, + {{BVG_LINE, BVG_BLUE, 20, 100, 10, 10}}, + {{BVG_SQUARE, BVG_WHITE, 10, 20, 100, 20}}, + {{BVG_IMAGE, BVG_WHITE, 10, 10, 100, 100, (char *) &myImage}}, + {{BVG_VECT|0, BVG_RED, 100, 10, 30, 50, (char *) &boxTest}}, +*/ + } +}; + +iMap imageMap[64] = { + {"/juno.xpm", &JunoImage}, + {"/junophat.xpm", &JunoPhatImage}, + {"/mini.xpm", &MiniImage}, + {"/miniphat.xpm", &MiniPhatImage}, + {"/memMoog.xpm", &MemoryMoogImage}, + //{"/poly.xpm", &PolyImage}, + {"/poly6.xpm", &PolyImage}, + {"/sonic6.xpm", &Sonic6Image}, + {"/sonic6phat.xpm", &Sonic6Image}, + {"/axxe.xpm", &AxxeImage}, + {"/axxephat.xpm", &AxxePhatImage}, + {"/prophet.xpm", &ProphetImage}, + {"/pro1.xpm", &Prophet1Image}, + {"/prophet52.xpm", &Prophet52Image}, + {"/BME700.xpm", &BME700Image}, + {"/BME700mods.xpm", &BME700ModImage}, + //{"/obxlogo.xpm", &obxLogoImage}, + {"/obx.xpm", &obxImage}, + {"/obxmod.xpm", &obxModImage}, + {"/arp2600.xpm", &arpImage}, + {"/odyssey.xpm", &odysseyImage}, + {"/odyssey2.xpm", &odysseyImage}, + {"/odysseymem.xpm", &odysseyMemImage}, + {"", NULL}, +}; + diff -Nru bristol-0.60.9/brighton/brightonVox.c bristol-0.60.10/brighton/brightonVox.c --- bristol-0.60.9/brighton/brightonVox.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/brighton/brightonVox.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonVoxM2.c bristol-0.60.10/brighton/brightonVoxM2.c --- bristol-0.60.9/brighton/brightonVoxM2.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonVoxM2.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/brightonVoyager.c bristol-0.60.10/brighton/brightonVoyager.c --- bristol-0.60.9/brighton/brightonVoyager.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/brighton/brightonVoyager.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/brighton/Makefile.am bristol-0.60.10/brighton/Makefile.am --- bristol-0.60.9/brighton/Makefile.am 2010-08-23 12:11:32.000000000 +0000 +++ bristol-0.60.10/brighton/Makefile.am 2012-04-27 11:27:27.000000000 +0000 @@ -3,8 +3,8 @@ AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/brighton -I$(srcdir)/../include/bristol -DBRISTOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ @BRIGHTON_HAS_X11@ -DBRISTOL_VOICECOUNT=@_BRISTOL_VOICES@ bin_PROGRAMS = brighton -brighton_LDFLAGS = -Bdynamic -L../libbrighton/.libs -L../libbristolmidi/.libs @BRIGHTON_LIBXLIBS@ -L/usr/X11R6/lib -brighton_LDADD = @BRIGHTON_LIBX11@ @BRIGHTON_LIBXEXT@ @BRIGHTON_LIBB11@ -lbrighton -lbristolmidi @ALSA_LIBS@ -lm -lpthread +brighton_LDFLAGS = -Bdynamic -L../libbrighton/.libs -L../libbristolmidi/.libs @BRIGHTON_LIBXLIBS@ -L/usr/X11R6/lib -L../libbvg +brighton_LDADD = @BRIGHTON_LIBX11@ @BRIGHTON_LIBXEXT@ @BRIGHTON_LIBB11@ -lbrighton -lbvg -lbristolmidi @ALSA_LIBS@ -lm -lpthread -brighton_SOURCES = brightonArp2600.c brightonAxxe.c brighton.c brightonControllers.c brightonDX.c brightonExplorer.c brightonHammondB3.c brightonHammond.c brightonJuno.c brightonMemoryMoog.c brightonMini.c brightonMixer.c brightonMixerMemory.c brightonMixerMenu.c brightonMS20.c brightonOBXa.c brightonOBX.c brightonOdyssey.c brightonPoly6.c brightonPoly.c brightonProphet10.c brightonProphet52.c brightonProphet.c brightonRhodesBass.c brightonRhodes.c brightonRoutines.c brightonSAks.c brightonVox.c brightonKeyboards.h brightonKeys.h brightonMini.h brightonMixer.h brightonMixerMemory.h brightonhelp.h brightonSolina.c brightonRoadRunner.c brightonGranular.c brightonRealistic.c brightonVoxM2.c brightonJupiter.c brightonBitOne.c brightonMaster.c brightonCS80.c brightonProOne.c brightonVoyager.c brightonSonic6.c brightonTrilogy.c brightonStratus.c brightonPoly800.c brightonBME700.c brightonBassMaker.c brightonSID.c brightonSID2.c brightonSID2.h brightonreadme.h brightonCLI.c +brighton_SOURCES = brightonArp2600.c brightonAxxe.c brighton.c brightonControllers.c brightonDX.c brightonExplorer.c brightonHammondB3.c brightonHammond.c brightonJuno.c brightonMemoryMoog.c brightonMini.c brightonMixer.c brightonMixerMemory.c brightonMixerMenu.c brightonMS20.c brightonOBXa.c brightonOBX.c brightonOdyssey.c brightonPoly6.c brightonPoly.c brightonProphet10.c brightonProphet52.c brightonProphet.c brightonRhodesBass.c brightonRhodes.c brightonRoutines.c brightonSAks.c brightonVox.c brightonKeyboards.h brightonKeys.h brightonMini.h brightonMixer.h brightonMixerMemory.h brightonhelp.h brightonSolina.c brightonRoadRunner.c brightonGranular.c brightonRealistic.c brightonVoxM2.c brightonJupiter.c brightonBitOne.c brightonMaster.c brightonCS80.c brightonProOne.c brightonVoyager.c brightonSonic6.c brightonTrilogy.c brightonStratus.c brightonPoly800.c brightonBME700.c brightonBassMaker.c brightonSID.c brightonSID2.c brightonSID2.h brightonreadme.h brightonCLI.c brightonVImages.h diff -Nru bristol-0.60.9/brighton/Makefile.in bristol-0.60.10/brighton/Makefile.in --- bristol-0.60.9/brighton/Makefile.in 2011-10-24 15:11:40.000000000 +0000 +++ bristol-0.60.10/brighton/Makefile.in 2012-04-27 11:27:30.000000000 +0000 @@ -253,9 +253,9 @@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = foreign AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/brighton -I$(srcdir)/../include/bristol -DBRISTOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ @BRIGHTON_HAS_X11@ -DBRISTOL_VOICECOUNT=@_BRISTOL_VOICES@ -brighton_LDFLAGS = -Bdynamic -L../libbrighton/.libs -L../libbristolmidi/.libs @BRIGHTON_LIBXLIBS@ -L/usr/X11R6/lib -brighton_LDADD = @BRIGHTON_LIBX11@ @BRIGHTON_LIBXEXT@ @BRIGHTON_LIBB11@ -lbrighton -lbristolmidi @ALSA_LIBS@ -lm -lpthread -brighton_SOURCES = brightonArp2600.c brightonAxxe.c brighton.c brightonControllers.c brightonDX.c brightonExplorer.c brightonHammondB3.c brightonHammond.c brightonJuno.c brightonMemoryMoog.c brightonMini.c brightonMixer.c brightonMixerMemory.c brightonMixerMenu.c brightonMS20.c brightonOBXa.c brightonOBX.c brightonOdyssey.c brightonPoly6.c brightonPoly.c brightonProphet10.c brightonProphet52.c brightonProphet.c brightonRhodesBass.c brightonRhodes.c brightonRoutines.c brightonSAks.c brightonVox.c brightonKeyboards.h brightonKeys.h brightonMini.h brightonMixer.h brightonMixerMemory.h brightonhelp.h brightonSolina.c brightonRoadRunner.c brightonGranular.c brightonRealistic.c brightonVoxM2.c brightonJupiter.c brightonBitOne.c brightonMaster.c brightonCS80.c brightonProOne.c brightonVoyager.c brightonSonic6.c brightonTrilogy.c brightonStratus.c brightonPoly800.c brightonBME700.c brightonBassMaker.c brightonSID.c brightonSID2.c brightonSID2.h brightonreadme.h brightonCLI.c +brighton_LDFLAGS = -Bdynamic -L../libbrighton/.libs -L../libbristolmidi/.libs @BRIGHTON_LIBXLIBS@ -L/usr/X11R6/lib -L../libbvg +brighton_LDADD = @BRIGHTON_LIBX11@ @BRIGHTON_LIBXEXT@ @BRIGHTON_LIBB11@ -lbrighton -lbvg -lbristolmidi @ALSA_LIBS@ -lm -lpthread +brighton_SOURCES = brightonArp2600.c brightonAxxe.c brighton.c brightonControllers.c brightonDX.c brightonExplorer.c brightonHammondB3.c brightonHammond.c brightonJuno.c brightonMemoryMoog.c brightonMini.c brightonMixer.c brightonMixerMemory.c brightonMixerMenu.c brightonMS20.c brightonOBXa.c brightonOBX.c brightonOdyssey.c brightonPoly6.c brightonPoly.c brightonProphet10.c brightonProphet52.c brightonProphet.c brightonRhodesBass.c brightonRhodes.c brightonRoutines.c brightonSAks.c brightonVox.c brightonKeyboards.h brightonKeys.h brightonMini.h brightonMixer.h brightonMixerMemory.h brightonhelp.h brightonSolina.c brightonRoadRunner.c brightonGranular.c brightonRealistic.c brightonVoxM2.c brightonJupiter.c brightonBitOne.c brightonMaster.c brightonCS80.c brightonProOne.c brightonVoyager.c brightonSonic6.c brightonTrilogy.c brightonStratus.c brightonPoly800.c brightonBME700.c brightonBassMaker.c brightonSID.c brightonSID2.c brightonSID2.h brightonreadme.h brightonCLI.c brightonVImages.h all: all-am .SUFFIXES: diff -Nru bristol-0.60.9/bristol/activesense.c bristol-0.60.10/bristol/activesense.c --- bristol-0.60.9/bristol/activesense.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/activesense.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksdco.c bristol-0.60.10/bristol/aksdco.c --- bristol-0.60.9/bristol/aksdco.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksdco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksdco.h bristol-0.60.10/bristol/aksdco.h --- bristol-0.60.9/bristol/aksdco.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksdco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksenv.c bristol-0.60.10/bristol/aksenv.c --- bristol-0.60.9/bristol/aksenv.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/aksenv.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksenv.h bristol-0.60.10/bristol/aksenv.h --- bristol-0.60.9/bristol/aksenv.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksenv.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksfilter.c bristol-0.60.10/bristol/aksfilter.c --- bristol-0.60.9/bristol/aksfilter.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksfilter.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksfilter.h bristol-0.60.10/bristol/aksfilter.h --- bristol-0.60.9/bristol/aksfilter.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksfilter.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksreverb.c bristol-0.60.10/bristol/aksreverb.c --- bristol-0.60.9/bristol/aksreverb.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksreverb.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/aksreverb.h bristol-0.60.10/bristol/aksreverb.h --- bristol-0.60.9/bristol/aksreverb.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/aksreverb.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/arpdco.c bristol-0.60.10/bristol/arpdco.c --- bristol-0.60.9/bristol/arpdco.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/arpdco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/arpdco.h bristol-0.60.10/bristol/arpdco.h --- bristol-0.60.9/bristol/arpdco.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/arpdco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/arpeggiator.c bristol-0.60.10/bristol/arpeggiator.c --- bristol-0.60.9/bristol/arpeggiator.c 2011-10-22 10:29:58.000000000 +0000 +++ bristol-0.60.10/bristol/arpeggiator.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/audioEngine.c bristol-0.60.10/bristol/audioEngine.c --- bristol-0.60.9/bristol/audioEngine.c 2011-10-11 11:45:02.000000000 +0000 +++ bristol-0.60.10/bristol/audioEngine.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -298,6 +298,7 @@ continue; } + v->offset = 0; v = v->next; } @@ -431,7 +432,7 @@ * This looks a bit brutal however the assignement code should * avoid this situation. */ - if (voice->baudio->midiflags & BRISTOL_MIDI_DEBUG1) + if (voice->baudio->midiflags & BRISTOL_MIDI_DEBUG2) printf("overvoice keydone\n"); voice->flags |= BRISTOL_KEYOFF; diff -Nru bristol-0.60.9/bristol/audiothread.c bristol-0.60.10/bristol/audiothread.c --- bristol-0.60.9/bristol/audiothread.c 2011-10-18 14:38:30.000000000 +0000 +++ bristol-0.60.10/bristol/audiothread.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -1215,6 +1215,11 @@ voice->dFreq = voice->baudio->ctab[voice->key.key].step; voice->dfreq = voice->baudio->ctab[voice->key.key].freq; } + + if (voice->detune != 0.0) { + voice->dFreq *= voice->detune; + voice->dfreq *= voice->detune; + } } } diff -Nru bristol-0.60.9/bristol/bit1osc.c bristol-0.60.10/bristol/bit1osc.c --- bristol-0.60.9/bristol/bit1osc.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bit1osc.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bit1osc.h bristol-0.60.10/bristol/bit1osc.h --- bristol-0.60.9/bristol/bit1osc.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bit1osc.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/blo.c bristol-0.60.10/bristol/blo.c --- bristol-0.60.9/bristol/blo.c 2011-10-22 09:47:56.000000000 +0000 +++ bristol-0.60.10/bristol/blo.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolaks.c bristol-0.60.10/bristol/bristolaks.c --- bristol-0.60.9/bristol/bristolaks.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolaks.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolaks.h bristol-0.60.10/bristol/bristolaks.h --- bristol-0.60.9/bristol/bristolaks.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolaks.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolarp2600.c bristol-0.60.10/bristol/bristolarp2600.c --- bristol-0.60.9/bristol/bristolarp2600.c 2011-10-22 17:12:21.000000000 +0000 +++ bristol-0.60.10/bristol/bristolarp2600.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -128,15 +128,6 @@ #endif /* - * 98 will be the dimension D - */ - if (operator == 98) - { - baudio->effect[0]->param->param[controller].float_val = value; - return(0); - } - - /* * 99 will be the reverb */ if (operator == 99) @@ -363,12 +354,15 @@ bristolVoice *voice, register float *startbuf) { arp2600mods *mods = (arp2600mods *) baudio->mixlocals; - int sc = audiomain->samplecount, kflags = 0; + int sc = audiomain->samplecount, kflags = 0, vindex = 0; int ss = audiomain->segmentsize, i; - float *b = abufs.outputs[voice->index][ARP_O_PREAMP], g; - float *s = abufs.outputs[0][ARP_O_PREAMP]; + float *s = abufs.outputs[0][ARP_O_PREAMP], *b, g; + +/*printf("operateOneArp2600(%i, %x, %x)\n", vindex, audiomain, baudio); */ + + vindex = voice->index; -/*printf("operateOneArp2600(%i, %x, %x)\n", voice->index, audiomain, baudio); */ + b = abufs.outputs[vindex][ARP_O_PREAMP]; /* * As of 0.50.4 we should be supporting 4 IO for CV or audio from Jack, @@ -383,22 +377,22 @@ bufmerge( audiomain->io_i[i], 12.0f, //4.0 * audiomain->m_io_igc, - abufs.outputs[voice->index][ARP_O_IN_1 + i], 0.0, + abufs.outputs[vindex][ARP_O_IN_1 + i], 0.0, sc); } } - bristolbzero(abufs.inputs[voice->index][ARP_I_OUT_1], sc); - bristolbzero(abufs.inputs[voice->index][ARP_I_OUT_2], sc); - bristolbzero(abufs.inputs[voice->index][ARP_I_OUT_3], sc); - bristolbzero(abufs.inputs[voice->index][ARP_I_OUT_4], sc); + bristolbzero(abufs.inputs[vindex][ARP_I_OUT_1], sc); + bristolbzero(abufs.inputs[vindex][ARP_I_OUT_2], sc); + bristolbzero(abufs.inputs[vindex][ARP_I_OUT_3], sc); + bristolbzero(abufs.inputs[vindex][ARP_I_OUT_4], sc); /* Preamp patching and envelope follower. */ /* * Since the input buffer is singular and we may have multiple voice, then * to get the correct routing we need to copy this to each voice buffers. */ - if (voice->index != 0) + if (vindex != 0) { for (i = 0; i < sc; i+=8) { @@ -415,47 +409,47 @@ /* Envelope follower. */ audiomain->palette[(*baudio->sound[11]).index]->specs->io[0].buf = - abufs.inputs[voice->index][ARP_I_ENVFOLLOW]; + abufs.inputs[vindex][ARP_I_ENVFOLLOW]; audiomain->palette[(*baudio->sound[11]).index]->specs->io[1].buf = - abufs.outputs[voice->index][ARP_O_ENVFOLLOW]; + abufs.outputs[vindex][ARP_O_ENVFOLLOW]; (*baudio->sound[11]).operate( (audiomain->palette)[23], voice, (*baudio->sound[11]).param, - voice->locals[voice->index][11]); + voice->locals[vindex][11]); /* Preamp done */ /* NOISE */ /* * This had to be moved to a multi operator to support the correct routing. */ - bristolbzero(abufs.outputs[voice->index][ARP_O_NOISE], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_NOISE], ss); audiomain->palette[(*baudio->sound[6]).index]->specs->io[0].buf = - abufs.outputs[voice->index][ARP_O_NOISE]; + abufs.outputs[vindex][ARP_O_NOISE]; (*baudio->sound[6]).operate( (audiomain->palette)[4], voice, (*baudio->sound[6]).param, - voice->locals[voice->index][6]); + voice->locals[vindex][6]); /* NOISE DONE */ /* LFO */ audiomain->palette[(*baudio->sound[9]).index]->specs->io[0].buf - = abufs.inputs[voice->index][ARP_I_SH_IN]; + = abufs.inputs[vindex][ARP_I_SH_IN]; audiomain->palette[(*baudio->sound[9]).index]->specs->io[1].buf - = abufs.outputs[voice->index][ARP_O_CLOCK]; + = abufs.outputs[vindex][ARP_O_CLOCK]; audiomain->palette[(*baudio->sound[9]).index]->specs->io[3].buf - = abufs.outputs[voice->index][ARP_O_SH]; + = abufs.outputs[vindex][ARP_O_SH]; (*baudio->sound[9]).operate( (audiomain->palette)[16], voice, (*baudio->sound[9]).param, - voice->locals[voice->index][9]); + voice->locals[vindex][9]); /* * Apply a gain to the LFO for mods. */ - bufmerge(abufs.outputs[voice->index][ARP_O_KBD_CV], 0.0, abufs.outputs[voice->index][ARP_O_CLOCK], + bufmerge(abufs.outputs[vindex][ARP_O_KBD_CV], 0.0, abufs.outputs[vindex][ARP_O_CLOCK], 4.0 * mods->lfogain, sc); /* */ @@ -480,20 +474,20 @@ /* * We have a buffer, see if we need to detect edge. */ - if ((*abufs.inputs[voice->index][ARP_I_AR_GATE] > 0) && + if ((*abufs.inputs[vindex][ARP_I_AR_GATE] > 0) && ((voice->flags & (BRISTOL_KEYOFF|BRISTOL_KEYOFFING)) == 0)) voice->flags |= BRISTOL_KEYREON; - if (*abufs.inputs[voice->index][ARP_I_AR_GATE] < 0) + if (*abufs.inputs[vindex][ARP_I_AR_GATE] < 0) voice->flags |= BRISTOL_KEYOFF; } audiomain->palette[(*baudio->sound[7]).index]->specs->io[0].buf - = abufs.outputs[voice->index][ARP_O_AR]; + = abufs.outputs[vindex][ARP_O_AR]; (*baudio->sound[7]).operate( (audiomain->palette)[1], voice, (*baudio->sound[7]).param, - voice->locals[voice->index][7]); + voice->locals[vindex][7]); voice->flags = kflags; @@ -501,12 +495,12 @@ * Run the ADSR. */ audiomain->palette[(*baudio->sound[4]).index]->specs->io[0].buf = - abufs.outputs[voice->index][ARP_O_ADSR]; + abufs.outputs[vindex][ARP_O_ADSR]; (*baudio->sound[4]).operate( (audiomain->palette)[1], voice, (*baudio->sound[4]).param, - voice->locals[voice->index][4]); + voice->locals[vindex][4]); /* if (mods->adsrAuto) @@ -525,14 +519,14 @@ audiomain->palette[(*baudio->sound[0]).index]->specs->io[0].buf = fmbuf; audiomain->palette[(*baudio->sound[0]).index]->specs->io[1].buf = zerobuf; audiomain->palette[(*baudio->sound[0]).index]->specs->io[2].buf = - abufs.outputs[voice->index][ARP_O_VCO1_SAW]; + abufs.outputs[vindex][ARP_O_VCO1_SAW]; audiomain->palette[(*baudio->sound[0]).index]->specs->io[3].buf = NULL; audiomain->palette[(*baudio->sound[0]).index]->specs->io[4].buf = - abufs.outputs[voice->index][ARP_O_VCO1_SQR]; + abufs.outputs[vindex][ARP_O_VCO1_SQR]; audiomain->palette[(*baudio->sound[0]).index]->specs->io[5].buf = NULL; audiomain->palette[(*baudio->sound[0]).index]->specs->io[6].buf = NULL; -/*printf("%i: osc1 to %x\n", voice->index, */ -/*abufs.outputs[voice->index][ARP_O_VCO1_SQR]); */ +/*printf("%i: osc1 to %x\n", vindex, */ +/*abufs.outputs[vindex][ARP_O_VCO1_SQR]); */ /* * We need to make this connection for CV KBD open again. If nothing is @@ -545,10 +539,10 @@ * others. */ fillFreqTable(baudio, voice, - abufs.outputs[voice->index][ARP_O_KBD_CV], sc, 1); + abufs.outputs[vindex][ARP_O_KBD_CV], sc, 1); if (mods->flags & ARP_OSC1_TRACKING) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO1_KBD], 1.0, + bufmerge(abufs.inputs[vindex][ARP_I_VCO1_KBD], 1.0, fmbuf, 0.0, sc); else { register int i; @@ -560,8 +554,8 @@ mult = 0.10; } - if (abufs.inputs[voice->index][ARP_I_VCO1_KBD] == - abufs.outputs[voice->index][ARP_O_KBD_CV]) + if (abufs.inputs[vindex][ARP_I_VCO1_KBD] == + abufs.outputs[vindex][ARP_O_KBD_CV]) mult *= baudio->contcontroller[1]; mult += value; @@ -595,44 +589,44 @@ * There are 3 FM (KBD CV separate) and 1 PM. */ if (abufs.gains[ARP_I_VCO1_SH] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO1_SH], + bufmerge(abufs.inputs[vindex][ARP_I_VCO1_SH], abufs.gains[ARP_I_VCO1_SH], fmbuf, 1.0, sc); if (abufs.gains[ARP_I_VCO1_ADSR] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO1_ADSR], + bufmerge(abufs.inputs[vindex][ARP_I_VCO1_ADSR], abufs.gains[ARP_I_VCO1_ADSR], fmbuf, 1.0, sc); if (abufs.gains[ARP_I_VCO1_VCO2] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_O_VCO2_SIN], + bufmerge(abufs.inputs[vindex][ARP_O_VCO2_SIN], abufs.gains[ARP_I_VCO1_VCO2], fmbuf, 1.0, sc); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO1_SAW], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO1_SQR], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO1_SAW], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO1_SQR], ss); (*baudio->sound[0]).operate( (audiomain->palette)[19], voice, (*baudio->sound[0]).param, - voice->locals[voice->index][0]); + voice->locals[vindex][0]); /* done-1 */ audiomain->palette[(*baudio->sound[1]).index]->specs->io[0].buf = fmbuf; audiomain->palette[(*baudio->sound[1]).index]->specs->io[1].buf = scratch; audiomain->palette[(*baudio->sound[1]).index]->specs->io[2].buf = - abufs.outputs[voice->index][ARP_O_VCO2_SAW]; + abufs.outputs[vindex][ARP_O_VCO2_SAW]; audiomain->palette[(*baudio->sound[1]).index]->specs->io[3].buf = - abufs.outputs[voice->index][ARP_O_VCO1_SQR]; /* sync source */ + abufs.outputs[vindex][ARP_O_VCO1_SQR]; /* sync source */ audiomain->palette[(*baudio->sound[1]).index]->specs->io[4].buf = - abufs.outputs[voice->index][ARP_O_VCO2_SQR]; + abufs.outputs[vindex][ARP_O_VCO2_SQR]; audiomain->palette[(*baudio->sound[1]).index]->specs->io[5].buf = - abufs.outputs[voice->index][ARP_O_VCO2_SIN]; + abufs.outputs[vindex][ARP_O_VCO2_SIN]; audiomain->palette[(*baudio->sound[1]).index]->specs->io[6].buf = - abufs.outputs[voice->index][ARP_O_VCO2_TRI]; + abufs.outputs[vindex][ARP_O_VCO2_TRI]; /* * Fill our fmbuf scratch table again. */ if (mods->flags & ARP_OSC2_TRACKING) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO2_KBD], 1.0, + bufmerge(abufs.inputs[vindex][ARP_I_VCO2_KBD], 1.0, fmbuf, 0.0, sc); else { register int i; @@ -644,8 +638,8 @@ mult = 0.10; } - if (abufs.inputs[voice->index][ARP_I_VCO2_KBD] == - abufs.outputs[voice->index][ARP_O_KBD_CV]) + if (abufs.inputs[vindex][ARP_I_VCO2_KBD] == + abufs.outputs[vindex][ARP_O_KBD_CV]) mult *= baudio->contcontroller[1]; mult += value; @@ -673,50 +667,50 @@ } if (abufs.gains[ARP_I_VCO2_SH] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO2_SH], + bufmerge(abufs.inputs[vindex][ARP_I_VCO2_SH], abufs.gains[ARP_I_VCO2_SH], fmbuf, 1.0, sc); if (abufs.gains[ARP_I_VCO2_ADSR] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO2_ADSR], + bufmerge(abufs.inputs[vindex][ARP_I_VCO2_ADSR], abufs.gains[ARP_I_VCO2_ADSR], fmbuf, 1.0, sc); if (abufs.gains[ARP_I_VCO2_VCO1] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO2_VCO1], + bufmerge(abufs.inputs[vindex][ARP_I_VCO2_VCO1], abufs.gains[ARP_I_VCO2_VCO1], fmbuf, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_VCO2_NSE], + bufmerge(abufs.inputs[vindex][ARP_I_VCO2_NSE], abufs.gains[ARP_I_VCO2_NSE] * 48, scratch, 0.0, sc); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO2_SAW], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO2_SQR], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO2_SIN], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO2_TRI], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO2_SAW], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO2_SQR], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO2_SIN], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO2_TRI], ss); (*baudio->sound[1]).operate( (audiomain->palette)[19], voice, (*baudio->sound[1]).param, - voice->locals[voice->index][1]); + voice->locals[vindex][1]); /* done-2 */ audiomain->palette[(*baudio->sound[1]).index]->specs->io[0].buf = fmbuf; audiomain->palette[(*baudio->sound[1]).index]->specs->io[1].buf = scratch; audiomain->palette[(*baudio->sound[1]).index]->specs->io[2].buf = - abufs.outputs[voice->index][ARP_O_VCO3_SAW]; + abufs.outputs[vindex][ARP_O_VCO3_SAW]; audiomain->palette[(*baudio->sound[1]).index]->specs->io[3].buf = zerobuf; audiomain->palette[(*baudio->sound[1]).index]->specs->io[4].buf = - abufs.outputs[voice->index][ARP_O_VCO3_SQR]; + abufs.outputs[vindex][ARP_O_VCO3_SQR]; audiomain->palette[(*baudio->sound[1]).index]->specs->io[5].buf = - abufs.outputs[voice->index][ARP_O_VCO3_SIN]; + abufs.outputs[vindex][ARP_O_VCO3_SIN]; audiomain->palette[(*baudio->sound[1]).index]->specs->io[6].buf = - abufs.outputs[voice->index][ARP_O_VCO3_TRI]; + abufs.outputs[vindex][ARP_O_VCO3_TRI]; /* * Fill our fmbuf scratch table again. */ if (mods->flags & ARP_OSC3_TRACKING) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO3_KBD], 1.0, + bufmerge(abufs.inputs[vindex][ARP_I_VCO3_KBD], 1.0, fmbuf, 0.0, sc); else { register int i; @@ -728,8 +722,8 @@ mult = 0.10; } - if (abufs.inputs[voice->index][ARP_I_VCO3_KBD] == - abufs.outputs[voice->index][ARP_O_KBD_CV]) + if (abufs.inputs[vindex][ARP_I_VCO3_KBD] == + abufs.outputs[vindex][ARP_O_KBD_CV]) mult *= baudio->contcontroller[1]; mult += value; @@ -757,42 +751,42 @@ } if (abufs.gains[ARP_I_VCO3_NSE] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO3_NSE], + bufmerge(abufs.inputs[vindex][ARP_I_VCO3_NSE], abufs.gains[ARP_I_VCO3_NSE], fmbuf, 1.0, sc); if (abufs.gains[ARP_I_VCO3_ADSR] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO3_ADSR], + bufmerge(abufs.inputs[vindex][ARP_I_VCO3_ADSR], abufs.gains[ARP_I_VCO3_ADSR], fmbuf, 1.0, sc); if (abufs.gains[ARP_I_VCO3_SIN] != 0.0f) - bufmerge(abufs.inputs[voice->index][ARP_I_VCO3_SIN], + bufmerge(abufs.inputs[vindex][ARP_I_VCO3_SIN], abufs.gains[ARP_I_VCO3_SIN], fmbuf, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_VCO3_TRI], + bufmerge(abufs.inputs[vindex][ARP_I_VCO3_TRI], abufs.gains[ARP_I_VCO3_TRI] * 48, scratch, 0.0, sc); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO3_SAW], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO3_SQR], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO3_SIN], ss); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCO3_TRI], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO3_SAW], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO3_SQR], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO3_SIN], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCO3_TRI], ss); (*baudio->sound[2]).operate( (audiomain->palette)[19], voice, (*baudio->sound[2]).param, - voice->locals[voice->index][2]); + voice->locals[vindex][2]); /* OSC done */ /* Ring mod */ audiomain->palette[(*baudio->sound[8]).index]->specs->io[0].buf - = abufs.inputs[voice->index][ARP_I_RM1]; + = abufs.inputs[vindex][ARP_I_RM1]; audiomain->palette[(*baudio->sound[8]).index]->specs->io[1].buf - = abufs.inputs[voice->index][ARP_I_RM2]; + = abufs.inputs[vindex][ARP_I_RM2]; audiomain->palette[(*baudio->sound[8]).index]->specs->io[2].buf - = abufs.outputs[voice->index][ARP_O_RINGMOD]; + = abufs.outputs[vindex][ARP_O_RINGMOD]; (*baudio->sound[8]).operate( (audiomain->palette)[20], voice, (*baudio->sound[8]).param, - voice->locals[voice->index][8]); + voice->locals[vindex][8]); /* */ /* Voltage processors */ @@ -803,35 +797,35 @@ * * These are controllers 44 to 47. */ - bufmerge(abufs.inputs[voice->index][ARP_I_MIX_1_1], + bufmerge(abufs.inputs[vindex][ARP_I_MIX_1_1], abufs.gains[ARP_I_MIX_1_1] * 2.0f, - abufs.outputs[voice->index][ARP_O_MIX_1], 0.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_MIX_1_2], + abufs.outputs[vindex][ARP_O_MIX_1], 0.0, sc); + bufmerge(abufs.inputs[vindex][ARP_I_MIX_1_2], abufs.gains[ARP_I_MIX_1_2] * 2.0f, - abufs.outputs[voice->index][ARP_O_MIX_1], 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_MIX_1_3], 1.0, - abufs.outputs[voice->index][ARP_O_MIX_1], 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_MIX_1_4], 1.0, - abufs.outputs[voice->index][ARP_O_MIX_1], 1.0, sc); + abufs.outputs[vindex][ARP_O_MIX_1], 1.0, sc); + bufmerge(abufs.inputs[vindex][ARP_I_MIX_1_3], 1.0, + abufs.outputs[vindex][ARP_O_MIX_1], 1.0, sc); + bufmerge(abufs.inputs[vindex][ARP_I_MIX_1_4], 1.0, + abufs.outputs[vindex][ARP_O_MIX_1], 1.0, sc); /* Invert the signal */ - invert(abufs.outputs[voice->index][ARP_O_MIX_1], - abufs.outputs[voice->index][ARP_O_MIX_1], sc); + invert(abufs.outputs[vindex][ARP_O_MIX_1], + abufs.outputs[vindex][ARP_O_MIX_1], sc); - bufmerge(abufs.inputs[voice->index][ARP_I_MIX_2_1], + bufmerge(abufs.inputs[vindex][ARP_I_MIX_2_1], abufs.gains[ARP_I_MIX_2_1] * 2.0f, - abufs.outputs[voice->index][ARP_O_MIX_2], 0.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_MIX_2_2], 1.0, - abufs.outputs[voice->index][ARP_O_MIX_2], 1.0, sc); + abufs.outputs[vindex][ARP_O_MIX_2], 0.0, sc); + bufmerge(abufs.inputs[vindex][ARP_I_MIX_2_2], 1.0, + abufs.outputs[vindex][ARP_O_MIX_2], 1.0, sc); /* Invert the signal */ - invert(abufs.outputs[voice->index][ARP_O_MIX_2], - abufs.outputs[voice->index][ARP_O_MIX_2], sc); + invert(abufs.outputs[vindex][ARP_O_MIX_2], + abufs.outputs[vindex][ARP_O_MIX_2], sc); /* * Build the second output */ - bufmerge(abufs.outputs[voice->index][ARP_O_MIX_2], 1.0, - abufs.outputs[voice->index][ARP_O_MIX_2_2], 0.0, sc); + bufmerge(abufs.outputs[vindex][ARP_O_MIX_2], 1.0, + abufs.outputs[vindex][ARP_O_MIX_2_2], 0.0, sc); /* * The lag processor. Hm, this is actually very similar to a rooney filter @@ -839,44 +833,44 @@ * not a modified one with emphasis. */ audiomain->palette[(*baudio->sound[12]).index]->specs->io[0].buf - = abufs.inputs[voice->index][ARP_I_LAG]; + = abufs.inputs[vindex][ARP_I_LAG]; audiomain->palette[(*baudio->sound[12]).index]->specs->io[2].buf - = abufs.outputs[voice->index][ARP_O_LAG]; + = abufs.outputs[vindex][ARP_O_LAG]; (*baudio->sound[12]).operate( (audiomain->palette)[3], voice, (*baudio->sound[12]).param, - voice->locals[voice->index][12]); + voice->locals[vindex][12]); /* */ /* VP */ /* Electroswitch */ audiomain->palette[(*baudio->sound[10]).index]->specs->io[0].buf - = abufs.inputs[voice->index][ARP_I_SWITCH_1]; + = abufs.inputs[vindex][ARP_I_SWITCH_1]; audiomain->palette[(*baudio->sound[10]).index]->specs->io[1].buf - = abufs.inputs[voice->index][ARP_I_SWITCH_2]; + = abufs.inputs[vindex][ARP_I_SWITCH_2]; audiomain->palette[(*baudio->sound[10]).index]->specs->io[2].buf - = abufs.inputs[voice->index][ARP_I_SWITCHCLK]; + = abufs.inputs[vindex][ARP_I_SWITCHCLK]; audiomain->palette[(*baudio->sound[10]).index]->specs->io[3].buf - = abufs.outputs[voice->index][ARP_O_SWITCH]; + = abufs.outputs[vindex][ARP_O_SWITCH]; (*baudio->sound[10]).operate( (audiomain->palette)[21], voice, (*baudio->sound[10]).param, - voice->locals[voice->index][10]); + voice->locals[vindex][10]); /* */ /* Mixer */ - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_RM], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_RM], abufs.gains[ARP_I_FILT_RM] * 96.0, mixbuf, 0.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_1SQR], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_1SQR], abufs.gains[ARP_I_FILT_1SQR] * 96.0, mixbuf, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_2SQR], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_2SQR], abufs.gains[ARP_I_FILT_2SQR] * 96.0, mixbuf, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_3TRI], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_3TRI], abufs.gains[ARP_I_FILT_3TRI] * 96.0, mixbuf, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_NSE], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_NSE], abufs.gains[ARP_I_FILT_NSE] * 48.0, mixbuf, 1.0, sc); /* */ @@ -884,12 +878,12 @@ audiomain->palette[(*baudio->sound[3]).index]->specs->io[0].buf = mixbuf; audiomain->palette[(*baudio->sound[3]).index]->specs->io[1].buf = scratch; audiomain->palette[(*baudio->sound[3]).index]->specs->io[2].buf - = abufs.outputs[voice->index][ARP_O_VCF]; + = abufs.outputs[vindex][ARP_O_VCF]; /* * Fill the KBD_CV now with a linear value related to the MIDI key number. */ - b = abufs.outputs[voice->index][ARP_O_KBD_CV]; + b = abufs.outputs[vindex][ARP_O_KBD_CV]; g = abufs.gains[ARP_I_FILT_KBD] * voice->cfreq * 1024 / baudio->samplerate; //printf("gain is %f %f %f\n", g, voice->cfreq, abufs.gains[ARP_I_FILT_KBD]); for (i = 0; i < sc; i+=8) @@ -904,24 +898,24 @@ *b++ = g; } - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_KBD], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_KBD], abufs.gains[ARP_I_FILT_KBD], scratch, 0.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_ADSR], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_ADSR], abufs.gains[ARP_I_FILT_ADSR] * 0.25, scratch, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_FILT_2SIN], + bufmerge(abufs.inputs[vindex][ARP_I_FILT_2SIN], abufs.gains[ARP_I_FILT_2SIN] * 0.25, scratch, 1.0, sc); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCF], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCF], ss); (*baudio->sound[3]).operate( (audiomain->palette)[B_FILTER2], voice, (*baudio->sound[3]).param, - voice->locals[voice->index][3]); + voice->locals[vindex][3]); /* Need to normalise the filter output again */ - bufmerge(abufs.outputs[voice->index][ARP_O_VCF], 0.016, - abufs.outputs[voice->index][ARP_O_VCF], 0.0, sc); + bufmerge(abufs.outputs[vindex][ARP_O_VCF], 0.016, + abufs.outputs[vindex][ARP_O_VCF], 0.0, sc); /* * If the filter is taken back through another device, probably unlikely but * very possible, the front end gain from the mixer will result in very strong @@ -935,31 +929,31 @@ audiomain->palette[(*baudio->sound[5]).index]->specs->io[1].buf = scratch; audiomain->palette[(*baudio->sound[5]).index]->specs->io[2].buf - = abufs.outputs[voice->index][ARP_O_VCA]; + = abufs.outputs[vindex][ARP_O_VCA]; - bufmerge(abufs.inputs[voice->index][ARP_I_VCA_VCF], + bufmerge(abufs.inputs[vindex][ARP_I_VCA_VCF], abufs.gains[ARP_I_VCA_VCF], mixbuf, 0.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_VCA_RM], + bufmerge(abufs.inputs[vindex][ARP_I_VCA_RM], abufs.gains[ARP_I_VCA_RM], mixbuf, 1.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_VCA_AR], + bufmerge(abufs.inputs[vindex][ARP_I_VCA_AR], abufs.gains[ARP_I_VCA_AR], scratch, 0.0, sc); - bufmerge(abufs.inputs[voice->index][ARP_I_VCA_ADSR], + bufmerge(abufs.inputs[vindex][ARP_I_VCA_ADSR], abufs.gains[ARP_I_VCA_ADSR], scratch, 1.0, sc); bufadd(scratch, mods->initialvolume, audiomain->samplecount); - bristolbzero(abufs.outputs[voice->index][ARP_O_VCA], ss); + bristolbzero(abufs.outputs[vindex][ARP_O_VCA], ss); (*baudio->sound[5]).operate( (audiomain->palette)[2], voice, (*baudio->sound[5]).param, - voice->locals[voice->index][5]); + voice->locals[vindex][5]); /* Need to normalise the amp output again */ - bufmerge(abufs.outputs[voice->index][ARP_O_VCA], 0.07, - abufs.outputs[voice->index][ARP_O_VCA], 0.0, sc); + bufmerge(abufs.outputs[vindex][ARP_O_VCA], 0.07, + abufs.outputs[vindex][ARP_O_VCA], 0.0, sc); /* AMP OVER */ /* Mixer */ @@ -977,11 +971,11 @@ * Chorus input. */ bufmerge( - abufs.inputs[voice->index][ARP_I_MIX_VCF], abufs.gains[ARP_I_MIX_VCF], - abufs.outputs[voice->index][ARP_O_MIX_OUT1], 0.0, sc); + abufs.inputs[vindex][ARP_I_MIX_VCF], abufs.gains[ARP_I_MIX_VCF], + abufs.outputs[vindex][ARP_O_MIX_OUT1], 0.0, sc); bufmerge( - abufs.inputs[voice->index][ARP_I_MIX_VCA], abufs.gains[ARP_I_MIX_VCA], - abufs.outputs[voice->index][ARP_O_MIX_OUT2], 0.0, sc); + abufs.inputs[vindex][ARP_I_MIX_VCA], abufs.gains[ARP_I_MIX_VCA], + abufs.outputs[vindex][ARP_O_MIX_OUT2], 0.0, sc); /* * Pan should take an alternative input, so we should premix into a shared @@ -989,34 +983,34 @@ * independently so that they can be rerouted. */ bufmerge( - abufs.outputs[voice->index][ARP_O_MIX_OUT1], 1.0, - abufs.outputs[voice->index][ARP_O_MIXER], 0.0, sc); + abufs.outputs[vindex][ARP_O_MIX_OUT1], 1.0, + abufs.outputs[vindex][ARP_O_MIXER], 0.0, sc); bufmerge( - abufs.outputs[voice->index][ARP_O_MIX_OUT2], 1.0, - abufs.outputs[voice->index][ARP_O_MIXER], 1.0, sc); + abufs.outputs[vindex][ARP_O_MIX_OUT2], 1.0, + abufs.outputs[vindex][ARP_O_MIXER], 1.0, sc); /* * These are the separate L/R inputs. They are collapsed between all voices * and then mixed into the stereo output in PostOps. * At this point there is not remixing possible - collapse the outputs. */ - if (voice->index != 0) + if (vindex != 0) { /* * The only way I can see to get this through would be to 'steal' the * next available pan buffer as we only use one anyway. */ bufmerge( - abufs.inputs[voice->index][ARP_I_LEFT_IN], 128.0, + abufs.inputs[vindex][ARP_I_LEFT_IN], 128.0, abufs.outputs[1][ARP_O_PAN], 1.0, sc); bufmerge( - abufs.inputs[voice->index][ARP_I_RIGHT_IN], 128.0, + abufs.inputs[vindex][ARP_I_RIGHT_IN], 128.0, abufs.outputs[2][ARP_O_PAN], 1.0, sc); bufmerge( - abufs.inputs[voice->index][ARP_I_PAN], 1.0, + abufs.inputs[vindex][ARP_I_PAN], 1.0, abufs.outputs[0][ARP_O_PAN], 1.0, sc); bufmerge( - abufs.inputs[voice->index][ARP_I_MIX_FX], 1.0, + abufs.inputs[vindex][ARP_I_MIX_FX], 1.0, baudio->leftbuf, 1.0, sc); } /* */ @@ -1034,7 +1028,7 @@ { //bristolbzero(audiomain->io_o[0], audiomain->segmentsize); bufmerge( - abufs.inputs[voice->index][ARP_I_OUT_1], 0.0833f, + abufs.inputs[vindex][ARP_I_OUT_1], 0.0833f, audiomain->io_o[0], 1.0f, //4.0 * audiomain->m_io_igc, audiomain->samplecount); } @@ -1043,14 +1037,14 @@ { //bristolbzero(audiomain->io_o[1], audiomain->segmentsize); bufmerge( - abufs.inputs[voice->index][ARP_I_OUT_2], 0.0833f, + abufs.inputs[vindex][ARP_I_OUT_2], 0.0833f, audiomain->io_o[1], 1.0f, //4.0 * audiomain->m_io_igc, audiomain->samplecount); } if (((d = audiomain->io_o[2]) != NULL) && (audiomain->iocount > 2)) { - s = abufs.inputs[voice->index][ARP_I_OUT_3]; + s = abufs.inputs[vindex][ARP_I_OUT_3]; //bristolbzero(d, audiomain->segmentsize); /* Third IO will be DC */ @@ -1069,7 +1063,7 @@ if (((d = audiomain->io_o[3]) != NULL) && (audiomain->iocount > 3)) { - s = abufs.inputs[voice->index][ARP_I_OUT_4]; + s = abufs.inputs[vindex][ARP_I_OUT_4]; //bristolbzero(d, audiomain->segmentsize); /* Fourth IO will be DC */ diff -Nru bristol-0.60.9/bristol/bristolarp2600.h bristol-0.60.10/bristol/bristolarp2600.h --- bristol-0.60.9/bristol/bristolarp2600.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolarp2600.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolaxxe.c bristol-0.60.10/bristol/bristolaxxe.c --- bristol-0.60.9/bristol/bristolaxxe.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolaxxe.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolaxxe.h bristol-0.60.10/bristol/bristolaxxe.h --- bristol-0.60.9/bristol/bristolaxxe.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolaxxe.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolbassmaker.c bristol-0.60.10/bristol/bristolbassmaker.c --- bristol-0.60.9/bristol/bristolbassmaker.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolbassmaker.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolbitone.c bristol-0.60.10/bristol/bristolbitone.c --- bristol-0.60.9/bristol/bristolbitone.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolbitone.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolbme700.c bristol-0.60.10/bristol/bristolbme700.c --- bristol-0.60.9/bristol/bristolbme700.c 2011-10-17 14:35:50.000000000 +0000 +++ bristol-0.60.10/bristol/bristolbme700.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolbme700.h bristol-0.60.10/bristol/bristolbme700.h --- bristol-0.60.9/bristol/bristolbme700.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolbme700.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristol.c bristol-0.60.10/bristol/bristol.c --- bristol-0.60.9/bristol/bristol.c 2011-10-22 07:21:59.000000000 +0000 +++ bristol-0.60.10/bristol/bristol.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolcs80.c bristol-0.60.10/bristol/bristolcs80.c --- bristol-0.60.9/bristol/bristolcs80.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolcs80.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolcs80.h bristol-0.60.10/bristol/bristolcs80.h --- bristol-0.60.9/bristol/bristolcs80.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolcs80.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristoldx.c bristol-0.60.10/bristol/bristoldx.c --- bristol-0.60.9/bristol/bristoldx.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristoldx.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolexplorer.c bristol-0.60.10/bristol/bristolexplorer.c --- bristol-0.60.9/bristol/bristolexplorer.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolexplorer.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolexplorer.h bristol-0.60.10/bristol/bristolexplorer.h --- bristol-0.60.9/bristol/bristolexplorer.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolexplorer.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolgranular.c bristol-0.60.10/bristol/bristolgranular.c --- bristol-0.60.9/bristol/bristolgranular.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolgranular.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,6 +1,6 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolhammond.c bristol-0.60.10/bristol/bristolhammond.c --- bristol-0.60.9/bristol/bristolhammond.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolhammond.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolhelp.h bristol-0.60.10/bristol/bristolhelp.h --- bristol-0.60.9/bristol/bristolhelp.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolhelp.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -20,7 +20,7 @@ */ char *gplnotice = "\ -Copyright (c) by Nick Copeland 1996,2011\n\ +Copyright (c) by Nick Copeland 1996,2012\n\ This program comes with ABSOLUTELY NO WARRANTY; for details type\n\ `bristol warranty'. This is free software, and you are welcome to redistribute it\n\ under certain conditions; type `bristol conditions' for details of terms.\n"; diff -Nru bristol-0.60.9/bristol/bristoljuno.c bristol-0.60.10/bristol/bristoljuno.c --- bristol-0.60.9/bristol/bristoljuno.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristoljuno.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -66,7 +66,7 @@ junoController(Baudio *baudio, u_char operator, u_char controller, float value) { - int tval = value * CONTROLLER_RANGE; + int tval = value * C_RANGE_MIN_1; #ifdef DEBUG printf("bristolJunoControl(%i, %i, %f)\n", operator, controller, value); @@ -79,17 +79,52 @@ { switch (tval) { case 0: + baudio->effect[0]->param->param[0].float_val = 0.2; + baudio->effect[0]->param->param[1].float_val = 0.2; + baudio->effect[0]->param->param[2].float_val = 0.2; baudio->effect[0]->param->param[3].float_val = 0.0; break; - default: - baudio->effect[0]->param->param[0].float_val = - ((float) tval) / 12; - baudio->effect[0]->param->param[1].float_val = - ((float) tval) / 12; - baudio->effect[0]->param->param[2].float_val = - ((float) tval) / 12; - baudio->effect[0]->param->param[3].float_val = - ((float) tval) / 12; + case 1: + baudio->effect[0]->param->param[0].float_val = 0.005; + baudio->effect[0]->param->param[1].float_val = 0.0168; + baudio->effect[0]->param->param[2].float_val = 0.02; + baudio->effect[0]->param->param[3].float_val = 0.65; + break; + case 2: + baudio->effect[0]->param->param[0].float_val = 0.008; + baudio->effect[0]->param->param[1].float_val = 0.016; + baudio->effect[0]->param->param[2].float_val = 0.070; + baudio->effect[0]->param->param[3].float_val = 0.65; + break; + case 3: + baudio->effect[0]->param->param[0].float_val = 0.015; + baudio->effect[0]->param->param[1].float_val = 0.015; + baudio->effect[0]->param->param[2].float_val = 0.2; + baudio->effect[0]->param->param[3].float_val = 0.65; + break; + case 4: + baudio->effect[0]->param->param[0].float_val = 0.030; + baudio->effect[0]->param->param[1].float_val = 0.014; + baudio->effect[0]->param->param[2].float_val = 0.3; + baudio->effect[0]->param->param[3].float_val = 0.65; + break; + case 5: + baudio->effect[0]->param->param[0].float_val = 0.1; + baudio->effect[0]->param->param[1].float_val = 0.013; + baudio->effect[0]->param->param[2].float_val = 0.4; + baudio->effect[0]->param->param[3].float_val = 0.65; + break; + case 6: + baudio->effect[0]->param->param[0].float_val = 0.02; + baudio->effect[0]->param->param[1].float_val = 0.012; + baudio->effect[0]->param->param[2].float_val = 0.5; + baudio->effect[0]->param->param[3].float_val = 0.75; + break; + case 7: + baudio->effect[0]->param->param[0].float_val = 0.333; + baudio->effect[0]->param->param[1].float_val = 0.011; + baudio->effect[0]->param->param[2].float_val = 0.62; + baudio->effect[0]->param->param[3].float_val = 0.75; break; } return(0); diff -Nru bristol-0.60.9/bristol/bristoljuno.h bristol-0.60.10/bristol/bristoljuno.h --- bristol-0.60.9/bristol/bristoljuno.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristoljuno.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristoljupiter.c bristol-0.60.10/bristol/bristoljupiter.c --- bristol-0.60.9/bristol/bristoljupiter.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristoljupiter.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolmemorymoog.c bristol-0.60.10/bristol/bristolmemorymoog.c --- bristol-0.60.9/bristol/bristolmemorymoog.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmemorymoog.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -69,13 +69,16 @@ */ if (operator == 100) { - if (controller == 0) { - baudio->effect[0]->param->param[0].float_val = value; - return(0); + if (controller == 1) { + baudio->effect[0]->param->param[3].float_val = value; + } else { + value *= 0.2; + baudio->effect[0]->param->param[0].float_val = + (0.1 + value * 20) * 1024 / baudio->samplerate; + baudio->effect[0]->param->param[1].float_val = value; + baudio->effect[0]->param->param[2].float_val = value; } - baudio->effect[0]->param->param[1].float_val = value; - baudio->effect[0]->param->param[2].float_val = value; - baudio->effect[0]->param->param[3].float_val = value; + return(0); } if (operator != 126) @@ -272,6 +275,11 @@ else baudio->mixflags &= ~MMOOG_PEDAL_OSC2; break; + case 47: + baudio->midi_pitch = value * 12; + doPitchWheel(baudio); + alterAllNotes(baudio); + break; } return(0); } diff -Nru bristol-0.60.9/bristol/bristolmemorymoog.h bristol-0.60.10/bristol/bristolmemorymoog.h --- bristol-0.60.9/bristol/bristolmemorymoog.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmemorymoog.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolmg1.h bristol-0.60.10/bristol/bristolmg1.h --- bristol-0.60.9/bristol/bristolmg1.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmg1.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolmixer.c bristol-0.60.10/bristol/bristolmixer.c --- bristol-0.60.9/bristol/bristolmixer.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmixer.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolmixer.h bristol-0.60.10/bristol/bristolmixer.h --- bristol-0.60.9/bristol/bristolmixer.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmixer.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolmm.c bristol-0.60.10/bristol/bristolmm.c --- bristol-0.60.9/bristol/bristolmm.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmm.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -354,6 +354,7 @@ * First insert our buffer pointers, we do this by inserting the buffers * into the existing opspec structures. */ + fillFreqTable(baudio, voice, freqbuf, samplecount, 1); if (baudio->mixflags & MIX_OSC1) { audiomain->palette[(*baudio->sound[0]).index]->specs->io[0].buf @@ -363,7 +364,6 @@ /* * Fill tmpbuf1 with our frequency information */ - fillFreqTable(baudio, voice, freqbuf, samplecount, 1); /* * If we have any mods on the oscillators, we need to put them in here. * This should be under the control of polypressure and/or diff -Nru bristol-0.60.9/bristol/bristolmm.h bristol-0.60.10/bristol/bristolmm.h --- bristol-0.60.9/bristol/bristolmm.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolmm.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolobx.c bristol-0.60.10/bristol/bristolobx.c --- bristol-0.60.9/bristol/bristolobx.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolobx.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolobx.h bristol-0.60.10/bristol/bristolobx.h --- bristol-0.60.9/bristol/bristolobx.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolobx.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolodyssey.c bristol-0.60.10/bristol/bristolodyssey.c --- bristol-0.60.9/bristol/bristolodyssey.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolodyssey.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolodyssey.h bristol-0.60.10/bristol/bristolodyssey.h --- bristol-0.60.9/bristol/bristolodyssey.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolodyssey.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolpoly6.c bristol-0.60.10/bristol/bristolpoly6.c --- bristol-0.60.9/bristol/bristolpoly6.c 2011-10-23 13:18:38.000000000 +0000 +++ bristol-0.60.10/bristol/bristolpoly6.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -55,14 +55,14 @@ */ if (operator == 100) { - float oval = value * CONTROLLER_RANGE / 3; - if (controller == 1) { - baudio->effect[0]->param->param[0].float_val = value; - baudio->effect[0]->param->param[2].float_val = value; + baudio->effect[0]->param->param[3].float_val = value; } else if (controller == 0) { - baudio->effect[0]->param->param[1].float_val = oval; - baudio->effect[0]->param->param[3].float_val = oval; + value = 0.1 + value * C_RANGE_MIN_1 / 3 * 0.9; + baudio->effect[0]->param->param[0].float_val = + (0.1 + (value * value) * 8) * 1024 / baudio->samplerate; + baudio->effect[0]->param->param[2].float_val = value * 0.2; + baudio->effect[0]->param->param[1].float_val = value * 0.2; } } diff -Nru bristol-0.60.9/bristol/bristolpoly6.h bristol-0.60.10/bristol/bristolpoly6.h --- bristol-0.60.9/bristol/bristolpoly6.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolpoly6.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolpoly800.c bristol-0.60.10/bristol/bristolpoly800.c --- bristol-0.60.9/bristol/bristolpoly800.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolpoly800.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -52,7 +52,8 @@ switch (controller) { case 0: - baudio->effect[0]->param->param[0].float_val = value * value; + baudio->effect[0]->param->param[controller].float_val = value; + (0.1 + (value * value) * 20) * 1024 / baudio->samplerate; break; case 1: case 2: diff -Nru bristol-0.60.9/bristol/bristolpoly800.h bristol-0.60.10/bristol/bristolpoly800.h --- bristol-0.60.9/bristol/bristolpoly800.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolpoly800.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolpoly.c bristol-0.60.10/bristol/bristolpoly.c --- bristol-0.60.9/bristol/bristolpoly.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolpoly.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolpoly.h bristol-0.60.10/bristol/bristolpoly.h --- bristol-0.60.9/bristol/bristolpoly.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolpoly.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolprophet1.c bristol-0.60.10/bristol/bristolprophet1.c --- bristol-0.60.9/bristol/bristolprophet1.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolprophet1.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -191,6 +191,17 @@ else baudio->mixflags |= P1_LFO_SQR; break; + case 27: + if (ivalue == 0) + baudio->mixflags &= ~BRISTOL_MULTITRIG; + else + baudio->mixflags |= BRISTOL_MULTITRIG; + case 28: + if (ivalue == 0) + baudio->mixflags &= ~P1_DRONE; + else + baudio->mixflags |= P1_DRONE; + break; } return(0); } @@ -288,6 +299,11 @@ voice->locals[voice->index][7]); /* NOISE OVER */ + if ((baudio->mixflags & BRISTOL_MULTITRIG) == 0) + voice->flags &= ~BRISTOL_KEYREON; + if (baudio->mixflags & P1_DRONE) + voice->flags &= ~BRISTOL_KEYOFF; + /* ADSR - POLY MOD */ /* * Run the ADSR for the filter, reusing the startbuf. We need this for the @@ -523,6 +539,7 @@ voice, (*baudio->sound[6]).param, voice->locals[voice->index][6]); + /* FINAL STAGE - DONE */ return(0); } diff -Nru bristol-0.60.9/bristol/bristolprophet1.h bristol-0.60.10/bristol/bristolprophet1.h --- bristol-0.60.9/bristol/bristolprophet1.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolprophet1.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -42,6 +42,7 @@ #define P1_LFO_SQR 0x20000 #define P1_REPEAT 0x40000 +#define P1_DRONE 0x80000 /* * These need to go into some local structure for multiple instances diff -Nru bristol-0.60.9/bristol/bristolprophet52.c bristol-0.60.10/bristol/bristolprophet52.c --- bristol-0.60.9/bristol/bristolprophet52.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolprophet52.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolprophet.c bristol-0.60.10/bristol/bristolprophet.c --- bristol-0.60.9/bristol/bristolprophet.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolprophet.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -204,16 +204,17 @@ * reach 0 to the depth, and has to be adjusted such that the * speed is constant over all depths. */ - baudio->effect[0]->param->param[0].float_val = value * value; + baudio->effect[0]->param->param[0].float_val = + (0.1 + (value * value) * 20) * 1024 / baudio->samplerate; break; case 31: - baudio->effect[0]->param->param[1].float_val = value; + baudio->effect[0]->param->param[1].float_val = (value * value); break; case 32: - baudio->effect[0]->param->param[2].float_val = value; + baudio->effect[0]->param->param[2].float_val = (value * value); break; case 33: - baudio->effect[0]->param->param[3].float_val = value; + baudio->effect[0]->param->param[3].float_val = (value * value); break; case 34: ((pmods *) baudio->mixlocals)->pan = value; diff -Nru bristol-0.60.9/bristol/bristolprophet.h bristol-0.60.10/bristol/bristolprophet.h --- bristol-0.60.9/bristol/bristolprophet.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolprophet.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolrealistic.c bristol-0.60.10/bristol/bristolrealistic.c --- bristol-0.60.9/bristol/bristolrealistic.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolrealistic.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolroadrunner.c bristol-0.60.10/bristol/bristolroadrunner.c --- bristol-0.60.9/bristol/bristolroadrunner.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolroadrunner.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsampler.c bristol-0.60.10/bristol/bristolsampler.c --- bristol-0.60.9/bristol/bristolsampler.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsampler.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsampler.h bristol-0.60.10/bristol/bristolsampler.h --- bristol-0.60.9/bristol/bristolsampler.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsampler.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsid1.c bristol-0.60.10/bristol/bristolsid1.c --- bristol-0.60.9/bristol/bristolsid1.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsid1.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsid1.h bristol-0.60.10/bristol/bristolsid1.h --- bristol-0.60.9/bristol/bristolsid1.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsid1.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsid2.c bristol-0.60.10/bristol/bristolsid2.c --- bristol-0.60.9/bristol/bristolsid2.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsid2.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsid2.h bristol-0.60.10/bristol/bristolsid2.h --- bristol-0.60.9/bristol/bristolsid2.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsid2.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsolina.c bristol-0.60.10/bristol/bristolsolina.c --- bristol-0.60.9/bristol/bristolsolina.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsolina.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsonic6.c bristol-0.60.10/bristol/bristolsonic6.c --- bristol-0.60.9/bristol/bristolsonic6.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsonic6.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsonic6.h bristol-0.60.10/bristol/bristolsonic6.h --- bristol-0.60.9/bristol/bristolsonic6.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsonic6.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolsystem.c bristol-0.60.10/bristol/bristolsystem.c --- bristol-0.60.9/bristol/bristolsystem.c 2011-10-18 14:51:46.000000000 +0000 +++ bristol-0.60.10/bristol/bristolsystem.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristoltrilogy.c bristol-0.60.10/bristol/bristoltrilogy.c --- bristol-0.60.9/bristol/bristoltrilogy.c 2011-10-24 16:38:39.000000000 +0000 +++ bristol-0.60.10/bristol/bristoltrilogy.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristoltrilogy.h bristol-0.60.10/bristol/bristoltrilogy.h --- bristol-0.60.9/bristol/bristoltrilogy.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/bristoltrilogy.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/bristolvox.c bristol-0.60.10/bristol/bristolvox.c --- bristol-0.60.9/bristol/bristolvox.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/bristolvox.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/click.h bristol-0.60.10/bristol/click.h --- bristol-0.60.9/bristol/click.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/click.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/cs80env.c bristol-0.60.10/bristol/cs80env.c --- bristol-0.60.9/bristol/cs80env.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/cs80env.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/cs80osc.c bristol-0.60.10/bristol/cs80osc.c --- bristol-0.60.9/bristol/cs80osc.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/cs80osc.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/cs80osc.h bristol-0.60.10/bristol/cs80osc.h --- bristol-0.60.9/bristol/cs80osc.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/cs80osc.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/dca.c bristol-0.60.10/bristol/dca.c --- bristol-0.60.9/bristol/dca.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/dca.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/dca.h bristol-0.60.10/bristol/dca.h --- bristol-0.60.9/bristol/dca.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/dca.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/dco.c bristol-0.60.10/bristol/dco.c --- bristol-0.60.9/bristol/dco.c 2011-10-19 15:06:21.000000000 +0000 +++ bristol-0.60.10/bristol/dco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -260,7 +260,7 @@ memset(ws, 0, DCO_WAVE_SZE * sizeof(float)); generateBLOwaveformF(voice->cFreq*transp, &ws[0], BLO_SAW); - for (obp = 0; obp < count; obp++) + for (obp = 0; obp < 1024; obp++) wt[obp] = (ws[obp] + ws[(obp * 2) & 1023]) * 0.5; break; diff -Nru bristol-0.60.9/bristol/dco.h bristol-0.60.10/bristol/dco.h --- bristol-0.60.9/bristol/dco.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/dco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/dimensionD.c bristol-0.60.10/bristol/dimensionD.c --- bristol-0.60.9/bristol/dimensionD.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/dimensionD.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -62,12 +62,25 @@ static int param(bristolOP *operator, bristolOPParams *param, unsigned char index, float value) { + bristolVCHORUS *specs; + + specs = (bristolVCHORUS *) operator->specs; + #ifdef DEBUG printf("checkParams(%f)\n", value); #endif switch (index) { case 0: + /* + * We want to go from 0.1Hz up to perhaps 20Hz. That means we need + * to step through the 1024 sinewave table at that rate. + * + * specs->samplerate + */ + param->param[index].float_val = + (0.1 + value * 20) * 1024 / specs->samplerate; + return(0); case 1: if ((param->param[index].int_val = value * 256) <= 0) param->param[index].int_val = 1; @@ -83,11 +96,15 @@ return(0); } +static float sinewave[1024]; + /* * Reset any local memory information. */ static int reset(bristolOP *operator, bristolOPParams *param) { + int i; + #ifdef BRISTOL_DBG printf("reset(%x)\n", operator); #endif @@ -100,6 +117,11 @@ param->param[0].int_val = 10; param->param[1].int_val = 10; param->param[2].int_val = 0; + + // Get a normalised sinewave. + for (i = 0; i < 1024; i++) + sinewave[i] = sinf(M_PI * ((float) i) * 2.0 / 1024.0f) + 1.0; + return(0); } @@ -154,7 +176,8 @@ * calculated as 441000 samples, so we divide speed by depth * 44100; */ depth = param->param[DEPTH].float_val * 1024; - speed = param->param[SPEED].float_val * 0.0002 * depth; + speed = param->param[SPEED].float_val; + /* * Let scan be ten seconds to reach gain */ @@ -244,7 +267,6 @@ * Adjust the scan rate through memory. Initially out is zero, and we * tend it towards depth by adding the speed increments. When we reach * depth we change the direction. - */ if (fdir == 0) { if ((scanp += speed) > depth) @@ -253,6 +275,10 @@ if ((scanp -= speed) < speed) fdir = 0; } + */ + if ((scanr += speed) >= 1024) + scanr -= 1024; + scanp = sinewave[(int) scanr] * depth; } local->Histin = histin; @@ -300,6 +326,7 @@ (*operator)->param= param; specs = (bristolVCHORUS *) bristolmalloc0(sizeof(bristolVCHORUS)); + specs->samplerate = samplerate; (*operator)->specs = (bristolOPSpec *) specs; (*operator)->size = sizeof(bristolVCHORUS); diff -Nru bristol-0.60.9/bristol/dimensionD.h bristol-0.60.10/bristol/dimensionD.h --- bristol-0.60.9/bristol/dimensionD.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/dimensionD.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/dxop.c bristol-0.60.10/bristol/dxop.c --- bristol-0.60.9/bristol/dxop.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/dxop.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/dxop.h bristol-0.60.10/bristol/dxop.h --- bristol-0.60.9/bristol/dxop.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/dxop.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/electroswitch.c bristol-0.60.10/bristol/electroswitch.c --- bristol-0.60.9/bristol/electroswitch.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/electroswitch.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/electroswitch.h bristol-0.60.10/bristol/electroswitch.h --- bristol-0.60.9/bristol/electroswitch.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/electroswitch.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/env5stage.c bristol-0.60.10/bristol/env5stage.c --- bristol-0.60.9/bristol/env5stage.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/env5stage.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/env5stage.h bristol-0.60.10/bristol/env5stage.h --- bristol-0.60.9/bristol/env5stage.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/env5stage.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/envelope.c bristol-0.60.10/bristol/envelope.c --- bristol-0.60.9/bristol/envelope.c 2011-10-25 09:56:51.000000000 +0000 +++ bristol-0.60.10/bristol/envelope.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -218,7 +218,7 @@ if (param->param[8].float_val == 0.0) //attack = gainTable[ // (int) (C_RANGE_MIN_1 * param->param[0].float_val)].rate; - attack = 12.0 / (8.0 + specs->duration * specs->samplerate + attack = 12.0 / (specs->samplerate * 0.0005 + specs->duration * specs->samplerate * param->param[0].float_val * param->param[0].float_val * param->param[0].float_val); @@ -236,7 +236,7 @@ attack = param->param[0].float_val * MM_PARAM; attack = gainTable[(int) (attack * C_RANGE_MIN_1 + 1)].rate; */ - attack = 12.0 / (8.0 + specs->duration * specs->samplerate + attack = 12.0 / (specs->samplerate * 0.0005 + specs->duration * specs->samplerate * param->param[0].float_val * MM_PARAM); } else { if (param->param[8].float_val == 0.0) diff -Nru bristol-0.60.9/bristol/envelope.h bristol-0.60.10/bristol/envelope.h --- bristol-0.60.9/bristol/envelope.h 2011-10-24 13:49:56.000000000 +0000 +++ bristol-0.60.10/bristol/envelope.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/expdco.c bristol-0.60.10/bristol/expdco.c --- bristol-0.60.9/bristol/expdco.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/expdco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/expdco.h bristol-0.60.10/bristol/expdco.h --- bristol-0.60.9/bristol/expdco.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/expdco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/filter2.c bristol-0.60.10/bristol/filter2.c --- bristol-0.60.9/bristol/filter2.c 2011-10-23 08:49:15.000000000 +0000 +++ bristol-0.60.10/bristol/filter2.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/filter.c bristol-0.60.10/bristol/filter.c --- bristol-0.60.9/bristol/filter.c 2011-10-24 09:49:35.000000000 +0000 +++ bristol-0.60.10/bristol/filter.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -260,7 +260,6 @@ else param->param[index].int_val = 0; param->param[index].float_val = value; -//printf("KBD: %f\n", value); break; case 4: /* See if we are trying to avoid Huovilainen filters */ @@ -580,7 +579,7 @@ float coff; float resonance = param->param[1].float_val; - Mod = param->param[2].float_val * param->param[2].float_val * 0.002; + Mod = param->param[2].float_val * param->param[2].float_val * 0.03; /* * Cutoff is a power curve for better control at lower frequencies and @@ -604,8 +603,14 @@ * 20000 / srate + param->param[3].float_val * 4 * voice->cfreq / srate; - */ coff = getcoff(param->param[0].float_val, param->param[3].float_val); + */ + if (param->param[3].float_val == 0) + coff = param->param[0].float_val * param->param[0].float_val + * 20000 / srate; + else + coff = param->param[3].float_val * param->param[0].float_val + * 4 * voice->cfreq / srate; /* if (param->param[3].int_val == 0) @@ -701,7 +706,7 @@ float coff; float resonance = param->param[1].float_val; - Mod = param->param[2].float_val * param->param[2].float_val * 0.002; + Mod = param->param[2].float_val * param->param[2].float_val * 0.02; /* * Cutoff is a power curve for better control at lower frequencies and @@ -725,8 +730,14 @@ * 20000 / srate + param->param[3].float_val * 4 * voice->cfreq / srate; - */ coff = getcoff(param->param[0].float_val, param->param[3].float_val); + */ + if (param->param[3].float_val == 0) + coff = param->param[0].float_val * param->param[0].float_val + * 20000 / srate; + else + coff = param->param[3].float_val * param->param[0].float_val + * 4 * voice->cfreq / srate; /* if (param->param[3].int_val == 0) diff -Nru bristol-0.60.9/bristol/filter.h bristol-0.60.10/bristol/filter.h --- bristol-0.60.9/bristol/filter.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/filter.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/follower.c bristol-0.60.10/bristol/follower.c --- bristol-0.60.9/bristol/follower.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/follower.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/follower.h bristol-0.60.10/bristol/follower.h --- bristol-0.60.9/bristol/follower.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/follower.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/granulardco.c bristol-0.60.10/bristol/granulardco.c --- bristol-0.60.9/bristol/granulardco.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/granulardco.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/granulardco.h bristol-0.60.10/bristol/granulardco.h --- bristol-0.60.9/bristol/granulardco.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/granulardco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/granular.h bristol-0.60.10/bristol/granular.h --- bristol-0.60.9/bristol/granular.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/granular.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/hammond.c bristol-0.60.10/bristol/hammond.c --- bristol-0.60.9/bristol/hammond.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/hammond.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/hammondchorus.c bristol-0.60.10/bristol/hammondchorus.c --- bristol-0.60.9/bristol/hammondchorus.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/hammondchorus.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -65,7 +65,9 @@ int ztap[32]= {7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7}; -int *tap1, *tap2, *tap3, *tap4, *tap5, *tap6; +//int *tap1, *tap2, *tap3, *tap4, *tap5, *tap6; +int *tap1 = NULL, *tap2 = NULL, *tap3 = NULL; +int *tap4 = NULL, *tap5 = NULL, *tap6 = NULL; //float tapgain[TAPS] = {1.5, 2, 2.5, 3.0, 3.5, 4, 4.5, 5, 5.5}; /* As the filtering goes up the signal gain goes down, so a small correction */ @@ -360,7 +362,7 @@ #endif tap = local->ctap; - phase = local->phase; + phase = &local->phase[0]; tcount = local->tcount; g1 = local->g1; g2 = local->g2; @@ -369,8 +371,11 @@ g5 = local->g5; g6 = local->g6; -/*printf("hammondchorus(%i, %1.2f, %i): %i, %i\n", */ -/*rate, lag, chorus, tcount, tap); */ + if (tap1 == NULL) + return(0); + +//printf("hammondchorus(%i, %i): %i, %i\n", +//rate, chorus, tcount, tap); /* * We now need to take the input signal and separate it out into several @@ -440,6 +445,8 @@ + phase[tap2[tap]].out * upgain[tcount] * g2) * 0.7f; } +// *dest++ = *source; + ph = *(source++); } diff -Nru bristol-0.60.9/bristol/hammondchorus.h bristol-0.60.10/bristol/hammondchorus.h --- bristol-0.60.9/bristol/hammondchorus.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/hammondchorus.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/hammond.h bristol-0.60.10/bristol/hammond.h --- bristol-0.60.9/bristol/hammond.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/hammond.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/hpf.c bristol-0.60.10/bristol/hpf.c --- bristol-0.60.9/bristol/hpf.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/hpf.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/hpf.h bristol-0.60.10/bristol/hpf.h --- bristol-0.60.9/bristol/hpf.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/hpf.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/junodco.c bristol-0.60.10/bristol/junodco.c --- bristol-0.60.9/bristol/junodco.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/junodco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/junodco.h bristol-0.60.10/bristol/junodco.h --- bristol-0.60.9/bristol/junodco.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/junodco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/lfo.c bristol-0.60.10/bristol/lfo.c --- bristol-0.60.9/bristol/lfo.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/lfo.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/lfo.h bristol-0.60.10/bristol/lfo.h --- bristol-0.60.9/bristol/lfo.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/lfo.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/Makefile.am bristol-0.60.10/bristol/Makefile.am --- bristol-0.60.9/bristol/Makefile.am 2011-10-24 14:08:03.000000000 +0000 +++ bristol-0.60.10/bristol/Makefile.am 2012-01-03 18:10:01.000000000 +0000 @@ -1,6 +1,6 @@ AUTOMAKE_OPTIONS = foreign -AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/slab -I$(srcdir)/../include/bristol -I. -DBRISTOL_VOICECOUNT=@_BRISTOL_VOICES@ @BRISTOL_JACK_DEFAULT_MIDI@ @BRISTOL_JACK_DEFAULT@ @BRISTOL_JACK_MULTI_CLOSE@ @BRISTOL_SEMAPHORE@ @BRISTOL_SEM_OPEN@ @BRISTOL_BARRIER@ @BRISTOL_HAS_PA@ -DBRISTOL_RAMP_RATE=@BRR@ @BRISTOL_LIN_ATTACK@ @BRISTOL_HAS_DRAIN@ @BRISTOL_HAS_JACK@ @BRISTOL_HAS_JACK_MIDI@ @BRISTOL_HAS_JACK_SESSION@ -DBRISTOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ @JACK_CFLAGS@ @ALSA_CFLAGS@ -ffast-math -fomit-frame-pointer -O2 +AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/slab -I$(srcdir)/../include/bristol -I. -DBRISTOL_VOICECOUNT=@_BRISTOL_VOICES@ @BRISTOL_JACK_DEFAULT_MIDI@ @BRISTOL_JACK_DEFAULT@ @BRISTOL_JACK_MULTI_CLOSE@ @BRISTOL_SEMAPHORE@ @BRISTOL_SEM_OPEN@ @BRISTOL_BARRIER@ @BRISTOL_HAS_PA@ -DBRISTOL_RAMP_RATE=@BRR@ @BRISTOL_LIN_ATTACK@ @BRISTOL_HAS_DRAIN@ @BRISTOL_HAS_JACK@ @BRISTOL_HAS_JACK_MIDI@ @BRISTOL_HAS_JACK_SESSION@ -DBRISTOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ @JACK_CFLAGS@ @ALSA_CFLAGS@ -msse -mfpmath=sse -ffast-math -fomit-frame-pointer -O2 bin_PROGRAMS = bristol #bristol_LDFLAGS = -Bdynamic -L../libbristolmidi/.libs -L../libbristolaudio/.libs -L../libbristol/.libs -L../libbristolic/.libs diff -Nru bristol-0.60.9/bristol/Makefile.in bristol-0.60.10/bristol/Makefile.in --- bristol-0.60.9/bristol/Makefile.in 2011-10-24 15:11:40.000000000 +0000 +++ bristol-0.60.10/bristol/Makefile.in 2012-01-12 17:14:03.000000000 +0000 @@ -262,7 +262,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = foreign -AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/slab -I$(srcdir)/../include/bristol -I. -DBRISTOL_VOICECOUNT=@_BRISTOL_VOICES@ @BRISTOL_JACK_DEFAULT_MIDI@ @BRISTOL_JACK_DEFAULT@ @BRISTOL_JACK_MULTI_CLOSE@ @BRISTOL_SEMAPHORE@ @BRISTOL_SEM_OPEN@ @BRISTOL_BARRIER@ @BRISTOL_HAS_PA@ -DBRISTOL_RAMP_RATE=@BRR@ @BRISTOL_LIN_ATTACK@ @BRISTOL_HAS_DRAIN@ @BRISTOL_HAS_JACK@ @BRISTOL_HAS_JACK_MIDI@ @BRISTOL_HAS_JACK_SESSION@ -DBRISTOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ @JACK_CFLAGS@ @ALSA_CFLAGS@ -ffast-math -fomit-frame-pointer -O2 +AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/slab -I$(srcdir)/../include/bristol -I. -DBRISTOL_VOICECOUNT=@_BRISTOL_VOICES@ @BRISTOL_JACK_DEFAULT_MIDI@ @BRISTOL_JACK_DEFAULT@ @BRISTOL_JACK_MULTI_CLOSE@ @BRISTOL_SEMAPHORE@ @BRISTOL_SEM_OPEN@ @BRISTOL_BARRIER@ @BRISTOL_HAS_PA@ -DBRISTOL_RAMP_RATE=@BRR@ @BRISTOL_LIN_ATTACK@ @BRISTOL_HAS_DRAIN@ @BRISTOL_HAS_JACK@ @BRISTOL_HAS_JACK_MIDI@ @BRISTOL_HAS_JACK_SESSION@ -DBRISTOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ @JACK_CFLAGS@ @ALSA_CFLAGS@ -msse -mfpmath=sse -ffast-math -fomit-frame-pointer -O2 #bristol_LDFLAGS = -Bdynamic -L../libbristolmidi/.libs -L../libbristolaudio/.libs -L../libbristol/.libs -L../libbristolic/.libs bristol_LDFLAGS = -Bdynamic `pkg-config --silence-errors --libs alsa` @BRISTOL_LIBPALIBS@ @BRISTOL_LIB_PA@ @ALSA_LIBS@ -L../libbristolmidi/.libs -L../libbristolaudio/.libs -L../libbristol/.libs -L../libbristolic -lbristolmidi -lbristolaudio -lbristol -lm -lpthread `pkg-config --silence-errors --libs jack` bristol_LDADD = @BRISTOL_LIB_PA@ @JACK_LIBS@ @ALSA_LIBS@ -lbristolmidi -lbristolaudio -lbristolic -lbristol -lm -lpthread diff -Nru bristol-0.60.9/bristol/midihandlers.c bristol-0.60.10/bristol/midihandlers.c --- bristol-0.60.9/bristol/midihandlers.c 2011-10-24 16:39:05.000000000 +0000 +++ bristol-0.60.10/bristol/midihandlers.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/midinote.c bristol-0.60.10/bristol/midinote.c --- bristol-0.60.9/bristol/midinote.c 2011-10-11 11:44:20.000000000 +0000 +++ bristol-0.60.10/bristol/midinote.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -34,11 +34,12 @@ * Monophonic voice logic */ static int -doMNL(bristolVoice *voice, int key, int velocity, int action) +doMNL(bristolVoice *voice, int key, int velocity, int action, int offset) { Baudio *baudio = voice->baudio; int mn = -1; +offset = 99; if (voice->baudio == NULL) return(0); @@ -229,6 +230,11 @@ voice->flags |= BRISTOL_KEYREON; } + if ((offset >= baudio->samplecount) || (offset < 0)) + voice->offset = 0; + else + voice->offset = offset; + return(mn); } @@ -317,6 +323,7 @@ bristolVoice *voice, *v; #endif +msg->offset = 101; voice = audiomain->playlist; while (voice != NULL) @@ -342,7 +349,7 @@ { if (voice->baudio->midiflags & BRISTOL_MIDI_DEBUG1) bristolMidiPrint(msg); - doMNL(voice, msg->params.key.key, -1, 0); + doMNL(voice, msg->params.key.key, -1, 0, msg->offset); voice = voice->next; continue; } @@ -542,7 +549,7 @@ if ((voice = voice->next) == NULL) return(0); - doMNL(voice, key, velocity, 1); + doMNL(voice, key, velocity, 1, msg->offset); return(0); } @@ -1050,7 +1057,7 @@ //voice->flags &= ~(BRISTOL_KEYSUSTAIN; } - doMNL(voice, 0, 0, BRISTOL_ALL_NOTES_OFF); + doMNL(voice, 0, 0, BRISTOL_ALL_NOTES_OFF, 0); voice = voice->next; } diff -Nru bristol-0.60.9/bristol/midithread.c bristol-0.60.10/bristol/midithread.c --- bristol-0.60.9/bristol/midithread.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/midithread.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -391,7 +391,10 @@ audiomain->mtStatus = BRISTOL_OK; #ifndef BRISTOL_SEMAPHORE - bristolMidiRegisterForwarder(midiMsgForwarder); + if (audiomain->flags & BRISTOL_JACK_DUAL) + bristolMidiRegisterForwarder(NULL); + else + bristolMidiRegisterForwarder(midiMsgForwarder); #endif /* diff -Nru bristol-0.60.9/bristol/noise.c bristol-0.60.10/bristol/noise.c --- bristol-0.60.9/bristol/noise.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/noise.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/noise.h bristol-0.60.10/bristol/noise.h --- bristol-0.60.9/bristol/noise.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/noise.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/nro.c bristol-0.60.10/bristol/nro.c --- bristol-0.60.9/bristol/nro.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/nro.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/nro.h bristol-0.60.10/bristol/nro.h --- bristol-0.60.9/bristol/nro.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/nro.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/palette.h bristol-0.60.10/bristol/palette.h --- bristol-0.60.9/bristol/palette.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/palette.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/prophetdco.c bristol-0.60.10/bristol/prophetdco.c --- bristol-0.60.9/bristol/prophetdco.c 2011-10-22 09:47:50.000000000 +0000 +++ bristol-0.60.10/bristol/prophetdco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/prophetdco.h bristol-0.60.10/bristol/prophetdco.h --- bristol-0.60.9/bristol/prophetdco.h 2011-10-19 14:40:57.000000000 +0000 +++ bristol-0.60.10/bristol/prophetdco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/resonator.c bristol-0.60.10/bristol/resonator.c --- bristol-0.60.9/bristol/resonator.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/resonator.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/resonator.h bristol-0.60.10/bristol/resonator.h --- bristol-0.60.9/bristol/resonator.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/resonator.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/reverb.c bristol-0.60.10/bristol/reverb.c --- bristol-0.60.9/bristol/reverb.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/reverb.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/reverb.h bristol-0.60.10/bristol/reverb.h --- bristol-0.60.9/bristol/reverb.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/reverb.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/ringmod.c bristol-0.60.10/bristol/ringmod.c --- bristol-0.60.9/bristol/ringmod.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/ringmod.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/ringmod.h bristol-0.60.10/bristol/ringmod.h --- bristol-0.60.9/bristol/ringmod.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/ringmod.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/roadrunner.h bristol-0.60.10/bristol/roadrunner.h --- bristol-0.60.9/bristol/roadrunner.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/roadrunner.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/rotary.c bristol-0.60.10/bristol/rotary.c --- bristol-0.60.9/bristol/rotary.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/rotary.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/rotary.h bristol-0.60.10/bristol/rotary.h --- bristol-0.60.9/bristol/rotary.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/rotary.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/sdco.c bristol-0.60.10/bristol/sdco.c --- bristol-0.60.9/bristol/sdco.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/sdco.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/sdco.h bristol-0.60.10/bristol/sdco.h --- bristol-0.60.9/bristol/sdco.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/sdco.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/sdcoutils.c bristol-0.60.10/bristol/sdcoutils.c --- bristol-0.60.9/bristol/sdcoutils.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/sdcoutils.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/solina.h bristol-0.60.10/bristol/solina.h --- bristol-0.60.9/bristol/solina.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/solina.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/soundManager.c bristol-0.60.10/bristol/soundManager.c --- bristol-0.60.9/bristol/soundManager.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/soundManager.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/thesermon.c bristol-0.60.10/bristol/thesermon.c --- bristol-0.60.9/bristol/thesermon.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/thesermon.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/thesermon.h bristol-0.60.10/bristol/thesermon.h --- bristol-0.60.9/bristol/thesermon.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/thesermon.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/trilogyosc.c bristol-0.60.10/bristol/trilogyosc.c --- bristol-0.60.9/bristol/trilogyosc.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/trilogyosc.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/trilogyosc.h bristol-0.60.10/bristol/trilogyosc.h --- bristol-0.60.9/bristol/trilogyosc.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/trilogyosc.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/vibrachorus.c bristol-0.60.10/bristol/vibrachorus.c --- bristol-0.60.9/bristol/vibrachorus.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/vibrachorus.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/vibrachorus.h bristol-0.60.10/bristol/vibrachorus.h --- bristol-0.60.9/bristol/vibrachorus.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/vibrachorus.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -29,6 +29,7 @@ typedef struct BristolVCHORUS { bristolOPSpec spec; + float samplerate; } bristolVCHORUS; typedef struct BristolVCHORUSlocal { diff -Nru bristol-0.60.9/bristol/vox.c bristol-0.60.10/bristol/vox.c --- bristol-0.60.9/bristol/vox.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/bristol/vox.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/bristol/vox.h bristol-0.60.10/bristol/vox.h --- bristol-0.60.9/bristol/vox.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/bristol/vox.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/ChangeLog bristol-0.60.10/ChangeLog --- bristol-0.60.9/ChangeLog 2011-10-25 13:36:53.000000000 +0000 +++ bristol-0.60.10/ChangeLog 2012-04-27 11:37:26.000000000 +0000 @@ -1,10 +1,31 @@  + 0.60.10 27 Apr 2012 Maintenance release + +Voices are given a small random detune. Pitchbend would lose this delta which +put the voices back in tune as soon as the pitchwheel moved. That altered the +width of the sound so added in the code necessary to maintain the delta values. +audiothread.c + +Added in 'hi-res' skins for some of the emulators. This changes the rendering +to include a vector graphic stage where text and some line are rendered. It +makes the images far more scalable, ie, you can fullscreen them now without +getting pixel smashing. + +Retuned the Mini filters. Fixed fastest attack rate to 0.5ms, the envelopes +were getting very 'ticky'. Increased the default Mini release stage to similar +values as note off were ticky unless Release was selected. + +Jack MIDI configurations would only respond correctly on channel #1. Any other +channel would have the synth respond to the Jack MIDI messages but lose tracking +from the GUI, lose CC into the GUI as the channel identifiers could be lost in +the internal messaging. + 0.60.9 25 Oct 2011 Maintenance release, fanning linear potentiometers -Reworked the envelope to have a linear attack and with gentler control of the +Reworked the envelope to default linear attack and with gentler control of the decay/release times. The linear attack was a Moog thing but was not universally -appreciated - it does not work very well for long attack times. Several synths -such as the Synthi preferred the use of exponential for this and other reasons. +appreciated - it does not work very well for long attack times. Several synth +manufacturers preferred the use of exponential for this and other reasons. The actual envelope code does not have linear or exponential attack as a fixed value, it can be configured by the emulator although at the moment they all just take the default setting, now linear. There is a ./configure option to have them diff -Nru bristol-0.60.9/configure bristol-0.60.10/configure --- bristol-0.60.9/configure 2011-10-24 15:11:39.000000000 +0000 +++ bristol-0.60.10/configure 2012-01-12 17:14:01.000000000 +0000 @@ -2392,10 +2392,10 @@ BRISTOL_MAJOR_VERSION=0 BRISTOL_MINOR_VERSION=60 -BRISTOL_MICRO_VERSION=9 +BRISTOL_MICRO_VERSION=10 BRISTOL_API_CURRENT=0 -BRISTOL_API_REVISION=69 +BRISTOL_API_REVISION=610 BRISTOL_API_AGE=0 @@ -12173,7 +12173,7 @@ BRISTOL_DIR=$prefix/share/bristol -ac_config_files="$ac_config_files Makefile libbrightonC11/Makefile libbrightonX11/Makefile libbrighton/Makefile libbristolaudio/Makefile libbristolmidi/Makefile libbristolic/Makefile libbristol/Makefile brighton/Makefile bristol/Makefile bin/startBristol bin/Makefile" +ac_config_files="$ac_config_files Makefile libbrightonC11/Makefile libbrightonX11/Makefile libbrighton/Makefile libbvg/Makefile libbristolaudio/Makefile libbristolmidi/Makefile libbristolic/Makefile libbristol/Makefile brighton/Makefile bristol/Makefile bin/startBristol bin/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -13163,6 +13163,7 @@ "libbrightonC11/Makefile") CONFIG_FILES="$CONFIG_FILES libbrightonC11/Makefile" ;; "libbrightonX11/Makefile") CONFIG_FILES="$CONFIG_FILES libbrightonX11/Makefile" ;; "libbrighton/Makefile") CONFIG_FILES="$CONFIG_FILES libbrighton/Makefile" ;; + "libbvg/Makefile") CONFIG_FILES="$CONFIG_FILES libbvg/Makefile" ;; "libbristolaudio/Makefile") CONFIG_FILES="$CONFIG_FILES libbristolaudio/Makefile" ;; "libbristolmidi/Makefile") CONFIG_FILES="$CONFIG_FILES libbristolmidi/Makefile" ;; "libbristolic/Makefile") CONFIG_FILES="$CONFIG_FILES libbristolic/Makefile" ;; diff -Nru bristol-0.60.9/configure.ac bristol-0.60.10/configure.ac --- bristol-0.60.9/configure.ac 2011-10-24 15:11:26.000000000 +0000 +++ bristol-0.60.10/configure.ac 2012-01-12 17:13:41.000000000 +0000 @@ -6,10 +6,10 @@ BRISTOL_MAJOR_VERSION=0 BRISTOL_MINOR_VERSION=60 -BRISTOL_MICRO_VERSION=9 +BRISTOL_MICRO_VERSION=10 BRISTOL_API_CURRENT=0 -BRISTOL_API_REVISION=69 +BRISTOL_API_REVISION=610 BRISTOL_API_AGE=0 AC_SUBST(BRISTOL_MAJOR_VERSION) @@ -384,7 +384,7 @@ BRISTOL_DIR=$prefix/share/bristol AC_SUBST(BRISTOL_DIR) -AC_CONFIG_FILES([Makefile libbrightonC11/Makefile libbrightonX11/Makefile libbrighton/Makefile libbristolaudio/Makefile libbristolmidi/Makefile libbristolic/Makefile libbristol/Makefile brighton/Makefile bristol/Makefile bin/startBristol bin/Makefile]) +AC_CONFIG_FILES([Makefile libbrightonC11/Makefile libbrightonX11/Makefile libbrighton/Makefile libbvg/Makefile libbristolaudio/Makefile libbristolmidi/Makefile libbristolic/Makefile libbristol/Makefile brighton/Makefile bristol/Makefile bin/startBristol bin/Makefile]) AC_OUTPUT echo diff -Nru bristol-0.60.9/debian/bristol.install bristol-0.60.10/debian/bristol.install --- bristol-0.60.9/debian/bristol.install 2011-05-08 22:40:23.000000000 +0000 +++ bristol-0.60.10/debian/bristol.install 2012-05-01 09:05:19.000000000 +0000 @@ -1,4 +1,4 @@ debian/bristol.xpm usr/share/pixmaps -usr/lib/bristol usr/bin +usr/lib/bristol usr/share/man diff -Nru bristol-0.60.9/debian/changelog bristol-0.60.10/debian/changelog --- bristol-0.60.9/debian/changelog 2012-02-16 00:22:36.000000000 +0000 +++ bristol-0.60.10/debian/changelog 2012-05-16 01:45:02.000000000 +0000 @@ -1,8 +1,18 @@ -bristol (0.60.9-1~natty0) natty; urgency=medium +bristol (0.60.10-1~natty1) natty; urgency=medium - * Backport from precise / debian unstable. + * Import from debian sid. - -- DNS777 Thu, 16 Feb 2012 01:11:11 +0100 + -- DNS777 Wed, 16 May 2012 00:00:00 +0000 + +bristol (0.60.10-1) unstable; urgency=low + + * New upstream bugfix release. + * Refresh 01-export_statements.patch. + * Use dh-autoreconf. + * Refresh debian/copyright. + * Bump Standards. + + -- Alessio Treglia Tue, 01 May 2012 11:14:17 +0200 bristol (0.60.9-1) unstable; urgency=low diff -Nru bristol-0.60.9/debian/control bristol-0.60.10/debian/control --- bristol-0.60.9/debian/control 2011-11-14 05:09:59.000000000 +0000 +++ bristol-0.60.10/debian/control 2012-05-01 09:08:24.000000000 +0000 @@ -2,50 +2,56 @@ Section: sound Priority: optional Maintainer: Debian Multimedia Maintainers -Uploaders: Alessio Treglia , +Uploaders: + Alessio Treglia , Free Ekanayaka -Build-Depends: debhelper (>= 7.0.50~), - autotools-dev (>= 20100122.1~), - libx11-dev, - x11proto-core-dev, +Build-Depends: + debhelper (>= 7.0.50~), + dh-autoreconf, libasound2-dev, - libjack-dev -Standards-Version: 3.9.2 + libjack-dev, + libx11-dev, + x11proto-core-dev +Standards-Version: 3.9.3 Homepage: http://bristol.sourceforge.net/ -Vcs-Git: git://git.debian.org/pkg-multimedia/bristol.git -Vcs-Browser: http://git.debian.org/?p=pkg-multimedia/bristol.git +Vcs-Git: git://anonscm.debian.org/pkg-multimedia/bristol.git +Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-multimedia/bristol.git Package: bristol Architecture: any -Depends: ${shlibs:Depends}, +Depends: + bristol-data (= ${source:Version}), ${misc:Depends}, - bristol-data (= ${source:Version}) -Suggests: jackd + ${shlibs:Depends} +Suggests: + jackd Description: vintage synthesizer emulator - Bristol is a synthesizer emulator application. Bristol uses the sound card - PCM generator and can be MIDI driven, furthermore it can be set to use the - low latency scheduling feature of the kernel, reducing audio under runs. + Bristol is a synthesizer emulator application. Bristol uses the sound card + PCM generator and can be MIDI driven, furthermore it can be set to use the + low latency scheduling feature of the kernel, reducing audio under runs. It can handle any number of simultaneous synthesizers (they all connect to the same engine). It supports splitting and layering the keyboard with multiple synthesizers on a single midi channel. Currently Bristol emulates - the following keyboards: Moog Mini, Moog Voyager (Bristol "Explorer"), - Sequential Circuits Prophet-5, Roland Juno-6, Yamaha DX-7, + the following keyboards: Moog Mini, Moog Voyager (Bristol "Explorer"), + Sequential Circuits Prophet-5, Roland Juno-6, Yamaha DX-7, Hammond (single manual), Hammond B3 (dual manual). Package: bristol-data Architecture: all -Depends: ${shlibs:Depends}, - ${misc:Depends} -Replaces: bristol (<< 0.40.6-1) +Depends: + ${misc:Depends}, + ${shlibs:Depends} +Replaces: + bristol (<< 0.40.6-1) Description: vintage synthesizer emulator (data files) - Bristol is a synthesizer emulator application. Bristol uses the sound card - PCM generator and can be MIDI driven, furthermore it can be set to use the - low latency scheduling feature of the kernel, reducing audio under runs. + Bristol is a synthesizer emulator application. Bristol uses the sound card + PCM generator and can be MIDI driven, furthermore it can be set to use the + low latency scheduling feature of the kernel, reducing audio under runs. It can handle any number of simultaneous synthesizers (they all connect to the same engine). It supports splitting and layering the keyboard with multiple synthesizers on a single midi channel. Currently Bristol emulates - the following keyboards: Moog Mini, Moog Voyager (Bristol "Explorer"), - Sequential Circuits Prophet-5, Roland Juno-6, Yamaha DX-7, + the following keyboards: Moog Mini, Moog Voyager (Bristol "Explorer"), + Sequential Circuits Prophet-5, Roland Juno-6, Yamaha DX-7, Hammond (single manual), Hammond B3 (dual manual). . This package contains the application data files. diff -Nru bristol-0.60.9/debian/copyright bristol-0.60.10/debian/copyright --- bristol-0.60.9/debian/copyright 2011-05-08 22:46:09.000000000 +0000 +++ bristol-0.60.10/debian/copyright 2012-05-01 09:05:19.000000000 +0000 @@ -1,10 +1,10 @@ -Format: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=174 +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: Bristol Upstream-Contact: Nick Copeland Source: http://sourceforge.net/projects/bristol/files/ Files: * -Copyright: 1996-2010 Nick Copeland +Copyright: 1996-2012 Nick Copeland License: GPL-3+ Files: bristol/ringbuffer.c @@ -15,7 +15,7 @@ Files: debian/* Copyright: - 2009-2010 Alessio Treglia + 2009-2012 Alessio Treglia 2003-2006 Guenter Geiger License: GPL-2+ @@ -29,11 +29,12 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -Comment: You should have received a copy of the GNU General Public License - along with this program. If not, see . - . +Comment: On Debian systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-3'. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . License: LGPL-2.1+ This library is free software; you can redistribute it and/or @@ -45,12 +46,12 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. -Comment: You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - . +Comment: On Debian systems, the complete text of the GNU Lesser General Public License can be found in `/usr/share/common-licenses/LGPL-2.1'. + . + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . License: GPL-2+ This package is free software; you can redistribute it and/or modify @@ -62,8 +63,9 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -Comment: You should have received a copy of the GNU General Public License - along with this program. If not, see . - . +Comment: On Debian systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-2'. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . diff -Nru bristol-0.60.9/debian/gbp.conf bristol-0.60.10/debian/gbp.conf --- bristol-0.60.9/debian/gbp.conf 2011-05-08 22:40:23.000000000 +0000 +++ bristol-0.60.10/debian/gbp.conf 2012-05-01 09:01:26.000000000 +0000 @@ -1,3 +1,2 @@ [DEFAULT] pristine-tar = True -sign-tags = True diff -Nru bristol-0.60.9/debian/patches/01-export_statements.patch bristol-0.60.10/debian/patches/01-export_statements.patch --- bristol-0.60.9/debian/patches/01-export_statements.patch 2011-11-14 05:14:14.000000000 +0000 +++ bristol-0.60.10/debian/patches/01-export_statements.patch 2012-05-01 09:06:43.000000000 +0000 @@ -9,7 +9,7 @@ --- bristol.orig/bin/startBristol.in +++ bristol/bin/startBristol.in -@@ -442,9 +442,6 @@ fi +@@ -445,9 +445,6 @@ fi export SLAB_HOME=$BRISTOL export BRIGHTON=$BRISTOL diff -Nru bristol-0.60.9/debian/rules bristol-0.60.10/debian/rules --- bristol-0.60.9/debian/rules 2011-05-08 22:43:07.000000000 +0000 +++ bristol-0.60.10/debian/rules 2012-05-01 09:08:17.000000000 +0000 @@ -11,7 +11,7 @@ endif %: - dh $@ --parallel --with autotools_dev + dh $@ --parallel --with autoreconf override_dh_auto_configure: dh_auto_configure -- --prefix=/usr --libdir=\$${prefix}/lib/bristol \ diff -Nru bristol-0.60.9/include/brighton/brightonC11.h bristol-0.60.10/include/brighton/brightonC11.h --- bristol-0.60.9/include/brighton/brightonC11.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonC11.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightonC11internals.h bristol-0.60.10/include/brighton/brightonC11internals.h --- bristol-0.60.9/include/brighton/brightonC11internals.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonC11internals.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightondevflags.h bristol-0.60.10/include/brighton/brightondevflags.h --- bristol-0.60.9/include/brighton/brightondevflags.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightondevflags.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -39,6 +39,7 @@ #define BRIGHTON_STRETCH 0x00010000 #define BRIGHTON_POST_WINDOW 0x00020000 #define BRIGHTON_WINDOW 0x00040000 +#define BRIGHTON_KEY_PANEL 0x00080000 /* #define BRIGHTON_CHECKBUTTON 0x0010 */ #define BRIGHTON_SHIFTKEY 0x0020 diff -Nru bristol-0.60.9/include/brighton/brightondev.h bristol-0.60.10/include/brighton/brightondev.h --- bristol-0.60.9/include/brighton/brightondev.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightondev.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightonDevtable.h bristol-0.60.10/include/brighton/brightonDevtable.h --- bristol-0.60.9/include/brighton/brightonDevtable.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonDevtable.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightonevents.h bristol-0.60.10/include/brighton/brightonevents.h --- bristol-0.60.9/include/brighton/brightonevents.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonevents.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brighton.h bristol-0.60.10/include/brighton/brighton.h --- bristol-0.60.9/include/brighton/brighton.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brighton.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightoninternals.h bristol-0.60.10/include/brighton/brightoninternals.h --- bristol-0.60.9/include/brighton/brightoninternals.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightoninternals.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -26,6 +26,7 @@ #include "brightondevflags.h" #include "brightonevents.h" +#include "brightonvectorgraphics.h" #define BRIGHTON_ST_CLOCK 0 #define BRIGHTON_ST_REQ 1 @@ -44,6 +45,8 @@ #define isblue(x,y,z) \ ((x >= 0) && \ + (y != NULL) && \ + (z != NULL) && \ ((z[x] < 0) || \ ((y[z[x]].red == 0) && \ (y[z[x]].green == 0) && \ diff -Nru bristol-0.60.9/include/brighton/brightonledstates.h bristol-0.60.10/include/brighton/brightonledstates.h --- bristol-0.60.9/include/brighton/brightonledstates.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonledstates.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightonmenu.h bristol-0.60.10/include/brighton/brightonmenu.h --- bristol-0.60.9/include/brighton/brightonmenu.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonmenu.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightonvectorgraphics.h bristol-0.60.10/include/brighton/brightonvectorgraphics.h --- bristol-0.60.9/include/brighton/brightonvectorgraphics.h 1970-01-01 00:00:00.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonvectorgraphics.h 2012-04-27 11:04:29.000000000 +0000 @@ -0,0 +1,76 @@ +#ifndef _BRISTOL_BVG +#define _BRISTOL_BVG + +#define BVG_RED 0x00ff0000 +#define BVG_GREEN 0x0000ff00 +#define BVG_BLUE 0x000000fe +#define BVG_WHITE 0x00ffffff +#define BVG_BLACK 0x00000000 + +#define BVG_TYPE_MASK 0xff00 +#define BVG_STYLE_MASK 0x00ff +#define BVG_NULL 0 + +#define BVG_LINE 0x100 +#define BVG_SQUARE 0x200 +#define BVG_STRING 0x300 +#define BVG_VECT 0x400 // Uses string rendering using customer character +#define BVG_IMAGE 0x500 // Recurse + +#define VG_OPTS_MASK 0xff00 + +typedef struct BvgCoords { + short x, y; +} bvgCoords; + +typedef struct BvgVect { + int count; + bvgCoords *coords; +} bvgVect; + +// This can be line and fill +typedef struct BvgLine { + unsigned short type; + unsigned int color; + unsigned short x, y, X, Y; + char *nothing; +} bvgLine; + +typedef struct BvgString { + unsigned short type; + unsigned int color; + unsigned short x, y, W, H; + char *string; +} bvgString; + +typedef struct BvgVector { + unsigned short type; + unsigned int color; + unsigned short x, y, W, H; + bvgVect *vector; +} bvgVector; + +typedef struct BvgReimage { + unsigned short type; + unsigned int color; + unsigned short x, y, w, h; + struct BvgImage *image; +} bvgReimage; + +typedef struct BvgImage { + int width, height; + int color; + int count; + union { + bvgLine line; + bvgString string; + bvgVector vector; + bvgReimage image; + } element[]; +} bvgImage; + +typedef struct ImageMap { + char name[1024]; + bvgImage *image; +} iMap; +#endif //_BRISTOL_BVG diff -Nru bristol-0.60.9/include/brighton/brightonX11.h bristol-0.60.10/include/brighton/brightonX11.h --- bristol-0.60.9/include/brighton/brightonX11.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonX11.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/brighton/brightonX11internals.h bristol-0.60.10/include/brighton/brightonX11internals.h --- bristol-0.60.9/include/brighton/brightonX11internals.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/brighton/brightonX11internals.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolactivesense.h bristol-0.60.10/include/bristol/bristolactivesense.h --- bristol-0.60.9/include/bristol/bristolactivesense.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolactivesense.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolarpeggiation.h bristol-0.60.10/include/bristol/bristolarpeggiation.h --- bristol-0.60.9/include/bristol/bristolarpeggiation.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolarpeggiation.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -98,6 +98,7 @@ int max; /* Total number of notes in the sequence (config/learnt) */ int count; /* current scan through the rate */ int step; /* going up or down through the sequence */ + //int d_offset; /* sample accurate correction for note events */ int dif; /* Note difference - for sequencer only */ int vdif; /* velocity difference - for sequencer only */ int current; /* current note index */ diff -Nru bristol-0.60.9/include/bristol/bristolaudio.h bristol-0.60.10/include/bristol/bristolaudio.h --- bristol-0.60.9/include/bristol/bristolaudio.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolaudio.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolblo.h bristol-0.60.10/include/bristol/bristolblo.h --- bristol-0.60.9/include/bristol/bristolblo.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolblo.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristoldebug.h bristol-0.60.10/include/bristol/bristoldebug.h --- bristol-0.60.9/include/bristol/bristoldebug.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristoldebug.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristol.h bristol-0.60.10/include/bristol/bristol.h --- bristol-0.60.9/include/bristol/bristol.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristol.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolmessages.h bristol-0.60.10/include/bristol/bristolmessages.h --- bristol-0.60.9/include/bristol/bristolmessages.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolmessages.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolmidiapidata.h bristol-0.60.10/include/bristol/bristolmidiapidata.h --- bristol-0.60.9/include/bristol/bristolmidiapidata.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolmidiapidata.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolmidiapi.h bristol-0.60.10/include/bristol/bristolmidiapi.h --- bristol-0.60.9/include/bristol/bristolmidiapi.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolmidiapi.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolmidieventnames.h bristol-0.60.10/include/bristol/bristolmidieventnames.h --- bristol-0.60.9/include/bristol/bristolmidieventnames.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolmidieventnames.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolmidi.h bristol-0.60.10/include/bristol/bristolmidi.h --- bristol-0.60.9/include/bristol/bristolmidi.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolmidi.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolsid.h bristol-0.60.10/include/bristol/bristolsid.h --- bristol-0.60.9/include/bristol/bristolsid.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolsid.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/bristol/bristolvers.h bristol-0.60.10/include/bristol/bristolvers.h --- bristol-0.60.9/include/bristol/bristolvers.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/bristol/bristolvers.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/bristoljack.h bristol-0.60.10/include/slab/bristoljack.h --- bristol-0.60.9/include/slab/bristoljack.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/bristoljack.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/bristolpulse.h bristol-0.60.10/include/slab/bristolpulse.h --- bristol-0.60.9/include/slab/bristolpulse.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/bristolpulse.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/engine.h bristol-0.60.10/include/slab/engine.h --- bristol-0.60.9/include/slab/engine.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/engine.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab Include Files - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/fbDefs.h bristol-0.60.10/include/slab/fbDefs.h --- bristol-0.60.9/include/slab/fbDefs.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/fbDefs.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabalsadev.h bristol-0.60.10/include/slab/slabalsadev.h --- bristol-0.60.9/include/slab/slabalsadev.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabalsadev.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabaudiodev.h bristol-0.60.10/include/slab/slabaudiodev.h --- bristol-0.60.9/include/slab/slabaudiodev.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabaudiodev.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabbus.h bristol-0.60.10/include/slab/slabbus.h --- bristol-0.60.9/include/slab/slabbus.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabbus.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabcbuf.h bristol-0.60.10/include/slab/slabcbuf.h --- bristol-0.60.9/include/slab/slabcbuf.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabcbuf.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab Include Files - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabcdefs.h bristol-0.60.10/include/slab/slabcdefs.h --- bristol-0.60.9/include/slab/slabcdefs.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabcdefs.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabDAccess.h bristol-0.60.10/include/slab/slabDAccess.h --- bristol-0.60.9/include/slab/slabDAccess.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabDAccess.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabDebugMasks.h bristol-0.60.10/include/slab/slabDebugMasks.h --- bristol-0.60.9/include/slab/slabDebugMasks.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabDebugMasks.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab Include Files - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabdefinitions.h bristol-0.60.10/include/slab/slabdefinitions.h --- bristol-0.60.9/include/slab/slabdefinitions.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabdefinitions.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabEffects.h bristol-0.60.10/include/slab/slabEffects.h --- bristol-0.60.9/include/slab/slabEffects.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabEffects.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabmixer.h bristol-0.60.10/include/slab/slabmixer.h --- bristol-0.60.9/include/slab/slabmixer.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabmixer.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabrevisions.h bristol-0.60.10/include/slab/slabrevisions.h --- bristol-0.60.9/include/slab/slabrevisions.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabrevisions.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/slabtrack.h bristol-0.60.10/include/slab/slabtrack.h --- bristol-0.60.9/include/slab/slabtrack.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/slabtrack.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/include/slab/socketToolKit.h bristol-0.60.10/include/slab/socketToolKit.h --- bristol-0.60.9/include/slab/socketToolKit.h 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/include/slab/socketToolKit.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonBitmaps.c bristol-0.60.10/libbrighton/brightonBitmaps.c --- bristol-0.60.9/libbrighton/brightonBitmaps.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonBitmaps.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonButton.c bristol-0.60.10/libbrighton/brightonButton.c --- bristol-0.60.9/libbrighton/brightonButton.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonButton.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonC.c bristol-0.60.10/libbrighton/brightonC.c --- bristol-0.60.9/libbrighton/brightonC.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonC.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonColorMgt.c bristol-0.60.10/libbrighton/brightonColorMgt.c --- bristol-0.60.9/libbrighton/brightonColorMgt.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonColorMgt.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonDevice.c bristol-0.60.10/libbrighton/brightonDevice.c --- bristol-0.60.9/libbrighton/brightonDevice.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonDevice.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonDispatch.c bristol-0.60.10/libbrighton/brightonDispatch.c --- bristol-0.60.9/libbrighton/brightonDispatch.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonDispatch.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonDisplay.c bristol-0.60.10/libbrighton/brightonDisplay.c --- bristol-0.60.9/libbrighton/brightonDisplay.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonDisplay.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonDisplayMgt.c bristol-0.60.10/libbrighton/brightonDisplayMgt.c --- bristol-0.60.9/libbrighton/brightonDisplayMgt.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonDisplayMgt.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonEventHandlers.c bristol-0.60.10/libbrighton/brightonEventHandlers.c --- bristol-0.60.9/libbrighton/brightonEventHandlers.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonEventHandlers.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonFastTimer.c bristol-0.60.10/libbrighton/brightonFastTimer.c --- bristol-0.60.9/libbrighton/brightonFastTimer.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonFastTimer.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonHammond.c bristol-0.60.10/libbrighton/brightonHammond.c --- bristol-0.60.9/libbrighton/brightonHammond.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonHammond.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonHButton.c bristol-0.60.10/libbrighton/brightonHButton.c --- bristol-0.60.9/libbrighton/brightonHButton.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonHButton.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonInterface.c bristol-0.60.10/libbrighton/brightonInterface.c --- bristol-0.60.9/libbrighton/brightonInterface.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonInterface.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonKbd.c bristol-0.60.10/libbrighton/brightonKbd.c --- bristol-0.60.9/libbrighton/brightonKbd.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonKbd.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonkeymappings.h bristol-0.60.10/libbrighton/brightonkeymappings.h --- bristol-0.60.9/libbrighton/brightonkeymappings.h 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonkeymappings.h 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonLayer.c bristol-0.60.10/libbrighton/brightonLayer.c --- bristol-0.60.9/libbrighton/brightonLayer.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonLayer.c 2012-04-27 11:04:28.000000000 +0000 @@ -2,7 +2,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonLedBlock.c bristol-0.60.10/libbrighton/brightonLedBlock.c --- bristol-0.60.9/libbrighton/brightonLedBlock.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonLedBlock.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonLed.c bristol-0.60.10/libbrighton/brightonLed.c --- bristol-0.60.9/libbrighton/brightonLed.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonLed.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonLever.c bristol-0.60.10/libbrighton/brightonLever.c --- bristol-0.60.9/libbrighton/brightonLever.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonLever.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonMenu.c bristol-0.60.10/libbrighton/brightonMenu.c --- bristol-0.60.9/libbrighton/brightonMenu.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonMenu.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonModWheel.c bristol-0.60.10/libbrighton/brightonModWheel.c --- bristol-0.60.9/libbrighton/brightonModWheel.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonModWheel.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonPanelMgt.c bristol-0.60.10/libbrighton/brightonPanelMgt.c --- bristol-0.60.9/libbrighton/brightonPanelMgt.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonPanelMgt.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -21,6 +21,8 @@ #include "brightoninternals.h" +extern void bvgRenderInt(brightonWindow *, char *, brightonBitmap *); + #define MY_CALL 0x01 struct { unsigned int flags; @@ -71,6 +73,8 @@ bwin->app->resources[panel].devlocn[index].ah = height; } +static brightonILocations *ldid = 0; + static int configurePanel(brightonWindow *bwin, brightonIResource *panel, brightonEvent *event) @@ -201,13 +205,16 @@ * should create a dummy one to allow for antialiasing. */ if ((bwin->display->flags & BRIGHTON_ANTIALIAS_5) - || (bwin->display->flags & BRIGHTON_ANTIALIAS_3)) + || (bwin->display->flags & BRIGHTON_ANTIALIAS_2)) brightonStretchAlias(bwin, panel->image, panel->canvas, 0, 0, panel->sw, panel->sh, 0.2); else brightonStretch(bwin, panel->image, panel->canvas, 0, 0, panel->sw, panel->sh, 0); + if (panel->image) + bvgRenderInt(bwin, rindex(panel->image->name, '/'), panel->canvas); + /* * And then render it onto the window cavas area */ @@ -240,6 +247,56 @@ device = brightonDeviceLocator(panel, event->x - panel->sx, event->y - panel->sy); + if ((panel->flags & BRIGHTON_KEY_PANEL) || ldid) + { + brightonEvent nEv; + +//printf("keypanel\n"); + /* + * We may have to reinterpret some events. We want to have motion + * tracking to move from key to key which means if the device ID changes + * then send a BUTTONRELEASE on the previous ID and a BUTTONPRESS on + * the new one. + */ + if (device != ldid) + { +//printf("release button\n"); + memcpy(&nEv, event, sizeof(brightonEvent)); + + nEv.command = BRIGHTON_BUTTONRELEASE; + + nEv.x -= panel->sx; + nEv.y -= panel->sy; + + if (bwin->activedev) + ((brightonDevice *) bwin->activedev->dev)->configure + (bwin->activedev->dev, &nEv); + } + if ((panel->flags & BRIGHTON_KEY_PANEL) && device) + { + if (ldid != device) + { +//printf("press button\n"); + memcpy(&nEv, event, sizeof(brightonEvent)); + + nEv.command = BRIGHTON_BUTTONPRESS; + + nEv.x = event->x - panel->sx; + nEv.y = event->y - panel->sy; + + ldid = bwin->activedev = device; + + ((brightonDevice *) device->dev)->configure + (device->dev, &nEv); + + return(0); + } + } else { + ldid = 0; + bwin->activedev = 0; + } + } + if (event->command == BRIGHTON_BUTTONRELEASE) { /*printf("panel button release: %i\n", bwin->activedev); */ diff -Nru bristol-0.60.9/libbrighton/brightonPic.c bristol-0.60.10/libbrighton/brightonPic.c --- bristol-0.60.9/libbrighton/brightonPic.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonPic.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonRender.c bristol-0.60.10/libbrighton/brightonRender.c --- bristol-0.60.9/libbrighton/brightonRender.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonRender.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -1188,7 +1188,9 @@ /*printf(" stretch %i %i %i %i, %i %i: flags %x\n", x, y, width, height, */ /*src->width, src->height, flags); */ - pixels = src->pixels; + if ((pixels = src->pixels) == NULL) + return; + /* * Do not support rendering outside of the panel area, excepting where we * go over outer edges. diff -Nru bristol-0.60.9/libbrighton/brightonRibbonKbd.c bristol-0.60.10/libbrighton/brightonRibbonKbd.c --- bristol-0.60.9/libbrighton/brightonRibbonKbd.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonRibbonKbd.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonRotary.c bristol-0.60.10/libbrighton/brightonRotary.c --- bristol-0.60.9/libbrighton/brightonRotary.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonRotary.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonScale.c bristol-0.60.10/libbrighton/brightonScale.c --- bristol-0.60.9/libbrighton/brightonScale.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonScale.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -533,6 +533,7 @@ dev->value = 0.5; } else { /* Fanning scaler controls */ +// } else if (dev->bwin->flags & BRIGHTON_ROTARY_UD) { if ((event->x - dev->x) > dev->width) { dev->value = (((float) (cy - dev->y - (dev->height / 8))) diff -Nru bristol-0.60.9/libbrighton/brightonShadowMgt.c bristol-0.60.10/libbrighton/brightonShadowMgt.c --- bristol-0.60.9/libbrighton/brightonShadowMgt.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonShadowMgt.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonSlowTimer.c bristol-0.60.10/libbrighton/brightonSlowTimer.c --- bristol-0.60.9/libbrighton/brightonSlowTimer.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonSlowTimer.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonTouchpanel.c bristol-0.60.10/libbrighton/brightonTouchpanel.c --- bristol-0.60.9/libbrighton/brightonTouchpanel.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonTouchpanel.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonVu.c bristol-0.60.10/libbrighton/brightonVu.c --- bristol-0.60.9/libbrighton/brightonVu.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonVu.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonWindowMgt.c bristol-0.60.10/libbrighton/brightonWindowMgt.c --- bristol-0.60.9/libbrighton/brightonWindowMgt.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonWindowMgt.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrighton/brightonXpmRead.c bristol-0.60.10/libbrighton/brightonXpmRead.c --- bristol-0.60.9/libbrighton/brightonXpmRead.c 2011-10-07 14:16:36.000000000 +0000 +++ bristol-0.60.10/libbrighton/brightonXpmRead.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonC11/bColor.c bristol-0.60.10/libbrightonC11/bColor.c --- bristol-0.60.9/libbrightonC11/bColor.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonC11/bColor.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonC11/bDisplay.c bristol-0.60.10/libbrightonC11/bDisplay.c --- bristol-0.60.9/libbrightonC11/bDisplay.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonC11/bDisplay.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonC11/bEvent.c bristol-0.60.10/libbrightonC11/bEvent.c --- bristol-0.60.9/libbrightonC11/bEvent.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonC11/bEvent.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonC11/bRender.c bristol-0.60.10/libbrightonC11/bRender.c --- bristol-0.60.9/libbrightonC11/bRender.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonC11/bRender.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonC11/bRoutines.c bristol-0.60.10/libbrightonC11/bRoutines.c --- bristol-0.60.9/libbrightonC11/bRoutines.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonC11/bRoutines.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonC11/bWindow.c bristol-0.60.10/libbrightonC11/bWindow.c --- bristol-0.60.9/libbrightonC11/bWindow.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonC11/bWindow.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonX11/bColor.c bristol-0.60.10/libbrightonX11/bColor.c --- bristol-0.60.9/libbrightonX11/bColor.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonX11/bColor.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonX11/bDisplay.c bristol-0.60.10/libbrightonX11/bDisplay.c --- bristol-0.60.9/libbrightonX11/bDisplay.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonX11/bDisplay.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonX11/bEvent.c bristol-0.60.10/libbrightonX11/bEvent.c --- bristol-0.60.9/libbrightonX11/bEvent.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonX11/bEvent.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonX11/bRender.c bristol-0.60.10/libbrightonX11/bRender.c --- bristol-0.60.9/libbrightonX11/bRender.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonX11/bRender.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonX11/bRoutines.c bristol-0.60.10/libbrightonX11/bRoutines.c --- bristol-0.60.9/libbrightonX11/bRoutines.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonX11/bRoutines.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbrightonX11/bWindow.c bristol-0.60.10/libbrightonX11/bWindow.c --- bristol-0.60.9/libbrightonX11/bWindow.c 2011-10-07 14:16:35.000000000 +0000 +++ bristol-0.60.10/libbrightonX11/bWindow.c 2012-04-27 11:04:28.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristol/audioRoutines.c bristol-0.60.10/libbristol/audioRoutines.c --- bristol-0.60.9/libbristol/audioRoutines.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristol/audioRoutines.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristol/bristolcdefs.c bristol-0.60.10/libbristol/bristolcdefs.c --- bristol-0.60.9/libbristol/bristolcdefs.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristol/bristolcdefs.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristol/debugging.c bristol-0.60.10/libbristol/debugging.c --- bristol-0.60.9/libbristol/debugging.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristol/debugging.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristol/mixroutines.c bristol-0.60.10/libbristol/mixroutines.c --- bristol-0.60.9/libbristol/mixroutines.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristol/mixroutines.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristol/opmgt.c bristol-0.60.10/libbristol/opmgt.c --- bristol-0.60.9/libbristol/opmgt.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristol/opmgt.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioEngineALSA.c bristol-0.60.10/libbristolaudio/audioEngineALSA.c --- bristol-0.60.9/libbristolaudio/audioEngineALSA.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioEngineALSA.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioEngine.c bristol-0.60.10/libbristolaudio/audioEngine.c --- bristol-0.60.9/libbristolaudio/audioEngine.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioEngine.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioEngineJack.c bristol-0.60.10/libbristolaudio/audioEngineJack.c --- bristol-0.60.9/libbristolaudio/audioEngineJack.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioEngineJack.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioEngineOSS.c bristol-0.60.10/libbristolaudio/audioEngineOSS.c --- bristol-0.60.9/libbristolaudio/audioEngineOSS.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioEngineOSS.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioGUIALSA.c bristol-0.60.10/libbristolaudio/audioGUIALSA.c --- bristol-0.60.9/libbristolaudio/audioGUIALSA.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioGUIALSA.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioGUI.c bristol-0.60.10/libbristolaudio/audioGUI.c --- bristol-0.60.9/libbristolaudio/audioGUI.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioGUI.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioGUIOSS.c bristol-0.60.10/libbristolaudio/audioGUIOSS.c --- bristol-0.60.9/libbristolaudio/audioGUIOSS.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioGUIOSS.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolaudio/audioMastering.c bristol-0.60.10/libbristolaudio/audioMastering.c --- bristol-0.60.9/libbristolaudio/audioMastering.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolaudio/audioMastering.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse SLab audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolic/sid.c bristol-0.60.10/libbristolic/sid.c --- bristol-0.60.9/libbristolic/sid.c 2011-10-07 14:16:38.000000000 +0000 +++ bristol-0.60.10/libbristolic/sid.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/inetClient.c bristol-0.60.10/libbristolmidi/inetClient.c --- bristol-0.60.9/libbristolmidi/inetClient.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/inetClient.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/inetServer.c bristol-0.60.10/libbristolmidi/inetServer.c --- bristol-0.60.9/libbristolmidi/inetServer.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/inetServer.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/interface.c bristol-0.60.10/libbristolmidi/interface.c --- bristol-0.60.9/libbristolmidi/interface.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/interface.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -82,7 +82,6 @@ if (bmidi.flags & BRISTOL_BMIDI_DEBUG) printf("bristolMidiOpen(%s, %x)\n", dev, flags); -printf("bristolMidiOpen(%s, %x)\n", dev, flags); if (dev == NULL) dev = devname; @@ -115,7 +114,7 @@ if ((handle = bristolMidiFindFreeHandle()) < 0) return(handle); - bmidi.msgforwarder = NULL; + //bmidi.msgforwarder = NULL; bmidi.handle[handle].handle = handle; /* That looks kind of wierd! */ bmidi.handle[handle].state = BRISTOL_MIDI_OK; bmidi.handle[handle].channel = chan; @@ -547,9 +546,20 @@ msg->channel, size); - if (bristolPhysWrite(bmidi.dev[dev].fd, - (unsigned char *) &msg->command, 1) != 0) - return(1); + /* + * For short messages we are going to join the channel back together. This + * is not needed for SYSEX/Bristol messages. + */ + if (msg->params.bristol.msgLen < 4) + { + unsigned char ch = (msg->command & 0xf0)|msg->channel; + + if (bristolPhysWrite(bmidi.dev[dev].fd, (unsigned char *) &ch, 1) != 0) + return(1); + } else + if (bristolPhysWrite(bmidi.dev[dev].fd, + (unsigned char *) &msg->command, 1) != 0) + return(1); if (msg->command != MIDI_SYSEX) { diff -Nru bristol-0.60.9/libbristolmidi/midiALSADevMan.c bristol-0.60.10/libbristolmidi/midiALSADevMan.c --- bristol-0.60.9/libbristolmidi/midiALSADevMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiALSADevMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiDevMan.c bristol-0.60.10/libbristolmidi/midiDevMan.c --- bristol-0.60.9/libbristolmidi/midiDevMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiDevMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiFileMgt.c bristol-0.60.10/libbristolmidi/midiFileMgt.c --- bristol-0.60.9/libbristolmidi/midiFileMgt.c 2011-10-19 14:57:34.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiFileMgt.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiJACKDevMan.c bristol-0.60.10/libbristolmidi/midiJACKDevMan.c --- bristol-0.60.9/libbristolmidi/midiJACKDevMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiJACKDevMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiMsgMan.c bristol-0.60.10/libbristolmidi/midiMsgMan.c --- bristol-0.60.9/libbristolmidi/midiMsgMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiMsgMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiOSSDevMan.c bristol-0.60.10/libbristolmidi/midiOSSDevMan.c --- bristol-0.60.9/libbristolmidi/midiOSSDevMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiOSSDevMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiParse.c bristol-0.60.10/libbristolmidi/midiParse.c --- bristol-0.60.9/libbristolmidi/midiParse.c 2011-10-18 14:38:28.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiParse.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiRoutines.c bristol-0.60.10/libbristolmidi/midiRoutines.c --- bristol-0.60.9/libbristolmidi/midiRoutines.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiRoutines.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify @@ -205,6 +205,7 @@ if (bmidi.flags & BRISTOL_MIDI_INITTED) return; + bmidi.msgforwarder = NULL; bmidi.flags = 0; /* diff -Nru bristol-0.60.9/libbristolmidi/midiSeqDevMan.c bristol-0.60.10/libbristolmidi/midiSeqDevMan.c --- bristol-0.60.9/libbristolmidi/midiSeqDevMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiSeqDevMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/midiTCPDevMan.c bristol-0.60.10/libbristolmidi/midiTCPDevMan.c --- bristol-0.60.9/libbristolmidi/midiTCPDevMan.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/midiTCPDevMan.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/scalaParse.c bristol-0.60.10/libbristolmidi/scalaParse.c --- bristol-0.60.9/libbristolmidi/scalaParse.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/scalaParse.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/slabmessages.h bristol-0.60.10/libbristolmidi/slabmessages.h --- bristol-0.60.9/libbristolmidi/slabmessages.h 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/slabmessages.h 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol audio routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbristolmidi/socketToolKit.c bristol-0.60.10/libbristolmidi/socketToolKit.c --- bristol-0.60.9/libbristolmidi/socketToolKit.c 2011-10-07 14:16:37.000000000 +0000 +++ bristol-0.60.10/libbristolmidi/socketToolKit.c 2012-04-27 11:04:29.000000000 +0000 @@ -1,7 +1,7 @@ /* * Diverse Bristol midi routines. - * Copyright (c) by Nick Copeland 1996,2011 + * Copyright (c) by Nick Copeland 1996,2012 * * * This program is free software; you can redistribute it and/or modify diff -Nru bristol-0.60.9/libbvg/bvg.c bristol-0.60.10/libbvg/bvg.c --- bristol-0.60.9/libbvg/bvg.c 1970-01-01 00:00:00.000000000 +0000 +++ bristol-0.60.10/libbvg/bvg.c 2012-04-27 11:04:29.000000000 +0000 @@ -0,0 +1,625 @@ +/* + * We are going to take a file format and convert the content into a bitmap + * array based on basic (bristol) vector graphics. The main goal is to render + * silkscreen bitmaps for fonts, the overlays for the synths. + * + * The graphics will be referenced on 1000 by 1000 arrays? No, the format + * should include it's rough layout. We should have a subformat for fonts so + * we can call 'font/size' for example. We need a 'fill' option for boxes, a + * line option, each should include a color. + * + * Type: line, linearray, fill, + * color: 0xAARRGGBB + * coord: x/y + */ +#include +#include +#include + +#include + +#ifndef ANDROID_COLORS +static brightonWindow *bwin; +#endif + +/* + * We have the bitmap, we are given an area on that bitmap, we now render the + * fill into that area. + */ +static void +bvgRenderFill(brightonBitmap *bm, bvgImage *image, int stage, + int ox, int oy, int ow, int oh) +{ + float sx, sy, ex, ey; + float x, y; + int c = image->element[stage].line.color; + +#ifndef ANDROID_COLORS + c = brightonGetGC(bwin, + (c>>8) & 0x0000ff00, + c & 0x0000ff00, + (c << 8) & 0x0000ff00); +#endif + + /* + * Starting X point: origin-x + stage-x * stage-w / bitmap-w + */ + if ((sx = ox + image->element[stage].line.x * ow / image->width) + >= bm->width) + return; + + /* + * Starting Y point: origin-y + stage-y * stage-h / bitmap-h + */ + if ((sy = oy + image->element[stage].line.y * oh / image->height) + >= bm->height) + return; + + /* + * Ending X point: origin-x + stage-x * stage-w / bitmap-w + */ + if ((ex = ox + image->element[stage].line.X * ow / image->width) + >= bm->width) + return; + + /* + * Ending Y point: origin-y + stage-y * stage-h / bitmap-h + */ + if ((ey = oy + image->element[stage].line.Y * oh / image->height) + >= bm->height) + return; + + // Normalise + if (sx > ex) + { + float tx = ex; + ex = sx; + sx = tx; + } + // Normalise + if (sy > ey) + { + float ty = ey; + ey = sy; + sy = ty; + } + + for (x = sx; x <= ex; x += 1) + { + for (y = sy; y <= ey; y += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + // Set pixel x, y + //printf("set %i %i\n", (int) x, (int) y); + bm->pixels[(int) (round(x) + ((int) y) * bm->width)] = c; + } + } +} + +static void +bvgSetPoint(brightonBitmap *bm, int style, int x, int y, int c) +{ + int nx, ny; + + for (nx = 0; nx < style; nx++) + for (ny = 0; ny < style; ny++) + bm->pixels[nx + x + (ny + y) * bm->width] = c; +} + +/* + * We have the bitmap, we are given an area on that bitmap, we now render the + * line into that area. + */ +static int +bvgRenderVector(brightonBitmap *bm, bvgImage *image, bvgVect *v, int c, + int style, int ox, int oy, int ow, int oh) +{ + float sx, sy, ex, ey; + float dx, dy; + float x, y; + int i, startx, starty, w = 0; + + if (style <= 0) + style = 1; + + if (v->count < 2) + return(0); + +#ifndef ANDROID_COLORS + c = brightonGetGC(bwin, + (c>>8) & 0x0000ff00, + c & 0x0000ff00, + (c << 8) & 0x0000ff00); +#endif + + /* + * Starting X point: origin-x + stage-x * stage-w / bitmap-w + if ((sx = ox + v->coords[0].x * ow / image->width) + */ + if ((sx = ox * bm->width / image->width) >= bm->width) + return(0); + + /* + * Starting Y point: origin-y + stage-y * stage-h / bitmap-h + if ((sy = oy + v->coords[0].y * oh / image->height) + */ + if ((sy = oy * bm->height / image->height) >= bm->height) + return(0); + + startx = sx; + starty = sy; + + if ((sx = startx + ow * v->coords[0].x * bm->width / (image->width * 100)) + >= bm->width) + return(0); + if ((sy = starty + oh * v->coords[0].y * bm->height / (image->height * 100)) + >= bm->height) + return(0); + + for (i = 1; i < v->count; i++) + { + if (v->coords[i].x < 0) + { + if (++i >= v->count) + return(0); + + if ((sx = startx + ow * v->coords[i].x * bm->width / (image->width * 100)) + >= bm->width) + return(0); + if ((sy = starty + oh * v->coords[i].y * bm->height / (image->height * 100)) + >= bm->height) + return(0); + + continue; + } + + /* + * Ending X point: origin-x + stage-x * stage-w / bitmap-w + */ + if ((ex = startx + ow * v->coords[i].x * bm->width / (image->width * 100)) + >= bm->width) + return(w - startx); + + /* + * Ending Y point: origin-y + stage-y * stage-h / bitmap-h + */ + if ((ey = starty + oh * v->coords[i].y * bm->height / (image->height * 100)) + >= bm->height) + return(w - startx); + + if (ex > w) w = ex; + + /* + * There are 8 cases we need to check for with 4 net actions + */ + if ((sx <= ex) && (sy <= ey) && ((ex - sx) >= (ey - sy))) + { + dy = ((float) (ey - sy)) / (ex - sx); + y = sy; + + for (x = sx; x <= ex; x += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx <= ex) && (sy > ey) && ((ex - sx) >= (sy - ey))) { + dy = ((float) (ey - sy)) / (ex - sx); + y = sy; + + for (x = sx; x <= ex; x += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx >= ex) && (sy <= ey) && ((sx - ex) >= (ey - sy))) { + dy = ((float) (sy - ey)) / (ex - sx); + y = sy; + + for (x = sx; x >= ex; x -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx >= ex) && (sy >= ey) && ((sx - ex) >= (sy - ey))) { + dy = ((float) (sy - ey)) / (ex - sx); + y = sy; + + for (x = sx; x >= ex; x -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx <= ex) && (sy <= ey) && ((ex - sx) <= (ey - sy))) { + dx = ((float) (ex - sx)) / (ey - sy); + x = sx; + + for (y = sy; y <= ey; y += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } else if ((sx >= ex) && (sy <= ey) && ((sx - ex) <= (ey - sy))) { + dx = ((float) (ex - sx)) / (ey - sy); + x = sx; + + for (y = sy; y <= ey; y += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } else if ((sx <= ex) && (sy > ey) && ((ex - sx) >= (sy - ey))) { + dx = ((float) (sx - ex)) / (ey - sy); + x = sx; + + for (y = sy; y >= ey; y -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } else { + dx = ((float) (sx - ex)) / (ey - sy); + x = sx; + + for (y = sy; y >= ey; y -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } + + sx = ex; + sy = ey; + } + return(w - startx); +} + +/* + * We have the bitmap, we are given an area on that bitmap, we now render the + * line into that area. + */ +static void +bvgRenderLine(brightonBitmap *bm, bvgImage *image, int stage, + int ox, int oy, int ow, int oh) +{ + float sx, sy, ex, ey; + float dx, dy; + float x, y; + int c = image->element[stage].line.color; + int style = image->element[stage].line.type & BVG_STYLE_MASK; + + if (style <= 0) + style = 1; + +#ifndef ANDROID_COLORS + c = brightonGetGC(bwin, + (c>>8) & 0x0000ff00, + c & 0x0000ff00, + (c << 8) & 0x0000ff00); +#endif + + /* + * Starting X point: origin-x + stage-x * stage-w / bitmap-w + */ + if ((sx = ox + image->element[stage].line.x * ow / image->width) + >= bm->width) + return; + + /* + * Starting Y point: origin-y + stage-y * stage-h / bitmap-h + */ + if ((sy = oy + image->element[stage].line.y * oh / image->height) + >= bm->height) + return; + + /* + * Ending X point: origin-x + stage-x * stage-w / bitmap-w + */ + if ((ex = ox + image->element[stage].line.X * ow / image->width) + >= bm->width) + return; + + /* + * Ending Y point: origin-y + stage-y * stage-h / bitmap-h + */ + if ((ey = oy + image->element[stage].line.Y * oh / image->height) + >= bm->height) + return; + + /* + * There are 8 cases we need to check for with 4 net actions + */ + if ((sx <= ex) && (sy <= ey) && ((ex - sx) >= (ey - sy))) + { + dy = ((float) (ey - sy)) / (ex - sx); + y = sy; + + for (x = sx; x <= ex; x += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx <= ex) && (sy > ey) && ((ex - sx) >= (sy - ey))) { + dy = ((float) (ey - sy)) / (ex - sx); + y = sy; + + for (x = sx; x <= ex; x += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx >= ex) && (sy <= ey) && ((sx - ex) >= (ey - sy))) { + dy = ((float) (sy - ey)) / (ex - sx); + y = sy; + + for (x = sx; x >= ex; x -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx >= ex) && (sy >= ey) && ((sx - ex) >= (sy - ey))) { + dy = ((float) (sy - ey)) / (ex - sx); + y = sy; + + for (x = sx; x >= ex; x -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + y += dy; + } + } else if ((sx <= ex) && (sy <= ey) && ((ex - sx) <= (ey - sy))) { + dx = ((float) (ex - sx)) / (ey - sy); + x = sx; + + for (y = sy; y <= ey; y += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } else if ((sx >= ex) && (sy <= ey) && ((sx - ex) <= (ey - sy))) { + dx = ((float) (ex - sx)) / (ey - sy); + x = sx; + + for (y = sy; y <= ey; y += 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } else if ((sx <= ex) && (sy > ey) && ((ex - sx) >= (sy - ey))) { + dx = ((float) (sx - ex)) / (ey - sy); + x = sx; + + for (y = sy; y >= ey; y -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } else { + dx = ((float) (sx - ex)) / (ey - sy); + x = sx; + + for (y = sy; y >= ey; y -= 1) + { + if ((x < 0) || (y < 0) || (x >= bm->width) || (y >= bm->height)) + break; + + bvgSetPoint(bm, style, round(x), round(y), c); + x += dx; + } + } +} + +static void +bvgRenderString(brightonBitmap *bm, bvgImage *image, int stage, + int ox, int oy, int ow, int oh) +{ + int i = 0, step, len; + + len = strlen(image->element[stage].string.string); + step = ow / len - 1; + ow = step - 1; + + while (image->element[stage].string.string[i] != '\0') + { + if (image->element[stage].string.string[i] != ' ') + bvgRenderVector(bm, image, + font1[(int) image->element[stage].string.string[i]], + image->element[stage].line.color, + image->element[stage].line.type & BVG_STYLE_MASK, + ox, oy, ow, oh); + + ox += step; + + i++; + } +} + +extern iMap imageMap[]; + +bvgImage * +findImage(char *name) +{ + int i = 0; + + if (name == NULL) + return(NULL); + + while (imageMap[i].image != NULL) + { + if (strcmp(name, imageMap[i].name) == 0) + return(imageMap[i].image); + i++; + } + + return NULL; +} + +static void +bvgMacro(brightonBitmap *bm, bvgImage *image, int x, int y, int w, int h) +{ + int stage; + + if (image == NULL) + return; + + for (stage = 0; stage < image->count; stage++) + { + switch (image->element[stage].line.type & BVG_TYPE_MASK) { + case BVG_LINE: + bvgRenderLine(bm, image, stage, x, y, w, h); + break; + case BVG_SQUARE: + bvgRenderFill(bm, image, stage, x, y, w, h); + break; + case BVG_STRING: + bvgRenderString(bm, image, stage, + x + image->element[stage].string.x * w / 100, + y + image->element[stage].string.y * h / 100, + image->element[stage].string.W * w / 100, + image->element[stage].string.H * h / 100); + break; + case BVG_VECT: + bvgRenderVector(bm, image, + image->element[stage].vector.vector, + image->element[stage].line.color, + image->element[stage].line.type & BVG_STYLE_MASK, + x + image->element[stage].vector.x * w / 100, + y + image->element[stage].vector.y * h / 100, + image->element[stage].vector.W * w / 100, + image->element[stage].vector.H * h / 100); + break; + } + } +} + +int +bvgRender(brightonBitmap *bm, bvgImage *image, int x, int y, int w, int h) +{ + int stage; + + if (image == NULL) + return(0); + + if (image->color != 0) + memset(bm->pixels, 0, bm->width * bm->height * sizeof(int)); + + for (stage = 0; stage < image->count; stage++) + { + switch (image->element[stage].line.type & BVG_TYPE_MASK) { + case BVG_LINE: + bvgRenderLine(bm, image, stage, x, y, w, h); + break; + case BVG_SQUARE: + bvgRenderFill(bm, image, stage, x, y, w, h); + break; + case BVG_STRING: + bvgRenderString(bm, image, stage, + image->element[stage].string.x, + image->element[stage].string.y, + image->element[stage].string.W, + image->element[stage].string.H); + break; + case BVG_IMAGE: + // This is recursion, take care with subimage coords + bvgMacro(bm, + image->element[stage].image.image, + image->element[stage].image.x, + image->element[stage].image.y, + image->element[stage].image.w, + image->element[stage].image.h); + break; + case BVG_VECT: + bvgRenderVector(bm, image, + image->element[stage].vector.vector, + image->element[stage].line.color, + image->element[stage].line.type & BVG_STYLE_MASK, + image->element[stage].vector.x, + image->element[stage].vector.y, + image->element[stage].vector.W, + image->element[stage].vector.H); + break; + } + } + + return(0); +} + +void +bvgRenderInit(brightonWindow *bw) +{ +#ifndef ANDROID_COLORS + bwin = bw; +#endif + + initFont1(); +} + +void +bvgRenderInt(brightonWindow *bw, char *name, brightonBitmap *bm) +{ + if ((bm == NULL) || (bm->pixels == NULL)) + return; + + if (font1[0] == NULL) + bvgRenderInit(bw); + + bvgRender(bm, findImage(name), 0, 0, bm->width, bm->height); +} + +#ifdef TESTING +main() +{ + brightonBitmap bm; + + bm.width = 788; + bm.height = 244; + bm.pixels = malloc(bm.width * bm.height * sizeof(int)); + + bvgRender(&bm, &JunoImage, 0, 0, 788, 244); + return(0); +} +#endif diff -Nru bristol-0.60.9/libbvg/font1.h bristol-0.60.10/libbvg/font1.h --- bristol-0.60.9/libbvg/font1.h 1970-01-01 00:00:00.000000000 +0000 +++ bristol-0.60.10/libbvg/font1.h 2012-04-27 11:04:29.000000000 +0000 @@ -0,0 +1,771 @@ + +bvgCoords boxCoords[5] = { + {0, 0}, + {100, 0}, + {100, 100}, + {0, 100}, + {0, 0}, +}; +bvgVect box = { + 5, + boxCoords +}; + +bvgCoords plusCoords[5] = { + {20, 50}, + {80, 50}, + {-1, -1}, + {50, 20}, + {50, 80}, +}; +bvgVect plus = { + 5, + plusCoords +}; + +bvgCoords hiphenoords[2] = { + {20, 50}, + {80, 50}, +}; +bvgVect hiphen= { + 2, + hiphenoords +}; + +bvgCoords percentCoords[14] = { + {0, 0}, + {40, 0}, + {40, 40}, + {0, 40}, + {0, 0}, + {-1, -1}, + {0, 100}, + {100, 0}, + {-1, -1}, + {60, 60}, + {100, 60}, + {100, 100}, + {60, 100}, + {60, 60}, +}; +bvgVect percent = { + 14, + percentCoords +}; + +bvgCoords slashCoords[2] = { + {20, 100}, + {80, 0}, +}; +bvgVect slash = { + 2, + slashCoords +}; + +bvgCoords rightCoords[3] = { + {0, 0}, + {100, 50}, + {0, 100}, +}; +bvgVect right = { + 3, + rightCoords +}; + +bvgCoords leftCoords[3] = { + {100, 0}, + {0, 50}, + {100, 100}, +}; +bvgVect left = { + 3, + leftCoords +}; + +bvgCoords dotCoords[2] = { + {50, 100}, + {51, 100}, +}; +bvgVect dot = { + 2, + dotCoords +}; + +bvgCoords quoteCoords[2] = { + {50, 0}, + {45, 20}, +}; +bvgVect quote = { + 2, + quoteCoords +}; + +bvgCoords font1Acoords[7] = { + {0, 100}, + {0, 25}, + {50, 0}, + {100, 25}, + {100, 100}, + {100, 60}, + {0, 60}, +}; +bvgVect font1A = { + 7, + font1Acoords +}; + +bvgCoords font1Bcoords[12] = { + {0, 0}, + {80, 0}, + {100, 20}, + {100, 40}, + {80, 50}, + {0, 50}, + {80, 50}, + {100, 60}, + {100, 80}, + {80, 100}, + {0, 100}, + {0, 0}, +}; +bvgVect font1B = { + 12, + font1Bcoords +}; + +bvgCoords font1Ccoords[8] = { + {100, 20}, + {80, 0}, + {20, 0}, + {0, 20}, + {0, 80}, + {20, 100}, + {80, 100}, + {100, 80}, +}; +bvgVect font1C = { + 8, + font1Ccoords +}; + +bvgCoords font1Dcoords[7] = { + {0, 0}, + {80, 0}, + {100, 20}, + {100, 80}, + {80, 100}, + {0, 100}, + {0, 0}, +}; +bvgVect font1D = { + 7, + font1Dcoords +}; + +bvgCoords font1Ecoords[7] = { + {100, 0}, + {0, 0}, + {0, 100}, + {100, 100}, + {-1, -1}, + {0, 50}, + {70, 50}, +}; +bvgVect font1E = { + 7, + font1Ecoords +}; + +bvgCoords font1Fcoords[6] = { + {100, 0}, + {0, 0}, + {0, 100}, + {-1, -1}, + {0, 50}, + {70, 50}, +}; +bvgVect font1F = { + 6, + font1Fcoords +}; + +bvgCoords font1Gcoords[10] = { + {100, 20}, + {80, 0}, + {20, 0}, + {0, 20}, + {0, 80}, + {20, 100}, + {80, 100}, + {100, 80}, + {100, 60}, + {70, 60}, +}; +bvgVect font1G = { + 10, + font1Gcoords +}; + +bvgCoords font1Hcoords[8] = { + {0, 0}, + {0, 100}, + {-1, -1}, + {100, 0}, + {100, 100}, + {-1, -1}, + {0, 50}, + {100, 50}, +}; +bvgVect font1H = { + 8, + font1Hcoords +}; + +bvgCoords font1Icoords[8] = { + {34, 0}, + {60, 0}, + {-1, -1}, + {50, 0}, + {50, 100}, + {-1, -1}, + {40, 100}, + {60, 100}, +}; +bvgVect font1I = { + 8, + font1Icoords +}; + +bvgCoords font1Jcoords[7] = { + {34, 0}, + {60, 0}, + {-1, -1}, + {50, 0}, + {50, 80}, + {30, 100}, + {20, 100}, +}; +bvgVect font1J = { + 7, + font1Jcoords +}; + +bvgCoords font1Kcoords[11] = { + {0, 0}, + {0, 100}, + {-1, -1}, + {0, 50}, + {60, 50}, + {100, 20}, + {100, 0}, + {-1, -1}, + {60, 50}, + {100, 80}, + {100, 100}, +}; +bvgVect font1K = { + 11, + font1Kcoords +}; + +bvgCoords font1Lcoords[3] = { + {0, 0}, + {0, 100}, + {100, 100}, +}; +bvgVect font1L = { + 3, + font1Lcoords +}; + +bvgCoords font1Mcoords[5] = { + {0, 100}, + {0, 0}, + {50, 50}, + {100, 0}, + {100, 100}, +}; +bvgVect font1M = { + 5, + font1Mcoords +}; + +bvgCoords font1Ncoords[4] = { + {0, 100}, + {0, 0}, + {100, 100}, + {100, 0}, +}; +bvgVect font1N = { + 4, + font1Ncoords +}; + +bvgCoords font1Ocoords[9] = { + {20, 0}, + {80, 0}, + {100, 20}, + {100, 80}, + {80, 100}, + {20, 100}, + {0, 80}, + {0, 20}, + {20, 0}, +}; +bvgVect font1O = { + 9, + font1Ocoords +}; + +bvgCoords font1Pcoords[7] = { + {0, 100}, + {0, 0}, + {80, 0}, + {100, 20}, + {100, 40}, + {80, 60}, + {0, 60}, +}; +bvgVect font1P = { + 7, + font1Pcoords +}; + +bvgCoords font1Qcoords[] = { + {20, 0}, + {80, 0}, + {100, 20}, + {100, 80}, + {80, 100}, + {20, 100}, + {0, 80}, + {0, 20}, + {20, 0}, + {-1, -1}, + {70, 70}, + {100, 100}, +}; +bvgVect font1Q = { + 12, + font1Qcoords +}; + +bvgCoords font1Rcoords[11] = { + {0, 100}, + {0, 0}, + {80, 0}, + {100, 20}, + {100, 40}, + {80, 60}, + {0, 60}, + {-1, -1}, + {80, 60}, + {100, 70}, + {100, 100}, +}; +bvgVect font1R = { + 11, + font1Rcoords +}; + +bvgCoords font1Scoords[12] = { + {100, 20}, + {80, 0}, + {20, 0}, + {0, 20}, + {0, 40}, + {10, 50}, + {90, 50}, + {100, 60}, + {100, 80}, + {80, 100}, + {20, 100}, + {0, 80}, +}; +bvgVect font1S = { + 12, + font1Scoords +}; + +bvgCoords font1Tcoords[4] = { + {0, 0}, + {100, 0}, + {50, 0}, + {50, 100}, +}; +bvgVect font1T = { + 4, + font1Tcoords +}; + +bvgCoords font1Ucoords[6] = { + {0, 0}, + {0, 80}, + {20, 100}, + {80, 100}, + {100, 80}, + {100, 0}, +}; +bvgVect font1U = { + 6, + font1Ucoords +}; + +bvgCoords font1Vcoords[5] = { + {0, 0}, + {0, 60}, + {50, 100}, + {100, 60}, + {100, 0}, +}; +bvgVect font1V = { + 5, + font1Vcoords +}; + +bvgCoords font1Wcoords[9] = { + {0, 0}, + {0, 80}, + {20, 100}, + {30, 100}, + {50, 80}, + {70, 100}, + {80, 100}, + {100, 80}, + {100, 0}, +}; +bvgVect font1W = { + 9, + font1Wcoords +}; + +bvgCoords font1Xcoords[9] = { + {0, 0}, + {0, 20}, + {100, 80}, + {100, 100}, + {-1, -1}, + {100, 0}, + {100, 20}, + {0, 80}, + {0, 100}, +}; +bvgVect font1X = { + 9, + font1Xcoords +}; + +bvgCoords font1Ycoords[8] = { + {0, 0}, + {0, 30}, + {20, 50}, + {100, 50}, + {100, 0}, + {100, 80}, + {80, 100}, + {0, 100}, +}; +bvgVect font1Y = { + 8, + font1Ycoords +}; + +bvgCoords font1Zcoords[4] = { + {0, 0}, + {100, 0}, + {0, 100}, + {100, 100}, +}; +bvgVect font1Z = { + 4, + font1Zcoords +}; + +bvgCoords font10coords[12] = { + {20, 0}, + {80, 0}, + {100, 20}, + {100, 80}, + {80, 100}, + {20, 100}, + {0, 80}, + {0, 20}, + {20, 0}, + {-1, -1}, + {90, 10}, + {10, 90}, +}; +bvgVect font10 = { + 12, + font10coords +}; + +bvgCoords font11coords[6] = { + {30, 20}, + {50, 0}, + {50, 100}, + {-1, -1}, + {40, 100}, + {60, 100}, +}; +bvgVect font11 = { + 6, + font11coords +}; + +bvgCoords font12coords[8] = { + {0, 30}, + {0, 20}, + {20, 0}, + {80, 0}, + {100, 20}, + {100, 40}, + {0, 100}, + {100, 100}, +}; +bvgVect font12 = { + 8, + font12coords +}; + +bvgCoords font13coords[13] = { + {0, 20}, + {20, 0}, + {80, 0}, + {100, 20}, + {100, 30}, + {80, 50}, + {50, 50}, + {80, 50}, + {100, 70}, + {100, 80}, + {80, 100}, + {20, 100}, + {0, 80}, +}; +bvgVect font13 = { + 13, + font13coords +}; + +bvgCoords font14coords[6] = { + {40, 0}, + {0, 75}, + {100, 75}, + {-1, -1}, + {60, 50}, + {60, 100}, +}; +bvgVect font14 = { + 6, + font14coords +}; + +bvgCoords font15coords[9] = { + {100, 0}, + {0, 0}, + {0, 40}, + {80, 40}, + {100, 60}, + {100, 80}, + {80, 100}, + {20, 100}, + {0, 80}, +}; +bvgVect font15 = { + 9, + font15coords +}; + +bvgCoords font16coords[10] = { + {60, 0}, + {40, 0}, + {0, 40}, + {0, 80}, + {20, 100}, + {80, 100}, + {100, 80}, + {100, 70}, + {80, 50}, + {0, 50}, +}; +bvgVect font16 = { + 10, + font16coords +}; + +bvgCoords font17coords[5] = { + {0, 0}, + {100, 0}, + {100, 20}, + {20, 80}, + {20, 100}, +}; +bvgVect font17 = { + 5, + font17coords +}; + +bvgCoords font18coords[17] = { + {20, 0}, + {80, 0}, + {100, 20}, + {100, 30}, + {80, 50}, + {20, 50}, + {0, 70}, + {0, 80}, + {20, 100}, + {80, 100}, + {100, 80}, + {100, 70}, + {80, 50}, + {20, 50}, + {0, 30}, + {0, 20}, + {20, 0}, +}; +bvgVect font18 = { + 17, + font18coords +}; + +bvgCoords font19coords[10] = { + {100, 50}, + {20, 50}, + {0, 30}, + {0, 20}, + {20, 0}, + {80, 0}, + {100, 20}, + {100, 70}, + {70, 100}, + {20, 100}, +}; +bvgVect font19 = { + 10, + font19coords +}; + +bvgVect *font1[128] = { + NULL +}; + +void +initFont1() +{ + int i, j; + + for (i = 0; i < 128; i++) + font1[i] = &box; + + font1['A'] = &font1A; + font1['a'] = &font1A; + + font1['B'] = &font1B; + font1['b'] = &font1B; + + font1['C'] = &font1C; + font1['c'] = &font1C; + + font1['D'] = &font1D; + font1['d'] = &font1D; + + font1['E'] = &font1E; + font1['e'] = &font1E; + + font1['F'] = &font1F; + font1['f'] = &font1F; + + font1['G'] = &font1G; + font1['g'] = &font1G; + + font1['H'] = &font1H; + font1['h'] = &font1H; + + font1['I'] = &font1I; + font1['i'] = &font1I; + + font1['J'] = &font1J; + font1['j'] = &font1J; + + font1['K'] = &font1K; + font1['k'] = &font1K; + + font1['L'] = &font1L; + font1['l'] = &font1L; + + font1['M'] = &font1M; + font1['m'] = &font1M; + + font1['N'] = &font1N; + font1['n'] = &font1N; + + font1['O'] = &font1O; + font1['o'] = &font1O; + + font1['P'] = &font1P; + font1['p'] = &font1P; + + font1['Q'] = &font1Q; + font1['q'] = &font1Q; + + font1['R'] = &font1R; + font1['r'] = &font1R; + + font1['S'] = &font1S; + font1['s'] = &font1S; + + font1['T'] = &font1T; + font1['t'] = &font1T; + + font1['U'] = &font1U; + font1['u'] = &font1U; + + font1['V'] = &font1V; + font1['v'] = &font1V; + + font1['W'] = &font1W; + font1['w'] = &font1W; + + font1['X'] = &font1X; + font1['x'] = &font1X; + + font1['Y'] = &font1Y; + font1['y'] = &font1Y; + + font1['Z'] = &font1Z; + font1['z'] = &font1Z; + + font1['0'] = &font10; + font1['1'] = &font11; + font1['2'] = &font12; + font1['3'] = &font13; + font1['4'] = &font14; + font1['5'] = &font15; + font1['6'] = &font16; + font1['7'] = &font17; + font1['8'] = &font18; + font1['9'] = &font19; + + font1['\''] = "e; + font1['%'] = &percent; + font1['.'] = ˙ + font1['-'] = &hiphen; + font1['+'] = + + font1['/'] = &slash; + font1['<'] = &left; + font1['>'] = &right; + + /* + * Fix some of the widths, this was after the fact and I am not going to + * redefine the whole font. + */ + for (i = 0; i < 128; i++) + { + for (j = 0; j < font1[i]->count; j++) + if (font1[i]->coords[j].x >= 0) + font1[i]->coords[j].x = font1[i]->coords[j].x * 17 / 20; + } +} + diff -Nru bristol-0.60.9/libbvg/Makefile.am bristol-0.60.10/libbvg/Makefile.am --- bristol-0.60.9/libbvg/Makefile.am 1970-01-01 00:00:00.000000000 +0000 +++ bristol-0.60.10/libbvg/Makefile.am 2012-04-27 11:24:00.000000000 +0000 @@ -0,0 +1,13 @@ +AUTOMAKE_OPTIONS = foreign + +AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/brighton -DBRISOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ +libbvg_la_LDFLAGS=-export-dynamic -version-info @BRISTOL_SO_VERSION@ + +lib_LTLIBRARIES = libbvg.la +libbvg_la_SOURCES = bvg.c font1.h + +#bin_PROGRAMS = sidtest +#sidtest_LDFLAGS = -Bdynamic -L../libbvg/.libs +#sidtest_LDADD = @JACK_LIBS@ @ALSA_LIBS@ -lbvg -lm -lpthread +#sidtest_SOURCES = sidtest.c + diff -Nru bristol-0.60.9/libbvg/Makefile.in bristol-0.60.10/libbvg/Makefile.in --- bristol-0.60.9/libbvg/Makefile.in 1970-01-01 00:00:00.000000000 +0000 +++ bristol-0.60.10/libbvg/Makefile.in 2012-04-27 11:24:13.000000000 +0000 @@ -0,0 +1,568 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = libbvg +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(libdir)" +LTLIBRARIES = $(lib_LTLIBRARIES) +libbvg_la_LIBADD = +am_libbvg_la_OBJECTS = bvg.lo +libbvg_la_OBJECTS = $(am_libbvg_la_OBJECTS) +libbvg_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(libbvg_la_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libbvg_la_SOURCES) +DIST_SOURCES = $(libbvg_la_SOURCES) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_LIBS = @ALSA_LIBS@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BRIGHTON_HAS_AUTOZOOM = @BRIGHTON_HAS_AUTOZOOM@ +BRIGHTON_HAS_SHMIMAGE = @BRIGHTON_HAS_SHMIMAGE@ +BRIGHTON_HAS_X11 = @BRIGHTON_HAS_X11@ +BRIGHTON_HAS_XIMAGE = @BRIGHTON_HAS_XIMAGE@ +BRIGHTON_LIBB11 = @BRIGHTON_LIBB11@ +BRIGHTON_LIBX11 = @BRIGHTON_LIBX11@ +BRIGHTON_LIBXEXT = @BRIGHTON_LIBXEXT@ +BRIGHTON_LIBXLIBS = @BRIGHTON_LIBXLIBS@ +BRIGHTON_X11_DIR = @BRIGHTON_X11_DIR@ +BRISTOL_BARRIER = @BRISTOL_BARRIER@ +BRISTOL_DIR = @BRISTOL_DIR@ +BRISTOL_HAS_ALSA = @BRISTOL_HAS_ALSA@ +BRISTOL_HAS_DRAIN = @BRISTOL_HAS_DRAIN@ +BRISTOL_HAS_JACK = @BRISTOL_HAS_JACK@ +BRISTOL_HAS_JACK_MIDI = @BRISTOL_HAS_JACK_MIDI@ +BRISTOL_HAS_JACK_SESSION = @BRISTOL_HAS_JACK_SESSION@ +BRISTOL_HAS_LIBLO = @BRISTOL_HAS_LIBLO@ +BRISTOL_HAS_OSS = @BRISTOL_HAS_OSS@ +BRISTOL_HAS_PA = @BRISTOL_HAS_PA@ +BRISTOL_JACK_DEFAULT = @BRISTOL_JACK_DEFAULT@ +BRISTOL_JACK_DEFAULT_MIDI = @BRISTOL_JACK_DEFAULT_MIDI@ +BRISTOL_JACK_MULTI_CLOSE = @BRISTOL_JACK_MULTI_CLOSE@ +BRISTOL_LIBPALIBS = @BRISTOL_LIBPALIBS@ +BRISTOL_LIB_PA = @BRISTOL_LIB_PA@ +BRISTOL_LIN_ATTACK = @BRISTOL_LIN_ATTACK@ +BRISTOL_MAJOR_VERSION = @BRISTOL_MAJOR_VERSION@ +BRISTOL_MICRO_VERSION = @BRISTOL_MICRO_VERSION@ +BRISTOL_MINOR_VERSION = @BRISTOL_MINOR_VERSION@ +BRISTOL_PA_DIR = @BRISTOL_PA_DIR@ +BRISTOL_SEMAPHORE = @BRISTOL_SEMAPHORE@ +BRISTOL_SEM_OPEN = @BRISTOL_SEM_OPEN@ +BRISTOL_SO_VERSION = @BRISTOL_SO_VERSION@ +BRISTOL_VERSION = @BRISTOL_VERSION@ +BRR = @BRR@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFAULT_AUDIO_FLAG = @DEFAULT_AUDIO_FLAG@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JACK_CFLAGS = @JACK_CFLAGS@ +JACK_LIBS = @JACK_LIBS@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBLO_CFLAGS = @LIBLO_CFLAGS@ +LIBLO_LIBS = @LIBLO_LIBS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +_BRISTOL_VOICES = @_BRISTOL_VOICES@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AUTOMAKE_OPTIONS = foreign +AM_CFLAGS = -pthread -Wall -g -I$(srcdir)/../include/brighton -DBRISOL_HAS_ALSA=@BRISTOL_HAS_ALSA@ +libbvg_la_LDFLAGS = -export-dynamic -version-info @BRISTOL_SO_VERSION@ +lib_LTLIBRARIES = libbvg.la +libbvg_la_SOURCES = bvg.c font1.h +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libbvg/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign libbvg/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-libLTLIBRARIES: $(lib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)" + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ + } + +uninstall-libLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ + done + +clean-libLTLIBRARIES: + -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) + @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libbvg.la: $(libbvg_la_OBJECTS) $(libbvg_la_DEPENDENCIES) + $(libbvg_la_LINK) -rpath $(libdir) $(libbvg_la_OBJECTS) $(libbvg_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bvg.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(libdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-libLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-libLTLIBRARIES + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libLTLIBRARIES clean-libtool ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am \ + install-libLTLIBRARIES install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-libLTLIBRARIES + + +#bin_PROGRAMS = sidtest +#sidtest_LDFLAGS = -Bdynamic -L../libbvg/.libs +#sidtest_LDADD = @JACK_LIBS@ @ALSA_LIBS@ -lbvg -lm -lpthread +#sidtest_SOURCES = sidtest.c + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru bristol-0.60.9/Makefile.am bristol-0.60.10/Makefile.am --- bristol-0.60.9/Makefile.am 2010-11-08 10:00:31.000000000 +0000 +++ bristol-0.60.10/Makefile.am 2012-01-12 17:23:23.000000000 +0000 @@ -1,4 +1,4 @@ -SUBDIRS= libbristolaudio libbristolmidi @BRIGHTON_X11_DIR@ libbrightonC11 libbristolic libbrighton libbristol brighton bristol bin +SUBDIRS= libbristolaudio libbristolmidi libbvg @BRIGHTON_X11_DIR@ libbrightonC11 libbristolic libbrighton libbristol brighton bristol bin #SUBDIRS= libbristolaudio libbristolmidi libbrightonX11 libbrightonC11 libbristolic libbrighton libbristol brighton bristol bin ACLOCAL_AMFLAGS=-I m4 diff -Nru bristol-0.60.9/Makefile.in bristol-0.60.10/Makefile.in --- bristol-0.60.9/Makefile.in 2011-10-24 15:11:40.000000000 +0000 +++ bristol-0.60.10/Makefile.in 2012-01-12 17:23:57.000000000 +0000 @@ -258,7 +258,7 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -SUBDIRS = libbristolaudio libbristolmidi @BRIGHTON_X11_DIR@ libbrightonC11 libbristolic libbrighton libbristol brighton bristol bin +SUBDIRS = libbristolaudio libbristolmidi libbvg @BRIGHTON_X11_DIR@ libbrightonC11 libbristolic libbrighton libbristol brighton bristol bin #SUBDIRS= libbristolaudio libbristolmidi libbrightonX11 libbrightonC11 libbristolic libbrighton libbristol brighton bristol bin ACLOCAL_AMFLAGS = -I m4 bristoldir = ${BRISTOL_DIR} diff -Nru bristol-0.60.9/memory/profiles/tonewheel bristol-0.60.10/memory/profiles/tonewheel --- bristol-0.60.9/memory/profiles/tonewheel 2010-12-20 16:01:33.000000000 +0000 +++ bristol-0.60.10/memory/profiles/tonewheel 2012-04-26 15:48:19.000000000 +0000 @@ -170,6 +170,13 @@ # leakage (in a rather crude fashion). # stops: 0 0.0001 +stops: 1 0.1 +stops: 2 0.2 +stops: 3 0.3 +stops: 4 0.4 +stops: 5 0.5 +stops: 6 0.6 +stops: 7 0.7 stops: 8 1.0 #