<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://sm64decomp.tenry.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tenry</id>
	<title>SM64Decomp Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://sm64decomp.tenry.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tenry"/>
	<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php/Special:Contributions/Tenry"/>
	<updated>2026-04-05T18:23:51Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.0</generator>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Music_sequence&amp;diff=110</id>
		<title>Music sequence</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Music_sequence&amp;diff=110"/>
		<updated>2025-12-05T18:08:24Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Add example melody script.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;dasdasdasdMusic in Super Mario 64 is controlled by sequence files. They are in .m64 format, which is similar to [[wikipedia:MIDI|MIDI]]. A sequence file has a sequence script, that can spawn channels, which have channel scripts, that can spawn layers (also known as tracks), which have layer scripts that can play notes. Each note is performed using an instrument from a sound bank. A sequence file can use multiple banks. The mapping from sequences to sound banks is described in '''sound/sequences.json'''. Channels can switch between banks using a command. However, in practice most sequences limit themselves to a single sound bank. The main exception is sequence 0, which is responsible for sound effects.&lt;br /&gt;
&lt;br /&gt;
A sequence may play up to 16 channels with up to 4 layers per channel. Several notes can be played simultaneously on a single layer.&lt;br /&gt;
&lt;br /&gt;
A sequence is played as long as the sequence script is not ended. A channel (including layers) is active as long as the channel script is not ended.&lt;br /&gt;
&lt;br /&gt;
== Note properties ==&lt;br /&gt;
A note can be played by the commands &amp;lt;code&amp;gt;layer_note0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;layer_note1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;layer_note2&amp;lt;/code&amp;gt; (only valid if &amp;lt;code&amp;gt;chan_largenoteson&amp;lt;/code&amp;gt; has been called on the layer's channel) or &amp;lt;code&amp;gt;layer_smallnote0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;layer_smallnote1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;layer_smallnote2&amp;lt;/code&amp;gt; (only valid if &amp;lt;code&amp;gt;chan_largenotesoff&amp;lt;/code&amp;gt; has been called on the layer's channel; default state). A note is defined by the following properties:&lt;br /&gt;
&lt;br /&gt;
=== Pitch ===&lt;br /&gt;
Also known as '''note'''. The pitch defines the frequency in which the instrument is to be played. See list of notes below for available pitches.&lt;br /&gt;
&lt;br /&gt;
=== Play percentage ===&lt;br /&gt;
Also known as '''timestamp'''. This defines the note value, such as half or quarter note. This also implies a layer delay of the same amount. See note values below for possible values.&lt;br /&gt;
&lt;br /&gt;
=== Velocity ===&lt;br /&gt;
This is the volume of the note.&lt;br /&gt;
&lt;br /&gt;
=== Duration ===&lt;br /&gt;
Also known as '''gate''' or '''gate time'''. A value of 0 menas the note is heard during the whole percentage, 128 is half of the percentage and 255 almost none.&lt;br /&gt;
&lt;br /&gt;
== List of notes ==&lt;br /&gt;
This is a list of notes as used by the ''layer_note#'' and ''layer_smallnote#'' commands.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Octave&lt;br /&gt;
!Note&lt;br /&gt;
!Decimal&lt;br /&gt;
!Hex (note0)&lt;br /&gt;
!Hex (note1)&lt;br /&gt;
!Hex (note2)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |0&lt;br /&gt;
!A&lt;br /&gt;
|0&lt;br /&gt;
|0x00&lt;br /&gt;
|0x40&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|1&lt;br /&gt;
|0x01&lt;br /&gt;
|0x41&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|2&lt;br /&gt;
|0x02&lt;br /&gt;
|0x42&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |1&lt;br /&gt;
!C&lt;br /&gt;
|3&lt;br /&gt;
|0x03&lt;br /&gt;
|0x43&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|4&lt;br /&gt;
|0x04&lt;br /&gt;
|0x44&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|5&lt;br /&gt;
|0x05&lt;br /&gt;
|0x45&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|6&lt;br /&gt;
|0x06&lt;br /&gt;
|0x46&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|7&lt;br /&gt;
|0x07&lt;br /&gt;
|0x47&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|8&lt;br /&gt;
|0x08&lt;br /&gt;
|0x48&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|9&lt;br /&gt;
|0x09&lt;br /&gt;
|0x49&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|10&lt;br /&gt;
|0x0A&lt;br /&gt;
|0x4A&lt;br /&gt;
|0x8A&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|11&lt;br /&gt;
|0x0B&lt;br /&gt;
|0x4B&lt;br /&gt;
|0x8B&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|12&lt;br /&gt;
|0x0C&lt;br /&gt;
|0x4C&lt;br /&gt;
|0x8C&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|13&lt;br /&gt;
|0x0D&lt;br /&gt;
|0x4D&lt;br /&gt;
|0x8D&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|14&lt;br /&gt;
|0x0E&lt;br /&gt;
|0x4E&lt;br /&gt;
|0x8E&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |2&lt;br /&gt;
!C&lt;br /&gt;
|15&lt;br /&gt;
|0x0F&lt;br /&gt;
|0x4F&lt;br /&gt;
|0x8F&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|16&lt;br /&gt;
|0x10&lt;br /&gt;
|0x50&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|17&lt;br /&gt;
|0x11&lt;br /&gt;
|0x51&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|18&lt;br /&gt;
|0x12&lt;br /&gt;
|0x52&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|19&lt;br /&gt;
|0x13&lt;br /&gt;
|0x53&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|20&lt;br /&gt;
|0x14&lt;br /&gt;
|0x54&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|21&lt;br /&gt;
|0x15&lt;br /&gt;
|0x55&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|22&lt;br /&gt;
|0x16&lt;br /&gt;
|0x56&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|23&lt;br /&gt;
|0x17&lt;br /&gt;
|0x57&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|24&lt;br /&gt;
|0x18&lt;br /&gt;
|0x58&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|25&lt;br /&gt;
|0x19&lt;br /&gt;
|0x59&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|26&lt;br /&gt;
|0x1A&lt;br /&gt;
|0x5A&lt;br /&gt;
|0x9A&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |3&lt;br /&gt;
!C&lt;br /&gt;
|27&lt;br /&gt;
|0x1B&lt;br /&gt;
|0x5B&lt;br /&gt;
|0x9B&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|28&lt;br /&gt;
|0x1C&lt;br /&gt;
|0x5C&lt;br /&gt;
|0x9C&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|29&lt;br /&gt;
|0x1D&lt;br /&gt;
|0x5D&lt;br /&gt;
|0x9D&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|30&lt;br /&gt;
|0x1E&lt;br /&gt;
|0x5E&lt;br /&gt;
|0x9E&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|31&lt;br /&gt;
|0x1F&lt;br /&gt;
|0x5F&lt;br /&gt;
|0x9F&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|32&lt;br /&gt;
|0x20&lt;br /&gt;
|0x60&lt;br /&gt;
|0xA0&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|33&lt;br /&gt;
|0x21&lt;br /&gt;
|0x61&lt;br /&gt;
|0xA1&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|34&lt;br /&gt;
|0x22&lt;br /&gt;
|0x62&lt;br /&gt;
|0xA2&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|35&lt;br /&gt;
|0x23&lt;br /&gt;
|0x63&lt;br /&gt;
|0xA3&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|36&lt;br /&gt;
|0x24&lt;br /&gt;
|0x64&lt;br /&gt;
|0xA4&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|37&lt;br /&gt;
|0x25&lt;br /&gt;
|0x65&lt;br /&gt;
|0xA5&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|38&lt;br /&gt;
|0x26&lt;br /&gt;
|0x66&lt;br /&gt;
|0xA6&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |4&lt;br /&gt;
!C&lt;br /&gt;
|39&lt;br /&gt;
|0x27&lt;br /&gt;
|0x67&lt;br /&gt;
|0xA7&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|40&lt;br /&gt;
|0x28&lt;br /&gt;
|0x68&lt;br /&gt;
|0xA8&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|41&lt;br /&gt;
|0x29&lt;br /&gt;
|0x69&lt;br /&gt;
|0xA9&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|42&lt;br /&gt;
|0x2A&lt;br /&gt;
|0x6A&lt;br /&gt;
|0xAA&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|43&lt;br /&gt;
|0x2B&lt;br /&gt;
|0x6B&lt;br /&gt;
|0xAB&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|44&lt;br /&gt;
|0x2C&lt;br /&gt;
|0x6C&lt;br /&gt;
|0xAC&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|45&lt;br /&gt;
|0x2D&lt;br /&gt;
|0x6D&lt;br /&gt;
|0xAD&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|46&lt;br /&gt;
|0x2E&lt;br /&gt;
|0x6E&lt;br /&gt;
|0xAE&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|47&lt;br /&gt;
|0x2F&lt;br /&gt;
|0x6F&lt;br /&gt;
|0xAF&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|48&lt;br /&gt;
|0x30&lt;br /&gt;
|0x70&lt;br /&gt;
|0xB0&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|49&lt;br /&gt;
|0x31&lt;br /&gt;
|0x71&lt;br /&gt;
|0xB1&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|50&lt;br /&gt;
|0x32&lt;br /&gt;
|0x72&lt;br /&gt;
|0xB2&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |5&lt;br /&gt;
!C&lt;br /&gt;
|51&lt;br /&gt;
|0x33&lt;br /&gt;
|0x73&lt;br /&gt;
|0xB3&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|52&lt;br /&gt;
|0x34&lt;br /&gt;
|0x74&lt;br /&gt;
|0xB4&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|53&lt;br /&gt;
|0x35&lt;br /&gt;
|0x75&lt;br /&gt;
|0xB5&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|54&lt;br /&gt;
|0x36&lt;br /&gt;
|0x76&lt;br /&gt;
|0xB6&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|55&lt;br /&gt;
|0x37&lt;br /&gt;
|0x77&lt;br /&gt;
|0xB7&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|56&lt;br /&gt;
|0x38&lt;br /&gt;
|0x78&lt;br /&gt;
|0xB8&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|57&lt;br /&gt;
|0x39&lt;br /&gt;
|0x79&lt;br /&gt;
|0xB9&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|58&lt;br /&gt;
|0x3A&lt;br /&gt;
|0x7A&lt;br /&gt;
|0xBA&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|59&lt;br /&gt;
|0x3B&lt;br /&gt;
|0x7B&lt;br /&gt;
|0xBB&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|60&lt;br /&gt;
|0x3C&lt;br /&gt;
|0x7C&lt;br /&gt;
|0xBC&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|61&lt;br /&gt;
|0x3D&lt;br /&gt;
|0x7D&lt;br /&gt;
|0xBD&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|62&lt;br /&gt;
|0x3E&lt;br /&gt;
|0x7E&lt;br /&gt;
|0xBE&lt;br /&gt;
|-&lt;br /&gt;
!6&lt;br /&gt;
!C&lt;br /&gt;
|63&lt;br /&gt;
|0x3F&lt;br /&gt;
|0x7F&lt;br /&gt;
|0xBF&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Note durations ==&lt;br /&gt;
The effective duration of a note and the delay commands is based on the currently set sequence tempo. The duration of a single tick in seconds can be calculated using the following formula: &amp;lt;code&amp;gt;time = 1.25 / tempo&amp;lt;/code&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Note&lt;br /&gt;
!Ticks&lt;br /&gt;
!Duration (120 BPM)&lt;br /&gt;
|-&lt;br /&gt;
|whole&lt;br /&gt;
|192&lt;br /&gt;
|2s&lt;br /&gt;
|-&lt;br /&gt;
|half dotted (2nd + 4th)&lt;br /&gt;
|144&lt;br /&gt;
|1.5s&lt;br /&gt;
|-&lt;br /&gt;
|half&lt;br /&gt;
|96&lt;br /&gt;
|1s&lt;br /&gt;
|-&lt;br /&gt;
|quarter dottet (4th + 8th)&lt;br /&gt;
|72&lt;br /&gt;
|0.75s&lt;br /&gt;
|-&lt;br /&gt;
|quarter (4th)&lt;br /&gt;
|48&lt;br /&gt;
|0.5s&lt;br /&gt;
|-&lt;br /&gt;
|eighth dottet (8th + 16th)&lt;br /&gt;
|36&lt;br /&gt;
|0.375s&lt;br /&gt;
|-&lt;br /&gt;
|quarter tuplet&lt;br /&gt;
|32&lt;br /&gt;
|0.333s&lt;br /&gt;
|-&lt;br /&gt;
|eighth (8th)&lt;br /&gt;
|24&lt;br /&gt;
|0.25s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth dottet (16th + 32th)&lt;br /&gt;
|18&lt;br /&gt;
|0.1875s&lt;br /&gt;
|-&lt;br /&gt;
|eigthth tuplet&lt;br /&gt;
|16&lt;br /&gt;
|0.1666s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth (16th)&lt;br /&gt;
|12&lt;br /&gt;
|0.125s&lt;br /&gt;
|-&lt;br /&gt;
|32th dottet (32th + 64th)&lt;br /&gt;
|9&lt;br /&gt;
|0.09375s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth tuplet (16th)&lt;br /&gt;
|8&lt;br /&gt;
|0.08333s&lt;br /&gt;
|-&lt;br /&gt;
|32th&lt;br /&gt;
|6&lt;br /&gt;
|0.0625s&lt;br /&gt;
|-&lt;br /&gt;
|32th tuplet&lt;br /&gt;
|4&lt;br /&gt;
|0.041666s&lt;br /&gt;
|-&lt;br /&gt;
|64th&lt;br /&gt;
|3&lt;br /&gt;
|0.03125s&lt;br /&gt;
|-&lt;br /&gt;
|64th tuplet&lt;br /&gt;
|2&lt;br /&gt;
|0.0208333s&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Create sequences ==&lt;br /&gt;
There are several ways for creating new sequence files.&lt;br /&gt;
&lt;br /&gt;
=== Seq64 ===&lt;br /&gt;
Seq64 is a GUI program for editing sequence files for Super Mario 64 and other Nintendo games. It also features full MIDI importing and exporting.&lt;br /&gt;
&lt;br /&gt;
https://github.com/sauraen/seq64&lt;br /&gt;
&lt;br /&gt;
=== Manually ===&lt;br /&gt;
Sequence files can also be created manually in a textual format. Create a new assembly file in the sequences directory, for example '''sound/sequences/us/23_custom_sequence.s'''. This file should have the following anatomy:&amp;lt;syntaxhighlight lang=&amp;quot;asm&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;seq_macros.inc&amp;quot;&lt;br /&gt;
.section .rodata&lt;br /&gt;
.align 0&lt;br /&gt;
&lt;br /&gt;
################################################################################&lt;br /&gt;
# This label is required at the beginning of the sequence.&lt;br /&gt;
sequence_start:&lt;br /&gt;
&lt;br /&gt;
# Sequence commands like seq_settempo, seq_initchannels, seq_startchannel here&lt;br /&gt;
seq_startchannel 0, channel0&lt;br /&gt;
&lt;br /&gt;
# If your sequence loops, put this here&lt;br /&gt;
seq_jump sequence_start&lt;br /&gt;
&lt;br /&gt;
# End of sequence script&lt;br /&gt;
seq_end&lt;br /&gt;
&lt;br /&gt;
################################################################################&lt;br /&gt;
# Any label you want, so you can refer to this section when starting a channel.&lt;br /&gt;
channel0:&lt;br /&gt;
&lt;br /&gt;
# Channel commands like chan_setvol, chan_setinstr, chan_setlayer here&lt;br /&gt;
chan_largenoteson&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
&lt;br /&gt;
# End of channel script&lt;br /&gt;
chan_end&lt;br /&gt;
&lt;br /&gt;
################################################################################&lt;br /&gt;
layer_melody:&lt;br /&gt;
&lt;br /&gt;
# Layer commands here like layer_note0, layer_note1 etc.&lt;br /&gt;
&lt;br /&gt;
# End of layer script&lt;br /&gt;
layer_end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Next you can write down a series of commands. See '''include/seq_macros.inc''' or https://hackmd.io/opEB-OmxRa26P8h8pA-x7w for a list of available commands.&lt;br /&gt;
&lt;br /&gt;
=== Example melody &amp;quot;Transposition&amp;quot; ===&lt;br /&gt;
The following example script plays a melody of 69 notes and repeats it over at varying transposition (hence the name).&amp;lt;syntaxhighlight lang=&amp;quot;asm&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;seq_macros.inc&amp;quot;&lt;br /&gt;
.section .rodata&lt;br /&gt;
.align 0&lt;br /&gt;
&lt;br /&gt;
.eqv EIGHTH, 24&lt;br /&gt;
.eqv SEQ_LEN, EIGHTH * (9 + 11 + 10 + 12 + 12 + 7 + 8)&lt;br /&gt;
&lt;br /&gt;
# This label is required at the beginning of the sequence.&lt;br /&gt;
sequence_start:&lt;br /&gt;
&lt;br /&gt;
seq_setmutebhv 0x20&lt;br /&gt;
seq_settempo 125&lt;br /&gt;
seq_setvol 127&lt;br /&gt;
&lt;br /&gt;
seq_initchannels 0x01&lt;br /&gt;
seq_startchannel 0, channel0&lt;br /&gt;
&lt;br /&gt;
# Note: the maximum delay is 32767 (0x7fff) ticks, so we just do multiple delays.&lt;br /&gt;
seq_delay SEQ_LEN * 5&lt;br /&gt;
seq_delay SEQ_LEN * 5&lt;br /&gt;
seq_delay SEQ_LEN * 5&lt;br /&gt;
seq_delay SEQ_LEN * 5&lt;br /&gt;
seq_delay SEQ_LEN * 5&lt;br /&gt;
seq_jump sequence_start&lt;br /&gt;
&lt;br /&gt;
seq_end&lt;br /&gt;
&lt;br /&gt;
channel0:&lt;br /&gt;
chan_largenoteson&lt;br /&gt;
chan_setvol 127&lt;br /&gt;
chan_setinstr 4&lt;br /&gt;
chan_setreverb 127&lt;br /&gt;
&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -11&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -8&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -2&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -6&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 9&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 1&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -7&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 10&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 12&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 2&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 4&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 5&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 3&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -5&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -12&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -9&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 7&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 6&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -10&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 11&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -4&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -1&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose 8&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_transpose -3&lt;br /&gt;
chan_setlayer 0, layer_melody&lt;br /&gt;
chan_delay SEQ_LEN&lt;br /&gt;
&lt;br /&gt;
chan_end&lt;br /&gt;
&lt;br /&gt;
layer_melody:&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 42, EIGHTH, 100 # d#4&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 42, EIGHTH, 100 # d#4&lt;br /&gt;
layer_note1 33, EIGHTH, 100 # gb3&lt;br /&gt;
layer_note1 31, EIGHTH, 100 # e-3&lt;br /&gt;
layer_note1 30, EIGHTH, 100 # d#3&lt;br /&gt;
layer_note1 28, EIGHTH, 100 # c#3&lt;br /&gt;
&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
layer_note1 42, EIGHTH, 100 # d#4&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
layer_note1 45, EIGHTH, 100 # gb4&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
layer_note1 42, EIGHTH, 100 # d#4&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 44, EIGHTH, 100 # f-4&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 45, EIGHTH, 100 # gb4&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 47, EIGHTH, 100 # ab4&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 48, EIGHTH, 100 # a-4&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
&lt;br /&gt;
layer_note1 42, EIGHTH, 100 # d#4&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 33, EIGHTH, 100 # gb3&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 42, EIGHTH, 100 # d#4&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 45, EIGHTH, 100 # gb4&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 47, EIGHTH, 100 # ab4&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 36, EIGHTH, 100 # a-3&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 36, EIGHTH, 100 # a-3&lt;br /&gt;
layer_note1 40, EIGHTH, 100 # c#4&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 33, EIGHTH, 100 # gb3&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 38, EIGHTH, 100 # b-3&lt;br /&gt;
layer_note1 43, EIGHTH, 100 # e-4&lt;br /&gt;
&lt;br /&gt;
layer_note1 33, EIGHTH, 100 # gb3&lt;br /&gt;
layer_note1 35, EIGHTH, 100 # ab3&lt;br /&gt;
layer_note1 36, EIGHTH, 100 # a-3&lt;br /&gt;
layer_note1 31, EIGHTH, 100 # e-3&lt;br /&gt;
layer_note1 30, EIGHTH, 100 # d#3&lt;br /&gt;
layer_note1 31, EIGHTH, 100 # e-3&lt;br /&gt;
layer_note1 33, EIGHTH, 100 # gb3&lt;br /&gt;
&lt;br /&gt;
layer_note1 30, EIGHTH, 100 # d#3&lt;br /&gt;
layer_note1 26, EIGHTH, 100 # b-2&lt;br /&gt;
layer_note1 24, EIGHTH, 100 # a-2&lt;br /&gt;
layer_note1 23, EIGHTH, 100 # ab2&lt;br /&gt;
layer_note1 31, EIGHTH, 100 # e-3&lt;br /&gt;
layer_note1 24, EIGHTH, 100 # a-2&lt;br /&gt;
layer_note1 31, EIGHTH, 100 # e-3&lt;br /&gt;
layer_note1 23, EIGHTH, 100 # ab2&lt;br /&gt;
&lt;br /&gt;
layer_end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Commands ==&lt;br /&gt;
&lt;br /&gt;
=== Sequence commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!seq_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!seq_delay1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfe&lt;br /&gt;
|Delay for 1 tick&lt;br /&gt;
|-&lt;br /&gt;
!seq_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|0xfd, var&lt;br /&gt;
|Delay for X ticks&lt;br /&gt;
|-&lt;br /&gt;
!seq_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!seq_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the sequence script&lt;br /&gt;
|-&lt;br /&gt;
!seq_beqz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfa, addr&lt;br /&gt;
|Jump if Q == 0, where Q is an s8 used to hold temporary sequence script state&lt;br /&gt;
|-&lt;br /&gt;
!seq_bltz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xf9, addr&lt;br /&gt;
|Jump if Q &amp;lt; 0&lt;br /&gt;
|-&lt;br /&gt;
!seq_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!seq_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!seq_bgez&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xf5, addr&lt;br /&gt;
|Jump if Q &amp;gt;= 0&lt;br /&gt;
|-&lt;br /&gt;
!seq_reservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|0xf2, u8&lt;br /&gt;
|Reserve X notes for exclusive use by this sequence (dropping earlier reservations). A limited number of notes can be played at once (configurable per level, usually 16); if more than that are played, an existing one will be stopped and reused. This command can prevent that from happening across sequences.&lt;br /&gt;
|-&lt;br /&gt;
!seq_unreservenotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf1&lt;br /&gt;
|Drop all earlier reservations made by this sequence.&lt;br /&gt;
|-&lt;br /&gt;
!seq_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|0xdf, s8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!seq_transposerel&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|0xde, s8&lt;br /&gt;
|Change transposition by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_settempo&lt;br /&gt;
|tempo&lt;br /&gt;
|&lt;br /&gt;
|0xdd, u8&lt;br /&gt;
|Set tempo in BPM.&lt;br /&gt;
|-&lt;br /&gt;
!seq_addtempo&lt;br /&gt;
|tempo&lt;br /&gt;
|&lt;br /&gt;
|0xdc, s8&lt;br /&gt;
|Change tempo by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setvol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|0xdb, u8&lt;br /&gt;
|Set volume scale (0…255 = none to twice normal).&lt;br /&gt;
|-&lt;br /&gt;
!seq_changevol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|0xda, s8&lt;br /&gt;
|Change volume scale by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_initchannels&lt;br /&gt;
|channelMask&lt;br /&gt;
|&lt;br /&gt;
|0xd7, u16&lt;br /&gt;
|Initialize channels (bitmask). This copies mute behavior and note allocation policy.&lt;br /&gt;
|-&lt;br /&gt;
!seq_disablechannels&lt;br /&gt;
|channelMask&lt;br /&gt;
|&lt;br /&gt;
|0xd6, u16&lt;br /&gt;
|Uninitialize channels (bitmask).&lt;br /&gt;
|-&lt;br /&gt;
!seq_setmutescale&lt;br /&gt;
|mulitplier&lt;br /&gt;
|&lt;br /&gt;
|0xd5, s8&lt;br /&gt;
|Set volume multiplier for muted mode (0…127).&lt;br /&gt;
|-&lt;br /&gt;
!seq_mute&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd4&lt;br /&gt;
|Set sequence to muted mode. Depending on what behavior has been set this will do different things; from lowering volume to not running scripts.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setmutebhv&lt;br /&gt;
|bitmask&lt;br /&gt;
|&lt;br /&gt;
|0xd3, u8&lt;br /&gt;
|Set mute behavior (bitmask). Bit 0x20 lowers volume, bit 0x40 does something to layers, and bit 0x80 pauses the sequence script. Default mute behavior is to have all of those bits set.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setshortnotevelocitytable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xd2, addr&lt;br /&gt;
|Set velocity table for short notes (see further down). Target should be an array of bytes in the sequence data of length 16.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setshortnotedurationtable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xd1, addr&lt;br /&gt;
|Set duration table for short notes (see further down). Target should be an array of bytes in the sequence data of length 16.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setnoteallocationpolicy&lt;br /&gt;
|policyMask&lt;br /&gt;
|&lt;br /&gt;
|0xd0, u8&lt;br /&gt;
|Set note allocation policy (bitmask). If bit 0x1 is set, it will try to steal notes back from what was previously played on the same layer. If bit 0x2 is set, notes will be allocated exclusively from the channel’s reserved notes, else if 0x4 is set, from the channel’s or sequence’s reserved notes, else if 0x8 is set, from unreserved notes, otherwise from all sources. Not used by the game.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setval&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xcc, u8&lt;br /&gt;
|Set Q to a constant.&lt;br /&gt;
|-&lt;br /&gt;
!seq_bitand&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Bitand Q by a constant.&lt;br /&gt;
|-&lt;br /&gt;
!seq_subtract&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xc8, u8&lt;br /&gt;
|Subtract a constant from Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_startchannel&lt;br /&gt;
|channel&lt;br /&gt;
|address&lt;br /&gt;
|0x90-0x9f, addr&lt;br /&gt;
|Start channel N, with a given channel script.&lt;br /&gt;
|-&lt;br /&gt;
!seq_getvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0x8f&lt;br /&gt;
|Set Q to the variation bit, which is initially either 0 or 0x80 (i.e. -128, since Q is s8). This bit comes from the sequence load command. For instance, to play the Koopa shell music, the game plays sequence 0x8E, which is the same as sequence 0xE but with the variation bit set.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x70-0x7f&lt;br /&gt;
|Set the variation bit to Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_subvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x50-0x5f&lt;br /&gt;
|Subtract the variation bit from Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_testchdisabled&lt;br /&gt;
|channel&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x0f&lt;br /&gt;
|Set Q to 1 or 0, depending on whether channel N has been disabled by channel script.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Channel commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Param 3&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!chan_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!chan_delay1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfe&lt;br /&gt;
|Delay for 1 tick&lt;br /&gt;
|-&lt;br /&gt;
!chan_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfd, var&lt;br /&gt;
|Delay for X ticks&lt;br /&gt;
|-&lt;br /&gt;
!chan_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!chan_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the channel script&lt;br /&gt;
|-&lt;br /&gt;
!chan_beqz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfa, addr&lt;br /&gt;
|Jump if Q == 0, where Q is an s8 used to hold temporary channel script state&lt;br /&gt;
|-&lt;br /&gt;
!chan_bltz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf9, addr&lt;br /&gt;
|Jump if Q &amp;lt; 0&lt;br /&gt;
|-&lt;br /&gt;
!chan_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!chan_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!chan_break&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf6&lt;br /&gt;
|Decrease loop/function stack depth by 1. Combine with a jump to break out of a loop.&lt;br /&gt;
|-&lt;br /&gt;
!chan_bgez&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf5, addr&lt;br /&gt;
|Jump if Q &amp;gt;= 0&lt;br /&gt;
|-&lt;br /&gt;
!chan_hang&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf3&lt;br /&gt;
|Infinite delay.&lt;br /&gt;
|-&lt;br /&gt;
!chan_reservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf2, u8&lt;br /&gt;
|Reserve X notes for exclusive use by this channel (dropping earlier reservations).&lt;br /&gt;
|-&lt;br /&gt;
!chan_unreservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf1&lt;br /&gt;
|Drop all earlier reservations made by this channel.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dyncall&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe4&lt;br /&gt;
|If Q != -1, make a function call to position dyntable[Q], where dyntable is a channel-specific u16 array which can set by &amp;lt;code&amp;gt;setdyntable&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;dynsetdyntable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratodelay&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe3, u8&lt;br /&gt;
|Set delay until vibrato starts for each note.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoextentlinear&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe2, u8, u8, u8&lt;br /&gt;
|Set vibrato extent for each note as a function that starts at X, goes up linearly to Y over a time span given by Z, then stays there.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoratelinear&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe1, u8, u8, u8&lt;br /&gt;
|Like above except for vibrato rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvolscale&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe0, u8&lt;br /&gt;
|Set scale factor for volume (0…255 = none to twice normal).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdf, u8&lt;br /&gt;
|Set scale factor #2 for volume (0…255 = none to twice normal). The two scale factors are separately controlled by outer audio logic, e.g. when changing between rooms, when playing sound effects, etc. The game almost exclusively uses setvol, so that should probably be preferred, but setvolscale shows up in a few locations in the sound effect sequence.&lt;br /&gt;
|-&lt;br /&gt;
!chan_freqscale&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xde, u16&lt;br /&gt;
|Pitch bend using a raw frequency multiplier X/2^15.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setpan&lt;br /&gt;
|pan&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdd, u8&lt;br /&gt;
|Set the pan for this channel (0…128)&lt;br /&gt;
|-&lt;br /&gt;
!chan_setpanchanweight&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdc, u8&lt;br /&gt;
|The pan for each note will be computed as W * channel pan + (1 - W) * note pan. This sets W (0…128 maps to 0…1). W defaults to 1.0.&lt;br /&gt;
|-&lt;br /&gt;
!chan_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdb, s8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setenvelope&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xda, addr&lt;br /&gt;
|Set ADSR envelope. See below for format.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setdecayrelease&lt;br /&gt;
|rate&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd9, u8&lt;br /&gt;
|Set ADSR decay/release rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoextent&lt;br /&gt;
|extent&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd8, u8&lt;br /&gt;
|Set vibrato extent.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratorate&lt;br /&gt;
|rate&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd7, u8&lt;br /&gt;
|Set vibrato rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setupdatesperframe&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd6, u8&lt;br /&gt;
|Seems like it was meant to set the number of updates per frame? But it doesn’t actually do anything.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setreverb&lt;br /&gt;
|reverb&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd4, u8&lt;br /&gt;
|Set amount of reverb (or “dry/wet mix”?).&lt;br /&gt;
|-&lt;br /&gt;
!chan_pitchbend&lt;br /&gt;
|bend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd3, s8&lt;br /&gt;
|Pitch bend by &amp;lt;= 1 octave in either direction (-127…127).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setsustain&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd2, u8&lt;br /&gt;
|Set ADSR sustain volume.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setnoteallocationpolicy&lt;br /&gt;
|policyMask&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd1, u8&lt;br /&gt;
|Set note allocation policy for channel. See the description for sequence scripts.&lt;br /&gt;
|-&lt;br /&gt;
!chan_stereoheadseteffects&lt;br /&gt;
|enable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd0, u8&lt;br /&gt;
|Enable (1) or disable (0) some pan/volume effects related to stereo/headset. I don’t know which ones precisely – pan ''is'' still taken into account even with this disabled. With this disabled, stereo/headset gets the same output.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setval&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xcc, u8&lt;br /&gt;
|Set Q to a constant.&lt;br /&gt;
|-&lt;br /&gt;
!chan_readseq&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xcb, addr&lt;br /&gt;
|Set Q to sequenceData[X + Q].&lt;br /&gt;
|-&lt;br /&gt;
!chan_setmutebhv&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xca, u8&lt;br /&gt;
|Set mute behavior for this channel.&lt;br /&gt;
|-&lt;br /&gt;
!chan_bitand&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Bitand Q by a constant.&lt;br /&gt;
|-&lt;br /&gt;
!chan_subtract&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc8, u8&lt;br /&gt;
|Subtract a constant from Q.&lt;br /&gt;
|-&lt;br /&gt;
!chan_writeseq&lt;br /&gt;
|&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xc7, u8, addr&lt;br /&gt;
|Overwrite the byte at the given position in the sequence script by (Q + X).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setbank&lt;br /&gt;
|bank&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc6, u8&lt;br /&gt;
|Switch bank within instrument bank sets, to the X’th bank, 0-indexed, counting from the end.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dynsetdyntable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc5&lt;br /&gt;
|If Q != -1, set dyntable to point to position dyntable[Q] in the sequence data.&lt;br /&gt;
|-&lt;br /&gt;
!chan_largenoteson&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc4&lt;br /&gt;
|Set notes for this channel to use “large notes” format. SM64 does this for all channels. (See &amp;lt;code&amp;gt;note&amp;lt;/code&amp;gt; vs. &amp;lt;code&amp;gt;shortnote&amp;lt;/code&amp;gt; in the layer section below.)&lt;br /&gt;
|-&lt;br /&gt;
!chan_largenotesoff&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc3&lt;br /&gt;
|Set notes for this channel to use “short notes” format.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setdyntable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc2, addr&lt;br /&gt;
|Set dyntable to point to a given u16 array from the sequence data.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setinstr&lt;br /&gt;
|instrument&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc1, u8&lt;br /&gt;
|Set instrument (program?) within bank. 0x80-0x83 set raw waves (sawtooth, triangle, sine, square), 0x7f is special, otherwise 0-indexed.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dynsetlayer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xb0-0xbf&lt;br /&gt;
|If Q != -1, start layer N, with layer script given by dyntable[Q].&lt;br /&gt;
|-&lt;br /&gt;
!chan_freelayer&lt;br /&gt;
|layer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xa0-0xaf&lt;br /&gt;
|Stop layer N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setlayer&lt;br /&gt;
|layer&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0x90-0x9f, addr&lt;br /&gt;
|Start layer N, with layer script starting at address X.&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadval&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0x8f&lt;br /&gt;
|Set Q to IO[N], where IO is an array of bytes that can be read/written by both the game and the channel script. If N &amp;lt; 4, IO[N] is then set to -1.&lt;br /&gt;
|-&lt;br /&gt;
!chan_iowriteval&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x70-0x7f&lt;br /&gt;
|Set IO[N] to Q.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setnotepriority&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x60-0x6f&lt;br /&gt;
|Set note priority for later notes played on this channel to N. When the game wants to play a note and there aren’t any free notes available, a note with smaller or equal priority is discarded. Should be &amp;gt;= 2; 0 and 1 have internal meaning. Defaults to 3.&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadvalsub&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x50-0x5f&lt;br /&gt;
|Decrease Q by IO[N].&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadval2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x4f, u8&lt;br /&gt;
|Set Q to IO2[X], where IO2 is the IO array for channel N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_iowriteval2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x30-0x3f, u8&lt;br /&gt;
|Set IO2[X] to Q, where IO2 is the IO array for channel N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_disablechannel&lt;br /&gt;
|channel&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x20-0x2f&lt;br /&gt;
|Disable channel N for the parent sequence.&lt;br /&gt;
|-&lt;br /&gt;
!chan_startchannel&lt;br /&gt;
|channel&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0x10-0x1f, addr&lt;br /&gt;
|Start channel N for the parent sequence, with channel script starting at address X.&lt;br /&gt;
|-&lt;br /&gt;
!chan_testlayerfinished&lt;br /&gt;
|layer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x0f&lt;br /&gt;
|Set Q to 1 or 0, depending on whether layer N has been disabled (either forcibly or by finishing its script).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Layer commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Param 3&lt;br /&gt;
!Param 4&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!layer_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!layer_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!layer_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the layer script&lt;br /&gt;
|-&lt;br /&gt;
!layer_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!layer_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotedurationfromtable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe0-0xef&lt;br /&gt;
|Set the duration for future short notes to table[N], where table defaults to &amp;lt;code&amp;gt;{229, 203, 177, 151, 139, 126, 113, 100, 87, 74, 61, 48, 36, 23, 10, 0}&amp;lt;/code&amp;gt; and can be set by &amp;lt;code&amp;gt;setshortnotedurationtable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotevelocityfromtable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd0-0xdf&lt;br /&gt;
|Set the velocity for future short notes to table[N], where table defaults to &amp;lt;code&amp;gt;{12, 25, 38, 51, 57, 64, 71, 76, 83, 89, 96, 102, 109, 115, 121, 127}&amp;lt;/code&amp;gt; and can be set by &amp;lt;code&amp;gt;setshortnotevelocitytable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setpan&lt;br /&gt;
|pan&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xca, u8&lt;br /&gt;
|Set the pan for this layer (0…128).&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnoteduration&lt;br /&gt;
|duration&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Set the duration for future short notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_disableportamento&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc8&lt;br /&gt;
|Disable portamento for later notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_portamento&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc7, u8, u8, u8/var&lt;br /&gt;
|Enable portamento (aka glissando; continuously sliding pitch). X describes the mode of operation somehow using its 0x80 bit and a value 0-5 in its lower-order bits. Y describes the target pitch. Z gives the duration, and is a u8 if the 0x80 bit is set, otherwise a var.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setinstr&lt;br /&gt;
|instrument&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc6, u8&lt;br /&gt;
|Set instrument/program. Similar to the channel command, except arguments 0x7f and above are not supported.&lt;br /&gt;
|-&lt;br /&gt;
!layer_somethingoff&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc5&lt;br /&gt;
|Turn off some bool related to how notes decay somehow? (This is the default.)&lt;br /&gt;
|-&lt;br /&gt;
!layer_somethingon&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc4&lt;br /&gt;
|Turn on the same thing.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotedefaultplaypercentage&lt;br /&gt;
|percentage&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc3, var&lt;br /&gt;
|Set the default play percentage for short notes (see below).&lt;br /&gt;
|-&lt;br /&gt;
!layer_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc2, u8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotevelocity&lt;br /&gt;
|velocity&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc1, u8&lt;br /&gt;
|Set velocity for future short notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc0, var&lt;br /&gt;
|Delay for N ticks&lt;br /&gt;
|-&lt;br /&gt;
!layer_note0&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|velocity&lt;br /&gt;
|duration&lt;br /&gt;
|0x00-0x3f, var, u8, u8&lt;br /&gt;
|Play note with specified pitch, percentage, velocity and duration. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_note1&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|velocity&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x7f, var, u8&lt;br /&gt;
|Play note with specified pitch, percentage and velocity and duration of 0. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_note2&lt;br /&gt;
|pitch&lt;br /&gt;
|velocity&lt;br /&gt;
|duration&lt;br /&gt;
|&lt;br /&gt;
|0x80-0xbf, u8, u8&lt;br /&gt;
|Play note with specified pitch, velocity and duration. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote0&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x3f, var&lt;br /&gt;
|Play note with specified pitch and percentage and velocity and duration set with layer_setshortnotevelocity and layer_setshortnoteduration. Only valid if channel is set to “small notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote1&lt;br /&gt;
|pitch&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x7f&lt;br /&gt;
|Play note with specified pitch and the default play percentage, as set by layer_setshortnotedefaultplaypercentage (there is no built-in default; using it without that command will read uninitialized memory). Velocity and duration is set like in layer_smallnote0. Only valid if channel is set to “small notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote2&lt;br /&gt;
|pitch&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0xbf&lt;br /&gt;
|Play note with specified pitch and the previous play percentage. Velocity and duration is set like in layer_smallnote0. Only valid if channel is set to “small notes”.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.smwcentral.net/?p=section&amp;amp;s=sm64music Custom music] for SM64 on SMW Central&lt;br /&gt;
* [https://hackmd.io/opEB-OmxRa26P8h8pA-x7w m64 format] posted on HackMD&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Warp&amp;diff=109</id>
		<title>Warp</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Warp&amp;diff=109"/>
		<updated>2025-11-22T21:12:11Z</updated>

		<summary type="html">&lt;p&gt;Tenry: More details on how to connect places.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Warps are used to teleport Mario from one location to another in the same area, a different area or different level. They can be connected to each other within a level, between different areas or levels.&lt;br /&gt;
&lt;br /&gt;
Warps are defined per area by the following properties:&lt;br /&gt;
&lt;br /&gt;
* '''Warp type''': one of Warp, Painting, Instant&lt;br /&gt;
* '''Warp ID''', also known as source ID: value from 0x00 to 0xFF unique per area&lt;br /&gt;
** Commonly set to 0x0A for the area starting location&lt;br /&gt;
** IDs 0xF0 - 0xF3, 0xF8, 0xF9 and 0xFA have special meanings&lt;br /&gt;
*** 0xF0 is used on level success (after Mario grabbed a star)&lt;br /&gt;
*** 0xF1 is used on level failure&lt;br /&gt;
* '''Destination level'''&lt;br /&gt;
* '''Destination area'''&lt;br /&gt;
* '''Destination node''': ID given to the warp object (param 2) that's placed in the target area.&lt;br /&gt;
In order to connect two places with each other, you would need to:&lt;br /&gt;
&lt;br /&gt;
# Place a ''warps'' object in the destination area (e.g. &amp;quot;Warps 60 (Instant Active)&amp;quot;).&lt;br /&gt;
## Give the warp object an ID (param 2) unique in the destination area, for example 0xB1.&lt;br /&gt;
# Define the warp node in the source area.&lt;br /&gt;
## Give it an ID unique to the current area and not reserved for special purposes (see above), for example 0xA1.&lt;br /&gt;
## For the destination node, select the warp object ID, for example 0xB1.&lt;br /&gt;
# Place a &amp;quot;Warp&amp;quot; object in the source area that shall trigger the warp.&lt;br /&gt;
## Set param 2 to the warp node to trigger (as defined in the source area), for example 0xA1.&lt;br /&gt;
## Optionally set param 1 to specify the radius of the warp (in 10 units). Default (0x00) is 50 units, 0xFF is 10,000 units. The height is always 50 units.&lt;br /&gt;
&lt;br /&gt;
Using the example values above, a warp object may trigger the warp node 0xA1 in the source area, teleporting Mario to the warp object 0xB1 in the destination.&lt;br /&gt;
&lt;br /&gt;
In order to create a warp to the other direction, simple follow the same steps again, with source and destination areas reversed.&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Music_sequence&amp;diff=108</id>
		<title>Music sequence</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Music_sequence&amp;diff=108"/>
		<updated>2025-11-21T20:01:18Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Use #include syntax for manual sequence format&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;dasdasdasdMusic in Super Mario 64 is controlled by sequence files. They are in .m64 format, which is similar to [[wikipedia:MIDI|MIDI]]. A sequence file has a sequence script, that can spawn channels, which have channel scripts, that can spawn layers (also known as tracks), which have layer scripts that can play notes. Each note is performed using an instrument from a sound bank. A sequence file can use multiple banks. The mapping from sequences to sound banks is described in '''sound/sequences.json'''. Channels can switch between banks using a command. However, in practice most sequences limit themselves to a single sound bank. The main exception is sequence 0, which is responsible for sound effects.&lt;br /&gt;
&lt;br /&gt;
A sequence may play up to 16 channels with up to 4 layers per channel. Several notes can be played simultaneously on a single layer.&lt;br /&gt;
&lt;br /&gt;
A sequence is played as long as the sequence script is not ended. A channel (including layers) is active as long as the channel script is not ended.&lt;br /&gt;
&lt;br /&gt;
== Note properties ==&lt;br /&gt;
A note can be played by the commands &amp;lt;code&amp;gt;layer_note0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;layer_note1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;layer_note2&amp;lt;/code&amp;gt; (only valid if &amp;lt;code&amp;gt;chan_largenoteson&amp;lt;/code&amp;gt; has been called on the layer's channel) or &amp;lt;code&amp;gt;layer_smallnote0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;layer_smallnote1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;layer_smallnote2&amp;lt;/code&amp;gt; (only valid if &amp;lt;code&amp;gt;chan_largenotesoff&amp;lt;/code&amp;gt; has been called on the layer's channel; default state). A note is defined by the following properties:&lt;br /&gt;
&lt;br /&gt;
=== Pitch ===&lt;br /&gt;
Also known as '''note'''. The pitch defines the frequency in which the instrument is to be played. See list of notes below for available pitches.&lt;br /&gt;
&lt;br /&gt;
=== Play percentage ===&lt;br /&gt;
Also known as '''timestamp'''. This defines the note value, such as half or quarter note. This also implies a layer delay of the same amount. See note values below for possible values.&lt;br /&gt;
&lt;br /&gt;
=== Velocity ===&lt;br /&gt;
This is the volume of the note.&lt;br /&gt;
&lt;br /&gt;
=== Duration ===&lt;br /&gt;
Also known as '''gate''' or '''gate time'''. A value of 0 menas the note is heard during the whole percentage, 128 is half of the percentage and 255 almost none.&lt;br /&gt;
&lt;br /&gt;
== List of notes ==&lt;br /&gt;
This is a list of notes as used by the ''layer_note#'' and ''layer_smallnote#'' commands.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Octave&lt;br /&gt;
!Note&lt;br /&gt;
!Decimal&lt;br /&gt;
!Hex (note0)&lt;br /&gt;
!Hex (note1)&lt;br /&gt;
!Hex (note2)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |0&lt;br /&gt;
!A&lt;br /&gt;
|0&lt;br /&gt;
|0x00&lt;br /&gt;
|0x40&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|1&lt;br /&gt;
|0x01&lt;br /&gt;
|0x41&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|2&lt;br /&gt;
|0x02&lt;br /&gt;
|0x42&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |1&lt;br /&gt;
!C&lt;br /&gt;
|3&lt;br /&gt;
|0x03&lt;br /&gt;
|0x43&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|4&lt;br /&gt;
|0x04&lt;br /&gt;
|0x44&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|5&lt;br /&gt;
|0x05&lt;br /&gt;
|0x45&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|6&lt;br /&gt;
|0x06&lt;br /&gt;
|0x46&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|7&lt;br /&gt;
|0x07&lt;br /&gt;
|0x47&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|8&lt;br /&gt;
|0x08&lt;br /&gt;
|0x48&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|9&lt;br /&gt;
|0x09&lt;br /&gt;
|0x49&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|10&lt;br /&gt;
|0x0A&lt;br /&gt;
|0x4A&lt;br /&gt;
|0x8A&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|11&lt;br /&gt;
|0x0B&lt;br /&gt;
|0x4B&lt;br /&gt;
|0x8B&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|12&lt;br /&gt;
|0x0C&lt;br /&gt;
|0x4C&lt;br /&gt;
|0x8C&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|13&lt;br /&gt;
|0x0D&lt;br /&gt;
|0x4D&lt;br /&gt;
|0x8D&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|14&lt;br /&gt;
|0x0E&lt;br /&gt;
|0x4E&lt;br /&gt;
|0x8E&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |2&lt;br /&gt;
!C&lt;br /&gt;
|15&lt;br /&gt;
|0x0F&lt;br /&gt;
|0x4F&lt;br /&gt;
|0x8F&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|16&lt;br /&gt;
|0x10&lt;br /&gt;
|0x50&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|17&lt;br /&gt;
|0x11&lt;br /&gt;
|0x51&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|18&lt;br /&gt;
|0x12&lt;br /&gt;
|0x52&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|19&lt;br /&gt;
|0x13&lt;br /&gt;
|0x53&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|20&lt;br /&gt;
|0x14&lt;br /&gt;
|0x54&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|21&lt;br /&gt;
|0x15&lt;br /&gt;
|0x55&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|22&lt;br /&gt;
|0x16&lt;br /&gt;
|0x56&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|23&lt;br /&gt;
|0x17&lt;br /&gt;
|0x57&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|24&lt;br /&gt;
|0x18&lt;br /&gt;
|0x58&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|25&lt;br /&gt;
|0x19&lt;br /&gt;
|0x59&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|26&lt;br /&gt;
|0x1A&lt;br /&gt;
|0x5A&lt;br /&gt;
|0x9A&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |3&lt;br /&gt;
!C&lt;br /&gt;
|27&lt;br /&gt;
|0x1B&lt;br /&gt;
|0x5B&lt;br /&gt;
|0x9B&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|28&lt;br /&gt;
|0x1C&lt;br /&gt;
|0x5C&lt;br /&gt;
|0x9C&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|29&lt;br /&gt;
|0x1D&lt;br /&gt;
|0x5D&lt;br /&gt;
|0x9D&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|30&lt;br /&gt;
|0x1E&lt;br /&gt;
|0x5E&lt;br /&gt;
|0x9E&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|31&lt;br /&gt;
|0x1F&lt;br /&gt;
|0x5F&lt;br /&gt;
|0x9F&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|32&lt;br /&gt;
|0x20&lt;br /&gt;
|0x60&lt;br /&gt;
|0xA0&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|33&lt;br /&gt;
|0x21&lt;br /&gt;
|0x61&lt;br /&gt;
|0xA1&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|34&lt;br /&gt;
|0x22&lt;br /&gt;
|0x62&lt;br /&gt;
|0xA2&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|35&lt;br /&gt;
|0x23&lt;br /&gt;
|0x63&lt;br /&gt;
|0xA3&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|36&lt;br /&gt;
|0x24&lt;br /&gt;
|0x64&lt;br /&gt;
|0xA4&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|37&lt;br /&gt;
|0x25&lt;br /&gt;
|0x65&lt;br /&gt;
|0xA5&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|38&lt;br /&gt;
|0x26&lt;br /&gt;
|0x66&lt;br /&gt;
|0xA6&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |4&lt;br /&gt;
!C&lt;br /&gt;
|39&lt;br /&gt;
|0x27&lt;br /&gt;
|0x67&lt;br /&gt;
|0xA7&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|40&lt;br /&gt;
|0x28&lt;br /&gt;
|0x68&lt;br /&gt;
|0xA8&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|41&lt;br /&gt;
|0x29&lt;br /&gt;
|0x69&lt;br /&gt;
|0xA9&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|42&lt;br /&gt;
|0x2A&lt;br /&gt;
|0x6A&lt;br /&gt;
|0xAA&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|43&lt;br /&gt;
|0x2B&lt;br /&gt;
|0x6B&lt;br /&gt;
|0xAB&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|44&lt;br /&gt;
|0x2C&lt;br /&gt;
|0x6C&lt;br /&gt;
|0xAC&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|45&lt;br /&gt;
|0x2D&lt;br /&gt;
|0x6D&lt;br /&gt;
|0xAD&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|46&lt;br /&gt;
|0x2E&lt;br /&gt;
|0x6E&lt;br /&gt;
|0xAE&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|47&lt;br /&gt;
|0x2F&lt;br /&gt;
|0x6F&lt;br /&gt;
|0xAF&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|48&lt;br /&gt;
|0x30&lt;br /&gt;
|0x70&lt;br /&gt;
|0xB0&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|49&lt;br /&gt;
|0x31&lt;br /&gt;
|0x71&lt;br /&gt;
|0xB1&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|50&lt;br /&gt;
|0x32&lt;br /&gt;
|0x72&lt;br /&gt;
|0xB2&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |5&lt;br /&gt;
!C&lt;br /&gt;
|51&lt;br /&gt;
|0x33&lt;br /&gt;
|0x73&lt;br /&gt;
|0xB3&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|52&lt;br /&gt;
|0x34&lt;br /&gt;
|0x74&lt;br /&gt;
|0xB4&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|53&lt;br /&gt;
|0x35&lt;br /&gt;
|0x75&lt;br /&gt;
|0xB5&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|54&lt;br /&gt;
|0x36&lt;br /&gt;
|0x76&lt;br /&gt;
|0xB6&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|55&lt;br /&gt;
|0x37&lt;br /&gt;
|0x77&lt;br /&gt;
|0xB7&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|56&lt;br /&gt;
|0x38&lt;br /&gt;
|0x78&lt;br /&gt;
|0xB8&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|57&lt;br /&gt;
|0x39&lt;br /&gt;
|0x79&lt;br /&gt;
|0xB9&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|58&lt;br /&gt;
|0x3A&lt;br /&gt;
|0x7A&lt;br /&gt;
|0xBA&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|59&lt;br /&gt;
|0x3B&lt;br /&gt;
|0x7B&lt;br /&gt;
|0xBB&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|60&lt;br /&gt;
|0x3C&lt;br /&gt;
|0x7C&lt;br /&gt;
|0xBC&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|61&lt;br /&gt;
|0x3D&lt;br /&gt;
|0x7D&lt;br /&gt;
|0xBD&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|62&lt;br /&gt;
|0x3E&lt;br /&gt;
|0x7E&lt;br /&gt;
|0xBE&lt;br /&gt;
|-&lt;br /&gt;
!6&lt;br /&gt;
!C&lt;br /&gt;
|63&lt;br /&gt;
|0x3F&lt;br /&gt;
|0x7F&lt;br /&gt;
|0xBF&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Note durations ==&lt;br /&gt;
The effective duration of a note and the delay commands is based on the currently set sequence tempo. The duration of a single tick in seconds can be calculated using the following formular: &amp;lt;code&amp;gt;time = 1.25 / tempo&amp;lt;/code&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Note&lt;br /&gt;
!Ticks&lt;br /&gt;
!Duration (120 BPM)&lt;br /&gt;
|-&lt;br /&gt;
|whole&lt;br /&gt;
|192&lt;br /&gt;
|2s&lt;br /&gt;
|-&lt;br /&gt;
|half dotted (2nd + 4th)&lt;br /&gt;
|144&lt;br /&gt;
|1.5s&lt;br /&gt;
|-&lt;br /&gt;
|half&lt;br /&gt;
|96&lt;br /&gt;
|1s&lt;br /&gt;
|-&lt;br /&gt;
|quarter dottet (4th + 8th)&lt;br /&gt;
|72&lt;br /&gt;
|0.75s&lt;br /&gt;
|-&lt;br /&gt;
|quarter (4th)&lt;br /&gt;
|48&lt;br /&gt;
|0.5s&lt;br /&gt;
|-&lt;br /&gt;
|eighth dottet (8th + 16th)&lt;br /&gt;
|36&lt;br /&gt;
|0.375s&lt;br /&gt;
|-&lt;br /&gt;
|quarter tuplet&lt;br /&gt;
|32&lt;br /&gt;
|0.333s&lt;br /&gt;
|-&lt;br /&gt;
|eighth (8th)&lt;br /&gt;
|24&lt;br /&gt;
|0.25s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth dottet (16th + 32th)&lt;br /&gt;
|18&lt;br /&gt;
|0.1875s&lt;br /&gt;
|-&lt;br /&gt;
|eigthth tuplet&lt;br /&gt;
|16&lt;br /&gt;
|0.1666s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth (16th)&lt;br /&gt;
|12&lt;br /&gt;
|0.125s&lt;br /&gt;
|-&lt;br /&gt;
|32th dottet (32th + 64th)&lt;br /&gt;
|9&lt;br /&gt;
|0.09375s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth tuplet (16th)&lt;br /&gt;
|8&lt;br /&gt;
|0.08333s&lt;br /&gt;
|-&lt;br /&gt;
|32th&lt;br /&gt;
|6&lt;br /&gt;
|0.0625s&lt;br /&gt;
|-&lt;br /&gt;
|32th tuplet&lt;br /&gt;
|4&lt;br /&gt;
|0.041666s&lt;br /&gt;
|-&lt;br /&gt;
|64th&lt;br /&gt;
|3&lt;br /&gt;
|0.03125s&lt;br /&gt;
|-&lt;br /&gt;
|64th tuplet&lt;br /&gt;
|2&lt;br /&gt;
|0.0208333s&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Create sequences ==&lt;br /&gt;
There are several ways for creating new sequence files.&lt;br /&gt;
&lt;br /&gt;
=== Seq64 ===&lt;br /&gt;
Seq64 is a GUI program for editing sequence files for Super Mario 64 and other Nintendo games. It also features full MIDI importing and exporting.&lt;br /&gt;
&lt;br /&gt;
https://github.com/sauraen/seq64&lt;br /&gt;
&lt;br /&gt;
=== Manually ===&lt;br /&gt;
Sequence files can also be created manually in a textual format. Create a new assembly file in the sequences directory, for example '''sound/sequences/us/23_custom_sequence.s'''. This file should begin with the following header:&amp;lt;syntaxhighlight lang=&amp;quot;asm&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;seq_macros.inc&amp;quot;&lt;br /&gt;
.section .rodata&lt;br /&gt;
.align 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Next you can write down a series of commands. See '''include/seq_macros.inc''' or https://hackmd.io/opEB-OmxRa26P8h8pA-x7w for a list of available commands.&lt;br /&gt;
&lt;br /&gt;
== Commands ==&lt;br /&gt;
&lt;br /&gt;
=== Sequence commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!seq_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!seq_delay1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfe&lt;br /&gt;
|Delay for 1 tick&lt;br /&gt;
|-&lt;br /&gt;
!seq_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|0xfd, var&lt;br /&gt;
|Delay for X ticks&lt;br /&gt;
|-&lt;br /&gt;
!seq_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!seq_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the sequence script&lt;br /&gt;
|-&lt;br /&gt;
!seq_beqz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfa, addr&lt;br /&gt;
|Jump if Q == 0, where Q is an s8 used to hold temporary sequence script state&lt;br /&gt;
|-&lt;br /&gt;
!seq_bltz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xf9, addr&lt;br /&gt;
|Jump if Q &amp;lt; 0&lt;br /&gt;
|-&lt;br /&gt;
!seq_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!seq_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!seq_bgez&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xf5, addr&lt;br /&gt;
|Jump if Q &amp;gt;= 0&lt;br /&gt;
|-&lt;br /&gt;
!seq_reservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|0xf2, u8&lt;br /&gt;
|Reserve X notes for exclusive use by this sequence (dropping earlier reservations). A limited number of notes can be played at once (configurable per level, usually 16); if more than that are played, an existing one will be stopped and reused. This command can prevent that from happening across sequences.&lt;br /&gt;
|-&lt;br /&gt;
!seq_unreservenotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf1&lt;br /&gt;
|Drop all earlier reservations made by this sequence.&lt;br /&gt;
|-&lt;br /&gt;
!seq_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|0xdf, s8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!seq_transposerel&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|0xde, s8&lt;br /&gt;
|Change transposition by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_settempo&lt;br /&gt;
|tempo&lt;br /&gt;
|&lt;br /&gt;
|0xdd, u8&lt;br /&gt;
|Set tempo in BPM.&lt;br /&gt;
|-&lt;br /&gt;
!seq_addtempo&lt;br /&gt;
|tempo&lt;br /&gt;
|&lt;br /&gt;
|0xdc, s8&lt;br /&gt;
|Change tempo by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setvol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|0xdb, u8&lt;br /&gt;
|Set volume scale (0…255 = none to twice normal).&lt;br /&gt;
|-&lt;br /&gt;
!seq_changevol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|0xda, s8&lt;br /&gt;
|Change volume scale by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_initchannels&lt;br /&gt;
|channelMask&lt;br /&gt;
|&lt;br /&gt;
|0xd7, u16&lt;br /&gt;
|Initialize channels (bitmask). This copies mute behavior and note allocation policy.&lt;br /&gt;
|-&lt;br /&gt;
!seq_disablechannels&lt;br /&gt;
|channelMask&lt;br /&gt;
|&lt;br /&gt;
|0xd6, u16&lt;br /&gt;
|Uninitialize channels (bitmask).&lt;br /&gt;
|-&lt;br /&gt;
!seq_setmutescale&lt;br /&gt;
|mulitplier&lt;br /&gt;
|&lt;br /&gt;
|0xd5, s8&lt;br /&gt;
|Set volume multiplier for muted mode (0…127).&lt;br /&gt;
|-&lt;br /&gt;
!seq_mute&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd4&lt;br /&gt;
|Set sequence to muted mode. Depending on what behavior has been set this will do different things; from lowering volume to not running scripts.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setmutebhv&lt;br /&gt;
|bitmask&lt;br /&gt;
|&lt;br /&gt;
|0xd3, u8&lt;br /&gt;
|Set mute behavior (bitmask). Bit 0x20 lowers volume, bit 0x40 does something to layers, and bit 0x80 pauses the sequence script. Default mute behavior is to have all of those bits set.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setshortnotevelocitytable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xd2, addr&lt;br /&gt;
|Set velocity table for short notes (see further down). Target should be an array of bytes in the sequence data of length 16.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setshortnotedurationtable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xd1, addr&lt;br /&gt;
|Set duration table for short notes (see further down). Target should be an array of bytes in the sequence data of length 16.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setnoteallocationpolicy&lt;br /&gt;
|policyMask&lt;br /&gt;
|&lt;br /&gt;
|0xd0, u8&lt;br /&gt;
|Set note allocation policy (bitmask). If bit 0x1 is set, it will try to steal notes back from what was previously played on the same layer. If bit 0x2 is set, notes will be allocated exclusively from the channel’s reserved notes, else if 0x4 is set, from the channel’s or sequence’s reserved notes, else if 0x8 is set, from unreserved notes, otherwise from all sources. Not used by the game.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setval&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xcc, u8&lt;br /&gt;
|Set Q to a constant.&lt;br /&gt;
|-&lt;br /&gt;
!seq_bitand&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Bitand Q by a constant.&lt;br /&gt;
|-&lt;br /&gt;
!seq_subtract&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xc8, u8&lt;br /&gt;
|Subtract a constant from Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_startchannel&lt;br /&gt;
|channel&lt;br /&gt;
|address&lt;br /&gt;
|0x90-0x9f, addr&lt;br /&gt;
|Start channel N, with a given channel script.&lt;br /&gt;
|-&lt;br /&gt;
!seq_getvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0x8f&lt;br /&gt;
|Set Q to the variation bit, which is initially either 0 or 0x80 (i.e. -128, since Q is s8). This bit comes from the sequence load command. For instance, to play the Koopa shell music, the game plays sequence 0x8E, which is the same as sequence 0xE but with the variation bit set.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x70-0x7f&lt;br /&gt;
|Set the variation bit to Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_subvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x50-0x5f&lt;br /&gt;
|Subtract the variation bit from Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_testchdisabled&lt;br /&gt;
|channel&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x0f&lt;br /&gt;
|Set Q to 1 or 0, depending on whether channel N has been disabled by channel script.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Channel commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Param 3&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!chan_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!chan_delay1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfe&lt;br /&gt;
|Delay for 1 tick&lt;br /&gt;
|-&lt;br /&gt;
!chan_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfd, var&lt;br /&gt;
|Delay for X ticks&lt;br /&gt;
|-&lt;br /&gt;
!chan_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!chan_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the channel script&lt;br /&gt;
|-&lt;br /&gt;
!chan_beqz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfa, addr&lt;br /&gt;
|Jump if Q == 0, where Q is an s8 used to hold temporary channel script state&lt;br /&gt;
|-&lt;br /&gt;
!chan_bltz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf9, addr&lt;br /&gt;
|Jump if Q &amp;lt; 0&lt;br /&gt;
|-&lt;br /&gt;
!chan_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!chan_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!chan_break&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf6&lt;br /&gt;
|Decrease loop/function stack depth by 1. Combine with a jump to break out of a loop.&lt;br /&gt;
|-&lt;br /&gt;
!chan_bgez&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf5, addr&lt;br /&gt;
|Jump if Q &amp;gt;= 0&lt;br /&gt;
|-&lt;br /&gt;
!chan_hang&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf3&lt;br /&gt;
|Infinite delay.&lt;br /&gt;
|-&lt;br /&gt;
!chan_reservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf2, u8&lt;br /&gt;
|Reserve X notes for exclusive use by this channel (dropping earlier reservations).&lt;br /&gt;
|-&lt;br /&gt;
!chan_unreservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf1&lt;br /&gt;
|Drop all earlier reservations made by this channel.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dyncall&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe4&lt;br /&gt;
|If Q != -1, make a function call to position dyntable[Q], where dyntable is a channel-specific u16 array which can set by &amp;lt;code&amp;gt;setdyntable&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;dynsetdyntable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratodelay&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe3, u8&lt;br /&gt;
|Set delay until vibrato starts for each note.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoextentlinear&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe2, u8, u8, u8&lt;br /&gt;
|Set vibrato extent for each note as a function that starts at X, goes up linearly to Y over a time span given by Z, then stays there.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoratelinear&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe1, u8, u8, u8&lt;br /&gt;
|Like above except for vibrato rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvolscale&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe0, u8&lt;br /&gt;
|Set scale factor for volume (0…255 = none to twice normal).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdf, u8&lt;br /&gt;
|Set scale factor #2 for volume (0…255 = none to twice normal). The two scale factors are separately controlled by outer audio logic, e.g. when changing between rooms, when playing sound effects, etc. The game almost exclusively uses setvol, so that should probably be preferred, but setvolscale shows up in a few locations in the sound effect sequence.&lt;br /&gt;
|-&lt;br /&gt;
!chan_freqscale&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xde, u16&lt;br /&gt;
|Pitch bend using a raw frequency multiplier X/2^15.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setpan&lt;br /&gt;
|pan&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdd, u8&lt;br /&gt;
|Set the pan for this channel (0…128)&lt;br /&gt;
|-&lt;br /&gt;
!chan_setpanchanweight&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdc, u8&lt;br /&gt;
|The pan for each note will be computed as W * channel pan + (1 - W) * note pan. This sets W (0…128 maps to 0…1). W defaults to 1.0.&lt;br /&gt;
|-&lt;br /&gt;
!chan_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdb, s8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setenvelope&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xda, addr&lt;br /&gt;
|Set ADSR envelope. See below for format.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setdecayrelease&lt;br /&gt;
|rate&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd9, u8&lt;br /&gt;
|Set ADSR decay/release rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoextent&lt;br /&gt;
|extent&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd8, u8&lt;br /&gt;
|Set vibrato extent.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratorate&lt;br /&gt;
|rate&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd7, u8&lt;br /&gt;
|Set vibrato rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setupdatesperframe&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd6, u8&lt;br /&gt;
|Seems like it was meant to set the number of updates per frame? But it doesn’t actually do anything.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setreverb&lt;br /&gt;
|reverb&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd4, u8&lt;br /&gt;
|Set amount of reverb (or “dry/wet mix”?).&lt;br /&gt;
|-&lt;br /&gt;
!chan_pitchbend&lt;br /&gt;
|bend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd3, s8&lt;br /&gt;
|Pitch bend by &amp;lt;= 1 octave in either direction (-127…127).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setsustain&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd2, u8&lt;br /&gt;
|Set ADSR sustain volume.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setnoteallocationpolicy&lt;br /&gt;
|policyMask&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd1, u8&lt;br /&gt;
|Set note allocation policy for channel. See the description for sequence scripts.&lt;br /&gt;
|-&lt;br /&gt;
!chan_stereoheadseteffects&lt;br /&gt;
|enable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd0, u8&lt;br /&gt;
|Enable (1) or disable (0) some pan/volume effects related to stereo/headset. I don’t know which ones precisely – pan ''is'' still taken into account even with this disabled. With this disabled, stereo/headset gets the same output.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setval&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xcc, u8&lt;br /&gt;
|Set Q to a constant.&lt;br /&gt;
|-&lt;br /&gt;
!chan_readseq&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xcb, addr&lt;br /&gt;
|Set Q to sequenceData[X + Q].&lt;br /&gt;
|-&lt;br /&gt;
!chan_setmutebhv&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xca, u8&lt;br /&gt;
|Set mute behavior for this channel.&lt;br /&gt;
|-&lt;br /&gt;
!chan_bitand&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Bitand Q by a constant.&lt;br /&gt;
|-&lt;br /&gt;
!chan_subtract&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc8, u8&lt;br /&gt;
|Subtract a constant from Q.&lt;br /&gt;
|-&lt;br /&gt;
!chan_writeseq&lt;br /&gt;
|&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xc7, u8, addr&lt;br /&gt;
|Overwrite the byte at the given position in the sequence script by (Q + X).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setbank&lt;br /&gt;
|bank&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc6, u8&lt;br /&gt;
|Switch bank within instrument bank sets, to the X’th bank, 0-indexed, counting from the end.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dynsetdyntable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc5&lt;br /&gt;
|If Q != -1, set dyntable to point to position dyntable[Q] in the sequence data.&lt;br /&gt;
|-&lt;br /&gt;
!chan_largenoteson&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc4&lt;br /&gt;
|Set notes for this channel to use “large notes” format. SM64 does this for all channels. (See &amp;lt;code&amp;gt;note&amp;lt;/code&amp;gt; vs. &amp;lt;code&amp;gt;shortnote&amp;lt;/code&amp;gt; in the layer section below.)&lt;br /&gt;
|-&lt;br /&gt;
!chan_largenotesoff&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc3&lt;br /&gt;
|Set notes for this channel to use “short notes” format.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setdyntable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc2, addr&lt;br /&gt;
|Set dyntable to point to a given u16 array from the sequence data.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setinstr&lt;br /&gt;
|instrument&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc1, u8&lt;br /&gt;
|Set instrument (program?) within bank. 0x80-0x83 set raw waves (sawtooth, triangle, sine, square), 0x7f is special, otherwise 0-indexed.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dynsetlayer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xb0-0xbf&lt;br /&gt;
|If Q != -1, start layer N, with layer script given by dyntable[Q].&lt;br /&gt;
|-&lt;br /&gt;
!chan_freelayer&lt;br /&gt;
|layer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xa0-0xaf&lt;br /&gt;
|Stop layer N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setlayer&lt;br /&gt;
|layer&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0x90-0x9f, addr&lt;br /&gt;
|Start layer N, with layer script starting at address X.&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadval&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0x8f&lt;br /&gt;
|Set Q to IO[N], where IO is an array of bytes that can be read/written by both the game and the channel script. If N &amp;lt; 4, IO[N] is then set to -1.&lt;br /&gt;
|-&lt;br /&gt;
!chan_iowriteval&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x70-0x7f&lt;br /&gt;
|Set IO[N] to Q.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setnotepriority&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x60-0x6f&lt;br /&gt;
|Set note priority for later notes played on this channel to N. When the game wants to play a note and there aren’t any free notes available, a note with smaller or equal priority is discarded. Should be &amp;gt;= 2; 0 and 1 have internal meaning. Defaults to 3.&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadvalsub&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x50-0x5f&lt;br /&gt;
|Decrease Q by IO[N].&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadval2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x4f, u8&lt;br /&gt;
|Set Q to IO2[X], where IO2 is the IO array for channel N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_iowriteval2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x30-0x3f, u8&lt;br /&gt;
|Set IO2[X] to Q, where IO2 is the IO array for channel N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_disablechannel&lt;br /&gt;
|channel&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x20-0x2f&lt;br /&gt;
|Disable channel N for the parent sequence.&lt;br /&gt;
|-&lt;br /&gt;
!chan_startchannel&lt;br /&gt;
|channel&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0x10-0x1f, addr&lt;br /&gt;
|Start channel N for the parent sequence, with channel script starting at address X.&lt;br /&gt;
|-&lt;br /&gt;
!chan_testlayerfinished&lt;br /&gt;
|layer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x0f&lt;br /&gt;
|Set Q to 1 or 0, depending on whether layer N has been disabled (either forcibly or by finishing its script).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Layer commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Param 3&lt;br /&gt;
!Param 4&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!layer_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!layer_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!layer_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the layer script&lt;br /&gt;
|-&lt;br /&gt;
!layer_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!layer_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotedurationfromtable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe0-0xef&lt;br /&gt;
|Set the duration for future short notes to table[N], where table defaults to &amp;lt;code&amp;gt;{229, 203, 177, 151, 139, 126, 113, 100, 87, 74, 61, 48, 36, 23, 10, 0}&amp;lt;/code&amp;gt; and can be set by &amp;lt;code&amp;gt;setshortnotedurationtable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotevelocityfromtable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd0-0xdf&lt;br /&gt;
|Set the velocity for future short notes to table[N], where table defaults to &amp;lt;code&amp;gt;{12, 25, 38, 51, 57, 64, 71, 76, 83, 89, 96, 102, 109, 115, 121, 127}&amp;lt;/code&amp;gt; and can be set by &amp;lt;code&amp;gt;setshortnotevelocitytable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setpan&lt;br /&gt;
|pan&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xca, u8&lt;br /&gt;
|Set the pan for this layer (0…128).&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnoteduration&lt;br /&gt;
|duration&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Set the duration for future short notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_disableportamento&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc8&lt;br /&gt;
|Disable portamento for later notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_portamento&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc7, u8, u8, u8/var&lt;br /&gt;
|Enable portamento (aka glissando; continuously sliding pitch). X describes the mode of operation somehow using its 0x80 bit and a value 0-5 in its lower-order bits. Y describes the target pitch. Z gives the duration, and is a u8 if the 0x80 bit is set, otherwise a var.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setinstr&lt;br /&gt;
|instrument&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc6, u8&lt;br /&gt;
|Set instrument/program. Similar to the channel command, except arguments 0x7f and above are not supported.&lt;br /&gt;
|-&lt;br /&gt;
!layer_somethingoff&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc5&lt;br /&gt;
|Turn off some bool related to how notes decay somehow? (This is the default.)&lt;br /&gt;
|-&lt;br /&gt;
!layer_somethingon&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc4&lt;br /&gt;
|Turn on the same thing.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotedefaultplaypercentage&lt;br /&gt;
|percentage&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc3, var&lt;br /&gt;
|Set the default play percentage for short notes (see below).&lt;br /&gt;
|-&lt;br /&gt;
!layer_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc2, u8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotevelocity&lt;br /&gt;
|velocity&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc1, u8&lt;br /&gt;
|Set velocity for future short notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc0, var&lt;br /&gt;
|Delay for N ticks&lt;br /&gt;
|-&lt;br /&gt;
!layer_note0&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|velocity&lt;br /&gt;
|duration&lt;br /&gt;
|0x00-0x3f, var, u8, u8&lt;br /&gt;
|Play note with specified pitch, percentage, velocity and duration. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_note1&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|velocity&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x7f, var, u8&lt;br /&gt;
|Play note with specified pitch, percentage and velocity and duration of 0. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_note2&lt;br /&gt;
|pitch&lt;br /&gt;
|velocity&lt;br /&gt;
|duration&lt;br /&gt;
|&lt;br /&gt;
|0x80-0xbf, u8, u8&lt;br /&gt;
|Play note with specified pitch, velocity and duration. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote0&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x3f, var&lt;br /&gt;
|Play note with specified pitch and percentage and velocity and duration set with layer_setshortnotevelocity and layer_setshortnoteduration. Only valid if channel is set to “small notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote1&lt;br /&gt;
|pitch&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x7f&lt;br /&gt;
|Play note with specified pitch and the default play percentage, as set by layer_setshortnotedefaultplaypercentage (there is no built-in default; using it without that command will read uninitialized memory). Velocity and duration is set like in layer_smallnote0. Only valid if channel is set to “small notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote2&lt;br /&gt;
|pitch&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0xbf&lt;br /&gt;
|Play note with specified pitch and the previous play percentage. Velocity and duration is set like in layer_smallnote0. Only valid if channel is set to “small notes”.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.smwcentral.net/?p=section&amp;amp;s=sm64music Custom music] for SM64 on SMW Central&lt;br /&gt;
* [https://hackmd.io/opEB-OmxRa26P8h8pA-x7w m64 format] posted on HackMD&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Limitation&amp;diff=107</id>
		<title>Limitation</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Limitation&amp;diff=107"/>
		<updated>2020-11-15T13:56:04Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Redirected page to Level limitations&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Level limitations]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Sound&amp;diff=106</id>
		<title>Sound</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Sound&amp;diff=106"/>
		<updated>2020-11-11T18:27:26Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Redirected page to Sound effect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Sound effect]]&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Music&amp;diff=105</id>
		<title>Music</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Music&amp;diff=105"/>
		<updated>2020-11-11T18:26:59Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Redirected page to Music sequence&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Music sequence]]&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Coordinate_system&amp;diff=104</id>
		<title>Coordinate system</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Coordinate_system&amp;diff=104"/>
		<updated>2020-11-11T16:38:02Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;In a 3D coordinate system, you have three axes to define a location or direction: '''X''', '''Y''' and '''Z'''. While in 2D X is (almost) universally from left (negative) to r...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In a 3D coordinate system, you have three axes to define a location or direction: '''X''', '''Y''' and '''Z'''. While in 2D X is (almost) universally from left (negative) to right (positive) and Y is always vertically (sometimes from top to bottom, sometomes vice versa), in 3D games and engines the definition and relation of these coordinates differ. Super Mario 64 uses the right hand rule:&lt;br /&gt;
&lt;br /&gt;
* '''+X''' points right&lt;br /&gt;
* '''+Y''' points up&lt;br /&gt;
* '''+Z''' points out of the screen&lt;br /&gt;
&lt;br /&gt;
== Rotation ==&lt;br /&gt;
Super Mario 64 uses Euler angles '''pitch''', '''yaw''' and '''roll''' for rotation.&lt;br /&gt;
&lt;br /&gt;
* '''pitch''' is the rotation about the '''X-axis''', measured from +Y&lt;br /&gt;
** unlike yaw and roll, pitch is bounded in '''±0x4000''' (90 degrees)&lt;br /&gt;
* '''yaw''' is the rotation about the '''Y-axis''', measured from (absolute) +Z&lt;br /&gt;
** positive yaw rotates clockwise, towards +X&lt;br /&gt;
* '''roll''' is the rotation about the '''Z-axis''', measured from +X&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Levels&amp;diff=103</id>
		<title>Levels</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Levels&amp;diff=103"/>
		<updated>2020-11-11T16:14:15Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Redirected page to List of levels&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[List of levels]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Sound_effect&amp;diff=102</id>
		<title>Sound effect</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Sound_effect&amp;diff=102"/>
		<updated>2020-11-11T07:17:01Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sound effects in Super Mario 64 are played through the special [[Music sequence|sequence]] ''00_sound_player.s''. Although this seems to be an assembly file, assembly macros are used to actually output M64 sequence data, a proprietary format developed for Nintendo games.&lt;br /&gt;
&lt;br /&gt;
Many sound effects are not plain wave data being played back, but use some simple coding for dynamically changing the pitch or playing two sounds simultaneously or sequentially.&lt;br /&gt;
&lt;br /&gt;
The sample IDs that can be found in sound/samples do not relate to the IDs used in the code to play sound effect. Instead, you have to check for which channel the desired sound effect is set up to (see below) and check its table in ''00_sound_player.s'', such as &amp;lt;code&amp;gt;.channel59_table&amp;lt;/code&amp;gt;. The first entry per table has the ID &amp;lt;code&amp;gt;0x00&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Channels ==&lt;br /&gt;
The sound player sequence uses 10 channels for sound playback. Each channel is purposed for a category of sound effect, hence specific sound effects are available for that channel only.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Channel&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!0&lt;br /&gt;
|Jump, step, Mario actions etc.&lt;br /&gt;
|-&lt;br /&gt;
!1&lt;br /&gt;
|Moving, riding, coin&lt;br /&gt;
|-&lt;br /&gt;
!2&lt;br /&gt;
|Mario's voice&lt;br /&gt;
|-&lt;br /&gt;
!3 and 8&lt;br /&gt;
|Door, water, coin, chest, platform, cannon, key, yoshi and more&lt;br /&gt;
|-&lt;br /&gt;
!4&lt;br /&gt;
|Environmental sounds such as waterfall, elevator and wind&lt;br /&gt;
|-&lt;br /&gt;
!5 and 9&lt;br /&gt;
|Used for object sounds such as enemies, Bowser and cannon&lt;br /&gt;
|-&lt;br /&gt;
!6&lt;br /&gt;
|Air sounds&lt;br /&gt;
|-&lt;br /&gt;
!7&lt;br /&gt;
|Menu sounds including camera zoom and power meter&lt;br /&gt;
|}&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Sound_effect&amp;diff=101</id>
		<title>Sound effect</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Sound_effect&amp;diff=101"/>
		<updated>2020-11-11T07:16:47Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;Sound effects in Super Mario 64 are played through the special sequence ''00_sound_player.s''. Although this seems to be an assembly file, assembly macros a...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sound effects in Super Mario 64 are played through the special [[Music sequence|sequence]] ''00_sound_player.s''. Although this seems to be an assembly file, assembly macros are used to actually output M64 sequence data, a proprietary format developed for Nintendo games.&lt;br /&gt;
&lt;br /&gt;
Many sound effects are not plain wave data being played back, but use some simple coding for dynamically changing the pitch or playing two sounds simultaneously or sequentially.&lt;br /&gt;
&lt;br /&gt;
The sample IDs that can be found in sound/samples do not relate to the IDs used in the code to play sound effect. Instead, you have to check for which channel the desired sound effect is set up to (see below) and check its table in ''00_sound_player.s'', such as &amp;lt;code&amp;gt;.channel59_table&amp;lt;/code&amp;gt;. The first entry per table has the ID &amp;lt;code&amp;gt;0x00&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Channels ==&lt;br /&gt;
The sound player sequence uses 10 channels for sound playback. Each channel is purposed for a category of sound effect, hence specific sound effects are available for that channel only.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Channel&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Jump, step, Mario actions etc.&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Moving, riding, coin&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Mario's voice&lt;br /&gt;
|-&lt;br /&gt;
|3 and 8&lt;br /&gt;
|Door, water, coin, chest, platform, cannon, key, yoshi and more&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Environmental sounds such as waterfall, elevator and wind&lt;br /&gt;
|-&lt;br /&gt;
|5 and 9&lt;br /&gt;
|Used for object sounds such as enemies, Bowser and cannon&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Air sounds&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Menu sounds including camera zoom and power meter&lt;br /&gt;
|}&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Profiling&amp;diff=100</id>
		<title>Profiling</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Profiling&amp;diff=100"/>
		<updated>2020-11-11T07:04:08Z</updated>

		<summary type="html">&lt;p&gt;Tenry: update explanation on reference bars&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The game has a builtin profiler which can be enabled by setting &amp;lt;code&amp;gt;gShowProfiler&amp;lt;/code&amp;gt; to ''TRUE'' in '''src/game/main.c'''. When enabled, colored bars are shown at the bottom of the screen. Pressing L switches from mode 0 and 1.&lt;br /&gt;
&lt;br /&gt;
In mode 0, the colors of the top profilers have the following meanings:&lt;br /&gt;
&lt;br /&gt;
* Red: sound duration&lt;br /&gt;
* Yellow: level script execution&lt;br /&gt;
* Orange: render duration&lt;br /&gt;
&lt;br /&gt;
In mode 1, the colors of the top profilers have the following meanings:&lt;br /&gt;
&lt;br /&gt;
* Red (left): sound update times&lt;br /&gt;
* Yellow: gfx time related&lt;br /&gt;
* Orange: gfx time related&lt;br /&gt;
* Red (right): vblank time related&lt;br /&gt;
&lt;br /&gt;
The bottom line (blue, yellow, orange, red) are reference bars. Each one marks 1/60 of a second (NTSC). Since Super Mario 64 runs at 30 frames per second in the NTSC versions, two bars are available before the game starts to lag.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://tcrf.net/Super_Mario_64_(Nintendo_64)/Debug_Content Debug Content] on The Cutting Room Floor&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Profiling&amp;diff=99</id>
		<title>Profiling</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Profiling&amp;diff=99"/>
		<updated>2020-11-11T07:01:11Z</updated>

		<summary type="html">&lt;p&gt;Tenry: add link to tcrf.net&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The game has a builtin profiler which can be enabled by setting &amp;lt;code&amp;gt;gShowProfiler&amp;lt;/code&amp;gt; to ''TRUE'' in '''src/game/main.c'''. When enabled, colored bars are shown at the bottom of the screen. Pressing L switches from mode 0 and 1.&lt;br /&gt;
&lt;br /&gt;
In mode 0, the colors of the top profilers have the following meanings:&lt;br /&gt;
&lt;br /&gt;
* Red: sound duration&lt;br /&gt;
* Yellow: level script execution&lt;br /&gt;
* Orange: render duration&lt;br /&gt;
&lt;br /&gt;
In mode 1, the colors of the top profilers have the following meanings:&lt;br /&gt;
&lt;br /&gt;
* Red (left): sound update times&lt;br /&gt;
* Yellow: gfx time related&lt;br /&gt;
* Orange: gfx time related&lt;br /&gt;
* Red (right): vblank time related&lt;br /&gt;
&lt;br /&gt;
The bottom line (blue, yellow, orange, red) are reference bars for the maximum length.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://tcrf.net/Super_Mario_64_(Nintendo_64)/Debug_Content Debug Content] on The Cutting Room Floor&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Debugging&amp;diff=98</id>
		<title>Debugging</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Debugging&amp;diff=98"/>
		<updated>2020-11-11T07:00:32Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Redirected page to Profiling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Profiling]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Music_sequence&amp;diff=97</id>
		<title>Music sequence</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Music_sequence&amp;diff=97"/>
		<updated>2020-11-10T12:44:45Z</updated>

		<summary type="html">&lt;p&gt;Tenry: add formular for calculating tick length&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;dasdasdasdMusic in Super Mario 64 is controlled by sequence files. They are in .m64 format, which is similar to [[wikipedia:MIDI|MIDI]]. A sequence file has a sequence script, that can spawn channels, which have channel scripts, that can spawn layers (also known as tracks), which have layer scripts that can play notes. Each note is performed using an instrument from a sound bank. A sequence file can use multiple banks. The mapping from sequences to sound banks is described in '''sound/sequences.json'''. Channels can switch between banks using a command. However, in practice most sequences limit themselves to a single sound bank. The main exception is sequence 0, which is responsible for sound effects.&lt;br /&gt;
&lt;br /&gt;
A sequence may play up to 16 channels with up to 4 layers per channel. Several notes can be played simultaneously on a single layer.&lt;br /&gt;
&lt;br /&gt;
A sequence is played as long as the sequence script is not ended. A channel (including layers) is active as long as the channel script is not ended.&lt;br /&gt;
&lt;br /&gt;
== Note properties ==&lt;br /&gt;
A note can be played by the commands &amp;lt;code&amp;gt;layer_note0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;layer_note1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;layer_note2&amp;lt;/code&amp;gt; (only valid if &amp;lt;code&amp;gt;chan_largenoteson&amp;lt;/code&amp;gt; has been called on the layer's channel) or &amp;lt;code&amp;gt;layer_smallnote0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;layer_smallnote1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;layer_smallnote2&amp;lt;/code&amp;gt; (only valid if &amp;lt;code&amp;gt;chan_largenotesoff&amp;lt;/code&amp;gt; has been called on the layer's channel; default state). A note is defined by the following properties:&lt;br /&gt;
&lt;br /&gt;
=== Pitch ===&lt;br /&gt;
Also known as '''note'''. The pitch defines the frequency in which the instrument is to be played. See list of notes below for available pitches.&lt;br /&gt;
&lt;br /&gt;
=== Play percentage ===&lt;br /&gt;
Also known as '''timestamp'''. This defines the note value, such as half or quarter note. This also implies a layer delay of the same amount. See note values below for possible values.&lt;br /&gt;
&lt;br /&gt;
=== Velocity ===&lt;br /&gt;
This is the volume of the note.&lt;br /&gt;
&lt;br /&gt;
=== Duration ===&lt;br /&gt;
Also known as '''gate''' or '''gate time'''. A value of 0 menas the note is heard during the whole percentage, 128 is half of the percentage and 255 almost none.&lt;br /&gt;
&lt;br /&gt;
== List of notes ==&lt;br /&gt;
This is a list of notes as used by the ''layer_note#'' and ''layer_smallnote#'' commands.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Octave&lt;br /&gt;
!Note&lt;br /&gt;
!Decimal&lt;br /&gt;
!Hex (note0)&lt;br /&gt;
!Hex (note1)&lt;br /&gt;
!Hex (note2)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |0&lt;br /&gt;
!A&lt;br /&gt;
|0&lt;br /&gt;
|0x00&lt;br /&gt;
|0x40&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|1&lt;br /&gt;
|0x01&lt;br /&gt;
|0x41&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|2&lt;br /&gt;
|0x02&lt;br /&gt;
|0x42&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |1&lt;br /&gt;
!C&lt;br /&gt;
|3&lt;br /&gt;
|0x03&lt;br /&gt;
|0x43&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|4&lt;br /&gt;
|0x04&lt;br /&gt;
|0x44&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|5&lt;br /&gt;
|0x05&lt;br /&gt;
|0x45&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|6&lt;br /&gt;
|0x06&lt;br /&gt;
|0x46&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|7&lt;br /&gt;
|0x07&lt;br /&gt;
|0x47&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|8&lt;br /&gt;
|0x08&lt;br /&gt;
|0x48&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|9&lt;br /&gt;
|0x09&lt;br /&gt;
|0x49&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|10&lt;br /&gt;
|0x0A&lt;br /&gt;
|0x4A&lt;br /&gt;
|0x8A&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|11&lt;br /&gt;
|0x0B&lt;br /&gt;
|0x4B&lt;br /&gt;
|0x8B&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|12&lt;br /&gt;
|0x0C&lt;br /&gt;
|0x4C&lt;br /&gt;
|0x8C&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|13&lt;br /&gt;
|0x0D&lt;br /&gt;
|0x4D&lt;br /&gt;
|0x8D&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|14&lt;br /&gt;
|0x0E&lt;br /&gt;
|0x4E&lt;br /&gt;
|0x8E&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |2&lt;br /&gt;
!C&lt;br /&gt;
|15&lt;br /&gt;
|0x0F&lt;br /&gt;
|0x4F&lt;br /&gt;
|0x8F&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|16&lt;br /&gt;
|0x10&lt;br /&gt;
|0x50&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|17&lt;br /&gt;
|0x11&lt;br /&gt;
|0x51&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|18&lt;br /&gt;
|0x12&lt;br /&gt;
|0x52&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|19&lt;br /&gt;
|0x13&lt;br /&gt;
|0x53&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|20&lt;br /&gt;
|0x14&lt;br /&gt;
|0x54&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|21&lt;br /&gt;
|0x15&lt;br /&gt;
|0x55&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|22&lt;br /&gt;
|0x16&lt;br /&gt;
|0x56&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|23&lt;br /&gt;
|0x17&lt;br /&gt;
|0x57&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|24&lt;br /&gt;
|0x18&lt;br /&gt;
|0x58&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|25&lt;br /&gt;
|0x19&lt;br /&gt;
|0x59&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|26&lt;br /&gt;
|0x1A&lt;br /&gt;
|0x5A&lt;br /&gt;
|0x9A&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |3&lt;br /&gt;
!C&lt;br /&gt;
|27&lt;br /&gt;
|0x1B&lt;br /&gt;
|0x5B&lt;br /&gt;
|0x9B&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|28&lt;br /&gt;
|0x1C&lt;br /&gt;
|0x5C&lt;br /&gt;
|0x9C&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|29&lt;br /&gt;
|0x1D&lt;br /&gt;
|0x5D&lt;br /&gt;
|0x9D&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|30&lt;br /&gt;
|0x1E&lt;br /&gt;
|0x5E&lt;br /&gt;
|0x9E&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|31&lt;br /&gt;
|0x1F&lt;br /&gt;
|0x5F&lt;br /&gt;
|0x9F&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|32&lt;br /&gt;
|0x20&lt;br /&gt;
|0x60&lt;br /&gt;
|0xA0&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|33&lt;br /&gt;
|0x21&lt;br /&gt;
|0x61&lt;br /&gt;
|0xA1&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|34&lt;br /&gt;
|0x22&lt;br /&gt;
|0x62&lt;br /&gt;
|0xA2&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|35&lt;br /&gt;
|0x23&lt;br /&gt;
|0x63&lt;br /&gt;
|0xA3&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|36&lt;br /&gt;
|0x24&lt;br /&gt;
|0x64&lt;br /&gt;
|0xA4&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|37&lt;br /&gt;
|0x25&lt;br /&gt;
|0x65&lt;br /&gt;
|0xA5&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|38&lt;br /&gt;
|0x26&lt;br /&gt;
|0x66&lt;br /&gt;
|0xA6&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |4&lt;br /&gt;
!C&lt;br /&gt;
|39&lt;br /&gt;
|0x27&lt;br /&gt;
|0x67&lt;br /&gt;
|0xA7&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|40&lt;br /&gt;
|0x28&lt;br /&gt;
|0x68&lt;br /&gt;
|0xA8&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|41&lt;br /&gt;
|0x29&lt;br /&gt;
|0x69&lt;br /&gt;
|0xA9&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|42&lt;br /&gt;
|0x2A&lt;br /&gt;
|0x6A&lt;br /&gt;
|0xAA&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|43&lt;br /&gt;
|0x2B&lt;br /&gt;
|0x6B&lt;br /&gt;
|0xAB&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|44&lt;br /&gt;
|0x2C&lt;br /&gt;
|0x6C&lt;br /&gt;
|0xAC&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|45&lt;br /&gt;
|0x2D&lt;br /&gt;
|0x6D&lt;br /&gt;
|0xAD&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|46&lt;br /&gt;
|0x2E&lt;br /&gt;
|0x6E&lt;br /&gt;
|0xAE&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|47&lt;br /&gt;
|0x2F&lt;br /&gt;
|0x6F&lt;br /&gt;
|0xAF&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|48&lt;br /&gt;
|0x30&lt;br /&gt;
|0x70&lt;br /&gt;
|0xB0&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|49&lt;br /&gt;
|0x31&lt;br /&gt;
|0x71&lt;br /&gt;
|0xB1&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|50&lt;br /&gt;
|0x32&lt;br /&gt;
|0x72&lt;br /&gt;
|0xB2&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |5&lt;br /&gt;
!C&lt;br /&gt;
|51&lt;br /&gt;
|0x33&lt;br /&gt;
|0x73&lt;br /&gt;
|0xB3&lt;br /&gt;
|-&lt;br /&gt;
!C♯/D♭&lt;br /&gt;
|52&lt;br /&gt;
|0x34&lt;br /&gt;
|0x74&lt;br /&gt;
|0xB4&lt;br /&gt;
|-&lt;br /&gt;
!D&lt;br /&gt;
|53&lt;br /&gt;
|0x35&lt;br /&gt;
|0x75&lt;br /&gt;
|0xB5&lt;br /&gt;
|-&lt;br /&gt;
!D♯/E♭&lt;br /&gt;
|54&lt;br /&gt;
|0x36&lt;br /&gt;
|0x76&lt;br /&gt;
|0xB6&lt;br /&gt;
|-&lt;br /&gt;
!E&lt;br /&gt;
|55&lt;br /&gt;
|0x37&lt;br /&gt;
|0x77&lt;br /&gt;
|0xB7&lt;br /&gt;
|-&lt;br /&gt;
!F&lt;br /&gt;
|56&lt;br /&gt;
|0x38&lt;br /&gt;
|0x78&lt;br /&gt;
|0xB8&lt;br /&gt;
|-&lt;br /&gt;
!F♯/G♭&lt;br /&gt;
|57&lt;br /&gt;
|0x39&lt;br /&gt;
|0x79&lt;br /&gt;
|0xB9&lt;br /&gt;
|-&lt;br /&gt;
!G&lt;br /&gt;
|58&lt;br /&gt;
|0x3A&lt;br /&gt;
|0x7A&lt;br /&gt;
|0xBA&lt;br /&gt;
|-&lt;br /&gt;
!G♯/A♭&lt;br /&gt;
|59&lt;br /&gt;
|0x3B&lt;br /&gt;
|0x7B&lt;br /&gt;
|0xBB&lt;br /&gt;
|-&lt;br /&gt;
!A&lt;br /&gt;
|60&lt;br /&gt;
|0x3C&lt;br /&gt;
|0x7C&lt;br /&gt;
|0xBC&lt;br /&gt;
|-&lt;br /&gt;
!A♯/B♭&lt;br /&gt;
|61&lt;br /&gt;
|0x3D&lt;br /&gt;
|0x7D&lt;br /&gt;
|0xBD&lt;br /&gt;
|-&lt;br /&gt;
!B&lt;br /&gt;
|62&lt;br /&gt;
|0x3E&lt;br /&gt;
|0x7E&lt;br /&gt;
|0xBE&lt;br /&gt;
|-&lt;br /&gt;
!6&lt;br /&gt;
!C&lt;br /&gt;
|63&lt;br /&gt;
|0x3F&lt;br /&gt;
|0x7F&lt;br /&gt;
|0xBF&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Note durations ==&lt;br /&gt;
The effective duration of a note and the delay commands is based on the currently set sequence tempo. The duration of a single tick in seconds can be calculated using the following formular: &amp;lt;code&amp;gt;time = 1.25 / tempo&amp;lt;/code&amp;gt;.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Note&lt;br /&gt;
!Ticks&lt;br /&gt;
!Duration (120 BPM)&lt;br /&gt;
|-&lt;br /&gt;
|whole&lt;br /&gt;
|192&lt;br /&gt;
|2s&lt;br /&gt;
|-&lt;br /&gt;
|half dotted (2nd + 4th)&lt;br /&gt;
|144&lt;br /&gt;
|1.5s&lt;br /&gt;
|-&lt;br /&gt;
|half&lt;br /&gt;
|96&lt;br /&gt;
|1s&lt;br /&gt;
|-&lt;br /&gt;
|quarter dottet (4th + 8th)&lt;br /&gt;
|72&lt;br /&gt;
|0.75s&lt;br /&gt;
|-&lt;br /&gt;
|quarter (4th)&lt;br /&gt;
|48&lt;br /&gt;
|0.5s&lt;br /&gt;
|-&lt;br /&gt;
|eighth dottet (8th + 16th)&lt;br /&gt;
|36&lt;br /&gt;
|0.375s&lt;br /&gt;
|-&lt;br /&gt;
|quarter tuplet&lt;br /&gt;
|32&lt;br /&gt;
|0.333s&lt;br /&gt;
|-&lt;br /&gt;
|eighth (8th)&lt;br /&gt;
|24&lt;br /&gt;
|0.25s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth dottet (16th + 32th)&lt;br /&gt;
|18&lt;br /&gt;
|0.1875s&lt;br /&gt;
|-&lt;br /&gt;
|eigthth tuplet&lt;br /&gt;
|16&lt;br /&gt;
|0.1666s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth (16th)&lt;br /&gt;
|12&lt;br /&gt;
|0.125s&lt;br /&gt;
|-&lt;br /&gt;
|32th dottet (32th + 64th)&lt;br /&gt;
|9&lt;br /&gt;
|0.09375s&lt;br /&gt;
|-&lt;br /&gt;
|sixteenth tuplet (16th)&lt;br /&gt;
|8&lt;br /&gt;
|0.08333s&lt;br /&gt;
|-&lt;br /&gt;
|32th&lt;br /&gt;
|6&lt;br /&gt;
|0.0625s&lt;br /&gt;
|-&lt;br /&gt;
|32th tuplet&lt;br /&gt;
|4&lt;br /&gt;
|0.041666s&lt;br /&gt;
|-&lt;br /&gt;
|64th&lt;br /&gt;
|3&lt;br /&gt;
|0.03125s&lt;br /&gt;
|-&lt;br /&gt;
|64th tuplet&lt;br /&gt;
|2&lt;br /&gt;
|0.0208333s&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Create sequences ==&lt;br /&gt;
There are several ways for creating new sequence files.&lt;br /&gt;
&lt;br /&gt;
=== Seq64 ===&lt;br /&gt;
Seq64 is a GUI program for editing sequence files for Super Mario 64 and other Nintendo games. It also features full MIDI importing and exporting.&lt;br /&gt;
&lt;br /&gt;
https://github.com/sauraen/seq64&lt;br /&gt;
&lt;br /&gt;
=== Manually ===&lt;br /&gt;
Sequence files can also be created manually in a textual format. Create a new assembly file in the sequences directory, for example '''sound/sequences/us/23_custom_sequence.s'''. This file should begin with the following header:&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
.include &amp;quot;seq_macros.inc&amp;quot;&lt;br /&gt;
.section .rodata&lt;br /&gt;
.align 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Next you can write down a series of commands. See '''include/seq_macros.inc''' or https://hackmd.io/opEB-OmxRa26P8h8pA-x7w for a list of available commands.&lt;br /&gt;
&lt;br /&gt;
== Commands ==&lt;br /&gt;
&lt;br /&gt;
=== Sequence commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!seq_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!seq_delay1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfe&lt;br /&gt;
|Delay for 1 tick&lt;br /&gt;
|-&lt;br /&gt;
!seq_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|0xfd, var&lt;br /&gt;
|Delay for X ticks&lt;br /&gt;
|-&lt;br /&gt;
!seq_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!seq_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the sequence script&lt;br /&gt;
|-&lt;br /&gt;
!seq_beqz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xfa, addr&lt;br /&gt;
|Jump if Q == 0, where Q is an s8 used to hold temporary sequence script state&lt;br /&gt;
|-&lt;br /&gt;
!seq_bltz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xf9, addr&lt;br /&gt;
|Jump if Q &amp;lt; 0&lt;br /&gt;
|-&lt;br /&gt;
!seq_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!seq_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!seq_bgez&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xf5, addr&lt;br /&gt;
|Jump if Q &amp;gt;= 0&lt;br /&gt;
|-&lt;br /&gt;
!seq_reservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|0xf2, u8&lt;br /&gt;
|Reserve X notes for exclusive use by this sequence (dropping earlier reservations). A limited number of notes can be played at once (configurable per level, usually 16); if more than that are played, an existing one will be stopped and reused. This command can prevent that from happening across sequences.&lt;br /&gt;
|-&lt;br /&gt;
!seq_unreservenotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf1&lt;br /&gt;
|Drop all earlier reservations made by this sequence.&lt;br /&gt;
|-&lt;br /&gt;
!seq_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|0xdf, s8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!seq_transposerel&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|0xde, s8&lt;br /&gt;
|Change transposition by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_settempo&lt;br /&gt;
|tempo&lt;br /&gt;
|&lt;br /&gt;
|0xdd, u8&lt;br /&gt;
|Set tempo in BPM.&lt;br /&gt;
|-&lt;br /&gt;
!seq_addtempo&lt;br /&gt;
|tempo&lt;br /&gt;
|&lt;br /&gt;
|0xdc, s8&lt;br /&gt;
|Change tempo by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setvol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|0xdb, u8&lt;br /&gt;
|Set volume scale (0…255 = none to twice normal).&lt;br /&gt;
|-&lt;br /&gt;
!seq_changevol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|0xda, s8&lt;br /&gt;
|Change volume scale by some delta.&lt;br /&gt;
|-&lt;br /&gt;
!seq_initchannels&lt;br /&gt;
|channelMask&lt;br /&gt;
|&lt;br /&gt;
|0xd7, u16&lt;br /&gt;
|Initialize channels (bitmask). This copies mute behavior and note allocation policy.&lt;br /&gt;
|-&lt;br /&gt;
!seq_disablechannels&lt;br /&gt;
|channelMask&lt;br /&gt;
|&lt;br /&gt;
|0xd6, u16&lt;br /&gt;
|Uninitialize channels (bitmask).&lt;br /&gt;
|-&lt;br /&gt;
!seq_setmutescale&lt;br /&gt;
|mulitplier&lt;br /&gt;
|&lt;br /&gt;
|0xd5, s8&lt;br /&gt;
|Set volume multiplier for muted mode (0…127).&lt;br /&gt;
|-&lt;br /&gt;
!seq_mute&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd4&lt;br /&gt;
|Set sequence to muted mode. Depending on what behavior has been set this will do different things; from lowering volume to not running scripts.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setmutebhv&lt;br /&gt;
|bitmask&lt;br /&gt;
|&lt;br /&gt;
|0xd3, u8&lt;br /&gt;
|Set mute behavior (bitmask). Bit 0x20 lowers volume, bit 0x40 does something to layers, and bit 0x80 pauses the sequence script. Default mute behavior is to have all of those bits set.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setshortnotevelocitytable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xd2, addr&lt;br /&gt;
|Set velocity table for short notes (see further down). Target should be an array of bytes in the sequence data of length 16.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setshortnotedurationtable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xd1, addr&lt;br /&gt;
|Set duration table for short notes (see further down). Target should be an array of bytes in the sequence data of length 16.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setnoteallocationpolicy&lt;br /&gt;
|policyMask&lt;br /&gt;
|&lt;br /&gt;
|0xd0, u8&lt;br /&gt;
|Set note allocation policy (bitmask). If bit 0x1 is set, it will try to steal notes back from what was previously played on the same layer. If bit 0x2 is set, notes will be allocated exclusively from the channel’s reserved notes, else if 0x4 is set, from the channel’s or sequence’s reserved notes, else if 0x8 is set, from unreserved notes, otherwise from all sources. Not used by the game.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setval&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xcc, u8&lt;br /&gt;
|Set Q to a constant.&lt;br /&gt;
|-&lt;br /&gt;
!seq_bitand&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Bitand Q by a constant.&lt;br /&gt;
|-&lt;br /&gt;
!seq_subtract&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|0xc8, u8&lt;br /&gt;
|Subtract a constant from Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_startchannel&lt;br /&gt;
|channel&lt;br /&gt;
|address&lt;br /&gt;
|0x90-0x9f, addr&lt;br /&gt;
|Start channel N, with a given channel script.&lt;br /&gt;
|-&lt;br /&gt;
!seq_getvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0x8f&lt;br /&gt;
|Set Q to the variation bit, which is initially either 0 or 0x80 (i.e. -128, since Q is s8). This bit comes from the sequence load command. For instance, to play the Koopa shell music, the game plays sequence 0x8E, which is the same as sequence 0xE but with the variation bit set.&lt;br /&gt;
|-&lt;br /&gt;
!seq_setvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x70-0x7f&lt;br /&gt;
|Set the variation bit to Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_subvariation&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x50-0x5f&lt;br /&gt;
|Subtract the variation bit from Q.&lt;br /&gt;
|-&lt;br /&gt;
!seq_testchdisabled&lt;br /&gt;
|channel&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x0f&lt;br /&gt;
|Set Q to 1 or 0, depending on whether channel N has been disabled by channel script.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Channel commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Param 3&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!chan_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!chan_delay1&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfe&lt;br /&gt;
|Delay for 1 tick&lt;br /&gt;
|-&lt;br /&gt;
!chan_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfd, var&lt;br /&gt;
|Delay for X ticks&lt;br /&gt;
|-&lt;br /&gt;
!chan_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!chan_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the channel script&lt;br /&gt;
|-&lt;br /&gt;
!chan_beqz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfa, addr&lt;br /&gt;
|Jump if Q == 0, where Q is an s8 used to hold temporary channel script state&lt;br /&gt;
|-&lt;br /&gt;
!chan_bltz&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf9, addr&lt;br /&gt;
|Jump if Q &amp;lt; 0&lt;br /&gt;
|-&lt;br /&gt;
!chan_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!chan_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!chan_break&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf6&lt;br /&gt;
|Decrease loop/function stack depth by 1. Combine with a jump to break out of a loop.&lt;br /&gt;
|-&lt;br /&gt;
!chan_bgez&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf5, addr&lt;br /&gt;
|Jump if Q &amp;gt;= 0&lt;br /&gt;
|-&lt;br /&gt;
!chan_hang&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf3&lt;br /&gt;
|Infinite delay.&lt;br /&gt;
|-&lt;br /&gt;
!chan_reservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf2, u8&lt;br /&gt;
|Reserve X notes for exclusive use by this channel (dropping earlier reservations).&lt;br /&gt;
|-&lt;br /&gt;
!chan_unreservenotes&lt;br /&gt;
|numNotes&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf1&lt;br /&gt;
|Drop all earlier reservations made by this channel.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dyncall&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe4&lt;br /&gt;
|If Q != -1, make a function call to position dyntable[Q], where dyntable is a channel-specific u16 array which can set by &amp;lt;code&amp;gt;setdyntable&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;dynsetdyntable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratodelay&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe3, u8&lt;br /&gt;
|Set delay until vibrato starts for each note.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoextentlinear&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe2, u8, u8, u8&lt;br /&gt;
|Set vibrato extent for each note as a function that starts at X, goes up linearly to Y over a time span given by Z, then stays there.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoratelinear&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe1, u8, u8, u8&lt;br /&gt;
|Like above except for vibrato rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvolscale&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe0, u8&lt;br /&gt;
|Set scale factor for volume (0…255 = none to twice normal).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvol&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdf, u8&lt;br /&gt;
|Set scale factor #2 for volume (0…255 = none to twice normal). The two scale factors are separately controlled by outer audio logic, e.g. when changing between rooms, when playing sound effects, etc. The game almost exclusively uses setvol, so that should probably be preferred, but setvolscale shows up in a few locations in the sound effect sequence.&lt;br /&gt;
|-&lt;br /&gt;
!chan_freqscale&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xde, u16&lt;br /&gt;
|Pitch bend using a raw frequency multiplier X/2^15.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setpan&lt;br /&gt;
|pan&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdd, u8&lt;br /&gt;
|Set the pan for this channel (0…128)&lt;br /&gt;
|-&lt;br /&gt;
!chan_setpanchanweight&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdc, u8&lt;br /&gt;
|The pan for each note will be computed as W * channel pan + (1 - W) * note pan. This sets W (0…128 maps to 0…1). W defaults to 1.0.&lt;br /&gt;
|-&lt;br /&gt;
!chan_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xdb, s8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setenvelope&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xda, addr&lt;br /&gt;
|Set ADSR envelope. See below for format.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setdecayrelease&lt;br /&gt;
|rate&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd9, u8&lt;br /&gt;
|Set ADSR decay/release rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratoextent&lt;br /&gt;
|extent&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd8, u8&lt;br /&gt;
|Set vibrato extent.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setvibratorate&lt;br /&gt;
|rate&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd7, u8&lt;br /&gt;
|Set vibrato rate.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setupdatesperframe&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd6, u8&lt;br /&gt;
|Seems like it was meant to set the number of updates per frame? But it doesn’t actually do anything.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setreverb&lt;br /&gt;
|reverb&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd4, u8&lt;br /&gt;
|Set amount of reverb (or “dry/wet mix”?).&lt;br /&gt;
|-&lt;br /&gt;
!chan_pitchbend&lt;br /&gt;
|bend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd3, s8&lt;br /&gt;
|Pitch bend by &amp;lt;= 1 octave in either direction (-127…127).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setsustain&lt;br /&gt;
|volume&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd2, u8&lt;br /&gt;
|Set ADSR sustain volume.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setnoteallocationpolicy&lt;br /&gt;
|policyMask&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd1, u8&lt;br /&gt;
|Set note allocation policy for channel. See the description for sequence scripts.&lt;br /&gt;
|-&lt;br /&gt;
!chan_stereoheadseteffects&lt;br /&gt;
|enable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd0, u8&lt;br /&gt;
|Enable (1) or disable (0) some pan/volume effects related to stereo/headset. I don’t know which ones precisely – pan ''is'' still taken into account even with this disabled. With this disabled, stereo/headset gets the same output.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setval&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xcc, u8&lt;br /&gt;
|Set Q to a constant.&lt;br /&gt;
|-&lt;br /&gt;
!chan_readseq&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xcb, addr&lt;br /&gt;
|Set Q to sequenceData[X + Q].&lt;br /&gt;
|-&lt;br /&gt;
!chan_setmutebhv&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xca, u8&lt;br /&gt;
|Set mute behavior for this channel.&lt;br /&gt;
|-&lt;br /&gt;
!chan_bitand&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Bitand Q by a constant.&lt;br /&gt;
|-&lt;br /&gt;
!chan_subtract&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc8, u8&lt;br /&gt;
|Subtract a constant from Q.&lt;br /&gt;
|-&lt;br /&gt;
!chan_writeseq&lt;br /&gt;
|&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0xc7, u8, addr&lt;br /&gt;
|Overwrite the byte at the given position in the sequence script by (Q + X).&lt;br /&gt;
|-&lt;br /&gt;
!chan_setbank&lt;br /&gt;
|bank&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc6, u8&lt;br /&gt;
|Switch bank within instrument bank sets, to the X’th bank, 0-indexed, counting from the end.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dynsetdyntable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc5&lt;br /&gt;
|If Q != -1, set dyntable to point to position dyntable[Q] in the sequence data.&lt;br /&gt;
|-&lt;br /&gt;
!chan_largenoteson&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc4&lt;br /&gt;
|Set notes for this channel to use “large notes” format. SM64 does this for all channels. (See &amp;lt;code&amp;gt;note&amp;lt;/code&amp;gt; vs. &amp;lt;code&amp;gt;shortnote&amp;lt;/code&amp;gt; in the layer section below.)&lt;br /&gt;
|-&lt;br /&gt;
!chan_largenotesoff&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc3&lt;br /&gt;
|Set notes for this channel to use “short notes” format.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setdyntable&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc2, addr&lt;br /&gt;
|Set dyntable to point to a given u16 array from the sequence data.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setinstr&lt;br /&gt;
|instrument&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc1, u8&lt;br /&gt;
|Set instrument (program?) within bank. 0x80-0x83 set raw waves (sawtooth, triangle, sine, square), 0x7f is special, otherwise 0-indexed.&lt;br /&gt;
|-&lt;br /&gt;
!chan_dynsetlayer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xb0-0xbf&lt;br /&gt;
|If Q != -1, start layer N, with layer script given by dyntable[Q].&lt;br /&gt;
|-&lt;br /&gt;
!chan_freelayer&lt;br /&gt;
|layer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xa0-0xaf&lt;br /&gt;
|Stop layer N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setlayer&lt;br /&gt;
|layer&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0x90-0x9f, addr&lt;br /&gt;
|Start layer N, with layer script starting at address X.&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadval&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0x8f&lt;br /&gt;
|Set Q to IO[N], where IO is an array of bytes that can be read/written by both the game and the channel script. If N &amp;lt; 4, IO[N] is then set to -1.&lt;br /&gt;
|-&lt;br /&gt;
!chan_iowriteval&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x70-0x7f&lt;br /&gt;
|Set IO[N] to Q.&lt;br /&gt;
|-&lt;br /&gt;
!chan_setnotepriority&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x60-0x6f&lt;br /&gt;
|Set note priority for later notes played on this channel to N. When the game wants to play a note and there aren’t any free notes available, a note with smaller or equal priority is discarded. Should be &amp;gt;= 2; 0 and 1 have internal meaning. Defaults to 3.&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadvalsub&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x50-0x5f&lt;br /&gt;
|Decrease Q by IO[N].&lt;br /&gt;
|-&lt;br /&gt;
!chan_ioreadval2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x4f, u8&lt;br /&gt;
|Set Q to IO2[X], where IO2 is the IO array for channel N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_iowriteval2&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x30-0x3f, u8&lt;br /&gt;
|Set IO2[X] to Q, where IO2 is the IO array for channel N.&lt;br /&gt;
|-&lt;br /&gt;
!chan_disablechannel&lt;br /&gt;
|channel&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x20-0x2f&lt;br /&gt;
|Disable channel N for the parent sequence.&lt;br /&gt;
|-&lt;br /&gt;
!chan_startchannel&lt;br /&gt;
|channel&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|0x10-0x1f, addr&lt;br /&gt;
|Start channel N for the parent sequence, with channel script starting at address X.&lt;br /&gt;
|-&lt;br /&gt;
!chan_testlayerfinished&lt;br /&gt;
|layer&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x0f&lt;br /&gt;
|Set Q to 1 or 0, depending on whether layer N has been disabled (either forcibly or by finishing its script).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Layer commands ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Mnemonic&lt;br /&gt;
!Param 1&lt;br /&gt;
!Param 2&lt;br /&gt;
!Param 3&lt;br /&gt;
!Param 4&lt;br /&gt;
!Bytecode (US)&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!layer_end&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xff&lt;br /&gt;
|End of script, loop or function&lt;br /&gt;
|-&lt;br /&gt;
!layer_call&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfc, addr&lt;br /&gt;
|Call a function&lt;br /&gt;
|-&lt;br /&gt;
!layer_jump&lt;br /&gt;
|address&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xfb, addr&lt;br /&gt;
|Jump to a point in the layer script&lt;br /&gt;
|-&lt;br /&gt;
!layer_loop&lt;br /&gt;
|iterations&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf8, u8&lt;br /&gt;
|Repeat until &amp;lt;code&amp;gt;loopend&amp;lt;/code&amp;gt; for X iterations (256 if X = 0)&lt;br /&gt;
|-&lt;br /&gt;
!layer_loopend&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xf7&lt;br /&gt;
|Loop end marker&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotedurationfromtable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xe0-0xef&lt;br /&gt;
|Set the duration for future short notes to table[N], where table defaults to &amp;lt;code&amp;gt;{229, 203, 177, 151, 139, 126, 113, 100, 87, 74, 61, 48, 36, 23, 10, 0}&amp;lt;/code&amp;gt; and can be set by &amp;lt;code&amp;gt;setshortnotedurationtable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotevelocityfromtable&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xd0-0xdf&lt;br /&gt;
|Set the velocity for future short notes to table[N], where table defaults to &amp;lt;code&amp;gt;{12, 25, 38, 51, 57, 64, 71, 76, 83, 89, 96, 102, 109, 115, 121, 127}&amp;lt;/code&amp;gt; and can be set by &amp;lt;code&amp;gt;setshortnotevelocitytable&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setpan&lt;br /&gt;
|pan&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xca, u8&lt;br /&gt;
|Set the pan for this layer (0…128).&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnoteduration&lt;br /&gt;
|duration&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc9, u8&lt;br /&gt;
|Set the duration for future short notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_disableportamento&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc8&lt;br /&gt;
|Disable portamento for later notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_portamento&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc7, u8, u8, u8/var&lt;br /&gt;
|Enable portamento (aka glissando; continuously sliding pitch). X describes the mode of operation somehow using its 0x80 bit and a value 0-5 in its lower-order bits. Y describes the target pitch. Z gives the duration, and is a u8 if the 0x80 bit is set, otherwise a var.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setinstr&lt;br /&gt;
|instrument&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc6, u8&lt;br /&gt;
|Set instrument/program. Similar to the channel command, except arguments 0x7f and above are not supported.&lt;br /&gt;
|-&lt;br /&gt;
!layer_somethingoff&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc5&lt;br /&gt;
|Turn off some bool related to how notes decay somehow? (This is the default.)&lt;br /&gt;
|-&lt;br /&gt;
!layer_somethingon&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc4&lt;br /&gt;
|Turn on the same thing.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotedefaultplaypercentage&lt;br /&gt;
|percentage&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc3, var&lt;br /&gt;
|Set the default play percentage for short notes (see below).&lt;br /&gt;
|-&lt;br /&gt;
!layer_transpose&lt;br /&gt;
|semitones&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc2, u8&lt;br /&gt;
|Set transposition in semitones.&lt;br /&gt;
|-&lt;br /&gt;
!layer_setshortnotevelocity&lt;br /&gt;
|velocity&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc1, u8&lt;br /&gt;
|Set velocity for future short notes.&lt;br /&gt;
|-&lt;br /&gt;
!layer_delay&lt;br /&gt;
|ticks&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0xc0, var&lt;br /&gt;
|Delay for N ticks&lt;br /&gt;
|-&lt;br /&gt;
!layer_note0&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|velocity&lt;br /&gt;
|duration&lt;br /&gt;
|0x00-0x3f, var, u8, u8&lt;br /&gt;
|Play note with specified pitch, percentage, velocity and duration. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_note1&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|velocity&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x7f, var, u8&lt;br /&gt;
|Play note with specified pitch, percentage and velocity and duration of 0. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_note2&lt;br /&gt;
|pitch&lt;br /&gt;
|velocity&lt;br /&gt;
|duration&lt;br /&gt;
|&lt;br /&gt;
|0x80-0xbf, u8, u8&lt;br /&gt;
|Play note with specified pitch, velocity and duration. Only valid if channel is set to “large notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote0&lt;br /&gt;
|pitch&lt;br /&gt;
|percentage&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x00-0x3f, var&lt;br /&gt;
|Play note with specified pitch and percentage and velocity and duration set with layer_setshortnotevelocity and layer_setshortnoteduration. Only valid if channel is set to “small notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote1&lt;br /&gt;
|pitch&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x40-0x7f&lt;br /&gt;
|Play note with specified pitch and the default play percentage, as set by layer_setshortnotedefaultplaypercentage (there is no built-in default; using it without that command will read uninitialized memory). Velocity and duration is set like in layer_smallnote0. Only valid if channel is set to “small notes”.&lt;br /&gt;
|-&lt;br /&gt;
!layer_smallnote2&lt;br /&gt;
|pitch&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|0x80-0xbf&lt;br /&gt;
|Play note with specified pitch and the previous play percentage. Velocity and duration is set like in layer_smallnote0. Only valid if channel is set to “small notes”.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.smwcentral.net/?p=section&amp;amp;s=sm64music Custom music] for SM64 on SMW Central&lt;br /&gt;
* [https://hackmd.io/opEB-OmxRa26P8h8pA-x7w m64 format] posted on HackMD&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=96</id>
		<title>List of sound banks</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=96"/>
		<updated>2020-11-10T09:02:31Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Sound bank&lt;br /&gt;
!Usage&lt;br /&gt;
!Sample bank&lt;br /&gt;
!Instrument no.&lt;br /&gt;
!Samples&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |00&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |sfx_1&lt;br /&gt;
|1&lt;br /&gt;
|00_twirl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_brushing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_hand_touch&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03_yoshi&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04_plop&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05_heavy_landing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;9&amp;quot; |01&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |sfx_terrain&lt;br /&gt;
|1&lt;br /&gt;
|00_step_default&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_step_grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02_step_stone&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03_step_spooky&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04_step_snow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05_step_ice&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06_step_metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07_step_sand&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |02&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |sfx_water&lt;br /&gt;
|1&lt;br /&gt;
|00_plunge&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_splash&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_swin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |03&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |sfx_4&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |04&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|warp sound (hole/pipe)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|opening metal door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|door closing&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|flowing water&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|bubble&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0B&lt;br /&gt;
|thrown out of painting&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|star catch/warp&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |05&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|0E&lt;br /&gt;
|gunshot (Koopa the Quick race start)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|wind&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|destroyed box&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|bird chirp 1&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|bird chirp 2&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|bird chirp 3&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|bird chirp 4&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|bird chirp 5&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|1B&lt;br /&gt;
|jumping box&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|1C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |06&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_6&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|Mips the bunny&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|rawr (Bowser)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|Bowser death&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|swoosh&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|Bowser inhale&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|baby penguin&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|Boo&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|cannon moving sound 1&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cannon moving sound 2&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|Piranha Plant dying&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|pushing box&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;15&amp;quot; |07&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |sfx_7&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|scuttlebug step&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|Ukiki&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cowbell&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|Whomp/Thwomp&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|piano chomping sound&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|Chain Chomp&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;27&amp;quot; |08&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |sfx_mario&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|17&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|18&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|19&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;7&amp;quot; |09&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |sfx_9&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;24&amp;quot; |0A&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |sfx_mario_peach&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |0B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |08_level_snow&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;3&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|jingles&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |0C&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |''unused''&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|42&lt;br /&gt;
|celesta&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |0D&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |09_level_slide&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|whistle with vibrato&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|harpischord&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|hand clap and snare drum&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;7&amp;quot; |0E&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |04_level_inside_casle&lt;br /&gt;
15_cutscene_star_spawn&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|46, 47&lt;br /&gt;
|pizzicato strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|2D&lt;br /&gt;
|cello&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; |0F&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |06_water_hot&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|39&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |10&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |0A_level_spooky&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3F&lt;br /&gt;
|low cowbell&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;14&amp;quot; |11&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |02_menu_title_screen&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick / snare split&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|21&lt;br /&gt;
|lead 8 (bass+lead)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|35&lt;br /&gt;
|percussive organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|48&lt;br /&gt;
|steel drums&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (clean)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |12&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |07_level_boss_koopa&lt;br /&gt;
10_event_koopa_message&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|30&lt;br /&gt;
|charang (lead 5)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|32, 33&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|10, 11&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|34&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |13&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |05_level_water&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;5&amp;quot; |14&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |0B_event_piranha_plant&lt;br /&gt;
1B_event_solve_puzzle&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |piranha_music_box&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |15&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |0C_level_underground&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|acoustic steel guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |16&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |0D_menu_star_select&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |course_start&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |17&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |0E_event_powerup&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|05&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;15&amp;quot; |18&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |0F_event_metal_cap&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|35&lt;br /&gt;
|organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|36&lt;br /&gt;
|synth bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|37&lt;br /&gt;
|saw wave&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|12, 13&lt;br /&gt;
|orchestral percussion&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick and snare split&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |19&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |11_level_koopa_road&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |1A&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |14_event_race&lt;br /&gt;
17_cutscene_collect_key&lt;br /&gt;
&lt;br /&gt;
1F_cutscene_victory&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2D&lt;br /&gt;
|cello or low woodwind&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sampel&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |1B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |16_event_boss&lt;br /&gt;
1E_cutscene_intro&lt;br /&gt;
&lt;br /&gt;
22_cutscene_lakitu&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;7&amp;quot; |1C&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |18_event_endless_stairs&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |1D&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |19_level_boss_koopa_final&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|02&lt;br /&gt;
|choir&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; |1E&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |1D_event_peach_message&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |1F&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |12_event_high_score&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;8&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|bells&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snaare drum&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;9&amp;quot; |20&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |1C_event_toad_message&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;6&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; |21&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |0A_level_spooky&lt;br /&gt;
event_merry_go_round&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |22&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |01_cutscene_collect_star&lt;br /&gt;
03_level_grass&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (muted)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|open/closed hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;8&amp;quot; |23&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |20_cutscene_ending&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |24&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |21_menu_file_select&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |25&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |1A_cutscene_credits&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (jazz)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|16, 45&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[List of instruments|List of Instruments]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Object&amp;diff=95</id>
		<title>Object</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Object&amp;diff=95"/>
		<updated>2020-11-09T09:22:23Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An object is defined by various properties.&lt;br /&gt;
&lt;br /&gt;
== Behavior parameters ==&lt;br /&gt;
When an object is placed in a world, 4 bytes representing 4 behavior parameters can be set individually. These bytes are available as a signed integer (s32) in the field &amp;lt;code&amp;gt;oBehParams&amp;lt;/code&amp;gt;. Since the second byte is the most frequently used one by objects, this is also copied to a special field &amp;lt;code&amp;gt;oBehParams2ndByte&amp;lt;/code&amp;gt;. The value 0xFF for the second byte has a special meaning and indicates that the object shall not respawn.&lt;br /&gt;
&lt;br /&gt;
When the first bit of the first parameter is set, this indicates that this object is Mario.&lt;br /&gt;
&lt;br /&gt;
== Position and velocity ==&lt;br /&gt;
The object's position is stored in &amp;lt;code&amp;gt;oPosX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oPosY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oPosZ&amp;lt;/code&amp;gt;. The velocity is available in &amp;lt;code&amp;gt;oVelX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oVelY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oVelZ&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The rotation can be changed by setting &amp;lt;code&amp;gt;oMoveAnglePitch&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oMoveAngleYaw&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oMoveAngleRoll&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Object flags ==&lt;br /&gt;
Object flags are set in &amp;lt;code&amp;gt;oFlags&amp;lt;/code&amp;gt;. The following flags are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Flag&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Indicate that object position or angle will be changed.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_MOVE_XZ_USING_FVEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_COMPUTE_DIST_TO_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Compute distance to Mario. It is stored in &amp;lt;code&amp;gt;oDistanceToMario&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_ACTIVE_FROM_AFAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_HOLDABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Mark this object as holdable.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Compute angle to Mario. It is stored in &amp;lt;code&amp;gt;oAngleToMario&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_PERSISTENT_RESPAWN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Collision data ==&lt;br /&gt;
The collision data is defined by &amp;lt;code&amp;gt;collisionData&amp;lt;/code&amp;gt;. It can be used to dynamically change the collision of a surface object.&lt;br /&gt;
&lt;br /&gt;
== Interaction ==&lt;br /&gt;
An object's interaction is defined in &amp;lt;code&amp;gt;oInteractType&amp;lt;/code&amp;gt;. For some interaction types a sub type can be specified in &amp;lt;code&amp;gt;oInteractionSubtype&amp;lt;/code&amp;gt;.The following interaction types are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Subtype&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_HOOT&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |&amp;lt;code&amp;gt;INTERACT_GRABBABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_GRABS_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Also makes the object heavy&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_HOLDABLE_NPC&amp;lt;/code&amp;gt;&lt;br /&gt;
|Allows the object to be gently dropped. Sets vertical speed to 0 when dropped with no forwards velocity.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_DROP_IMMEDIATELY&amp;lt;/code&amp;gt;&lt;br /&gt;
|This gets set by grabbable NPCs that talk to Mario to make him drop them after the dialog is finished.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_KICKABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NOT_GRABBABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Used by Heavy-Ho to allow it to throw Mario, without Mario being able to pick it up.&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_STAR_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_DAMAGE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Mario takes damage on colllision&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_COIN&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Coin counter increases on collision&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_CAP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Gives Mario a cap&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_POLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_KOOPA&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BREAKABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_STRONG_WIND&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WARP_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |&amp;lt;code&amp;gt;INTERACT_STAR_OR_KEY&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Star or key&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NO_EXIT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_GRAND_STAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_WARP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_FADING_WARP&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_CANNON_BASE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_BOUNCE_TOP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_TWIRL_BOUNCE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WATER_RING&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BULLY&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_FLAME&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_KOOPA_SHELL&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BOUNCE_TOP2&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_MR_BLIZZARD&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_HIT_FROM_BELOW&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |&amp;lt;code&amp;gt;INTERACT_TEXT&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_SIGN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NPC&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_TORNADO&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WHIRLPOOL&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_CLAM_OR_BUBBA&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_EATS_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BBH_ENTRANCE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_SNUFIT_BULLET&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_SHOCK&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_IGLOO_BARRIER&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Action and timer ==&lt;br /&gt;
The object has a timer &amp;lt;code&amp;gt;oTimer&amp;lt;/code&amp;gt; which starts at 0 and is increased by 1 per frame (if game is not paused). The integer property &amp;lt;code&amp;gt;oAction&amp;lt;/code&amp;gt; is commonly used to change an object current action. It's usually checked in a behavior's loop script. When changing the action to a different value, &amp;lt;code&amp;gt;oTimer&amp;lt;/code&amp;gt; will be reset to 0 on the next loop.&lt;br /&gt;
&lt;br /&gt;
== Misc. properties ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Property&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;oFloorHeight&amp;lt;/code&amp;gt;&lt;br /&gt;
|Distance to floor (?)&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;oGravity&amp;lt;/code&amp;gt;&lt;br /&gt;
|Gravity&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Custom object]]&lt;br /&gt;
* [[Object list]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Behavior&amp;diff=94</id>
		<title>Behavior</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Behavior&amp;diff=94"/>
		<updated>2020-11-09T09:00:14Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A behavior basically is a [[Scripting|script]] describing how an object shall behave. The original behavior scripts can be found in '''data/behavior_data.c'''.&lt;br /&gt;
&lt;br /&gt;
== Native code ==&lt;br /&gt;
Behavior script can do a lot with the object they are attached to. Additional code can be added natively in [[C]]. Original behavior code is located in '''src/game/behaviors'''.&lt;br /&gt;
&lt;br /&gt;
== Actors ==&lt;br /&gt;
Actors basically describe the appearance of an object, including 3D models, textures and animations. Original actors are located in sub-folders in '''actors'''.&lt;br /&gt;
&lt;br /&gt;
An actor usual contains the following data:&lt;br /&gt;
&lt;br /&gt;
* Unique [[texture]] files (might be hardcoded in C if exported from an editor)&lt;br /&gt;
* model.inc.c file describing 3D models including UV coordinates and vertex colors&lt;br /&gt;
* [[Geometry layout|geo.inc.c]] file&lt;br /&gt;
* anims sub-folder&lt;br /&gt;
&lt;br /&gt;
== Behavior script commands ==&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!Command&lt;br /&gt;
!Parameters&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;BEGIN&amp;lt;/code&amp;gt;&lt;br /&gt;
|objList&lt;br /&gt;
|Defines the start of the behavior script as well as the object list the object belongs to. Has some special behavior for certain objects.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;DELAY&amp;lt;/code&amp;gt;&lt;br /&gt;
|num&lt;br /&gt;
|Delays the behavior script for a certain number of frames.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;CALL&amp;lt;/code&amp;gt;&lt;br /&gt;
|addr&lt;br /&gt;
|Jumps to a new behavior command and stores the return address in the object's stack.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;RETURN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Jumps back to the behavior command stored in the object's stack.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;GOTO&amp;lt;/code&amp;gt;&lt;br /&gt;
|addr&lt;br /&gt;
|Jumps to a new behavior script without saving anything.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;BEGIN_REPEAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|count&lt;br /&gt;
|Marks the start of a loop that will repeat a certain number of times.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;END_REPEAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Marks the end of a repeating loop.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;END_REPEAT_CONTINUE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Also marks the end of a repeating loop, but continues executing commands following the loop on the same frame.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;BEGIN_LOOP&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Marks the beginning of an infinite loop.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;END_LOOP&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Makrs the end of an infinite loop.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;BREAK&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Exits the behavior script. Often used to end behavior scripts that do not contain an infinite loop.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;CALL_NATIVE&amp;lt;/code&amp;gt;&lt;br /&gt;
|func&lt;br /&gt;
|Executes a native game function.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;ADD_FLOAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, value&lt;br /&gt;
|Adds a float to the specified field.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_FLOAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, value&lt;br /&gt;
|Sets the specified field to a float.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;ADD_INT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, value&lt;br /&gt;
|Adds an integer to the specified field.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_INT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, value&lt;br /&gt;
|Sets the specified field to an integer.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OR_INT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, value&lt;br /&gt;
|Performs a bitwise OR with the specified field and the given itneger. Usually used to set an object's flags.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;BIT_CLEAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, value&lt;br /&gt;
|Performs a bit clear with the specified short. Unused in favor of the 32-bit version.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_INT_RAND_RSHIFT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, min, rshift&lt;br /&gt;
|Gets a random short, right shifts it the specified amoutn and adds min to it, then sets the specified field to that value.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_RANDOM_FLOAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, min, range&lt;br /&gt;
|Sets the specified field to a random float in the given range.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_RANDOM_INT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, min, range&lt;br /&gt;
|Sets the specified field to a random integer in the given range.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;ADD_RANDOM_FLOAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, min, range&lt;br /&gt;
|Adds a random float in the given range to the specified field.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;ADD_INT_RAND_RSHIFT&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, min, rshift&lt;br /&gt;
|Gets a random short, right shifts it the specified amount and adds min to it, then adds the value to the specified field.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_MODEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|modelID&lt;br /&gt;
|Sets the current model ID of the object.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;DEACTIVATE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Exits the behavior script and despawns the object. Often used to end behavior scripts that do not contain an infinite loop.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;DROP_TO_FLOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Finds the floor triangle directly under the object and moves the object down to it.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SUM_FLOAT&amp;lt;/code&amp;gt;&lt;br /&gt;
|fieldDst, fieldSrc1, fieldSrc2&lt;br /&gt;
|Sets the destination float field to the sum of the values of the given float fields.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SUM_INT&amp;lt;/code&amp;gt;&lt;br /&gt;
|fieldDst, fieldSrc1, fieldSrc2&lt;br /&gt;
|Sets the destination integer field to the sum of the values of the given integer fields.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;BILLBOARD&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Billboards the current object, making it always face the camera.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;HIDE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Hides the current object.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_HITBOX&amp;lt;/code&amp;gt;&lt;br /&gt;
|radius, height&lt;br /&gt;
|Sets the size of the object's cylindrical hitbox.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;DELAY_VAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|field&lt;br /&gt;
|Delays the behavior script for the number of frames given by the value of the specified field.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;LOAD_ANIMATIONS&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, anims&lt;br /&gt;
|Loads the animations for the object. field is always set to oAnimations.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;ANIMATE&amp;lt;/code&amp;gt;&lt;br /&gt;
|animIndex&lt;br /&gt;
|Begins animation and sets the object's current animation index to the specified value.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SPAWN_CHILD_WITH_PARAM&amp;lt;/code&amp;gt;&lt;br /&gt;
|bhvParam, modelID, behavior&lt;br /&gt;
|Spawns a child object with the specified model and behavior, plus a behavior param.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;LOAD_COLLISION_DATA&amp;lt;/code&amp;gt;&lt;br /&gt;
|collisionData&lt;br /&gt;
|Loads collision data for the object.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_HITBOX_WITH_OFFSET&amp;lt;/code&amp;gt;&lt;br /&gt;
|radius, height, downOffset&lt;br /&gt;
|Sets the size of the object's cylindrical hitbox, and applies a downwards offset.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SPAWN_OBJ&amp;lt;/code&amp;gt;&lt;br /&gt;
|modelID, behavior&lt;br /&gt;
|Spawns a new object with the specified model and behavior.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_HOME&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Sets the home position of the object to its current position.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_HURTBOX&amp;lt;/code&amp;gt;&lt;br /&gt;
|radius, height&lt;br /&gt;
|Sets the size of the object's cylindrical hurtbox.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_INTERACT_TYPE&amp;lt;/code&amp;gt;&lt;br /&gt;
|type&lt;br /&gt;
|Sets the object's interaction type.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_OBJ_PHYSICS&amp;lt;/code&amp;gt;&lt;br /&gt;
|wallHitboxRadius, gravity, bounciness,&lt;br /&gt;
dragStrength, friction, buoyancy,&lt;br /&gt;
&lt;br /&gt;
unused1, unused2&lt;br /&gt;
|Sets various parameters that the object uses for calculating physincs.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SET_INTERACT_SUBTYPE&amp;lt;/code&amp;gt;&lt;br /&gt;
|subtype&lt;br /&gt;
|Sets the object's interaction subtype.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SCALE&amp;lt;/code&amp;gt;&lt;br /&gt;
|unused, percent&lt;br /&gt;
|Sets the object's size to the specified percentage.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;PARENT_BIT_CLEAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, flags&lt;br /&gt;
|Performs a bit clear on the object's parent's field with the specified value. Used for clearing active particle flags from Mario's object.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;ANIMATE_TEXTURE&amp;lt;/code&amp;gt;&lt;br /&gt;
|field, rate&lt;br /&gt;
|Animates an object using texture animation. field is always set to oAnimState.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;DISABLE_RENDERING&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|Disables rendering for the object.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;SPAWN_WATER_DROPLET&amp;lt;/code&amp;gt;&lt;br /&gt;
|dropletParams&lt;br /&gt;
|Spawns a water droplet with the given parameters.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Custom behavior]]&lt;br /&gt;
* [[Geometry layout]]&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Object&amp;diff=93</id>
		<title>Object</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Object&amp;diff=93"/>
		<updated>2020-11-09T07:27:24Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An object is defined by various properties.&lt;br /&gt;
&lt;br /&gt;
== Position and velocity ==&lt;br /&gt;
The object's position is stored in &amp;lt;code&amp;gt;oPosX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oPosY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oPosZ&amp;lt;/code&amp;gt;. The velocity is available in &amp;lt;code&amp;gt;oVelX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oVelY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oVelZ&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The rotation can be changed by setting &amp;lt;code&amp;gt;oMoveAnglePitch&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oMoveAngleYaw&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oMoveAngleRoll&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Object flags ==&lt;br /&gt;
Object flags are set in &amp;lt;code&amp;gt;oFlags&amp;lt;/code&amp;gt;. The following flags are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Flag&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Indicate that object position or angle will be changed.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_MOVE_XZ_USING_FVEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_COMPUTE_DIST_TO_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Compute distance to Mario. It is stored in &amp;lt;code&amp;gt;oDistanceToMario&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_ACTIVE_FROM_AFAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_HOLDABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Mark this object as holdable.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Compute angle to Mario. It is stored in &amp;lt;code&amp;gt;oAngleToMario&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_PERSISTENT_RESPAWN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Collision data ==&lt;br /&gt;
The collision data is defined by &amp;lt;code&amp;gt;collisionData&amp;lt;/code&amp;gt;. It can be used to dynamically change the collision of a surface object.&lt;br /&gt;
&lt;br /&gt;
== Interaction ==&lt;br /&gt;
An object's interaction is defined in &amp;lt;code&amp;gt;oInteractType&amp;lt;/code&amp;gt;. For some interaction types a sub type can be specified in &amp;lt;code&amp;gt;oInteractionSubtype&amp;lt;/code&amp;gt;.The following interaction types are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Subtype&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_HOOT&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |&amp;lt;code&amp;gt;INTERACT_GRABBABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_GRABS_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Also makes the object heavy&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_HOLDABLE_NPC&amp;lt;/code&amp;gt;&lt;br /&gt;
|Allows the object to be gently dropped. Sets vertical speed to 0 when dropped with no forwards velocity.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_DROP_IMMEDIATELY&amp;lt;/code&amp;gt;&lt;br /&gt;
|This gets set by grabbable NPCs that talk to Mario to make him drop them after the dialog is finished.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_KICKABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NOT_GRABBABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Used by Heavy-Ho to allow it to throw Mario, without Mario being able to pick it up.&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_STAR_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_DAMAGE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Mario takes damage on colllision&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_COIN&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Coin counter increases on collision&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_CAP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Gives Mario a cap&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_POLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_KOOPA&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BREAKABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_STRONG_WIND&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WARP_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |&amp;lt;code&amp;gt;INTERACT_STAR_OR_KEY&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Star or key&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NO_EXIT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_GRAND_STAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_WARP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_FADING_WARP&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_CANNON_BASE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_BOUNCE_TOP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_TWIRL_BOUNCE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WATER_RING&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BULLY&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_FLAME&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_KOOPA_SHELL&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BOUNCE_TOP2&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_MR_BLIZZARD&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_HIT_FROM_BELOW&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |&amp;lt;code&amp;gt;INTERACT_TEXT&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_SIGN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NPC&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_TORNADO&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WHIRLPOOL&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_CLAM_OR_BUBBA&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_EATS_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BBH_ENTRANCE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_SNUFIT_BULLET&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_SHOCK&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_IGLOO_BARRIER&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Action and timer ==&lt;br /&gt;
The object has a timer &amp;lt;code&amp;gt;oTimer&amp;lt;/code&amp;gt; which starts at 0 and is increased by 1 per frame (if game is not paused). The integer property &amp;lt;code&amp;gt;oAction&amp;lt;/code&amp;gt; is commonly used to change an object current action. It's usually checked in a behavior's loop script. When changing the action to a different value, &amp;lt;code&amp;gt;oTimer&amp;lt;/code&amp;gt; will be reset to 0 on the next loop.&lt;br /&gt;
&lt;br /&gt;
== Misc. properties ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Property&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;oFloorHeight&amp;lt;/code&amp;gt;&lt;br /&gt;
|Distance to floor (?)&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;oGravity&amp;lt;/code&amp;gt;&lt;br /&gt;
|Gravity&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Custom object]]&lt;br /&gt;
* [[Object list]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Object_list&amp;diff=92</id>
		<title>Object list</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Object_list&amp;diff=92"/>
		<updated>2020-11-09T07:12:30Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Every object is categorized into an object list, which controls the order they are processed and which objects they can collide with. In behavior scripts, the &amp;lt;code&amp;gt;BEGIN&amp;lt;/code&amp;gt; command is used to specify the list for this object, such as &amp;lt;code&amp;gt;BEGIN(OBJ_LIST_DEFAULT)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Available lists ==&lt;br /&gt;
The following lists are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!List&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!Player&lt;br /&gt;
|OBJ_LIST_PLAYER&lt;br /&gt;
|Mario&lt;br /&gt;
|-&lt;br /&gt;
!Destructive&lt;br /&gt;
|OBJ_LIST_DESTRUCTIVE&lt;br /&gt;
|Things that can be used to destroy other objects, like bob-ombs and corkboxes.&lt;br /&gt;
|-&lt;br /&gt;
!General actors&lt;br /&gt;
|OBJ_LIST_GENACTOR&lt;br /&gt;
|Most normal &amp;quot;enemies&amp;quot; or actors are on this list, such as Mips, Bullet Bill or Bully.&lt;br /&gt;
|-&lt;br /&gt;
!Level&lt;br /&gt;
|OBJ_LIST_LEVEL&lt;br /&gt;
|General level objects such as heart or star.&lt;br /&gt;
|-&lt;br /&gt;
!Default&lt;br /&gt;
|OBJ_LIST_DEFAULT&lt;br /&gt;
|Objects that didn't start with a 00 command are put here, so this is treated as a default.&lt;br /&gt;
|-&lt;br /&gt;
!Surface&lt;br /&gt;
|OBJ_LIST_SURFACE&lt;br /&gt;
|Objects that specifically have surface collision and not object collision, such as thwomp and whomp.&lt;br /&gt;
|-&lt;br /&gt;
!Polelike&lt;br /&gt;
|OBJ_LIST_POLELIKE&lt;br /&gt;
|Objects that attract or otherwise &amp;quot;cling&amp;quot; Mario similar to a pole action, such as hoot, whirlpool, trees or poles.&lt;br /&gt;
|-&lt;br /&gt;
!Spawner&lt;br /&gt;
|OBJ_LIST_SPAWNER&lt;br /&gt;
|Spawners&lt;br /&gt;
|-&lt;br /&gt;
!Unimportant&lt;br /&gt;
|OBJ_LIST_UNIMPORTANT&lt;br /&gt;
|Objects that will not load if there are not enough object slots: they will also be manuall unloaded to make room for slots if the list gets exhaustet.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Object]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Object&amp;diff=91</id>
		<title>Object</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Object&amp;diff=91"/>
		<updated>2020-11-09T07:11:59Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;An object is defined by various properties.  == Position and velocity == The object's position is stored in &amp;lt;code&amp;gt;oPosX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oPosY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oPosZ&amp;lt;/code&amp;gt;. The...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An object is defined by various properties.&lt;br /&gt;
&lt;br /&gt;
== Position and velocity ==&lt;br /&gt;
The object's position is stored in &amp;lt;code&amp;gt;oPosX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oPosY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oPosZ&amp;lt;/code&amp;gt;. The velocity is available in &amp;lt;code&amp;gt;oVelX&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oVelY&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oVelZ&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The rotation can be changed by setting &amp;lt;code&amp;gt;oMoveAnglePitch&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;oMoveAngleYaw&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;oMoveAngleRoll&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Object flags ==&lt;br /&gt;
Object flags are set in &amp;lt;code&amp;gt;oFlags&amp;lt;/code&amp;gt;. The following flags are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Flag&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Indicate that object position or angle will be changed.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_MOVE_XZ_USING_FVEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_COMPUTE_DIST_TO_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Compute distance to Mario.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_ACTIVE_FROM_AFAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_HOLDABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Mark this object as holdable.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Compute angle to Mario.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;OBJ_FLAG_PERSISTENT_RESPAWN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Collision data ==&lt;br /&gt;
The collision data is defined by &amp;lt;code&amp;gt;collisionData&amp;lt;/code&amp;gt;. It can be used to dynamically change the collision of a surface object.&lt;br /&gt;
&lt;br /&gt;
== Interaction ==&lt;br /&gt;
An object's interaction is defined in &amp;lt;code&amp;gt;oInteractType&amp;lt;/code&amp;gt;. For some interaction types a sub type can be specified in &amp;lt;code&amp;gt;oInteractionSubtype&amp;lt;/code&amp;gt;.The following interaction types are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Subtype&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_HOOT&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |&amp;lt;code&amp;gt;INTERACT_GRABBABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_GRABS_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|Also makes the object heavy&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_HOLDABLE_NPC&amp;lt;/code&amp;gt;&lt;br /&gt;
|Allows the object to be gently dropped. Sets vertical speed to 0 when dropped with no forwards velocity.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_DROP_IMMEDIATELY&amp;lt;/code&amp;gt;&lt;br /&gt;
|This gets set by grabbable NPCs that talk to Mario to make him drop them after the dialog is finished.&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_KICKABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NOT_GRABBABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
|Used by Heavy-Ho to allow it to throw Mario, without Mario being able to pick it up.&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_STAR_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_DAMAGE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Mario takes damage on colllision&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_COIN&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Coin counter increases on collision&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_CAP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Gives Mario a cap&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_POLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_KOOPA&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BREAKABLE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_STRONG_WIND&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WARP_DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |&amp;lt;code&amp;gt;INTERACT_STAR_OR_KEY&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|Star or key&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NO_EXIT&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_GRAND_STAR&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_WARP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_FADING_WARP&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_CANNON_BASE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_BOUNCE_TOP&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_TWIRL_BOUNCE&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WATER_RING&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BULLY&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_FLAME&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_KOOPA_SHELL&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BOUNCE_TOP2&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_MR_BLIZZARD&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_HIT_FROM_BELOW&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |&amp;lt;code&amp;gt;INTERACT_TEXT&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_SIGN&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_NPC&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_TORNADO&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_WHIRLPOOL&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |&amp;lt;code&amp;gt;INTERACT_CLAM_OR_BUBBA&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INT_SUBTYPE_EATS_MARIO&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_BBH_ENTRANCE&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_SNUFIT_BULLET&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_SHOCK&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;INTERACT_IGLOO_BARRIER&amp;lt;/code&amp;gt;&lt;br /&gt;
!&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Misc. properties ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Property&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;oFloorHeight&amp;lt;/code&amp;gt;&lt;br /&gt;
|Distance to floor (?)&lt;br /&gt;
|-&lt;br /&gt;
!&amp;lt;code&amp;gt;oGravity&amp;lt;/code&amp;gt;&lt;br /&gt;
|Gravity&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Custom object]]&lt;br /&gt;
* [[Object list]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Custom_object&amp;diff=90</id>
		<title>Custom object</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Custom_object&amp;diff=90"/>
		<updated>2020-11-09T06:39:16Z</updated>

		<summary type="html">&lt;p&gt;Tenry: add link to object list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes how to create a custom object with custom 3D model and custom [[behavior]] for Super Mario 64.&lt;br /&gt;
&lt;br /&gt;
== Export 3D model (Fast64) ==&lt;br /&gt;
In [[Blender]], install the [[Fast64]] plugin, select your object you want to export, open the Fast64 menu and expand '''SM64 Geolayout Exporter'''. Ensure to select [[C]] as the export.&lt;br /&gt;
&lt;br /&gt;
Choose '''Actor Data''' as the export type.&lt;br /&gt;
&lt;br /&gt;
Choose a group name you want to add your actor to, such as '''common0'''.&lt;br /&gt;
&lt;br /&gt;
Choose a unique folder name. It's recommended to add the word ''custom'' to the name, for example '''custom_platform'''.&lt;br /&gt;
&lt;br /&gt;
Choose a unique [[Geometry layout|geolayout]] name, such as '''custom_platform_geo'''.&lt;br /&gt;
&lt;br /&gt;
Ensure the newly created '''model.inc.c''' file is included in actors/''&amp;lt;group&amp;gt;''.c file, such as in '''actors/common0.c''' (should be done by Fast64 exporter).&lt;br /&gt;
&lt;br /&gt;
Ensure the newly created '''geo_header.h''' file is included in actors/''&amp;lt;group&amp;gt;''.h file, such as in '''actors/common0.h''' (should be done by Fast64 exporter).&lt;br /&gt;
&lt;br /&gt;
Ensure the newly created '''geo.inc.c''' file is included in actors/''&amp;lt;group&amp;gt;''_geo.c file, such as in '''actors/common0_geo.c''' (should be done by Fast64 exporter).&lt;br /&gt;
&lt;br /&gt;
=== Collision data ===&lt;br /&gt;
If the object shall become a solid object, such as a moving platform, you also need to export the collision data. Expand '''SM64 Collision Exporter''' for that and select C.&lt;br /&gt;
&lt;br /&gt;
Export type is '''Actor Data'''. For the name, you should use the same you previously chose for the folder, such as '''custom_platform'''. The group name should also be the same as above.&lt;br /&gt;
&lt;br /&gt;
== Load custom model ==&lt;br /&gt;
It's a good idea to give your 3D model a unique name, such as '''MODEL_CUSTOM_COIN''', and an ID from 0x00 to 0xFF. Define it in '''include/model_ids.h'''. Ensure it does not share an ID with another model that might be loaded in the same level.&lt;br /&gt;
&lt;br /&gt;
In your level script file (such as '''levels/bob/script.c''') or in a global script located in '''levels/scripts.c''', add a ''LOAD_MODEL_FROM_GEO'' command, such as '''LOAD_MODEL_FROM_GEO(MODEL_CUSTOM_COIN, custom_coin_geo)'''.&lt;br /&gt;
&lt;br /&gt;
== Create behavior script ==&lt;br /&gt;
Open '''data/behavior_data.c''' in your favorite code editor. You may want to add a dedicated file, such as '''data/custom_coin.inc.c''' and include this in data/behavior_data.c. Also add your new behavior name to '''include/behavior_data.h'''.&lt;br /&gt;
&lt;br /&gt;
The easiest way to create your own behavior script is to copy an existing one that's most closely to what you want. Copy the related lines and rename the variable accordingly. Example:&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
// original yellow coin (for reference)&lt;br /&gt;
const BehaviorScript bhvYellowCoin[] = {&lt;br /&gt;
    BEGIN(OBJ_LIST_LEVEL),&lt;br /&gt;
    BILLBOARD(),&lt;br /&gt;
    OR_INT(oFlags, (OBJ_FLAG_COMPUTE_DIST_TO_MARIO | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),&lt;br /&gt;
    CALL_NATIVE(bhv_yellow_coin_init), // defined in src/game/behaviors/coin.inc.c&lt;br /&gt;
    BEGIN_LOOP(),&lt;br /&gt;
        CALL_NATIVE(bhv_yellow_coin_loop), // defined in src/game/behaviors/coin.inc.c&lt;br /&gt;
    END_LOOP(),&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// your own copy&lt;br /&gt;
const BehaviorScript bhvCustomCoin[] = {&lt;br /&gt;
    BEGIN(OBJ_LIST_LEVEL),&lt;br /&gt;
    BILLBOARD(),&lt;br /&gt;
    OR_INT(oFlags, (OBJ_FLAG_COMPUTE_DIST_TO_MARIO | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),&lt;br /&gt;
    CALL_NATIVE(bhv_custom_coin_init), // define your own in src/game/behaviors/custom_coin.inc.c&lt;br /&gt;
    BEGIN_LOOP(),&lt;br /&gt;
        CALL_NATIVE(bhv_custom_coin_loop), // define your own in src/game/behaviors/custom_coin.inc.c&lt;br /&gt;
    END_LOOP(),&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Solid object ===&lt;br /&gt;
If the object shall be a solid object, such as a moving platform, the collision data must also be loaded in the script. Call &amp;lt;code&amp;gt;LOAD_COLLISION_DATA(custom_platform_collision)&amp;lt;/code&amp;gt; before initialization and &amp;lt;code&amp;gt;CALL_NATIVE(load_object_collision_model)&amp;lt;/code&amp;gt; at the end inside the loop.&lt;br /&gt;
&lt;br /&gt;
== Create native code ==&lt;br /&gt;
If you need new native [[C]] code, create a new code file in src/game/behaviors, such as '''src/game/behaviors/custom_coin.inc.c''', and include that file in '''src/game/obj_behaviors.c'''. You might want to copy an existing behavior code for reference. However, make sure all variables and function names are unique in the source code. For example, rename '''bhv_yelow_coin_loop''' to '''bhv_custom_coin_loop'''. Declare your custom functions in a suitable header file, such as in '''src/game/obj_behaviors.h''' or '''src/game/behavior_actions.h'''.&lt;br /&gt;
&lt;br /&gt;
== Add object to level (Fast64) ==&lt;br /&gt;
In your level inside [[Blender]], add an ''Empty''. Set object type to '''Object'''.&lt;br /&gt;
&lt;br /&gt;
Set model to '''Custom''' and model ID to your defined ID from include/model_ids.h, such as '''MODEL_CUSTOM_COIN'''.&lt;br /&gt;
&lt;br /&gt;
Set behavior to '''Custom''' and behavior name to your defined name in data/behavior_data.c, such as '''bhvCustomCoin'''.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Fast64]]&lt;br /&gt;
* [[Behavior]]&lt;br /&gt;
* [[Object list]]&lt;br /&gt;
* [[Geometry layout]]&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Level_limitations&amp;diff=89</id>
		<title>Level limitations</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Level_limitations&amp;diff=89"/>
		<updated>2020-11-09T06:38:40Z</updated>

		<summary type="html">&lt;p&gt;Tenry: add maximum number of objects&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When creating or editing a custom level, certain limitations have to be kept in mind:&lt;br /&gt;
&lt;br /&gt;
* Maximum number of triangles is '''6500''' (to be verified)&lt;br /&gt;
* Level playing field is limited in X and Z from '''-8192 to +8192''', but can be [[Extended bounds|extended]]&lt;br /&gt;
* Texture can not be repeated more than '''32''' times on a single polygon (to be verified)&lt;br /&gt;
* Maximum number of objects that can be loaded at once is '''240''' (defined by &amp;lt;code&amp;gt;OBJECT_POOL_CAPACITY&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Object_list&amp;diff=88</id>
		<title>Object list</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Object_list&amp;diff=88"/>
		<updated>2020-11-09T06:37:45Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;Every object is categorized into an object list, which controls the order they are processed and which objects they can collide with. In behavior scripts, the &amp;lt;code&amp;gt;BEGIN&amp;lt;/cod...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Every object is categorized into an object list, which controls the order they are processed and which objects they can collide with. In behavior scripts, the &amp;lt;code&amp;gt;BEGIN&amp;lt;/code&amp;gt; command is used to specify the list for this object, such as &amp;lt;code&amp;gt;BEGIN(OBJ_LIST_DEFAULT)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Available lists ==&lt;br /&gt;
The following lists are available:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!List&lt;br /&gt;
!ID&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Player&lt;br /&gt;
|OBJ_LIST_PLAYER&lt;br /&gt;
|Mario&lt;br /&gt;
|-&lt;br /&gt;
|Destructive&lt;br /&gt;
|OBJ_LIST_DESTRUCTIVE&lt;br /&gt;
|Things that can be used to destroy other objects, like bob-ombs and corkboxes.&lt;br /&gt;
|-&lt;br /&gt;
|General actors&lt;br /&gt;
|OBJ_LIST_GENACTOR&lt;br /&gt;
|Most normal &amp;quot;enemies&amp;quot; or actors are on this list, such as Mips, Bullet Bill or Bully.&lt;br /&gt;
|-&lt;br /&gt;
|Level&lt;br /&gt;
|OBJ_LIST_LEVEL&lt;br /&gt;
|General level objects such as heart or star.&lt;br /&gt;
|-&lt;br /&gt;
|Default&lt;br /&gt;
|OBJ_LIST_DEFAULT&lt;br /&gt;
|Objects that didn't start with a 00 command are put here, so this is treated as a default.&lt;br /&gt;
|-&lt;br /&gt;
|Surface&lt;br /&gt;
|OBJ_LIST_SURFACE&lt;br /&gt;
|Objects that specifically have surface collision and not object collision, such as thwomp and whomp.&lt;br /&gt;
|-&lt;br /&gt;
|Polelike&lt;br /&gt;
|OBJ_LIST_POLELIKE&lt;br /&gt;
|Objects that attract or otherwise &amp;quot;cling&amp;quot; Mario similar to a pole action, such as hoot, whirlpool, trees or poles.&lt;br /&gt;
|-&lt;br /&gt;
|Spawner&lt;br /&gt;
|OBJ_LIST_SPAWNER&lt;br /&gt;
|Spawners&lt;br /&gt;
|-&lt;br /&gt;
|Unimportant&lt;br /&gt;
|OBJ_LIST_UNIMPORTANT&lt;br /&gt;
|Objects that will not load if there are not enough object slots: they will also be manuall unloaded to make room for slots if the list gets exhaustet.&lt;br /&gt;
|}&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Custom_object&amp;diff=87</id>
		<title>Custom object</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Custom_object&amp;diff=87"/>
		<updated>2020-11-09T06:30:40Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes how to create a custom object with custom 3D model and custom [[behavior]] for Super Mario 64.&lt;br /&gt;
&lt;br /&gt;
== Export 3D model (Fast64) ==&lt;br /&gt;
In [[Blender]], install the [[Fast64]] plugin, select your object you want to export, open the Fast64 menu and expand '''SM64 Geolayout Exporter'''. Ensure to select [[C]] as the export.&lt;br /&gt;
&lt;br /&gt;
Choose '''Actor Data''' as the export type.&lt;br /&gt;
&lt;br /&gt;
Choose a group name you want to add your actor to, such as '''common0'''.&lt;br /&gt;
&lt;br /&gt;
Choose a unique folder name. It's recommended to add the word ''custom'' to the name, for example '''custom_platform'''.&lt;br /&gt;
&lt;br /&gt;
Choose a unique [[Geometry layout|geolayout]] name, such as '''custom_platform_geo'''.&lt;br /&gt;
&lt;br /&gt;
Ensure the newly created '''model.inc.c''' file is included in actors/''&amp;lt;group&amp;gt;''.c file, such as in '''actors/common0.c''' (should be done by Fast64 exporter).&lt;br /&gt;
&lt;br /&gt;
Ensure the newly created '''geo_header.h''' file is included in actors/''&amp;lt;group&amp;gt;''.h file, such as in '''actors/common0.h''' (should be done by Fast64 exporter).&lt;br /&gt;
&lt;br /&gt;
Ensure the newly created '''geo.inc.c''' file is included in actors/''&amp;lt;group&amp;gt;''_geo.c file, such as in '''actors/common0_geo.c''' (should be done by Fast64 exporter).&lt;br /&gt;
&lt;br /&gt;
=== Collision data ===&lt;br /&gt;
If the object shall become a solid object, such as a moving platform, you also need to export the collision data. Expand '''SM64 Collision Exporter''' for that and select C.&lt;br /&gt;
&lt;br /&gt;
Export type is '''Actor Data'''. For the name, you should use the same you previously chose for the folder, such as '''custom_platform'''. The group name should also be the same as above.&lt;br /&gt;
&lt;br /&gt;
== Load custom model ==&lt;br /&gt;
It's a good idea to give your 3D model a unique name, such as '''MODEL_CUSTOM_COIN''', and an ID from 0x00 to 0xFF. Define it in '''include/model_ids.h'''. Ensure it does not share an ID with another model that might be loaded in the same level.&lt;br /&gt;
&lt;br /&gt;
In your level script file (such as '''levels/bob/script.c''') or in a global script located in '''levels/scripts.c''', add a ''LOAD_MODEL_FROM_GEO'' command, such as '''LOAD_MODEL_FROM_GEO(MODEL_CUSTOM_COIN, custom_coin_geo)'''.&lt;br /&gt;
&lt;br /&gt;
== Create behavior script ==&lt;br /&gt;
Open '''data/behavior_data.c''' in your favorite code editor. You may want to add a dedicated file, such as '''data/custom_coin.inc.c''' and include this in data/behavior_data.c. Also add your new behavior name to '''include/behavior_data.h'''.&lt;br /&gt;
&lt;br /&gt;
The easiest way to create your own behavior script is to copy an existing one that's most closely to what you want. Copy the related lines and rename the variable accordingly. Example:&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
// original yellow coin (for reference)&lt;br /&gt;
const BehaviorScript bhvYellowCoin[] = {&lt;br /&gt;
    BEGIN(OBJ_LIST_LEVEL),&lt;br /&gt;
    BILLBOARD(),&lt;br /&gt;
    OR_INT(oFlags, (OBJ_FLAG_COMPUTE_DIST_TO_MARIO | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),&lt;br /&gt;
    CALL_NATIVE(bhv_yellow_coin_init), // defined in src/game/behaviors/coin.inc.c&lt;br /&gt;
    BEGIN_LOOP(),&lt;br /&gt;
        CALL_NATIVE(bhv_yellow_coin_loop), // defined in src/game/behaviors/coin.inc.c&lt;br /&gt;
    END_LOOP(),&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// your own copy&lt;br /&gt;
const BehaviorScript bhvCustomCoin[] = {&lt;br /&gt;
    BEGIN(OBJ_LIST_LEVEL),&lt;br /&gt;
    BILLBOARD(),&lt;br /&gt;
    OR_INT(oFlags, (OBJ_FLAG_COMPUTE_DIST_TO_MARIO | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),&lt;br /&gt;
    CALL_NATIVE(bhv_custom_coin_init), // define your own in src/game/behaviors/custom_coin.inc.c&lt;br /&gt;
    BEGIN_LOOP(),&lt;br /&gt;
        CALL_NATIVE(bhv_custom_coin_loop), // define your own in src/game/behaviors/custom_coin.inc.c&lt;br /&gt;
    END_LOOP(),&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Solid object ===&lt;br /&gt;
If the object shall be a solid object, such as a moving platform, the collision data must also be loaded in the script. Call &amp;lt;code&amp;gt;LOAD_COLLISION_DATA(custom_platform_collision)&amp;lt;/code&amp;gt; before initialization and &amp;lt;code&amp;gt;CALL_NATIVE(load_object_collision_model)&amp;lt;/code&amp;gt; at the end inside the loop.&lt;br /&gt;
&lt;br /&gt;
== Create native code ==&lt;br /&gt;
If you need new native [[C]] code, create a new code file in src/game/behaviors, such as '''src/game/behaviors/custom_coin.inc.c''', and include that file in '''src/game/obj_behaviors.c'''. You might want to copy an existing behavior code for reference. However, make sure all variables and function names are unique in the source code. For example, rename '''bhv_yelow_coin_loop''' to '''bhv_custom_coin_loop'''. Declare your custom functions in a suitable header file, such as in '''src/game/obj_behaviors.h''' or '''src/game/behavior_actions.h'''.&lt;br /&gt;
&lt;br /&gt;
== Add object to level (Fast64) ==&lt;br /&gt;
In your level inside [[Blender]], add an ''Empty''. Set object type to '''Object'''.&lt;br /&gt;
&lt;br /&gt;
Set model to '''Custom''' and model ID to your defined ID from include/model_ids.h, such as '''MODEL_CUSTOM_COIN'''.&lt;br /&gt;
&lt;br /&gt;
Set behavior to '''Custom''' and behavior name to your defined name in data/behavior_data.c, such as '''bhvCustomCoin'''.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Fast64]]&lt;br /&gt;
* [[Behavior]]&lt;br /&gt;
* [[Geometry layout]]&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=86</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=86"/>
		<updated>2020-11-09T05:59:32Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to SM64Decomp project wiki! This website is meant to help people working on the [https://github.com/n64decomp/sm64 Super Mario 64 Decompilation] project, especially on customizing the code for creating individual hacks.&lt;br /&gt;
&lt;br /&gt;
Please note that editing is currently restricted to a few selected users.&lt;br /&gt;
&lt;br /&gt;
This wiki is maintainted by [[User:Tenry|Tenry]] and is not associated with the decomp organization.&lt;br /&gt;
&lt;br /&gt;
When contributing to this wiki, please check out the [[SM64Decomp Wiki:Contribution guidelines|contribution guidelines]] first.&lt;br /&gt;
&lt;br /&gt;
== Categories ==&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Level|Level]] - everything you need if you want to create or modify a level or objects&lt;br /&gt;
* [[:Category:Coding|Coding]] - if you want to do custom coding or general enhancements&lt;br /&gt;
* [[:Category:Graphics|Graphics]] - if you want to change graphics or how they are displayed&lt;br /&gt;
* [[:Category:Audio|Audio]] - if you want to work with the sound effects or music&lt;br /&gt;
&lt;br /&gt;
== External resources ==&lt;br /&gt;
&lt;br /&gt;
* [[List of Discord servers]]&lt;br /&gt;
* [https://www.mariowiki.com/Super_Mario_64 Game overview on mariowiki.com]&lt;br /&gt;
* [https://ukikipedia.net/wiki/Main_Page Ukikipedia]&lt;br /&gt;
* [https://hack64.net/wiki/doku.php?id=start Hack64]&lt;br /&gt;
* [https://docs.google.com/document/d/1pSYR91UiMVKnP3PyvJiCdwRF5wNS_nZzMe-r2WPQUJk/edit?usp=sharing SM64 ROM Hacking Tools and Resources] (Google Docs)&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=SM64Decomp_Wiki:Contribution_guidelines&amp;diff=85</id>
		<title>SM64Decomp Wiki:Contribution guidelines</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=SM64Decomp_Wiki:Contribution_guidelines&amp;diff=85"/>
		<updated>2020-11-09T05:58:34Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;When contributing to this wiki, please follow the guidelines on this page.  * Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtai...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When contributing to this wiki, please follow the guidelines on this page.&lt;br /&gt;
&lt;br /&gt;
* Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtain them&lt;br /&gt;
* Do ''not'' post leaked source code&lt;br /&gt;
&lt;br /&gt;
== Page name policy ==&lt;br /&gt;
'''Use sentence case.''' Titles are written in sentence case. The initial letter of a title is almost always capitalized by default; otherwise, words are not capitalized unless they would be so in running text.&lt;br /&gt;
&lt;br /&gt;
'''Use singular form.''' Exceptions include nouns that are always in plural form.&lt;br /&gt;
&lt;br /&gt;
== Category name policy ==&lt;br /&gt;
'''Page name policy applies.'''&lt;br /&gt;
&lt;br /&gt;
Names of ''topic categories'' should be singular. Examples: &amp;quot;Health&amp;quot;, &amp;quot;HUD&amp;quot;. A category named &amp;quot;Behavior&amp;quot; should include pages dedicated to how behaviors work or how to create one.&lt;br /&gt;
&lt;br /&gt;
Names of ''set categories'' should be plural. Examples: &amp;quot;Hacks&amp;quot;, &amp;quot;Editors&amp;quot;. A category named &amp;quot;Behaviors&amp;quot; should include individual existing behaviors.&lt;br /&gt;
&lt;br /&gt;
== File name policy ==&lt;br /&gt;
'''Avoid very generic filenames.''' For example, a screenshot of a hack should not be given the name &amp;quot;File:Hack.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Examples of good file names are:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Screenshot of Super Mario 64 Intro Screen.jpg&amp;quot;&lt;br /&gt;
* &amp;quot;SM64 Beta Screenshot.png&amp;quot;&lt;br /&gt;
* &amp;quot;Star Icon.png&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Examples of bad file names:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Image01.png&amp;quot;&lt;br /&gt;
* &amp;quot;Mario.jpg&amp;quot;&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Color_combiner&amp;diff=84</id>
		<title>Color combiner</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Color_combiner&amp;diff=84"/>
		<updated>2020-11-09T04:47:41Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;The color combiner basically performs this equation: &amp;lt;code&amp;gt;color = (A - B) × C + D&amp;lt;/code&amp;gt;  A, B, C and D can come from many different sources. {| class=&amp;quot;wikitable&amp;quot; !Value !A...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The color combiner basically performs this equation: &amp;lt;code&amp;gt;color = (A - B) × C + D&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A, B, C and D can come from many different sources.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Value&lt;br /&gt;
!A&lt;br /&gt;
!B&lt;br /&gt;
!C&lt;br /&gt;
!D&lt;br /&gt;
!A alpha&lt;br /&gt;
!B alpha&lt;br /&gt;
!C alpha&lt;br /&gt;
!D alpha&lt;br /&gt;
|-&lt;br /&gt;
!0&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!1&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Texture 0&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Texture 1&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Primitive color&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Shade color&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Environment color&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Combined color&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Texture 0 alpha&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Texture 1 alpha&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Primitive color alpha&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Shade color alpha&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Environment color alpha&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Combined color alpha&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|-&lt;br /&gt;
!Noise&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Chroma key center&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Chroma key scale&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!YUV convert K4&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!YUV convert K5&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!LOD fraction&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Primitive LOD fraction&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|Y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Presets (Fast64) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Preset&lt;br /&gt;
!A&lt;br /&gt;
!B&lt;br /&gt;
!C&lt;br /&gt;
!D&lt;br /&gt;
!A alpha&lt;br /&gt;
!B alpha&lt;br /&gt;
!C alpha&lt;br /&gt;
!D alpha&lt;br /&gt;
|-&lt;br /&gt;
!Unlit Texture&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|-&lt;br /&gt;
!Unlit Texture Cutout&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0&lt;br /&gt;
|Texture 0 alpha&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
!Shaded Solid&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|-&lt;br /&gt;
!Decal On Shaded Solid&lt;br /&gt;
|Texture 0&lt;br /&gt;
|Shade color&lt;br /&gt;
|Texture 0 alpha&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|-&lt;br /&gt;
!Shaded Texture&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Environment color&lt;br /&gt;
|-&lt;br /&gt;
!Shaded Texture Cutout&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0 alpha&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
!Shaded Texture Cutout Transparent (Prim Alpha)&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0 alpha&lt;br /&gt;
|0&lt;br /&gt;
|Primitive color alpha&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
!Vertex Colored Texture&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|0&lt;br /&gt;
|Shade color alpha&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
!Environment Mapped&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|-&lt;br /&gt;
!Fog Shaded Texture&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Fog Shaded Texture Cutout&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Fog Shaded Texture Cutout Transparent (Prim Alpha)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!Vertex Colored Texture Transparent&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0 alpha&lt;br /&gt;
|0&lt;br /&gt;
|Shade color alpha&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
!Shaded Noise&lt;br /&gt;
|Noise&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Environment color alpha&lt;br /&gt;
|-&lt;br /&gt;
!Vertex Colored Texture (No Vertex Alpha)&lt;br /&gt;
|Texture 0&lt;br /&gt;
|0&lt;br /&gt;
|Shade color&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|0&lt;br /&gt;
|Texture 0 alpha&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://ultra64.ca/files/documentation/online-manuals/man/pro-man/pro12/index12.6.html Color Combiner] in the RDP Programming manual on ultra64.ca&lt;br /&gt;
&lt;br /&gt;
[[Category:Graphics]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Profiling&amp;diff=83</id>
		<title>Profiling</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Profiling&amp;diff=83"/>
		<updated>2020-11-09T01:29:35Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;The game has a builtin profiler which can be enabled by setting &amp;lt;code&amp;gt;gShowProfiler&amp;lt;/code&amp;gt; to ''TRUE'' in '''src/game/main.c'''. When enabled, colored bars are shown at the bo...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The game has a builtin profiler which can be enabled by setting &amp;lt;code&amp;gt;gShowProfiler&amp;lt;/code&amp;gt; to ''TRUE'' in '''src/game/main.c'''. When enabled, colored bars are shown at the bottom of the screen. Pressing L switches from mode 0 and 1.&lt;br /&gt;
&lt;br /&gt;
In mode 0, the colors of the top profilers have the following meanings:&lt;br /&gt;
&lt;br /&gt;
* Red: sound duration&lt;br /&gt;
* Yellow: level script execution&lt;br /&gt;
* Orange: render duration&lt;br /&gt;
&lt;br /&gt;
In mode 1, the colors of the top profilers have the following meanings:&lt;br /&gt;
&lt;br /&gt;
* Red (left): sound update times&lt;br /&gt;
* Yellow: gfx time related&lt;br /&gt;
* Orange: gfx time related&lt;br /&gt;
* Red (right): vblank time related&lt;br /&gt;
&lt;br /&gt;
The bottom line (blue, yellow, orange, red) are reference bars for the maximum length.&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=82</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=82"/>
		<updated>2020-11-09T00:55:44Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to SM64Decomp project wiki! This website is meant to help people working on the [https://github.com/n64decomp/sm64 Super Mario 64 Decompilation] project, especially on customizing the code for creating individual hacks.&lt;br /&gt;
&lt;br /&gt;
Please note that editing is currently restricted to a few selected users.&lt;br /&gt;
&lt;br /&gt;
This wiki is maintainted by [[User:Tenry|Tenry]] and is not associated with the decomp organization.&lt;br /&gt;
&lt;br /&gt;
== Categories ==&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Level|Level]] - everything you need if you want to create or modify a level or objects&lt;br /&gt;
* [[:Category:Coding|Coding]] - if you want to do custom coding or general enhancements&lt;br /&gt;
* [[:Category:Graphics|Graphics]] - if you want to change graphics or how they are displayed&lt;br /&gt;
* [[:Category:Audio|Audio]] - if you want to work with the sound effects or music&lt;br /&gt;
&lt;br /&gt;
== External resources ==&lt;br /&gt;
&lt;br /&gt;
* [[List of Discord servers]]&lt;br /&gt;
* [https://www.mariowiki.com/Super_Mario_64 Game overview on mariowiki.com]&lt;br /&gt;
* [https://ukikipedia.net/wiki/Main_Page Ukikipedia]&lt;br /&gt;
* [https://hack64.net/wiki/doku.php?id=start Hack64]&lt;br /&gt;
* [https://docs.google.com/document/d/1pSYR91UiMVKnP3PyvJiCdwRF5wNS_nZzMe-r2WPQUJk/edit?usp=sharing SM64 ROM Hacking Tools and Resources] (Google Docs)&lt;br /&gt;
&lt;br /&gt;
== Contribution guidelines ==&lt;br /&gt;
&lt;br /&gt;
* Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtain them&lt;br /&gt;
* Do ''not'' post leaked source code&lt;br /&gt;
&lt;br /&gt;
=== Page name policy ===&lt;br /&gt;
'''Use sentence case.''' Titles are written in sentence case. The initial letter of a title is almost always capitalized by default; otherwise, words are not capitalized unless they would be so in running text.&lt;br /&gt;
&lt;br /&gt;
'''Use singular form.''' Exceptions include nouns that are always in plural form.&lt;br /&gt;
&lt;br /&gt;
=== Category name policy ===&lt;br /&gt;
'''Page name policy applies.'''&lt;br /&gt;
&lt;br /&gt;
Names of ''topic categories'' should be singular. Examples: &amp;quot;Health&amp;quot;, &amp;quot;HUD&amp;quot;. A category named &amp;quot;Behavior&amp;quot; should include pages dedicated to how behaviors work or how to create one.&lt;br /&gt;
&lt;br /&gt;
Names of ''set categories'' should be plural. Examples: &amp;quot;Hacks&amp;quot;, &amp;quot;Editors&amp;quot;. A category named &amp;quot;Behaviors&amp;quot; should include individual existing behaviors.&lt;br /&gt;
&lt;br /&gt;
=== File name policy ===&lt;br /&gt;
'''Avoid very generic filenames.''' For example, a screenshot of a hack should not be given the name &amp;quot;File:Hack.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Examples of good file names are:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Screenshot of Super Mario 64 Intro Screen.jpg&amp;quot;&lt;br /&gt;
* &amp;quot;SM64 Beta Screenshot.png&amp;quot;&lt;br /&gt;
* &amp;quot;Star Icon.png&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Examples of bad file names:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Image01.png&amp;quot;&lt;br /&gt;
* &amp;quot;Mario.jpg&amp;quot;&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=81</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=81"/>
		<updated>2020-11-09T00:55:20Z</updated>

		<summary type="html">&lt;p&gt;Tenry: add link to mariowiki.com&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to SM64Decomp project wiki! This website is meant to help people working on the [https://github.com/n64decomp/sm64 Super Mario 64 Decompilation] project, especially on customizing the code for creating individual hacks.&lt;br /&gt;
&lt;br /&gt;
Please note that editing is currently restricted to a few selected users.&lt;br /&gt;
&lt;br /&gt;
This wiki is maintainted by [[User:Tenry|Tenry]] and is not associated with the decomp organization.&lt;br /&gt;
&lt;br /&gt;
== Categories ==&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Level|Level]] - everything you need if you want to create or modify a level or objects&lt;br /&gt;
* [[:Category:Coding|Coding]] - if you want to do custom coding or general enhancements&lt;br /&gt;
* [[:Category:Graphics|Graphics]] - if you want to change graphics or how they are displayed&lt;br /&gt;
* [[:Category:Audio|Audio]] - if you want to work with the sound effects or music&lt;br /&gt;
&lt;br /&gt;
== External resources ==&lt;br /&gt;
&lt;br /&gt;
* [[List of Discord servers]]&lt;br /&gt;
* [https://www.mariowiki.com/Super_Mario_64 Overview on mariowiki.com]&lt;br /&gt;
* [https://ukikipedia.net/wiki/Main_Page Ukikipedia]&lt;br /&gt;
* [https://hack64.net/wiki/doku.php?id=start Hack64]&lt;br /&gt;
* [https://docs.google.com/document/d/1pSYR91UiMVKnP3PyvJiCdwRF5wNS_nZzMe-r2WPQUJk/edit?usp=sharing SM64 ROM Hacking Tools and Resources] (Google Docs)&lt;br /&gt;
&lt;br /&gt;
== Contribution guidelines ==&lt;br /&gt;
&lt;br /&gt;
* Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtain them&lt;br /&gt;
* Do ''not'' post leaked source code&lt;br /&gt;
&lt;br /&gt;
=== Page name policy ===&lt;br /&gt;
'''Use sentence case.''' Titles are written in sentence case. The initial letter of a title is almost always capitalized by default; otherwise, words are not capitalized unless they would be so in running text.&lt;br /&gt;
&lt;br /&gt;
'''Use singular form.''' Exceptions include nouns that are always in plural form.&lt;br /&gt;
&lt;br /&gt;
=== Category name policy ===&lt;br /&gt;
'''Page name policy applies.'''&lt;br /&gt;
&lt;br /&gt;
Names of ''topic categories'' should be singular. Examples: &amp;quot;Health&amp;quot;, &amp;quot;HUD&amp;quot;. A category named &amp;quot;Behavior&amp;quot; should include pages dedicated to how behaviors work or how to create one.&lt;br /&gt;
&lt;br /&gt;
Names of ''set categories'' should be plural. Examples: &amp;quot;Hacks&amp;quot;, &amp;quot;Editors&amp;quot;. A category named &amp;quot;Behaviors&amp;quot; should include individual existing behaviors.&lt;br /&gt;
&lt;br /&gt;
=== File name policy ===&lt;br /&gt;
'''Avoid very generic filenames.''' For example, a screenshot of a hack should not be given the name &amp;quot;File:Hack.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Examples of good file names are:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Screenshot of Super Mario 64 Intro Screen.jpg&amp;quot;&lt;br /&gt;
* &amp;quot;SM64 Beta Screenshot.png&amp;quot;&lt;br /&gt;
* &amp;quot;Star Icon.png&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Examples of bad file names:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Image01.png&amp;quot;&lt;br /&gt;
* &amp;quot;Mario.jpg&amp;quot;&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Level_limitations&amp;diff=80</id>
		<title>Level limitations</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Level_limitations&amp;diff=80"/>
		<updated>2020-11-09T00:54:42Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;When creating or editing a custom level, certain limitations have to be kept in mind:  * Maximum number of triangles is 6500 (to be verified) * Level playing field is limited...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When creating or editing a custom level, certain limitations have to be kept in mind:&lt;br /&gt;
&lt;br /&gt;
* Maximum number of triangles is 6500 (to be verified)&lt;br /&gt;
* Level playing field is limited in X and Z from -8192 to +8192, but can be [[Extended bounds|extended]]&lt;br /&gt;
* Texture can not be repeated more than 32 times on a single polygon (to be verified)&lt;br /&gt;
&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Instruments&amp;diff=79</id>
		<title>Instruments</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Instruments&amp;diff=79"/>
		<updated>2020-11-08T22:11:46Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Redirected page to List of instruments&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[List of instruments]]&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=78</id>
		<title>List of sound banks</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=78"/>
		<updated>2020-11-08T21:09:59Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Sound bank&lt;br /&gt;
!Usage&lt;br /&gt;
!Sample bank&lt;br /&gt;
!Instrument no.&lt;br /&gt;
!Samples&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |00&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |sfx_1&lt;br /&gt;
|1&lt;br /&gt;
|00_twirl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_brushing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_hand_touch&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03_yoshi&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04_plop&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05_heavy_landing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;9&amp;quot; |01&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |sfx_terrain&lt;br /&gt;
|1&lt;br /&gt;
|00_step_default&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_step_grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02_step_stone&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03_step_spooky&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04_step_snow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05_step_ice&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06_step_metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07_step_sand&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;3&amp;quot; |02&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |sfx_water&lt;br /&gt;
|1&lt;br /&gt;
|00_plunge&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_splash&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_swin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |03&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |sfx_4&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |04&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|warp sound (hole/pipe)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|opening metal door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|door closing&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|flowing water&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|bubble&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0B&lt;br /&gt;
|thrown out of painting&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|star catch/warp&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |05&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|0E&lt;br /&gt;
|gunshot (Koopa the QUick race start)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|wind&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|destroyed box&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|bird chirp 1&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|bird chirp 2&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|bird chirp 3&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|bird chirp 4&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|bird chirp 5&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|1B&lt;br /&gt;
|jumping box&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|1C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |06&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_6&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|Mips the bunny&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|rawr (Bowser)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|Bowser death&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|swoosh&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|Bowser inhale&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|baby penguin&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|Boo&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|cannon moving sound 1&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cannon moving sound 2&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|Piranha Plant dying&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|pushing box&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;15&amp;quot; |07&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |sfx_7&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|scuttlebug step&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|Ukiki&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cowbell&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|Whomp/Thwomp&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|piano chomping sound&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|Chain Chomp&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;27&amp;quot; |08&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |sfx_mario&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|17&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|18&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|19&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;7&amp;quot; |09&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |sfx_9&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;24&amp;quot; |0A&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |sfx_mario_peach&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |0B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |08_level_snow&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;3&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|jingles&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |0C&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |''unused''&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|42&lt;br /&gt;
|celesta&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |0D&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |09_level_slide&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|whistle with vibrato&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|harpischord&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|hand clap and snare drum&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;7&amp;quot; |0E&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |04_level_inside_casle&lt;br /&gt;
15_cutscene_star_spawn&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|46, 47&lt;br /&gt;
|pizzicato strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|2D&lt;br /&gt;
|cello&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; |0F&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |06_water_hot&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|39&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |10&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |0A_level_spooky&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3F&lt;br /&gt;
|low cowbell&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;14&amp;quot; |11&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |02_menu_title_screen&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick / snare split&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|21&lt;br /&gt;
|lead 8 (bass+lead)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|35&lt;br /&gt;
|percussive organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|48&lt;br /&gt;
|steel drums&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (clean)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |12&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |07_level_boss_koopa&lt;br /&gt;
10_event_koopa_message&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|30&lt;br /&gt;
|charang (lead 5)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|32, 33&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|10, 11&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|34&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |13&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |05_level_water&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;5&amp;quot; |14&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |0B_event_piranha_plant&lt;br /&gt;
1B_event_solve_puzzle&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |piranha_music_box&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |15&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |0C_level_underground&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|acoustic steel guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot; |16&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |0D_menu_star_select&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |course_start&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |17&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |0E_event_powerup&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|05&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;15&amp;quot; |18&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |0F_event_metal_cap&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|35&lt;br /&gt;
|organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|36&lt;br /&gt;
|synth bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|37&lt;br /&gt;
|saw wave&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|12, 13&lt;br /&gt;
|orchestral percussion&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick and snare split&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |19&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |11_level_koopa_road&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |1A&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |14_event_race&lt;br /&gt;
17_cutscene_collect_key&lt;br /&gt;
&lt;br /&gt;
1F_cutscene_victory&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2D&lt;br /&gt;
|cello or low woodwind&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sampel&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |1B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |16_event_boss&lt;br /&gt;
1E_cutscene_intro&lt;br /&gt;
&lt;br /&gt;
22_cutscene_lakitu&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;7&amp;quot; |1C&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |18_event_endless_stairs&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;6&amp;quot; |1D&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |19_level_boss_koopa_final&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|02&lt;br /&gt;
|choir&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; |1E&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |1D_event_peach_message&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;13&amp;quot; |1F&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |12_event_high_score&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;8&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|bells&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snaare drum&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;9&amp;quot; |20&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |1C_event_toad_message&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;6&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;4&amp;quot; |21&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |0A_level_spooky&lt;br /&gt;
event_merry_go_round&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;12&amp;quot; |22&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |01_cutscene_collect_star&lt;br /&gt;
03_level_grass&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (muted)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|open/closed hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;8&amp;quot; |23&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |20_cutscene_ending&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;10&amp;quot; |24&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |21_menu_file_select&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;16&amp;quot; |25&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |1A_cutscene_credits&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (jazz)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|16, 45&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[List of instruments|List of Instruments]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=77</id>
		<title>List of instruments</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=77"/>
		<updated>2020-11-08T20:48:56Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Instrument !! Sound bank/instrument !! Envelope !! Release rate !! Normal range !! Samples&lt;br /&gt;
|-&lt;br /&gt;
! church organ &lt;br /&gt;
| 1D/00, 1D/01, 1D/02, 1D/03, 1D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 50 || bowser_organ: 00, 01 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! church organ &lt;br /&gt;
| 1D/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || bowser_organ: 02&lt;br /&gt;
|-&lt;br /&gt;
!  &lt;br /&gt;
| 16/00, 16/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || course_start: 00_la&lt;br /&gt;
|-&lt;br /&gt;
! banjo &lt;br /&gt;
| 0D/00, 0D/01 || 2: 32700, 130: 4954, 523: 0, hang || 100 || 41; 127 || instruments: 00 (lo), 01&lt;br /&gt;
|-&lt;br /&gt;
! fiddle &lt;br /&gt;
| 0D/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 180 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 02&lt;br /&gt;
|-&lt;br /&gt;
! fiddle &lt;br /&gt;
| 0D/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! whistle with vibrato &lt;br /&gt;
| 0D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 76 || 0; 127 || instruments: 03&lt;br /&gt;
|-&lt;br /&gt;
! harpischord &lt;br /&gt;
| 0D/05, 15/05 || 2: 32700, 205: 0, 1: 0, hang || 53 || 0; 127 || instruments: 04&lt;br /&gt;
|-&lt;br /&gt;
! acoustic bass &lt;br /&gt;
| 0D/06, 17/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 05&lt;br /&gt;
|-&lt;br /&gt;
! drum machine kick / snare split &lt;br /&gt;
| 11/00, 18/0E || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 19; 19 || instruments: 38 (lo), 08 (tuning: 2.121321), 38 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! cymbal, closed/open hi-hat &lt;br /&gt;
| 0B/0A, 0D/0A, 11/0A, 12/0A, 13/0A, 17/0A, 18/0A, 22/0A, 25/0A || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 24; 127 || instruments: 0E (lo), 0F&lt;br /&gt;
|-&lt;br /&gt;
! crash cymbal &lt;br /&gt;
| 0C/0B, 0D/0B, 11/0B, 12/0B, 13/0B, 17/0B, 19/0B, 1A/0B, 1B/0B, 22/0B, 25/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 28; 28 || instruments: 10 (lo), 11, 10 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! hand clap and snare drum &lt;br /&gt;
| 0C/0C, 0D/0C, 11/0C, 18/0D, 19/0A, 1A/0C, 1B/08, 1F/0C || 2: 32700, 55: 32700, 127: 0, hang || 10 || 18; 127 || instruments: 12 (lo), 13&lt;br /&gt;
|-&lt;br /&gt;
! strings &lt;br /&gt;
| 1A/03, 1B/00, 1B/01, 1B/04, 1C/04, 1C/05, 1C/06, 24/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 42; 127 || instruments: 14 (lo), 15&lt;br /&gt;
|-&lt;br /&gt;
! French horn &lt;br /&gt;
| 0B/06, 0B/07, 1A/02, 1B/02, 20/00, 20/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 16&lt;br /&gt;
|-&lt;br /&gt;
! French horn &lt;br /&gt;
| 25/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 53 || 0; 50 || instruments: 16, 45 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! trumpet &lt;br /&gt;
| 1A/00, 1B/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 67 || 0; 127 || instruments: 17&lt;br /&gt;
|-&lt;br /&gt;
! timpani &lt;br /&gt;
| 19/0C, 1A/0A, 1B/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 18&lt;br /&gt;
|-&lt;br /&gt;
! brass &lt;br /&gt;
| 11/05, 19/01, 19/06, 1A/04, 22/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 19&lt;br /&gt;
|-&lt;br /&gt;
! slap bass &lt;br /&gt;
| 11/06, 15/03, 22/06, 25/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1A&lt;br /&gt;
|-&lt;br /&gt;
! synth voice &lt;br /&gt;
| 11/07, 22/07 || 2: 32700, 205: 19818, 535: 0, hang || 128 || 0; 127 || instruments: 1B&lt;br /&gt;
|-&lt;br /&gt;
! electric guitar (clean) &lt;br /&gt;
| 11/08, 22/08, 25/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1C&lt;br /&gt;
|-&lt;br /&gt;
! melodic tom &lt;br /&gt;
| 15/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 1D&lt;br /&gt;
|-&lt;br /&gt;
! melodic tom &lt;br /&gt;
| 15/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! triangle and cabasa &lt;br /&gt;
| 0C/0D, 11/0D, 15/01, 17/0C, 18/0C, 25/0C || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 60; 60 || instruments: 1E (lo), 1F, 20 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 0C/06, 11/01, 13/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || rowspan=&amp;quot;3&amp;quot; | instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 15/02 || 2: 32700, 205: 18167, 205: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 15/04 || 2: 32700, 205: 18167, 205: 0, hang || 114 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! choir &lt;br /&gt;
| 0F/01, 15/07, 15/08, 19/00, 19/07, 24/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 22&lt;br /&gt;
|-&lt;br /&gt;
! strings &lt;br /&gt;
| 0E/00, 0E/01, 0E/02, 12/06, 13/00, 13/01, 17/02, 17/03, 19/02, 1E/02, 1E/03, 20/08, 23/00, 23/01, 23/02, 25/07 || 6: 32700, 1: 32700, 32700: 29430, hang || 15 || 27; 46 || instruments: 23 (lo), 24, 25 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! electric piano &lt;br /&gt;
| 0E/05, 13/0E, 17/04, 1A/05, 21/03, 23/05, 25/03 || 6: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 26&lt;br /&gt;
|-&lt;br /&gt;
! electric piano &lt;br /&gt;
| 0E/06, 13/0F, 23/06, 25/08 || 3: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 1E/00, 23/07 || 2: 32700, 202: 0, 1: 0, hang || 255 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 27&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 1E/01 || 2: 32700, 82: 0, 1: 0, hang || 255 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! sitar &lt;br /&gt;
| 0F/02, 19/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 90 || 0; 127 || instruments: 28&lt;br /&gt;
|-&lt;br /&gt;
! orchestra hit &lt;br /&gt;
| 12/03, 18/03, 19/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 29&lt;br /&gt;
|-&lt;br /&gt;
! percussion loop &lt;br /&gt;
| 0F/00, 19/05 || 2: 32700, 187: 0, 32700: 0, hang || 100 || 55; 56 || instruments: 2A (lo), 2B, 2C (hi)&lt;br /&gt;
|-&lt;br /&gt;
! cello &lt;br /&gt;
| 0E/04, 1A/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 2D&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 0B/01, 0B/02, 1F/00, 1F/02, 21/00, 21/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2E&lt;br /&gt;
|-&lt;br /&gt;
! jingles &lt;br /&gt;
| 0B/0B, 1F/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2F&lt;br /&gt;
|-&lt;br /&gt;
! charang (lead 5) &lt;br /&gt;
| 12/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 30&lt;br /&gt;
|-&lt;br /&gt;
! overdriven guitar &lt;br /&gt;
| 12/01, 12/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 31&lt;br /&gt;
|-&lt;br /&gt;
! drum sample &lt;br /&gt;
| 12/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 14; 15 || instruments: 32 (tuning: 2.244924) (lo), 33, 32 (tuning: 2.828428) (hi)&lt;br /&gt;
|-&lt;br /&gt;
! recorder &lt;br /&gt;
| 0C/07, 12/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 114 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 34&lt;br /&gt;
|-&lt;br /&gt;
! recorder &lt;br /&gt;
| 0C/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! percussive organ &lt;br /&gt;
| 11/03, 18/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 35&lt;br /&gt;
|-&lt;br /&gt;
! synth bass &lt;br /&gt;
| 18/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 36&lt;br /&gt;
|-&lt;br /&gt;
! saw wave &lt;br /&gt;
| 18/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 37&lt;br /&gt;
|-&lt;br /&gt;
! sitar &lt;br /&gt;
| 0F/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 39&lt;br /&gt;
|-&lt;br /&gt;
! xylophone &lt;br /&gt;
| 1C/00, 1C/01, 1C/02 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 3A&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0B/00, 0C/00, 17/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 29; 63 || rowspan=&amp;quot;3&amp;quot; | instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0C/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 29; 61 &lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0C/02, 0C/03, 0C/04, 0C/05 || 2: 32700, 205: 1651, 211: 0, hang || 38 || 29; 61 &lt;br /&gt;
|-&lt;br /&gt;
! dark ambience &lt;br /&gt;
| 10/00, 10/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 3E&lt;br /&gt;
|-&lt;br /&gt;
! low cowbell &lt;br /&gt;
| 10/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 3F&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/04 || 2: 32700, 145: 7597, 343: 0, hang || 10 || 0; 127 || rowspan=&amp;quot;3&amp;quot; | instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/05 || 2: 32700, 154: 7597, 295: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/06 || 2: 32700, 145: 8257, 325: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! pan flute &lt;br /&gt;
| 24/00, 25/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 41&lt;br /&gt;
|-&lt;br /&gt;
! pan flute &lt;br /&gt;
| 24/01 || 26: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! celesta &lt;br /&gt;
| 0C/0F || 2: 32700, 103: 24112, 409: 0, hang || 10 || 0; 127 || instruments: 42&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 25/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 43&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 25/0E || 11: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! grand piano &lt;br /&gt;
| 25/04 || 2: 32700, 205: 0, 1: 0, hang || 34 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 44&lt;br /&gt;
|-&lt;br /&gt;
! grand piano &lt;br /&gt;
| 25/0F || 2: 32700, 205: 0, 1: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! pizzicato strings &lt;br /&gt;
| 0E/03 || 2: 32700, 136: 0, 32700: 0, hang || 43 || 0; 47 || instruments: 46, 47 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! steel drums &lt;br /&gt;
| 11/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 48&lt;br /&gt;
|-&lt;br /&gt;
! music box &lt;br /&gt;
| 14/00, 14/01, 14/02, 14/03, 14/04 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || piranha_music_box: 00_pling&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[List of sound banks]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=76</id>
		<title>List of sound banks</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=76"/>
		<updated>2020-11-08T20:48:37Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Sound bank&lt;br /&gt;
!Sample bank&lt;br /&gt;
!Instrument no.&lt;br /&gt;
!Samples&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |00&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |sfx_1&lt;br /&gt;
|1&lt;br /&gt;
|00_twirl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_brushing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_hand_touch&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03_yoshi&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04_plop&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05_heavy_landing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |01&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |sfx_terrain&lt;br /&gt;
|1&lt;br /&gt;
|00_step_default&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_step_grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02_step_stone&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03_step_spooky&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04_step_snow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05_step_ice&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06_step_metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07_step_sand&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |02&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |sfx_water&lt;br /&gt;
|1&lt;br /&gt;
|00_plunge&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_splash&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_swin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |03&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |sfx_4&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |04&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|warp sound (hole/pipe)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|opening metal door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|door closing&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|flowing water&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|bubble&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0B&lt;br /&gt;
|thrown out of painting&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|star catch/warp&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |05&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|0E&lt;br /&gt;
|gunshot (Koopa the QUick race start)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|wind&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|destroyed box&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|bird chirp 1&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|bird chirp 2&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|bird chirp 3&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|bird chirp 4&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|bird chirp 5&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|1B&lt;br /&gt;
|jumping box&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|1C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |06&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_6&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|Mips the bunny&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|rawr (Bowser)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|Bowser death&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|swoosh&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|Bowser inhale&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|baby penguin&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|Boo&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|cannon moving sound 1&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cannon moving sound 2&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|Piranha Plant dying&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|pushing box&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |07&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |sfx_7&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|scuttlebug step&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|Ukiki&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cowbell&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|Whomp/Thwomp&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|piano chomping sound&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|Chain Chomp&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |08&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |sfx_mario&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|17&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|18&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|19&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |09&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |sfx_9&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |0A&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |sfx_mario_peach&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |0B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;3&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|jingles&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |0C&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|42&lt;br /&gt;
|celesta&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |0D&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|whistle with vibrato&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|harpischord&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|hand clap and snare drum&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |0E&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|46, 47&lt;br /&gt;
|pizzicato strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|2D&lt;br /&gt;
|cello&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |0F&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|39&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |10&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3F&lt;br /&gt;
|low cowbell&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |11&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick / snare split&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|21&lt;br /&gt;
|lead 8 (bass+lead)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|35&lt;br /&gt;
|percussive organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|48&lt;br /&gt;
|steel drums&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (clean)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |12&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|30&lt;br /&gt;
|charang (lead 5)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|32, 33&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|10, 11&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|34&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |13&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |14&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |piranha_music_box&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |15&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|acoustic steel guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |16&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |course_start&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |17&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|05&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |18&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|35&lt;br /&gt;
|organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|36&lt;br /&gt;
|synth bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|37&lt;br /&gt;
|saw wave&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|12, 13&lt;br /&gt;
|orchestral percussion&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick and snare split&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |19&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |1A&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2D&lt;br /&gt;
|cello or low woodwind&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sampel&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |1B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |1C&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |1D&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|02&lt;br /&gt;
|choir&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |1E&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |1F&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;8&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|bells&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snaare drum&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |20&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;6&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |21&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |22&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (muted)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|open/closed hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |23&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |24&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |25&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (jazz)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|16, 45&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[List of instruments|List of Instruments]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=75</id>
		<title>List of sound banks</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_sound_banks&amp;diff=75"/>
		<updated>2020-11-08T20:47:41Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Sound bank&lt;br /&gt;
!Sample bank&lt;br /&gt;
!Instrument no.&lt;br /&gt;
!Samples&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |00&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |sfx_1&lt;br /&gt;
|1&lt;br /&gt;
|00_twirl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_brushing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_hand_touch&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03_yoshi&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04_plop&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05_heavy_landing&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |01&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |sfx_terrain&lt;br /&gt;
|1&lt;br /&gt;
|00_step_default&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_step_grass&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02_step_stone&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03_step_spooky&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04_step_snow&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05_step_ice&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06_step_metal&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07_step_sand&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |02&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; |sfx_water&lt;br /&gt;
|1&lt;br /&gt;
|00_plunge&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01_splash&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02_swin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |03&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |sfx_4&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |04&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|warp sound (hole/pipe)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|opening metal door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|door closing&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|flowing water&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|bubble&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0B&lt;br /&gt;
|thrown out of painting&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|star catch/warp&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |05&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_5&lt;br /&gt;
|1&lt;br /&gt;
|0E&lt;br /&gt;
|gunshot (Koopa the QUick race start)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|02&lt;br /&gt;
|opening door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|13&lt;br /&gt;
|wind&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|14&lt;br /&gt;
|destroyed box&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|15&lt;br /&gt;
|bird chirp 1&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|16&lt;br /&gt;
|bird chirp 2&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|17&lt;br /&gt;
|bird chirp 3&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|18&lt;br /&gt;
|bird chirp 4&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|19&lt;br /&gt;
|bird chirp 5&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|1B&lt;br /&gt;
|jumping box&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|1C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |06&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |sfx_6&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|Mips the bunny&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|rawr (Bowser)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|Bowser death&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|swoosh&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|Bowser inhale&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|baby penguin&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|Boo&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|cannon moving sound 1&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cannon moving sound 2&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|door knob&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0C&lt;br /&gt;
|Piranha Plant dying&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0D&lt;br /&gt;
|pushing box&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |07&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |sfx_7&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|scuttlebug step&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|Ukiki&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|cowbell&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|Whomp/Thwomp&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|piano chomping sound&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|Chain Chomp&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |08&lt;br /&gt;
| rowspan=&amp;quot;27&amp;quot; |sfx_mario&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|17&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|18&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|26&lt;br /&gt;
|19&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|1A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |09&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |sfx_9&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |0A&lt;br /&gt;
| rowspan=&amp;quot;24&amp;quot; |sfx_mario_peach&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|N/A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|06&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|07&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|09&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|0A&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|0B&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|0C&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|0D&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|0E&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|18&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|19&lt;br /&gt;
|11&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |0B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;3&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|jingles&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |0C&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|34&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|42&lt;br /&gt;
|celesta&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |0D&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|02&lt;br /&gt;
|fiddle&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|03&lt;br /&gt;
|whistle with vibrato&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|harpischord&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|05&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|hand clap and snare drum&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |0E&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|46, 47&lt;br /&gt;
|pizzicato strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|2D&lt;br /&gt;
|cello&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |0F&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|39&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |10&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3E&lt;br /&gt;
|dark ambience (known from ghost state)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3F&lt;br /&gt;
|low cowbell&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|40&lt;br /&gt;
|high cowbell&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |11&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick / snare split&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|21&lt;br /&gt;
|lead 8 (bass+lead)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|35&lt;br /&gt;
|percussive organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|48&lt;br /&gt;
|steel drums&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (clean)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snare drum&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |12&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|30&lt;br /&gt;
|charang (lead 5)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|31&lt;br /&gt;
|overdriven guitar&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|32, 33&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|recorder&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|10, 11&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|34&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |13&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |14&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; |piranha_music_box&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00&lt;br /&gt;
|music box&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |15&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|21&lt;br /&gt;
|electric bass&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|04&lt;br /&gt;
|acoustic steel guitar&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1D&lt;br /&gt;
|melodic tom&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |16&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |course_start&lt;br /&gt;
|1&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |17&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3B, 3C, 3D&lt;br /&gt;
|acoustic bass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|05&lt;br /&gt;
|banjo&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |18&lt;br /&gt;
| rowspan=&amp;quot;15&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|35&lt;br /&gt;
|organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|36&lt;br /&gt;
|synth bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|37&lt;br /&gt;
|saw wave&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|cymbal&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|12, 13&lt;br /&gt;
|orchestral percussion&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|08, 38&lt;br /&gt;
|drum machine kick and snare split&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |19&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|28&lt;br /&gt;
|sitar&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|29&lt;br /&gt;
|orchestra hit&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|2A, 2B, 2C&lt;br /&gt;
|percussion loop&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |1A&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|2D&lt;br /&gt;
|cello or low woodwind&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|19&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;4&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sampel&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |1B&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|17&lt;br /&gt;
|trumpet&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|18&lt;br /&gt;
|timpani&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|12, 13&lt;br /&gt;
|drum sample&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |1C&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|3A&lt;br /&gt;
|xylophone&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |1D&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|00, 01&lt;br /&gt;
|church organ&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|02&lt;br /&gt;
|choir&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |1E&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |1F&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;8&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|2F&lt;br /&gt;
|bells&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|12, 13&lt;br /&gt;
|snaare drum&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |20&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;6&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|16&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |21&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|2E&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |22&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|19&lt;br /&gt;
|brass&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|1B&lt;br /&gt;
|synth voice&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (muted)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|open/closed hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |23&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|27&lt;br /&gt;
|acoustic guitar&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |24&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|14, 15&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|22&lt;br /&gt;
|choir (known from Bowser stages)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;5&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |25&lt;br /&gt;
| rowspan=&amp;quot;16&amp;quot; |instruments&lt;br /&gt;
|1&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|1A&lt;br /&gt;
|slap bass&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|1C&lt;br /&gt;
|electric guitar (jazz)&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|16, 45&lt;br /&gt;
|French horn&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|41&lt;br /&gt;
|pan flute&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|23, 24, 25&lt;br /&gt;
|strings&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|26&lt;br /&gt;
|electric piano (main water instrument)&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|(percussion)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|0E, 0F&lt;br /&gt;
|closed/open hi-hat&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|10, 11&lt;br /&gt;
|crash cymbal and ride cymbal&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|1E, 1F, 20&lt;br /&gt;
|triangle and cabasa&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |N/A&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|43&lt;br /&gt;
|accordion&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|44&lt;br /&gt;
|grand piano&lt;br /&gt;
|}&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=74</id>
		<title>List of instruments</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=74"/>
		<updated>2020-11-08T20:46:05Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Instrument !! Sound bank/instrument !! Envelope !! Release rate !! Normal range !! Samples&lt;br /&gt;
|-&lt;br /&gt;
! church organ &lt;br /&gt;
| 1D/00, 1D/01, 1D/02, 1D/03, 1D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 50 || bowser_organ: 00, 01 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! church organ &lt;br /&gt;
| 1D/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || bowser_organ: 02&lt;br /&gt;
|-&lt;br /&gt;
!  &lt;br /&gt;
| 16/00, 16/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || course_start: 00_la&lt;br /&gt;
|-&lt;br /&gt;
! banjo &lt;br /&gt;
| 0D/00, 0D/01 || 2: 32700, 130: 4954, 523: 0, hang || 100 || 41; 127 || instruments: 00 (lo), 01&lt;br /&gt;
|-&lt;br /&gt;
! fiddle &lt;br /&gt;
| 0D/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 180 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 02&lt;br /&gt;
|-&lt;br /&gt;
! fiddle &lt;br /&gt;
| 0D/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! whistle with vibrato &lt;br /&gt;
| 0D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 76 || 0; 127 || instruments: 03&lt;br /&gt;
|-&lt;br /&gt;
! harpischord &lt;br /&gt;
| 0D/05, 15/05 || 2: 32700, 205: 0, 1: 0, hang || 53 || 0; 127 || instruments: 04&lt;br /&gt;
|-&lt;br /&gt;
! acoustic bass &lt;br /&gt;
| 0D/06, 17/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 05&lt;br /&gt;
|-&lt;br /&gt;
! drum machine kick / snare split &lt;br /&gt;
| 11/00, 18/0E || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 19; 19 || instruments: 38 (lo), 08 (tuning: 2.121321), 38 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! cymbal, closed/open hi-hat &lt;br /&gt;
| 0B/0A, 0D/0A, 11/0A, 12/0A, 13/0A, 17/0A, 18/0A, 22/0A, 25/0A || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 24; 127 || instruments: 0E (lo), 0F&lt;br /&gt;
|-&lt;br /&gt;
! crash cymbal &lt;br /&gt;
| 0C/0B, 0D/0B, 11/0B, 12/0B, 13/0B, 17/0B, 19/0B, 1A/0B, 1B/0B, 22/0B, 25/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 28; 28 || instruments: 10 (lo), 11, 10 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! hand clap and snare drum &lt;br /&gt;
| 0C/0C, 0D/0C, 11/0C, 18/0D, 19/0A, 1A/0C, 1B/08, 1F/0C || 2: 32700, 55: 32700, 127: 0, hang || 10 || 18; 127 || instruments: 12 (lo), 13&lt;br /&gt;
|-&lt;br /&gt;
! strings &lt;br /&gt;
| 1A/03, 1B/00, 1B/01, 1B/04, 1C/04, 1C/05, 1C/06, 24/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 42; 127 || instruments: 14 (lo), 15&lt;br /&gt;
|-&lt;br /&gt;
! French horn &lt;br /&gt;
| 0B/06, 0B/07, 1A/02, 1B/02, 20/00, 20/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 16&lt;br /&gt;
|-&lt;br /&gt;
! French horn &lt;br /&gt;
| 25/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 53 || 0; 50 || instruments: 16, 45 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! trumpet &lt;br /&gt;
| 1A/00, 1B/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 67 || 0; 127 || instruments: 17&lt;br /&gt;
|-&lt;br /&gt;
! timpani &lt;br /&gt;
| 19/0C, 1A/0A, 1B/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 18&lt;br /&gt;
|-&lt;br /&gt;
! brass &lt;br /&gt;
| 11/05, 19/01, 19/06, 1A/04, 22/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 19&lt;br /&gt;
|-&lt;br /&gt;
! slap bass &lt;br /&gt;
| 11/06, 15/03, 22/06, 25/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1A&lt;br /&gt;
|-&lt;br /&gt;
! synth voice &lt;br /&gt;
| 11/07, 22/07 || 2: 32700, 205: 19818, 535: 0, hang || 128 || 0; 127 || instruments: 1B&lt;br /&gt;
|-&lt;br /&gt;
! electric guitar (clean) &lt;br /&gt;
| 11/08, 22/08, 25/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1C&lt;br /&gt;
|-&lt;br /&gt;
! melodic tom &lt;br /&gt;
| 15/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 1D&lt;br /&gt;
|-&lt;br /&gt;
! melodic tom &lt;br /&gt;
| 15/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! triangle and cabasa &lt;br /&gt;
| 0C/0D, 11/0D, 15/01, 17/0C, 18/0C, 25/0C || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 60; 60 || instruments: 1E (lo), 1F, 20 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 0C/06, 11/01, 13/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || rowspan=&amp;quot;3&amp;quot; | instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 15/02 || 2: 32700, 205: 18167, 205: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 15/04 || 2: 32700, 205: 18167, 205: 0, hang || 114 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! choir &lt;br /&gt;
| 0F/01, 15/07, 15/08, 19/00, 19/07, 24/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 22&lt;br /&gt;
|-&lt;br /&gt;
! strings &lt;br /&gt;
| 0E/00, 0E/01, 0E/02, 12/06, 13/00, 13/01, 17/02, 17/03, 19/02, 1E/02, 1E/03, 20/08, 23/00, 23/01, 23/02, 25/07 || 6: 32700, 1: 32700, 32700: 29430, hang || 15 || 27; 46 || instruments: 23 (lo), 24, 25 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! electric piano &lt;br /&gt;
| 0E/05, 13/0E, 17/04, 1A/05, 21/03, 23/05, 25/03 || 6: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 26&lt;br /&gt;
|-&lt;br /&gt;
! electric piano &lt;br /&gt;
| 0E/06, 13/0F, 23/06, 25/08 || 3: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 1E/00, 23/07 || 2: 32700, 202: 0, 1: 0, hang || 255 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 27&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 1E/01 || 2: 32700, 82: 0, 1: 0, hang || 255 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! sitar &lt;br /&gt;
| 0F/02, 19/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 90 || 0; 127 || instruments: 28&lt;br /&gt;
|-&lt;br /&gt;
! orchestra hit &lt;br /&gt;
| 12/03, 18/03, 19/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 29&lt;br /&gt;
|-&lt;br /&gt;
! percussion loop &lt;br /&gt;
| 0F/00, 19/05 || 2: 32700, 187: 0, 32700: 0, hang || 100 || 55; 56 || instruments: 2A (lo), 2B, 2C (hi)&lt;br /&gt;
|-&lt;br /&gt;
! cello &lt;br /&gt;
| 0E/04, 1A/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 2D&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 0B/01, 0B/02, 1F/00, 1F/02, 21/00, 21/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2E&lt;br /&gt;
|-&lt;br /&gt;
! jingles &lt;br /&gt;
| 0B/0B, 1F/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2F&lt;br /&gt;
|-&lt;br /&gt;
! charang (lead 5) &lt;br /&gt;
| 12/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 30&lt;br /&gt;
|-&lt;br /&gt;
! overdriven guitar &lt;br /&gt;
| 12/01, 12/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 31&lt;br /&gt;
|-&lt;br /&gt;
! drum sample &lt;br /&gt;
| 12/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 14; 15 || instruments: 32 (tuning: 2.244924) (lo), 33, 32 (tuning: 2.828428) (hi)&lt;br /&gt;
|-&lt;br /&gt;
! recorder &lt;br /&gt;
| 0C/07, 12/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 114 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 34&lt;br /&gt;
|-&lt;br /&gt;
! recorder &lt;br /&gt;
| 0C/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! percussive organ &lt;br /&gt;
| 11/03, 18/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 35&lt;br /&gt;
|-&lt;br /&gt;
! synth bass &lt;br /&gt;
| 18/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 36&lt;br /&gt;
|-&lt;br /&gt;
! saw wave &lt;br /&gt;
| 18/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 37&lt;br /&gt;
|-&lt;br /&gt;
! sitar &lt;br /&gt;
| 0F/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 39&lt;br /&gt;
|-&lt;br /&gt;
! xylophone &lt;br /&gt;
| 1C/00, 1C/01, 1C/02 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 3A&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0B/00, 0C/00, 17/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 29; 63 || rowspan=&amp;quot;3&amp;quot; | instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0C/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 29; 61 &lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0C/02, 0C/03, 0C/04, 0C/05 || 2: 32700, 205: 1651, 211: 0, hang || 38 || 29; 61 &lt;br /&gt;
|-&lt;br /&gt;
! dark ambience &lt;br /&gt;
| 10/00, 10/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 3E&lt;br /&gt;
|-&lt;br /&gt;
! low cowbell &lt;br /&gt;
| 10/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 3F&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/04 || 2: 32700, 145: 7597, 343: 0, hang || 10 || 0; 127 || rowspan=&amp;quot;3&amp;quot; | instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/05 || 2: 32700, 154: 7597, 295: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/06 || 2: 32700, 145: 8257, 325: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! pan flute &lt;br /&gt;
| 24/00, 25/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 41&lt;br /&gt;
|-&lt;br /&gt;
! pan flute &lt;br /&gt;
| 24/01 || 26: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! celesta &lt;br /&gt;
| 0C/0F || 2: 32700, 103: 24112, 409: 0, hang || 10 || 0; 127 || instruments: 42&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 25/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 43&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 25/0E || 11: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! grand piano &lt;br /&gt;
| 25/04 || 2: 32700, 205: 0, 1: 0, hang || 34 || 0; 127 || rowspan=&amp;quot;2&amp;quot; | instruments: 44&lt;br /&gt;
|-&lt;br /&gt;
! grand piano &lt;br /&gt;
| 25/0F || 2: 32700, 205: 0, 1: 0, hang || 10 || 0; 127 &lt;br /&gt;
|-&lt;br /&gt;
! pizzicato strings &lt;br /&gt;
| 0E/03 || 2: 32700, 136: 0, 32700: 0, hang || 43 || 0; 47 || instruments: 46, 47 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! steel drums &lt;br /&gt;
| 11/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 48&lt;br /&gt;
|-&lt;br /&gt;
! music box &lt;br /&gt;
| 14/00, 14/01, 14/02, 14/03, 14/04 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || piranha_music_box: 00_pling&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=73</id>
		<title>List of instruments</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=73"/>
		<updated>2020-11-08T20:45:11Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Instrument !! Sound bank/instrument !! Envelope !! Release rate !! Normal range !! Samples&lt;br /&gt;
|-&lt;br /&gt;
! church organ &lt;br /&gt;
| 1D/00, 1D/01, 1D/02, 1D/03, 1D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 50 || bowser_organ: 00, 01 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! church organ &lt;br /&gt;
| 1D/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || bowser_organ: 02&lt;br /&gt;
|-&lt;br /&gt;
!  &lt;br /&gt;
| 16/00, 16/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || course_start: 00_la&lt;br /&gt;
|-&lt;br /&gt;
! banjo &lt;br /&gt;
| 0D/00, 0D/01 || 2: 32700, 130: 4954, 523: 0, hang || 100 || 41; 127 || instruments: 00 (lo), 01&lt;br /&gt;
|-&lt;br /&gt;
! fiddle &lt;br /&gt;
| 0D/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 180 || 0; 127 || instruments: 02&lt;br /&gt;
|-&lt;br /&gt;
! fiddle &lt;br /&gt;
| 0D/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 02&lt;br /&gt;
|-&lt;br /&gt;
! whistle with vibrato &lt;br /&gt;
| 0D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 76 || 0; 127 || instruments: 03&lt;br /&gt;
|-&lt;br /&gt;
! harpischord &lt;br /&gt;
| 0D/05, 15/05 || 2: 32700, 205: 0, 1: 0, hang || 53 || 0; 127 || instruments: 04&lt;br /&gt;
|-&lt;br /&gt;
! acoustic bass &lt;br /&gt;
| 0D/06, 17/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 05&lt;br /&gt;
|-&lt;br /&gt;
! drum machine kick / snare split &lt;br /&gt;
| 11/00, 18/0E || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 19; 19 || instruments: 38 (lo), 08 (tuning: 2.121321), 38 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! cymbal, closed/open hi-hat &lt;br /&gt;
| 0B/0A, 0D/0A, 11/0A, 12/0A, 13/0A, 17/0A, 18/0A, 22/0A, 25/0A || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 24; 127 || instruments: 0E (lo), 0F&lt;br /&gt;
|-&lt;br /&gt;
! crash cymbal &lt;br /&gt;
| 0C/0B, 0D/0B, 11/0B, 12/0B, 13/0B, 17/0B, 19/0B, 1A/0B, 1B/0B, 22/0B, 25/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 28; 28 || instruments: 10 (lo), 11, 10 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! hand clap and snare drum &lt;br /&gt;
| 0C/0C, 0D/0C, 11/0C, 18/0D, 19/0A, 1A/0C, 1B/08, 1F/0C || 2: 32700, 55: 32700, 127: 0, hang || 10 || 18; 127 || instruments: 12 (lo), 13&lt;br /&gt;
|-&lt;br /&gt;
! strings &lt;br /&gt;
| 1A/03, 1B/00, 1B/01, 1B/04, 1C/04, 1C/05, 1C/06, 24/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 42; 127 || instruments: 14 (lo), 15&lt;br /&gt;
|-&lt;br /&gt;
! French horn &lt;br /&gt;
| 0B/06, 0B/07, 1A/02, 1B/02, 20/00, 20/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 16&lt;br /&gt;
|-&lt;br /&gt;
! French horn &lt;br /&gt;
| 25/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 53 || 0; 50 || instruments: 16, 45 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! trumpet &lt;br /&gt;
| 1A/00, 1B/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 67 || 0; 127 || instruments: 17&lt;br /&gt;
|-&lt;br /&gt;
! timpani &lt;br /&gt;
| 19/0C, 1A/0A, 1B/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 18&lt;br /&gt;
|-&lt;br /&gt;
! brass &lt;br /&gt;
| 11/05, 19/01, 19/06, 1A/04, 22/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 19&lt;br /&gt;
|-&lt;br /&gt;
! slap bass &lt;br /&gt;
| 11/06, 15/03, 22/06, 25/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1A&lt;br /&gt;
|-&lt;br /&gt;
! synth voice &lt;br /&gt;
| 11/07, 22/07 || 2: 32700, 205: 19818, 535: 0, hang || 128 || 0; 127 || instruments: 1B&lt;br /&gt;
|-&lt;br /&gt;
! electric guitar (clean) &lt;br /&gt;
| 11/08, 22/08, 25/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1C&lt;br /&gt;
|-&lt;br /&gt;
! melodic tom &lt;br /&gt;
| 15/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 || instruments: 1D&lt;br /&gt;
|-&lt;br /&gt;
! melodic tom &lt;br /&gt;
| 15/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1D&lt;br /&gt;
|-&lt;br /&gt;
! triangle and cabasa &lt;br /&gt;
| 0C/0D, 11/0D, 15/01, 17/0C, 18/0C, 25/0C || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 60; 60 || instruments: 1E (lo), 1F, 20 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 0C/06, 11/01, 13/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 15/02 || 2: 32700, 205: 18167, 205: 0, hang || 10 || 0; 127 || instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
! lead 8 (bass+lead) &lt;br /&gt;
| 15/04 || 2: 32700, 205: 18167, 205: 0, hang || 114 || 0; 127 || instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
! choir &lt;br /&gt;
| 0F/01, 15/07, 15/08, 19/00, 19/07, 24/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 22&lt;br /&gt;
|-&lt;br /&gt;
! strings &lt;br /&gt;
| 0E/00, 0E/01, 0E/02, 12/06, 13/00, 13/01, 17/02, 17/03, 19/02, 1E/02, 1E/03, 20/08, 23/00, 23/01, 23/02, 25/07 || 6: 32700, 1: 32700, 32700: 29430, hang || 15 || 27; 46 || instruments: 23 (lo), 24, 25 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! electric piano &lt;br /&gt;
| 0E/05, 13/0E, 17/04, 1A/05, 21/03, 23/05, 25/03 || 6: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 || instruments: 26&lt;br /&gt;
|-&lt;br /&gt;
! electric piano &lt;br /&gt;
| 0E/06, 13/0F, 23/06, 25/08 || 3: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 || instruments: 26&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 1E/00, 23/07 || 2: 32700, 202: 0, 1: 0, hang || 255 || 0; 127 || instruments: 27&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 1E/01 || 2: 32700, 82: 0, 1: 0, hang || 255 || 0; 127 || instruments: 27&lt;br /&gt;
|-&lt;br /&gt;
! sitar &lt;br /&gt;
| 0F/02, 19/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 90 || 0; 127 || instruments: 28&lt;br /&gt;
|-&lt;br /&gt;
! orchestra hit &lt;br /&gt;
| 12/03, 18/03, 19/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 29&lt;br /&gt;
|-&lt;br /&gt;
! percussion loop &lt;br /&gt;
| 0F/00, 19/05 || 2: 32700, 187: 0, 32700: 0, hang || 100 || 55; 56 || instruments: 2A (lo), 2B, 2C (hi)&lt;br /&gt;
|-&lt;br /&gt;
! cello &lt;br /&gt;
| 0E/04, 1A/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 2D&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 0B/01, 0B/02, 1F/00, 1F/02, 21/00, 21/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2E&lt;br /&gt;
|-&lt;br /&gt;
! jingles &lt;br /&gt;
| 0B/0B, 1F/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2F&lt;br /&gt;
|-&lt;br /&gt;
! charang (lead 5) &lt;br /&gt;
| 12/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 30&lt;br /&gt;
|-&lt;br /&gt;
! overdriven guitar &lt;br /&gt;
| 12/01, 12/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 31&lt;br /&gt;
|-&lt;br /&gt;
! drum sample &lt;br /&gt;
| 12/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 14; 15 || instruments: 32 (tuning: 2.244924) (lo), 33, 32 (tuning: 2.828428) (hi)&lt;br /&gt;
|-&lt;br /&gt;
! recorder &lt;br /&gt;
| 0C/07, 12/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 114 || 0; 127 || instruments: 34&lt;br /&gt;
|-&lt;br /&gt;
! recorder &lt;br /&gt;
| 0C/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 34&lt;br /&gt;
|-&lt;br /&gt;
! percussive organ &lt;br /&gt;
| 11/03, 18/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 35&lt;br /&gt;
|-&lt;br /&gt;
! synth bass &lt;br /&gt;
| 18/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 36&lt;br /&gt;
|-&lt;br /&gt;
! saw wave &lt;br /&gt;
| 18/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 37&lt;br /&gt;
|-&lt;br /&gt;
! sitar &lt;br /&gt;
| 0F/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 39&lt;br /&gt;
|-&lt;br /&gt;
! xylophone &lt;br /&gt;
| 1C/00, 1C/01, 1C/02 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 3A&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0B/00, 0C/00, 17/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 29; 63 || instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0C/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 29; 61 || instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
! acoustic guitar &lt;br /&gt;
| 0C/02, 0C/03, 0C/04, 0C/05 || 2: 32700, 205: 1651, 211: 0, hang || 38 || 29; 61 || instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
! dark ambience &lt;br /&gt;
| 10/00, 10/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 3E&lt;br /&gt;
|-&lt;br /&gt;
! low cowbell &lt;br /&gt;
| 10/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 3F&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/04 || 2: 32700, 145: 7597, 343: 0, hang || 10 || 0; 127 || instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/05 || 2: 32700, 154: 7597, 295: 0, hang || 10 || 0; 127 || instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
! high cowbell &lt;br /&gt;
| 10/06 || 2: 32700, 145: 8257, 325: 0, hang || 10 || 0; 127 || instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
! pan flute &lt;br /&gt;
| 24/00, 25/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 || instruments: 41&lt;br /&gt;
|-&lt;br /&gt;
! pan flute &lt;br /&gt;
| 24/01 || 26: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 || instruments: 41&lt;br /&gt;
|-&lt;br /&gt;
! celesta &lt;br /&gt;
| 0C/0F || 2: 32700, 103: 24112, 409: 0, hang || 10 || 0; 127 || instruments: 42&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 25/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 127 || instruments: 43&lt;br /&gt;
|-&lt;br /&gt;
! accordion &lt;br /&gt;
| 25/0E || 11: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 || instruments: 43&lt;br /&gt;
|-&lt;br /&gt;
! grand piano &lt;br /&gt;
| 25/04 || 2: 32700, 205: 0, 1: 0, hang || 34 || 0; 127 || instruments: 44&lt;br /&gt;
|-&lt;br /&gt;
! grand piano &lt;br /&gt;
| 25/0F || 2: 32700, 205: 0, 1: 0, hang || 10 || 0; 127 || instruments: 44&lt;br /&gt;
|-&lt;br /&gt;
! pizzicato strings &lt;br /&gt;
| 0E/03 || 2: 32700, 136: 0, 32700: 0, hang || 43 || 0; 47 || instruments: 46, 47 (hi)&lt;br /&gt;
|-&lt;br /&gt;
! steel drums &lt;br /&gt;
| 11/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 48&lt;br /&gt;
|-&lt;br /&gt;
! music box &lt;br /&gt;
| 14/00, 14/01, 14/02, 14/03, 14/04 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || piranha_music_box: 00_pling&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=72</id>
		<title>List of instruments</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=List_of_instruments&amp;diff=72"/>
		<updated>2020-11-08T20:37:49Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Removed redirect to List of sound banks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Instrument !! Sound bank/instrument !! Envelope !! Release rate !! Normal range !! Samples&lt;br /&gt;
|-&lt;br /&gt;
| church organ || 1D/00, 1D/01, 1D/02, 1D/03, 1D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 50 || bowser_organ: 00, 01 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| church organ || 1D/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || bowser_organ: 02&lt;br /&gt;
|-&lt;br /&gt;
|  || 16/00, 16/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || course_start: 00_la&lt;br /&gt;
|-&lt;br /&gt;
| banjo || 0D/00, 0D/01 || 2: 32700, 130: 4954, 523: 0, hang || 100 || 41; 127 || instruments: 00 (lo), 01&lt;br /&gt;
|-&lt;br /&gt;
| fiddle || 0D/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 180 || 0; 127 || instruments: 02&lt;br /&gt;
|-&lt;br /&gt;
| fiddle || 0D/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 02&lt;br /&gt;
|-&lt;br /&gt;
| whistle with vibrato || 0D/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 76 || 0; 127 || instruments: 03&lt;br /&gt;
|-&lt;br /&gt;
| harpischord || 0D/05, 15/05 || 2: 32700, 205: 0, 1: 0, hang || 53 || 0; 127 || instruments: 04&lt;br /&gt;
|-&lt;br /&gt;
| acoustic bass || 0D/06, 17/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 05&lt;br /&gt;
|-&lt;br /&gt;
| drum machine kick / snare split || 11/00, 18/0E || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 19; 19 || instruments: 38 (lo), 08 (tuning: 2.121321), 38 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| cymbal, closed/open hi-hat || 0B/0A, 0D/0A, 11/0A, 12/0A, 13/0A, 17/0A, 18/0A, 22/0A, 25/0A || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 24; 127 || instruments: 0E (lo), 0F&lt;br /&gt;
|-&lt;br /&gt;
| crash cymbal || 0C/0B, 0D/0B, 11/0B, 12/0B, 13/0B, 17/0B, 19/0B, 1A/0B, 1B/0B, 22/0B, 25/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 28; 28 || instruments: 10 (lo), 11, 10 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| hand clap and snare drum || 0C/0C, 0D/0C, 11/0C, 18/0D, 19/0A, 1A/0C, 1B/08, 1F/0C || 2: 32700, 55: 32700, 127: 0, hang || 10 || 18; 127 || instruments: 12 (lo), 13&lt;br /&gt;
|-&lt;br /&gt;
| strings || 1A/03, 1B/00, 1B/01, 1B/04, 1C/04, 1C/05, 1C/06, 24/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 42; 127 || instruments: 14 (lo), 15&lt;br /&gt;
|-&lt;br /&gt;
| French horn || 0B/06, 0B/07, 1A/02, 1B/02, 20/00, 20/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 16&lt;br /&gt;
|-&lt;br /&gt;
| French horn || 25/05 || 2: 32700, 1: 32700, 32700: 29430, hang || 53 || 0; 50 || instruments: 16, 45 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| trumpet || 1A/00, 1B/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 67 || 0; 127 || instruments: 17&lt;br /&gt;
|-&lt;br /&gt;
| timpani || 19/0C, 1A/0A, 1B/07 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 18&lt;br /&gt;
|-&lt;br /&gt;
| brass || 11/05, 19/01, 19/06, 1A/04, 22/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 19&lt;br /&gt;
|-&lt;br /&gt;
| slap bass || 11/06, 15/03, 22/06, 25/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1A&lt;br /&gt;
|-&lt;br /&gt;
| synth voice || 11/07, 22/07 || 2: 32700, 205: 19818, 535: 0, hang || 128 || 0; 127 || instruments: 1B&lt;br /&gt;
|-&lt;br /&gt;
| electric guitar (clean) || 11/08, 22/08, 25/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1C&lt;br /&gt;
|-&lt;br /&gt;
| melodic tom || 15/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 || instruments: 1D&lt;br /&gt;
|-&lt;br /&gt;
| melodic tom || 15/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 1D&lt;br /&gt;
|-&lt;br /&gt;
| triangle and cabasa || 0C/0D, 11/0D, 15/01, 17/0C, 18/0C, 25/0C || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 60; 60 || instruments: 1E (lo), 1F, 20 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| lead 8 (bass+lead) || 0C/06, 11/01, 13/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
| lead 8 (bass+lead) || 15/02 || 2: 32700, 205: 18167, 205: 0, hang || 10 || 0; 127 || instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
| lead 8 (bass+lead) || 15/04 || 2: 32700, 205: 18167, 205: 0, hang || 114 || 0; 127 || instruments: 21&lt;br /&gt;
|-&lt;br /&gt;
| choir || 0F/01, 15/07, 15/08, 19/00, 19/07, 24/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 22&lt;br /&gt;
|-&lt;br /&gt;
| strings || 0E/00, 0E/01, 0E/02, 12/06, 13/00, 13/01, 17/02, 17/03, 19/02, 1E/02, 1E/03, 20/08, 23/00, 23/01, 23/02, 25/07 || 6: 32700, 1: 32700, 32700: 29430, hang || 15 || 27; 46 || instruments: 23 (lo), 24, 25 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| electric piano || 0E/05, 13/0E, 17/04, 1A/05, 21/03, 23/05, 25/03 || 6: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 || instruments: 26&lt;br /&gt;
|-&lt;br /&gt;
| electric piano || 0E/06, 13/0F, 23/06, 25/08 || 3: 32700, 298: 0, 1: 0, hang || 10 || 0; 127 || instruments: 26&lt;br /&gt;
|-&lt;br /&gt;
| acoustic guitar || 1E/00, 23/07 || 2: 32700, 202: 0, 1: 0, hang || 255 || 0; 127 || instruments: 27&lt;br /&gt;
|-&lt;br /&gt;
| acoustic guitar || 1E/01 || 2: 32700, 82: 0, 1: 0, hang || 255 || 0; 127 || instruments: 27&lt;br /&gt;
|-&lt;br /&gt;
| sitar || 0F/02, 19/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 90 || 0; 127 || instruments: 28&lt;br /&gt;
|-&lt;br /&gt;
| orchestra hit || 12/03, 18/03, 19/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 29&lt;br /&gt;
|-&lt;br /&gt;
| percussion loop || 0F/00, 19/05 || 2: 32700, 187: 0, 32700: 0, hang || 100 || 55; 56 || instruments: 2A (lo), 2B, 2C (hi)&lt;br /&gt;
|-&lt;br /&gt;
| cello || 0E/04, 1A/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 2D&lt;br /&gt;
|-&lt;br /&gt;
| accordion || 0B/01, 0B/02, 1F/00, 1F/02, 21/00, 21/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2E&lt;br /&gt;
|-&lt;br /&gt;
| jingles || 0B/0B, 1F/0B || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 2F&lt;br /&gt;
|-&lt;br /&gt;
| charang (lead 5) || 12/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 30&lt;br /&gt;
|-&lt;br /&gt;
| overdriven guitar || 12/01, 12/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 31&lt;br /&gt;
|-&lt;br /&gt;
| drum sample || 12/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 14; 15 || instruments: 32 (tuning: 2.244924) (lo), 33, 32 (tuning: 2.828428) (hi)&lt;br /&gt;
|-&lt;br /&gt;
| recorder || 0C/07, 12/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 114 || 0; 127 || instruments: 34&lt;br /&gt;
|-&lt;br /&gt;
| recorder || 0C/08 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 34&lt;br /&gt;
|-&lt;br /&gt;
| percussive organ || 11/03, 18/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 35&lt;br /&gt;
|-&lt;br /&gt;
| synth bass || 18/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 36&lt;br /&gt;
|-&lt;br /&gt;
| saw wave || 18/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 37&lt;br /&gt;
|-&lt;br /&gt;
| sitar || 0F/03 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 39&lt;br /&gt;
|-&lt;br /&gt;
| xylophone || 1C/00, 1C/01, 1C/02 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || instruments: 3A&lt;br /&gt;
|-&lt;br /&gt;
| acoustic guitar || 0B/00, 0C/00, 17/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 29; 63 || instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
| acoustic guitar || 0C/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 24 || 29; 61 || instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
| acoustic guitar || 0C/02, 0C/03, 0C/04, 0C/05 || 2: 32700, 205: 1651, 211: 0, hang || 38 || 29; 61 || instruments: 3B (lo), 3C, 3D (hi)&lt;br /&gt;
|-&lt;br /&gt;
| dark ambience || 10/00, 10/01 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 3E&lt;br /&gt;
|-&lt;br /&gt;
| low cowbell || 10/02 || 2: 32700, 1: 32700, 32700: 29430, hang || 208 || 0; 127 || instruments: 3F&lt;br /&gt;
|-&lt;br /&gt;
| high cowbell || 10/04 || 2: 32700, 145: 7597, 343: 0, hang || 10 || 0; 127 || instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
| high cowbell || 10/05 || 2: 32700, 154: 7597, 295: 0, hang || 10 || 0; 127 || instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
| high cowbell || 10/06 || 2: 32700, 145: 8257, 325: 0, hang || 10 || 0; 127 || instruments: 40&lt;br /&gt;
|-&lt;br /&gt;
| pan flute || 24/00, 25/06 || 2: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 || instruments: 41&lt;br /&gt;
|-&lt;br /&gt;
| pan flute || 24/01 || 26: 32700, 1: 32700, 32700: 29430, hang || 43 || 0; 127 || instruments: 41&lt;br /&gt;
|-&lt;br /&gt;
| celesta || 0C/0F || 2: 32700, 103: 24112, 409: 0, hang || 10 || 0; 127 || instruments: 42&lt;br /&gt;
|-&lt;br /&gt;
| accordion || 25/00 || 2: 32700, 1: 32700, 32700: 29430, hang || 19 || 0; 127 || instruments: 43&lt;br /&gt;
|-&lt;br /&gt;
| accordion || 25/0E || 11: 32700, 1: 32700, 32700: 29430, hang || 34 || 0; 127 || instruments: 43&lt;br /&gt;
|-&lt;br /&gt;
| grand piano || 25/04 || 2: 32700, 205: 0, 1: 0, hang || 34 || 0; 127 || instruments: 44&lt;br /&gt;
|-&lt;br /&gt;
| grand piano || 25/0F || 2: 32700, 205: 0, 1: 0, hang || 10 || 0; 127 || instruments: 44&lt;br /&gt;
|-&lt;br /&gt;
| pizzicato strings || 0E/03 || 2: 32700, 136: 0, 32700: 0, hang || 43 || 0; 47 || instruments: 46, 47 (hi)&lt;br /&gt;
|-&lt;br /&gt;
| steel drums || 11/04 || 2: 32700, 1: 32700, 32700: 29430, hang || 10 || 0; 127 || instruments: 48&lt;br /&gt;
|-&lt;br /&gt;
| music box || 14/00, 14/01, 14/02, 14/03, 14/04 || 6: 32700, 298: 32700, 32700: 29430, hang || 119 || 0; 127 || piranha_music_box: 00_pling&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Audio]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=71</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=71"/>
		<updated>2020-11-08T18:22:16Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to SM64Decomp project wiki! This website is meant to help people working on the [https://github.com/n64decomp/sm64 Super Mario 64 Decompilation] project, especially on customizing the code for creating individual hacks.&lt;br /&gt;
&lt;br /&gt;
Please note that editing is currently restricted to a few selected users.&lt;br /&gt;
&lt;br /&gt;
This wiki is maintainted by [[User:Tenry|Tenry]] and is not associated with the decomp organization.&lt;br /&gt;
&lt;br /&gt;
== Categories ==&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Level|Level]] - everything you need if you want to create or modify a level or objects&lt;br /&gt;
* [[:Category:Coding|Coding]] - if you want to do custom coding or general enhancements&lt;br /&gt;
* [[:Category:Graphics|Graphics]] - if you want to change graphics or how they are displayed&lt;br /&gt;
* [[:Category:Audio|Audio]] - if you want to work with the sound effects or music&lt;br /&gt;
&lt;br /&gt;
== External resources ==&lt;br /&gt;
&lt;br /&gt;
* [[List of Discord servers]]&lt;br /&gt;
* [https://ukikipedia.net/wiki/Main_Page Ukikipedia]&lt;br /&gt;
* [https://hack64.net/wiki/doku.php?id=start Hack64]&lt;br /&gt;
* [https://docs.google.com/document/d/1pSYR91UiMVKnP3PyvJiCdwRF5wNS_nZzMe-r2WPQUJk/edit?usp=sharing SM64 ROM Hacking Tools and Resources] (Google Docs)&lt;br /&gt;
&lt;br /&gt;
== Contribution guidelines ==&lt;br /&gt;
&lt;br /&gt;
* Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtain them&lt;br /&gt;
* Do ''not'' post leaked source code&lt;br /&gt;
&lt;br /&gt;
=== Page name policy ===&lt;br /&gt;
'''Use sentence case.''' Titles are written in sentence case. The initial letter of a title is almost always capitalized by default; otherwise, words are not capitalized unless they would be so in running text.&lt;br /&gt;
&lt;br /&gt;
'''Use singular form.''' Exceptions include nouns that are always in plural form.&lt;br /&gt;
&lt;br /&gt;
=== Category name policy ===&lt;br /&gt;
'''Page name policy applies.'''&lt;br /&gt;
&lt;br /&gt;
Names of ''topic categories'' should be singular. Examples: &amp;quot;Health&amp;quot;, &amp;quot;HUD&amp;quot;. A category named &amp;quot;Behavior&amp;quot; should include pages dedicated to how behaviors work or how to create one.&lt;br /&gt;
&lt;br /&gt;
Names of ''set categories'' should be plural. Examples: &amp;quot;Hacks&amp;quot;, &amp;quot;Editors&amp;quot;. A category named &amp;quot;Behaviors&amp;quot; should include individual existing behaviors.&lt;br /&gt;
&lt;br /&gt;
=== File name policy ===&lt;br /&gt;
'''Avoid very generic filenames.''' For example, a screenshot of a hack should not be given the name &amp;quot;File:Hack.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Examples of good file names are:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Screenshot of Super Mario 64 Intro Screen.jpg&amp;quot;&lt;br /&gt;
* &amp;quot;SM64 Beta Screenshot.png&amp;quot;&lt;br /&gt;
* &amp;quot;Star Icon.png&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Examples of bad file names:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Image01.png&amp;quot;&lt;br /&gt;
* &amp;quot;Mario.jpg&amp;quot;&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Category:Graphics&amp;diff=70</id>
		<title>Category:Graphics</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Category:Graphics&amp;diff=70"/>
		<updated>2020-11-08T18:20:14Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;Here you will find everything related to graphics in Super Mario 64, including working with the textures, billboards or HUDs.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here you will find everything related to graphics in Super Mario 64, including working with the textures, billboards or HUDs.&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=69</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=69"/>
		<updated>2020-11-08T18:19:44Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to SM64Decomp project wiki! This website is meant to help people working on the [https://github.com/n64decomp/sm64 Super Mario 64 Decompilation] project, especially on customizing the code for creating individual hacks.&lt;br /&gt;
&lt;br /&gt;
Please note that editing is currently restricted to a few selected users.&lt;br /&gt;
&lt;br /&gt;
This wiki is maintainted by [[User:Tenry|Tenry]] and is not associated with the decomp organization.&lt;br /&gt;
&lt;br /&gt;
== Categories ==&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Level|Level]] - everything you need if you want to create or modify a level or objects&lt;br /&gt;
* [[:Category:Coding|Coding]] - if you want to do custom coding or general enhancements&lt;br /&gt;
* [[:Category:Graphics|Graphics]] - if you want to change graphics or how they are displayed&lt;br /&gt;
* [[:Category:Audio|Audio]] - if you want to work with the sound effects or music&lt;br /&gt;
&lt;br /&gt;
== External resources ==&lt;br /&gt;
&lt;br /&gt;
* [[List of Discord servers]]&lt;br /&gt;
* [https://ukikipedia.net/wiki/Main_Page Ukikipedia]&lt;br /&gt;
* [https://hack64.net/wiki/doku.php?id=start Hack64]&lt;br /&gt;
&lt;br /&gt;
== Contribution guidelines ==&lt;br /&gt;
&lt;br /&gt;
* Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtain them&lt;br /&gt;
* Do ''not'' post leaked source code&lt;br /&gt;
&lt;br /&gt;
=== Page name policy ===&lt;br /&gt;
'''Use sentence case.''' Titles are written in sentence case. The initial letter of a title is almost always capitalized by default; otherwise, words are not capitalized unless they would be so in running text.&lt;br /&gt;
&lt;br /&gt;
'''Use singular form.''' Exceptions include nouns that are always in plural form.&lt;br /&gt;
&lt;br /&gt;
=== Category name policy ===&lt;br /&gt;
'''Page name policy applies.'''&lt;br /&gt;
&lt;br /&gt;
Names of ''topic categories'' should be singular. Examples: &amp;quot;Health&amp;quot;, &amp;quot;HUD&amp;quot;. A category named &amp;quot;Behavior&amp;quot; should include pages dedicated to how behaviors work or how to create one.&lt;br /&gt;
&lt;br /&gt;
Names of ''set categories'' should be plural. Examples: &amp;quot;Hacks&amp;quot;, &amp;quot;Editors&amp;quot;. A category named &amp;quot;Behaviors&amp;quot; should include individual existing behaviors.&lt;br /&gt;
&lt;br /&gt;
=== File name policy ===&lt;br /&gt;
'''Avoid very generic filenames.''' For example, a screenshot of a hack should not be given the name &amp;quot;File:Hack.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Examples of good file names are:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Screenshot of Super Mario 64 Intro Screen.jpg&amp;quot;&lt;br /&gt;
* &amp;quot;SM64 Beta Screenshot.png&amp;quot;&lt;br /&gt;
* &amp;quot;Star Icon.png&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Examples of bad file names:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Image01.png&amp;quot;&lt;br /&gt;
* &amp;quot;Mario.jpg&amp;quot;&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Texture&amp;diff=68</id>
		<title>Texture</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Texture&amp;diff=68"/>
		<updated>2020-11-08T18:18:53Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;Textures are 2D graphics that are either displayed directly on screen, such as in the HUD, mapped onto 3D models, for example to give a character eyes, or used as billboar...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Textures are 2D graphics that are either displayed directly on screen, such as in the [[HUD]], mapped onto 3D models, for example to give a character eyes, or used as billboard graphics, such as for trees or coins.&lt;br /&gt;
&lt;br /&gt;
== Texture cache ==&lt;br /&gt;
The texture cache of the Nintendo 64 is 4 KiB (4096 bytes).&lt;br /&gt;
&lt;br /&gt;
== Texture formats ==&lt;br /&gt;
The Nintendo 64 has many different texture formats. When rendering, any format is converted to 32-bit RGBA as the output format.&lt;br /&gt;
&lt;br /&gt;
The identifier in the following table is used in the filename's extension, such as ''hmc_textures.00000.'''rgba16'''.png''.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Format&lt;br /&gt;
!Identifier&lt;br /&gt;
!Max resolution&lt;br /&gt;
!Red&lt;br /&gt;
!Green&lt;br /&gt;
!Blue&lt;br /&gt;
!Alpha&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
!32-bit RGBA&lt;br /&gt;
|rgba32&lt;br /&gt;
|32x32&lt;br /&gt;
|256&lt;br /&gt;
|256&lt;br /&gt;
|256&lt;br /&gt;
|256&lt;br /&gt;
|This is the most versatile format. It contains the same amount of data you might alreay be used to from PNG files on your PC.&lt;br /&gt;
|-&lt;br /&gt;
!16-bit RGBA&lt;br /&gt;
|rgba16&lt;br /&gt;
|64x32 or 32x64&lt;br /&gt;
|32&lt;br /&gt;
|32&lt;br /&gt;
|32&lt;br /&gt;
|2&lt;br /&gt;
|This format uses less memory than 32-bit RGBA and also has less levels of color intensity. Alpha is binary, i.e. a pixel is either fully visible or transparent.&lt;br /&gt;
|-&lt;br /&gt;
!8-bit color index&lt;br /&gt;
|ci8&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!4-bit color index&lt;br /&gt;
|ci4&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!16-bit IA (intensity alpha)&lt;br /&gt;
|ia16&lt;br /&gt;
|64x32 or 32x64&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |256&lt;br /&gt;
|256&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!8-bit IA (intensity alpha)&lt;br /&gt;
|ia8&lt;br /&gt;
|64x64&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |16&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!4-bit IA (intensity alpha)&lt;br /&gt;
|ia4&lt;br /&gt;
|128x64 or 64x128&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |8&lt;br /&gt;
|2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!8-bit I (intensity)&lt;br /&gt;
|i8&lt;br /&gt;
|64x64&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |256&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!4-bit I (intensity)&lt;br /&gt;
|i4&lt;br /&gt;
|128x64 or 64x128&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; |16&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://n64squid.com/homebrew/n64-sdk/textures/image-formats/ Color and image format types for the N64] on n64squid.com&lt;br /&gt;
&lt;br /&gt;
[[Category:Graphics]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=67</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Main_Page&amp;diff=67"/>
		<updated>2020-11-08T17:48:48Z</updated>

		<summary type="html">&lt;p&gt;Tenry: add list of categories&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to SM64Decomp project wiki! This website is meant to help people working on the [https://github.com/n64decomp/sm64 Super Mario 64 Decompilation] project, especially on customizing the code for creating individual hacks.&lt;br /&gt;
&lt;br /&gt;
Please note that editing is currently restricted to a few selected users.&lt;br /&gt;
&lt;br /&gt;
This wiki is maintainted by [[User:Tenry|Tenry]] and is not associated with the decomp organization.&lt;br /&gt;
&lt;br /&gt;
== Categories ==&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Level|Level]] - everything you need if you want to create or modify a level or objects&lt;br /&gt;
* [[:Category:Coding|Coding]] - if you want to do custom coding or general enhancements&lt;br /&gt;
* [[:Category:Audio|Audio]] - if you want to work with the sound effects or music&lt;br /&gt;
&lt;br /&gt;
== External resources ==&lt;br /&gt;
&lt;br /&gt;
* [[List of Discord servers]]&lt;br /&gt;
* [https://ukikipedia.net/wiki/Main_Page Ukikipedia]&lt;br /&gt;
* [https://hack64.net/wiki/doku.php?id=start Hack64]&lt;br /&gt;
&lt;br /&gt;
== Contribution guidelines ==&lt;br /&gt;
&lt;br /&gt;
* Do ''not'' provide uploads or link to ROM images or provide information on how to illegally obtain them&lt;br /&gt;
* Do ''not'' post leaked source code&lt;br /&gt;
&lt;br /&gt;
=== Page name policy ===&lt;br /&gt;
'''Use sentence case.''' Titles are written in sentence case. The initial letter of a title is almost always capitalized by default; otherwise, words are not capitalized unless they would be so in running text.&lt;br /&gt;
&lt;br /&gt;
'''Use singular form.''' Exceptions include nouns that are always in plural form.&lt;br /&gt;
&lt;br /&gt;
=== Category name policy ===&lt;br /&gt;
'''Page name policy applies.'''&lt;br /&gt;
&lt;br /&gt;
Names of ''topic categories'' should be singular. Examples: &amp;quot;Health&amp;quot;, &amp;quot;HUD&amp;quot;. A category named &amp;quot;Behavior&amp;quot; should include pages dedicated to how behaviors work or how to create one.&lt;br /&gt;
&lt;br /&gt;
Names of ''set categories'' should be plural. Examples: &amp;quot;Hacks&amp;quot;, &amp;quot;Editors&amp;quot;. A category named &amp;quot;Behaviors&amp;quot; should include individual existing behaviors.&lt;br /&gt;
&lt;br /&gt;
=== File name policy ===&lt;br /&gt;
'''Avoid very generic filenames.''' For example, a screenshot of a hack should not be given the name &amp;quot;File:Hack.jpg&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Examples of good file names are:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Screenshot of Super Mario 64 Intro Screen.jpg&amp;quot;&lt;br /&gt;
* &amp;quot;SM64 Beta Screenshot.png&amp;quot;&lt;br /&gt;
* &amp;quot;Star Icon.png&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Examples of bad file names:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Image01.png&amp;quot;&lt;br /&gt;
* &amp;quot;Mario.jpg&amp;quot;&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Category:Level&amp;diff=66</id>
		<title>Category:Level</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Category:Level&amp;diff=66"/>
		<updated>2020-11-08T17:44:22Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;If you want to create your own level or overworld, you should find almost everything you need here. This includes creating the level model, placing objects or even creating cu...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you want to create your own level or overworld, you should find almost everything you need here. This includes creating the level model, placing objects or even creating custom objects.&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Category:Coding&amp;diff=65</id>
		<title>Category:Coding</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Category:Coding&amp;diff=65"/>
		<updated>2020-11-08T17:43:01Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;Pages related to coding in the Super Mario 64 decompilation project. Most of it deals with the C code, but some may also refer to the MIPS assembly code, linker script or Make...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pages related to coding in the Super Mario 64 decompilation project. Most of it deals with the C code, but some may also refer to the MIPS assembly code, linker script or Makefile.&lt;br /&gt;
&lt;br /&gt;
If you don't have any prior experience with C or the other languages, you might want to learn the basics somewhere else before proceeding here.&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Category:Audio&amp;diff=64</id>
		<title>Category:Audio</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Category:Audio&amp;diff=64"/>
		<updated>2020-11-08T17:40:39Z</updated>

		<summary type="html">&lt;p&gt;Tenry: Created page with &amp;quot;This is a collection of pages related to the audio in Super Mario 64. That includes sound effects and music.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a collection of pages related to the audio in Super Mario 64. That includes sound effects and music.&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Global_variables&amp;diff=63</id>
		<title>Global variables</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Global_variables&amp;diff=63"/>
		<updated>2020-11-08T17:34:09Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Name&lt;br /&gt;
!Type&lt;br /&gt;
!File&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|gCurrCourseNum&lt;br /&gt;
|s16&lt;br /&gt;
|src/game/area.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gCurrActNum&lt;br /&gt;
|s16&lt;br /&gt;
|src/game/area.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gCurrAreaIndex&lt;br /&gt;
|s16&lt;br /&gt;
|src/game/area.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gSavedCourseNum&lt;br /&gt;
|s16&lt;br /&gt;
|src/game/area.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gPauseScreenMode&lt;br /&gt;
|s16&lt;br /&gt;
|src/game/area.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gSaveOptSelectIndex&lt;br /&gt;
|s16&lt;br /&gt;
|src/game/area.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gCameraMovementFlags&lt;br /&gt;
|s16&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gCamera&lt;br /&gt;
|struct Camera&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gControllers&lt;br /&gt;
|struct Controller[3]&lt;br /&gt;
|src/game/game_init.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gGlobalTimer&lt;br /&gt;
|u32&lt;br /&gt;
|src/game/game_init.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gPlayer1Controller&lt;br /&gt;
|struct Controller&lt;br /&gt;
|src/game/game_init.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gPlayer2Controller&lt;br /&gt;
|struct Controller&lt;br /&gt;
|src/game/game_init.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gPlayer3Controller&lt;br /&gt;
|struct Controller&lt;br /&gt;
|src/game/game_init.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gMarioStates&lt;br /&gt;
|struct MarioState[1]&lt;br /&gt;
|src/game/level_update.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gHudDisplay&lt;br /&gt;
|struct HudDisplay&lt;br /&gt;
|src/game/level_update.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gNeverEnteredCastle&lt;br /&gt;
|s8&lt;br /&gt;
|src/game/level_update.c&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gCurrentObject&lt;br /&gt;
|?&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gMarioState&lt;br /&gt;
|struct MarioState*&lt;br /&gt;
|src/game/level_update.c&lt;br /&gt;
|Contains data about Mario's current state including position and velocity as well as coutner for coins, stars, health and more.&lt;br /&gt;
|-&lt;br /&gt;
|gMarioState-&amp;gt;numCoins&lt;br /&gt;
|s16&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gMarioState-&amp;gt;numStars&lt;br /&gt;
|s16&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gMarioState-&amp;gt;numLives&lt;br /&gt;
|s8&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|gMarioState-&amp;gt;health&lt;br /&gt;
|s16&lt;br /&gt;
|&lt;br /&gt;
|[[Health]]&lt;br /&gt;
|}&lt;br /&gt;
[[Category:Coding]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Health&amp;diff=62</id>
		<title>Health</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Health&amp;diff=62"/>
		<updated>2020-11-08T17:33:57Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''Health'', also known as ''Power'', is what keeps Mario alive. On screen, the player only sees up to 8 units of health. Technically however, there are more values underneath.&lt;br /&gt;
&lt;br /&gt;
Mario's current health is stored as a 2-byte value in &amp;lt;code&amp;gt;gMarioState-&amp;gt;health&amp;lt;/code&amp;gt; and usually ranges from &amp;lt;code&amp;gt;0x0FF&amp;lt;/code&amp;gt; (dead) to &amp;lt;code&amp;gt;0x880&amp;lt;/code&amp;gt; (full live). The upper byte is used as the number of health units that's shown in the [[HUD]]. For example, &amp;lt;code&amp;gt;0x'''3'''60&amp;lt;/code&amp;gt; corresponds to 3 units of health, &amp;lt;code&amp;gt;0x'''5'''20&amp;lt;/code&amp;gt; corresponds to 5 units of health.&lt;br /&gt;
&lt;br /&gt;
== Where health is modified ==&lt;br /&gt;
There are a few occasions in which Mario's health is modified.&lt;br /&gt;
&lt;br /&gt;
=== Water ===&lt;br /&gt;
While underwater, Mario continously loses health. It's restored when he's on the surface. If the level terrain is set to snow, Mario loses three times health, even on surface.&lt;br /&gt;
&lt;br /&gt;
Mario's health, when in water, is updated in '''src/game/mario.c''' in the function &amp;lt;code&amp;gt;update_mario_health()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Where health is checked ==&lt;br /&gt;
There are several locations in code where health is checked for various actions, such as showing or hiding health in the HUD, changing Mario's animation or to make him die or drown.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://ukikipedia.net/wiki/HP HP] on Ukikipedia&lt;br /&gt;
[[Category:Coding]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
	<entry>
		<id>https://sm64decomp.tenry.net/wiki/index.php?title=Warp&amp;diff=61</id>
		<title>Warp</title>
		<link rel="alternate" type="text/html" href="https://sm64decomp.tenry.net/wiki/index.php?title=Warp&amp;diff=61"/>
		<updated>2020-11-08T17:32:54Z</updated>

		<summary type="html">&lt;p&gt;Tenry: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Warps are used to teleport Mario from one location to another in the same area, a different area or different level. They can be connected to each other within a level, between different areas or levels.&lt;br /&gt;
&lt;br /&gt;
Warps are defined per area by the following properties:&lt;br /&gt;
&lt;br /&gt;
* '''Warp type''': one of Warp, Painting, Instant&lt;br /&gt;
* '''Warp ID''', also known as source ID: value from 0x00 to 0xFF unique per area&lt;br /&gt;
** Commonly set to 0x0A for the area starting location&lt;br /&gt;
** 0xF0 is used on level success (after Mario grabbed a star)&lt;br /&gt;
** 0xF1 is used on level failure&lt;br /&gt;
* '''Destination level'''&lt;br /&gt;
* '''Destination area'''&lt;br /&gt;
* '''Destination node''': ID given to the warp object that's placed in the target area.&lt;br /&gt;
[[Category:Level]]&lt;/div&gt;</summary>
		<author><name>Tenry</name></author>
	</entry>
</feed>