--- np2/sound/rhythmc.c 2003/10/16 17:58:05 1.1.1.1 +++ np2/sound/rhythmc.c 2003/12/04 09:47:08 1.4 @@ -2,6 +2,7 @@ #include #include "wavefile.h" #include "dosio.h" +#include "pccore.h" #include "sound.h" #include "rhythm.h" @@ -22,6 +23,7 @@ static const char *rhythmfile[RHYTHM_MAX static BOOL pcmload(RHYTHMPCM *pcm, const char *fname, UINT rate) { + char path[MAX_PATH]; FILEH fh; RIFF_HEADER riff; BOOL head; @@ -35,7 +37,9 @@ static BOOL pcmload(RHYTHMPCM *pcm, cons UINT pos; BYTE work[256]; - fh = file_open_c(fname); + file_cpyname(path, np2cfg.biospath, sizeof(path)); + file_catname(path, fname, sizeof(path)); + fh = file_open_rb(path); if (fh == FILEH_INVALID) { goto pld_err1; } @@ -79,6 +83,9 @@ static BOOL pcmload(RHYTHMPCM *pcm, cons goto pld_err2; } step = 44100 / rate; + if (step == 0) { + goto pld_err2; + } samples = size / 2 / step; if (samples == 0) { goto pld_err2;