Talk:Microsoft Macro Assembler

This entire subject needs rewrite, it is factually incorrect and subject to a collection of deviant interests that are not within the guidelines of Wikipedia as an online Encyclopaedia. It makes reference to tools that are not related to the Microsoft Assembler and it contains polemic and deliberate mis-information.

Hutch48 (talk) 03:51, 10 December 2009 (UTC)

1991 ML version copyright

Microsoft (R) Macro Assembler Version 6.00 Copyright (C) Microsoft Corp 1981-1991. All rights reserved.

2009 ML version copyright

Microsoft (R) Macro Assembler Version 9.00.30729.01 Copyright (C) Microsoft Corporation. All rights reserved.

This is some information that will be added to the article.

Hutch48 (talk) 04:40, 10 December 2009 (UTC)

This is the copyright from the 20009 version of ML64.EXE

Microsoft (R) Macro Assembler (x64) Version 9.00.30729.207 Copyright (C) Microsoft Corporation. All rights reserved.

Hutch48 (talk) 04:45, 10 December 2009 (UTC)

Recent graffiti on this page
Editor OrangeDog

Graffiti removed as technically incorrect and inappropriate.

Hutch48 (talk) 18:54, 22 January 2010 (UTC)

OrangeDog, it's interesting that you placed this notification on the page. From my reading of the material that it was applied to, I find an effort to show the characteristics of this particular "flavor" of assembly language. The material isn't aimed at instruction, isn't a "how-to". You seem to have the wrong idea of what is going on. If you are familiar with, say, Watcom Assembler, you'll be able to see the differences immediately. --  spin control 19:09, 22 January 2010 (UTC)

Attempted Negotiation
Tried to negotiate with user OrangeDog on his talk page but found user to be aggressive and dictatorial in an area where he has no demonstrated expertise and no contribution to topics of this type.

Hutch48 (talk) 18:54, 22 January 2010 (UTC)

Page hacked
User OrangeDog removed more than half of its content while making numerous technical and editing mistakes in the remaining content.

Reversion performed by another user who apparently tracks changes to this page.

Will wait to see if user OrangeDog undertakes edit reversions.

Hutch48 (talk) 19:07, 22 January 2010 (UTC)

Review
As I'm clearly not qualified to edit this page, I'll leave my comments here. OrangeDog (τ • ε) 18:56, 24 January 2010 (UTC)

Style issues
In short, sections of article are terribly written, featuring long rambling sentences with far too many conjuctions. Many points expressible in a few words are circuitously described in a few lines instead. Any chance of cohesion is further destroyed by frequent examples, often attempting to show what could more easily be simply stated and then referenced. In some places information is presented twice, both in prose and list form.

See Manual of Style for further detail. Bold text should not be used for emphasis, but for the first occurrence of the article's titles. The File:Microsoft wordmark.svg in the infobox seems unnecessary as it is not actaully the logo of the product, but of the company that makes it. A number of terms and abbreviations unfamiliar to non-experts are not wikilinked or explained on their first usage (e.g. VC98 and VCPP5). Bare external links should not be used for references, as this makes them impossible to verify should the link targets move. OrangeDog (τ • ε) 18:56, 24 January 2010 (UTC)

Referencing issues
In general, the article relies too heavily on primary sources or unreferenced rhetoric and examples, appearing to be mostly original research, instead of citing reliable secondary sources. In more detail:


 * Unisys OS 1100 Meta-Assembler is not a verifiable citation. Plus, if it refers to what I think it does, it is not a valid verification of the claim that the term MASM refers to Microsoft Macro Assembler, even though it pre-dates it.
 * Version 6.00 has the following copyright string: "(C) Microsoft Corp 1981-1991." does not verify that MMA "has been in production since 1981 and is upgraded by Microsoft to keep abreast with operating system needs and processor developments". A secondary source should be used instead.
 * http://www.intel.com/products/processor/manuals/ does not verify that "the high level emulation also supports C runtime comparison operators that work according to the same rules as Intel mnemonic comparisons". Firstly, it is a primary source for Intel architectures alone, thus improper synthesis to draw conclusions about a Microsoft product from it. Secondly, the statement that is attempting to be referenced does not appear to make sense, as C is a high-level language, while Intel mnemonics are low-level.
 * http://msdn.microsoft.com/en-us/library/default.aspx is not a verifiable citation as it does not adequately specify what part of the vast MSDN library it is referring to.
 * http://download.microsoft.com/download/e/b/a/eba1050f-a31d-436b-9281-92cdfeae4b45/pecoff.doc makes no reference to MASM or Microsoft Macro Assembler output, so does not verify anything about it.
 * Neither does http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx.
 * The "references" in the Support section appear to be an attempt to circumvent the external linking policy.

Additionally, the following claims have no reference to support them. Most require a third-party, reliable source.
 * "commonly understood in more recent years to refer to the Microsoft assembler"
 * "Later versions added the capability of producing programs for Windows" - also requires clarification.
 * "MASM is one of the few Microsoft development tools that target 16-bit, 32-bit and is supplied as a 64 bit version ML64.EXE for 64-bit platforms." - source required for "one of the few".
 * "Versions 5.0 and earlier were MS-DOS applications. Versions 5.1 and 6.0 were available as both MS-DOS and OS/2 applications. Versions 6.12 to 6.14 were implemented as patches for version 6.11 which converted them from 16 bit MZ executables to 32 bit PE executable files. All later versions have been 32 bit PE executable files built as Win32 console mode applications." - all unreferenced and arguably excessive detail.
 * "Versions 6.1 and 6.11 included Phar Lap's TNT DOS extender so that MASM could run in MS-DOS." - both that it did include it, and that this was the reason.
 * "The last freestanding commercial version of the Mirosoft assembler was version 6.11d released in the middle 1990s."
 * "With the release of 32 bit versions of Windows with both the OEM win95 and WinNT version 4.0, Microsoft developed ML.EXE mainly for internal use as an operating system vendor and it was mainly available only through MSDN subscription but Microsoft developed patches for the last commercial version of ML.EXE that upgraded it from a 16 bit MZ executable to a proper 32 bit portable executable file that ran natively on the 32 bit Windows platforms. With the release of the 6.14 patch, ML.EXE became a very reliable tool that supported Intel opcodes up to the early SSE instruction set." - aside from being a single sentence, everything requires referencing, particularly the claims I have highlighted.
 * Well, the whole of the History section is unreferenced. Further particularly challenge-able claims are "internal usage industrial tool maintained by a major operating system vendor to serve their own purpose", "the vast majority of its users are experienced programmers who have used it for many years", "C compilers do not deliver sufficiently optimised code for the intended purpose", "This is evident" and "the tell tale indication of code written by hand in ML.EXE is the use of the trailing LEAVE mnemonic at the end of a procedure with a stack frame."
 * Likewise with the Usage section. References are required to establish that the examples show what it is claimed that they show. Again, particularly troublesome parts include "maintains the historical distinction" - verify that such a thing exists, "used for readability purposes", "are generally written purely in mnemonics", "has at time been a source of confusion for programmers", "the practice leads to confusion of programmers", "a form of shorthand notation developed", "has confused some users", "can lead to problems", "The advantage...", "may not in the future", "may not be developed unless they have a need to add it for their own usage", "high level interface is used for non-speed critical code", "speed critical code is usually written in directly in mnemonics", "may not in the future..." again, "has considerably more functionality than modern C compilers", "consistent with its designation as a macro assembler", "for programmers who prefer to use this style of notation for code that is not speed critical" and "the pre-processor is an old design that is known to be quirky in its operation and reasonably difficult to use without a lot of experience".

Such claims, which are currently pure original research, must be removed if they cannot be supported by reliable, independent, third-party sources. Note that discussion forums are generally not accepted as reliable sources. OrangeDog (τ • ε) 18:56, 24 January 2010 (UTC)

Content issues
OrangeDog (τ • ε) 18:56, 24 January 2010 (UTC)
 * A lot of the content is borderline excessive detail. Generally, if you cannot find an independent source (i.e. not the user manual, help forum, etc.) for something then it is not worth including.
 * The product is inconsistently referred to as (among others) Microsoft Macro Assembler, Microsoft Assembler, MASM, and ML.
 * Little distinction is made between the product (MMA) and the language that it operates with (a dialect of x86 assembler).
 * Names of executable files are both irrelevant and trivially changed. The article should be about the product, not a particular file.
 * Advanced concepts and excerpts of assembly are used in prose without any prior introduction, or indication of why they are relevant to MMA in particular.

Response to issues raised

 * While I have suspended any contribution to Wikipedia technical articles due to non technical interference, to show a little goodwill in an area that has been clearly void of it I will try and help out the next editor who tried to improve the MASM page.


 * 1. The theory of citation requested is an old analysis error called "Reductio Ad Absurdum", technically an infinite regression of requirements.


 * 2. Not all information is available on the internet as a link. The reproduction of the Copyright string of an original binary is exact and accurate citation.


 * 3. The Microsoft assembler has been in production for just under 30 years ALA proof from the copyright string. It has been referred to by the name MASM and was sold as a seperate produce named Microsoft MASM. (Original box for the last version of MASM sold seperately).


 * 4. The file name ML.EXE has been unchanged since the 1990 MASM version 6.0 up to the current (2010) 32 bit version and has been a component of the Microsoft Visual C/Studio product range since 2000. It is the correct name for the tool as per its historical file name.


 * 5. x86 Assembler language IS a LANGUAGE and is the correct language to demonstrate that capacity of the assembler.


 * 6. Historical availability of the tool is determined by ownership of the tool(s). Check your version(s) of MASM, check your MSDN subscription (SDK and DDK) for different versions, check the Microsoft patched for ML.EXE up to version 6.14, the VC processor pack for version 6.15 and any version of Visual Studio later than 2000.


 * 7. Two seperate COFF references are for the OBJECT MODULE FORMAT produce by 32 and 64 bit versions of MASM and are correctly cited.


 * 8. Reference for MASM comes in multiple generations, the grey covered 1991 MASM manual for MASM version 6.0, the white covered 1992 masm manual for MASM version 6.11d, the MSDN links that already exist in the page.


 * 9. Reference for the mnemonics used by MASM are exhaustively contained in the published Intel manuals linked on this page and available from the Intel web site.


 * 10. en.wikipedia is an English language site and describing the capacity of the tool is commensurate with writing the article, not performing original research. There is a difference between interpreting Wikipedia as a link storage system for second hand data and writing a viable entry in an encyclopedia. Wikipedia is targetted at the latter, the former is awash across the internet.

The Solution

 * To avoid the pedantics, amateur semantics and reductio ad absurdum requirements, simply ignore them according to this Wikipedia policy WP:IGNORE and interpret this policy under the following guildlines WP:WIARM and make sure you write a clear and well documented article that an interested reader can understand and learn something from.


 * Hutch48 (talk) 04:16, 28 January 2010 (UTC)

Notification

 * The masm32.com site is no longer available to Wikipedia. Page should be modified to reflect changes in its reference material and content citing such unavailable references needs to be removed. Hutch48 (talk) 00:28, 2 February 2010 (UTC)
 * Well, that explains why the links don't work. --  spin  control 00:42, 2 February 2010 (UTC)


 * An outside opinion: there is no requirement that material used as references must be online in the first place, and certainly no requirement that it has to be available as an http link. So there is no reason to remove references simply because a website is blocking Wikipedia as a referrer. &mdash; Carl (CBM · talk) 11:14, 2 February 2010 (UTC)


 * The links can quite easily be followed if you paste the url into the address bar or equivalent. OrangeDog (τ • ε) 12:45, 2 February 2010 (UTC)
 * Perhaps you could write a how-to for users who get server messages instead of info. --  spin  control 07:05, 3 February 2010 (UTC)


 * OrangeDog, does this mean you intend to leave the links broken or are you going to publish instructions on how to paste the URLs into a browser. I don't supply bandwidth or technical data for other sites to leech, feel free to use your own expertise and resources to provide the technical data yourself and publish it on Wikipedia. As it is evident that you have aspirations to reform the page in your own image, what is wrong with doing some honest work yourself ? Hutch48 (talk) 14:06, 2 February 2010 (UTC)
 * Oh, that's ok, I already fixed them. --SarekOfVulcan (talk) 14:29, 2 February 2010 (UTC)
 * Really? --  spin  control 07:00, 3 February 2010 (UTC)

Copyright Violation by editor SarekOfVulcan
Your actions as a Wikipedia editor are in breach of Wikipedia policy on COPYRIGHT VIOLATION. Remove the material immediately.

Content that violates any copyrights will be deleted.

Hutch48 (talk) 21:39, 2 February 2010 (UTC)


 * I'm afraid the only material that has been added to this article that was under copyright (yours) at masm32.com was by you, when you irrevocably licensed your contributions under the GFDL and/or CC-BY-SA . Linking to content does not violate copyright. If you do not want your material linked to, do not put it on the internet. OrangeDog (τ • ε) 21:50, 2 February 2010 (UTC)


 * Check your facts, I did not place the links on the page, it was done by another author so I have never graned Wikipedia any rights whatsoever. I have remoed Wikipedia access to my web site and SarekOfVulcan has acted outside of the policy of Wikipedia by sourcing the data elsewhere. Hutch48 (talk) 21:58, 2 February 2010 (UTC)


 * This sounds like copyright infringement to me, an editor has deliberately contravened the intentions of the copyright holder. Have I missed out on anything here? --  spin  control 22:17, 2 February 2010 (UTC)


 * Linking to content does not violate copyright. I was referring to any content you may have added to the article. Before either of you progress any further, I draw your attention to No legal threats. OrangeDog (τ • ε) 22:19, 2 February 2010 (UTC)


 * I suppose the copyright holder needs to have archive.org remove the material (which is no difficulty), because an editor here flagrantly wants to disregard the copyright holder's control over material. --  spin  control 22:28, 2 February 2010 (UTC)


 * Even if the material is not archived, we could still use it as a reference. It might be necessary to tell people to paste the URL into a separate window, but that's life. Using a website as a reference is not a copyright violation. Wikipedia is not affiliated with archive.org in any way, so you do need to contact them separately if you would like them to remove the archive. &mdash; Carl (CBM · talk) 00:31, 3 February 2010 (UTC)

The problem has been solved, thank you for responding. Hutch48 (talk) 00:50, 3 February 2010 (UTC)

Messrs OrangeDog and SarekOfVulcan, to spare you the distraction of external technical data that clearly does not measure up to your standards as exhibited by the most recent major deletion conducted on this page by OrangeDog I now afford you the opportunity of completely constructing the MASM page in your own image based off you self proclaimed expertise in the area of Microsoft Assembler. Being completely free of the type of data that you tried to delete previously, you now have the freedom to design your reconstruction of the masm page so that it accurately reflects your understanding of the notability of the Microsoft Assembler and would wish both of you the best of luck in learning the minimum to actually say something coherant about the subject. Hutch48 (talk) 09:05, 3 February 2010 (UTC)

Heaven help us. --  spin  control 11:41, 3 February 2010 (UTC)

Copyfraud
We will note at this stage that links to the MASM32 homepage as well as the license page have been added by User:Hutch48 himself, [ on 10 December 2009] and [ 6 January 2010]. By doing so, the edit window held a notice "You irrevocably agree to release your contributions under the CC-BY-SA 3.0 License and the GFDL. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license." Preventing the mere hyperlinking to pages on his own domain is an example of "Imposition by a copyright owner of restrictions beyond what the law allows." The link to the MASM myths page was used to reference the notion that MS is still supporting MASM and was added by another contributor in 2008. While I believe the entire complaint is wholly without merit, I see no compelling reason to link to a self-published source by the MASM32 community instead of one published by Microsoft. MLauba (talk) 11:58, 4 February 2010 (UTC)

Unbalanced
This article seems unbalanced in that it goes into great detail about e.g. certain aspects of the macro processing obscuring the main line in the dark. (in my opinion it could be replaced by "ml contains a classical macro mechanism by subsitution. [1] This is powerful but it may be hard to use by those unfamiliar with it." [1] should refer to a generic explanation of macro processing. THE MECHANISM PRESENTED HERE IS ENTIRELY STANDARD! ) Again I wonder why HLA is again the first reference. What is so important HLA, and what is the relevance for ML.EXE? It would take considerable effort to improve this. I will not undertake it. 80.100.243.19 (talk) 14:22, 7 May 2011 (UTC)

MASM for Motorola 6809B microprocessor
In 1986 I owned a Radio Shack (Tandy) Color Computer with a Motorola 6809B microprocessor which had a MASM assembler that plugged in the game cartridge port of the computer. I only mention this because everything I have read referencing the Microsoft Macro Assembler at WIKIPEDIA suggests that Microsoft only supported Intel microprocessors. The fact of the matter is that MASM also supported the Motorola 6809 CPU.

Gassasb (talk) 20:56, 18 February 2012 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified 1 one external link on Microsoft Macro Assembler. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20090126141159/http://download.microsoft.com:80/download/e/b/a/eba1050f-a31d-436b-9281-92cdfeae4b45/pecoff.doc to http://download.microsoft.com/download/e/b/a/eba1050f-a31d-436b-9281-92cdfeae4b45/pecoff.doc

When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at ).

Cheers.— InternetArchiveBot  (Report bug) 17:28, 11 November 2016 (UTC)