Ecosyste.ms: OpenCollective

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

github.com/thpatch/thtk

Touhou Toolkit
https://github.com/thpatch/thtk

thecl: th18 formats

03f85fe49a55cf5f41d75542df56168e11b79f84 authored over 3 years ago by Egor <[email protected]>
thmsg: th18 formats

247b3cf8311272ed8df2d7fabe4436975020a89d authored over 3 years ago by Egor <[email protected]>
CheckStructPacking: don't use LINK_OPTIONS

It was introduced in cmake 3.14. Debian 10 (buster) has cmake 3.13.

This is why I'm an Arch user.

0cce80df802490989d1da68336afb2df13343293 authored over 3 years ago by Egor <[email protected]>
thmsg: add missing formats, fix format error not being shown

9da90a6b721490a425331b54f474ef26a0594639 authored almost 4 years ago by Priw8 <[email protected]>
thanm: display a message for old spec files

4dc7730715583416c8fe2df6d6bea76193261622 authored almost 4 years ago by Priw8 <[email protected]>
thdat: remove unused include

58729e2d44e7b6365f2d6f484abe651781efc115 authored almost 4 years ago by Gary Wang <[email protected]>
thanm: remove old format support

It's pointless to have it: one of the most used formats was changed because it was wrong, so the...

6d6a92d73aca35cee216f3fb41a0e4d54255ab43 authored almost 4 years ago by Priw8 <[email protected]>
thanm: add th18 ins_614 format

1325504cfd2762b79eaf2be0afb83c7da5de7b5c authored almost 4 years ago by Priw8 <[email protected]>
thanm: don't crash on unknown instructions

8a1e372d3eef8029add4fdb85c973ea52e982fad authored almost 4 years ago by Priw8 <[email protected]>
thecl: add th18 formats

0f8c8e03542b9d8c52572ede126caee24be6f574 authored almost 4 years ago by Priw8 <[email protected]>
INSTALL: specify bison version

per #67

16eb21fe6f57a5e7eccdb695dcfb83adc7798823 authored almost 4 years ago by Egor <[email protected]>
thanm: add operators and registers for non-v8

f34ea08547c49f3b3e077d53b04b3258fa7fa202 authored almost 4 years ago by Priw8 <[email protected]>
tentative th18 support

19915eb7efc973945b73c9375fde1e5091872ab8 authored almost 4 years ago by Egor <[email protected]>
util_scan_files: skip dot files on windows

simpler and consistent with the unix verison

74b12c3f3bbc0b0c92b211f7944d4e3e6c2c5c9a authored almost 4 years ago by Egor <[email protected]>
util_shortname: don't use strrchr in a MAX macro

90dc35ef8c8ec6f7c655ab94fc62480519dff492 authored almost 4 years ago by Egor <[email protected]>
parse_version: add vd and wbawc

992cf3f38f6f8ca4beb6953ca3751f1fd2d85512 authored almost 4 years ago by Egor <[email protected]>
util_scan_files: skip "." and ".." on Windows

This caused a crash when specifying a directory as an argument.

374aee6e37d6c925f002a2ae7f415f344a5a755b authored about 4 years ago by Thomas Brogan <[email protected]>
util_scan_files: fix leak on allocation error

6c0109bcf4753d25a51887ce84ac6659c3844e14 authored about 4 years ago by Egor <[email protected]>
util_scan_files: factor out realloc code

fbe3134da2da1b300178be842a2311a5792adef2 authored about 4 years ago by Egor <[email protected]>
Merge pull request #84 from thpatch/pending-thtk-14

thecl: remove `if expr`-style control statements

b7752113ecece7eae0d150419072de4d593f8f44 authored about 4 years ago by ManDude <[email protected]>
Merge branch 'master' into pending-thtk-14

8138c58a1c596582562fc6e0147a1b59044697a3 authored about 4 years ago by ManDude <[email protected]>
thecl: fix memory leak in #line

This directive is kinda bad now since you can't use it anywhere, only outside of subs; directive...

bafbdbbb5f272a31e159c154474db9d6dea22d22 authored about 4 years ago by Priw8 <[email protected]>
thecl: fix insdef

I have no idea how in the world this was supposed to ever work before

Also fixed a SR conflict,...

cc7fe020843815995430fde6c4d8441d566c3066 authored about 4 years ago by Priw8 <[email protected]>
thecl: update format of v8 ins_152

The args were always 0 in the ECL scripts so dumps looked fine, but the first 2 arguments are ac...

922800ba3c64d6ced2e89a271805496f93b475a1 authored about 4 years ago by Priw8 <[email protected]>
thanm: fix v0 label offset calculation

I'll probably end up rewriting some of actual compilation code to fix it in a better way later...

f0c9913addfd19d29b6664955fda97e8053cc049 authored over 4 years ago by Priw8 <[email protected]>
Merge pull request #83 from ExpHP/patch-2

fix ALL remaining anm signatures :D

b7321bb14c4623b41816cc81e23c316b13da4a1d authored over 4 years ago by Priw8 <[email protected]>
Fix anm v0 signatures

b30bbf0fb44e07c134f2cab4273342c133f6ceb8 authored over 4 years ago by Michael Lamparski <[email protected]>
fix anm v2 signatures

v2 is identical to v3 except that color is a single dword

87d4d2aa71fba54cce8d7ad03996dcfe1741b392 authored over 4 years ago by Michael Lamparski <[email protected]>
fix all anm v3 signatures

0c6d80574b8ebb573c5e0ed2a0b2a6bdd041f46a authored over 4 years ago by Michael Lamparski <[email protected]>
thanm: fix negative script id recompiling

Turns out that instructions don't refer to scripts by their ID, but by their index in the file, ...

2b2710b4cc3de9cab60b3b8684b27391a4e59f51 authored over 4 years ago by Priw8 <[email protected]>
Merge pull request #82 from ExpHP/patch-1

fix remaining signatures in v4 and v8 anm

7e80046bdc7a78c279fd6181cc4e9ee7dc9c74b2 authored over 4 years ago by Priw8 <[email protected]>
fix remaining signatures in v4 and v8 anm

Fixing all signatures to align with [my findings here](https://exphp.github.io/thpages/#anm/ins)...

29628ef0c006763fd25cc4d37087ae76e93f1672 authored over 4 years ago by Michael Lamparski <[email protected]>
thanm: fix variable dumping for 's' format

a2847315d06ea94ddd3d52fe265737744e0f31ed authored over 4 years ago by Priw8 <[email protected]>
thanm: print opcode name in instr_check_types errors

ce334f35e2a85b376d7ffae2056720396c9af9df authored over 4 years ago by Priw8 <[email protected]>
thanm: add 's' format support

1f1ad8834aa280e8d238442aeb38ab3cab6eb039 authored over 4 years ago by Priw8 <[email protected]>
thecl: allow uppercase X and B for hex and binary constant representation

15d27a8bc392ea0e9259d6b80ba9e6f9650988bf authored over 4 years ago by ManDude <[email protected]>
thanm: add more v8 formats

236101af331b0850f490f778650b26ac4867eb48 authored over 4 years ago by Priw8 <[email protected]>
thanm: add a few missing v8 formats

0e41e68fd2be2659271a0c4d2440098ce02ac52a authored over 4 years ago by Priw8 <[email protected]>
thanm: add compile-time expression evaluation

Also fixed an issue where a type mismatch would not get detected sometimes.

4ec42e289d2ecd33bcace333e6344486096d2c17 authored over 4 years ago by Priw8 <[email protected]>
thecl: print more detailed message on decompile format error

ec4afd325dc209f0725899f1bb8689691e3bc193 authored over 4 years ago by Priw8 <[email protected]>
thecl: add insdef to define instruction arguments & names in the same operation

Usage: `insdef ins_name(int arg1, float arg2, string arg3, ...) = ins_id`

04198589ade0ca74c198ef612f3b8fdca71df03a authored over 4 years ago by Nutzer <[email protected]>
Implement #line directive

9b8e368a5da41fb3f83af5639c1b930efe189dca authored over 4 years ago by Nutzer <[email protected]>
Fix typos in .editorconfig

no wonder this never worked

643a4cf390baafe3436792da20ad9f4cad3f149d authored over 4 years ago by Egor <[email protected]>
Lowercase include names

helps with case sensitive fs stuff

c783071666b7c77fcc19a68651c379708fe61333 authored over 4 years ago by Egor <[email protected]>
cmake: fix BaseTsd ssize_t detection

Was testing this on mingw, and apparently it indirectly includes
ssize_t from sys/types.h, so th...

2a7e44fd94673bde3cb2e777a71de00ea93bb271 authored over 4 years ago by Egor <[email protected]>
thstd: don't cast ptr to int

50d98ed5ede848fe9274cdf9265eee0c7070a5c7 authored over 4 years ago by Egor <[email protected]>
cmake: check pragma pack without running code

fixes annoying errors when cross-compiling

60ec98126095d9f267642230b2e55d6dbf5a65e4 authored over 4 years ago by Egor <[email protected]>
cmake: make a bunch of checks conditional

Also reorders config.h to match

5f88f5aa5fa0dbef2ec462072395389773763ba2 authored over 4 years ago by Egor <[email protected]>
cmake: simplify mmap detection

ca6ae7e1e0e600be67d237fdf291e985263e45e4 authored over 4 years ago by Egor <[email protected]>
Don't include unistd.h in util/file.c

Compiles just fine. Don't see where it's needed.

0c8eaeea643bab5233f9295d8d61238ad3fb79ac authored over 4 years ago by Egor <[email protected]>
cmake: simplify type checks

HAVE_STDINT_H isn't used anywhere.

35beee9acd6a5a4415a77b776617b3ae508b0425 authored over 4 years ago by Egor <[email protected]>
Fix win32 file_mmap leaking memory on read failure

and also error checking

aa07d66dd66ec6b9d0251247614f37b8959c8ed3 authored over 4 years ago by Egor <[email protected]>
cmake: simplify _unlocked detection

On Unix there are essentially 3 levels of support:
- bare POSIX (getc, putc, getchar, putchar)
-...

2977af651aaabe052f355e37733910036d8c0d73 authored over 4 years ago by Egor <[email protected]>
cmake: detect fstat instead of sys/stat.h

This seems more sane given that Windows might not declare it under
certain conditions. Funnily e...

fcf315a8f880d8a5defb57aa6454c129816dd8d6 authored over 4 years ago by Egor <[email protected]>
cmake: don't check for mempcpy and impl it as macro

8716672f296cb174936f59f9f191cd0911291e8a authored over 4 years ago by Egor <[email protected]>
Remove dependency on basename/_splitpath

fb47391e637f9424a071f26d9f1235cf5ef444c4 authored over 4 years ago by Egor <[email protected]>
Add checks for _unlocked and _nolock functions

1a56cb6bac550738b2c839a8fddf533998e33375 authored over 4 years ago by Egor <[email protected]>
Don't check for standard C library

we aren't autotools

1e59a0a285af1c72e76b359b2b0b61ca7a5ac2d0 authored over 4 years ago by Egor <[email protected]>
Use _WIN32, not _MSC_VER or WIN32

Improves support for mingw toolchains.

fixes #79

aa03bd0952f72c7376107d83092535badc42a08f authored over 4 years ago by Egor <[email protected]>
detect: use entry names to differentiate th01/th02

795978a511ac7da82123d0a92af06c6332bccc75 authored over 4 years ago by Egor <[email protected]>
detect: use entry names to differentiate th08/th095 formats

0e8513df28e071daa10783605ad84df7a4af0f79 authored over 4 years ago by Egor <[email protected]>
thdat: make -d work on multiple files at once

60e0a6c6dddca260c4958cca84b2407b4827bcd0 authored over 4 years ago by Egor <[email protected]>
thanm: fix the symbol file not being closed when using -o

To be fair using -s with old format doesn't make sense anyway, as it'll literally do nothing....

c56b625b4525f95452912019b2f92670767b4db3 authored over 4 years ago by Priw8 <[email protected]>
thanm: fix possible print_usage string confusion

The arguments printed here are the main program arguments, not specific option arguments, so put...

bd2339fbb5d2857f2028f6974381080d3de8c211 authored over 4 years ago by Priw8 <[email protected]>
thanm: allow exporting symbols to a file

Allows exporting script name-id pairs when creating an ANM, with an optional prefix (specified w...

edae10baa93e262ba5ff3b4665f4aa90edea2d49 authored over 4 years ago by Priw8 <[email protected]>
thecl: make expression_optimize take const state

as reported in #76

dba0c4bcca4596cbdcf8142e8ea4ae015d181dff authored over 4 years ago by Egor <[email protected]>
thecl: type safety for Cast_Target2 rule

as reported in #76

9ab2be872dcaedff5cf5fa9cd893031c73e775fe authored over 4 years ago by Egor <[email protected]>
thecl: fix conflicting delcartaions for labels_adjust

fixes #76

ab90e5ef0c0926c64036345eb370aa44fc2de4a4 authored over 4 years ago by Egor <[email protected]>
thanm: don't read files of entries with no data

1accd78f6b3aa713fccb0f1599dffa205646978c authored over 4 years ago by Priw8 <[email protected]>
thecl: fix #75

A very, very stupid bug.

5f39f8389a4c01cb71d8d613eef39bc89e4dcb18 authored almost 5 years ago by Priw8 <[email protected]>
thecl: fix inline sub instr deletion issues

The first bug was that the labels were not adjusted to account for instructions that weren't cop...

b8afb2db8b837ac94174d778b21ebfa401fda14d authored almost 5 years ago by Priw8 <[email protected]>
thecl: fix undefined behaviour in instr_copy

309eba5bfce5392337e13fec1c00ff9b64fbe613 authored almost 5 years ago by Priw8 <[email protected]>
thanm: fix crash when no operators are found

d754fbb0b27a03c06e9e62071df751b25a53cf48 authored almost 5 years ago by Priw8 <[email protected]>
thanm: use current version, not default version

54694ade96f2ccb621368e3cbbbe0b3888dc9139 authored almost 5 years ago by Priw8 <[email protected]>
thanm: variables and expressions

Still incomplete, but expressions for v8 should fully work (though some things like NEG are stil...

822e394116bdf37ffe24e665a7d3d3a2fbbf673e authored almost 5 years ago by Priw8 <[email protected]>
thanm: add #include directive

21c426c68062f505909d3a8592c495264863449f authored almost 5 years ago by Priw8 <[email protected]>
thecl/util: move path to util

Also made path independent from thecl, obviously. Moved because I want to use it in thanm.

10011ec2a07b37fc37f5edfc7b1794f4ca388118 authored almost 5 years ago by Priw8 <[email protected]>
thanm: add #anmmap directive

e2a041c4e92cab1bc563783fbdb8a93f00cb9207 authored almost 5 years ago by Priw8 <[email protected]>
thanm: change PropertyList syntax

d42f8e02ceb6a7107e9099394ec2d5c14f53815e authored almost 5 years ago by Priw8 <[email protected]>
thecl: fix th06 recompiling

And by that allow expressions in th06, as long as they are fully evaluated compile-time.

1e546c98028a9e3be175494659ba9d294c6b7118 authored almost 5 years ago by Priw8 <[email protected]>
thecl: don't crash when no expressions were found

33659f2db9c6b10c75e5925587a427e52298cdb9 authored almost 5 years ago by Priw8 <[email protected]>
thanm: add offsetof, scriptof and spriteof operators

f1b15879828f995a6d48b6eceb8bf3d2165e9b06 authored almost 5 years ago by Priw8 <[email protected]>
thanm: allow sprite/script names without quotes

This makes things more consistent, since the quotes are not required for labels. Dumped label na...

85ba4b099d5d4a0686b2b105fde3eb7ac3eeb622 authored almost 5 years ago by Priw8 <[email protected]>
thanm: add timeof(label) operator-like thing

b4882c2880996d825482f7b00e77493a50a4bb16 authored almost 5 years ago by Priw8 <[email protected]>
thecl: parse integers with strtoul

73ac3860b0518053e757c0988140401e7126caaa authored almost 5 years ago by Priw8 <[email protected]>
thecl: fix negative addresses (for real)

9831054918ea9caa9c5cf3f0d719fc7fc5c358f9 authored almost 5 years ago by Priw8 <[email protected]>
thecl: fix unary operators in some places

3d50cf904bcbd5e584fe900b6e7955997f9b9a70 authored almost 5 years ago by Priw8 <[email protected]>
thecl: fix typecasts

c78121b28852ffa020087b05d9f92ad9e2efedfc authored almost 5 years ago by Priw8 <[email protected]>
thecl: allow expressions for globaldefs...

...as long as the expressions get optimized to a single value, needed because of how unary opera...

49bcc12035b6b4c8119c2f47d6dd3427f9fecdd0 authored almost 5 years ago by Priw8 <[email protected]>
thecl: optimize unary expressions

ef3069ff47a6e43eb23b1b0dd66042f456b2ae07 authored almost 5 years ago by Priw8 <[email protected]>
Fix [-9999] not being a valid address type

3ddd7de9d12499569abba564d497f6c4c8e0fef1 authored almost 5 years ago by ManDude <[email protected]>
Fix memory leak when passing value expressions as params

5213bee04f226d9592e0022a0be89efd6502b64d authored almost 5 years ago by ManDude <[email protected]>
Optimize expressions WHEN THEY'RE CREATED, as it allows for more effective optimization techniques and checks(?)

Also gets rid of some redundant optimizations in the process.

Should fix pre-th10 instructions ...

afa15202c74b3d7018cc92ae2a1e2fdaa4772e4a authored almost 5 years ago by ManDude <[email protected]>
Proper unary operator support. Fixes #69

Adds one sr conflict (with Instructions + INTEGER i believe)

e885f4a691b05a805914b2f8a7dec85d26f7a3ba authored almost 5 years ago by ManDude <[email protected]>
thanm: error if there is no entry before a script

0918613bde591a6911774841068b5f95fca34f85 authored almost 5 years ago by Priw8 <[email protected]>
thanm: add global definitions

Also fixed variables given as identifiers.

19ab98a3a096430f9bbb2d681be714a792d14851 authored almost 5 years ago by Priw8 <[email protected]>
thanm: allow ommiting most entry properties

When writing custom ANMs, manually specifying things like THTXSize gets annoying quickly. Now ma...

d0acf2c7585854634b0ef76fcb57d61fdd4b239a authored almost 5 years ago by Priw8 <[email protected]>
thanm: dump hasData=0, default hasData to 1

c7177ee7a33fe206a2a78e948c6293409ba76d66 authored almost 5 years ago by Priw8 <[email protected]>
thanm: add #version directive

It allows specifying the default version for entries.

18f2c25658e9ec4b149223462fee86f3723c9899 authored almost 5 years ago by Priw8 <[email protected]>
thanm: make labels local to scripts

...and also warn on duplicate label declaration.

e0b426f58dd9de33e5ee67f878783862c4800aa9 authored almost 5 years ago by Priw8 <[email protected]>