Ladder Effect (YM2612 vs YM2608) - bryc/code GitHub Wiki

For comparison, I produced two VGM files by hand, one utilizing the YM2612 and the other for YM2608. The underlying structure is identical. The patch data, and sequence data are equivalent, however, VGM specifies two different sets of opcodes to differentiate between YM2612/YM2608, which is why one needs 52 and the other 56. Also differing is some header info, mostly just the chip's clock rate.

Here's a hex diff of both 386 byte files:

hexdiff

For those curious of the data format, it's basically a list of opcodes - a sequence of instructions. Basically a machine code program, but not as complex (no accumulators or arithmetic to keep track of, just "set this here, do this here, wait xx milliseconds).

And so here are the spectrograms of what both sound like through the VGM player's output @ 48000 hz:

test

The FM patch used came from the arcade game OutRun. The YM2608 plays the sound properly, essentially indistinguishable from the YM2151. However the YM2612 sounds different. It has a distorted/crunchy quality to it. I am not entirely sure why this is, but it is probably due to the built-in 9-bit DAC, which is not especially high-quality. It may be a form of "Crossover distortion".