N-SPC Engine/Punk Development: Difference between revisions
KungFuFurby (talk | contribs) (New variant) |
KungFuFurby (talk | contribs) (Adding command descriptions) |
||
Line 1: | Line 1: | ||
Go back to [[N-SPC Engine]] | |||
__TOC__ | |||
''Punk Development'' has their own variant of N-SPC used in an untitled shooter. The variant doesn't actually support music, as the phrase format is non-existent here. Instead, there's one pointer and one channel's worth of track data per entry, and they're all sound effects dynamically allocated. The VCMD collection doesn't have anything past $FA, and $00 terminates the SFX if it's not in a subroutine. | ''Punk Development'' has their own variant of N-SPC used in an untitled shooter. The variant doesn't actually support music, as the phrase format is non-existent here. Instead, there's one pointer and one channel's worth of track data per entry, and they're all sound effects dynamically allocated. The VCMD collection doesn't have anything past $FA, and $00 terminates the SFX if it's not in a subroutine. | ||
Line 9: | Line 13: | ||
The raw build sorting notes can be found [[N-SPC Engine/Punk Development/Build Sorting|here]]. | The raw build sorting notes can be found [[N-SPC Engine/Punk Development/Build Sorting|here]]. | ||
==Communication with the SNES== | |||
All of the commands are sent via CPUIO0($2140). The other registers are completely unused, and there isn't even a way to go get more data. | |||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
Line 17: | Line 24: | ||
|- | |- | ||
|<tt>$01-$09</tt> || Play SFX || <tt>xx ?? ?? ??</tt> | |<tt>$01-$09</tt> || Play SFX || <tt>xx ?? ?? ??</tt> | ||
|- | |||
|<tt>$0A-$FF</tt> || NOP || <tt>?? ?? ?? ??</tt> | |||
|} | |} | ||
''TODO document | ===NOP=== | ||
Does absolutely nothing. | |||
===Stop Sound (Command <tt>$00</tt>)=== | |||
Stops all SFX. | |||
===Play SFX (Command <tt>$01-$09</tt>)=== | |||
Plays a piece of SFX using the standard N-SPC voice command format for music. These are dynamically allocated a channel. | |||
''TODO document the technically new voice command'' | |||
[[Category:SPC Sound Engines]] | [[Category:SPC Sound Engines]] | ||
[[Category:N-SPC Variants]] | [[Category:N-SPC Variants]] |
Latest revision as of 02:07, 26 November 2020
Go back to N-SPC Engine
Punk Development has their own variant of N-SPC used in an untitled shooter. The variant doesn't actually support music, as the phrase format is non-existent here. Instead, there's one pointer and one channel's worth of track data per entry, and they're all sound effects dynamically allocated. The VCMD collection doesn't have anything past $FA, and $00 terminates the SFX if it's not in a subroutine.
Game Name | VCMD Table Location ($E0 and up) | ROM Offset |
---|---|---|
Untitled Shooter | 0x0BDA, relative to 0x0B1A | 0x048000 |
The raw build sorting notes can be found here.
Communication with the SNES
All of the commands are sent via CPUIO0($2140). The other registers are completely unused, and there isn't even a way to go get more data.
Command ID | Description | Register Values & Arguments |
---|---|---|
$00 | Stop Sound | $00 ?? ?? ?? |
$01-$09 | Play SFX | xx ?? ?? ?? |
$0A-$FF | NOP | ?? ?? ?? ?? |
NOP
Does absolutely nothing.
Stop Sound (Command $00)
Stops all SFX.
Play SFX (Command $01-$09)
Plays a piece of SFX using the standard N-SPC voice command format for music. These are dynamically allocated a channel.
TODO document the technically new voice command