# -------------- MASM32 configuration --------------
# --- general --------------------------------------
# $P  - project name
# $Pp - path to project directory
# $Pn - project name
# --- compile --------------------------------------
# $I  - input full name
# $Ip - input path
# $In - input name
# $Ie - input extension
# $O  - output file
# $Op - path to output file
# $On - output filename (without path)
# $Oe - output extension
# $R  - release/debug setting for compiler
# --- build ----------------------------------------
# $T  - target full name
# $Tp - target path
# $Tn - target name
# $O  - output file
# $Op - path to output file
# $On - output filename (without path)
# $Oe - output extension
# $R  - release/debug setting for linker

[Settings]

Target = 
Category&01 = DEFAULT RUN CONFIGURATION
Working Directory =.
Command Line Arguments =
Category&02 = COMPILER OPTIONS
Object Format = COFF|OMF
Calls = DEFAULT|Pascal|C|StdCall
Warning Level = 0|1|2|3
Machine = IX86|ALPHA|ARM|MIPS|MIPS16|MIPSR41XX|PPC|SH3|SH4
Masm 510 Comp = no|yes
Tiny Model Support = no|yes
Preserve Case = ALL|PUBEXT|UPPERCASE
Code Listing = no|yes|<file name>
Line Width = 0
Page Length = 0
Linker Map File = no|yes|<file name>
SBR File = no|yes|<file name>
Extended SBR = no|yes
External Names = 31
Warnings As Errors = no|yes
Public All Symbols = no|yes
Struct Alignment = def|1|2|4
Preprocessor (Debug) = /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS"
Preprocessor (Release) = /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS"
Libraries = 
Stack Size = 
Compiler Options = 
Excluded Files = Excludes
Category&03 = LINKER OPTIONS
Linker Options =
External Dependencies=yes|no

[SettingsInfo]
Target = Provides a space for you to specify an output file and location of the program that the linker creates.
Working Directory = Provides a space for you to specify the directory in which executing occurs. If you do not specify a directory, executing occurs in the directory where the executable is located.
Command Line Arguments = Provides a space for you to specify command-line arguments you want to pass to the program at startup.
Libraries = Provides a space for you to specify an object file or standard library (either static or import) to pass to the linker. Separate file names with a space.
Warning Level = Specifies the severity of warning for which the compiler generates messages.	
Machine = This option specifies the target platform for the program.
Excluded Files = This will exclude the file(s) included in this UE project group from the build.
Compiler Options = Provides a space for you to specify an additional compiler options.
Linker Options = Provides a space for you to specify an additional linker options.
Debugger=Provides a space for you to set the debugger you want to use to debug application.
External Dependencies=If you select "yes" option, UE Studio will generate in project group "External Dependencies" from included files.
Preprocessor (Debug) = Shows the switches the tool will use to build. You can to add or remove switches.
Preprocessor (Release) = Shows the switches the tool will use to build. You can to add or remove switches.
Tiny Model Support = Enables tiny-memory-model support. Enables error messages for code constructs that violate the requirements for .com format files.
Preserve Case = ALL - Preserves case of all user identifiers, PUBEXT - Preserves case in public and extern symbols, UPPERCASE - Maps all identifiers to uppercase.
Stack Size = Sets stack size to XX bytes. The value must be expressed in hexadecimal notation.
Code Listing = Generates an assembled code listing.
Linker Map File = Creates a linker map file.
SBR File = Generates a source browser .SBR file.
Extended SBR = Generates an extended form of a source browser .SBR file, if "SBR File" is set.
External Names = Restricts external names to number significant characters. The default is 31 characters.
Object Format = Format of object files generated by compiler.
Warnings As Errors = Returns an error code if warnings are generated.
Public All Symbols = Makes all symbols public.
Struct Alignment = Packs structures on the specified byte boundary. The alignment can be 1, 2, or 4.
Calls = Use Pascal, C, or Stdcall calls.
Masm 510 Comp = Enable MASM 5.10 compatibility.
Line Width = Sets the line width of source listing in characters per line. Range is 60 to 255 or 0.
Page Length = Sets the page length of source listing in lines per page. Range is 10 to 255 or 0.

[SettingsReps]

External Dependencies=yes=1|no=0
Tiny Model Support = no=|yes=/AT
Warning Level = @/W%s
Preserve Case = ALL=/Cp|PUBEXT=/Cx|UPPERCASE=/Cu
Stack Size = @/F %s
Code Listing = no=|yes=/Fl|DEFAULT=@/Fl%s
Linker Map File = no=|yes=/Fm|DEFAULT=@/Fm%s
SBR File = no=|yes=/F$(Extended SBR)|DEFAULT=@/F$(Extended SBR)%s
Extended SBR = no=r|yes=R
External Names = 31=|DEFAULT=@/H %s
Object Format = COFF=/coff|OMF=/omf
Warnings As Errors = no=|yes=/WX
Public All Symbols = no=|yes=/Zf
Struct Alignment = def=|DEFAULT=@/Zp%s
Calls = DEFAULT=|Pascal=/Gc|C=/Gd|StdCall=/Gz
Masm 510 Comp = no=|yes=/Zm
Line Width = 0=|DEFAULT=@/Sl %s
Page Length = 0=|DEFAULT=@/Sp %s

[Variables]

CPATH =C:\MASM32
COPT = /c $(Object Format) $(Calls) $(Compiler Options) $(Warning Level) $(Tiny Model Support) $(Preserve Case) $(Stack Size) $(Code Listing) $(Linker Map File) $(Line Width) $(Page Length) $(SBR File) $(External Names) $(Warnings As Errors) $(Public All Symbols) $(Struct Alignment) $(Masm 510 Comp)
LOPT = /MACHINE:$(Machine) $(Linker Options)

[Environment]

PATH = $(CPATH)\BIN;%PATH%
INCLUDE = $(CPATH)\INCLUDE;$(HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\Build System\Components\Platforms\Win32 (x86)\Directories\Include Dirs);
LIB = $(CPATH)\LIB

[General]

TargetExt = .LIB
ReleaseOut = Release
DebugOut = Debug
UseFullPaths = 0
UseDosNames = 0
Excludes = $(Excluded Files)
GenerateEDGroup=$(External Dependencies)

[MakeCommands]

run = Execute Application
makef = Show Makefile

[Execute Application]

Title = Execute $(Command Line Arguments)
Cmd0 = $(Command Line Arguments)
Depends = $T
ShowWindow = 1
DisplayConsole = 1

[Show Makefile]

Title=Show makefile
Cmd0=uestudio $(UESMAKEFILE)
ShowWindow=1
DisplayConsole=0

[InsertFiles]

group0 = $(Libraries)

[FileGroups]

FGO = .obj;
FGL = .lib;

[GroupFormats]

FGO = %s
FGL = %s

[Build]

Out = $T
Depends = $FGO
Cmd0 = LINK -lib /NOLOGO $(LOPT) /OUT:$O $FGO $FGL

[.RC]

Out = $In.res
Cmd0 = RC /fo$O $I
IncFiles = 1
CaseSensitive = 1
IncDirs = .;$(INCLUDE);
IncKeyWords = #include;
Comments = //.eol./*.*/

[.ASM]

Out = $In.obj
DebugFlag = /Zi /Zd $(Preprocessor (Debug))
ReleaseFlag = $(Preprocessor (Release))
Cmd0 = ML /nologo $(COPT) /Fo$O $R $I

IncFiles = 1
CaseSensitive = 0
IncDirs = .;$(INCLUDE);
IncKeyWords = include;
Comments = ;.eol.

[.NSM]

Out = $In.obj
Cmd0 = NASMW -f win32 -i$Ip -o$O $I

