diff options
Diffstat (limited to 'apps/codecs/adx.c')
-rw-r--r-- | apps/codecs/adx.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/apps/codecs/adx.c b/apps/codecs/adx.c index cc7f0320be..0c67fc8d6e 100644 --- a/apps/codecs/adx.c +++ b/apps/codecs/adx.c | |||
@@ -149,7 +149,7 @@ enum codec_status codec_run(void) | |||
149 | /* Get loop data */ | 149 | /* Get loop data */ |
150 | 150 | ||
151 | looping = 0; start_adr = 0; end_adr = 0; | 151 | looping = 0; start_adr = 0; end_adr = 0; |
152 | if (!memcmp(buf+0x10,"\x01\xF4\x03\x00",4)) { | 152 | if (!memcmp(buf+0x10,"\x01\xF4\x03",3)) { |
153 | /* Soul Calibur 2 style (type 03) */ | 153 | /* Soul Calibur 2 style (type 03) */ |
154 | DEBUGF("ADX: type 03 found\n"); | 154 | DEBUGF("ADX: type 03 found\n"); |
155 | /* check if header is too small for loop data */ | 155 | /* check if header is too small for loop data */ |
@@ -171,7 +171,7 @@ enum codec_status codec_run(void) | |||
171 | (buf[0x1f]) | 171 | (buf[0x1f]) |
172 | )/32*channels*18+chanstart; | 172 | )/32*channels*18+chanstart; |
173 | } | 173 | } |
174 | } else if (!memcmp(buf+0x10,"\x01\xF4\x04\x00",4)) { | 174 | } else if (!memcmp(buf+0x10,"\x01\xF4\x04",3)) { |
175 | /* Standard (type 04) */ | 175 | /* Standard (type 04) */ |
176 | DEBUGF("ADX: type 04 found\n"); | 176 | DEBUGF("ADX: type 04 found\n"); |
177 | /* check if header is too small for loop data */ | 177 | /* check if header is too small for loop data */ |
@@ -196,6 +196,12 @@ enum codec_status codec_run(void) | |||
196 | DEBUGF("ADX: error, couldn't determine ADX type\n"); | 196 | DEBUGF("ADX: error, couldn't determine ADX type\n"); |
197 | return CODEC_ERROR; | 197 | return CODEC_ERROR; |
198 | } | 198 | } |
199 | |||
200 | /* is file using encryption */ | ||
201 | if (buf[0x13]==0x08) { | ||
202 | DEBUGF("ADX: error, encrypted ADX not supported\n"); | ||
203 | return false; | ||
204 | } | ||
199 | 205 | ||
200 | if (looping) { | 206 | if (looping) { |
201 | DEBUGF("ADX: looped, start: %lx end: %lx\n",start_adr,end_adr); | 207 | DEBUGF("ADX: looped, start: %lx end: %lx\n",start_adr,end_adr); |