Music with my own player
Music with my own player
As you might know, in the past decade I've developed my own VIC-20 interrupt driven music player used in a few demos and own productions. It is nothing fancy, just rather tight and has a music data structure that I kind of like. So the question was how much work would it be to adopt it to the SN76489 PSG?
To begin with, I have ignored the noise channel as it seems to be a little bit different. That is not to say I don't understand it, but I need another night to figure it out. Also, studying Kurt's code in the Titanic demo gave me valuable hints. He also included a three octave frequency table. However due to my existing music is arranged around the rather unusual channel structure of the VIC chip, where each channel overlaps the other by one octave, I needed to quickly define another two octaves of notes to get the same relative sounds. Those notes currently sound quite out of tune, but it will be a matter of adjusting.
Actually this is an older version of my player routine. In more recent versions I have implemented vibrato and arpeggio for additional coolness.
To begin with, I have ignored the noise channel as it seems to be a little bit different. That is not to say I don't understand it, but I need another night to figure it out. Also, studying Kurt's code in the Titanic demo gave me valuable hints. He also included a three octave frequency table. However due to my existing music is arranged around the rather unusual channel structure of the VIC chip, where each channel overlaps the other by one octave, I needed to quickly define another two octaves of notes to get the same relative sounds. Those notes currently sound quite out of tune, but it will be a matter of adjusting.
Actually this is an older version of my player routine. In more recent versions I have implemented vibrato and arpeggio for additional coolness.
You do not have the required permissions to view the files attached to this post.
Re: Music with my own player
I just tried the music player and hey it works great, and I also LOVE the music!
Re: Music with my own player
Now I have implemented the LFSR duty cycle bass on the noise channel. It took me a little work to figure out how the frequences relate to eachother. My note table is based on lowest note 1019 unlike 1023 which Kurt used in his demo. I don't know if the total effect will be any better though. Good thing is that I got silence properly implemented, as it struck me that the SN76489 doesn't have a frequency setting for silence, it needs to be implemented by changing volume of that channel.
I have included two demo songs: Invention XIII which is the same as before, and Tetris music (Gameboy edition) which might not be 100% correct but gives a preview of what a Tetris game on the Creativision might sound like. Both tunes were originally arranged for VIC-20 with overlapping channels, and in particular in the Bach tune , the bass function will be split between channel 0 (regular tone) and channel 2/3 (LFSR superbass). Ideally for future songs, all the bass will be in the same channel. I will also look into combining it with some kind of drum feature, like you can hear on SID music using arpeggio tables to kick a drum followed by a bass or other note. I think it'd be rather OK.
I have included two demo songs: Invention XIII which is the same as before, and Tetris music (Gameboy edition) which might not be 100% correct but gives a preview of what a Tetris game on the Creativision might sound like. Both tunes were originally arranged for VIC-20 with overlapping channels, and in particular in the Bach tune , the bass function will be split between channel 0 (regular tone) and channel 2/3 (LFSR superbass). Ideally for future songs, all the bass will be in the same channel. I will also look into combining it with some kind of drum feature, like you can hear on SID music using arpeggio tables to kick a drum followed by a bass or other note. I think it'd be rather OK.
You do not have the required permissions to view the files attached to this post.
Re: Music with my own player
One more update, to make it possible to have many songs in the same file using the same player. This demo contains three songs: Tetris, Penny Lane and Höstvisa by Erna Tauro. Toggle song with fire or move the joystick.
You do not have the required permissions to view the files attached to this post.
Re: Music with my own player
Although I didn't post any more download links, yesterday I realized my player has a built-in function to end individual tracks instead of having them repeat over and over. I fixed the function so the last note plays to the end and then silences the channel when an track is set to end. This will make it easier for me to include jingles that are only meant to be played once.
Re: Music with my own player
This is great news. I assume you're soon including music and jingles in the Othello game
Re: Music with my own player
I think I'm done with updates to the music player for now being. I have added the noise function, so one can combine bass and drums. It needs to be done with care, and I'm not sure that the middle noise frequency is that much different from the lowest one, but it gives an additional spice to the music. Of course one could set noise frequencies through channel 2, but in the case I combine bass with drum I'd rather not spoil channel 2 with a noise frequency and then reset it. I save some code by using the three preset noise frequencies.
Vibrato will be a challenge to add, as I'm working with 10-bit frequencies AND they're arranged 8+4 bits in the frequency table. I might add arpeggios later, as those are easier to do and quite typical for chip music.
Vibrato will be a challenge to add, as I'm working with 10-bit frequencies AND they're arranged 8+4 bits in the frequency table. I might add arpeggios later, as those are easier to do and quite typical for chip music.
You do not have the required permissions to view the files attached to this post.
- Kurt_Woloch
- Posts: 16
- Joined: Thu Jun 12, 2008 8:00 pm
- Location: Wien
- Contact:
Re: Music with my own player
This is great development! I guess Penny Lane is a bit of a freeform adaption, right? The original song does sound a bit differently...
Re: Music with my own player
Well, it originally is a VIC-20 arrangement by Unknown Artist. I found it as a Basic listing in a magazine, supposedly nicked from another magazine, and have made small adjustments to it.