X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=Pico%2Fcd%2Fcue.c;h=84deba703e21a70726de611c814b80edfebcf90b;hb=4aed476f2475f40406b4c3da91b3e5e7323e87b2;hp=39c635a48f7272e29c0c49527f4c73f0355c6d85;hpb=c9e1affca5438353fdb156fb07a747af83251e14;p=picodrive.git diff --git a/Pico/cd/cue.c b/Pico/cd/cue.c index 39c635a..84deba7 100644 --- a/Pico/cd/cue.c +++ b/Pico/cd/cue.c @@ -6,6 +6,10 @@ #include "../PicoInt.h" // #define elprintf(w,f,...) printf(f "\n",##__VA_ARGS__); +#ifdef _MSC_VER +#define snprintf _snprintf +#endif + static char *mystrip(char *str) { int i, len; @@ -86,9 +90,7 @@ cue_data_t *cue_parse(const char *fname) mystrip(buff); if (buff[0] == 0) continue; - if (BEGINS(buff, "REM")) - continue; - else if (BEGINS(buff, "TITLE ") || BEGINS(buff, "PERFORMER ") || BEGINS(buff, "SONGWRITER ")) + if (BEGINS(buff, "TITLE ") || BEGINS(buff, "PERFORMER ") || BEGINS(buff, "SONGWRITER ")) continue; /* who would put those here? Ignore! */ else if (BEGINS(buff, "FILE ")) { @@ -199,6 +201,16 @@ cue_data_t *cue_parse(const char *fname) else pending_pregap = m*60*75 + s*75 + f; } + else if (BEGINS(buff, "REM LENGTH ")) // custom "extension" + { + int m, s, f; + get_token(buff+11, buff2, sizeof(buff2)); + ret = sscanf(buff2, "%d:%d:%d", &m, &s, &f); + if (ret != 3) continue; + data->tracks[count].sector_xlength = m*60*75 + s*75 + f; + } + else if (BEGINS(buff, "REM")) + continue; else { elprintf(EL_STATUS, "cue: unhandled line: \"%s\"", buff);