Skip to content

Conversation

@nectarboy
Copy link

This WIP pull request aims to fix bugs and implement missing features in the player, as well as extend existing functionality mostly to allow SSAR playback.

Implemented features:

the ability to playback SSARs, as well as several features that were needed to correctly play most SSAR sequences, including tie, mono, loop, portamento, etc, have been implemented.
Bug fixes:
many bugs have been fixed, and the player has been tested with against Nintendo's SoundPlayer SDK tool to ensure playback is as accurate as possible (as far as i can percieve).
Frontend features:
the frontend has been given the ability to playback and export SSAR sequences.
What still needs fixing:

The piano preview on the side doesn't respond to input anymore for some reason
The fullscreen preview doesn't work after a while, unsure if this is a result of my changes
The code needs a bit of clean up
The existing pan delay feature caused issues with some sounds so it is disabled for now
Missing features (PSG and white noise, LFO volume and pan) still need to be implemented.

* A sequence using bank 0 no longer causes an exception
* Mono mode is now set to true by default, i think this is the correct behavior
* Fixed pitch bend sign extension
* Tie commands now stop all of a track's active channels (on or off)
…e 2 opcodes work with them atm because laziness)
a note with duration 0, mono or not, will have the note play until its sample ends (or forever if the sample loops) (source: Nintendo's own documentation)
a note with duration 0 when mono, will have the same as above occur, but will also have the track rest until that note channel, and no other channel, ends.
this fixes the NSMB Wanted minigame voice clip echoes [NCS_SE_MGT_LUIGI_RIGHT_M0 (ID: 75) and etc]
…e the note play with the wrong program [SM64: NCS_SE_PT_METAL_HIP_ATTACK (ID: 166)]
… fixes numerous issues caused by the state of the sequence changing after the note command is sent, leading to the notes being played wrong.
…g them [SM64: NCS_SE_PT_STEP_HIT (ID: 182)]

Source: pret decomp; SND_seq.c
…AP_W (ID: 183), NCS_SE_VO_RET_NOCAP_L (ID: 119)]
Bug fixes + Feature implementations
…S: SE_M106_007], removed DX suffix from the project title
Merge willy-fixes --> master
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant