diff options
Diffstat (limited to 'sound/iff_sound.cpp')
| -rw-r--r-- | sound/iff_sound.cpp | 30 | 
1 files changed, 24 insertions, 6 deletions
| diff --git a/sound/iff_sound.cpp b/sound/iff_sound.cpp index 267a332500..c201830f60 100644 --- a/sound/iff_sound.cpp +++ b/sound/iff_sound.cpp @@ -27,17 +27,35 @@  #include "sound/audiostream.h"  #include "sound/mixer.h"  #include "sound/raw.h" +#include "common/iff_container.h"  #include "common/func.h"  namespace Audio { +struct Voice8Header { +	uint32	oneShotHiSamples; +	uint32	repeatHiSamples; +	uint32	samplesPerHiCycle; +	uint16	samplesPerSec; +	byte	octaves; +	byte	compression; +	uint32	volume; + +	Voice8Header() { +		memset(this, 0, sizeof(Voice8Header)); +	} + +	void load(Common::ReadStream &stream); +}; +  void Voice8Header::load(Common::ReadStream &stream) { -	stream.read(this, sizeof(Voice8Header)); -	oneShotHiSamples = FROM_BE_32(oneShotHiSamples); -	repeatHiSamples = FROM_BE_32(repeatHiSamples); -	samplesPerHiCycle = FROM_BE_32(samplesPerHiCycle); -	samplesPerSec = FROM_BE_16(samplesPerSec); -	volume = FROM_BE_32(volume); +	oneShotHiSamples = stream.readUint32BE(); +	repeatHiSamples = stream.readUint32BE(); +	samplesPerHiCycle = stream.readUint32BE(); +	samplesPerSec = stream.readUint16BE(); +	octaves = stream.readByte(); +	compression = stream.readByte(); +	volume = stream.readUint32BE();  } | 
