Commit Graph

1340 Commits

Author SHA1 Message Date
Twinaphex ee06a8f175 Merge pull request #5447 from bkoropoff/scanning2
More scanning rework
2017-09-19 15:46:04 +02:00
Aaron Oneal fb8fe84684 Fix archive scanning
Archive scans were broken for cores like Atari 5200 and Commodore 64 because archive contents were skipped if a core reported it supported compressed files. The problem is, it's a false assumption that just because a core supports compressed files that the content database contains CRCs for compressed files.

Instead of adding the contents of every compressed file to the scan list ahead of time, the patched logic now checks for the CRC of the archive itself as it always has but then adds the archive contents to the scan list if the archive itself is no match. This maintains the logic of adding only the archive if the core supports compressed files and the archive CRC matches but also allows for deeper content scans when there is no match.

The patch also removes `core_info_unsupported_content_path` as it was redundant with existing `core_info_database_supports_content_path` logic.
2017-09-18 23:15:28 -07:00
Brian Koropoff d4beeeda33 task_database: skip serials for the right file type! 2017-09-18 09:03:43 -07:00
Brian Koropoff 84edc8ffb0 task_database: prune files referenced from cue/gdi files
Since we use cue/gdi files to find the right track file to
scan, don't bother scanning them separately.
2017-09-18 09:03:43 -07:00
Brian Koropoff 46e78e9d1b task_database: fix parsing CUEs with one track 2017-09-18 09:03:43 -07:00
Brian Koropoff c6c090052e task_database: fix memory leak 2017-09-18 09:03:43 -07:00
Brian Koropoff 6c1044a699 task_database: support GDI files 2017-09-18 09:03:43 -07:00
Brian Koropoff fa6d0fac67 task_database: more scanning rework
- Use the primary (largest data) track for CRC identification, as it
  seems least likely to be shared among multiple discs
- CRC the primary track when importing a loose .cue file.
- If multiple tracks are in the same file, CRC the correct chunk
2017-09-18 09:03:43 -07:00
Brian Koropoff edf90d250f task_database: fix memory leak in error path 2017-09-18 09:00:39 -07:00
twinaphex 49cf80db10 Fix resource leaks 2017-09-18 15:57:05 +02:00
Twinaphex 6648ebed0d Silence some warnings 2017-09-18 11:56:59 +02:00
Brian Koropoff 5a3969d4fa task_database: rework cd scanning
Support chd files.  Fall back to using the CRC32 of the last track
of CDs if a serial number is not available.  This requires new
database files, but is necessary for chd scanning to work.
2017-09-17 02:11:07 -07:00
twinaphex b51a19da5c Fix memory leak 2017-09-12 05:26:59 +02:00
twinaphex c1f60c1aa6 task_database_cue.c - reduce stack usage 2017-09-12 05:04:27 +02:00
twinaphex c1c42cac6b (task_database.c) Reduce stack usage 2017-09-12 05:00:22 +02:00
twinaphex 0007d66bf8 Fix memory leaks 2017-09-11 02:22:46 +02:00
twinaphex 0724cbbf2b Reduce stack usage 2017-09-10 21:58:05 +02:00
twinaphex 91b1afad0a (dirs.c/task_content.c) reduce stack usage 2017-09-10 21:42:24 +02:00
twinaphex 750621e28c (tasks/task_content.c) Reduce stack usage 2017-09-09 23:17:28 +02:00
twinaphex 6df9c7ca30 Cleanup 2017-09-09 20:10:28 +02:00
Twinaphex ca6a7578e4 Merge pull request #5407 from aarononeal/hotfix/slowscan
Fix slow content scans.
2017-09-08 20:22:33 +02:00
Brad Parker 07566c51a1 VC6 buildfixes, add Makefile.griffin target for it 2017-09-07 11:50:10 -04:00
Aaron Oneal e3f4e0d71a Fix ISO scan crash from buffer overflow
Recent additions in commit #bbb2a7d6f to scan ISO files with ASCII characters overflowed the serial number buffer and caused a crash. This fix limits the read to 15 bytes which is all that is actually required.
2017-09-06 23:37:46 -07:00
Aaron Oneal 48550235d5 Fix slow content scans.
The check for unsupported content was reversed which was causing files to be checked against every database. Correcting this improves performance drastically. This appears to have been broken since at least commit #fc1f2cdcf.
2017-09-06 20:51:37 -07:00
Brad Parker 0a1b3fedc0 VC6 support (targets NT 3.51) 2017-09-06 23:03:02 -04:00
twinaphex e16371b8a5 Merge input_config.c and input_driver.c 2017-08-31 02:25:04 +02:00
twinaphex af477ff317 C89 buildfix 2017-08-06 17:11:13 +02:00
radius cf8783644d allow screenshots into content dir via bool setting in addition of the empty string 2017-08-05 13:57:24 -05:00
Twinaphex d11b9e80b4 Merge pull request #5244 from rtissera/modsupport
Add MOD/S3M/XM support to audio mixer (libretro-common) through micromod/ibxm
2017-08-04 20:36:55 +02:00
Romain Tisserand cbe2d9a941 Preliminary MOD/S3M/XM support through ibmx library (part of micromod repository) 2017-08-04 15:05:29 +02:00
radius 3a3d9cd41e if swap override is not specified it should be false 2017-08-04 01:37:16 -05:00
twinaphex 50b838d8ed Cleanups 2017-07-30 10:11:41 +02:00
Rob Loach bbb2a7d6f4
Add serial detection for Wii 2017-07-29 23:23:05 -04:00
Brad Parker 5733d8ebd5 move content list builder into scanner task with progress, fixes menu freeze with large playlists 2017-07-09 00:44:02 -04:00
Twinaphex 6995154a9a Merge pull request #5133 from fr500/master
Fix #5091
2017-07-01 04:35:59 +02:00
twinaphex e9f9702a2d (playlist.c) Don't expose struct details to outside 2017-07-01 03:38:36 +02:00
radius 0a7968761f improve logging 2017-06-30 20:05:30 -05:00
twinaphex b11620e1eb Add retro_timers.h/retro_math.h 2017-06-28 04:41:38 +02:00
twinaphex 6af5bd01bf Merge retro_stat and file_path 2017-06-16 15:00:11 +02:00
twinaphex 6c81007eb9 Should hopefully fix scanning of PS1 games 2017-06-07 11:12:11 +02:00
twinaphex c7b45aaf80 warning fix for C89_BUILD 2017-06-06 23:22:20 +02:00
twinaphex f5225a479e (task_database_cue.c) Use string_is_equal instead 2017-06-06 10:20:34 +02:00
twinaphex 3d54afdc1b Change to string_is_equal 2017-06-06 09:46:13 +02:00
twinaphex 6b638cae8b prevent uninitialized variable 2017-05-31 02:21:43 +02:00
Tatsuya79 1df9766491 Hide load message when saving state.
fix https://github.com/libretro/RetroArch/issues/4460
2017-05-30 14:07:04 +02:00
twinaphex 449483206f Revert "New attempt to fix memory leaks of struct retro_system_info"
This reverts commit a1d3dd69dd.
2017-05-30 01:44:49 +02:00
twinaphex a1d3dd69dd New attempt to fix memory leaks of struct retro_system_info
char variables
2017-05-29 22:24:10 +02:00
twinaphex dfae380f33 Backport patches -
- Attempt to skip cheevos when path is of media type
- Don't do CRC32 encoding for media types
2017-05-29 20:26:10 +02:00
twinaphex 9fa871ccf9 Buildfixes for consoles 2017-05-28 18:33:44 +02:00
twinaphex cf2f8f6489 Prevent passing NULL/empty strings to memcmp 2017-05-28 18:07:00 +02:00
twinaphex 3fbed8df27 (Menu) Menu driver no longer uses a duplicate system info
struct
2017-05-28 17:21:57 +02:00
twinaphex c74104f8c9 Get rid of RARCH_MENU_CTL_SYSTEM_INFO_* 2017-05-28 16:25:46 +02:00
radius f019b434ef resume game immediately if it was already underway 2017-05-27 20:21:44 -05:00
twinaphex 9438545bca Add music tab for non-ffmpeg enabled builds now; add 'Run'
and 'Add to mixer' options when selecting Ogg/WAV files
2017-05-27 23:56:10 +02:00
aliaspider bf7d19f401 skip loading a core when it is already active when starting a netplay
game.
2017-05-24 15:10:31 +01:00
radius a98c2c38c0 update copyrights 2017-05-23 19:55:47 -05:00
Twinaphex 50fc71a0a6 Merge pull request #4957 from fr500/fixes
[lobby] allow connecting without reloading content
2017-05-22 08:23:24 +02:00
aliaspider 634de19dc9 (WiiU) enable libretrodb. 2017-05-22 06:07:27 +01:00
radius bae2110bb4 cleanup conditionals 2017-05-21 23:43:12 -05:00
radius d1291f406b allow connecting without reloading content when content_get_crc matches with that of the current loaded game 2017-05-21 23:43:12 -05:00
aliaspider eede1a4978 no need to swap endianess here. 2017-05-22 05:26:13 +01:00
twinaphex 4333e3d5e7 Cleanups 2017-05-20 14:02:16 +02:00
twinaphex a87f3ae3cd Prevent explicit NULL pointer dereference warning 2017-05-19 18:54:40 +02:00
twinaphex c53bb90b75 Get rid of error_msg label 2017-05-18 08:04:24 +02:00
twinaphex 82d37d2036 Don't loop audio files by default 2017-05-18 07:27:41 +02:00
twinaphex 5343648dc9 Start creating state machien for audio mixer streams 2017-05-18 06:16:16 +02:00
twinaphex 312a2b5c80 Cleanups/try to prevent memory leaks with task_audio_mixer.c 2017-05-18 05:12:41 +02:00
twinaphex 668813cca9 (task_image.c) Refactor code 2017-05-18 01:31:14 +02:00
twinaphex 9a90477c6d Reimplement task_audio_mixer.c 2017-05-18 01:19:47 +02:00
twinaphex b3faed3906 Remove NBIO_STATUS_TRANSFER_PARSE_FREE to NBIO_STATUS_TRANSFER_FINISHED 2017-05-18 00:39:39 +02:00
twinaphex 4ad8d3c917 Remove NBIO_STATUS_POLL 2017-05-18 00:09:17 +02:00
twinaphex 80512800e1 (task_audio_mixer.c) Further work on task_audio_mixer.c 2017-05-17 14:13:02 +02:00
twinaphex 21341c5b3a Rework task_audio_mixer.c to use NBIO 2017-05-17 14:04:33 +02:00
radius 6e45af3858 look into the history playlist too 2017-05-17 02:08:17 -05:00
twinaphex 1bf0175da4 Try to prevent string message leaking in tasks 2017-05-16 04:50:20 +02:00
twinaphex 126a5bf121 Use string_is_equal_fast/string_is_not_equal_fast 2017-05-16 04:00:37 +02:00
twinaphex 8eca08c6ac Start using string_is_equal_fast/string_is_not_equal_fast macros
instead of straight memcmp
2017-05-16 03:20:59 +02:00
twinaphex 7e89335392 (task_wifi.c) Prevent memory leak for title 2017-05-16 02:52:30 +02:00
twinaphex 8e76c4a131 Prevent title memory leak 2017-05-16 02:48:54 +02:00
twinaphex 2f9eb86a59 Cleanup 2017-05-16 00:02:26 +02:00
twinaphex c21abd28f8 Implement audio_mixer_stopped differently 2017-05-15 23:15:22 +02:00
twinaphex b8cea125e4 Create stub function for looping sounds 2017-05-15 23:03:54 +02:00
twinaphex 69f9bc840d Remove unused variable 2017-05-15 19:16:40 +02:00
twinaphex 5fc5cb4962 Cleanups 2017-05-15 11:25:45 +02:00
twinaphex 67610b8263 Update task_audio_mixer.c 2017-05-15 11:07:12 +02:00
twinaphex 375b588847 Cleanups 2017-05-15 09:29:44 +02:00
twinaphex bf3188eac4 Combine runloop_ctl and rarch_ctl 2017-05-15 05:06:23 +02:00
twinaphex e2c7671e9f Create rarch_menu_running/rarch_menu_running_finished 2017-05-15 04:31:40 +02:00
twinaphex b9148c1d70 Cleanups 2017-05-15 02:50:14 +02:00
twinaphex 8bdcb2f123 Push callback to task_push_wifi_scan 2017-05-15 02:44:24 +02:00
twinaphex 56fb642119 Rewrite task_netplay_lan_scan.c - pass callback function to task 2017-05-15 02:09:26 +02:00
twinaphex c898ef1d6d Attempt to copy over audio mixer data 2017-05-15 01:28:46 +02:00
twinaphex 949a5c76fe Cleanup 2017-05-14 23:58:48 +02:00
twinaphex 3410d5c4e4 Cleanups 2017-05-14 23:36:30 +02:00
twinaphex 3afd2497d2 Add test 2017-05-14 23:27:03 +02:00
twinaphex b0746a4910 Update 2017-05-14 23:14:50 +02:00
twinaphex dd4146e302 Try to write initial implementation of audio mixer task 2017-05-14 23:12:27 +02:00
twinaphex b13ca2df97 (task_patch.c) Cleanup 2017-05-14 22:23:05 +02:00
twinaphex 80d9d1f143 Rewrite task_queue 2017-05-14 20:43:48 +02:00
twinaphex c6dd51da35 Cleanups 2017-05-14 20:25:13 +02:00
twinaphex 9e26332c48 Cleanups 2017-05-14 20:23:10 +02:00
twinaphex ed40b13ea0 (task_image.c) Cleanups 2017-05-14 17:32:07 +02:00
twinaphex f98473b9da (task_image.c) Cleanups 2017-05-14 08:09:21 +02:00
twinaphex a4ac0df389 (task_image.c) Cleanups 2017-05-14 08:06:40 +02:00
twinaphex 13d6827689 (task_image.c) Cleanups 2017-05-14 07:58:43 +02:00
twinaphex f70da4c2e2 Cleanups 2017-05-14 05:06:01 +02:00
twinaphex 2df6b201da Cleanup 2017-05-14 05:02:17 +02:00
twinaphex fe56e4ffea Grab from global pointer 2017-05-14 05:00:24 +02:00
twinaphex e6bcb64ced Add name_ips/name_bps/name_ups 2017-05-14 04:52:34 +02:00
twinaphex 70457e06d8 Cleanups 2017-05-14 04:50:57 +02:00
twinaphex e5ed82858f C89_BUILD buildfix 2017-05-14 03:24:59 +02:00
twinaphex def3343272 Add empty audio_mixer file 2017-05-14 02:03:40 +02:00
twinaphex 88dbbb284d Add ips_pref/bps_pref/ups_pref to content_information_ctx 2017-05-14 01:12:47 +02:00
twinaphex 88c04be7a4 Cleanups 2017-05-14 01:04:37 +02:00
twinaphex 7dfbfef995 Cleanups 2017-05-14 00:54:58 +02:00
twinaphex 71499abf1f (task_patch.c) Cleanups 2017-05-14 00:52:56 +02:00
twinaphex 6dd3a84bc9 Cleanup 2017-05-13 23:41:13 +02:00
twinaphex b75f242a7f Cleanups 2017-05-13 22:35:10 +02:00
twinaphex 484fff5e28 Cleanups 2017-05-13 22:30:45 +02:00
twinaphex bd7970b9b7 Cleanups 2017-05-13 22:28:19 +02:00
twinaphex 8ae708576f task_patch.c - cleanups 2017-05-13 22:21:57 +02:00
twinaphex b22d7902f1 Turn macro back into function 2017-05-13 19:37:16 +02:00
twinaphex 72fe4a1e3c CLeanups 2017-05-13 18:10:26 +02:00
twinaphex 72bd83b8d1 Cleanups to tasks_internal.h 2017-05-13 18:08:37 +02:00
twinaphex 541c6e6c41 (task_image.c) Cleanups 2017-05-13 08:06:52 +02:00
twinaphex 43dcc3d501 Add NBIO_TYPE_OGG/NBIO_TYPE_WAV 2017-05-13 08:03:00 +02:00
twinaphex 42ebe7a7ad Merge runloop.c and retroarch.c 2017-05-11 09:11:46 +02:00
twinaphex 2906bec7a8 Create input_driver_get_uint 2017-05-11 07:36:21 +02:00
radius 4af9a92f76 fix 3829 2017-05-09 22:10:46 -05:00
twinaphex 06f5f635ca Cleanups 2017-05-09 20:10:58 +02:00
twinaphex 476738cc5c Cleanups 2017-05-09 20:08:40 +02:00
twinaphex 739495027b Cleanups 2017-05-09 20:03:39 +02:00
twinaphex 7ed57ee77d (task_image) Cleanups 2017-05-09 20:01:42 +02:00
twinaphex da1ab24c57 Cleanups 2017-05-09 07:13:47 +02:00
twinaphex 5245590bae (audio_mixer.c) Prevent null pointer dereference 2017-05-08 05:55:20 +02:00
Twinaphex 12027bf1a8 Merge pull request #4889 from leiradel/master
Reverted cheevos changes in preparation for conversion to task; fixed 4884
2017-05-07 20:28:32 +02:00
Andre Leiradella 844d1475e6 Reverted cheevos changes in preparation for conversion to task; fixed 4884 2017-05-07 19:06:03 +01:00
twinaphex 924296c680 task_save.c - remove runloop.h header include 2017-05-07 17:53:53 +02:00
twinaphex 4d20460e6b Cleanup task_save.c 2017-05-07 17:52:48 +02:00
twinaphex 750d404e23 Rewrite autosave_init 2017-05-07 17:45:53 +02:00
twinaphex 03db246f88 Refactor cheevos_is_nes_game 2017-05-06 18:47:16 +02:00
twinaphex 637e8d76ab Create cheevos_is_nes_game 2017-05-06 18:43:45 +02:00
twinaphex 881b18a965 Cleanups 2017-05-06 17:23:19 +02:00
twinaphex 75c45c4f2b Try to avoid warning 2017-05-06 17:15:35 +02:00
twinaphex 88ca3e993c (task_cheevos.c) Use retro_miscellaneous' next_pow2 function 2017-05-06 17:03:53 +02:00
twinaphex de80671658 Simplify content_get_crc 2017-05-06 16:41:22 +02:00
twinaphex 46b1b113e0 Cheevos - buildfix 2017-05-06 06:48:32 +02:00
twinaphex 558cb64438 Don't grab settings pointer during task_overlay_handler 2017-05-06 06:08:24 +02:00
twinaphex 36375cecf8 input_swap_override - Get rid of dependency on settings 2017-05-06 06:01:15 +02:00
twinaphex 33f2fe8029 Move cheevos.c to tasks/task_cheevos.c and add TODO/FIXME note 2017-05-06 05:50:46 +02:00