Commit Graph

279 Commits

Author SHA1 Message Date
Kingcom
efa2566192 Don't read past the end of sce_lbn files on virtual discs 2015-03-01 00:45:57 +01:00
Unknown W. Brackets
57f40589b2 Fix reads starting outside of files on isos. 2015-01-09 18:34:41 -08:00
Unknown W. Brackets
1cefac6473 Clean up some different clamping.
Could be cleaned up more but at least this is less weird.
2015-01-09 15:59:39 -08:00
Unknown W. Brackets
52288f5905 Report any attempt to read a negative size.
If this should return an error, that should be handled in sceIo.
2015-01-09 15:50:06 -08:00
Unknown W. Brackets
a4924ff753 Fix crash using large block size cso files. 2014-12-29 08:53:30 -08:00
Unknown W. Brackets
8f3a8fd233 Very rough approximation of UMD seek delays. 2014-12-26 01:15:18 -08:00
Unknown W. Brackets
d6a113809b Add basic infrastructure to time io better.
This allows the filesystems to more accurately control timing.
But they're not actually doing it yet (same timing as before.)
2014-12-26 01:15:17 -08:00
Lioncash
cac632424c Core: Add missing override specifiers 2014-12-08 15:20:31 -05:00
Lioncash
a962bc5a6c Mark some functions as const 2014-12-07 17:08:13 -05:00
Lioncash
cd26b200b2 Core: Get rid of a few c_str/strlen calls 2014-12-03 17:15:05 -05:00
Unknown W. Brackets
ced555ee47 Oops, fix a mistake in umd replacement. 2014-11-25 12:03:16 -08:00
Unknown W. Brackets
967b589778 Consistently use FileLoader for standard ISOs. 2014-11-23 13:59:56 -08:00
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 Church
97a0b0c510 Remove bogus blank line. 2014-09-04 18:09:07 +09:00
Andrew 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