[alt.msdos.programmer] Disassembler Comparisons

kdq@demott.COM (Kevin D. Quitt) (03/09/90)

    For the purposes of comparison, I am attaching the uuencoded file
devdir.zip, which in turn contains 4 file:

devdir.org	is the original assembly program
devdir.dsm	is the output of sourcer, without a hint file
devdir.asm	is the output of sourcer, with a hint file
devdir.def	is the hint file.

    Disassembly is an iterative process.  As you gather more and more
information about the target, you add that information to the hint file
and then disassemble again.  Sourcer has limitations, as does any
disassembler on machines with multi-unit (in this case, byte)
instructions. 

    The pure disassembly is reasonably readable, but there is no
guarantee that assembling the disassembled file will result in an
identical file, or even in one that works! I have only seen this latter
happen when disassembling code from an optimizing compiler.  Usually,
minor patching of the hints file, or changing some of the options will
clear this up. 

    You'll need pkupzip 1.02+.  If this is a problem, please contact me
via e-mail. 

kdq

begin 664 devdir.zip
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
M1CS5GM0!)40;4,+0<.IB&ZO,`:B*-^)]TFB86`<I^F^20&TTZI,0<B(GP!8
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
M&0``"@`````````!`"````"/#@``1$561$E2+D]21U!+!08`````!``$`.``
(``!#&0``````
`
end


-- 

Kevin D. Quitt                          Manager, Software Development
DeMott Electronics Co.                  VOICE (818) 988-4975
14707 Keswick St.                       FAX   (818) 997-1190
Van Nuys, CA  91405-1266                MODEM (818) 997-4496 Telebit PEP last
34 12 N  118 27 W                       srhqla!demott!kdq   kdq@demott.com

        "Next time, Jack, write a God-damned memo!" - Jack Ryan