Commit Graph

253 Commits

Author SHA1 Message Date
twinaphex 4f29bef56e (config_file) Cleanups 2020-08-24 21:11:41 +02:00
twinaphex 99873ccd8a Reorder structs, alignment 2020-08-21 09:57:11 +02:00
twinaphex f48dc0ff5b Reorder structs, alignment 2020-08-15 20:38:31 +02:00
twinaphex b3963a2897 Struct alignment changes 2020-08-14 18:03:09 +02:00
twinaphex 3680804217 Undo path_basedir_size 2020-08-04 03:05:20 +02:00
Bernhard Schelling b03cdbd0da First set of cleanups to archive handling (Rev B)
- Don't read the entire archive file into memory on systems without HAVE_MMAP
- Support ZIP files between 2GB ~ 4GB on 32bit architectures
- Remove zip exclusive members from `file_archive_transfer`
- Add `zip_context_t` for zip like the already existing `sevenzip_context_t`
- Unify cleanups of zip and 7z in `file_archive_file_backend::archive_parse_file_free`
- Handle some sizes and offsets as int64_t (preparation for future Zip64 support)
- Handle ZIP compression methods in `zlib_stream_decompress_data_to_file_init` not in `file_archive_perform_mode`
- Return progress of 7z iterating with `file_archive_parse_file_progress`
- Uses MMAP where available, for files up to 256MB
2020-07-16 02:47:59 +09:00
twinaphex 06064a0527 Revert "Bring back MMAP support"
This reverts commit 32dcff3880.
2020-07-13 23:52:23 +02:00
twinaphex c84aa90075 Merge branch 'archive_cleanup_1' of git://github.com/schellingb/RetroArch 2020-07-13 21:30:02 +02:00
Bernhard Schelling 32dcff3880 Bring back MMAP support
Will be used where available for files up to 256MB
2020-07-14 03:04:01 +09:00
twinaphex 8656b3d6f8 Create specialized optimized path_basedir_size 2020-07-11 19:29:43 +02:00
Bernhard Schelling 0ddb073784 First set of cleanups to archive handling
- Don't read the entire archive file into memory on systems without HAVE_MMAP
- Support ZIP files between 2GB ~ 4GB on 32bit architectures
- Remove zip exclusive members from `file_archive_transfer`
- Add `zip_context_t` for zip like the already existing `sevenzip_context_t`
- Unify cleanups of zip and 7z in `file_archive_file_backend::archive_parse_file_free`
- Handle some sizes and offsets as int64_t (preparation for future Zip64 support)
- Handle compression methods in `zlib_stream_decompress_data_to_file_init` not in `file_archive_perform_mode`
- Return progress of 7z iterating with `file_archive_parse_file_progress`
2020-07-12 00:51:35 +09:00
jdgleaver b6364407fd Optimise parsing of configuration files 2020-06-25 15:15:08 +01:00
twinaphex e727e85b1d Updates 2020-06-25 14:01:19 +02:00
twinaphex aa48eeb98e Turn path_default_slash uppercase, and do some optimizations 2020-06-25 13:36:01 +02:00
twinaphex 35527c24c3 Revert "Optimize config_get_bool"
This reverts commit 1c38dc67c2.
2020-06-25 12:08:36 +02:00
twinaphex 1c38dc67c2 Optimize config_get_bool 2020-06-25 03:03:42 +02:00
twinaphex b9f65af98a (Libretro-common) Sync 2020-06-24 15:05:03 +02:00
twinaphex 0cdea62072 (core_info.c) Try to avoid config_get_string 2020-06-24 11:57:58 +02:00
jdgleaver 9eb8472805 Only write config files to disk when parameters change 2020-04-27 17:06:35 +01:00
twinaphex cd9ca691ca (libretro-common) Update copyright 2020-01-31 15:43:42 +01:00
twinaphex 7cfd996802 Add return value to fill_pathname_noext 2019-09-21 01:41:56 +02:00
twinaphex 6d8bc91220 Start returning sizes for file_path functions 2019-09-21 00:01:09 +02:00
LazyBumHorse 6285c05948 add resolve_symlinks parameter to path_resolve_realpath() and cleanup playlist_resolve_path() 2019-07-22 13:44:35 +02:00
LazyBumHorse 7006764c12 replace realpath() by custom code which does not resolve symlinks 2019-07-22 12:10:28 +02:00
twinaphex c2c7c106a1 Add conf->path for config_file_new_from_path_to_string 2019-07-20 00:39:55 +02:00
twinaphex 41a2fabb4e Create config_file_new_from_path_to_string 2019-07-18 12:03:50 +02:00
twinaphex a6d6c21e52 Rename config_file_new_null to config_file_new_alloc 2019-07-17 19:50:32 +02:00
twinaphex 0c31437c24 Create config_file_new_null 2019-07-17 18:27:53 +02:00
Brad Parker 15d97dbaf3 cdrom: add disc dump option 2019-07-08 16:06:35 -04:00
LazyBumHorse 2816730b2f make shader presets use relative paths
Also change fill_pathname_resolve_relative() to apply path_resolve_realpath() as well
2019-06-07 16:11:06 +02:00
twinaphex f117d763d6 Create path_stat and use it 2019-05-22 02:21:30 +02:00
twinaphex bc2bdd5734 config_file_read not needed anymore 2019-04-30 13:37:10 +02:00
Ghabry 5faf6a124d UWP VFS: Calculate buffer offset correctly when read fails due to EOF 2019-04-28 12:15:46 +02:00
Ghabry c209b0b3d9 UWP: Improve IO performance by manually buffering short reads.
Reduce copies by binding by reference in the lambdas
2019-04-27 23:47:52 +02:00
Ghabry 4390317992 Revert "(UWP/WinRT)"
This reverts commit b43b3e2bb0.
2019-04-27 15:01:01 +02:00
twinaphex b43b3e2bb0 (UWP/WinRT)
- Disable VFS for now - seems to be very problematic right now
- Move uwp_is_path_accessible_using_standard_io to file_path.c
since it seems to have no VFS dependencies, and rename it to
is_path_accessible_using_standard_io so it could possibly be later
used for other platforms as well that also have sandboxed filesystems
2019-04-27 09:20:19 +02:00
twinaphex 69168ec6bc Core info list iteration was calling path_stat two times on the same
paths - unnecessary file I/O is an issue with UWP/WinRT so let's cut
this down to only one path_stat. config_file_read function created -
acts the same as config_file_new except it doesn't check if the path
provided is actually a directory, which in turn would lead to another path_stat call
2019-04-22 01:13:19 +02:00
twinaphex 5cce51ed8d Move runtime_file to RetroArch 2019-03-01 01:22:35 +01:00
jdgleaver 38c54eaebe Add persistent content runtime logging 2019-02-27 16:20:59 +00:00
orbea 28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
orbea e062b98088 Remove trailing blank lines.
find . -type f -exec sed -i '${/^[[:space:]]*$/d;}' {} \+
2019-01-17 19:39:38 -08:00
Twinaphex b5d8b8b3bc
Merge pull request #8020 from krzys-h/vfs-v3
VFS v3 (improved)
2019-01-17 03:14:35 +01:00
Brad Parker 16fffd67ea Normalize archive progress calculation 2019-01-16 17:22:46 -05:00
krzys-h e6fc4220fa Revert "Revert "VFS v3: stat, mkdir, directory listings""
This reverts commit a549e28f01.
2019-01-16 21:01:29 +01:00
Twinaphex a549e28f01
Revert "VFS v3: stat, mkdir, directory listings" 2019-01-16 03:53:34 +01:00
Twinaphex d4b33ac1ad
Merge pull request #7995 from krzys-h/vfs-v3
VFS v3: stat, mkdir, directory listings
2019-01-16 02:38:54 +01:00
krzys-h cc7541338c Fix parent of root directory turning into ./ on Windows (#7803) 2019-01-14 20:48:55 +01:00
krzys-h 109de0bebb VFS v3: stat, mkdir, directory listings 2019-01-13 00:33:24 +01:00
twinaphex 9b801aee17 Buildfixes 2019-01-08 20:43:03 +01:00
Twinaphex 40997473ed
Merge branch 'master' into orbis2 2019-01-08 20:18:08 +01:00
orbea bfc366decc Squeeze extra blank lines with cat(1).
Example:

find . -type f -iname '*.c' | while read -r i; do
  cat -s "$i" > "$i.new"
  mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
orbea 849259d8f6 libretro-common: Sort config file conditionally.
This allows optionally sorting configure files and is needed to fix the
order of inputs in the autoconfig profiles which should not be sorted
alphabetically.

Fixes https://github.com/libretro/RetroArch/issues/7873
2019-01-03 15:28:32 -08:00
psxdev d52de24e79 [ORBIS] Add support to config save for orbis 2019-01-03 21:23:44 +01:00
krzys-h b201d669b5 First iteration of UWP support
Enough to kind of run

Working drivers: xinput, d3d11
Still missing: input driver with keyboard support, audio driver
2018-12-28 22:09:22 +01:00
twinaphex 49a3514147 Revert "Revert "bugfix cheat saving""
This reverts commit 9862579610.
2018-10-11 03:27:06 +02:00
twinaphex c443d6b475 Revert "Revert this - was getting crashes in both OSX and MSVC 2003"
This reverts commit 7d0dba3007.
2018-10-11 03:26:58 +02:00
twinaphex 7d0dba3007 Revert this - was getting crashes in both OSX and MSVC 2003
in config_file.c inside config_get_entry
2018-10-10 23:34:16 +02:00
twinaphex 9862579610 Revert "bugfix cheat saving"
This reverts commit 4c3b06d640.
2018-10-10 23:27:19 +02:00
Sven 4c3b06d640 bugfix cheat saving 2018-10-10 11:10:49 -04:00
Sven f53e1ca4b1 fix new rumble types ; increase max displayed cheats to 6000 2018-10-10 09:15:46 -04:00
Brad Parker a1b831abdb allow 7z archives to have multiple files extracted at once 2018-08-06 20:44:59 -04:00
Sven 5f35249216 Implement robust cheat searching interface with rumble features 2018-07-25 19:19:14 -04:00
twinaphex 5ba2a621c0 Silence warnings 2018-07-14 00:45:16 +02:00
twinaphex 23b0444afe Update libretro-common 2018-05-28 17:30:56 +02:00
twinaphex 768ebbfdb5 Merge commit 'ce9ce1d35387ef8144e53bf071396fa075bfb6c5' as 'libretro-common' 2018-05-12 17:56:34 +02:00
twinaphex 0548349991 Remove libretro-common 2018-05-12 17:56:14 +02:00
twinaphex 74d4bc80d9 (libretro-common) Updates 2018-04-19 09:43:21 +02:00
twinaphex be7eb4de1c Update libretro-common 2018-04-16 08:57:17 +02:00
twinaphex 1751f4a0af Make it possible to read bigger files by replacing ssize_t with int64_t
and size_t with uint64_t
2018-04-13 00:18:11 +02:00
twinaphex 89e912087b Put RARCH_INTERNAL ifdef around this 2018-03-28 16:41:37 +02:00
Brad Parker aaf35f53f8 fill_pathname_parent_dir_name: return failure if path has no slash 2018-02-08 23:19:12 -05:00
twinaphex f9a412dc11 Create fill_pathname_join_concat_noext and use it 2018-01-31 22:43:55 +01:00
Brad Parker 722137296d add fill_pathname_parent_dir_name function 2018-01-28 15:55:27 -05:00
Rob Loach 26b9cb3c78
libretro-common: Clean up dependencies of file_path
This moves a few functions that were defined in file_path_special to libretro-common to clean up the dependency tree.
2018-01-13 00:27:49 -05:00
radius 3b334b60d6 add display name and config name to autoconf 2018-01-11 17:06:14 -05:00
twinaphex f2ddc8eff0 Revert "Simplify config_file_write"
This reverts commit a4500eeafc.
2018-01-01 07:45:56 +01:00
twinaphex a4500eeafc Simplify config_file_write 2017-12-20 17:07:31 +01:00
twinaphex c7c4b723d6 Move path_file_exists to filestream and do away with filestream
dependencies in file/file_path
2017-12-14 20:05:46 +01:00
Brad Parker 8c0adf3594 move path_file_rename and path_file_remove into VFS 2017-12-14 13:32:26 -05:00
gblues 6904101c44 Clean up trailing whitespace
== DETAILS

Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
twinaphex e78ec12973 Can't have redefinitions of nbio_t in Griffin 2017-11-25 18:33:22 +01:00
twinaphex 7a772b9cd4 Create nbio_intf.c 2017-11-25 05:35:55 +01:00
Alcaro b5722127c7 Fix docs 2017-11-25 00:26:13 +01:00
Alcaro 053fbd6f27 Add mmap-based nbio implementation (which is too fast for the tests but otherwise passes) 2017-11-24 22:08:57 +01:00
twinaphex 13e0bd1932 Change function signature of file_path_rename 2017-11-06 19:17:42 +01:00
twinaphex e5d4e2ac0a Silence a lot of warnings 2017-11-06 19:13:54 +01:00
Brad Parker 68a8198e4a convert more file IO functions to use filestream, fixes encoding issues on Windows 2017-10-29 12:08:24 -04:00
Brad Parker a7c8cc88e5 win32: support local multibyte encoding for file paths 2017-10-14 23:13:24 -04:00
twinaphex 3564562563 database_info.c - use malloc 2017-09-29 05:01:00 +02:00
twinaphex ddb4867c52 (file_path.c) Cleanups 2017-06-28 04:51:58 +02:00
twinaphex cf71d465a3 Turn mkdir_norecurse into static function 2017-06-16 15:33:06 +02:00
twinaphex 6af5bd01bf Merge retro_stat and file_path 2017-06-16 15:00:11 +02:00
twinaphex ab2d94bb64 Update libretro-common 2017-03-26 04:54:50 +02:00
twinaphex 64bb848daf Update headers (pt. 2 - libretro-common) 2017-01-22 13:58:20 +01:00
twinaphex d4796caabd (libetro-common) Turn path_contains_compressed_file into a macro 2016-12-17 14:01:25 +01:00
twinaphex 8042c2ac62 Move config_file_userdata.c to libretro-common 2016-12-12 12:36:46 +01:00
Gregor Richards ac50e17f50 Moving zlib stream interface
Moving the zlib streaming interface out of archive_file and into
trans_stream, including updating the png support to use the new
trans_stream interface. archive_file_zlib itself still needs updating.
2016-11-26 10:47:24 -05:00
twinaphex 4fb6808321 libretro-common is MIT and we don't want individual copyright
per authors here; RetroArch is GPL and it's fine there
2016-10-27 19:52:58 +02:00
Brad Parker d1d5584d18 update copyright 2016-10-27 11:47:10 -04:00
Brad Parker af98ee1c8a Add CRC calculation function that works with archives with or without a path inside (first file is used if no path)
Add all archive's contents to database scan list when scanning files and directories

Allow scanning a single file that is an archive

Remove unnecessary prototypes from archive_file.h

Simplify retrieving of CRCs from archives when scanning
2016-09-25 00:15:05 -04:00