[comp.sys.ibm.pc.misc] Looking for Disassembler

smsmith@hpuxa.ircc.ohio-state.edu (S. Smith) (11/15/90)

I am trying to decide between the various disassemblers on the
market.  I am not that concerned about how much each costs as
I am about what each one can do.  Since I am new to programming
I need one that will allow me to easily (hah!) understand
and trace the execution of a program.  I intend to use the
disassembler in conjunction with learning assembly through a
class at my university (I'm learning Pascal now).

Features wanted:

1) Should be able to run on anything from XT to 386, with the
   ability to work with 8088/86, 286, and 386/387 specific instructions.

2) Should be able to disassemble .COM, .EXE, RAM/ROM and BIOS.
   I/O port, DOS functions, etc. would be nice additions.

3) Good documentation in the manual, and good commentation in
   operation.  These are important. 

4) OS/2 and unlimited file size capability would be nice.  We
   won't be using DOS forever.

5) Must have editing and search capabilities.


If anything of the above doesn't make sense it's because I don't
know enough about assembly to ask the right questions. :)  

I've seen ads for Sharpe Systems' Master*Key disassembler.
Unfortunately it doesn't document 386/387 opcodes.  Otherwise
the ads seem to emphasize the features I would like.  Other
disassemblers I've seen advertised include:

   Re:Source (Genesoft)
   Dis/Doc Professional (RJ Swantek & Assoc.)
   Sourcer 486 (V Communications)

If someone can point me to a good source that compares current
disassemblers, please do.  I don't mind reading through a lot of
stuff.  Since I don't subscribe to any programming magazines I'm
sure there are plenty of recent articles that cover this.  I'm
a magazine freak (I read PC Magazine, PC Sources, PC World, BYTE,
Computer Shopper, Compute, and PC Computing) so just give me
the name and issue number and I'll be on cloud nine.

You can email or post responses.  Since this may be a topic of
general interest I will post a summary.

Thanks a bunch!

Steve Smith
<smsmith@hpuxa.ircc.ohio-state.edu>

smsmith@hpuxa.ircc.ohio-state.edu (Stephen M. Smith) (12/02/90)

Two weeks ago I requested info on disassemblers.  My "wish list"
for features included: 1) ability to run on anything from an XT
to a 386; 2) ability to disassemble .com and .exe files, RAM, ROM/BIOS,
I/O Port and DOS functions; 3) OS/2 and unlimited file size capabilities
would be nice, but not required; 4) good documentation both in manual
and in disassembly; and 5) edit and search capabilities.

Most people recommended Sourcer (a V Communications product).  I
have listed their comments first; following these are various other
recommendations.  

PLEASE NOTE: I have taken the liberty to paraphrase and edit
most responses.  Anything found in brackets--[ ]--is my own
addition or comment.
_____________________________________________________________________

            [***********info on Sourcer***********]


From: timr@gssc.gss.com 

Sourcer is an excellent product.  Very usable.  I think it meets most, if not
all, of your requirements; the only exception would be OS/2 support.
I recommend it.


From: stever@Octopus.COM

I have used Sorcer 486 and it is a real nice disassembler. It does not, 
however, undestand OS/2. (Which I also run). Otherwise it's a good product
and will meet all your other specifications. (It makes real good commented
BIOS source)


From: jpn@genrad.com 

>> I am trying to decide between the various disassemblers on the
>> market.

I strongly recommend "Sourcer".

>> Should be able to run on anything from XT to 386, with the
>> ability to work with 8088/86, 286, and 386/387 specific instructions.

Yes.

>> Should be able to disassemble .COM, .EXE, RAM/ROM and BIOS.
>> I/O port, DOS functions, etc. would be nice additions.

Yes, including the nice additions.  Sourcer interprets the code to
decide what the register values are, so that it can determine what
DOS/BIOS/I/O function is being performed, and that information is
added as a comment.

If you are interested in getting a complete BIOS listing, I highly
recommend the optional "Bios Pre-processor".  This optional program
creates a control file for sourcer (after examining your ROM) which
makes for a much more informative ROM listing.

>> Good documentation in the manual, and good commentation in
>> operation.  These are important. 

Yes.

>> OS/2 and unlimited file size capability would be nice.  We
>> won't be using DOS forever.

No OS/2 support.  Frankly, I'm not aware of ANY disassmebler that
works on both DOS and OS/2.

I don't know about "unlimited" file size either.  For really big
programs, Source requires EMS memory.  On the other hand, I'm not
sure why you would want to disassemble a really big program:  the
disassembly will be HUGE!

>> Must have editing and search capabilities.

No.  Sourcer is not interactive at that level:  disassembly is batch
oriented.  You use your own editor to "edit and search".  Sourcer can
do a partial disassembly given the proper options, but it really isn't
designed to be used that way.


From: portal!cup.portal.com!ekalenda@Sun.COM (ekalenda@cup.portal.com)

I've been using Sourcer from V Communications. It seems to do a pretty
good job and handles BIOS disassembly rather nicely. My only complaint
about it is that it is all batch, you can't give it guidance on the fly.


From: kurtk@ee.ualberta.ca

I had asked around and scanned the ads etc re a decent disassembler
and finally settled on SOURCER 486 with BIOS Preprocessor.
I haven't got it yet, but from various accounts it's good.  They wrote
it in response to IBM's refusal to release any info on the PS2's
BIOS-wise...   The company rep said they're kind of proud of the fact that
it's pretty well the slowest disassembler around.  It supposedly tries
to emulate every aspect of the code's operation and produce reams of
comments and a hand-coded look/feel.


From srhqla!kdq%demott.uucp (kdq@demott.com)

I use sourcer when I need to do bios work - it works very nicely. 


From: dmt@pegasus.att.com

[This note was] posted 16 Dec 88 [89?]:
The January 17, 1989 issue of PC Magazine (p.101) gives "Sourcer" from
V Communications a finalist rating in its Awards for Technical Excellence
under Development Tools.  They say "'Sourcer' is the best disassembler
we've ever seen."
(DMT note: the referenced article says nothing about how/where to buy it.)

_____________________________________________________________

       [********DEBUG/FTP/BBS/SHAREWARE SUGGESTIONS********]


From: srt@aerospace.aero.org

I don't know anything about the quality or the documentation of the 
disassemblers on simtel, but if I was in the market for a disassembler
I'd certainly start there.  The price can't be beat.

[There are] disassemblers [at] site wsmr-simtel20.army.mil
in directory PD1:<msdos.disasm>.  wuarchive.wustl.edu has a 
mirror of Simtel. 


From: jpn@genrad.com 

>> I've seen ads for Sharpe Systems' Master*Key disassembler.

I've got Master*Key (admittedly, a fairly old version) and it is
totally useless compared to Sourcer.  If I want an interactive
disassembler, I use either "debug" or TD (turbo debugger).


From: dmt@pegasus.att.com 

'Fraid I don't have any GOOD advice, but here's a few "feasibles":

   - Run DEBUG with output redirected to a file.  (You're flying blind
     here, so run it undirected first.  That is, when you redirect,
     you won't see the prompts.)  The only command you give it is
     the unassemble command, with the full address range you want to
     unassemble.

     Not very good, but it works for a few limited cases.

   - ASMGEN.  I'm sure you've heard about it, and it's way better
     than DEBUG.  But still not what you'd really want.
     [This is available at Simtel in PD1:<msdos.disasm>]

[This was] posted 16 Jul 88:
The best shareware assembler perhaps the best assembler is Isaacson's
A86 and D86 (disassembler) packages available on BBS's.  The latest version 
I've seen locally is 3.15; the guy guarantees it's the fastest period.  If you
can't find it try Vernon Buerg's BBS: 707-778-8944.
I didn't use it much but it looked good.....


From: [anonymous]

  There are public domain versions at various archive sites - try 
wuarchive.wustl.edu in mirrors/msdos/disasm [and] 
chyde.uwasa.fi in pc/programming/id12.zip

________________________________________________________________

           [*********DIS/DOC and CRACKER***********]


From: rcollins@altos86.Altos.COM 

Dis/Doc PRO has all the features you are looking for, except it has
something like a 1M file size limit.  It also does .SYS files.
[According to the Programmer's Shop's latest catalogue, however,
Dis/Coc has "no file size restrictions."]


From: [anonymous]

Dis/Doc offered a free demo which I got by calling them.  Looks like
an interesting program.  


From: stanley@phoenix.com 

[I am using] a program called Cracker [which I obtained] free.

______________________________________________________________

      [********OTHER SOURCES AND CAVEATS********]


From: kkeller@polyslo.CalPoly.EDU 

[There were] disassemblers reviewed in Computer Language (i think, 
if its not there try dr. dobbs, and lastly the C users journal) 
about the spring semester (feb to june plus/minus a couple of months)  
in 1989.  sorry about the vagueness of the reference but i dont 
have the issue on hand.  as i recall the reviews were excellent and
rather complete, but i have never used (or purchased) a disassembler.


From: [anonymous] 

Info on disassemblers is tough to come by normally.  Most the magazines 
you mentioned don't cover the topic at all.  About a year(?) ago, computer
language had a review of several commercial products.  Dr. Dobbs is also
a potential source of information. 
  Make sure you get the type you want.  There are batch versions and 
interactive versions.  


From: dmt@pegasus.att.com 

   -	Warning about SNOOP II, from a company with a name something
	like "Tri-DOS Software".  I got this a couple of years ago,
	with high hopes.  The idea was great, but it was poorly executed
	(among other things, lousy performance and a terribly
	inconsistent user interface).  Moreover, Tri-DOS refused to
	honor their money-back offer.  (Actually, they didn't refuse;
	they said they would and then just didn't bother.)

__________________________________________________________________

[end of summary]

Sourcer is made by V Communications and Dis/Doc Pro is made by 
RJ Swantek & Assoc.  Both can be obtained by a software company
called The Programmer's Shop (1-800-421-8006); this company sells
products under list price, though even better prices can probably
be obtained elsewhere by shopping around.

Although one reply mentioned Master*Key, I had hoped to hear from
others.  According to a recent ad, Master*Key 486 is "not an upgrade...
it is a NEW product and has been completely rewritten."  It is
an interactive disassembler using one or two windows, and can be
used with files of any size.  The ad is on page 664 of the
December 1990 issue of Computer Shopper in case anybody is 
interested in checking it out.

S. "Stevie" Smith \  +  /
<smsmith@hpuxa.   \+++++/    " #*&<-[89s]*(k#$@-_=//a2$]'+=.(2_&*%>,,@
 ircc.ohio-state. \  +  /      {7%*@,..":27g)-=,#*:.#,/6&1*.4-,l@#9:-)  "
 edu>             \  +  / 
 BTW, WYSInaWYG   \  +  /                              --witty.saying.ARC

djbpitt@unix.cis.pitt.edu (David J Birnbaum) (12/02/90)

In article <1990Dec2.003617.1294@magnus.ircc.ohio-state.edu>
smsmith@hpuxa.ircc.ohio-state.edu (Stephen M. Smith) writes:

>Two weeks ago I requested info on disassemblers...
(summaries and praise for Sourcer deleted)

An absolute winner is MD86 by C. C. Software, 1907 Alvarado Avenue,
Walnut Creek, CA 94596.  I used the shareware version (registration
fee of $17.50), which outperformed asmgen by a wide margin.  The
most useful feature of MD86 is that it is interactive; you can
set label names and specify data types and the disassembly will
change to reflect your editing.  There is a non-shareware version
with additional features, which I decided I didn't need.  Support
is good; a letter to the company mentioning a couple of bugs brought
an immediate reply from the author, along with the latest version
(which corrected the few bugs I had noticed).

>The best shareware assembler perhaps the best assembler is Isaacson's
>A86 and D86 (disassembler) packages available on BBS's.  The latest version 
>I've seen locally is 3.15...

I have 3.22.  D86 is not a disassembler, it is a symbolic debugger.  It
can be pressed into use as a sort of disassembler, for those who like
to bang in nails with pliers.  A86 and D86 are highly recommended; also
shareware, with a registration of $50 each or $90 for the pair.  Support
is also excellent; I called one Sunday evening *before* I had even
registered and had all my questions answered by the author.  There is
also a support BBS.  (For amusement, compare this to Microsoft support.)

--David