Commit graph

47 commits

Author SHA1 Message Date
Unknown W. Brackets
4942692558 Io: Provide directory existence with listing.
Sometimes, you need to tell the difference between an empty directory and
one that doesn't exist at all.  We can do this in a single call.
2022-10-09 14:42:31 -07:00
Henrik Rydgård
de3d711616 Move FixPathCase to Common/File/Path 2021-09-11 21:17:23 +02:00
Henrik Rydgård
07413aa4e3 Feedback 2021-09-11 18:53:46 +02:00
Henrik Rydgård
fcc0337576 Fix the Android recursive size computation and hook it up. 2021-09-11 18:12:30 +02:00
Henrik Rydgård
48310d15a9 Add metafilesystem hook to add optimized implementations of compute recursive directory size 2021-09-11 18:12:29 +02:00
Henrik Rydgård
8ab627d6e9 Workaround for the /PSP path thing. Needs testing. 2021-07-25 17:32:12 +02:00
Henrik Rydgård
e73e0dc0be Fix multiple issues preventing in-game saves from working. 2021-07-19 17:34:51 +02:00
Henrik Rydgård
58ecab849e Just some variable initialization 2021-07-18 16:00:07 +02:00
Henrik Rydgård
40ab92fe7b Remove unused function GetHostPath from filesystems 2021-05-13 10:39:17 +02:00
Henrik Rydgård
025bcb1673 Introduce Path, start using it all over the place.
Still lots left to convert!

Convert GetSysDirectory to return Path.

More buildfixing

Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
49abe9ed6c Io: Open sce_lbn references and whole ISO faster. 2020-05-21 18:58:24 -07:00
Unknown W. Brackets
c829ccb87d Io: Track whether the game is on a UMD or storage. 2020-05-21 18:57:46 -07:00
Unknown W. Brackets
67416e5919 Io: Simulate VFAT bug only when simulating FAT32.
And cleanup flag handling a bit.
2020-05-21 18:57:46 -07:00
Unknown W. Brackets
913121cf2b Io: Consistently use error codes with OpenFile().
This gets rid of OpenWithError(), and just always returns a negative value
on error for OpenFile().  Also fixed the sequence rollover, which could've
returned 0.

0 should be considered a valid handle ideally, but left it never returning
0 to simplify cleanup in some areas.
2019-10-20 11:03:37 -07:00
Unknown W. Brackets
33cfac549d Replay: Attempt to ignore reads in PSP/GAME.
Unless there are writes in this directory, we should be able to safely
ignore them.

Currently detection isn't perfect (like PSP/./GAME/../GAME), but this
should catch the vast majority of cases.
2019-07-04 23:46:15 -07:00
Unknown W. Brackets
224229fc1b Replay: Skip recording virtual disc reads.
Oops.
2018-04-17 07:51:49 -07:00
Florent Castelli
4145b60a0e symbian: Remove! 2016-10-11 18:49:08 +02: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
Unknown W. Brackets
a6a234add1 Return errors on disk full for file creation. 2014-11-02 12:40:31 -08: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
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
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
Kentucky Compass
db77b52caa Save/restore local file handles and seek positions 2013-12-28 23:43:02 -08:00
Unknown W. Brackets
0bf1ef5773 Improve sceIoGetDevType() return values.
At least for block/file devices.  Can't find a way to get an alias.
2013-12-27 08:04:00 -08:00
Unknown W. Brackets
dbf86187e3 Add Ioctl() to IFileSystem, cleaner. 2013-12-27 08:03:59 -08:00
Unknown W. Brackets
256394b2bf Move VirtualDiscFileSystem to its own file. 2013-07-28 12:31:48 -07:00
Kingcom
b24f4a64d4 Linux fixes and small changes 2013-07-25 13:45:30 +02:00
Kingcom
5ddc9afba0 -save state support
-abstracted file access
-moved to VirtualDiscFileSystem class
2013-07-24 22:49:45 +02:00
Kingcom
e76ffe6b7c Supprt opening whole disc, assume file info is gathered before it's used 2013-07-23 22:23:12 +02:00
Kingcom
8955fedf44 Open directory as disc image 2013-07-23 17:24:33 +02:00
tpunix
2de2c53918 new patch for ISOFilsSystem 2013-07-08 12:35:07 +08:00
Unknown W. Brackets
c8ee2c0739 sceIoRename() ignores any path on dest.
Also, change the interface so it can return an error code.  Currently not
returning perfect error codes but it's better than before.
2013-06-23 20:09:44 -07:00
Sacha
b39a572043 Buildfixes.
Fix C++11 usage.
Remove redundancy.
Fix st_*time re-usage.
2013-06-02 13:26:39 +10:00
Henrik Rydgard
aa06c1452e Allow mounting VFS directories. Used to provide flash0 from within APK on Android. 2013-02-27 17:41:40 +01:00
Unknown W. Brackets
1759bb8051 Use RemoveFile instead of DeleteFile in fs.
Windows defines DeleteFile to DeleteFileA/W, causing confusion.
2013-02-08 10:26:33 -08:00
Henrik Rydgard
883f61e3dd Savestates: Add quicksave/quickload. Add Android UI for savestates. All single slot for now. 2013-01-02 21:05:02 +01:00
Unknown W. Brackets
4b39e39455 Start save stating the filesystem state.
Plus minor fixes and at least an attempt to make states the same
on both 32 and 64 bit.
2012-12-28 13:55:27 -08:00
Henrik Rydgård
29bc06ae32 Possible buildfix 2012-12-28 16:52:01 +01:00
KentuckyCompass
9e85c01c1f Simulate case insensitivity on case sensitive platforms. 2012-12-27 04:27:07 -08:00
KentuckyCompass
f5998d524a Add HOST_IS_CASE_SENSITIVE define 2012-12-27 03:25:21 -08:00
Henrik Rydgård
1328413dfc Filesystems: add host0: hack, proper shutdown of DirectoryFileSystem 2012-12-26 08:24:19 +01:00
Sacha
6192bdf6df sceIoRename function 2012-11-28 05:21:32 +10:00
Henrik Rydgard
64cc573703 Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK. 2012-11-04 23:24:00 +01:00
Henrik Rydgard
4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00