platon42 wrote:
And no, there is *no* way to find out if a word in a data or code section is code or data -- other than doing a full CPU emulation and stepping through the code that's reached
That's not completely true. Unless part of the code is compressed, encrypted or generated on the fly you can theoretically start scanning at the entry point and just follow all the possible branches. Jump tables are a little tricky in part because it can be difficult to figure out the bounds of the table; however, with the 68K family it's a little easier as disassembling random data tends to produce illegal instructions within a short period of time. It would be difficult to make it fool-proof, but you could probably get pretty close, especially on code compiled from something higher level than assembly.