Posted by deevus 3 days ago
Technical approach: The tool hooks into build.zig, extracts dependency paths from Zig's cache, and generates a compile_flags.txt that clangd understands.
Currently supports -I flags only. Planning to add -D macros and -std flags based on feedback.
Happy to answer questions about implementation details.
Porting to build.zig can be a bit of work. It does have some capability to use cmake config, which can help make the process easier.
I ported wildmidi across and consumed their config (I think it was cmake). I have a PR open there:
- A thought: would you care to write up a tutorial documenting the details of your efforts so far, so us others can try our hand at this with that reference?
It would be awesome!
I have been less involved with the actual decomp in ROLLER specifically. Though I was part of one of the key decomp pieces which was demystifying the games binary storage format. That part alone took me a year of on and off work.
Once that was done, the rest of the process was much easier.
I suggest if you want to have a go yourself, you just need to start brute forcing it with IDA or Ghidra.
Additionally find out what compiler was used. If it was watcom, there is a great tool called wcdatool that may be of use to you.