forked from stenzek/duckstation
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
36 changed files
with
11,364 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# More info: http://EditorConfig.org | ||
root = true | ||
|
||
# * here means any file type | ||
[*] | ||
end_of_line = crlf | ||
insert_final_newline = true | ||
|
||
# latin1 is a type of ASCII, should work with mbcs | ||
[*.{h,cpp}] | ||
charset = latin1 | ||
indent_style = space | ||
indent_size = 2 | ||
trim_trailing_whitespace = true | ||
curly_bracket_next_line = false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
# Prerequisites | ||
*.d | ||
|
||
# Object files | ||
*.o | ||
*.ko | ||
*.obj | ||
*.elf | ||
|
||
# Linker output | ||
*.ilk | ||
*.map | ||
*.exp | ||
|
||
# Precompiled Headers | ||
*.gch | ||
*.pch | ||
|
||
# Libraries | ||
*.lib | ||
*.a | ||
*.la | ||
*.lo | ||
|
||
# Shared objects (inc. Windows DLLs) | ||
*.dll | ||
*.so | ||
*.so.* | ||
*.dylib | ||
|
||
# Executables | ||
*.exe | ||
*.out | ||
*.app | ||
*.i*86 | ||
*.x86_64 | ||
*.hex | ||
|
||
# Debug files | ||
*.dSYM/ | ||
*.su | ||
*.idb | ||
*.pdb | ||
|
||
# Kernel Module Compile Results | ||
*.mod* | ||
*.cmd | ||
.tmp_versions/ | ||
modules.order | ||
Module.symvers | ||
Mkfile.old | ||
dkms.conf | ||
|
||
# Visual Studio files | ||
Debug/ | ||
Release/ | ||
*.user | ||
.vs/ | ||
|
||
# Repository specific | ||
test/test | ||
test/galaga_nes.h | ||
test/smw_snes.h | ||
validator/validator | ||
.vscode/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,187 @@ | ||
# v10.0.0 | ||
|
||
* renamed `rhash.h` to eliminate conflict with system headers, renamed `rconsoles.h` and `rurl.h` for consistency | ||
* allow ranges in rich presence lookups | ||
* add RC_CONDITION_RESET_NEXT_IF | ||
* support MAXOF($) for leaderboard values using trigger syntax | ||
* allow RC_CONDITION_PAUSE_IF and RC_CONDITION_RESET_IF in leaderboard value expression | ||
* changed track parameter of rc_hash_cdreader_open_track_handler to support three virtual tracks: | ||
RC_HASH_CDTRACK_FIRST_DATA, RC_HASH_CDTRACK_LAST and RC_HASH_CDTRACK_LARGEST. | ||
* reset to default cd reader if NULL is passed to rc_hash_init_custom_cdreader | ||
* add hash support for RC_CONSOLE_DREAMCAST | ||
* ignore headers for RC_CONSOLE_PC_ENGINE | ||
* look for unique identifier in RC_CONSOLE_SEGA_CD and RC_CONSOLE_SATURN discs | ||
* rename RC_CONSOLE_MAGNAVOX_ODYSSEY -> RC_CONSOLE_MAGNAVOX_ODYSSEY2 | ||
* rename RC_CONSOLE_AMIGA_ST -> RC_CONSOLE_ATARI_ST | ||
* fix error identifying largest track when track has multiple bins | ||
* fix memory corruption error when cue track has more than 6 INDEXs | ||
* several improvements to data storage for conditions (rc_memref_t and rc_memref_value_t structures have been modified) | ||
|
||
# v9.2.0 | ||
|
||
* fix issue identifying some PC-FX titles where the boot code is not in the first data track | ||
* add enums and labels for RC_CONSOLE_MAGNAVOX_ODYSSEY, RC_CONSOLE_SUPER_CASSETTEVISION, RC_CONSOLE_NEO_GEO_CD, | ||
RC_CONSOLE_FAIRCHILD_CHANNEL_F, RC_CONSOLE_FM_TOWNS, RC_CONSOLE_ZX_SPECTRUM, RC_CONSOLE_GAME_AND_WATCH, | ||
RC_CONSOLE_NOKIA_NGAGE, RC_CONSOLE_NINTENDO_3DS | ||
|
||
# v9.1.0 | ||
|
||
* add hash support and memory map for RC_CONSOLE_MSX | ||
* add hash support and memory map for RC_CONSOLE_PCFX | ||
* include parent directory when hashing non-arcade titles in arcade mode | ||
* support absolute paths in m3u | ||
* make cue scanning case-insensitive | ||
* expand SRAM mapping for RC_CONSOLE_WONDERSWAN | ||
* fix display of measured value when another group has an unmeasured hit count | ||
* fix memory read error when hashing file with no extension | ||
* fix possible divide by zero when using RC_CONDITION_ADD_SOURCE/RC_CONDITION_SUB_SOURCE | ||
* fix classification of secondary RC_CONSOLE_SATURN memory region | ||
|
||
# v9.0.0 | ||
|
||
* new size: RC_MEMSIZE_BITCOUNT | ||
* new flag: RC_CONDITION_OR_NEXT | ||
* new flag: RC_CONDITION_TRIGGER | ||
* new flag: RC_CONDITION_MEASURED_IF | ||
* new operators: RC_OPERATOR_MULT / RC_OPERATOR_DIV | ||
* is_bcd removed from memref - now part of RC_MEMSIZE | ||
* add rc_runtime_t and associated functions | ||
* add rc_hash_ functions | ||
* add rc_error_str function | ||
* add game_hash parameter to rc_url_award_cheevo | ||
* remove hash parameter from rc_url_submit_lboard | ||
* add rc_url_ping function | ||
* add rc_console_ functions | ||
|
||
# v8.1.0 | ||
|
||
* new flag: RC_CONDITION_MEASURED | ||
* new flag: RC_CONDITION_ADD_ADDRESS | ||
* add rc_evaluate_trigger - extended version of rc_test_trigger with more granular return codes | ||
* make rc_evaluate_value return a signed int (was unsigned int) | ||
* new formats: RC_FORMAT_MINUTES and RC_FORMAT_SECONDS_AS_MINUTES | ||
* removed " Points" text from RC_FORMAT_SCORE format | ||
* removed RC_FORMAT_OTHER format. "OTHER" format now parses to RC_FORMAT_SCORE | ||
* bugfix: AddHits will now honor AndNext on previous condition | ||
|
||
# v8.0.1 | ||
|
||
* bugfix: prevent null reference exception if rich presence contains condition without display string | ||
* bugfix: 24-bit read from memory should only read 24-bits | ||
|
||
# v8.0.0 | ||
|
||
* support for prior operand type | ||
* support for AndNext condition flag | ||
* support for rich presence | ||
* bugfix: update delta/prior memory values while group is paused | ||
* bugfix: allow floating point number without leading 0 | ||
* bugfix: support empty alt groups | ||
|
||
# v7.1.1 | ||
|
||
* Address signed/unsigned mismatch warnings | ||
|
||
# v7.1.0 | ||
|
||
* Added the RC_DISABLE_LUA macro to compile rcheevos without Lua support | ||
|
||
# v7.0.2 | ||
|
||
* Make sure the code is C89-compliant | ||
* Use 32-bit types in Lua | ||
* Only evaluate Lua operands when the Lua state is not `NULL` | ||
|
||
# v7.0.1 | ||
|
||
* Fix the alignment of memory allocations | ||
|
||
# v7.0.0 | ||
|
||
* Removed **rjson** | ||
|
||
# v6.5.0 | ||
|
||
* Added a schema for errors returned by the server | ||
|
||
# v6.4.0 | ||
|
||
* Added an enumeration with the console identifiers used in RetroAchievements | ||
|
||
# v6.3.1 | ||
|
||
* Pass the peek function and the user data to the Lua functions used in operands. | ||
|
||
# v6.3.0 | ||
|
||
* Added **rurl**, an API to build URLs to access RetroAchievements web services. | ||
|
||
# v6.2.0 | ||
|
||
* Added **rjson**, an API to easily decode RetroAchievements JSON files into C structures. | ||
|
||
# v6.1.0 | ||
|
||
* Added support for 24-bit operands with the `'W'` prefix (`RC_OPERAND_24_BITS`) | ||
|
||
# v6.0.2 | ||
|
||
* Only define RC_ALIGNMENT if it has not been already defined | ||
|
||
# v6.0.1 | ||
|
||
* Use `sizeof(void*)` as a better default for `RC_ALIGNMENT` | ||
|
||
# v6.0.0 | ||
|
||
* Simplified API: separate functions to get the buffer size and to parse `memaddr` into the provided buffer | ||
* Fixed crash trying to call `rc_update_condition_pause` during a dry-run | ||
* The callers are now responsible to pass down a scratch buffer to avoid accesses to out-of-scope memory | ||
|
||
# v5.0.0 | ||
|
||
* Pre-compute if a condition has a pause condition in its group | ||
* Added a pre-computed flag that tells if the condition set has at least one pause condition | ||
* Removed the link to the previous condition in a condition set chain | ||
|
||
# v4.0.0 | ||
|
||
* Fixed `ret` not being properly initialized in `rc_parse_trigger` | ||
* Build the unit tests with optimizations and `-Wall` to help catch more issues | ||
* Added `extern "C"` around the inclusion of the Lua headers so that **rcheevos** can be compiled cleanly as C++ | ||
* Exposed `rc_parse_value` and `rc_evaluate_value` to be used with rich presence | ||
* Removed the `reset` and `dirty` flags from the external API | ||
|
||
# v3.2.0 | ||
|
||
* Added the ability to reset triggers and leaderboards | ||
* Add a function to parse a format string and return the format enum, and some unit tests for it | ||
|
||
# v3.1.0 | ||
|
||
* Added `rc_format_value` to the API | ||
|
||
# v3.0.1 | ||
|
||
* Fixed wrong 32-bit value on 64-bit platforms | ||
|
||
# v3.0.0 | ||
|
||
* Removed function rc_evaluate_value from the API | ||
|
||
# v2.0.0 | ||
|
||
* Removed leaderboard callbacks in favor of a simpler scheme | ||
|
||
# v1.1.2 | ||
|
||
* Fixed NULL pointer deference when there's an error during the parse | ||
|
||
# v1.1.1 | ||
|
||
* Removed unwanted garbage | ||
* Should be v1.0.1 :/ | ||
|
||
# v1.0.0 | ||
|
||
* First version |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
add_library(rcheevos | ||
include/rc_consoles.h | ||
include/rc_hash.h | ||
include/rc_url.h | ||
include/rcheevos.h | ||
src/rcheevos/alloc.c | ||
src/rcheevos/compat.c | ||
src/rcheevos/condition.c | ||
src/rcheevos/condset.c | ||
src/rcheevos/consoleinfo.c | ||
src/rcheevos/format.c | ||
src/rcheevos/lboard.c | ||
src/rcheevos/memref.c | ||
src/rcheevos/operand.c | ||
src/rcheevos/rc_compat.h | ||
src/rcheevos/rc_internal.h | ||
src/rcheevos/richpresence.c | ||
src/rcheevos/runtime.c | ||
src/rcheevos/runtime_progress.c | ||
src/rcheevos/trigger.c | ||
src/rcheevos/value.c | ||
src/rhash/cdreader.c | ||
src/rhash/hash.c | ||
src/rhash/md5.c | ||
src/rhash/md5.h | ||
src/rurl/url.c | ||
) | ||
|
||
target_include_directories(rcheevos PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include") | ||
target_include_directories(rcheevos INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/include") | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2018 RetroAchievements.org | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
Oops, something went wrong.