diff options
| author | KiritoDv <kiritodev01@gmail.com> | 2024-10-29 02:06:14 -0600 |
|---|---|---|
| committer | KiritoDv <kiritodev01@gmail.com> | 2024-10-29 02:06:14 -0600 |
| commit | 52d3eca4212db61e43c14c37c1917818a2fbbecb (patch) | |
| tree | 3c7250aeb06b746d606d8b3825ddb91db3ef168c /src/audio/audio_effects.c | |
| parent | 2354ee76a3f57f0fa926b98fb8e9adc2957acc49 (diff) | |
We are so fucking close omg
Diffstat (limited to 'src/audio/audio_effects.c')
| -rw-r--r-- | src/audio/audio_effects.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/audio/audio_effects.c b/src/audio/audio_effects.c index 61d2ccaa..0a184871 100644 --- a/src/audio/audio_effects.c +++ b/src/audio/audio_effects.c @@ -1,5 +1,6 @@ #include "sys.h" #include "sf64audio_provisional.h" +#include "endianness.h" static const char devstr[] = "Audio:Envp: overflow %f\n"; @@ -199,7 +200,7 @@ f32 func_80013B90(AdsrState* adsr) { adsr->state = ADSR_STATE_LOOP; case_ADSR_STATE_LOOP: case ADSR_STATE_LOOP: - adsr->delay = adsr->envelope[adsr->envIndex].delay; + adsr->delay = BSWAP16(adsr->envelope[adsr->envIndex].delay); switch (adsr->delay) { case ADSR_DISABLE: adsr->state = ADSR_STATE_DISABLED; @@ -208,7 +209,7 @@ f32 func_80013B90(AdsrState* adsr) { adsr->state = ADSR_STATE_HANG; break; case ADSR_GOTO: - adsr->envIndex = adsr->envelope[adsr->envIndex].arg; + adsr->envIndex = BSWAP16(adsr->envelope[adsr->envIndex].arg); goto case_ADSR_STATE_LOOP; case ADSR_RESTART: adsr->state = ADSR_STATE_INITIAL; @@ -221,7 +222,7 @@ f32 func_80013B90(AdsrState* adsr) { adsr->delay = 1; } - adsr->target = adsr->envelope[adsr->envIndex].arg / 32767.0f; + adsr->target = (s16)BE16SWAP(adsr->envelope[adsr->envIndex].arg) / 32767.0f; adsr->target = SQ(adsr->target); adsr->velocity = (adsr->target - adsr->current) / adsr->delay; adsr->state = ADSR_STATE_FADE; |
