Writing Music in 2017 for the Arduboy -- What do you use?


(Jay Garcia) #1

With the help of @dxb and @JO3RI, we’ve decided to use ATMLib for space & fidelity of music.

Last year (2016), we chose PlayTunes for EVADE due to the state of ATMLib at the time. With the work that @JO3RI and the community have done with ATMLib, we’ve been able to recognize significant space savings.

For the Stage 1 music, using the PlatTunes music format, the total size of the data array was 1,331bytes. That’s only TWO tracks of notes. Using ATMLib, we have 3 tracks of notes (Trebel, Bass, percussion).

For anyone looking to hear a difference:


Ardynia - a Zelda style adventure, now available
(Scott R) #2

Wow the sound difference even on my iPhone is easily noticeable although I feel the old playtunes version sounds more retro.


(Jay Garcia) #3

really? I felt that with the additional noise channel that the ATMlib version was more retro :smiley:


(Scott R) #4

I’ll use all the wrong terminology and this may make no sense beyond my own head but I find the PlayTune blippy bloopy sound is more flatter “mono” type feeling and limited like 70’s - early 80’s stuff especially LCD games whereas the ATMlib track sounds more fuller and techno feeling more mid 80’s-90’s but it also sounds like it’s playing slightly faster which could be giving it a more modern remixed effect.


(Erwin) #5

Wow, the second one is several times better… the only thing is that the music changes so much that I already have a tiny nostalgia for the original PlayTunes format

How did you converted the midi to use the ATMLib?


(Jay Garcia) #6

Totally understand what you mean now and from that perspective, I get what you mean :)~.


(Jay Garcia) #7

I did it manually for this pass. Yes, it was a PITA.

though am looking at the source for the JS Implementation of ATMLib and the output of a tool called “JSMidi” and from there, I will work on a tool that will allow the workflow to be simple:

Compose -> Export Midi -> Drag & Drop to Web tool -> Download ATMLib audio header music -> Run in your project.