pgeObj *pgeObjLoad(const char *filename) { int fd = sceIoOpen(filename, PSP_O_RDONLY, 0777); if(fd < 0) return NULL; long filesize; filesize = sceIoLseek32(fd, 0, PSP_SEEK_END); sceIoLseek32(fd, 0, PSP_SEEK_SET); unsigned char *data = pgeMalloc(filesize); if(!data) return NULL; sceIoRead(fd, data, filesize); sceIoClose(fd); pgeObj *obj = pgeObjLoadInternal(data, filesize); if(data) pgeFree(data); return obj; }
pgeObj *pgeObjLoad(const char *filename) { FILE *fd = fopen(filename, "rb"); if(fd < 0) { printf("Fail file loading"); return NULL; } long filesize; fseek(fd, 0, SEEK_END); filesize = ftell(fd); fseek(fd, 0, SEEK_SET); unsigned char *data = malloc(filesize); if(!data) { printf("Fail data allocation"); return NULL; } fread(data, 1, filesize, fd); fclose(fd); pgeObj *obj = pgeObjLoadInternal(data, filesize); if(data) free(data); return obj; }
pgeObj *pgeObjLoadMemory(unsigned char *buffer, unsigned int size) { return(pgeObjLoadInternal(buffer, size)); }