<?xml version="1.0" encoding="utf-8"?>
<VisualStudioToolFile
	Name="Microsoft Macro Assembler 64"
	Version="8.00"
	>
	<Rules>
		<CustomBuildRule
			Name="MASM AMD64"
			DisplayName="Microsoft Macro Assembler for AMD64"
			CommandLine="ml64.exe /c [AllOptions] [AdditionalOptions] /Ta[inputs]"
			Outputs="[$ObjectFileName]"
			FileExtensions="*.asm"
			ExecutionDescription="Assembling..."
			>
			<Properties>
				<BooleanProperty
					Name="NoLogo"
					DisplayName="Suppress Startup Banner"
					Description="Suppress the display of the startup banner and information messages.     (/nologo)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/nologo"
					DefaultValue="true"
				/>
				<StringProperty
					Name="ObjectFileName"
					DisplayName="Object File Name"
					PropertyPageName="Object File"
					Description="Specifies the name of the output object file.     (/Fo:[file])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Fo&quot;[value]&quot;"
					DefaultValue="$(IntDir)\$(InputName).obj"
				/>
				<BooleanProperty
					Name="PreserveIdentifierCase"
					DisplayName="Preserve Identifier Case"
					PropertyPageName="Identifiers"
					Description="Preserves case of all user identifiers.     (/Cp)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Cp"
				/>
				<BooleanProperty
					Name="PreservePublicAndExternSymbolCase"
					DisplayName="Preserve Public and Extern Symbol Case"
					PropertyPageName="Identifiers"
					Description="Preserves case in public and extern symbols.     (/Cx)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Cx"
				/>
				<StringProperty
					Name="PreprocessorDefinitions"
					DisplayName="Preprocessor Definitions"
					Description="Defines a text macro with the given name.     (/D[symbol])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/D&quot;[value]&quot;"
					Delimited="true"
					Inheritable="true"
				/>
				<BooleanProperty
					Name="GeneratePreprocessedSourceListing"
					DisplayName="Generate Preprocessed Source Listing"
					PropertyPageName="Listing File"
					Description="Generates a preprocessed source listing to the Output Window.     (/EP)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/EP"
				/>
				<StringProperty
					Name="AssembledCodeListingFile"
					DisplayName="Assembled Code Listing File"
					PropertyPageName="Listing File"
					Description="Generates an assembled code listing file.     (/Fl[file])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Fl&quot;[value]&quot;"
				/>
				<StringProperty
					Name="SourceBrowserFile"
					DisplayName="Source Browser File"
					PropertyPageName="Source Browser File"
					Description="Generates a source browser .sbr file.     (/Fr[file])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Fr&quot;[value]&quot;"
				/>
				<StringProperty
					Name="ExtendedSourceBrowserFile"
					DisplayName="Extended Source Browser File"
					PropertyPageName="Source Browser File"
					Description="Generates an extended form of a source browser .sbr file.     (/FR[file])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/FR&quot;[value]&quot;"
				/>
				<StringProperty
					Name="IncludePaths"
					DisplayName="Include Paths"
					Description="Sets path for include file. A maximum of 10 /I options is allowed.     (/I [path])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/I &quot;[value]&quot;"
					Delimited="true"
					Inheritable="true"
				/>
				<BooleanProperty
					Name="ListAllAvailableInformation"
					DisplayName="List All Available Information"
					PropertyPageName="Listing File"
					Description="Turns on listing of all available information.     (/Sa)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sa"
				/>
				<BooleanProperty
					Name="AddInstructionTimings"
					DisplayName="Add Instruction Timings"
					PropertyPageName="Listing File"
					Description="Adds instruction timings to listing file.     (/Sc)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sc"
				/>
				<BooleanProperty
					Name="AddFirstPassListing"
					DisplayName="Add First Pass Listing"
					PropertyPageName="Listing File"
					Description="Adds first-pass listing to listing file.     (/Sf)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sf"
				/>
				<IntegerProperty
					Name="SourceListingLineWidth"
					DisplayName="Source Listing Line Width"
					PropertyPageName="Listing File"
					Description="Sets the line width of source listing in characters per line. Range is 60 to 255 or 0. Default is 0. Same as PAGE width.     (/Sl [width])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sl [value]"
				/>
				<BooleanProperty
					Name="DisableSymbolTable"
					DisplayName="Disable Symbol Table"
					PropertyPageName="Listing File"
					Description="Turns off symbol table when producing a listing.     (/Sn)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sn"
				/>
				<IntegerProperty
					Name="SourceListingPageLength"
					DisplayName="Source Listing Page Length"
					PropertyPageName="Listing File"
					Description="Sets the page length of source listing in lines per page. Range is 10 to 255 or 0. Default is 0. Same as PAGE length.     (/Sp [length])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sp [value]"
				/>
				<StringProperty
					Name="SourceListingSubTitle"
					DisplayName="Source Listing Subtitle"
					PropertyPageName="Listing File"
					Description="Specifies subtitle text for source listing. Same as SUBTITLE text.     (/Ss [subtitle])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Ss [value]"
				/>
				<StringProperty
					Name="SourceListingTitle"
					DisplayName="Source Listing Title"
					PropertyPageName="Listing File"
					Description="Specifies title for source listing. Same as TITLE text.     (/St [title])"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/St [value]"
				/>
				<BooleanProperty
					Name="EnableFalseConditionalsInListing"
					DisplayName="Enable False Conditionals In Listing"
					PropertyPageName="Listing File"
					Description="Turns on false conditionals in listing.     (/Sx)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Sx"
				/>
				<EnumProperty
					Name="WarningLevel"
					DisplayName="Warning Level"
					Description="Sets the warning level, where level = 0, 1, 2, or 3.    (/W0, /W1, /W2, /W3)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					>
					<Values>
						<EnumValue
							Value="0"
							Switch="/W0"
							DisplayName="Warning Level 0 (/W0)"
						/>
						<EnumValue
							Value="1"
							Switch="/W1"
							DisplayName="Warning Level 1 (/W1)"
						/>
						<EnumValue
							Value="2"
							Switch="/W2"
							DisplayName="Warning Level 2 (/W2)"
						/>
						<EnumValue
							Value="3"
							Switch="/W3"
							DisplayName="Warning Level 3 (/W3)"
						/>
					</Values>
				</EnumProperty>
				<BooleanProperty
					Name="TreatWarningsAsErrors"
					DisplayName="Treat Warnings As Errors"
					Description="Returns an error code if warnings are generated.     (/WX)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/WX"
				/>
				<BooleanProperty
					Name="GenerateLineInformation"
					DisplayName="Generate Line Information"
					PropertyPageName="Object File"
					Description="Generates line-number information in object file.     (/Zd)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Zd"
				/>
				<BooleanProperty
					Name="MakeAllSymbolsPublic"
					DisplayName="Make All Symbols Public"
					PropertyPageName="Object File"
					Description="Makes all symbols public.     (/Zf)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Zf"
				/>
				<BooleanProperty
					Name="GenerateCodeViewInformation"
					DisplayName="Generate CodeView Information"
					PropertyPageName="Object File"
					Description="Generates CodeView information in object file.     (/Zi)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Zi"
				/>
				<EnumProperty
					Name="PackAlignmentBoundary"
					DisplayName="Pack Alignment Boundary"
					PropertyPageName="Advanced"
					Description="Packs structures on the specified byte boundary. The alignment can be 1, 2, or 4.     (/Zp1, /Zp2, /Zp4)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					>
					<Values>
						<EnumValue
							Value="0"
							Switch="/Zp1"
							DisplayName="One Byte Boundary (/Zp1)"
						/>
						<EnumValue
							Value="1"
							Switch="/Zp2"
							DisplayName="Two Byte Boundary (/Zp2)"
						/>
						<EnumValue
							Value="2"
							Switch="/Zp4"
							DisplayName="Four Byte Boundary (/Zp4)"
						/>
					</Values>
				</EnumProperty>
				<BooleanProperty
					Name="PerformSyntaxCheckOnly"
					DisplayName="Perform Syntax Check Only"
					Description="Performs a syntax check only.     (/Zs)"
					HelpURL="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmasm/html/vclrfml.asp"
					Switch="/Zs"
				/>
			</Properties>
		</CustomBuildRule>
	</Rules>
</VisualStudioToolFile>
