Well, I noticed some distortion and tested it and there seems to be clipping (at least on my model 1 mega drive).
I tested the following:
All channels are always on frequency 0.
First test series:
- Channels 0 and 1 envelope set to 4 (this is about 50% of the outputrange for frequency=0).
- while i<15
{Channel 2 envelope = i; wait; Channel 2 envelope = 4;}
Second test series:
- The same as the first except channel 0 and 1 had their envelope set to 15
Third test series:
- The same as the first except channel 0 and 1 had their envelope set to 0.
In theory, if there is no clipping, the only thing different between the three test series should be the dc offset. The first series is pretty much the safest signal.
I measured it, and there are two things observable:
1. the third series shows different output from series 1 for all envelopes > 5.
2. the second series shows different output from series 1 for all envelopes < 3 (the difference is much smaller than in the third series though)
Here's an image of the recordings:
(dc offset removed; only the range of the clicks is important, not the positive or negative peak)
Edit: I removed something that I originally wrote that turned out to most likely nonsense.