Commit Graph
267 Commits
Author SHA1 Message Date
Unknown W. Brackets c085b9c082 Don't try to read negative file sizes. 2014-11-06 08:45:33 -08:00
Unknown W. Brackets 5ef2df7ebd Fix a small warning on 32-bit.
Would only practically matter for very very large reads on very very large
csos.
2014-11-03 23:32:25 -08:00
Unknown W. Brackets 10bcb323ac Oops, forgot to free up zlib resources. 2014-11-03 13:40:09 -08:00
Henrik Rydgård f1d43e7e90 Merge pull request #7046 from unknownbrackets/perf
Improve load and shutdown performance a bit
2014-11-03 21:50:10 +01:00
Unknown W. Brackets 61c21340fb Warning fixes. 2014-11-03 08:34:34 -08:00
Unknown W. Brackets 28b3b841d5 Implement optimized multi-block reads for iso/cso.
This of course means less fread() calls, and is faster.  It improves load
time even on my desktop.
2014-11-02 21:43:27 -08:00
Unknown W. Brackets 9c5ad44000 Add an interface to read multiple blocks at once. 2014-11-02 19:54:13 -08:00
Unknown W. Brackets f3f7fb2648 Show an on screen message when disk full is hit. 2014-11-02 13:29:25 -08:00
Unknown W. Brackets a6a234add1 Return errors on disk full for file creation. 2014-11-02 12:40:31 -08:00
Unknown W. Brackets d4e8bd96af Handle disk full more properly in sceIoWrite(). 2014-11-02 10:55:27 -08:00
Sacha b7f2de7d29 Check free disk space on Symbian too. 2014-11-02 12:27:20 +10:00
Unknown W. Brackets 9511fd81f1 Warning fix. 2014-11-01 00:33:20 -07:00
Unknown W. Brackets f687613d68 Check disk space on Posix/Android systems also.
Android apparently decided to skip statvfs() and only implement the older,
os-dependent statfs().
2014-11-01 00:33:20 -07:00
Unknown W. Brackets 2958c575a1 Check actual free disk space when games ask.
Windows only for the moment.
2014-11-01 00:33:19 -07:00
Henrik Rydgard f5c9235640 Buildfix (needed an include in the header on some platforms so let's move to the cpp file) 2014-10-31 00:35:39 +01:00
Henrik Rydgard 291e5e53c0 Add feature to cache ISOs in RAM to avoid I/O stutters. 64-bit only. Loading gets slow though.
TODO: Make it cache in the background on load. Allow on 32-bit for small ISOs.
2014-10-31 00:14:00 +01:00
Unknown W. Brackets 734c81223e Support cso files with larger block sizes.
Calling them "frames" just to quell the confusion level in the code.
2014-10-25 21:18:12 -07:00
Andrew ChurchandAndrew Church 97a0b0c510 Remove bogus blank line. 2014-09-04 18:09:07 +09:00
Andrew ChurchandAndrew Church f976c309b4 Ensure that sceIoOpen() fails on directories. 2014-09-04 18:03:28 +09:00
Henrik Rydgard c5861f4277 Rename to ISOBlockSystem, savestate workaround (?) 2014-07-28 00:01:10 +02:00
Henrik Rydgard 8146ff85f3 umd0 solution: Add "OnlyEntireISOFileSystem"
Wraps around an ISOFileSystem, redirecting all the filenames to "" to
achieve the desired effect (should fix Bleach Soul Carnival 2 without resorting
to CPkmn's hack from #6638)

Probably breaks savestates as-is...
2014-07-27 23:42:46 +02:00
Henrik Rydgard 272f0b8c70 Add a TODO (handling corrupt CSO data) 2014-07-22 16:07:10 +02:00
Sacha cd20288d99 Fix some compiler warnings. 2014-07-17 00:49:58 +10:00
Unknown W. Brackets a5b0901c36 Improve cross-platform savestate compat.
If 0 files are open in flash0:, which is very very common, this will make
them work the same.
2014-07-04 13:34:38 -07:00
Henrik Rydgard 56a513e20a Oops, accidentally changed the non-android path in a bad way. 2014-06-10 01:06:22 +02:00
Henrik Rydgard 0b42530fd8 Use low-level I/O on Android for 64-bit offset support
Fixes videos in FF Type-0 on Android. See #6268
2014-06-10 01:00:34 +02:00
Henrik Rydgard d6b51d4dfa Reduce some excessive logging 2014-06-09 19:40:05 +02:00
Lioncash c54b7c1ec4 Get rid of unnecessary c_str calls in VirtualDiscFileSystem.cpp 2014-05-27 21:57:10 -04:00
Unknown W. Brackets 63b5ec3d85 Allow specifying a root path for host0:/.
This way, similar to the PSP, we can have a root path outside the test.
2014-04-19 21:43:09 -07:00
Henrik Rydgard c9eb4a1916 VFSFileSystem too 2014-04-13 23:34:08 +02:00
Henrik Rydgard a53ecd7da3 More elegant way of solving #5839 (d_private in sceIoDread)
We flag filesystems as being FAT32 instead of checking for "ms0:".
2014-04-13 23:22:17 +02:00
Unknown W. Brackets 943bc7ee78 Oops, close the dir after listing it in ms0:/.
This was affecting some savedata modes, and showed up on tests.  Not sure
how it might've affected games, probably not much.
2014-03-30 19:34:19 -07:00
Henrik Rydgård 382db79307 Merge pull request #5698 from raven02/patch-32
Do it inside inColon
2014-03-25 00:27:28 +01:00
Unknown W. Brackets 3a376a0cd9 Fix exists check in VFSFileSystem::GetFileInfo().
Only matters if it can't map the path / doesn't have the apk mapped (e.g.
as on headless right now.)
2014-03-23 13:01:52 -07:00
raven02 9b272cfc68 Do it inside inColon 2014-03-23 22:37:43 +08:00
sum2012 c208b17a75 Change to comment 2014-03-23 16:48:32 +08:00
sum2012 48b07d46bf Remove entire block again 2014-03-23 12:15:23 +08:00
sum2012 0694e91fab Remove entire block 2014-03-23 11:19:37 +08:00
sum2012 ba88be9172 Fix disc0:/ vs. disc0: in path parsing
Fix Hot Pixel loading
2014-03-23 11:04:06 +08:00
lioncash b9886942a7 Fix some vertical alignments in misc Core source files. 2014-03-03 11:16:53 -05:00
Unknown W. Brackets ed2417731a Improve error handling when PARAM.SFO can't read. 2014-02-15 10:34:39 -08:00
Unknown W. Brackets cff6ad6428 Attempt to virtually handle truncation properly.
Fixes LittleBigPlanet save problem, at least on US.
2014-02-15 10:34:38 -08:00
Unknown W. Brackets 9293bb17b9 Switch to file descriptors instead of FILE *.
This allows us to support the io modes more accurately, not truncating for create/write, etc.
2014-02-15 10:34:38 -08:00
Unknown W. Brackets bd982b2e6f Support PSP_O_TRUNC on Windows.
There are more modes we don't support properly.  May fix savedata
corruption in Gran Turismo and possibly other games.
2014-02-11 23:54:30 -08:00
sum2012 b348c05467 Fix MapFilePath by @unknownbrackets
Fix #5377
2014-02-11 21:26:44 +08:00
Unknown W. Brackets 73722d9cee Support additional prefixes, like memstick:.
I also found umd01: and host01: work, etc.  May help #5377 and possibly
others.

It seems like games can assign these at will and potentially even
subpaths, but reporting hasn't shown many cases yet.  We can still watch
it.

Avoided mapping additional systems because savestates don't handle that
well currently.
2014-02-10 01:41:28 -08:00
Unknown W. Brackets 6bdfa5a13a Support larger iso files (more than 2GB.)
No actual PSP games are this big (a UMD can only go up to 1.8 GB), but it
can be convenient for combined multi-game discs.  Fixes #5169.
2014-01-23 22:00:15 -08:00
Unknown W. Brackets bc7bc87941 The total size of umd0: is in blocks.
Therefore sceIoLseek(umd0:, 0, 2) should return the number of blocks, not
the number of bytes, in the iso.

Looks like this may help Zero no Kiseki.
2014-01-11 08:34:04 -08:00
Unknown W. Brackets f14361c3b8 Add a bunch more missing cstring includes. 2013-12-30 21:37:19 -08:00
Henrik Rydgård 00c32ddadb Mostly get rid of including "Globals.h" 2013-12-30 10:17:11 +01:00