Commit Graph

20 Commits

Author SHA1 Message Date
Elliot Nunn 96730fe65d Add PowerMgrPlugin dispatch tables 2019-10-20 11:59:32 +08:00
Elliot Nunn bd8aae00d1 Dump specialised dispatch tables, starting with ATA 2019-10-20 09:44:22 +08:00
Elliot Nunn 57772c6ed3 Support multiple USB driver per frag 2019-10-20 07:54:39 +08:00
Elliot Nunn 773ed467e1 Print nonsense Mac versions as hex 2019-10-20 07:53:22 +08:00
Elliot Nunn e8a3012b41 TOC guesser: use reloc opcodes to ID real TVecs
Reloc table opcodes are used to filter out coincidental TVector-like
things.

This problem was identified while trying to debug all the XTOC glue that
didn't make sense. We also ignore this glue.
2019-10-18 14:23:41 +08:00
Elliot Nunn cf5af0f5f1 Fix another relocation bug
This time I was swapping the meaning of the RelocBySectC/D opcodes. This wasn't terribly bad, because they were rarely used. I identified the bug while figuring out how to handle the rare fragment that uses XTOC glue to access its own guts in a patchable manner.
2019-10-18 13:21:28 +08:00
Elliot Nunn d70ad36327 Survive n(loader sections) != 1 2019-10-18 12:33:07 +08:00
Elliot Nunn 752f92604a Fix relocation for some fragments
RelocSmRepeat/RelocLgRepeat opcodes were repeating the *next* opcode, not the
*previous* opcode. This completely wrecked the relocation parsing for a small
number of fragments. I left in the debug improvements I made while debugging.
2019-10-18 12:29:16 +08:00
Elliot Nunn 3942fc27c4 Cfmtool to write only changed files
Mostly to spare my iCloud Drive! XD
2019-10-18 10:06:51 +08:00
Elliot Nunn f1c2671a36 Finalize dump subdir names 2019-10-16 14:03:05 +08:00
Elliot Nunn 379beed301 Guess where TOC is when no TVectors are exported 2019-10-16 12:23:37 +08:00
Elliot Nunn e3704d0f41 Dump TheUSBDriverDescription with cfmtool 2019-10-16 11:58:18 +08:00
Elliot Nunn b62a504685 Improve cfmtool quite a bit
And the patch script to match
2019-10-16 10:41:53 +08:00
Elliot Nunn 707467529f Identify relocations by section filename 2019-10-14 21:19:27 +08:00
Elliot Nunn f9f4d24387 Dump MacsBug symbols with cfmtool 2019-10-13 17:07:33 +08:00
Elliot Nunn 1efd8ef07e Add MIT license and some help 2019-10-07 19:35:57 +08:00
Elliot Nunn 610ec9c8d9 Allow for multiple code sections when finding glue 2019-10-04 11:23:42 +08:00
Elliot Nunn 491e85d8a8 Dump useful code locations to glue.txt 2019-10-04 11:02:12 +08:00
Elliot Nunn 27d5faa54c Dump the loader section (cannot be rebuilt)
Cleaned up our custom repr as part of this
2019-10-04 11:02:12 +08:00
Elliot Nunn 1b38a27766 New Python library/tool for manipulating PEFs 2019-10-03 15:48:02 +08:00