Hey all,

I'm very new to the chiptmusic scene. I'm creating a new game for Vectrex and it just so happens that music is the key element. It's a dance-mat type game... for Vectrex (no really!): https://github.com/Phillrb/Dance-Dance-Vec. You will of course need to make your own dance mat though!

Cut a long story short; the Vectrex shares the same sound chip as the Atari-ST, Spectrum and Amstrad (YM2149F or AY-3-8910). I originally looked into YM6 files and AY files and then discovered that most people make SNDH files. I then found a large online archive: http://sndh.atari.org/. My plan is to create a converter that converts SNDH files into the source code I need for Vectrex.

The REAL question... how do you compose SNDH files on a Mac (running OS X 10.10)?


The best way to do it is to use any Atari ST tracker running in Hatari (An Atari ST emulator)
You can get it here :
If you are not really used to Hatari or to Atari STs. I highly recommend you to check out this tutorial made by DHS ! It will givesyou the links for the TOS roms and all these stuffs too !!! smile

For the tracker, I recommend you MaxYMiser if you want something powerful (but the editor have a harsh learning curve !) if you want something more simple try Musicmon 2.5e but you cant use buzz, sid and digis if you want it to run at 50hz if I remember well !)
Be sure to check out this page to get these softwares !

Enjoy and Have fun ! big_smile

As far as I know SNDH uses the 68000 driver from whatever the song was written with to play the song back. (like the .SID format does)  It's not an audio output log like the YM or MYM formats, but I guess your converter is going to convert the output to a log format.  (I think the reason the other formats fell out of favour is because they don't support some of the newer ST sound tricks tbh)   I'm using YM to play ST tracks on c64 with Exomizer as the decrunch path.

Thanks both that's very helpful. I'll definitely get Hatari and a tracker installed (although I'm a bit confused about how to get the tracker onto the emulator).

Anyone know where I can get info about the structure of a SNDH, YM and AY files? If I know what the headers and data payloads look like I can parse them and convert them to a structure for Vectrex.

My last question, if I make a polished Vectrex dance mat  game for Vectrex, are there any artists here would supply some of their tracks for the game (obviously getting in-game credit)?

YM (look on the left pane)

AY format is probably out on the net somewhere, both SNDH and AY are just headers around the native player code + data for the target machine. YM format is a log format recorded per frame which will be much easier to parse. Some Amstrad/Spectrum demos play ST song data back using that method, the only worry there is picking a decent compression scheme.

Last edited by 4mat (Apr 23, 2015 11:03 am)

YM seems the obvious choice for parsing; is it easy for an artist to convert their chip music to another format (e.g. SNDH or AY to YM)?
I'll go about making a converter for YM to a format I can copy and paste into c code to feed to the Vectrex bios routines for playing music. I'm not sure if I can supply a tune as a separate file resource (rather then just a large array) but i'll give it a go.