I'm currently working on a software synthetiser, aimed at making 8bit sounds. Here is a small demo of what I have so far !
The final goal is to have a library that can play custom songs in realtime and that can be embeded in games. Sequenced music take way less space than recorded music, and makes it easy to add runtime effects, swap tracks and more.
I spend most of today writing a .midi file parser form scratch for this project, and it's seems to be working ! I have skipped some of the feature but I can pase a midi outputed from FL Studio without errors.
I don't think I'll use midi as the final format for my project, but it's nice to have it working for testing and as an import format in the future.
I used loopMidi to make a bridge between FL studio and my synth, so I can now play and edit songs live !
Made a proper ADSR envelope and a little interface to tweak it !
I also added basic disc recording to double check that I don't have weird errors in the generated sound.
Today I added some delay, and optimized the generators. I composed a tiny song to test that out !
Did some rudimentary octave/arp thing and some gameboy/nes style Power Width modulation.