MuSiXmas Challenge: Fourth entry

by snout on 23-12-2004, 21:41
Topic: MRC
Tags: Challenges
Languages:

BiFi sent us the fourth entry to the MRC MuSiXmas challenge: an entry completely written in MSX-BASIC: Oldschool MSXmas. All you need for this entry is an MSX1 and you're set!

By joining the MRC MuSiXmas challenge you win a cool MSX button by default. If you win the challenge, to which Hally of Vorc.org is the juror, you will also get a cool ASCII MSX Magazine 1, including MSXPLAYer. All you have to do is make an Xmas tune for PSG, SCC, MSX-MUSIC, MSX-AUDIO and/or Moonsound (512k max) and send it to musix@msx.org before December 26th, 23:59 CET. Good luck and a Merry Christmas!

Relevant link: Oldschool MSXmas

Comments (9)

By BiFi

Enlighted (4348)

BiFi's picture

23-12-2004, 21:44

It seems the channels don't stick to sync all the time on 60Hz, so a 50Hz thing is highly recommended.

By Meits

Scribe (6458)

Meits's picture

23-12-2004, 22:35

aaay... mml... you got a lot of sparetime dude Tongue

great job...

By BiFi

Enlighted (4348)

BiFi's picture

23-12-2004, 22:53

I wanted to do something really retro and there's nothing more retro than using the MSX-BASIC PLAY statement. Smile

By wolf_

Ambassador_ (9903)

wolf_'s picture

23-12-2004, 23:13

Well, if we're talking retrogeekmode now:
you could've used the SOUND command for each note.., and create some timeline thing that triggers the sound commands Smile

By BiFi

Enlighted (4348)

BiFi's picture

24-12-2004, 07:50

true, but there was a minor issue called time needed to transfer all the notes to the correct register values Wink

By snout

Ascended (15184)

snout's picture

24-12-2004, 09:12

It's been a looooong time since I heard a genuine BASIC tune like this.... reminds me of the time I used to type listings from the MCCM and other sources, just for the music.... sure gave me a retro feeling Wink

By BiFi

Enlighted (4348)

BiFi's picture

24-12-2004, 10:17

Good, my intention worked Smile

By BiFi

Enlighted (4348)

BiFi's picture

24-12-2004, 15:02

Okay, I have found a way to get the thing work right on 60Hz as well. Required is MSX-MUSIC. I'm not sure yet why, but this trick crashes on an MSXturboR GT. Replace the following two lines with the ones below:

10 _MUSIC(0,0)Big smileIMA$(22),B$(22),C$(22)
710 PLAY#2,"t125","t125","t125":FORI=0TO22TongueLAY#2,A$(I),B$(I),C$(I):NEXTI:GOTO710

This version also takes care of the small glitches you can hear.

By BiFi

Enlighted (4348)

BiFi's picture

24-12-2004, 15:04

Again, in a code block:

10 _MUSIC(0,0):DIMA$(22),B$(22),C$(22)
710 PLAY#2,"t125","t125","t125":FORI=0TO22:PLAY#2,A$(I),B$(I),C$(I):NEXTI:GOTO710