Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

How To Make High-Quality Mega Drive/Genesis Music As a Non-Musical Person

In my previous post, I complained about how hard it is for non-composers to include high-quality music in Genesis/Mega Drive games. In the intervening month, I had a baby, but also I have developed... a process. And I'm eager to share it.

How To Be A Com-Poser

The key insight here is relying on generated music rather than inventing it ourselves note-for-note. My friend recently introduced me to this outstanding product called Midinous, which costs a bit of money but its capabilities are worth it for me. The basic idea is that, rather than writing music on a staff, you write it visually, as a circuit. From there, you can apply randomization and logic, change the mode, change the key, etc. Here's a quick screen recording of me messing around with it:

And At The Other End of The Pipeline:

Midinous can make its own simple tones, but mostly what it's designed for is sending MIDI commands to a port to be interpreted by other software or devices. You can think of this process as Midinous pressing keys on a keyboard and depending some downstream synthesizer to generate the actual waveform.

For said actual sound generation, I ended up going with DefleMask (https://www.deflemask.com/). Theoretically, the free alternative Furnace (https://github.com/tildearrow/furnace) should also work, but I couldn't get Furnace to correctly record multiple simultaneous key presses. 

If you haven't used a tracker, boy is DefleMask hard to learn. I'm sure it does things in a "standard" way, but I've never trained on any similar software and online documentation is scarce. For Furnace it's even worse. Look at all these unlabeled letters and numbers. Yeash. 


I eventually struggled through it. I figured out what the different numbers mean, how to change instrument per note, etc. I can write about that more later if anybody is interested.

The Magical Gnomes In The Middle

Configuring DefleMask to listen directly to Midinous almost works, but I noticed that it won't record a line until all of the keys are lifted. So if Midinous attempts to hold one note while changing a second note, like this:

All that gets played recorded is the end state, like this:

So I ended up hacking together a daemon that futzes with Midinous' output and makes sure that whenever any key is lifted, every key is lifted https://github.com/jerellsworth/mmm. Also, I added this block in the Midinous diagram that makes sure something plays every quarter note:


That way, DefleMask has clear, discrete chords as its MIDI input and it's readily apparent what it's supposed to record. This isn't an ideal solution, of course, as it limits the music that we can write. It's good enough for now though.

A Song! A Song!

I tweaked the Song a bit in DefleMask, changed some instrumentation, and finally exported to VGM. I'm pretty happy with the final result!

Pretty good for somebody who barely understands music theory!

Be The Change...

I complained earlier that it's impossible to find VGM files online that are available for commercial (or even personal) use. I am taking the lead by releasing this composition under  CC0 (https://github.com/jerellsworth/free_vgms). I will probably add more compositions in the future if going through this composition process remains fun for me. I encourage anybody musically inclined to do the same! I'd love to accept some PRs from other people so we can build a community repository of music.

Support this post

Did you like this post? Tell us

Leave a comment

Log in with your itch.io account to leave a comment.

(+2)

Hi there, dev of Midinous here. Great article! I just recently released Midinous on Itch as well :)
Don't forget to update! ♥

Thanks! It's beautiful software

(+2)

This is incredible!  You did it!  You're composing music in only two months.  It sounds amazing.

:D I appreciate the affirmation!