Open main menu

Difference between revisions of "SCI/Specifications/Sound/SCI0 Resource Format"

m
consistency changes
(added information about kq4/1988 xmas sound header)
m (consistency changes)
Line 3: Line 3:


==Preface==
==Preface==
Sierra’s SCI0 sound resources contain the music and sound effects played during the game. With the introduction of SCI, the company took advantage of new sound hardware which allowed for far bet­ter music than the traditional PC speaker could ever create. Sierra chose two devices to specifically target: the MT-32, and the Adlib. The MT-32 is a MIDI synth while the Adlib is a less expensive card based around the OPL2, a non-MIDI chip. Anyone interested in Sierra music and its history can find information at the [http://www.queststudios.com Sierra Soundtrack Series].
Sierra’s SCI0 sound resources contain the music and sound effects played during the game. With the introduction of SCI, the company took advantage of new sound hardware which allowed for far bet­ter music than the traditional PC speaker could ever create. Sierra chose two devices to specifically target: the MT-32, and the AdLib. The MT-32 is a MIDI synth while the AdLib is a less expensive card based around the OPL2, a non-MIDI chip. Anyone interested in Sierra music and its history can find information at the [http://www.queststudios.com Sierra Soundtrack Series].


Music is stored as a series of MIDI events, and the sound resource is basically just a MIDI file. The MIDI standard and device implementations are not covered here in detail, but specifications should be readily available elsewhere.
Music is stored as a series of MIDI events, and the sound resource is basically just a MIDI file. The MIDI standard and device implementations are not covered here in detail, but specifications should be readily available elsewhere.
Line 20: Line 20:


;Non-MIDI Synths
;Non-MIDI Synths
:Generally not as good as MIDI synths, but also less expensive. The OPLx family of chips are still very common among home PC users thanks to the Adlib and SoundBlaster cards. Synths are polyphonic with definable instruments through patch files, but drivers must be written to interpret MIDI events and turn them into commands the hardware will recognize. Support for most sound controls gets lost in the process. Furthermore, drivers must map logical, polyphonic MIDI channels to physical, monophonic hardware channels. A control (<tt>4Bh</tt>) was introduced for this purpose and will be discussed later.
:Generally not as good as MIDI synths, but also less expensive. The OPLx family of chips are still very common among home PC users thanks to the AdLib and SoundBlaster cards. Synths are polyphonic with definable instruments through patch files, but drivers must be written to interpret MIDI events and turn them into commands the hardware will recognize. Support for most sound controls gets lost in the process. Furthermore, drivers must map logical, polyphonic MIDI channels to physical, monophonic hardware channels. A control (<tt>4Bh</tt>) was introduced for this purpose and will be discussed later.


;Beepers  
;Beepers  
Line 42: Line 42:
|01h
|01h
|----
|----
|Adlib
|AdLib
|adl
|adl
|003
|003
Line 139: Line 139:
The first byte is a digital sample flag. Afterwards 1 byte follows for each channel (totals in 17 bytes).
The first byte is a digital sample flag. Afterwards 1 byte follows for each channel (totals in 17 bytes).


The upper 4 bits of that byte specify how many voices each logical MIDI channel will be playing. The lower 4 bits specify which drivers should react on that channel. Bit 0 set means adlib shall react. Bit 1 set means PCjr shall react. MT32 will react on all channels. Bit 3 signals the control channel.
The upper 4 bits of that byte specify how many voices each logical MIDI channel will be playing. The lower 4 bits specify which drivers should react on that channel. Bit 0 set means AdLib shall react. Bit 1 set means PCjr shall react. MT32 will react on all channels. Bit 3 signals the control channel.


The original sierra driver needs bit 3 set and bit 0 unset to find the control channel. Also the adlib driver needs bit 3 to be unset, otherwise the driver will ignore the channel even if bit 0 is set.
The original sierra driver needs bit 3 set and bit 0 unset to find the control channel. Also the AdLib driver needs bit 3 to be unset, otherwise the driver will ignore the channel even if bit 0 is set.


Currently its not known if the digital sample flag behaves the same as in the SCI0 header.
Currently its not known if the digital sample flag behaves the same as in the SCI0 header.
561

edits