Commit Graph

360 Commits

Author SHA1 Message Date
Jamiras
299a471af2 allow rcheevos_patch_address to be called on game without achievements 2021-04-14 08:20:20 -06:00
twinaphex
01944dd80e Put this big char array on heap for safety reasons 2021-03-30 01:19:50 +02:00
Jamiras
ed18ed48ac prevent double free 2021-03-18 08:50:45 -06:00
twinaphex
90a1590f4c rcheevos_hardcore_active only has to be used outside of file cheevos.c 2021-03-07 18:29:25 +01:00
twinaphex
bbabbd1373 (Cheevos) Stylistic changes; try to fit text within 80-char limit,
remove brackets around conditionals that exist out of one line, etc.
2021-03-07 18:25:17 +01:00
twinaphex
e3b810e974 Cleanup 2021-03-07 02:07:37 +01:00
twinaphex
a80e563d1f (cheevos) Cut down on calls to gfx_widgets_ready 2021-03-07 02:01:31 +01:00
Jamiras
1b81620d64 ensure rewint is only initialized/deinitialized on main thread 2021-03-05 22:22:31 -07:00
Jamiras
da71ed8e3b only validate memrefs once 2021-02-24 15:47:22 -07:00
Jamiras
6612c38070 also call REWIND_DEINIT on main thread 2021-02-18 18:41:25 -07:00
Jamiras
2d841715cb include achievement runtime state in save states 2021-02-17 19:44:39 -07:00
Jamiras
88fe6e82ca don't invalidate out-of-range addresses 2021-02-07 20:08:54 -07:00
twinaphex
5187957b3d Silence some implicit conversion warnings 2021-02-03 12:34:10 +01:00
twinaphex
4df6d287e3 (Clang) Silence 'n' is never used warnings 2021-02-03 11:48:33 +01:00
twinaphex
097cb1bd5b (Cheevos) Fix long-standing warning 2021-02-03 10:32:56 +01:00
Jamiras
015576b2ba
improve error handling for achievement unlocks (#11916) 2021-01-21 04:07:48 +01:00
twinaphex
0e929784b5 Cleanups 2021-01-16 21:19:59 +01:00
Jamiras
75fad11c27 prevent hardcore toggle when emu-handled cheats are active 2021-01-11 20:38:43 -07:00
twinaphex
357b7d68f6 (libretro-common) Rename rhash to lrc_hash
(rcheevos) Rename rhash to rc_hash
2020-12-28 19:55:54 +01:00
Jamiras
5224e97481 add confirmation submenu to achievements hardcore toggle 2020-12-26 14:15:01 -07:00
Jamiras
8ed0fcb5ce show unsupported core message when viewing achievement list for unsupported core 2020-11-16 21:38:02 -07:00
Jamiras
f51e372477 differentiate between no achievements for a set and not being logged in 2020-11-09 20:18:31 -07:00
twinaphex
762275b794 Buildfix 2020-11-07 03:42:54 +01:00
twinaphex
5c87abe639 Buildfix cheevos 2020-11-04 03:37:42 +01:00
Jamiras
2291590d12 allow CSV of valid options 2020-10-20 20:58:34 -06:00
Jamiras
f58130bb64 disable achievement hardcore mode when certain core options are enabled 2020-10-20 10:37:05 -06:00
Jamiras
02ddbc41cc allow disabling leaderboard notifications and trackers separately 2020-09-25 19:28:56 -06:00
Jamiras
71cd400e56 add display widget for active leaderboards 2020-09-24 11:29:29 -06:00
Twinaphex
b59c5f6ff9 Cleanup - remove unused variable 2020-09-22 04:52:31 +02:00
Jamiras
b74c5d290c restore ability to disable unofficial achievements and leaderboards 2020-09-21 17:48:14 -06:00
Twinaphex
3b24bb21e5 Remove unused variables 2020-09-15 19:38:07 +02:00
Jamiras
0d6f0e4826 let rc_runtime_t manage triggers 2020-09-14 07:51:52 -06:00
twinaphex
17cf1ae58f Dehardcode some strings 2020-09-01 21:51:11 +02:00
twinaphex
1c25fbded5 (rcheevos) Cleanups 2020-08-23 21:07:15 +02:00
twinaphex
c10d1922ed (rcheevos) Try to use safe versions of strcpy/sprintf where possible 2020-08-23 15:15:34 +02:00
twinaphex
b965bb5c48 (rcheevos) Alignment improvements according to CODING-GUIDELINES
document
2020-08-23 15:10:20 +02:00
Jamiras
2f69d2d4ed eliminate exposed variables for tracking hardcore 2020-08-22 12:18:12 -06:00
Jamiras
2a5516b1b9 ensure cheevos badge textures are released before video driver is deinitialized 2020-08-12 21:55:12 -06:00
Jamiras
1f350be1f8 rename memory.c and parser.c to be less generic; eliminate hash.c 2020-08-12 08:16:06 -06:00
Jamiras
b15411dad8 generic memory mapping using rcheevos 2020-08-11 09:26:04 -06:00
Jamiras
96c5f5dfb0 add option to play custom sound on achievement unlock 2020-07-11 10:56:09 -06:00
Jamiras
a2cfc881a4 allow submission of 0 for leaderboard values 2020-07-04 07:20:51 -06:00
twinaphex
7862166ed2 Add back HAVE_SCREENSHOTS define from SSNES days 2020-07-01 17:47:13 +02:00
jdgleaver
0fcfb3deda Refactor playlist struct configuration 2020-06-26 15:40:19 +01:00
twinaphex
601a73fa8b Use string_starts_with_size where possible - avoids the strlen 2020-06-25 12:51:04 +02:00
Jamiras
e85b318038 display 'Unlocked' in hardcore mode for achievements earned in non-hardcore mode 2020-06-23 08:59:43 -06:00
Jamiras
527e9faa1f hash buffered data when available 2020-06-21 09:39:42 -06:00
Jamiras
20380a8042 correctly report unlocked non-hardcore achievements when hardcore is paused 2020-06-15 07:06:12 -06:00
Twinaphex
80dd4548e1 Remove unused variables 2020-06-08 13:39:18 +02:00
Jamiras
7d488aa200 use rcheevos for identifying games 2020-06-07 17:13:50 -06:00
twinaphex
cb90fdb802 (Cheevos) Cleanups 2020-06-07 21:48:36 +02:00
twinaphex
2baa3be2da Cleanups 2020-06-07 21:18:07 +02:00
twinaphex
543e4bca16 Merge Discord code into retroarch.c 2020-06-06 20:50:25 +02:00
Autechre
2cec960ada
Merge pull request #10774 from Jamiras/cheevos_report_err
report API errors when unlocking achievements or submitting leaderboards
2020-06-05 12:50:12 +02:00
Jamiras
6e5b786329 report API errors when unlocking achievements or submitting leaderboards 2020-06-02 22:03:35 -06:00
jdgleaver
eb429f9211 (Cheevos) When parsing M3U files, only capture the first entry 2020-05-30 12:16:52 +01:00
jdgleaver
21ad64ab77 (Cheevos) Use 'm3u_file.h' library when parsing M3U files 2020-05-29 17:44:31 +01:00
twinaphex
6dc758a080 Move cheevos-new to cheevos/ 2020-05-21 23:23:01 +02:00
meleu
98ba2d8cb9 remove old cheevos files 2019-05-29 16:32:36 -03:00
twinaphex
020b714113 Refactor task_screenshot.c 2019-05-22 05:54:35 +02:00
radius
eef4ada025 fix #8725 again including:
- allow savestates on hardcore
- fix weird conditions happening due to having two implementations
- fix popup saying state was loaded when starting a game with achievements hardcore after a game with no achievements
- fix rewind not working when loading games with no achievements after loading games with achievements hardcore
2019-05-21 03:32:49 +02:00
twinaphex
f17655f073 Revert "attempt to fix issue described in #8725"
This reverts commit 90b0afdaa7.
2019-05-21 03:32:18 +02:00
twinaphex
90b0afdaa7 attempt to fix issue described in #8725 2019-05-21 03:10:06 +02:00
radius
f393898825 cheevos, fix issue described in https://github.com/libretro/RetroArch/issues/8725#issuecomment-493130218 2019-05-19 00:37:48 +02:00
Twinaphex
2ed4fbf2f7
Merge pull request #8691 from meleu/patch-5
use new cheevos implementation as default
2019-05-04 15:55:22 +02:00
meleu
b85cd1f1ab use new cheevos implementation as default 2019-05-04 10:27:36 -03:00
natinusala
636f2ddb28 menu_widgets: implement the user setting 2019-05-03 21:25:20 +02:00
meleu
c2364096f3
Merge branch 'master' into runtime_rcheevos_switch 2019-04-19 21:50:00 -03:00
natinusala
f941d4e625 menu widgets: add first achievement notification widget 2019-04-11 16:46:41 +02:00
meleu
d444044fde decrease log massive verbosity when leaderboard is active 2019-03-19 21:19:08 -03:00
meleu
846ca5fd3b cheevos: cancel lboards on reset 2019-02-09 23:12:06 -02:00
twinaphex
386657a366 (menu widgets backport) Re-commit task queue changes 2019-02-08 08:00:32 +01:00
twinaphex
894f3b7aef Change function signature back 2019-02-08 07:29:50 +01:00
twinaphex
7022786f34 Revert parts of menu_widgets that were causing breakage, but leave
all the hooks in so we can add them back piece by piece again
2019-02-08 07:26:43 +01:00
natinusala
c20ab3864d First version of menu widgets (gl only) 2019-02-06 20:48:24 +01:00
twinaphex
845b30131f Cleanups 2019-02-04 23:17:39 +01:00
Raphaël Zumer
b1de875551 Define lynx_header_len at the function head 2019-01-15 12:19:25 -05:00
Raphaël Zumer
cdbfec7348 Make SNES_HEADER_LEN snake case 2019-01-15 12:18:58 -05:00
Raphaël Zumer
4260f9ffbc Hash full Lynx file content 2019-01-15 12:12:13 -05:00
twinaphex
0f8cf1a579 C89 buildfix 2019-01-12 18:15:49 +01:00
Twinaphex
cdcadf6237
Merge pull request #7769 from rzumer/patch-2
Update NES and SNES hashing methods
2019-01-10 15:14: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
Raphaël Zumer
5cef12160a Ignore trainer data for NES hashing 2019-01-03 21:14:29 -05:00
Raphaël Zumer
0ebf5a2563 Fall back to GENERIC_MD5 for headerless SNES 2019-01-02 10:16:13 -05:00
meleu
2a9f6d9d40 SNES hashing, just ignore header if it has one 2019-01-02 09:48:55 -05:00
Raphaël Zumer
dc45fbada6 Include VROM in cheevos NES hash 2019-01-01 21:02:28 -05:00
radius
0a6df1743c [netplay] print upnp failed messages
[cheevos] fix warning
2019-01-01 11:22:58 -05:00
twinaphex
136a9db13f Silence warning - variable too small 2018-11-26 12:14:13 +01:00
natinusala
bca0669833 ozone: fix cheevos badges, convert cheevos.c to LF 2018-11-19 10:23:55 +01:00
natinusala
158ddc0b2a New menu driver : ozone (Nintendo Switch lookalike) 2018-10-26 13:24:32 +02:00
twinaphex
ac14ea6d01 Go back to old cheevos 2018-10-01 15:02:51 +02:00
twinaphex
4c23fa02e9 (MSVC 2013) Fix build for rcheevos
(MSVC) Fix some warnings; unused variables, etc.
2018-09-30 13:38:58 +02:00
Twinaphex
c4d0cdc7ea Get rid of some unused variables 2018-09-29 21:19:06 +02:00
Andre Leiradella
d67aa83f48 Merge branch 'master' into integrate_rcheevos 2018-09-27 21:48:34 +01:00
Andre Leiradella
ad992d227b Guard against null settings; only test leaderboards if enabled 2018-09-26 23:03:31 +01:00
radius
a0339e95ec Reset the flag on reset 2018-09-22 21:27:19 -05:00
radius
c4d678a1ce reset the flag on Resume 2018-09-22 11:43:41 -05:00
radius
c07744564a prevent retroachievements cheating exploit
Revert "prevent retroachievements cheating exploit" and reimplement it in a better way

This reverts commit d323338caa4882925d184f5ee7a506bfa8c78c1e.
2018-09-22 11:43:34 -05:00
twinaphex
e403b8fb1e C89 buildfixes 2018-09-10 20:35:30 +02:00
Raphaël Zumer
3a0c450e70 Support headerless NES hashing in cheevos.c 2018-09-10 00:15:52 -04:00
Andre Leiradella
377d256ce9 Properly initialize cheevos_locals 2018-09-03 22:51:07 +01:00
Andre Leiradella
4c01697d3f Use the correct console id 2018-09-03 19:17:03 +01:00
Andre Leiradella
2d7c4b4f9d Use CHEEVOS_TAG 2018-09-02 15:11:33 +01:00
Andre Leiradella
0f6cdde65b Fixed indentation 2018-09-02 15:00:42 +01:00
Andre Leiradella
ae5ff31b45 Fixed screenshot code after merge 2018-09-02 14:56:12 +01:00
Andre Leiradella
613a3e8479 Integrated rcheevos 2018-09-02 14:23:37 +01:00
Brad Parker
b0146abd11 add fullpath and use_thread parameters to take_screenshot() 2018-08-18 23:08:55 -04:00
twinaphex
02eb650273 We should use strlcpy instead of strncpy 2018-08-13 03:07:12 -07:00
twinaphex
9d6de6b60d Buildfix for MSVC 2010 2018-06-25 19:49:41 +02:00
meleu
536638eaf6 support for ResetIf/PauseIf HitCount 2018-06-23 17:25:16 -03:00
meleu
0ffe0f8513
fix crash when scrolling cheevos list. fixes #6732 2018-06-04 10:07:18 -03:00
radius
b25a2b49c4 move pause entry to achievements menu 2018-05-13 14:26:38 -05:00
radius
f3c29b43eb disable cheevos_hardcore_paused on contant load 2018-05-13 13:40:30 -05:00
radius
aa86d78183 add quick menu action to pause / resume hardcore mode for current session 2018-05-13 13:40:30 -05:00
radius
7216726664 add cheevos_hardcore_active, cleanup whitespaces 2018-05-13 13:40:29 -05:00
twinaphex
4f549bc55c (cheevos) Silence PS3 warnings
(PS3) Add HAVE_DR_MP3
2018-05-07 17:45:43 +02:00
Andre Leiradella
f04548a95d Fixed warning about unused STUB_LOG; removed unused debug functions 2018-04-25 18:02:31 +01:00
Andre Leiradella
029ba3d2f6 Mute cheevos logging, define CHEEVOS_VERBOSE in cheevos.h to enable 2018-04-25 17:56:15 +01:00
twinaphex
9a7ca5fe57 C89 buildfix 2018-04-25 12:02:35 +02:00
Celerizer
212d7bfbe1 [Cheevos] Store only login token, not password 2018-04-25 10:42:50 +02:00
twinaphex
6761ec471d Silence some Coverity warnings 2018-04-12 21:39:31 +02:00
Twinaphex
08a54e45f2 Get rid of a lot of implicit conversions 2018-04-09 15:56:45 +02:00
radius
94e4357fd4 return early in case path is null and move vars to the top 2018-03-24 19:11:07 -05:00
radius
51c9ac4f7a fix crash related to achievements on non-fullpath cores 2018-03-24 17:52:23 -05:00
meleu
d2d8f00b29
cheevos.c: getting the hash from ROM's filename
This is the method we'll use for arcade games.
2018-03-21 11:21:33 -03:00
twinaphex
72dc03a1c6 Try to fix Coverity warnings 2018-03-19 06:58:36 +01:00
radius
c52fdc469f remove task_push_http_transfer_raw, encode before sending data to the task 2018-03-16 22:38:21 -05:00
meleu
eb5a69ded3 fixing cheevos (broken after #6389) 2018-03-16 01:03:57 -03:00
meleu
6346f18133 added cheevos_auto_screenshot 2018-03-14 22:41:51 -03:00
GameDragon2k
44d3561468 Reset Add buffer when hit condition is triggered 2018-02-15 14:30:46 -05:00
GameDragon2k
468256a8f8 Reset hits after evaluation. 2018-02-13 21:56:04 -05:00
GameDragon2k
79219c1640 Fix issue regarding Add Hits condition type 2018-02-13 21:43:41 -05:00
Brad Parker
039da3bb83 C89 buildfix 2018-02-06 22:17:32 -05:00
twinaphex
3d0e768e71 Silence some Coverity errors 2018-02-04 19:30:34 +01:00
leiradel
8b5e7c45d0 Fixed empty menu when there are no cheevos 2018-02-04 15:32:17 +00:00
leiradel
dda52a1eed Fixed unable to use savestates when the game has no cheevos and an associated freeze 2018-02-01 21:54:11 +00:00
leiradel
9c695765dd Fixed crash when a content is loaded before the cheevos task for the previous content was finished 2018-01-31 21:10:08 +00:00
leiradel
8147e6f31c Remove cheevos stuff from coro.h; add macros to increase readability 2018-01-30 17:47:20 +00:00
leiradel
e54da03ddc Fixed crash when the content is closed and the cheevos are still being loaded 2018-01-20 14:35:25 +00:00
twinaphex
58e87387d5 Try to prevent more null pointer dereferences; more general cleanups 2018-01-19 19:15:05 +01:00
twinaphex
f03180c31a Cleanups - do some early returns in case we get a NULL pointer
dereference
2018-01-19 18:42:50 +01:00
twinaphex
92a18e411c (cheevos) Get rid of a lot of macros - make it more understandable 2018-01-19 18:25:54 +01:00
twinaphex
4f16ff8c2e Remove macros CORO_LEAVE/CORO_ENTER/CORO_SUB 2018-01-19 16:54:44 +01:00
twinaphex
bd883ad4d5 (cheevos) Get rid of some of these macros 2018-01-19 16:45:53 +01:00
leiradel
ba661a3af4 Fixed HTTP request for cheevos; fixed handling invalid cheevos 2018-01-03 21:34:52 +00:00
celerizer
a2ab7defa9
Fix unofficial achievements not being loaded
RetroArch is currently returning only achievements with flag 3 from the site, regardless of whether "Test Unofficial" is on or not. This change makes RetroArch return every achievement from the site when this the option is on or only those marked with Flag 3 (core cheevos) when off.
2017-12-28 17:48:58 -06: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
c4d8a8c800 Free after intfstream_close 2017-12-11 20:24:00 +01:00
twinaphex
e62e9233d7 Add intfstream_get_size 2017-12-11 13:21:44 +01:00
twinaphex
61d3f90cae Add hint defines to libretro.h 2017-12-11 12:53:47 +01:00