Z80, forgive me

Ok, the new thing is 1-bit music made with Z80! Just like with the AppleII-post before, this is me being an astonished newbie. It sounds so nice and data, I can’t believe it’s not a sound chip!

Z80 is the processor found inside shit loads of 1980s machines, for example Gameboy, Sinclair ZX 80/81/Spectrum, MSX-computers, Commodore 128, TRS-80, Amstrad CPC, and more funny named ones including Galaksija, Tatung Einstein, Coleco Adam, Data Science XOR, Grundy NewBrain, MicroBee, and Tiki 100.

So yesterday I found this and this, filled with mp3s of Z80-music made with the ZX Spectrum (or clones). This is how it works, according to Yerzmey: “Z80 chip produces all sounds and sends them into BEEPER and AUDIO-OUT connector of ZX SPECTRUM (jack) through ULA chip”. Normally you can play 1 channel square waves, but with the 3.5 MHz of this Z80 you can play samples and get up to 8 channels of sounds! So this is another example of chip music that does not only play sounds immanent inside sound chips, but uses the CPU to create a sort of softsynth.

There is a bunch of different software to make Z80-music on the Spectrum, but curiously enough there is only one tracker in the list that Mister Beep shows. They all seem quite interesting. Apparently there is no editor for Tim Follin’s 3 channel sample playing routine. But this month TDM used it anyway, in a coop-track with Mister Beep, where he composed his bits in assembler: Insane organist. The most bizarre Spectrum software might be this one, which lets you compose true data music: you save the song data on to cassette, and when you play it in a normal cassette deck you can hear it again! I haven’t tried the software, so I am not sure how it works, but it sounds like this.

There are lots of people developing things for the ZX Spectrum still, like ZX Spectrum Orchestra. Demosceners hang out at raww.org and there’s daily action. A few days ago Yerzmey announced that people are playing Beeper music on Atari XL/XE! It does not use the Pokey, but rather the GTIA (which apparently generates a click sound when typing). Mister Beep also released a new ZX Spectrum demo this month: check it. And get these ones:

Alberto Gonzalez – The Light Corridor (slow and foxy)
Andy Mills – AnoGaia (funky and mini-squeeky)
Ben Daglish – Dark Fusion (rockfunk)
David Whittaker – Brave Starr (micro epic)
Fuxoft – Starfox (rockfunk)
Jason Brook – Rastan Saga (adventure tonality)
Tim Follin – Agent X part 2
Tim Follin – Future Games

drum2

Drum Machine (1984), 'photo' by Mister Beep

15 Responses to “Z80, forgive me”

  1. Random Says:

    How is polyphony actually created here? Multiplexing in 1 bit? How is that done? … Or just extremely fast shifting between several notes (8 at maximum, since that seems to be the upper limit for polyphony), similar to the concept of FM synthesis where you can get bass tones and overtones (or whatever it’s called) within one sound? And just how does sample playback sound in 1 bit resolution? In 1 bit there would only be two states of the waveform, on and off, so any sample would just turn in to a very complex form of uneven pulsewave/squarewave (only variation would be in pulsewidth and pitch)? :D Though, when I think about it, it would be easy to draw the waveform of a kick drum using only two states of amplitude…
    Anyway, I’m very curious about this, and it would be great if you know of some geeky documentation in english on the Z80, ZX Spectrum and the various software.

  2. Frantisek Fuka Says:

    Hello, I am the “Fuxoft” you mention in your article. You have 1-bit version of my old Jet-Story music? Where can I get it? I don’t see it at any of the links you mention.

  3. chipflip Says:

    @Fuxoft: You mean this? http://zxdemo.org/f/200304/zoommix/Fuxoft%20-%20Jet%20Story.fxm

    @Random: Turning the sound on and off 261 times a second creates a C. 391 times a second is a G. Combining these two frequences creates a chord. http://members.fortunecity.com/gudger/spectrummusic/ (top notch webdesign crew 2000)

    What they’re doing to play samples is called Pulse Width Modulation. It’s not really anything new about it – used before with PC Speaker and C64 and so on – but I think it sounded so lovely with the Z80. You can read a bit more about it here: http://en.wikipedia.org/wiki/Pulse-width_modulation

    (I’ll dig into it and get more details, I hope)

  4. Random Says:

    Thanks, yeah… It’s kind of what I meant by shifting extremely fast between different frequencies, it’s like the most basic version of multiplexing. (Don’t know why I referred to FM-synthesis though, that’s a bit confused… Uhm.. Even though some similarities actually can be seen, or I’m just making up far-fetched similarities hehe).

    I know about PWM, and I understand the principles of it, but it still amazes me that such complex audio waveforms such as human words can be translated into 1 bit data streams and still be understandable!

    Thanks for the webdesign link! Here’s another one: http://www.kopingskola.borgholm.se/elevval/sebastian/index.htm (don’t forget to check out the “Fusksidan”!)

  5. Akira Says:

    I am always gobsmacked by the data gems to be found in eastern Europe.
    To be of notice here, these guys keep pushing the barriers of one of the poorest home computers of the 80s, since this is all they had access to, a cheap, russian made, Spectrum clone. Many similarities are to be found between the eastern Europe situation and South America, but we never had the creative output of the demoscene, even though our own Spectrum clones were cheap, they were never popular, and computing remained a thing of the middle-high/high class boys.

  6. chipflip Says:

    MP3s with some XL/XE beeper-style tunes:
    http://truechiptilldeath.com/2008/11/1-bit-music-on-the-atari-xlxe/

    @akira: where there’s good weather there’s no demoscene!

    …hmm

  7. paris Says:

    Great article and blog – just found it :-)
    Very cool about the Spectrum – as a graphics guy, i’ve been wanting to get into some graphics programming for it for a while but it went back burner as i’ve been doing GBA lately.
    There are some very some awesome spectrum graphics demos that have been produced out there too.
    Cool stuff!

  8. chipflip Says:

    @paris: thanks! spectrum graphics is indeed quite distinct, I really like the taste of it. hhmm. here’s a nice BASIC demo for ZX81, which might give some inspiration to the ZX visual-noise people out there… >> http://blip.tv/file/1141882

  9. r00s Says:

    not sure if you found this, yes , no? Russian ZX podcasts.. Didnt download it, so dont know if it is good, but the charachters make it perfect!
    подкаста о чиповой музыке на zx-spectrum:

    http://translate.google.com/translate?u=http%3A%2F%2Fwww.nodeus.blogspot.com%2F&hl=en&ie=UTF-8&sl=ru&tl=en

  10. janina Says:

    Akira: Central Europe. Not “Eastern”. Have you seen a map anywhere? Eastern are such as Russian, Belarus, Ukraine.

    Take a look what is in the middle of Europe.

  11. Frantisek Fuka Says:

    @Chipflip: The “Jetstory.fxm” is my music composed for 128k ZX Spectrum’s AY soundchip (3 voices). It’s certainly not “1-bit Z80 music”. Also composed 1-bit music, but not Jetstory. From your article, I thought you have some sort of 1-bit Jetstory remix…

  12. chipflip Says:

    frantiksek: i refered to your songs for starfox in the article. there are some “1bit waveforms” going on there, right? not sure why we are talking about jetstory?

  13. chipflip Says:

    http://shiru.untergrund.net/1bit/pivot/entry.php?id=6#body

  14. social security Says:

    squares with various tea leaves and tea flavors inside each square.
    The game was released on August 3, and is
    in stores now, but probably is where it will remain, sad to say.
    That is the new craze in on the internet gaming, and
    numerous girls and teens are possessing a blast.

  15. video game podcast Says:

    It’s a pity you don’t have a donate button! I’d definitely donate to this fantastic blog! I suppose for now i’ll settle for book-marking
    and adding your RSS feed to my Google account.
    I look forward to fresh updates and will talk about this
    blog with my Facebook group. Chat soon!

Leave a comment