Original soundtrack
vrChristmas music
Twenty Christmas songs are built into the original vrChristmas screensaver. It chose one at random, played it to the end, then chose another. Here they are, all 49 minutes of them.
The songs
- Angels We Have Heard on High1:47 · 1.1 MB · ANGELS.mid
- Away in a Manger1:15 · 0.8 MB · AWAYINAMANGER.mid
- The Christmas Song (Chestnuts Roasting)2:51 · 1.7 MB · CHESTNUT.mid
- Deck the Halls1:38 · 1.0 MB · DECKTHEHALLS.mid
- God Rest Ye Merry, Gentlemen0:27 · 0.3 MB · GODREST.mid
- God Rest Ye Merry, Gentlemen (2)1:40 · 1.0 MB · GODRESTMSR.mid
- Hark! The Herald Angels Sing3:33 · 2.1 MB · HARKMSR.mid
- It Came Upon a Midnight Clear1:17 · 0.8 MB · ITCAMEUPON.mid
- Jingle Bell Rock2:10 · 1.3 MB · JINGLEBELLROCK.mid
- Jingle Bells3:13 · 1.9 MB · JINGLEBELLS.mid
- Joy to the World4:04 · 2.4 MB · JOY.mid
- Let It Snow1:35 · 1.0 MB · LETITSNOW.mid
- The Little Drummer Boy2:11 · 1.3 MB · LITTLEDRUMMER.mid
- (unknown title: LOOKALOT) Title unknown: the file is named LOOKALOT. Can you identify it?1:35 · 1.0 MB · LOOKALOT.mid
- O Come, All Ye Faithful4:20 · 2.6 MB · OCOME.mid
- Sleigh Ride2:25 · 1.5 MB · SLEIGHRIDE.mid
- Walking in a Winter Wonderland2:30 · 1.5 MB · WALKINGINA.mid
- We Three Kings2:49 · 1.7 MB · WETHREEKINGS.mid
- White Christmas2:55 · 1.8 MB · WHITECHRISTMAS.mid
- White Christmas (2)4:11 · 2.5 MB · WHITECHRISTMAS2.mid
The music in vrxmas30.scr is not audio. It is twenty MIDI files, stored inside the program as resources and played through whatever MIDI synthesizer your sound card or Windows provided. VRMan's readme says the music was tuned for Creative AWE32 and Live! cards and warns that a software wavetable synth is too slow.
Because the instruments depended on the card, the screensaver never sounded exactly the same on two computers. These MP3s were made by playing the original MIDI files through the free GeneralUser GS General MIDI soundfont, so they are a modern rendering of the original arrangements, not a recording of how any particular 1990s PC sounded. Each file was loudness-matched; nothing else was changed.
The screensaver picks its next song with rand() % 20, so a song can follow itself. The "random order" button above skips immediate repeats.