* Make synth parameters configurable
* Add class CConfig, which holds the configuration
* Add template config file minidexed.ini
* Register panic handler in CKernel to allow to display assertions
* Fix: Performance timer did not show correct percent value with HDMI
* Add class CDexedAdapter
Some Dexed methods require to be guarded from being interrupted
by other Dexed calls. This is done in the class CDexedAdapter.
* Add class CUserInterface
The user interface should be implemented here. As a start it supports
showing the program number and name on the LCD display. The LCD output
is buffered, so that LCD writes from an IRQ handler are possible.
* Move MIDI handling from CMiniDexed to specific classes
* CMIDIDevice is the generic MIDI handler
* CMIDIKeyboard handles USB audio class MIDI devices
* CSerialMIDIDevice handles the serial MIDI device
* Now all MIDI inputs can work simultaneous
* Program change and bank select work with serial MIDI
* Add headers to all files
* Include voices.c in sysexfileloader.cpp
* Cleanup Makefile
* Support headless operation on Raspberry Pi 4
Some code cleanup for src/kernel.*
* Code cleanup for src/minidexed.*
Move implementation of constructors to minidexed.cpp
Reorder member variables
* Support multiple USB MIDI inputs at once
* Maximum 2 inputs on Raspberry Pi 1-3
* Maximum 4 inputs on Raspberry Pi 4
* Suppress frequent messages in MIDI dump
* Use minidexed.txt
* Document `SoundDevice` in `minidexed.ini`
Co-authored-by: probonopd <probonopd@users.noreply.github.com>
Indexes of voice banks are zero-based now in any case (for the user
and internally). In CSysExFileLoader::Load() do not decrement file
index any more to calculate internal voice bank index. Do not
increment internal index, when generating user messages.
Fixed build errors in initial attempt to port the Circle
miniorgan sample program to circle-stdlib:
Remove members that are provided by the convencience base
class CStdlibAppStdio.
Correct syntax for invoking base class and member constructors.
Added miniorgan.o module to Makefile.