notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
UIQ3 bugfixes, SVP drc indirect jumps, stuff
[picodrive.git]
/
Pico
/
Cart.c
diff --git
a/Pico/Cart.c
b/Pico/Cart.c
index
de340a1
..
c07bfda
100644
(file)
--- a/
Pico/Cart.c
+++ b/
Pico/Cart.c
@@
-137,8
+137,10
@@
zip_failed:
if (f == NULL)
\r
goto cso_failed;
\r
\r
if (f == NULL)
\r
goto cso_failed;
\r
\r
+#ifndef __EPOC32__
\r
/* we use our own buffering */
\r
setvbuf(f, NULL, _IONBF, 0);
\r
/* we use our own buffering */
\r
setvbuf(f, NULL, _IONBF, 0);
\r
+#endif
\r
\r
cso = malloc(sizeof(*cso));
\r
if (cso == NULL)
\r
\r
cso = malloc(sizeof(*cso));
\r
if (cso == NULL)
\r
@@
-192,9
+194,6
@@
cso_failed:
f = fopen(path, "rb");
\r
if (f == NULL) return NULL;
\r
\r
f = fopen(path, "rb");
\r
if (f == NULL) return NULL;
\r
\r
- /* we use our own buffering */
\r
- setvbuf(f, NULL, _IONBF, 0);
\r
-
\r
file = malloc(sizeof(*file));
\r
if (file == NULL) {
\r
fclose(f);
\r
file = malloc(sizeof(*file));
\r
if (file == NULL) {
\r
fclose(f);
\r
@@
-207,6
+206,12
@@
cso_failed:
file->type = PMT_UNCOMPRESSED;
\r
fseek(f, 0, SEEK_SET);
\r
\r
file->type = PMT_UNCOMPRESSED;
\r
fseek(f, 0, SEEK_SET);
\r
\r
+#ifndef __EPOC32__ // makes things worse on Symbian
\r
+ if (file->size > 0x400000)
\r
+ /* we use our own buffering */
\r
+ setvbuf(f, NULL, _IONBF, 0);
\r
+#endif
\r
+
\r
return file;
\r
}
\r
\r
return file;
\r
}
\r
\r
@@
-445,7
+450,7
@@
int PicoCartLoad(pm_file *f,unsigned char **prom,unsigned int *psize)
rom=PicoCartAlloc(size);
\r
if (rom==NULL) {
\r
elprintf(EL_STATUS, "out of memory (wanted %i)", size);
\r
rom=PicoCartAlloc(size);
\r
if (rom==NULL) {
\r
elprintf(EL_STATUS, "out of memory (wanted %i)", size);
\r
- return
1
;
\r
+ return
2
;
\r
}
\r
\r
if (PicoCartLoadProgressCB != NULL)
\r
}
\r
\r
if (PicoCartLoadProgressCB != NULL)
\r
@@
-470,7
+475,7
@@
int PicoCartLoad(pm_file *f,unsigned char **prom,unsigned int *psize)
if (bytes_read <= 0) {
\r
elprintf(EL_STATUS, "read failed");
\r
free(rom);
\r
if (bytes_read <= 0) {
\r
elprintf(EL_STATUS, "read failed");
\r
free(rom);
\r
- return
1
;
\r
+ return
3
;
\r
}
\r
\r
// maybe we are loading MegaCD BIOS?
\r
}
\r
\r
// maybe we are loading MegaCD BIOS?
\r