We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

N-SPC Engine/Nintendo/Koji Kondo/SFX Sequence Format

From SnesLab
Revision as of 00:35, 26 October 2020 by KungFuFurby (talk | contribs) (Adding sections and moving SFX Instrument Format to here)
Jump to: navigation, search

Go back to N-SPC Engine/Prototype

The SFX sequence data is slightly modified compared to the standard N-SPC's voice command format. These are headerless, unlike a song, and they only support one channel at a time, with the channel used being fixed. Both games have almost the same command set except for VCMD $FF.

All SFX are initially handled at a tempo of $38.

VCMD ID Description Arguments
$00 End of SFX
$01-$7F Note Duration xx
$80-$C5 Note
$C6-$CF Tie
$D0-$D9 Percussion
$DA Instrument xx
$DB-$DC Invalid Note
$DD Pitch Slide to Note xx yy zz aa
$DE-$EA Invalid Note
$EB Note Pitch Envelope To xx yy zz
$EC-$FE Invalid Note
$FF Restart SFX (Super Mario World CPUIO0)
$FF Jump Back One Byte (Super Mario World CPUIO3)
$FF Jump to SFX ID (Pilotwings) xx

SFX Instrument Format

The SFX instrument format, shared among all SFX but not consistently stored in terms of memory location, consists of a series of bytes corresponding to direct DSP register writes to the following in order (with the last one not being a DSP register write at all)...

  • VxVOLL
  • VxVOLR
  • VxPITCHL
  • VxPITCHH
  • VxSRCN
  • VxADSR1
  • VxADSR2
  • VxGAIN
  • Pitch Base Multiplier

SFX Percussion Format

This is identical to the music percussion format.

SFX Voice Command Format

TODO VCMD documentation (some of them are identical to standard N-SPC)