Léo Lam
335a5a201a
tools: Update common
2022-03-13 19:32:43 +01:00
Léo Lam
d3902a9ad4
tools: Update common
2022-02-07 18:32:36 +01:00
Léo Lam
a3e72dd6f8
tools: Update common
2022-02-07 15:30:07 +01:00
Léo Lam
088739f111
tools: Update common
2022-02-07 01:37:43 +01:00
Léo Lam
50a51e6e06
tools: Update common
2022-01-16 01:11:50 +01:00
Léo Lam
988c00c545
Sync function list with IDB
2022-01-14 13:10:12 +01:00
Léo Lam
622feda5b7
tools: Update common
2022-01-12 22:37:37 +01:00
Léo Lam
0dd0c3e87f
Add placeholder function names from the IDB
2022-01-11 01:15:52 +01:00
Léo Lam
67ad8ea260
Add missing functions to the function CSV
...
Those had previously been missed.
2022-01-11 01:05:06 +01:00
Léo Lam
a859b356e6
Update tools
2022-01-06 12:13:14 +01:00
Léo Lam
0e1500b6f8
Update tools
2021-12-30 17:46:47 +01:00
Léo Lam
1ecd2959cb
Update tools
2021-12-30 16:45:20 +01:00
Léo Lam
b9fe9b4610
tools: Update common
2021-12-18 22:20:49 +01:00
Léo Lam
0e9c92dc03
tools: Update common
2021-12-11 22:24:11 +01:00
Léo Lam
328b2a9c23
tools: Update common (auto rediff after diff.py exits)
2021-12-03 00:00:53 +01:00
Léo Lam
49584efbf3
tools: Update common (auto-mangling, listsym)
2021-12-02 17:16:41 +01:00
Léo Lam
6f09be56cc
tools: Update common
2021-11-30 23:06:40 +01:00
Léo Lam
28515aceb5
ksys/act/AI: Take const ref for messages
2021-10-16 20:20:58 +02:00
Léo Lam
9b4af6eb00
ksys/act/AI: Rename AI handleMessage2_ and fix parameter type
2021-10-16 20:20:55 +02:00
Léo Lam
487de7a9a7
tools: Update common
2021-10-16 19:38:37 +02:00
Léo Lam
381d8922c1
tools: Update common
2021-10-16 16:20:29 +02:00
Léo Lam
953c1bfa3a
Update common tools
2021-09-14 16:59:16 +02:00
Léo Lam
c7d58ae78b
tools: Fix imports
2021-09-06 16:55:25 +02:00
Léo Lam
50d7f3b0c2
tools: Update common
2021-09-03 17:10:07 +02:00
Léo Lam
2e5ecb2352
Update tools
2021-08-22 13:27:11 +02:00
MonsterDruide1
0b50a1a5d2
tools: Add `create_build_dir` to custom `setup.py`
2021-08-21 00:59:26 +02:00
Léo Lam
34d36b4dfc
Update tools/common
2021-08-19 15:50:01 +02:00
Léo Lam
6635c517f5
tools/setup: Allow setup to be called without NSO for re-setting up tools
2021-08-12 15:06:10 +02:00
Léo Lam
b5df224222
tools/setup: Remove useless imports
2021-08-12 15:04:19 +02:00
Léo Lam
bd8915ab72
tools: Update common
2021-08-12 15:01:04 +02:00
Léo Lam
0352e590cc
tools: Update common
2021-08-11 02:10:50 +02:00
MonsterDruide1
aa4231eff2
tools/setup: Auto-install `check` (viking)
2021-08-10 22:11:04 +02:00
MonsterDruide1
18152c5909
tools: Migrate to external repo
2021-08-10 22:11:03 +02:00
Léo Lam
0f6a9d95b5
Remove old diff.py wrapper (superseded by botw-check) and update docs
2021-08-06 01:25:29 +02:00
Léo Lam
e37272f14a
tools: Add single function check mode
...
Similar to diff.py wrapper usage, except this will also automatically
update the function CSV with the actual match status.
2021-08-05 22:30:20 +02:00
Léo Lam
15f062a2fc
tools: Refactor "check all functions" into its own function
...
In preparation for adding a single function checking mode.
2021-08-05 22:30:19 +02:00
Léo Lam
d1032acc1c
tools: Remove dead code
2021-08-05 22:30:19 +02:00
Léo Lam
5367d0c85a
tools: Print a note when a U function actually exists and matches
...
Also fixes the function call check not being as strict as it should be
and fixes several false positives in the function list
2021-08-04 17:37:12 +02:00
Léo Lam
e3887d6835
tools: Add duplicate name checking
2021-08-04 17:28:50 +02:00
Léo Lam
8f8a48a1dc
tools: Do not overwrite function names with j_ names either
2021-08-02 15:53:59 +02:00
Léo Lam
e28ba16cc0
tools: Do not overwrite function names with nullsub_ and sub_
2021-08-02 15:49:33 +02:00
AlexApps99
3c0648e51f
Added support for WIP function status
...
This brings functionality up to what diff.py uses
2021-08-01 14:19:29 +12:00
Léo Lam
f571280fee
Merge pull request #52 from AlexApps99/master
...
Ghidra function import script
2021-07-31 12:57:22 +02:00
Léo Lam
80bf9236a3
Remove old tools/check.py
...
RIP check.py 2020-2021
2021-07-31 12:42:14 +02:00
AlexApps99
ca31637da0
Ghidra function import script
...
Added .gitignore for Ghidra
2021-07-31 22:41:26 +12:00
Léo Lam
6e30bbea32
tools: Add a new, optimized check tool
...
Reimplements tools/check.py in a faster language (picked Rust to learn
and play with the language and because installing dependencies is way
easier than with C++)
On my machine, a full run takes ~160ms with this new implementation
and 49s (!) with check.py.
The main performance improvements come from not having to use
pyelftools and the Python bindings of Capstone (which are both insanely
slow and perhaps less efficient than they could be). Function checking
is now also performed in parallel rather than sequentially for yet
another significant performance boost.
Other tweaks include editing Capstone and the bindings to avoid
computing expensive things that we don't actually need and avoiding
dynamic memory allocations in hot paths as much as possible.
check.py will be removed after the setup instructions are updated.
2021-07-30 23:52:55 +02:00
Léo Lam
2204f46b0b
Remove expected/
...
The intention was to catch functional regressions in non-matching
functions but this doesn't actually work well because referenced
code and data may have moved after a function was dumped, in which
case the reference checker is unable to verify that function calls
and data references are still correct.
Considering this increases the amount of complexity in the checker
and makes the workflow more complicated for contributors, let's just
drop this mechanism. It isn't worth it.
Putting binary files in the repo is also pretty meh.
2021-07-30 20:06:14 +02:00
AlexApps99
3c336794a4
CSV formatting improvements
2021-07-27 12:44:10 +12:00
Léo Lam
206d7781e5
tools: Use bundled copy of objdump to simplify setup
2021-07-23 18:05:23 +02:00
Léo Lam
3fc83fd051
Streamline project setup by automating NSO conversion (if needed)
2021-07-23 12:40:49 +02:00