X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=psp%2Fmp3.c;h=43b449d720312a502e8b37a5ebf94aee33bac46e;hb=4b811a8abecf3ca8ee0b8a02214982a87d013e2f;hp=db3e39dbfc6e9033a0984b1aa1f9798137ab359b;hpb=93c0d147a19160bcf970edac8d0e27f93537ae8d;p=libpicofe.git diff --git a/psp/mp3.c b/psp/mp3.c index db3e39d..43b449d 100644 --- a/psp/mp3.c +++ b/psp/mp3.c @@ -460,7 +460,7 @@ int mp3_get_offset(void) // 0-1023 unsigned int offs1024 = 0; int cdda_on; - cdda_on = (PicoMCD & 1) && (PicoOpt&0x800) && !(Pico_mcd->s68k_regs[0x36] & 1) && + cdda_on = (PicoAHW & PAHW_MCD) && (PicoOpt&0x800) && !(Pico_mcd->s68k_regs[0x36] & 1) && (Pico_mcd->scd.Status_CDC & 1) && mp3_handle >= 0; if (cdda_on) { @@ -473,3 +473,17 @@ int mp3_get_offset(void) // 0-1023 } +void mp3_reopen_file(void) +{ + if (mp3_fname == NULL) return; + lprintf("mp3_reopen_file(%s)\n", mp3_fname); + + // try closing, just in case + if (mp3_handle >= 0) sceIoClose(mp3_handle); + + mp3_handle = sceIoOpen(mp3_fname, PSP_O_RDONLY, 0777); + if (mp3_handle >= 0) + sceIoLseek32(mp3_handle, mp3_src_pos, PSP_SEEK_SET); + lprintf("mp3_reopen_file %s\n", mp3_handle >= 0 ? "ok" : "failed"); +} +