You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Holger Wirtz a83e43dbef Some SYSEX fixes. 5 years ago
addon Added delay, reverb, filter - just with fixed values - only as a first test. 6 years ago
doc Better handling of some SYSEX function changes. 5 years ago
third-party Added third-party libraries and actual HEX files for T3.5/T3.6. 5 years ago
.gitignore Initial commit 7 years ago
Disp_Plus.h Fixed display error. 5 years ago
EngineMkI.cpp Code cleanup add license additions. 7 years ago
EngineMkI.h ... 7 years ago
EngineOpl.cpp Fixes. 7 years ago
EngineOpl.h Fixes. 7 years ago
LICENSE-APACHE2.txt Code cleanup add license additions. 7 years ago
LICENSE-GPL3.txt Code cleanup add license additions. 7 years ago
MicroDexed.ino Some SYSEX fixes. 5 years ago
PluginFx.cpp Exchanged double to float data types in PluginFX. 6 years ago
PluginFx.h Exchanged double to float data types in PluginFX. 6 years ago
README.md Adding possibility to use 2 Dexed engines (can be enabled with NUM_DEXED=2 but 5 years ago
UI.hpp Some SYSEX fixes. 5 years ago
aligned_buf.h Initial version 7 years ago
config.h Fixing bank and voice boundaries. 5 years ago
controllers.h Added Portamento function from https://github.com/asb2m10/dexed/pull/183 5 years ago
dexed.cpp Better handling of some SYSEX function changes. 5 years ago
dexed.h Added Portamento function from https://github.com/asb2m10/dexed/pull/183 5 years ago
dexed_sysex.cpp Fixing bank and voice boundaries. 5 years ago
dexed_sysex.h Fix non-ENABLE_LCD_UI builds 5 years ago
dx7note.cpp Fixing bank and voice boundaries. 5 years ago
dx7note.h Added Portamento function from https://github.com/asb2m10/dexed/pull/183 5 years ago
effect_modulated_delay.cpp Reorder config.h inclusion 5 years ago
effect_modulated_delay.h Added modulated_delay as chorus. 5 years ago
effect_stereo_mono.cpp Trying a faster way to mix stereo to mono. 5 years ago
effect_stereo_mono.h Removed AUDIO_BLOCK_SIZE in config.h 5 years ago
env.cc Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
env.cpp Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
env.h Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
exp2.cpp Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
exp2.h Initial version 7 years ago
fm_core.cpp Code cleanup add license additions. 7 years ago
fm_core.h ... 7 years ago
fm_op_kernel.cc Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
fm_op_kernel.cpp Reorder config.h inclusion 5 years ago
fm_op_kernel.h Initial version 7 years ago
freqlut.cpp Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
freqlut.h Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
lfo.cpp Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
lfo.h Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
midi_devices.hpp Fixed USB_MIDI port handling. 6 years ago
midinotes.h Fixed summing of signals as integers. 7 years ago
module.h Initial version 7 years ago
name.c Added name for USB device. 6 years ago
pitchenv.cpp Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
pitchenv.h Changed all "double" values to macro FRAC_NUM (defined in synth.h as float), for using the FPU in the Teensy. 7 years ago
porta.cpp Added Portamento function from https://github.com/asb2m10/dexed/pull/183 5 years ago
porta.h Added Portamento function from https://github.com/asb2m10/dexed/pull/183 5 years ago
sin.cpp Small FPU optimisations. 7 years ago
sin.h Initial version 7 years ago
source_microdexed.h Removing EEPROMAnything and using EEPROM.get()/EEPROM.put() from EEPROM.h instead. 5 years ago
synth.h Added PT8211 output driver option. 6 years ago

README.md

MicroDexed

Dexed port for Teensy (3.5/3.6/4.0 with audio shield and LCD or OLED display)

This is a port of the original Dexed/msfa engine (see https://github.com/asb2m10/dexed and https://github.com/google/music-synthesizer-for-android) to be used on a Teensy-3.5 or Teensy-3.6.

The current state is: work in progress...

License

MicroDexed is licensed on the GPL v3. The msfa component (acronym for music synthesizer for android, see https://github.com/google/music-synthesizer-for-android) stays on the Apache 2.0 license to able to collaborate between projects.

Credits & thanks

  • Dexed engine by Pascal Gauthier (asb2m10)
  • DX Synth engine (as part of Dexed): Raph Levien and the msfa team
  • PPPlay : Great OPL3 implementation, with documented code :D

Dexed comes with 3 engine types :

  • Modern : this is the original 24-bit music-synthesizer-for-android implementation.
  • Mark I : Based on the OPL Series but at a higher resolution (LUT are 10-bits). The target of this engine is to be closest to the real DX7.
  • OPL Series : this is an experimental implementation of the reversed engineered OPL family chips. 8-bit. Keep in mind that the envelopes stills needs tuning.