SBI Format

From ModdingWiki
Jump to: navigation, search
SBI Format
Format typeMusic
Notation typeInstrument-only
Max channel count1
Max track count0
Max pattern countUnknown
Max order countUnknown

The SBI (Sound Blaster Instrument) Format stores a single instrument suitable for playback on a sound card with an OPL2 or OPL3 chip.

File format

The file is structured as follows:

Data type Name Description
char[4] signature "SBI" followed by 0x1A
char[32] name Instrument title (must be NULL-terminated)
BYTE[16] inst Instrument settings (see below)

Instrument settings

The instrument is in the following format. This is identical to the format used for each instrument in CMF Format songs and IBK Format instrument banks.

Data type Name OPL base register Description
UINT8 iModChar 0x20 Modulator characteristic (Mult, KSR, EG, VIB and AM flags)
UINT8 iCarChar 0x23 Carrier characteristic (Mult, KSR, EG, VIB and AM flags)
UINT8 iModScale 0x40 Modulator key scaling/output level
UINT8 iCarScale 0x43 Carrier key scaling/output level
UINT8 iModAttack 0x60 Modulator attack/decay level
UINT8 iCarAttack 0x63 Carrier attack/decay level
UINT8 iModSustain 0x80 Modulator sustain/release level
UINT8 iCarSustain 0x83 Carrier sustain/release level
UINT8 iModWaveSel 0xE0 Modulator wave select
UINT8 iCarWaveSel 0xE3 Carrier wave select
UINT8 iFeedback 0xC0 Feedback/connection
BYTE[5] Padding to bring instrument definition up to 16 bytes

Percussive instruments

There is no indication as to whether a given instrument should be played in melodic or percussive mode. Playing an instrument destined for one mode in the other usually sounds quite bad.