Today I added a little code in vmidibox64, that may be of interest for all you that like to build hardware midiboxes.
Using the file customdesk.ini in the application directory,
you can customize a the faderdesk.
To give you a preview, the current version
supports modification of all that was available in the previous vmidibox tools.
This means you can move, size, label buttons and pots, … most ini settings are easy to understand. I might consider to make a customdesk.ini description document one day ::).
The value of the Tag property for each control is important : this links a button to a property in the editor.
See the example to understand which value range this can have.
When I have more time I will extend this functionality.
I plan to add a lot of features to this INI format
including skinnable pots and buttons, background skin,
… I still need to decide which components (free, open source ?) I will finally use and include for these purposes.
Although all the values whithin the .ini file will put off most of the users, the customization feature opens a lot of new possibilities, which cannot be found on any other freeware or shareware tool!
Now I can start to create a special .ini file for the MIDIbox SID which allows everbody to control the sound parameters without a hardware controller - of course, this is not the perfect solution – we all want to get rid of those colourful PC mouseclicking tools – but it will be the most prefered solution for people who don’t want to spent too much money for the SID synth.
Btw.: to simplify the creation of the .ini file, I will just write a perl script which generates the setup based on my constraints
For MIDIbox SID control, one important function would be necessary, could you please add it? It’s a “pot element”, which isn’t a pot, but in fact a set of 7 toggle-buttons, which allows me to switch on/off flags within a CC parameter.
For example this parameter:
CC # | Hex | Description | Range | Reset
32 | 20h | Voice 1/2/3 Waveform | | 4
| | Bit 0: Triangle | |
| | Bit 1: Saw | |
| | Bit 2: Pulse | |
| | Bit 3: Noise (disables all other waveforms)| |
| | Bit 4: Disable Voice | |
| | Bit 5: Sync | |
| | Bit 6: Ringmodulator | |
| | Example: 02h = 2 = Saw | |
| | Example: 05h = 5 = Triangle & Pulse | |
| | Example: 21h = 33 = Triangle & Sync | |
can only be handled with such an “set of toggle-buttons”
I will publish my MIDIbox SID skin, as soon as this feature is available!
I’m glad you like the concept. I am curious to see the results of your perl script.
Of course there’s still a lot of work to do for me, so it may be that the file syntax still changes a little bit and for sure a lot of features will be added ! ;).
I will try to implement your toggle control soon.
By the way I changed vmidibox64 a little bit :
there now is is a button to load *.vmb files.
(this is just a different extension for the same ini files).
By default, customdesk.vmb is used when it is found in the application directory. The intention is to make it possible to have a collection of .vmb files in a ‘customfiles’ subdirectory of the application directory.
I want the control to look like a real dipswitch with labels for each switch. I could not find such component for C++ builder so I will program it from scratch …
it will be great to be used with bit-encoded midi codes,
but also for other purposes.
Luckily GenMarx wants to help me with the component’s graphics coding so I can make flickerfree double-buffered dipswitch.
I hope to finish it this weekend, anyone feel free to send your graphical dipswitch skin designs, I would like to incorporate several styles in the component.