[comp.os.msdos.programmer] MASM 6.0 and cross-reference listings

jcmorris@mwunix.mitre.org (Joe Morris) (06/25/91)

I just received the MASM 6.0 update and tried it on some programs
I'm working on.  The biggest structural change is that it's now packaged
as 'ML' just like the other languages (such as 'CL' for MSC).  There's
a front-end MASM.EXE which supposedly translates a MASM command line
into the corresponding ML command line.

Unfortunately, one of the changes in MASM 6 is that there is no way to
get a printed symbol cross-reference table.  The CREF command is gone,
and the purported replacement for it is the "source code browser" which
supports interactive examination under the Programmer's WorkBench.

The first response from Microsoft tech support was that the cross-reference
listing was now part of the main .LST output produced by ML.  Wrong; the
listing is in exactly the same format as was produced by MASM 5.1.  The
tech on the other end of the phone wire apparently thinks that a 
listing of symbols with values but without any information about where
they are used is a "cross-reference" listing.

After we got that straightened out and the phone bill went up another few
dollars he finally agreed that MASM 6 will not generate a printed xref
listing under any conditions.  His statement was that Microsoft assumed
that everybody did all their work while sitting at a PC, and that there
was no need for a printed listing of symbol usage.

He never did explain why this wasn't spelled out in the documentation.

Another highly irritating change is that the user manual for MASM 6 has
far too many places which reference a function, and then cop out by telling
the user to consult the online help system to get anything useful.  It's
not as bad as the C 6.0 fiasco, but to me it appears that whoever in
Microsoft is in charge of the documentation support needs a dose of
reality.  For that matter, I think it was in this newsgroup that one
of the Microsoft employees posted a comment that the company recognized
that printed documentation was a necessity and that failing to include
it with the C product was a mistake.

Getting back to the issue of the cross-reference table...does anyone care
to agree or disagree with my position that its absence is a major
defect in the product design?  Does anyone have a suggestion for
repairing the damage?

Any comments from Microsoft staff on the net would be appreciated...and
yes, I agree that they will be treated as unofficial, personal comments
and not official Microsoft statements of position.

Joe Morris

krb@cbnewsi.att.com (karl r barnhardt) (06/25/91)

From article <jcmorris.677792764@mwunix.mitre.org>, by jcmorris@mwunix.mitre.org (Joe Morris):
> Unfortunately, one of the changes in MASM 6 is that there is no way to
> get a printed symbol cross-reference table.  The CREF command is gone,
> and the purported replacement for it is the "source code browser" which
> supports interactive examination under the Programmer's WorkBench.
> 
> The first response from Microsoft tech support was that the cross-reference
> listing was now part of the main .LST output produced by ML.  Wrong; the
> listing is in exactly the same format as was produced by MASM 5.1.  The
> tech on the other end of the phone wire apparently thinks that a 
> listing of symbols with values but without any information about where
> they are used is a "cross-reference" listing.
> 
> After we got that straightened out and the phone bill went up another few
> dollars he finally agreed that MASM 6 will not generate a printed xref
> listing under any conditions.  His statement was that Microsoft assumed
> that everybody did all their work while sitting at a PC, and that there
> was no need for a printed listing of symbol usage.
> 
> He never did explain why this wasn't spelled out in the documentation.
> 
> 
> Joe Morris

Another thing about MASM 6.0 is that there is no way to generate line
numbers in an assembly listing. I too called the Microsoft help line
(hotline), and was also placed on hold for 15 minutes while someone
tried to figure out what directive generated line numbers. The final
answer was, "There is no way." I guess if they don't generate a cross
reference listing there is no need for line numbers in the assembly
listing. I'll keep using MASM 5.01 till this bug is fixed.

Karl Barnhardt