[Header] Version=Nord Modular patch 3.0 0 127 0 127 2 0 0 1 600 2 1 1 1 1 1 1 1 1 1 1 1 1 1 [/Header] [ModuleDump] 1 2 53 1 0 1 73 1 2 4 53 1 4 5 53 1 8 6 73 1 10 7 53 1 12 3 53 1 16 8 73 1 18 9 53 1 20 10 53 1 24 11 73 1 26 12 53 1 28 13 53 2 0 14 73 2 2 15 53 2 4 16 53 2 8 17 73 2 10 18 53 2 12 19 53 2 16 20 73 2 18 21 53 2 20 22 53 2 24 23 73 2 26 24 53 2 28 25 1 0 0 28 68 2 32 29 20 2 35 30 7 1 32 31 4 1 38 32 38 0 2 33 53 3 0 34 73 3 2 35 53 3 4 36 53 3 8 37 73 3 10 38 53 3 12 39 53 3 16 40 73 3 18 41 53 3 20 42 53 3 24 43 73 3 26 44 53 3 28 45 53 4 0 46 73 4 2 47 53 4 4 48 53 4 8 49 73 4 10 50 53 4 12 51 53 4 16 52 73 4 18 53 53 4 20 54 53 4 24 55 73 4 26 56 53 4 28 57 18 0 4 58 18 0 7 26 43 0 10 [/ModuleDump] [ModuleDump] 0 [/ModuleDump] [CurrentNoteDump] 64 0 0 64 0 0 [/CurrentNoteDump] [CableDump] 1 2 2 0 0 1 0 1 0 4 0 0 2 0 1 0 5 1 0 4 0 0 0 6 0 0 5 1 0 2 5 0 0 6 0 1 0 7 0 0 5 0 1 0 3 1 0 7 0 0 0 8 0 0 3 1 0 0 1 1 0 5 0 1 2 3 0 0 8 0 1 0 9 0 0 3 0 1 0 10 1 0 9 0 0 0 11 0 0 10 1 0 0 6 1 0 3 0 1 2 10 0 0 11 0 1 0 12 0 0 10 0 1 0 14 0 0 10 0 1 0 13 1 0 14 0 0 0 8 1 0 10 0 1 2 13 0 0 14 0 1 0 15 0 0 13 0 1 0 16 1 0 15 0 0 0 17 0 0 16 1 0 0 11 1 0 15 0 0 2 16 0 0 17 0 1 0 18 0 0 16 0 1 0 19 1 0 18 0 0 0 20 0 0 19 1 0 0 14 1 0 16 0 1 2 19 0 0 20 0 1 0 21 0 0 19 0 1 0 22 1 0 21 0 0 0 23 0 0 22 1 0 0 17 1 0 19 0 1 2 22 0 0 23 0 1 0 24 0 0 22 0 1 0 20 1 0 22 0 1 0 34 0 0 22 0 1 0 33 1 0 34 0 0 0 7 1 0 4 0 1 0 9 1 0 7 0 1 0 12 1 0 9 0 1 0 15 1 0 12 0 1 0 18 1 0 15 0 1 0 21 1 0 18 0 1 0 24 1 0 21 0 1 0 29 0 0 30 0 1 0 31 1 0 29 1 1 0 31 0 0 31 1 0 2 32 0 0 25 1 1 2 33 0 0 34 0 1 0 35 0 0 33 0 1 0 36 1 0 35 0 0 0 37 0 0 36 1 0 0 23 1 0 35 0 0 2 36 0 0 37 0 1 0 38 0 0 36 0 1 0 39 1 0 38 0 0 0 40 0 0 39 1 0 0 34 1 0 36 0 1 2 39 0 0 40 0 1 0 41 0 0 39 0 1 0 42 1 0 41 0 0 0 43 0 0 42 1 0 0 37 1 0 39 0 1 2 42 0 0 43 0 1 0 44 0 0 42 0 1 0 46 0 0 42 0 1 0 45 1 0 46 0 0 0 40 1 0 42 0 1 2 45 0 0 46 0 1 0 47 0 0 45 0 1 0 48 1 0 47 0 0 0 49 0 0 48 1 0 0 43 1 0 47 0 0 2 48 0 0 49 0 1 0 50 0 0 48 0 1 0 51 1 0 50 0 0 0 52 0 0 51 1 0 0 46 1 0 48 0 1 2 51 0 0 52 0 1 0 53 0 0 51 0 1 0 54 1 0 53 0 0 0 55 0 0 54 1 0 0 49 1 0 51 0 1 2 54 0 0 55 0 1 0 56 0 0 54 0 1 0 29 1 0 56 0 0 0 58 1 0 29 1 0 0 52 1 0 54 0 1 0 38 1 0 35 0 1 0 41 1 0 38 0 1 0 44 1 0 41 0 1 0 47 1 0 44 0 1 0 50 1 0 47 0 1 0 53 1 0 50 0 1 0 56 1 0 53 0 1 0 30 3 0 56 0 1 0 57 1 0 30 3 0 0 35 1 0 24 0 1 2 55 1 0 28 1 1 1 57 0 0 25 0 1 0 4 1 0 57 0 1 0 1 0 0 58 0 1 0 2 1 0 1 0 0 2 58 0 0 32 0 1 1 58 2 0 26 0 1 1 57 2 0 58 2 0 [/CableDump] [CableDump] 0 [/CableDump] [ParameterDump] 1 1 73 1 2 6 73 1 2 8 73 1 2 11 73 1 2 14 73 1 2 17 73 1 2 20 73 1 2 23 73 1 2 26 43 2 0 0 28 68 2 0 1 29 20 6 0 17 77 127 79 0 30 7 10 64 64 0 64 1 0 127 0 0 0 31 4 3 115 0 0 32 38 1 0 34 73 1 2 37 73 1 2 40 73 1 2 43 73 1 2 46 73 1 2 49 73 1 2 52 73 1 2 55 73 1 2 57 18 2 127 0 58 18 2 127 0 [/ParameterDump] [ParameterDump] 0 [/ParameterDump] [KnobMapDump] 1 26 0 0 1 28 1 1 [/KnobMapDump] [CustomDump] 1 30 1 0 [/CustomDump] [CustomDump] 0 [/CustomDump] [NameDump] 1 1 LogicProc1 2 JJClark 3 JJClark 4 Sample&Hold1 5 JJClark 6 LogicProc1 7 Sample&Hold1 8 LogicProc1 9 Sample&Hold1 10 JJClark 11 LogicProc1 12 Sample&Hold1 13 JJClark 14 LogicProc1 15 Sample&Hold1 16 JJClark 17 LogicProc1 18 Sample&Hold1 19 JJClark 20 LogicProc1 21 Sample&Hold1 22 JJClark 23 LogicProc1 24 Sample&Hold1 25 JJClark 26 Constant1 28 ClkGen1 29 ADSR-Env1 30 OscA1 31 2 outputs1 32 Pulse1 33 JJClark 34 LogicProc1 35 Sample&Hold1 36 JJClark 37 LogicProc1 38 Sample&Hold1 39 JJClark 40 LogicProc1 41 Sample&Hold1 42 JJClark 43 LogicProc1 44 Sample&Hold1 45 JJClark 46 LogicProc1 47 Sample&Hold1 48 JJClark 49 LogicProc1 50 Sample&Hold1 51 JJClark 52 LogicProc1 53 Sample&Hold1 54 JJClark 55 LogicProc1 56 Sample&Hold1 57 X-Fade1 58 X-Fade2 [/NameDump] [NameDump] 0 [/NameDump] [Notes] This is an 16 stage asynchronous FIFO buffer using C-elements for synchronization. Basically note events enter the buffer asynchronously (i.e. at any time) and leave the buffer at regular intervals specified by the clock. Actually, the events could be read out of the buffer at irregular intervals as well if you used, for example, a random pulse generator in place of the clock. This can be used in any application where you have arrival of events at irregular intervals, but you want to process them at regular intervals. One application of this approach is to smooth out ones ragged playing on the keyboard! For lots of fun, turn knob 1 fully counter clockwise and turn the clock off (turn knob 2 fully counter-clockwise) and then enter a bunch of notes. Then turn knob 1 fully clockwise. This feeds back the output of the buffer to its input. Now turn the clock back on (knob 2 clockwise). Now the pattern of notes you entered will play over and over again. (c) JJClark 1999 Note: for those wondering what a C-element is, it is a basic logic gate used in modern asynchronous digital system design. It is basically an "AND" gate for signal transitions. It has the following truth table: A B | C -------------- 0 0 | 0 0 1 | C 1 0 | C 1 1 | 1 The output changes only when the inputs become the same. This property is very useful for synchronizing two systems. [/Notes]