Hello,
ScratchABit interactive disassembler
(
https://github.com/pfalcon/ScratchABit), a project which was started
exactly with a motivation to be able to look up things about ESP8266
which vendor forgot to document, has reached the intended level of the
functionality few months ago. It took few more months to release that
as 1.4 (
https://github.com/pfalcon/ScratchABit/releases/tag/v1.4), but
the point is that now I myself, as the author, consider it to be
suitable for a continuous project (whereas previously I used it just
intermittently to look up specific features).
With that milestone reached, there's an ongoing project to produce a
reference disassembly of ESP8266 "world" (which includes BootROM and
other parts) at
https://github.com/pfalcon/xtensa-subjects/tree/master/2.0.0-p20160809 .
That's definitely not the first attempt at that, there's e.g. a
monument of human persistence showing how much can be done if one has
only a hammer^W objdump in their hands. Well, my idea behind working
on ScratchABit has always been "then just imagine how much can be done
if having a proper tool for the task". To that end, to make
comparison with other project easier, besides ScratchABit project files,
a complete disassembly listing is also provided, intended to be updated
after each work session:
https://github.com/pfalcon/xtensa-subjects/blob/master/2.0.0-p20160809/out.lst
As can be see in the listing, it doesn't use a vendor esoteric
assembler syntax du jour, but uses a PseudoC generic assembler (with a
bow to Radare). Besides being understood by any C programmer without
extra words, there's now even some documentation for it (for ScrachABit
flavor of PseudoC that is):
https://github.com/pfalcon/ScratchABlock/blob/master/docs/PseudoC-spec.md .
Actually, that link belongs to another project, ScratchABit's bigger
brother, called ScratchABlock, which is concerned with decompilation
beyond just disassembly (and very far from completion).
--
Best regards,
Paul mailto:
pmi...@gmail.com