Jorhlok

Me, my opinion, and things I do.

Tracker 0.1: Working on my soft synth now on Github

Click here to go to the repo for “Tracker 0.1”

tracker0_1onenotetest

This is a culmination of the last soft synth I made and some more ideas I had to make this imaginary “sound chip” more cohesive in implementation.

For instance, each regular channel (ChannelType1 in the code) has a 64×4 (256 bits) register upon which they sample their data. Counters use 24 bits instead of 31. Instead of calling Math.random() to make white noise, each time the counter rolls over it does a hash and shift algorithm to transform the sample data register to one that is random enough for chip music. There’s also a second noise mode where no transform happens and it outputs 1-bit metallic noise from 256 available samples. The NES had a similar mode and it is used in some music such as Mega Man 2 Quickman Stage.

As of writing I’ve hit a roadblock where my audio thread locks up if I look at it funny. Feel free to peruse the code, though, at the Github repo.

Listen to the two audio modes here:

Here’s an update: I hacked it enough to make a simple sequencer.

I say hack because I needed to convert a couple short arrays of objects to individual objects to get it to not freeze on me. Not my first choice obviously. Here’s what it looks and sounds like.

tracker0_1sequencetest

Advertisements

One response to “Tracker 0.1: Working on my soft synth now on Github

  1. Pingback: Tracker 0.1: Play Test | Jorhlok

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: