<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://moddingwiki.shikadi.net/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jpcima</id>
	<title>ModdingWiki - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://moddingwiki.shikadi.net/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jpcima"/>
	<link rel="alternate" type="text/html" href="https://moddingwiki.shikadi.net/wiki/Special:Contributions/Jpcima"/>
	<updated>2026-05-14T05:47:51Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.11</generator>
	<entry>
		<id>https://moddingwiki.shikadi.net/w/index.php?title=SBI_Format&amp;diff=8606</id>
		<title>SBI Format</title>
		<link rel="alternate" type="text/html" href="https://moddingwiki.shikadi.net/w/index.php?title=SBI_Format&amp;diff=8606"/>
		<updated>2019-06-02T13:04:35Z</updated>

		<summary type="html">&lt;p&gt;Jpcima: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Music Infobox&lt;br /&gt;
 | Type = Instrument-only&lt;br /&gt;
 | Instruments = OPL&lt;br /&gt;
 | NumChannels = 1&lt;br /&gt;
 | NumTracks = 0&lt;br /&gt;
 | Tags = Title&lt;br /&gt;
}}&lt;br /&gt;
The &#039;&#039;&#039;SBI (Sound Blaster Instrument) Format&#039;&#039;&#039; stores a single instrument suitable for playback on a sound card with an OPL2 or OPL3 chip.&lt;br /&gt;
&lt;br /&gt;
== File format ==&lt;br /&gt;
&lt;br /&gt;
The file is structured as follows:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Data type !! Name!! Description&lt;br /&gt;
|-&lt;br /&gt;
| [[char]][4] || signature || &amp;quot;SBI&amp;quot; followed by 0x1A&lt;br /&gt;
|-&lt;br /&gt;
| [[char]][32] || name || Instrument title (must be NULL-terminated)&lt;br /&gt;
|-&lt;br /&gt;
| [[BYTE]][16] || inst || Instrument settings (see below)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Instrument settings ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Data type!!Name!!OPL base register!!Description&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iModChar||0x20||Modulator characteristic (Mult, KSR, EG, VIB and AM flags)&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iCarChar||0x23||Carrier characteristic (Mult, KSR, EG, VIB and AM flags)&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iModScale||0x40||Modulator key scaling/output level&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iCarScale||0x43||Carrier key scaling/output level&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iModAttack||0x60||Modulator attack/decay level&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iCarAttack||0x63||Carrier attack/decay level&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iModSustain||0x80||Modulator sustain/release level&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iCarSustain||0x83||Carrier sustain/release level&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iModWaveSel||0xE0||Modulator wave select&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iCarWaveSel||0xE3||Carrier wave select&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iFeedback||0xC0||Feedback/connection&lt;br /&gt;
|-&lt;br /&gt;
|[[BYTE]][5]&lt;br /&gt;
|colspan=3|Padding to bring instrument definition up to 16 bytes. Sometimes a byte is missing, resulting a 51-byte file rather than a 52-byte file. It is probably safer to not expect this padding to exist at all.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Percussive instruments ====&lt;br /&gt;
&lt;br /&gt;
In the basic SBI format, 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.&lt;br /&gt;
&lt;br /&gt;
==== SBI format extension ====&lt;br /&gt;
&lt;br /&gt;
The SBTimbre editor takes advantage of the 5-byte padding area to store additional information.&lt;br /&gt;
If any percussion-related fields have non-zero values, the timbre can be identified as a drum instrument.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Data type!!Name!!Description&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iPercVoc||Percussion voice number (BassDrum=6, Snare=7, Tomtom=8, Cymbal=9, HighHat=10)&lt;br /&gt;
|-&lt;br /&gt;
|[[INT8]]||iTranspos||Note offset in semitones&lt;br /&gt;
|-&lt;br /&gt;
|[[UINT8]]||iPercPitch||Fixed percussion pitch (MIDI note 0-127)&lt;br /&gt;
|-&lt;br /&gt;
|[[BYTE]][2]&lt;br /&gt;
|colspan=2|Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
{{BeginFileFormatTools|Type=audio}}&lt;br /&gt;
{{FileFormatTool&lt;br /&gt;
| Name = [[SBTimbre]]&lt;br /&gt;
| Platform = DOS&lt;br /&gt;
| canPlay = Yes&lt;br /&gt;
| canCreate = No&lt;br /&gt;
| canModify = No&lt;br /&gt;
| canExport = Yes; [[SBI Format|.sbi]]&lt;br /&gt;
| canImport = Yes; many&lt;br /&gt;
| editHidden = No&lt;br /&gt;
| editMetadata = No&lt;br /&gt;
| notes = Can import or export instruments in SBI format&lt;br /&gt;
}}&lt;br /&gt;
{{FileFormatTool&lt;br /&gt;
| Name = [[SBANK]]&lt;br /&gt;
| Platform = DOS&lt;br /&gt;
| canPlay = No&lt;br /&gt;
| canCreate = No&lt;br /&gt;
| canModify = No&lt;br /&gt;
| canExport = Yes; many&lt;br /&gt;
| canImport = Yes; many&lt;br /&gt;
| editHidden = No&lt;br /&gt;
| editMetadata = No&lt;br /&gt;
| notes = Сan convert SBI between [[AdLib Instrument Format|AdLib INS]] format&lt;br /&gt;
}}&lt;br /&gt;
{{FileFormatTool&lt;br /&gt;
| Name = [[OPL3 Bank Editor]]&lt;br /&gt;
| Platform = Linux, Windows, macOS&lt;br /&gt;
| canPlay = Yes&lt;br /&gt;
| canCreate = No&lt;br /&gt;
| canModify = No&lt;br /&gt;
| canExport = Yes; many&lt;br /&gt;
| canImport = Yes; many&lt;br /&gt;
| editHidden = No&lt;br /&gt;
| editMetadata = No&lt;br /&gt;
| notes = Can import or export instruments in SBI format&lt;br /&gt;
}}&lt;br /&gt;
{{EndFileFormatTools}}&lt;/div&gt;</summary>
		<author><name>Jpcima</name></author>
	</entry>
</feed>