# ------------- Pacific C 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 =
Output Type = DOS|Binary|American Automation HEX|Motorola HEX|UBROF|Tektronix HEX
Category&03 = ROM Development Options
ROM Code = no|yes
ROM Address = 81000|F8000
RAM Start Address = 100
RAM Size = 1FF00|F7000
Reset Address = 80000|FFFF0
NVRAM = 0|8000
Split Binary = no|yes
Category&02 = COMPILER OPTIONS
Processor Type = 80086|80186|80286|V25
8087/80287 = no|yes
Memory Model = large|small
Function Alignment = 16|0|2|4|8
JMP Alignment = 4|0|2|8|16
Label Alignment = 0|2|4|8|16
Assembler Listing = no|yes
Heap Size = 
Symbol File Level = Source|Assembler
FPU printf = no|yes
Map File = no|yes
PROTO = no|yes
GetArgs = no|yes
Strict ANSI = no|yes
Unsigned char = no|yes
Warning Level = 0|-3|-2|-1|1|2|3|4|5|6|7|8|9
Eliminate Local Symbols = no|yes
Compiler Options = 
Optimize = yes|no
Global Optimization = yes|no
Preprocess Assembler = no|yes
Category&04 = LINKER OPTIONS
Libraries = 
Linker Options =
Excluded Files = Excludes
Debugger = LUCIFER
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.	
Excluded Files = This will exclude the file(s) included in this 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.
Processor Type = Provides a space for you to specify processor type. The choices are 8086 or 8088 (the default) and 80186, 80188 or 80286. Select the appropriate choice for your particular hardware.
Memory Model = Provides a space for you to specify memory model. Default is small.
Function Alignment = Specify alignment boundaries for function entry points. This option is used to enhance performance on 80386 and 80486 processors.
JMP Alignment = Specify alignment boundaries for code after JMP instructions.
Label Alignment = Specify alignment boundaries for labels within the code.
Assembler Listing = Set yes to Generate assembler listing files for each source file.
Heap Size = Specify the "heap size" for MS-DOS executables. The size value is placed in the .EXE file header to tell MS-DOS how much memory should initially be allocated to the program. The value can be a positive decimal number or a hex number ending with "H".
Symbol File Level = Generate source level symbol file or assembler level symbol file. For DEBUG mode only. RELEASE mode does not generates symbol file.
FPU printf = Scan floating point printf() library.
Map File = Request generation of a MAP file.
PROTO = Generate function prototype information ".PRO files"
GetArgs = Links user code with _getargs() wildcard expansion routine.
Strict ANSI = Enable strict ANSI keyword conformance.
Unsigned char = Make default character type unsigned char.
Warning Level = Set compiler warning level -3 to 9, default 0.
Eliminate Local Symbols = Eliminate local symbols from symbol table. RELEASE mode only.
Optimize = Enable post-pass optimizer, reduces code size substantially.
Global Optimization = Enable global optimization in the code generator.
Preprocess Assembler = Tells PACC to pass assembler source files to the C pre-processor.
Output Type = Provides a space for you to specify output type. Default is MS-DOS executable.
Split Binary = Generate Split Binary: separate files for even and odd bytes.

[SettingsReps]
External Dependencies=yes=1|no=0
Processor Type = 80086=|80186=-1|80286=-2|V25=-3
8087/80287 = no=|yes=-7
Memory Model = small=-Bs|large=-Bl
Assembler Listing = no=|yes=-ASMLIST
Heap Size = @-E%s
Symbol File Level = Source=-G|Assembler=-H
FPU printf = no=|yes=-Lf
Map File = no=|yes=-M$On
PROTO = no=|yes=-PROTO
GetArgs = no=|yes=-R
Strict ANSI = no=|yes=-STRICT
Unsigned char = no=|yes=-UNSIGNED
Warning Level = @-W%s
Eliminate Local Symbols = no=|yes=-X
Optimize = no=|yes=-O
Global Optimization = no=|yes=-Zg
Preprocess Assembler = no=|yes=-P
ROM Code = no=|yes=-A$(ROM Address),$(RAM Start Address),$(RAM Size),$(Reset Address),$(NVRAM)
Output Type = DOS=-DOS|Binary=-BIN|American Automation HEX=-AAHEX|Motorola HEX=-MOTOROLA|UBROF=-UBROF|Tektronix HEX=-TEK
Split Binary = no=|yes=-SPLIT

[Variables]

CPATH =C:\PACC
INC = $(CPATH)\INCLUDE
COPT = -E -C $(Compiler Options) $(Strict ANSI) $(Unsigned char) $(Warning Level) -I$(INC) $(Processor Type) $(8087/80287) $(Memory Model) -AL$(Function Alignment),$(JMP Alignment),$(Label Alignment) $(Heap Size) $(FPU printf) $(Map File) $(PROTO) $(Preprocess Assembler)
LOPT = -E $(Linker Options) $(Output Type) $(ROM Code) $(Split Binary) $(Memory Model) $(GetArgs)

[Environment]

PATH = $(CPATH)\BIN
INC = $(CPATH)\INCLUDE
LIB = $(CPATH)\LIB

[General]

TargetExt = .EXE
ReleaseOut = Release
DebugOut = Debug
UseFullPaths = 1
UseDosNames = 1
Excludes = $(Excluded Files)
EasyCapture = 1
GenerateEDGroup=$(External Dependencies)

[MakeCommands]

run = Execute Application
debug=Start Debugger
makef=Show Makefile
dump = Dump Executable

[Execute Application]

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

[Start Debugger]
Title=Debug $T
Cmd0=$(Debugger) $T
Depends=$T
ShowWindow=1
DisplayConsole = 1

[Show Makefile]
Title = Show makefile
Cmd0 = uestudio makefile
ShowWindow = 1
DisplayConsole = 0

[Dump Executable]

Title = Dump $T
Cmd0 = DUMP $T
ShowWindow = 1
DisplayConsole = 1

[InsertFiles]

group0 = $(Libraries)

[FileGroups]

FGO = .obj;
FGL = .lib;

[GroupFormats]

FGO = %s
FGL = %s

[Build]

Out = $T
Depends = $FGO
DebugFlag = 
ReleaseFlag = $(Optimize)
Cmd0 = PACC $(LOPT) $R -O$O $FGO $FGL

[.C]
Out = $In.obj
DebugFlag = $(Symbol File Level)$In.sym
ReleaseFlag = $(Global Optimization) $(Eliminate Local Symbols)
Cmd0 = PACC $(COPT) $R $I

IncFiles = 1
CaseSensitive = 1
IncDirs = .;$(INC);
IncKeyWords = #include;
Comments = /*.*/.//.eol.

[.AS]
Out = $In.obj
DebugFlag = 
ReleaseFlag = 
Cmd0 = PACC $(COPT) $R $I
