1
0
mirror of https://github.com/sjlongland/atinysynth.git synced 2025-09-13 10:03:15 +10:00
Go to file
Stuart Longland fb59c52b71
ports/pc: Start playback when enable ≠ 0.
After configuring the voices, we start playback until all channels stop.
2017-04-09 10:13:29 +10:00
ports ports/pc: Start playback when enable ≠ 0. 2017-04-09 10:13:29 +10:00
.gitignore Add bin and obj directories. 2017-04-08 20:24:17 +10:00
adsr.c adsr: Add functions for configuring the ADSR. 2017-04-09 08:17:03 +10:00
adsr.h adsr: Add debugging 2017-04-09 10:06:38 +10:00
debug.h debug.h: Add debug helper 2017-04-08 20:26:45 +10:00
fifo.h fifo: Add FIFO buffer library 2017-04-09 08:23:52 +10:00
LICENSE ADSR-based synthesizer for microcontrollers 2017-04-08 18:57:37 +10:00
Makefile Makefile: Remove .dep output definitions. 2017-04-09 09:09:53 +10:00
README.md ADSR-based synthesizer for microcontrollers 2017-04-08 18:57:37 +10:00
synth.h synth: Turn off channels that are "done". 2017-04-09 10:07:27 +10:00
voice.h voice: Add test for voice channel done. 2017-04-09 10:07:10 +10:00
waveform.c waveform: Fix logic errors in triangle synthesis 2017-04-09 07:26:16 +10:00
waveform.h waveform: Increase step to 16-bits. 2017-04-09 07:19:04 +10:00

ADSR-based Polyphonic Synthesizer

This project is intended to be a polyphonic synthesizer for use in embedded microcontrollers. It features multi-voice synthesis for multiple channels.

The synthesis is inspired from the highly regarded MOS Technologies 6581 "SID" chip, which supported up to 3 voices each producing either a square wave, triangle wave or sawtooth wave output and hardware attack/decay/sustain/release envelope generation.

This tries to achieve the same thing in software.

Code is presently a work-in-progress.