Skip to main content

Making more music using Commodore 64

T
his weekend I've tried a different approach to writing and recording a song and it's worked out so well I thought I'd make some notes here about the process.

First of all, here's the finished music. I only spent an hour or two actually writing it. That was in itself an exercise in composing but I wanted to try this new method of recording and just got something down to work with. I like it a lot and will definitely expand it.
All sounds here are produced by the C64, albeit one fitted with an ARMSID (set to 6581). Only because my working C64 with a real SID chip is playing up.

Rather than try to write for 3 or 6 voices and then import that information to end up with a .prg that will run and play the music (aka a "sid") I've written any number of parts, with up to 3 voices in each, and used the C64 as a MIDI instrument, sending each part as MIDI to the computer and recording the audio that comes out of the computer.

I think that Logic and other DAWs allow you to do all of this within one track, but you'll see from the video that I've used separate MIDI and audio tracks here because this is my first try at using any external MIDI instrument with Logic and I wanted to keep things simple.

Using the C64 this way has been my plan since I got the DATEL MIDI interface and started writing my synth software for the C64.


Actually, what I had in mind was to connect a MIDI keyboard to the C64, play it in real time and record the audio. But when my software reached the point where I could start playing around with it, I soon discovered that I could send any MIDI (eg from my notation software or from Logic as here) and it would play it, with polyphony, very well.

The only effect applied after recording the audio from the 64 is a bit of EQ for each track (hi-cut on the bass, lo-cut on the lead instruments) which I could have done to some extent using the filters on the SID.

You can see that I've recorded 6 tracks here but there's no limit and with a single-SID 64 each track (or 'instrument') can have up to 3 notes playing at the same time.

On top of that I've double-tracked a couple of the parts. In the case of the saw lead it was to get a fuller sound. I tried adding a little bit of vibrato (oscillating slight pitch change) to one to give a chorus effect. That worked remarkably well. In the mix I'm able to adjust the relative levels of those tracks to increase or decrease the effect.

In the case of the glockenspiel, I managed to get a very good sound from the SID but I found that a decay setting of 8 sounded a little dead, while 9 rang just a little too long. By making one track with each of those settings and mixing them, I was able to get a more realistic ring.

I've had a lot of trouble getting good percussion sounds, but my synth software allowed me to experiment and come up with better kick and snare sounds than I've used before.

Conclusion

I found this method very easy. Today I had to experiment a bit when setting things up and when recording, but next time that will be quicker. It still felt more straightforward and 'cleaner' than my previous method of importing the music into my C64 music driver software.

This method has fewer limitations than my previous method too. I used to have to keep everything in 3 or 6 voices and get creative with how to squeeze more out. Here I can just write the parts, percussion and all, and make as many tracks as I like.

The result sounds great. I've been able to use the different waves (triangle, saw, noise and square with whatever duty cycle is right for the sound) and get all of the levels right in the final mix. That was a nightmare when trying to get the computer to play everything back at once.


Comments

Popular posts from this blog

ZX81 reversible internal 16k upgrade

T his post is an upvote for Tynemouth Software's  ZX81 reversible Internal 16K RAM upgrade . Their instructions are easy enough for even me to follow and don't involve cutting tracks. This is the ZX81 I've had out on display and used whenever I wanted to. It's an issue 1 and was probably a kit judging by some very untidy assembly. It has a ZX8-CCB  composite video mod and an external keyboard fitted. On board it has two 1k x 4-bit chips.  The ZX81 originally came with 1k on board. Thanks to a trick with compressing the display in ram, that was enough to type and run a small program but you soon felt the limitations. Back in the early 80s, the solution was a 16k ram pack which plugged into the back[1] and this is the way I've been using this particular machine. These ram packs are notorious for 'ram pack wobble'. Even if fastened into place, you can still randomly find your work disappearing. This is a very reliable solution using a more modern 32k chip (half

Driving NeoPixels with Z80

I 've long been thinking about a version two   RC2014 LED matrix module . I've had a matrix with a MAX 7219 on a module. It's a nice enhancement. But there's only so much you can do with a single-colour LED array right? Wouldn't it be cool to have RGB LEDs?  At Liverpool MakeFest I saw a wall-sized ping-pong ball NeoPixel display and picked up some NeoPixels with the intention of making one. Possibly driven by my RC2014.  I enjoy learning about protocols and have had some SPI devices working with the RC2014 - bit-banging SPI works really well because it doesn't care about timing. NeoPixels really do care about timing though. From Adafruit's web page about their 8x8  NeoPixel matrix: If there's one thing I want to get across in this blog post, it's don't just accept what you're told . Question everything. Learn about what's going on and find out why you're being told something isn't possible. Get creative with workarounds. I'

Making new ROMs for the Vic20 / Vicky Twenty

M y Vicky Twenty is very nearly complete.  As things stand, the board and every single component is new*. The processor and VIAs are newly-manufactured (W65C02 and W65C22).  Obviously the Vic1 chip isn't manufactured today, but there is 'new old' stock about. I have been able to buy a Vic 1, date code 1987 (which seems very late). It obviously hasn't been in a computer before, passes the acetone test and works. The same goes for two of the ROMs - character and BASIC. But I haven't been able to buy a new-old Kernal ROM (901486-07). I am able to borrow one - all of the boards I have, have this particular ROM socketed. I don't know whether all of this indicates that the Kernal has proved less reliable than the other two. I recently bought a TL866 for another project. Of all the retro-computing hardware things I've had to learn to do, making ROMs has been one of the simplest. So far, everything has been very easy and worked first time.  I'm not sure that it&