Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/thpatch/thcrap

Touhou Community Reliant Automatic Patcher
https://github.com/thpatch/thcrap

General code style cleanup to follow contribution guidelines, minor bug fixes, attempted to increase clarity of comments and code

2070ae7ef40a66f1e24a7e41c34b8ce1e7490f13 authored over 3 years ago by zero318 <[email protected]>
Removed an include from a previous commit and fixed a typo.

45164dd962e1bf9951484cd13ae27b73c12beaa5 authored over 3 years ago by zero318 <[email protected]>
Lots of bugfixes and optimizations, particularly related to breakpoints.

64f67db786686c35602b36d679e37ceb8731ca1d authored over 3 years ago by zero318 <[email protected]>
Added exports for a few common functions.

33f2742ddc359a9fa2cff531eb009ebada2ebde9 authored over 3 years ago by zero318 <[email protected]>
Small bug fixes and general usability improvements. Small optimizations to codecave loading process.

37abe05f6f6b32b42da1ee2a4a44b4b45d107fc9 authored over 3 years ago by zero318 <[email protected]>
Allowed codecave exporting and further improved expression parsing.

Also some general cleanup of utility functions.

36ff92bd5d8eb9259478f6377cd6300650f38161 authored over 3 years ago by zero318 <[email protected]>
Update version number

f1baaf15aeeba7bb7abb45dec1419a3d5d20049e authored almost 4 years ago by brliron <[email protected]>
build: remove timestamping when signing.

Timestamping relies on an external server to provide a timestamp
dll. This means building thcrap...

56f65c477fc5f4ec3b7c1674561512484adea0c3 authored almost 4 years ago by brliron <[email protected]>
expressions:

Didn't mean to commit some of that. Too hasty on the buttons

3eecd00411f6c941d7ade44e3d5d498aab7d1499 authored almost 4 years ago by zero318 <[email protected]>
Revert "expressions:"

This reverts commit 97de8f434f968c07bc7e9e7c78ae6a2661928db8.

6b270e208f9ee4aafeef2c95e7f56cba4340b0da authored almost 4 years ago by zero318 <[email protected]>
expressions:

Commented the ugliest goto I've ever written

97de8f434f968c07bc7e9e7c78ae6a2661928db8 authored almost 4 years ago by zero318 <[email protected]>
patch.js:

Added a version field that can be tested in binhacks

d63c6816b7f3ae30e7fe9f7cb2dfa779eb721a83 authored almost 4 years ago by zero318 <[email protected]>
Contributing: add compiler and backward compatibility sections

f1f5655e9f02d7fff3cc3b906c2b21aa18e8f4af authored almost 4 years ago by brliron <[email protected]>
expressions: Rewrote and fixed almost everything

Expressions now support ternaries and operator associativity.

3da214ae1829889074a23d58fc20645f822f47db authored almost 4 years ago by zero318 <[email protected]>
Add a CONTRIBUTING.md document

This provides a set of guidelines for new contributors

a35e984fd65797b3a7d60a42a2b9094adc12a180 authored almost 4 years ago by brliron <[email protected]>
Import brlion's docs and setup rtfd.io

4f0a811aa3eea33583c0c966e6f85789d1bb2eda authored almost 4 years ago by Mokou <[email protected]>
Heavily reworked the expression parser (again) to make more things work, not use the return value as an error code, add CPUID testing, add {} as a dereference operator, commented a bunch of things, and generally made everything suck less.

1f5eab86f5bcab31e6ca4303d477d7579c954fe5 authored almost 4 years ago by zero318 <[email protected]>
thcrap_configure: replace CompareStringEx with CompareString

CompareStringEx is not available on Windows XP

180af194fbe207a771249d5232264f6be00248ad authored almost 4 years ago by brliron <[email protected]>
Added wildcard byte support in code strings and cleanup up text-based integers to use a more maintainable constexpr instead of a janky looking #define

ea2cb6e134e38db0e78a5932701c29fad274c746 authored almost 4 years ago by zero318 <[email protected]>
Cleaned up handling of expression casts

01665b4f7fff030215ffca32e4f5bf9d3d52f0df authored almost 4 years ago by zero318 <[email protected]>
Fixed most of the things that were broken with the previous implementation.

53327682ac5376ccf517558c8f12dab15a10fbce authored almost 4 years ago by zero318 <[email protected]>
First vaguely working version of the expression operator precedence rework

70804de587b875d4f838365bc0bbb412cd73cd9d authored almost 4 years ago by zero318 <[email protected]>
thcrap: support JSON5 syntax for JSON files

35ec3ed05ead875ac197da9e46b9ec9c3c309230 authored almost 4 years ago by brliron <[email protected]>
Updated the codecave access flags to only allocate valid flag combos.

6347a388613a9cbe072800bb6b72c1a5db527d29 authored almost 4 years ago by zero318 <[email protected]>
Attempted to unify expression support for binhacks/codecaves/breakpoints. Fixed a bug with binhack/codecave options causing relative pointers to be calculated incorrectly. Added json functions for evaluating fields.

730eaebbad0204b25896a417a05a29c613ce0498 authored almost 4 years ago by zero318 <[email protected]>
Fixed a bug with size calculation of new codecaves. Added support for expressions in binhack/codecave strings.

311cdedf044d75eb59c51049be6919c0e8b40d1f authored almost 4 years ago by zero318 <[email protected]>
Upgraded options to allow interpreting true/false as 1/0, upgraded the binhack/codecave ignore fields to parse expressions, upgraded the new codecave size/count fields to parse expressions, upgraded expressions to support option values.

706ca62ce9d49ef98ab5175566bcbdc3bad9cabc authored almost 4 years ago by zero318 <[email protected]>
Cleaned up the new codecave implementation

be6858fb033d58734e6b6ac651e805e0b0849bad authored almost 4 years ago by zero318 <[email protected]>
Greatly expanded codecave syntax to allow for setting RWE, sizes, and contents of codecaves.

5ba7a932c535431557dfd28065480ee21d0ce909 authored almost 4 years ago by zero318 <[email protected]>
Allow codecaves to be allocated to a specific integer size

8f787316585abfeae5b11979e691a392934b7209 authored almost 4 years ago by zero318 <[email protected]>
Allow breakpoints to work with codecaves in addition to DLL functions.

c4c026f5e7cfc0256b8d1cc82f6dc6553c4bffd9 authored almost 4 years ago by zero318 <[email protected]>
Added support for [0x00421B60] notation in binhacks/codecaves.

0aaa5b199830692f3c1e941071fca1024667a725 authored almost 4 years ago by zero318 <[email protected]>
Fixed overflow of large values in str_address_value. Implemented checking of all characters for hex values in str_address_value. Upgraded patch_opts_from_json to be case insensitive. Added support for 'u' options as an alias for 'i' to increase clarity.

5f3b853defdaafae96a8d4e6771b15e9d8d5bda7 authored almost 4 years ago by zero318 <[email protected]>
Update version number

3b8e8b0063b43a2910b3e6f12b4f8c7b38297abc authored almost 4 years ago by brliron <[email protected]>
thcrap_configure: fix patch selection on repos without servers

8c08e4575616ae23155d180fcdbf045c91ddd5ab authored almost 4 years ago by brliron <[email protected]>
thcrap_tasofro: fix potential buffer overflows

19f3cad5103629b252a52684a0f5ded570d02bfa authored almost 4 years ago by brliron <[email protected]>
Fix build error on MSVC

We already export this symbol in thcrap_tsa.def, no need to
re-export it here.

0870d4a5bf82919f6c737a7fcf7a2836ce26bf98 authored almost 4 years ago by brliron <[email protected]>
Build thcrap_tsa and thcrap_tasofro on gcc

With a fix for a bug in the cv0 patcher around \r\n which never
got noticed, and I noticed the c...

d2b5d5f9cd4fe24c2214171978677ce321827e77 authored almost 4 years ago by brliron <[email protected]>
configure: sort games in games.js

The games list is sorted 2 times, a 1st time before the user
chooses between different versions ...

9bab2446fc7c92ffcaceddddfd34b813e72a0cd2 authored almost 4 years ago by brliron <[email protected]>
Add unit tests for RepoDiscover

0f10ef9515b6a66774c9fedfeb816a7622cff475 authored almost 4 years ago by brliron <[email protected]>
Fix more errors and warnings on Visual Studio

2bb58807590dfa490741530a87835966c90d66e6 authored almost 4 years ago by brliron <[email protected]>
Fix build error on Visual Studio

83b895fd83d1524aab0526d0d7de18155cfc2d79 authored almost 4 years ago by brliron <[email protected]>
Fix more warnings.

Nothing severe like the infinite loop from last time. The most
important ones are checks between...

fb2a51e62ef484779a874439848d868e8de9b98a authored almost 4 years ago by brliron <[email protected]>
Fix some warnings on MinGW

- Some things about unused variables and parameters.

- Replacing __declspec(align(16)) with the...

7cbf7dc04c0d0e6618513b1064d7327f0d70c960 authored almost 4 years ago by brliron <[email protected]>
Fix export declarations

When building with MinGW-w64, you notice that Visual Studio let you
do a lot of things that shou...

df99529271d0bdf08833df3688cfd38ee00a013e authored almost 4 years ago by brliron <[email protected]>
gcc: Fix -fpermissive error

Just making explicit to the compiler that we want to use some
functions not as functions, but as...

c84b7af664b35ed9678e8ffdfefa040d86c8f4ba authored almost 4 years ago by brliron <[email protected]>
thcrap_configure: auto-detect vpatch

223d3ed3c54f75a501f53e1f09f3fb5528d3d6dd authored almost 4 years ago by brliron <[email protected]>
core: allow string values for int options

e08bc976ff490f6698a4d2b52d6540f6dae69ed2 authored almost 4 years ago by 32th System <[email protected]>
core: stop binhack_render if option name does not exist

716be4f79acd4e42200299d1efa9124f1630616b authored almost 4 years ago by 32th System <[email protected]>
core:correctly calculate binhack size with options

9bd6cb519924b4d3f24f5d4248ba9b1349be1474 authored almost 4 years ago by 32th System <[email protected]>
Update version number

ac361899705d9b1c34b65baed83c89ad4c6abdf5 authored almost 4 years ago by brliron <[email protected]>
Update version number

4b3a0451e95e1435ff46e43784e85f5fab5a0d81 authored almost 4 years ago by brliron <[email protected]>
update: ignore patches without servers

We can't update them because they don't have any servers, and it
was throwing an exception compl...

7c5efd741713b5df6d0de280c5dcdac8c0c7b5b9 authored almost 4 years ago by brliron <[email protected]>
Update version number

fd52cabf5e0cc1061ff7ecf3de92f3da65290a91 authored almost 4 years ago by brliron <[email protected]>
Fix dependencies

Every project including thcrap.props should depend on thcrap.dll,
because it adds some libraries...

2d4763d2e459d2aeadf1af813ebfc5d50e17d84e authored almost 4 years ago by brliron <[email protected]>
th175: normalize filenames in fileslist

The th135 games use backslashs, th175 use forward slashes, the
th135 hash function in thcrap sup...

451330b7dee3760885296817f2d703660a8341e0 authored almost 4 years ago by brliron <[email protected]>
options: minor improvements, and fix 2 build warnings

7aed89479e74ef2639f9c5f91822eac9bdc59d8a authored almost 4 years ago by brliron <[email protected]>
core: resolve user config in the right place

ab8e87e437c1c344125c869e7b425170eab5ca24 authored almost 4 years ago by 32th System <[email protected]>
Move dependency building to a VS project

You can only have one PostBuildEvent per project, adding another one
overrides the previous one....

e3a9bf0a5a1d334d57e0fe60fdd3e8edddcad014 authored almost 4 years ago by brliron <[email protected]>
Various fixes

2857cf38aac06c8e2eb3a6dd8a0808a0f68057ed authored almost 4 years ago by 32th System <[email protected]>
core: fix function offset being non 0 when...

the function reference doesn't contain an offset

328feb3211e5dfc28adf860f30fc6db815771d2c authored almost 4 years ago by 32th System <[email protected]>
core: add support for options

If in your thXX.js you say
"options": {
"some_option": {
"val": "0x0DFDFDFD",
"type": "i32"...

814be1b833189a2a8ae28460e956deefbd69d772 authored almost 4 years ago by 32th System <[email protected]>
TSA: fix memory leak for d4f75fe

4e306f985f957ad0d96f086ac1f7775b805f004e authored almost 4 years ago by 32th System <[email protected]>
TSA: fix #131

d4f75fe7230390056e5d72f621b51a96b86f7fa4 authored almost 4 years ago by 32th System <[email protected]>
core: add basic per patch configuration support

The option to define "options" will be made soon.

85594b59177b8af7979bdf0358f11e6774eb2a77 authored almost 4 years ago by 32th System <[email protected]>
core: allow codecase/plugin function offsets

Things like <codecave:something+10> is now valid. Note that the offsets
are always in hexadecimal

fb5a90de32e506ec3fea8c307e6ea80fada52849 authored almost 4 years ago by 32th System <[email protected]>
core: Make + signs in codecave names illegal

Anything else that a binhack can access with [] or <> will also have the
+ sign be an illegal ch...

aa9a387116e958ae38998ad033204718cfbcde16 authored almost 4 years ago by 32th System <[email protected]>
Update version number

75cdb9120211bcd0935253ae7fee537c371ca971 authored almost 4 years ago by brliron <[email protected]>
mempatch: fix crash on invalid memory regions

When VirtualProtect is called on a region for which the process
don't have access, the Protect f...

40bfa62a4da08350190ad18026792d4ec501da32 authored almost 4 years ago by brliron <[email protected]>
thcrap_tasofro: defer filenames writing to a background thread

The filenames usually arrive in bursts, so dumping the fileslist.js
for every new filename is qu...

f7b9b928e588dca72cc3d90814c7da9b9fd473a7 authored almost 4 years ago by brliron <[email protected]>
Update version number

356050db7b5c7f2adfcb2e12649a3a11c0b6a034 authored almost 4 years ago by brliron <[email protected]>
thcrap_tasofro: add th175 support

2da82cca059812c8a4af0209469fef7cef4b464c authored almost 4 years ago by brliron <[email protected]>
Merge branch 'master' of github.com:thpatch/thcrap

aaf9fd6f4414c3560515e48e51bb61e228bf8839 authored about 4 years ago by 32th System <[email protected]>
variable initialization

4611680138bcb5da3ac5c08b8c5b9d3c646ca835 authored about 4 years ago by 32th System <[email protected]>
Ignore a bunch of warnings in MinGW-w64

The -fpermissive flag is required in order to build (at least
for now), and ignoring all the oth...

b15e742150943ee12922a77dbcf3ba8c3ee0ed46 authored about 4 years ago by brliron <[email protected]>
Update version number

4bbf69d6784b379bd0f2b7e8d96633b365415d35 authored about 4 years ago by brliron <[email protected]>
Fix latest check when the latest list is empty

052acf26fc7de919606f93fdc17dad55c6af9f21 authored about 4 years ago by brliron <[email protected]>
Update version number

f88f249bae06f178b846ac1d26f07ceb97189f22 authored about 4 years ago by brliron <[email protected]>
Add runconfig_game_get null checks

Otherwise running something where thcrap can't detect a game ID (such as
vpatch.exe) will cause ...

03f0dfd222767ebee46b941704269a03abb8cfce authored about 4 years ago by 32th System <[email protected]>
Fix previous build

SIZE_T doesn't have the same type as size_t... Seriously?

e98b79a468b0687c77a737ba0be7c5e68ad10bae authored about 4 years ago by brliron <[email protected]>
Fix compilation errors when building in 64-bits

This doesn't mean that we support patching 64-bits games. This
only means that we can build some...

a2cbc2bf169d4877272c6bc8c8bd027877c0c918 authored about 4 years ago by brliron <[email protected]>
Add a Makefile for MinGW-w64

007f2ce566de04d5368cb5798b82f8913fd95e80 authored about 4 years ago by brliron <[email protected]>
Replace min and max by our MIN and MAX macros

MinGW-w64 doesn't have them, std::min and std::max need some help
when the 2 parameters don't ha...

4c43b6a68076d0d8d07483708bf6e25b4e98e032 authored about 4 years ago by brliron <[email protected]>
Fix release script

- Correctly update submodules
- Ignore debug dll files
- Add thcrap_test

81981e00f6978a5409dc6a8290968ebd337e499b authored about 4 years ago by brliron <[email protected]>
Update version number

00847f5122984277a2264f919fa51c29a7b7ef51 authored about 4 years ago by brliron <[email protected]>
patchhook: return NULL instead of an empty hooks list

Fixes the HM-style games dds=>png redirection, which is applied only
when we have no replacement...

897f8ae378ae59a8849599e579897a9ac48214fb authored about 4 years ago by brliron <[email protected]>
thcrap: mitigate a race condition in BP_fragmented_file_read

Fixes a crash in AoCF. What happened was that the game was trying
to read the same file from 2 t...

ba96ff81e68a3ef3224dc5e6e1fad9d1fa6e9dda authored about 4 years ago by brliron <[email protected]>
thcrap_configure: add the WS_EX_COMPOSITED style to the main window

This makes windows use double-buffering, which is supposed to remove
flicker. When I test, the U...

0abab464236d82d85bfddedba328c8341e5f0f6c authored about 4 years ago by brliron <[email protected]>
thcrap: tell jansson to use the malloc/free from our CRT

Some jansson functions require the caller to free() the result.
And, for some reason, jansson do...

7ae4cfe8823b35bf2dfe27e03db5c71714ace0c1 authored about 4 years ago by brliron <[email protected]>
Fix build

I forgot to include these 2 changes in my last commit...

5dfd05478c1079677dd6426b005a7843334ccd1f authored about 4 years ago by brliron <[email protected]>
Merge branch 'netcode_rework' of https://github.com/thpatch/thcrap into netcode_rework

cc3470559934fcc315305d094c7a074289272f98 authored about 4 years ago by brliron <[email protected]>
thcrap_update: don't download the same file from 2 sources in parallel

This seemed like a good idea at first - if a server is dead or
really slow, we go to the 2nd one...

1c94e13aaf4a00b4ed0e2e814055b1919f501b82 authored about 4 years ago by brliron <[email protected]>
Remove netcode directory

Everything have been moved to thcrap_update.

10dbd6fb0de0ed8af71c5012490202c9d9740ad6 authored about 4 years ago by brliron <[email protected]>
netcode: improve error reporting.

Before, we were reporting errors at the lowest layer. This layer
knows how the download failed, ...

c94a549af031c34e9d007c23299c701e445b6497 authored about 4 years ago by brliron <[email protected]>
Add a HttpHandle factory in ServerCache

This let us replace the HttpHandle that will be returned to the
callers of ServerCache - and I t...

85c68216baf2aba216b7289c9a5bcdfbdec3b8bb authored about 4 years ago by brliron <[email protected]>
Replace the HttpHandle instance with unique_ptrs

Instead of moving the HttpInstance around everywhere, we just move
their pointers. This has the ...

68fc25cf324980c4b7e85646318433001f91baa7 authored about 4 years ago by brliron <[email protected]>
thcrap_update: lock containers access behind a lock

futuresList had a theorical race condition where 2 threads could
call push_back at the same time...

5a322d572058c3619b403cd6a0d908e5022b529d authored about 4 years ago by brliron <[email protected]>
build: switch the pdb file format to DebugFull

This is required for Dr. Memory. This might be required or useful
for other tools? This won't br...

4e0e484a12e2edf6cad62665ee883ff88f64b867 authored about 4 years ago by brliron <[email protected]>
thcrap_update: integrate netcode rework

6b8383115ff5098c06aaa6c95fa1a6d4482cffb8 authored about 4 years ago by brliron <[email protected]>
thcrap_update: Remove ServerDownloadFile from exported functions

This function wasn't called outside of thcrap_update.

51a56a5779e3998920ce566e14d00c244e9bcb23 authored about 4 years ago by brliron <[email protected]>