Yo, DevEd here. I'm the guy who did the music and sound effects for this game. I also programmed the sound driver (a.k.a. DevSound). Neat, huh?

I've had a fascination with retro game audio for quite a while, particularly Game Boy audio as I grew up with a Game Boy Color. (I also had a PS2 growing up, but that's a different story.) My first experience with making chiptune music was in 2013, when I discovered FamiTracker. My first FamiTracker module was a cover of Splash Hill Zone Act 1 from Sonic 4 Episode 1. (Side note: Am I really the only person who likes Sonic 4 and its soundtrack?) If you'd like to hear my first FamiTracker module, here's a link: http://devnet.sonicgamesdimension.net/Audioez/FamiTracker/splash_hill_zone.ftm (NOTE: If the link is down, contact me via my email address (can be found in the DevSound ROM bank). I should be able to provide a copy of the file in case my webspace gets taken down for some reason.)

Eventually, I started doing Game Boy covers in FamiTracker. However, I wasn't entirely satisfied with making Game Boy covers in FamiTracker because, well, FamiTracker isn't a Game Boy tracker. That changed when I discovered DefleMask. At first, I got DefleMask so I could try my hands at Genesis music, but then I discovered that DefleMask supported Game Boy as well, and I guess the rest is history :P

Actually, there's a few things I neglected to mention. At first, DefleMask's sound emulation for Game Boy was taken from MESS/MAME, which in turn was taken from VisualBoyAdvance (bad). Also, songs would not work properly on hardware because Delek (the creator of DefleMask) only tested ROM exports in VisualBoyAdvance (bad). Eventually I convinced him to switch to a different sound emulation system for GameBoy. He chose nezplug... which was still based off of VisualBoyAdvance (bad). After a bit more prodding I finally convinced him to switch to the sound emulation engine from nezplug++ (which is technically still based off of VisualBoyAdvance but with some major improvements to actually sound like a real Game Boy.) However, these upgrades in sound accuracy came with a small price: I no longer had full volume control (I did in older version of DefleMask with the VBA sound emulation). At this point, I looked into a few other programs for making Game Boy music, although none of them were entirely satisfactory to me. These included LSDJ (which was great but ran on an actual Game Boy hardware and I was used to PC trackers), Carillon Editor (which was also pretty good but limited compared to LSDJ, plus it also ran on GB hardware), and Paragon 5's Game Boy Tracker (which didn't run on GB hardware, but I found too hard to use). I also considered making my own sound driver for the first time, however at the time I did not know anything about Game Boy programming.

That all changed around 2015, when I started to learn Game Boy ASM. I started my first attempt at making DevSound, however the project wasn't going the way I wanted it to, so I pulled the plug. I've managed to recover a ROM for this initial attempt at making DevSound, however the source code has been lost. Here's the ROM: https://drive.google.com/open?id=0B4AgXwwqb9R8aW84UW5VZ0NmRjg (There's only one song, and it only uses the two pulse channels.)

A while later, I decided to give DevSound another go. That version ALSO didn't work out the way I planned. My second attempt at DevSound started to resemble the current version (featuring a similar command system to that in the current version), however there was one key difference: It was supposed to use "zombie mode" for volume control. However, I botched the implementation somehow, and I wasn't able to fix it. The fact that BGB (and ONLY BGB) didn't experience any issues with my WIP builds certainly didn't help matters much... I had to scrap it again. Once again, I do not have the source code for this early build anymore, however this time I don't have a ROM either. Oh well, what can you say...

A while later, I had an idea to make a simple sound driver before actually making DevSound, so I could actually get the hang of Game Boy sound programming. I have no idea what happened to that project, but at some point I said "fuck it" and it became the current version of DevSound. Funny how things work out sometimes...

If you're interested, the full source code for DevSound can be found at https://github.com/DevEd2/DevSound. Note that this version of DevSound is not the exact version that is used in Aevilia (ISSOtm keeps tampering with it >:C) but it is functionally identical to the version in Aevilia. Maybe I should have provided DevSound and the music as a binary blob instead of the source code, but I suppose that would be somewhat evil, considering that DevSound *IS* open source...

Since you've made it this far, I might as well give some thanks to the people who inspired/helped me during my journey as both a chiptune composer and as a Game Boy programmer. A very special thanks goes out to Alberto Jose Gonzalez, for A) being a huge inspiration for my own work B) approving of my own efforts to make a sound driver, and C) just generally being an awesome guy. Can't thank you enough! <3 <3 <3

Some more thanks goes out to ISSOtm (the lead programmer for this game) who helped me optimize DevSound in a few places. I must confess I am not the most efficient programmer. ISSOtm is helping me with that :P

Another thanks goes out to Faried Verheul. Who is he, you might ask? Basically he was the composer for several games by Karma Studios (a developer you've most likely never heard of, and for good reason: They only managed to release ONE game for the Game Boy Color, Keep the Balance). He's been a pretty big inspiration for me. It's a shame that most of his work hasn't been heard... (I've been trying to convince him to release the missing tracks somewhere, but so far nothing has come of it.)

Some more thanks goes out to Bas "beware" Steendijk (programmer of the best Game Boy emulator, BGB), Hirokazu Tanaka (another inspiration for me, he also created the Game Boy's sound chip), and the late Gumpei Yokoi (he invented the Game Boy! Without him, none of this would have been possible. You will be missed.)

Oh yeah, one thing I forgot to mention: I did not program the SFX system. That honor goes to Aleksi Eeben, who also created the aforementioned Carillon Player/Editor. I'm using his FX Hammer system for sound effects. FX Hammer was designed to integrate with Carillon Player. However, I was able to get FX Hammer working pretty much flawlessly with DevSound. The basic rundown of how I did it is as follows: FX Hammer uses a few bytes of memory. Two of those change to specific values depending on whether or not a sound effect is playing on pulse 2 or the noise channel (for some reason FX Hammer only supports those two channels for sound effects. I may need to program my own sound effect system at some point so I don't have to deal with that restriction...). I basically checked for the specific values on those memory addresses to determine whether or not a sound effect is playing. (Note that as of writing this rant that Aevilia doesn't have any sound effects yet, but I have tested FX Hammer integration and it works as advertised.)

I don't have much else to say at the moment, so I guess this is goodbye for now. Hope you enjoy the game (and my music).

- DevEd