diff --git a/src/tic.c b/src/tic.c index 1b9fb88..189c18e 100644 --- a/src/tic.c +++ b/src/tic.c @@ -295,10 +295,11 @@ static void channelSfx(tic_mem* memory, s32 index, s32 note, s32 octave, s32 dur c->volume = volume; - { - struct {s8 speed:SFX_SPEED_BITS;} temp = {speed}; - c->speed = speed == temp.speed ? speed : machine->soundSrc->sfx.data[index].speed; - } + if(index >= 0) + { + struct {s8 speed:SFX_SPEED_BITS;} temp = {speed}; + c->speed = speed == temp.speed ? speed : machine->soundSrc->sfx.data[index].speed; + } // start index of idealized piano enum {PianoStart = -8}; @@ -324,7 +325,6 @@ static void resetMusic(tic_mem* memory) musicSfx(memory, -1, 0, 0, 0, c); } - static void setMusic(tic_machine* machine, s32 index, s32 frame, s32 row, bool loop) { tic_mem* memory = (tic_mem*)machine;