[Robson Couto] started to get interested in musical projects and as a side effect created downloadable code with simple notation for a good variety of themes, songs, and melodies. They are all for the Arduino and use only the built-in tone()
function, but don’t let that distract you. If you look past that, you’ll see that each sketch is a melody that consists of single notes and durations; easily adapted to other purposes or simply used as-is. After all, [Robson] wanted the source of each tune to be easily understood, easily modified, and to have no external dependencies.
All that may sound a bit like MIDI, but MIDI has much more in common with hardware events than music notation because it includes (among other things) note starts and note ends as separate elements. Converting MIDI into a more usable format was a big part of a project that fed Bach music to a neural network and got surprisingly good results.
When doing music projects, sometimes having a recognizable melody represented very simply as notes and durations with only one note at a time can be an awfully handy resource, and you can find them on GitHub. There’s a brief video of the Tetris theme (actual name: Korobeiniki) being played after the break.
.muz files are in an odd format but human readable/editable as are the menu entries. DOS program but they should be easy to translate for raspi or arduino.
http://ftpmirror.your.org/pub/misc/dos/RbbsInABoxVol1No2_640/files/008P/MUZAK.ZIP-contents/
An alternative is to use the RTTTL format (https://github.com/spicajames/Rtttl). This page (https://code.google.com/archive/p/rogue-code/wikis/ToneLibraryDocumentation.wiki) contains lots of links where music can be downloaded.
There’s also the old QBasic PLAY format: https://www.qb64.org/wiki/PLAY
In the 90s I remember countless tunes being transcribed into this, and several dozen of them were included with the Telemate terminal software for use as “download’s done!” alert songs.