void DebugMessage(byte[] msg)
{
var buffer = new byte[500];
ConvertMessageToString(msg, buffer, 0);
if ((buffer[0] != 0xFF))
{
Debug.WriteLine("DEBUG: {0}", buffer.GetText());
return;
}
if (buffer[0] == 0xFF && buffer[1] == 10)
{
int channel = 0;
var a = buffer[2] | (buffer[3] << 8) | (buffer[6] << 16) | (buffer[7] << 24);
var b = buffer[10] | (buffer[11] << 8) | (buffer[14] << 16) | (buffer[15] << 24);
// Sam and Max uses a caching system, printing empty messages
// and setting VAR_V6SoundMODE beforehand. See patch 609791.
if (_game.GameId == Scumm.IO.GameId.SamNMax)
{
channel = Variables[VariableV6SoundMode.Value];
}
if (channel != 2)
{
Sound.TalkSound(a, b, 1, channel);
}
}
}