Rev 1164 | Rev 1190 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
44 | tk | 1 | $Id: CHANGELOG.txt 1189 2014-12-19 20:00:14Z tk $ |
2 | |||
1137 | tk | 3 | MIDIboxSID V2.044 |
4 | ~~~~~~~~~~~~~~~~~ |
||
5 | |||
1189 | tk | 6 | o This version got an improved rotary encoder handling. |
7 | Please update to MIOS V1.9h before uploading the application, otherwise the improvements |
||
8 | won't be effective. |
||
1137 | tk | 9 | |
1164 | tk | 10 | o swapped behaviour of ENC speed control again, so that encoders are at fast speed |
11 | by default, and slow if SHIFT button pressed. |
||
12 | This behaviour can now be alternated in your setup_*.asm file by changing |
||
13 | the DEFAULT_SHIFT_SPEED_CONTROL_MODE option |
||
14 | |||
1163 | tk | 15 | o implemented special encoder testmode which can be enabled with |
16 | DEFAULT_TESTMODE_ENC_SPEED in the setup_*.asm file |
||
1137 | tk | 17 | |
1189 | tk | 18 | o envelopes are now released properly when a note is played via the SysEx editor |
19 | (or with the PLAY button) |
||
1163 | tk | 20 | |
1189 | tk | 21 | o added new "SuperSaw" detune mode which has been created by Lis0r. |
22 | In distance to the normal (legacy) mode, results are much better especially on |
||
23 | higher detune values! |
||
24 | The detune mode (DtM) can be selected in the OSC page for lead engine patches, and |
||
25 | in the O23 page for bassline patches. |
||
26 | |||
27 | |||
1109 | tk | 28 | MIDIboxSID V2.043 |
29 | ~~~~~~~~~~~~~~~~~ |
||
30 | |||
1122 | tk | 31 | o fixed NRPN handling for Multi patches |
32 | |||
33 | o implemented CCs for Bassline/Drum/Multi Engine |
||
34 | See doc/mbsidv2_cc_chart.txt for available CCs |
||
35 | |||
1109 | tk | 36 | o display updated when the patch name has been changed from external |
37 | |||
38 | |||
1102 | tk | 39 | MIDIboxSID V2.042 |
40 | ~~~~~~~~~~~~~~~~~ |
||
41 | |||
42 | o new SysEx commands to support the Lemur Editor |
||
43 | |||
44 | o MIDI Clock is now optionally sent with the "Out" option of the Ensemble Clk page. |
||
45 | |||
46 | o default encoder mode is "DETENTED3" now, since it works better for most encoders |
||
47 | available on the market |
||
48 | |||
49 | o swapped behaviour of ENC speed control: encoder now at fast speed if SHIFT button is pressed |
||
50 | |||
51 | |||
1075 | tk | 52 | MIDIboxSID V2.041 |
53 | ~~~~~~~~~~~~~~~~~ |
||
54 | |||
55 | o corrected sysex handling for MIOS Studio SysEx Librarian |
||
56 | |||
57 | |||
1044 | tk | 58 | MIDIboxSID V2.040 |
59 | ~~~~~~~~~~~~~~~~~ |
||
44 | tk | 60 | |
1044 | tk | 61 | o fixed SysEx patch write issue which happened when patches were received |
62 | with the common format (e.g. preset patches) |
||
63 | |||
64 | |||
65 | MIDIboxSID V2.039 |
||
66 | ~~~~~~~~~~~~~~~~~ |
||
67 | |||
68 | o LFO MIDI Clock Sync has been overworked, it now supports 32 different |
||
69 | rates from 16 bars to 1/32 notes including triple and dotted delays! |
||
70 | |||
71 | If the CSn flag enabled the available rates are: |
||
72 | 0=LFO disabled, 8=16 bars, 16=14 bars, 24=12 bars, 32=10 bars, |
||
73 | 40=9 bars, 48=8 bars, 56=7 bars, 64=6 bars, 72=5 bars, 80=4 bars, |
||
74 | 88=3.5 bars, 96=3 bars, 104=2.5 bars, 112=2 bars, 120=1.5 bars, |
||
75 | 128=1 bar, 136=1/2., 144=1/1T, 152=1/2, 160=1/4., 168=1/2T, |
||
76 | 176=1/4, 184=1/8., 192=1/4T, 200=1/8, 208=1/16., 216=1/8T, |
||
77 | 224=1/16, 232=1/32., 240=1/16T, 248=1/32 |
||
78 | |||
79 | Note that in MIDI Sync mode, the LFO Delay won't work because |
||
80 | the appr. resource is used as MIDI clock counter. |
||
81 | |||
82 | o current bank and patch number won't be changed anymore on direct RAM |
||
83 | access via SysEx |
||
84 | |||
85 | |||
86 | MIDIboxSID V2 RC38 |
||
87 | ~~~~~~~~~~~~~~~~~~ |
||
88 | |||
89 | o optimized MBNet Handler for fast external access to SID registers |
||
90 | |||
91 | o added DEFAULT_CC32_FILTER switch to setup_*.asm - it filters CC#32 for |
||
92 | programs which send this CC always together with CC#0 on bank changes |
||
93 | |||
94 | o support for "extended SysEx dump" - see also mbsidv2_sysex_implementation.txt |
||
95 | |||
96 | o filter mode/channel and waveform flags can now be optionally passed to |
||
97 | J5 (configuration has to be done in setup_*.asm file) |
||
98 | |||
99 | o (only for Multi Engine): "W+16" flag - waveform can be changed from |
||
100 | offset +16 of the wavetable, in combination with another parameter |
||
101 | (such as #249), it's possible to control pitch and waveform from |
||
102 | a single WT track |
||
103 | |||
104 | |||
105 | MIDIboxSID V2 RC37 |
||
106 | ~~~~~~~~~~~~~~~~~~ |
||
107 | |||
108 | o SW based feedback loops won't lead to endless repeated replies |
||
109 | |||
110 | |||
111 | MIDIboxSID V2 RC36 |
||
112 | ~~~~~~~~~~~~~~~~~~ |
||
113 | |||
114 | o Bassline engine: detune parameter now mapped to Parameter #003 |
||
115 | o a table based calibration table is now provided for the SID filter. |
||
116 | It has to be adapted under src/sid_filter_table.inc and can either be |
||
117 | uploaded together with the firmware build, or separately if by uploading |
||
118 | "sid_filter_table.hex" after the "make" command (type "make sid_filter_table" |
||
119 | to build only this file) |
||
120 | The table can be used to compensate technology related non-linearities |
||
121 | of the 6581 R-2R DAC |
||
122 | o various minor bugfixes |
||
123 | |||
124 | |||
125 | MIDIboxSID V2 RC35 |
||
126 | ~~~~~~~~~~~~~~~~~~ |
||
127 | |||
128 | o modulation source "KEY" now uses current frequency instead of key number |
||
129 | to consider frequency sweeps correctly |
||
130 | o bugfix for "jump to page" (empty page if current item position outside new page) |
||
131 | o bugfix for knob page (min/max value modified Pa1 if multiple SIDs selected) |
||
132 | |||
133 | |||
134 | MIDIboxSID V2 RC34 |
||
135 | ~~~~~~~~~~~~~~~~~~ |
||
136 | |||
137 | o fixed race condition in SusKey portamento function |
||
138 | o Note Off keys which are not in the note stack are ignored now |
||
139 | o implemented CC#123 (All Notes Off) |
||
140 | Complies to MIDI spec. Means: only CC#123=0 will unplay all notes, |
||
141 | all other values (1..127) are silently ignored |
||
142 | o new wavetable control function "Key" allows to select a wavetable |
||
143 | step with the currently played note inside the given Begin/End range. |
||
144 | E.g., with Begin=0x00, End=0x7f, KEY=on, Par=200 you are able to |
||
145 | define different ENV1 Decay parameters for each note. |
||
146 | There are much more usecases of course (e.g. different LFO values, |
||
147 | different waveforms, Sync/Ring enable/disable in certain keyranges) |
||
148 | - be creative :) |
||
149 | o Arpeggiator "Easy Chord" function now active in default Lead/Bassline/Multi |
||
150 | patch |
||
151 | o sammichSID: F2 button now jumps to Knob page by default (especially |
||
152 | nice for bassline patches, for other engines the knob assignments |
||
153 | are mostly not preconfigured) |
||
154 | o Multi Engine: Knob parameter #6 and #7 now allow to control CutOff |
||
155 | frequency of left/right channel SID separately. Note that this isn't |
||
156 | consistent to Lead/Bassline assignments, but unfortunately there is |
||
157 | no other possible solution. |
||
158 | o filter page now allows direct L/R channel selection |
||
159 | o the full control surface now handles the first press of Osc Select, |
||
160 | Env Select, LFO Select and Filter Mode/Channel Select as a |
||
161 | "jump to page" function if that page was not displayed, and |
||
162 | thereafter, function as a "change selection" function. Thus |
||
163 | if you are not on the LFO page, pressing LFO Select jumps to |
||
164 | LFO page, and then pressing it again will change the selected LFO. |
||
165 | o this is the christmas edition, therefore the Matrix LEDs are flickering |
||
166 | during startup ;-) |
||
167 | |||
168 | |||
169 | MIDIboxSID V2 RC33 |
||
170 | ~~~~~~~~~~~~~~~~~~ |
||
171 | |||
172 | o built for MIOS V1.9g (or higher) to support new encoder types. |
||
173 | Rotary encoders won't work with older MIOS versions! |
||
174 | Note that MIOS only has to be updated on the master SID, as encoders |
||
175 | are not connected to SID slaves anyhow. |
||
176 | o a new LED matrix visualisation mode for sammichSID has been added |
||
177 | which is selected with DEFAULT_LEDMATRIX_MODE 2 |
||
178 | - Lead and Bassline engine: 6x8 LEDs show VU meters for OSC frequency |
||
179 | - Multi and Drum engine: 6x8 LEDs show animated VU meters for OSC triggers |
||
180 | - ASID player mode: 6x8 LEDs show animated VU meters for OSC triggers |
||
181 | o animated VU meters are a bit faster now |
||
182 | o a special configuration file and prebuilt binary for sammichSID |
||
183 | is now part of the release package -> setup_sammich_sid.hex |
||
184 | |||
185 | |||
186 | MIDIboxSID V2 RC32 |
||
187 | ~~~~~~~~~~~~~~~~~~ |
||
188 | |||
189 | o fixed strange Oct display output in Bassline Sequence Editor |
||
190 | o added "DEFAULT_ENABLE_UPPER_WAVEFORMS" switch to setup_* files to enable the |
||
191 | selection of additional waveforms for SwinSID |
||
192 | o overworked Meter display mode in Bassline Mode (enjoy the effect! :) |
||
193 | o changed behaviour of Play button: now it plays all SIDs regardless if they |
||
194 | are selected or not. |
||
195 | Dedicated SIDs can be played by pressing & holding the appr. SID buttons |
||
196 | before pressing PLAY |
||
197 | |||
198 | |||
199 | MIDIboxSID V2 RC31 |
||
200 | ~~~~~~~~~~~~~~~~~~ |
||
201 | |||
202 | o fixed storing ensemble in internal EEPROM if no BankStick selected |
||
203 | o the ensemble stored in internal EEPROM (previously called E001) is now called EInt |
||
204 | o the patch stored in internal EEPROM (previously called [A-H]001) is now called PInt |
||
205 | o EInt now automatically selected after startup if no ensemble BankStick connected |
||
206 | o E002 now automatically selected after startup if EInt was selected before |
||
207 | o fix for communication with Rutger's SysEx editor: mod matrix direct assignments |
||
208 | are handled correctly now in stereo edit mode |
||
209 | |||
210 | |||
211 | MIDIboxSID V2 RC30 |
||
212 | ~~~~~~~~~~~~~~~~~~ |
||
213 | |||
214 | o fixed OSC button behaviour (OSC selection corrupted on page changes) |
||
215 | |||
216 | |||
217 | MIDIboxSID V2 RC29 |
||
218 | ~~~~~~~~~~~~~~~~~~ |
||
219 | |||
220 | o fixed CC#07 (now controls volume as intended) |
||
221 | o for 4x20 LCD: MIDI channels and Engines of selected ensemble are displayed at upper line |
||
222 | o OSC button now cycles between 1--, -2-, --3 and 123 |
||
223 | o added optional CS_MENU_BUTTON_Arp function, which can be assigned to a button in setup_*.asm |
||
224 | |||
225 | |||
226 | MIDIboxSID V2 RC28 |
||
227 | ~~~~~~~~~~~~~~~~~~ |
||
228 | |||
229 | o fixed arpeggiator note handling bug |
||
230 | o arpeggiator: the previously hardcoded "experimental arp behaviour" switch is now |
||
231 | available as software controlable switch called "Easy Chord". |
||
232 | It has to be enabled in the ARP menu ("Esy" flag) |
||
233 | Difference compared to normal chord entry: depressed keys will still |
||
234 | be cylced by the arpeggiator until a new key is pressed. |
||
235 | This feature is especially useful when slow arpeggios are played, since |
||
236 | it avoids unintended "long notes" on chord changes. |
||
237 | It is not useful if you intend to play a voice like a common lead instrument, |
||
238 | which should turn into a fast arpeggio when more than one key is played |
||
239 | (in this case, ensure that the "Esy" switch is disabled) |
||
240 | o fixed drum model handling (listen to the drum patches again - they sound much better now :) |
||
241 | o preliminary support for parameter access via 7bit CC |
||
242 | (only available for Lead Engine yet) |
||
243 | |||
244 | |||
245 | MIDIboxSID V2 RC27 |
||
246 | ~~~~~~~~~~~~~~~~~~ |
||
247 | |||
248 | o Super Poly voice queue now handled centrally from master. |
||
249 | Slaves notes are triggered via MBNet |
||
250 | o SPV value now changed simultaneously for all slaves |
||
251 | It can only be changed if master SID selected |
||
252 | o PLAY button now plays a chord in superpoly mode |
||
253 | o Mod matrix changes forwarded to all selected SIDs |
||
254 | |||
255 | |||
256 | MIDIboxSID V2 RC26 |
||
257 | ~~~~~~~~~~~~~~~~~~ |
||
258 | |||
259 | o various improvements for Super Poly Mode and SysEx distribution via CAN |
||
260 | |||
261 | |||
262 | MIDIboxSID V2 RC25 |
||
263 | ~~~~~~~~~~~~~~~~~~ |
||
264 | |||
265 | o improved "SusKey" (fingered portamento) handling |
||
266 | |||
267 | |||
268 | MIDIboxSID V2 RC24 |
||
269 | ~~~~~~~~~~~~~~~~~~ |
||
270 | |||
271 | o voice allocation of multi engine working again |
||
272 | o Lead engine: MdW (ModWheel) and Key modulation source now provide a value in |
||
273 | positive range only |
||
274 | o overworked oscillator pitch handling: now completely linear frequency |
||
275 | calculations. |
||
276 | Advantages: |
||
277 | - modulation frequency (e.g. LFO vibrato) independent from oscillator frequency |
||
278 | - accurate filter key tracking |
||
279 | - the O2A option (forward pitch to AOUT) doesn't result into out-of-scale |
||
280 | SID frequencies anymore |
||
281 | o the presets under presets/v2_vintage_bank.syx have been overworked according to |
||
282 | the new osc frequency handling |
||
283 | |||
284 | |||
285 | MIDIboxSID V2 RC23 |
||
286 | ~~~~~~~~~~~~~~~~~~ |
||
287 | |||
288 | o finetune is working properly again |
||
289 | |||
290 | |||
291 | MIDIboxSID V2 RC22 |
||
292 | ~~~~~~~~~~~~~~~~~~ |
||
293 | |||
294 | o "menu labels" (activated if DEFAULT_LCD_LINES >= 3) now completely implemented |
||
295 | o added keyboard transpose function for bassline sequencer. MIDI channels and |
||
296 | keyboard zones have to be configured for L/R bassline separately with |
||
297 | ensemble instrument 3 and 4. The transposer uses C-3 as base note. |
||
298 | Example configuration: |
||
299 | Ins1 Chn 1 SpL C-3 SpU B-3 Trn 0 L Bassline sequence selected with key C-3..B-3 |
||
300 | Ins2 Chn 1 SpL C-4 SpU G-8 Trn 0 R Bassline sequence selected with key C-4.. |
||
301 | Ins3 Chn 1 SpL c-2 SpU B-2 Trn +12 L Bassline sequence transposed with lower keys until B-2 |
||
302 | Ins4 Chn 1 SpL c-2 SpU B-2 Trn +12 R same as for L |
||
303 | "Trn +12" is required in this setup to compensate the octave range of the transposer |
||
304 | (base note C-3 is outside the selected keyboard zone c-2..B-2) |
||
305 | o bassline and drum sequences not stopped anymore on patch changes |
||
306 | o random generator for bassline O23 settings |
||
307 | |||
308 | |||
309 | MIDIboxSID V2 RC21 |
||
310 | ~~~~~~~~~~~~~~~~~~ |
||
311 | |||
312 | o added "Log" flag to ENS->FIL menu: cutoff frequency converted through log function |
||
313 | to achieve better linearisation of 8580 filter |
||
314 | o Filter Keytracking parameter now also available for Lead Engine, the scaling has been slightly |
||
315 | changed, so that the maximum value 255 leads to 1:1 tracking (e.g. if 8580 Log function activated, |
||
316 | or an external filter is connected) |
||
317 | o added "DOR" flag to the ENS->SID menu: Disable automatic Oscillator Reset during patch change |
||
318 | could also be called DAORDPC flag ;-) |
||
319 | o MB-6582 setup: swapped page up/down button, added Inc/Dec button function |
||
320 | o support for 4x20 LCD has used for MB-6582: DEFAULT_LCD_LINES and DEFAULT_LCD_LINE_Y* can |
||
321 | be configured in the setup_*.asm file |
||
322 | o MB-6582 screen now centered at 2nd and 3rd line |
||
323 | o if DEFAULT_LCD_LINES >= 3, the name of the menu will be print at the upper line |
||
324 | o if DEFAULT_LCD_LINES >= 4: the value of the currently edited parameter will be displayed |
||
325 | as horizontal bar graph at the lower LCD line |
||
326 | TODO: display bidirectional parameters like "depth" with a left/right splitted graph |
||
327 | TODO: update when a new OSC/Channel/SID is selected |
||
328 | o the "blinking LCD cursor" which was set to the selected parameter position is |
||
329 | disabled by default now (DEFAULT_LCD_PRINT_CURSOR set to 0), since it clashes with |
||
330 | the horizontal bar graph output routine |
||
331 | o added experimental features to bassline engine: |
||
332 | - new menu page O23 which allows to use OSC2 and OSC3 as slave oscillators |
||
333 | - waveforms of slave oscillators can be selected separately |
||
334 | - individual sync and ringmod flags |
||
335 | - individual octavewise transpose |
||
336 | - individual pulsewidth |
||
337 | - optional static note (decoupled from master osc) for nice sync/ringmod effects or chords |
||
338 | - phase offset |
||
339 | - detune |
||
340 | - TODO: Knob assignments and maybe more functions |
||
341 | |||
342 | |||
343 | MIDIboxSID V2 RC20 |
||
344 | ~~~~~~~~~~~~~~~~~~ |
||
345 | |||
346 | o Multi Engine: arp handler working properly again |
||
347 | o Lead Engine: ENV encoder section working properly again |
||
348 | o increased startup delay, so that slave cores will be found even if no BankStick connected |
||
349 | |||
350 | |||
351 | MIDIboxSID V2 RC19 |
||
352 | ~~~~~~~~~~~~~~~~~~ |
||
353 | |||
354 | o Enhancements for SysEx Editor |
||
355 | (see also doc/mbsidv2_sysex_implementation.txt) |
||
356 | - introduced <WOPT> function which allows to change parameters of |
||
357 | multiple voices with a single SysEx command |
||
358 | - introduced <sids> selection which allows to access slave SIDs |
||
359 | via master SID (command 0C 00 <sids>) |
||
360 | - added SysEx command for all notes/sequences off (command 0C 08) |
||
361 | - added SysEx command to play the current patch (command 0C 09 [<ins>]) |
||
362 | Note: for proper handling of <ins>, separate keyboard zones or MIDI channels |
||
363 | for multi instruments are currently required - this is no bug, |
||
364 | but just an imperfection (I was too lazy to overwork SID_PATCH_NotesOn yet) |
||
365 | o parameter assignment/patch/bank selection: "big message" now displayed |
||
366 | immediately when menu item has been selected |
||
367 | o The "note off" function of the SHIFT menu now works as "Note On/Off" (called "Ply") |
||
368 | This function is intended as replacement for the optional Play button |
||
369 | Patch will be played/stopped on all selected SIDs |
||
370 | o Removed button combination "SIDx+MENU" (which was previously used for Play function) |
||
371 | This combination could get a different purpose on future |
||
372 | o LFOs and ENVs of right channel bassline working properly again |
||
373 | o AOUT_LC driver now supports 12/12/8 resolution (requires 4 combined 74HC595) |
||
374 | |||
375 | |||
376 | MIDIboxSID V2 RC18 |
||
377 | ~~~~~~~~~~~~~~~~~~ |
||
378 | |||
379 | o modulation matrix: comparison operators >, < and = now return 0 instead |
||
380 | of full negative value if comparison is false |
||
381 | o changed SusKey handling, so that it also works in Mono mode (previously |
||
382 | it was only working in Legato mode) |
||
383 | o SusKey and Legato flags now accessible in Bassline CFG menu |
||
384 | o Individual Attack/Decay/Release Curve assignments now accessible in |
||
385 | Multi/Bassline ENV menu |
||
386 | o Trigger Matrix: since the BPM clock generator concept has been changed in |
||
387 | one of the previous releases, we now have a Clk/6 and Clk/24 trigger instead |
||
388 | of Clk/4 and Clk/16 |
||
389 | o LFO and ENV MIDI sync working properly again |
||
390 | o portamento omitted after patch change when first key is played |
||
391 | |||
392 | |||
393 | MIDIboxSID V2 RC17 |
||
394 | ~~~~~~~~~~~~~~~~~~ |
||
395 | |||
396 | o switched from MPASM to gpasm |
||
397 | code now under version control (SVN) |
||
398 | |||
399 | |||
400 | MIDIboxSID V2 RC16 |
||
401 | ~~~~~~~~~~~~~~~~~~ |
||
402 | |||
403 | o "ENV Misc" layer added for MB6582 Control Surface |
||
404 | o SIDPlayer: lower line now always cleared when new LCD message |
||
405 | is sent by host |
||
406 | o changed encoder speed behaviour: values incremented fast by |
||
407 | default now. Incrementer is slowed down by pressing the SHIFT button |
||
408 | (previously it was the opposite behaviour) |
||
409 | |||
410 | |||
411 | MIDIboxSID V2 RC15 |
||
412 | ~~~~~~~~~~~~~~~~~~ |
||
413 | |||
414 | o improved FIP function (linear interpolation of filter cutoff) - it |
||
415 | is working now the same way as implemented in MIDIbox CV |
||
416 | o F2A and V2A flags moved to new storage position in ensemble - old |
||
417 | ensemble setups (where F2A and/or V2A was set) have to be adapted! |
||
418 | o added new AOUT forwarding functions: |
||
419 | - P2A (Pulsewidth-to-AOUT) |
||
420 | - K2A (Key-to-AOUT) |
||
421 | - O2A (Oscillator Frequency-to-AOUT) |
||
422 | Channel assignments have to be adapted in setup_*.asm - all channels |
||
423 | are disabled by default |
||
424 | o added functions to forward the 6 gates/slide/accent signals to the |
||
425 | digital outputs at J5. Assignments have to be configured in the |
||
426 | setup_*.asm file. |
||
427 | Note that DEFAULT_J5_FUNCTION has to be set to 3 in order to |
||
428 | enable the digital output function of CORE:J5 |
||
429 | |||
430 | |||
431 | MIDIboxSID V2 RC14 |
||
432 | ~~~~~~~~~~~~~~~~~~ |
||
433 | |||
434 | o BankStick write via SysEx now gracefully aborted if only 32k BankStick |
||
435 | is addressed and patch number >= 065 |
||
436 | SysEx error number 0x11 ("BankStick too small") will be returned in this case |
||
437 | o the "send dump" function of the "shift menu" now sends the edit buffer |
||
438 | of the selected SID, which also includes the corresponding device ID. |
||
439 | BankStick content won't be overwritten if such a dump is sent back. |
||
440 | o menu page automatically changed to the previous selection if SID master |
||
441 | or slave selected which is running with a different engine |
||
442 | |||
443 | |||
444 | MIDIboxSID V2 RC13 |
||
445 | ~~~~~~~~~~~~~~~~~~ |
||
446 | |||
447 | o multi engine: improved approach for routing LFOs to filters (only |
||
448 | LFO of last assigned voice will be used for more predictable results) |
||
449 | o reduced intensity of LFO pitch modulation for multi and bassline engine |
||
450 | (Lead engine: intensity can be reduced by decreasing the depth |
||
451 | of the modulation path) |
||
452 | o 8 external switches can now be connected to |
||
453 | - DOUT shift register (-> DEFAULT_EXT_SWITCH_DOUT != 0) |
||
454 | - port J5 of the core mode (-> DEFAULT_J5_FUNCTION == 3) |
||
455 | The switch states are stored in the patch structure, and |
||
456 | can be accessed via Control Surface (EXT menu) or via Parameter Change |
||
457 | (NRPNs/Knobs/Wavetables) |
||
458 | o support for dumping ensembles via SysEx |
||
459 | o the SysEx structures are now completely documented under |
||
460 | doc/mbsidv2_sysex_implementation.txt |
||
461 | |||
462 | |||
463 | MIDIboxSID V2.0 Initial Beta History (RC13) |
||
464 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
||
465 | |||
44 | tk | 466 | o created patch structure for Lead engine |
467 | o removed old sound engine, the new one will be built up from scratch |
||
468 | o overworked control surface handler - now we can control left and |
||
379 | tk | 469 | right SID channel separately (or together) |
44 | tk | 470 | o press and hold LINK button to select the SID channel (left/right) with GP button #1 |
471 | o this menu also allows to send a patch via SysEx |
||
472 | o new patches can now also be received - this is important during |
||
473 | development phase to store/restore sound patches via MIDI-Ox |
||
474 | o Portamento effect implemented - "normal" and "constant time glide" CTG |
||
475 | CTG can be selected in the OSC menu (PMd item) |
||
476 | o A third portamento effect implemented: Glissando (PMd item: "Gls") |
||
477 | o SusKey and Legato implemented (-> CFG menu) |
||
478 | o LFO implemented - in addition to Sine/Triangle/Saw/Pulse/Random |
||
479 | now also "Positive" Sine/Triangle/Saw/Pulse is available - they |
||
480 | can be inverted with negative depth |
||
481 | o menu items with toggle function now never go into "entry" mode |
||
482 | where parameter has to be modified with datawheel - this is for |
||
483 | faster usage |
||
484 | o implemented modulation matrix: |
||
485 | - there are 8 modulation paths |
||
486 | - each path has two sources: ENV1..2, LFO1..LFO6, Constant 0-127 - much more will be added later |
||
487 | - an operation parameter is available for each path: |
||
488 | SRC1 only, SRC2 only, SRC1+SRC2, SRC1-SRC2, SRC1*SRC2, XOR, OR, AND, MIN, MAX, 1<2, 1>2, 1=2) |
||
489 | - a depth parameter is available for each path |
||
490 | - paths can be routed to Pitch Voice 1/2/3, Pulsewidth Voice 1/2/3, |
||
379 | tk | 491 | Filter and Volume of left/right SID separately |
44 | tk | 492 | - in addition they can be routed to 2 individual targets |
493 | LFO1-6 Rate, LFO1-6 Depth |
||
494 | More (e.g. ENV parameters) will be added later |
||
495 | - Target 1/Left Channel and Target 2/Right Channel subpath can |
||
496 | be inverted for simple stereo effects |
||
497 | o added pulsewidth as modulation target |
||
498 | o ENV implemented - it provides the parameters |
||
499 | Attack1/ALevel/Attack2/Decay1/DecayLevel/Decay2/Sustain/Release1/ |
||
500 | ReleaseLevel/Release2 + Curve for Attack/Decay/Release phase |
||
501 | o added filter as modulation target |
||
502 | o filter of both SIDs now calibratable, settings stored in internal EEPROM |
||
503 | o mod matrix + meter display working |
||
504 | o init patch function implemented (press & hold LINK button) |
||
505 | o random function implemented (press & hold LINK button) |
||
506 | o added LFO Rate and Depth as modulation target |
||
507 | o the sound won't stop anymore if a note is played during the |
||
508 | patch is changed/initialized/randomized - instead, the new sound |
||
509 | will be played |
||
510 | o support for slave SIDs (access via MBNet) |
||
511 | o new operations: 1<2, 1>2, 1=2 |
||
512 | o added Volume 1/2 as modulation target |
||
513 | o Note, LFO and ENV delay implemented |
||
514 | LFO delay and phase only takes effect when sync flag set (not freerunning) |
||
515 | o LFO oneshot mode implemented |
||
516 | o implemented global clock generator |
||
517 | Since there is no free timer resource, it's realized as a clock |
||
518 | divider, which is incremented on each update cycle (819.2 uS) |
||
519 | A clock event will be trigger each time the clock divider value |
||
520 | has been reached. |
||
521 | Div=1 -> event all 1*819.2 uS |
||
522 | Div=2 -> event all 2*819.2 uS = 1.6 mS |
||
523 | Div=3 -> event all 3*819.2 uS = 2.5 mS |
||
524 | etc... |
||
525 | o optionally the clock generator can be used as MIDI clock receiver |
||
526 | (Mod: Slv) - the MIDI clock can be divided as well |
||
527 | Div=3 -> event all 32th notes |
||
528 | Div=6 -> event all 16th notes |
||
529 | Div=12 -> event all 8th notes |
||
530 | Div=24 -> event all 4th notes |
||
531 | etc... |
||
532 | o "Mod: Auto" not implemented yet - should switch automatically to |
||
533 | slave mode when a MIDI clock is received |
||
534 | o implementation of Arpeggiator has started |
||
379 | tk | 535 | it is located in a separate menu now |
44 | tk | 536 | each voice has its own arpeggiator with own parameter sets (!) |
537 | it's clocked by the global clock generator |
||
538 | Spd divides the global clock again |
||
539 | GLn (Gatelength) defines, at which clock between 1 and Spd the |
||
540 | gate will be released |
||
541 | Rng defines the octave range |
||
542 | o Arp: added Up/Down/U&D/D&U/UD2/DU2/Random direction |
||
543 | o Arp: added Sorted mode |
||
544 | o Arp: added Hold mode |
||
545 | o Arp: added "sync divider" mode |
||
546 | - if disabled, the clock divider will be reset with a new chord, so |
||
547 | that the arp starts immediately - perfect for live playing |
||
548 | - if enabled, the clock divider won't be reset, so that it is always |
||
549 | in synch with the global clock generator - perfect for MIDI slave mode |
||
550 | o "Constant Arp Cycle" implemented |
||
551 | o Velocity, Aftertouch, PitchBend, Keynumber, Knob #1-5 now |
||
552 | available as modulation source |
||
553 | o Knobs controllable via CC |
||
554 | - Knob #1 assigned to CC#1 (ModWheel) |
||
555 | - Knob #2-5 assigned to CC#16-19 |
||
556 | o Modulation parameters for Knobs (and Velocity=K#V, |
||
557 | Aftertouch=K#A, PitchBender=K#P) are set within the Min/Max |
||
558 | boundaries, which can now be edited in the new KNB menu page |
||
559 | Note that sweeps from -128..127 and 127..-128 (swapped) are |
||
560 | provided |
||
561 | o Knob#1-Knob#5 now controllable directly from the CS Step C |
||
562 | with the 5 rotary encoders of the oscillator section (select |
||
563 | "Assign" layer) |
||
564 | o removed "Balance" parameter, as it is redundant |
||
565 | Can be realized with: |
||
566 | MOD SRC1:K#1 In1:*, In2:o, Dep:127, Vol: L/R |
||
567 | o support for AOUT/AOUT_LC |
||
568 | - offset values (12 bit, 000-FFF) can be configured in new EXT menu |
||
569 | o note: EXT (external) could also be read as "extension", because it |
||
570 | the 12bit values could also be used for different purposes ("custom |
||
571 | values") |
||
572 | o implementation of trigger matrix |
||
573 | It consist of 16 sources and 24 targets |
||
574 | Sources are: |
||
575 | Note On, Note Off, ENV1/2 Decay Phase, ENV1/2 Sustain Phase, |
||
576 | LFO1-6 Period, Clock, Clock/4, Clock/16, MIDI Start |
||
577 | Targets are: |
||
578 | OSC1-3 L/R Gate (6 targets), ENV1/2 Attack, ENV1/2 Release, |
||
579 | LFO1-6 Restart, Wavetable 1-4 Reset, Wavetable 1-4 Step |
||
580 | o Trigger matrix connections can be configured in new TRG menu |
||
581 | o Note that old patches have to be adapted the following way: |
||
582 | - Note On: all 6 gates and ENV1/2 attack phase have to be assigned |
||
583 | - Note Off: all 6 gates and ENV1/2 release phase have to be assigned |
||
584 | - MIDI Start: ENV1/2 Attack and LFO 1-6 have to be assigned |
||
585 | - the formerly LFO sync flag has now a new location in the trigger |
||
586 | matrix. It has to be assigned in the Note On source. This can |
||
587 | also be done from the LFO menu (shortcut for this TRG matrix connection) |
||
588 | o Example 1 - LFO Chain: |
||
589 | Assign all LFOs to OSC Pitch |
||
590 | All LFOs in Oneshot Mode |
||
591 | Use different LFO rates and depths |
||
592 | Enable following Trigger connections: |
||
593 | Note On->L1 |
||
594 | L1P -> L2 |
||
595 | L2P -> L3 |
||
596 | L3P -> L4 |
||
597 | L4P -> L5 |
||
598 | L5P -> L6 |
||
599 | L6P -> L1 |
||
600 | o Example 2 - ENV Retrigger via LFO1: |
||
601 | Assign ENV1 to OSC Pitch |
||
602 | Disable the Note On -> E1A connection |
||
603 | Enable the LFO1 -> E1A connection |
||
604 | Try different LFO1 rates and ENV A/D/S rates |
||
605 | o Example 3 - Note Retrigger via LFO1: |
||
606 | Enable the LFO1 -> O1L and O1R connection |
||
607 | Try different LFO1 rates |
||
608 | Try different OSC ADSR values (e.g. A=8, D=5, S=0, R=0) - remind the ADSR bug! :-/ |
||
609 | Try also different Delays between Left and Right SID |
||
610 | o Example 4 - Simple ENV loop: |
||
611 | Enable the E1S -> E1A connection |
||
612 | Now ENV1 will loop between the attack and sustain phase |
||
613 | o new button functions: |
||
614 | - Link button now controls SHIFT function (and displays CFG page) |
||
615 | - CC button now used as Page Up function (increments OSC/LFO/ENV/MOD/TRG/KNB depending on menu) |
||
616 | - Edit button now used as Page Down function (increments OSC/LFO/ENV/MOD/TRG/KNB depending on menu) |
||
617 | - Page Up/Down + datawheel (main encoder) allows to change the page via encoder |
||
618 | - CC can be activated by pressing SHIFT+CC |
||
619 | - Edit can be activated by pressing SHIFT+EDIT |
||
620 | - SHIFT+E1/E2/L1..L6 button branches to the Envelope/LFO menu |
||
621 | o SHIFT button now increases the speed of rotary encoders |
||
622 | o added phase offset synchronisation feature |
||
623 | Phases of the oscillators can be shifted in 0.4% steps! |
||
624 | There is only one global phase available, which can be configured |
||
625 | in the OSC menu. If != 0, the value specifies the phase offset |
||
626 | between OSC1->OSC2 and OSC2->OSC3 |
||
627 | o added F2A (Filter to AOUT) function which allows to forward |
||
628 | CutOff/Resonance to 4 AOUT channels (assignments are defined in setup_*.asm) |
||
629 | o implemented knob parameters: |
||
630 | - list of parameters can be found in mbsidv2_parameter_chart.txt |
||
631 | - note that some parameters are not really suitable for live |
||
632 | control - the table has been prepared for the WT handler, which |
||
633 | will use the same parameter set |
||
634 | - two different parameters can be assigned to a knob |
||
635 | - the LCD shows the parameter in long format when the assignment is changed |
||
636 | (selecting the item with a button does not already show the long format. |
||
637 | I tried this, but the behaviour was too confusing... - you need to move |
||
638 | the encoder to see the purpose of the value) |
||
639 | - the handler automatically scales the knob value to the range of the |
||
640 | target parameter. Regardless if a 4bit or a 12bit value should be controlled, |
||
641 | the whole knob range from 0..255 will always be used |
||
642 | - in addition, the knob range can be scaled a second time from a |
||
643 | min to a max value |
||
644 | - The formula: |
||
645 | resulting parameter value = scale1(scale2(knob value)) |
||
646 | where scale2() scales over the specified min/max range |
||
647 | and scale1() scales over the parameter range |
||
648 | - Sounds confusing? Try this: Min=104, Max=152, Pa1=36 (Transpose OSC123) |
||
649 | This will modify the 7bit value transpose from -12 to +12 notes |
||
650 | (*2 because it's transposed from a 8bit value) |
||
651 | Resp.: 128 +/- (2*12) |
||
652 | - note that knob changes are non-destructive! |
||
653 | This means: changing a parameter will not change the original value. |
||
654 | Accordingly the value visible in the CS menu will stay the same. |
||
655 | This is especially required to ensure, that changes made with knobs |
||
656 | are really temporary and won't be stored with the "patch save" function. |
||
657 | - OSC/Filter parameter changes are always applied on both SID channels. |
||
379 | tk | 658 | Offset calculations are done separately |
44 | tk | 659 | - TODO: "reset original value" function, accessible from the CFG menu, |
660 | to remove the offsets from the original parameter values |
||
661 | o implemented wavetable handler: |
||
379 | tk | 662 | - there is a WTC (Wavetable Configuration) and a separate WTE |
44 | tk | 663 | (Wavetable Edit) menu for easier navigation |
664 | - it is possible to jump from WTC to WTE and back (last menu item) |
||
665 | - WTC provides four different wavesets. |
||
666 | You can specify a parameter, SID L/R, Speed (Clock Divider for |
||
667 | clock events coming from the trigger matrix), |
||
668 | begin, end and loop position (with optional oneshot mode) within wavetable |
||
669 | - WTE allows to edit the wavetable like known from MBSID V1 |
||
670 | Even Notes and ARPs can be played :) |
||
671 | - WTE value display can be changed between Hex/Dec view |
||
672 | - wavetable values are forwarded to MOD matrix as additional sources |
||
673 | - the wavetable pointer can be optionally controlled from the |
||
674 | modulation matrix. For this, the "MOD" flag has to be set in |
||
675 | the WTC menu. In this mode, the clock divider and loop pointer |
||
676 | don't play a role anymore. WT1-WT4 are available as modulation |
||
677 | target, the pointer is swept between the begin and end range. |
||
678 | Try to control the position with a LFO or an Envelope or the |
||
679 | velocity, and have fun! :) |
||
680 | o there is now a new random generator menu which allows to randomize |
||
379 | tk | 681 | different sections of a patch separately |
44 | tk | 682 | o LFOs and ENVs can now be synchronized to the global clock (CSn flag) |
683 | This clock is quadrubled to achieve better resolutions when it is |
||
684 | synchronized to MIDI |
||
685 | With Div=3, the LFO/ENV will be clocked 4 times for each 32th note, |
||
686 | 8 times for each 16th, 128 times for each measure... |
||
687 | |||
688 | There are predefined rates for MIDI clock synchronisation, which |
||
689 | can be selected in the LFO page when CSn is enabled |
||
690 | They are starting at rate=245: |
||
691 | 64/1, 32/1, 16/1, 8/1, 4/1, 2/1, 1/1, 3/4, 1/2, 1/4, 1/16 |
||
692 | |||
693 | o BankStick support |
||
694 | a 64k BS can store 127 patches, a 32k BS only 63 patches |
||
695 | The BS size will be detected automatically during formatting |
||
696 | o a "detune" parameter has been added to the CFG menu. It |
||
697 | modifies the finetune of all oscillators |
||
698 | o added GAE (gate always active) function - once set, the gate |
||
699 | will never be released anymore. Instead, the voice volume has |
||
700 | to be lowered externally or with a filter |
||
701 | o added ABW (ADSR bug workaround) flag |
||
702 | It adds an additional delay before the gate is activated. |
||
703 | During this time, the ADSR registers are zeroed to ensure that |
||
704 | the envelope has reached its final level before it will be |
||
705 | triggered again. |
||
706 | If you still notice ADSR hickups with a special configuration, |
||
707 | just increase the ADSR delay in the OSC menu |
||
708 | Note that the delay needs to be compensated from your sequencer. |
||
709 | This feature is experimental and not suitable for live playing |
||
710 | o the Env Ctrl button doesn't change the menu anymore |
||
711 | so that the 5 rotary encoders of the ENV section can be used to |
||
712 | change the currently visible menu items on a more confortable way |
||
713 | o added V2A (Volume to AOUT) function which allows to forward |
||
714 | the modulated volumes to 2 AOUT channels (assignments are defined in setup_*.asm) |
||
715 | The internal volume is set to maximum if the V2A switch is enabled |
||
716 | o added ARP oneshot mode |
||
717 | o pitch (controlled by pitchbender) got a special parameter number: 80 dec, 0x50 hex |
||
718 | o slave cloning function implemented |
||
719 | press and hold the MENU button during boot to transfer the firmware |
||
720 | of the master to all slaves via the CAN interface |
||
721 | This procedure takes ca. 30 seconds, some messages will be print |
||
722 | on screen (if not, something is wrong with the MENU button detection - |
||
723 | please inform me in this case) |
||
379 | tk | 724 | o preparation for multiple engines: separated SID_SE and CS_MENU_TABLE parts |
44 | tk | 725 | o started with multi engine |
726 | o implemented ensemble functions, so that different channels and |
||
727 | keyboard splitzones can be assigned to multi channel instruments |
||
728 | an ensemble contains for each master/slave MBSID: |
||
729 | - Bank/Pattern/Flags (like V2A, F2A) |
||
730 | - Global Clock Generator settings |
||
731 | - Filter calibration values (Min/Max) for left/right channel |
||
732 | - the setup for 6 instruments (channel, splitzone, transpose) |
||
733 | o the new ensemble menu page can be entered from the main menu: |
||
734 | - press the leftmost select button below the LCD to enter ensemble menu |
||
735 | - press any other select button below the LCD to enter the patch menu |
||
736 | o up to 128 ensembles can be stored in a BankStick (only 32k allocated, |
||
737 | so it doesn't matter if a 32k or 64k BankStick is used) |
||
738 | o first beta release :) |
||
739 | o there is now a S&H (Sample & Hold) operator available in the |
||
740 | modmatrix which samples SRC1 whenever SRC2 changes from a negative |
||
741 | to a positive value |
||
742 | o an incoming patch or bank change request doesn't update the |
||
743 | the patch anymore if it was already selected before. This is to avoid |
||
744 | "glitches" when a sequencer sends a program change shortly before |
||
745 | a note is played. |
||
746 | o the "Knobs" are sending CC values now when the CC function is |
||
747 | activated (press SHIFT + Page Up/CC Button to toggle this mode) |
||
748 | Other parameters are still not sending CCs over MIDI, as NRPNs |
||
749 | are not implemented yet (low priority) |
||
750 | The CC numbers are 1 for Knob #1 (Modulation wheel), and 16/17/18/19 |
||
751 | for Knob #2-#5 (GP values) |
||
752 | In addition, Knob #P sends Pitchwheel Events in CC mode |
||
753 | o support for analog inputs (J5:A0..A4) |
||
754 | This feature has to be enabled in the setup_*.asm file by setting DEFAULT_J5_FUNCTION to 1 |
||
755 | Conversion results of the analog inputs are directly passed to the knob handler. |
||
756 | This generic approach has the advantage, that it is possible to control 5*2 parameters |
||
757 | within a specified Min/Max range, and that in addition the analog values are available |
||
758 | as modulation source within the modulation matrix (K#1..K#5) |
||
759 | |||
760 | The feature behaves differently on master and slaves: |
||
761 | Master: analog inputs are forwarded to the selected SIDs - use this |
||
762 | option as replacement for rotary encoders, or for adding |
||
763 | analog control elements like pots/faders/joysticks to your CS |
||
764 | Slave: analog inputs are only handled internally - use this option |
||
765 | for modulation with analog signal generators |
||
766 | o added "Notes Off" function to the SHIFT page (replaces Random |
||
379 | tk | 767 | function which has a separate menu page anyhow) |
44 | tk | 768 | o implemented bassline engine |
769 | o support for AOUT_NG module |
||
770 | o integrated support for ASID protocol, which has been originally |
||
771 | developed for the SIDstation to replay .sid files. |
||
772 | (see also http://www.midibox.org/forum/index.php?topic=2038.0) |
||
773 | Only the master core (Device ID 00) will play SID tunes! |
||
774 | Nice visual effect: the LED matrix of the CS shows three animated |
||
775 | meters whenever a gate flag of an oscillator is set. |
||
776 | SID player mode is automatically enabled once an ASID stream is |
||
777 | received. It can be exit by stopping the player on the PC, and |
||
778 | pressing the MENU button |
||
779 | |||
780 | Unfortunately it turned out, that there is currently no SID player |
||
781 | available which can replay .sid files properly via MIDI. |
||
782 | |||
783 | - SIDplay (http://www.d.kth.se/~d93-alo/c64/spw/sidplayw.html) |
||
784 | Perfect integration, but plays tunes too fast under WinXP. |
||
785 | Works fine under Win95/Win98/WinME. Not tested under Vista |
||
786 | - ASID (http://www.sidstation.com/sidsupport.php) |
||
787 | Crashes under WinXP once the tune should be played |
||
788 | - ASID XP (http://www.sidstation.com/files/asid_xp_1.0.zip) |
||
789 | Tunes played correctly, but the MIDI stream is corrupted at |
||
790 | the very beginning when the player is started. Accordingly the |
||
791 | sounds are not properly initialized. |
||
792 | |||
793 | Workaround: start a tune with SIDplay (for proper sound |
||
794 | initialisation), thereafter play it with ASID XP |
||
795 | o resonance now editable with 8bit resolution (only applicable for F2A option) |
||
796 | o implemented global BPM generator, which replaces the global clock divider |
||
797 | for more consistent clock handling |
||
798 | Now it doesn't make a difference anymore, if MBSID receives a |
||
799 | clock at a certain BPM, or if it generates it internally |
||
800 | o support for sustain CC#64 (if CC value >= 0x40, notes will be |
||
801 | held, with CC value < 0x40, notes will be released) |
||
802 | Currently only supported for lead engine! |
||
803 | o drum engine implemented |
||
804 | o meter mode now also supported for multi/bassline/drum engine |
||
805 | o superpoly function implemented for lead engine (experimental!) |
||
806 | o various improvements for drum sequence editing: |
||
807 | - cursor now controlled with encoder |
||
808 | - the "<" function has been replaced by a rotate function, which |
||
809 | allows you to scroll the pattern left/right |
||
810 | - the ">" function has been replaced by a direct shortcut to |
||
811 | the DRM menu page - the instrument number will be set |
||
812 | automatically according to the selected track |
||
813 | - the mod target buttons (named with E1/E2/L1/...L6) now |
||
814 | change to the track editor, and select the appr. track (1-8) |
||
815 | o implemented MIDI Clock Master/Slave Auto Detection |
||
816 | o bassline/drum sequences now stopped when a MIDI Clock Stop |
||
817 | event has been received |
||
818 | o bassline/drum sequences now started when a MIDI Clock Start or |
||
819 | Continue event has been received |
||
820 | o improved "play button" function (e.g. only selected instruments |
||
821 | played, selected drum is triggered, etc...) |
||
822 | o support for "Sync" button (it just jumps into the ENS->CLK |
||
823 | menu for Master/Slave/Auto mode and BPM selection) |
||
824 | o support for full parameter access via NRPNs |
||
825 | see mbsidv2_parameter_chart.txt for details |
||
826 | o possibilities to select a patch: |
||
827 | - moving datawheel in main screen (as before) |
||
828 | - using Page Up/Down button in main screen and patch main menu |
||
829 | - selecting bank and patch in the ENS->SID menu |
||
830 | o possibilities to select an ensemble: |
||
831 | - pressing MENU + moving datawheel in main screen |
||
832 | - using MENU + Page Up/Down button in main screen |
||
833 | - using Page Up/Down button in ENS menu |
||
834 | o ensemble can now be initialised with preset (-> go into ENS |
||
835 | menu, press SHIFT button, select "Ini.Ens" option) |
||
836 | Note that Patch and Bank settings won't be touched by |
||
837 | this initialisation! |
||
838 | o there is now a new EXT page within the ensemble menu which |
||
839 | contains following options: |
||
840 | - F2A (Filter-to-Analog): was previously located in SID menu |
||
841 | - V2A (Volume-to-Analog): was previously located in SID menu |
||
842 | - Iv1..Iv8: inversion of output voltage at channel #1..#8 |
||
843 | o added optional FIP option (Filter Interpolation) which smoothes |
||
844 | CutOff changes. It is especially useful when CutOff is changed |
||
845 | via CC (-> low resolution) to reduce the steppyness. |
||
846 | The option is not useful when the CutOff parameter is modulated from |
||
847 | a fast LFO or envelope (on the other hand: it produces interesting |
||
848 | effects in such cases ;-) |
||
302 | tk | 849 | |
850 | |||
851 | |||
852 | |||
1044 | tk | 853 | -------------------------------------------------------------------------------- |
854 | -------------------------------------------------------------------------------- |
||
855 | -------------------------------------------------------------------------------- |
||
302 | tk | 856 | |
857 | |||
44 | tk | 858 | MEMO: |
859 | - in Bassline mode, CCs could control individual knob parameters for |
||
860 | left/right channel by using the "current" assignment, and selecting |
||
861 | the instrument (L-, -R or LR) via different sets of CC |
||
862 | |||
863 | - a solution has to be found for bassline mode, how values changed |
||
864 | via knobs should be properly forwarded to the edit patch storage |
||
865 | for consistent value sets |
||
866 | As this method has advantages and disadvantages (e.g. destructive |
||
867 | changes in the edit patch are mostly NOT wanted!), maybe a soft-option |
||
868 | could be provided (but I'm sure, that most people would disable it |
||
869 | quickly once they noticed the disadvantages) |
||
870 | |||
871 | - There is currently a "Notes Off" in the Shift menu which allows to |
||
872 | turn off all notes of the selected SID(s) |
||
873 | For more comfort, it could make sense to send this command too all |
||
874 | SIDs independent from the SID selection |
||
875 | In addition, a "Note On" (Play) command could also be placed into |
||
876 | the Shift menu - but where? (maybe as replacement for Init Patch, |
||
877 | as a patch can also be initialized by changing the engine) |
||
878 | |||
879 | - drum engine mode: additional parameter for WT table offset? |
||
880 | |||
881 | - individual copy/paste/clr function for drum instruments? |
||
882 | |||
883 | - individual save function for instruments (for all engines) |
||
884 | |||
885 | - selection of bank/patch within same screen in ENS->SID->Bnk/Pat page |
||
886 | |||
887 | - if multiple SIDs with different engines are connected, the |
||
888 | performed CS modifications (button/encoder turns) can result into |
||
889 | a big mess. A fix isn't so easy (easiest but inconsistent solution: the |
||
890 | master has to remember the engines of SID1..4 in order to decide, |
||
891 | if a parameter is allowed for beeing sent) |
||
892 | |||
893 | - theoretically it could be possible to modulate 8 of 256 sound |
||
894 | parameters (which are normaly only accessible via knobs, WT or NRPN) |
||
895 | from the modulation pathes (e.g. envelope or LFO source) by providing |
||
896 | a special EXT -> Par (AOUT Value -> Sound Parameter) routing. |
||
897 | Since 8 EXT values are available with 12bit resolution, this should |
||
898 | be sufficient for most cases. |
||
899 | The AOUT option wouldn't be available in such a mode... |
||
900 | |||
901 | - the external switches could be optionally triggered by notes, or |
||
902 | maybe better: reflect the gate of ENV1 and/or ENV2 which is used to switch |
||
903 | between attack/decay/sustain and release phase |
||
904 | This would be a quite useful function for external ADSR generators |
||
905 | Problem: which possibilities are really required, how should it |
||
906 | behave for the different engines, how should it be configured? Within ensemble? |
||
907 | |||
292 | tk | 908 | - a switch which disables the menu jumping when an encoder has been moved |
909 | has been requested from multiple users meanwhile |
||
910 | |||
911 | - a switch which swaps the encoder speed selection: slow by default, fast |
||
912 | if SHIFT button pressed |
||
913 | |||
745 | tk | 914 | - add Display the state of OSC1 arp on a custom LED |
915 | (pendant to CS_MENU_BUTTON_Arp button function) |
||
836 | tk | 916 | |
869 | tk | 917 | - The WT "key" control feature could alternatively start a (short) sequence |
918 | instead of only selecting a single WT position. |
||
919 | This would allow to embedd multiple WT sounds (e.g. drums) into a patch, |
||
920 | and to select them with the note number (especially nice for multi patches) |
||
921 | |||
933 | tk | 922 | ------------------------------------------------------------------------- |
923 | Wilba wrote: |
||
924 | Starting with a completely init ensemble, init patch... turn on arp for osc 1, sort on, |
||
925 | |||
926 | dir up, range 1, play C3 E3 G3 => loop { C3 E3 G3 } (good) |
||
927 | dir down, range 1, play C3 E3 G3 => loop { G3 E3 C3 } (good) |
||
928 | |||
929 | dir up, range 2, play C3 E3 G3 => loop { C3 E3 G3 C4 E4 G4 } (good) |
||
930 | dir down, range 2, play C3 E3 G3 => loop { C3 G3 E3 C4 G4 E4 } (wtf? i expected loop { G4 E4 C4 G3 E3 C3 } ) |
||
931 | |||
932 | This continues in a strange way if you add more notes: |
||
933 | dir down, range 2, play C3 E3 G3 A3 => loop { C3 A3 G3 E3 C4 A4 G4 E4 } (wtf?) |
||
934 | |||
935 | anyway... I was expecting that the range parameter is always positive octaves, i.e. you will get the notes repeated with a +12 semitone transpose, and if you happen to play notes more spaced than 12 semitones then I wouldn't expect it to do anything fancy to avoid a sequence which is not an ordered "note number" |
||
936 | i.e. dir up, range 2, play C3 C4 C5 => loop ( C3 C4 C5 C4 C5 C6 ) no problem for me ;-) |
||
937 | |||
938 | but when using down direction and range > 1, shouldn't it be the exact inverse of what you would get for up direction and range > 1? |
||
939 | ------------------------------------------------------------------------- |
||
966 | tk | 940 | |
941 | - additional LFO MIDI sync values: 1/4T 1/8T 1/16T... and 1/2P 1/4P, ... |
||
1027 | tk | 942 | |
943 | ------------------------------------------------------------------------- |
||
944 | Florian wrote: |
||
945 | when using bassline seq, if i sequence a c, it will run the first pattern ok. |
||
946 | So on a 16 step pattern on the md, i put a c on the first step, and a 4/4beat. |
||
947 | But if i say to the md roll on now on the 2 first step by changing the pattern lenght, the bassline seq continue is run even if the c is retrigerred which could be a cool thing, but can too do some desync if in fact i don't tell the md to re-go to 16 step perfectly in sync. So is there a way to force the sid seq to began at the beginnig of the pattern each time the c is trigerred??? |
||
948 | ------------------------------------------------------------------------- |
||
1073 | tk | 949 | |
950 | Send MIDI Clock |
||
951 | |||
952 | ------------------------------------------------------------------------- |