Assembler.ini

masm.ini, tasm.ini, fasm.ini, nasm.ini, hla.ini,GoAsm.ini

Section [Description]

Description of the assembler / programming language.
Manually maintained.

1=Text
Text is a description text. Supports \r (Cr) and \n (Lf)

Section [CodeMacro]

Code writing macros.
Manually maintained.


x=KeyWord,InsBefore,InsAfterx is a number between 1 and 32. No holes allowed
Keyword (.if, .else, .elseif, proc, struct)
InsBefore. Use one or more of the special commands.
InsAfter. Use one or more of the special commands.

Special commands
{I}=Copy indent from keyword line
{C}=Cr
{S}=Space
{T}=Tab
{$}=Copy proc / struct name

Section [Code]

Used to find and get code properties.
Manually maintained.


ParseDll=DllName.dll
nAsm=Number
Skip=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Code=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Const=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Data=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Macro=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Struct=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Local=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Label=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Other=[Name0,10[,Name1,11[,Name2,12[,Name3,13]]]]
Name0=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Name1=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Name2=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]
Name3=KeyEnd,KeyStart1[,KeyStart2[,KeyStart3]]

ParseDll Currently only CppParse.dll can be used to parse C(C++.
nAsm Needed if your assembler / programming language is a clone. See RadASM.inc for a list of values.
KeyEnd is the keyword that ends the scope. Can also be {C} for end of the line.
KeyStart is the keyword that starts the scope. Can be a list of several keywords.
Other is a list of optional properties. There can be max 4 and has an ID ranged from 10 to 13
Name0 to Name3 is the names defined in the Other list.

Section [CodeBlock]

Used to mark collapsible code blocks.
Manually maintained.

x=Start,End,DontHide1,DontHide2,flag
x is a number between 1 and 10. No holes allowed
Start  ($ proc, .if, .while, $ macro, $ struct)
End ($ endp, .endif, .endw, $ endm, $ ends)
DontHide1 (.elseif)
DontHide2 (.else)
* can be used as a wildcard in any of the abowe.
flags: (use Boolean OR to combine flag values)
    1=No nesting, 
    2=Draws a divider line
    4=Ending line is also collapsed
    8=Look ahead for ending.
    16=Segment block (collapse till next segment
block or to EOF)

Section [Api]

Code write helpers. (Listbox and tool tip)
Manually maintained.


Trig=Keyword that triggers the API  list and tool tip
Call=Filename of API  list
Const=Filename of API  constants list
Struct=Filename of structures list
Word=Filename of word list for auto case convert
Message=Filename for list of window messages

Section [Edit]

Code editor and print options.
Maintained by RadASM options, except for CodeFiles.

Font=Code editor font
FontHeight=Code editor font size
FontWeight=Code editor font weight
FontCharSet=Code editor character set
TxtFont=Text editor font
TxtFontHeight=Text editor font size
TxtFontWeight=Text editor font weight
TxtFontCharSet=Text editor character set
PrnFont=Printer font
PrnFontHeight=Printer font size
PrnFontWeight=Printer font weight
PrnFontCharSet=Printer character set
PrnPage=Printer page setup
PrnOption=Printer options
PrnColor=Printer colors
TabSize=Editor tab size
Backup=Number of backups 0 to 9
AutoSave=Auto save before build, TRUE or FALSE
BacupPath=Backup path
AutoIndent=Copy indent from above line, TRUE or FALSE
ApiList=Show API  listbox, TRUE or FALSE
ApiToolTip=Show API  tool tip, TRUE or FALSE
Properties=Show code properties, TRUE or FALSE
MouseWheel=Use mouse wheel, TRUE or FALSE
SaveSize=Save window size on close, TRUE or FALSE
Maximize=Maximize windows, TRUE or FALSE
ApiConst=Show API  constants listbox, TRUE or FALSE
CodeWrite=Use code write macros, TRUE or FALSE
TabToSpc=Convert tab to space as you type, TRUE or FALSE
ApiStruct=Show api struct listbix, TRUE or FALSE
SingleInstance=Open RadASM in single instance, TRUE or FALSE
ApiWordConv=Use word list case convert, TRUE or FALSE
ApiWordLocal=Add code properties to wordlist, TRUE or FALSE
CodeFiles=List of file extensions RadASM will handle as code
files. Note: List must end with a '.'
Example: CodeFiles=.asm.inc.rc.tpl.rad.api.
ProcsToApi=TRUE or FALSE. Your projects procs will be added to
API  list and API  tool tip.
LnrFont=Linenumber font name.
LnrFontHeight=Linenumber font size.
LnrFontColor=Linenumber font color.
LnrWidth=Width of linenumber bar.
LnrOnOpen=TRUE / FALSE. Linenumber bar shown on open.
PageSize=Page size (lines).
ApiShiftSpace=TRUE / FALSE. Shift+Space active.
CmntBlock=comment+,-(masm)
/*,*/(hla)

Section [Dialog]

Dialog editor options.
Maintained by RadASM options.

Grid=Show grid, TRUE or FALSE
GridX=Grid x size, 2 to 20
GridY=Grid y size, 2 to 20
SnapToGrid=Snap controls to grid, TRUE or FALSE
ShowSize=Show size / pos tool tip, TRUE or FALSE
SaveRC=Save to RC file, TRUE or FALSE
Simpleproperty=RadASM omits most properties. TRUE or FALSE
DlgID= Default Dialog ID
CtrlID= Default Controls start ID

Section [Error]

How RadASM bookmarks assembler errors.
Manually maintained.

BookMark=Number
nAsm=Number
Identify=KeyWord
Skip=Number

Bookmark How RadASM bookmarks assembler errors.
                         0=No handling
                         1=Shows bookmark
                         2=Hilites line
   
                      3=Shows bookmark and hilites line (default)
   
                      4=No visual error marking, goto next error still works
nAsm Assembler to emulate (if none is given then Identify and Skip must be specified.)
Identify Keyword that identifies a line with an error
SkipNumber of words to skip before filename

Section [CharTab]

Character table definitions.
Manually maintained.

Default character table for characters 0 to 127
0=0000000000000000;00-0F
1=0000000000000000;10-1F
2=0251222522222232;20-2F
3=1111111111242221;30-3F
4=1111111111111111;40-4F
5=1111111111122221;50-5F
6=0111111111111111;60-6F
7=1111111111122200;70-7F

Character 128 to 255 is taken from IsCharAlphaNumeric api.

Table entry meanings.
0=No special handling.
1=Treated as alphanumeric by highlighter and word selector
2=Treated as operator by highlighter
3=Treated as alphanumeric by highlighter
4=Character initiates comments
5=Character initiates strings.
6=Character initiates comments if double. Example: //

Section [Paths]

Paths needed by RadASM.
Maintained by RadASM options.

$A=Where masm32 is installed, usually C:\Masm32
$B=Where RadASM finds bins, usually $A\Bin
$D=Where RadASM finds AddIns, usually $R\AddIns
$E=Where your debugger is found, usually C:\OllyDbg
$H=Where RadASM finds help files, usually $A\Help
$I=Where RadASM finds includes, usually $A\Include
$L=Where RadASM finds libraries, usually $A\Lib
$P=Where RadASM finds projects, usually $R\Projects
$S=Where RadASM finds sniplets, usually $R\Sniplets
$T=Where RadASM finds templates, usually $R\Templates
$M=Where RadASM finds keyboard macros, usually $R\Macro

Section [MakeFiles]

Used to create new RadASM projects.
Manually maintained.

x=FileExt
x is a number between 0 and 32. No holes allowed

Current extensions
0=.rap, 1=.rc, 2=.asm, 3=.obj, 4=.res,
5=.exe, 6=.def, 7=.dll, 8=.txt, 9=.lib, 10=.mak

Section [Group]

Used to create default project file groups.
Manually maintained.

Group=List of groups.

Example masm:
[Group]
Group=Added files,Assembly,Resources,Misc,Modules

Section [Project]

Used to create new RadASM projects.
Manually maintained.

Type=List of project types that can be created
Files=List of project files that can be created
Folders=List of folders that can be created
MenuMake=List of menu commands
Group=Default use grouping, TRUE or FALSE
GroupExpand=Default expand groups, TRUE or FALSE

Section [MakeDefNoProject]

Used to build when no project is opened.
Manually maintained.

MenuMake=List of TRUE or FALSE to activate make menu.
x=DelCheck,Out,Command,F1[,F2[,Fx]] x is a number between 1 and 9 for normal build
or between 11 and 19 for debug build.
DelCheck is the file to delete before build and the file to check if exist after build. Use 0 to avoid this check. If this is a number then it represents one of the [MakeFiles]
Out is where to send output, O for RadASM output window or C for console. Use 0 if there are no output. Use OT to see the command in the output window.
Command is the command to run. Can be blank.
Fx is the list of files to process. If this is a number then it represents one of the [MakeFiles]

Special characters
' $ ' Gets the filename from topmost editor window without extension.
' | ' Is replaced by a ' , ' in the final stage.
' * ' Is used to build modules.

Section [ProjectType]

Used to create defaults in a new RadASM project.
Manually maintained.

Note that 'ProjectType' is one of the Type= in section

Files=List of TRUE or FALSE to create files.
Folders=List of TRUE or FALSE to create folders.
MenuMake=List of TRUE or FALSE to activate make menu.
x=DelCheck,Out,Command,F1[,F2[,Fx]] See [MakeDefNoProject]

Special characters
' $ ' Gets the filename from topmost editor window without extension.
' | ' Is replaced by a ' , ' in the final stage.
' * ' Is used to build modules.

Section [MenuMake]

Make menu.
Maintained by RadASM options.

x=MenuText,Accel,M,Command See Tools menu

Command can be a series of numbers as described by x= in the [ProjectType]

Section [Color]

Code editor colors.
Maintained by RadASM options.

UseColor=Use syntax highlighting, TRUE or FALSE
DivLine=Show procedure dividing line
NoFlicker=No flicker scroll 0 = off / 1 = on
Back=Code editor background color
Fore=Code editor text color
SelBack=Selected background color
SelText=Selected text color
HiLine1=Highlighted line 1 color
HiLine2=Highlighted line 2 color
HiLine3=Highlighted line 3 color
Bar=Code editor selection bar color
BarPen=Code editor selection bar pen
LnrFontColor=Line number color
Cmnt=Comment highlight color
Str=String highlight color
Oper=Operator highlight color
C0=C0 Keyword group
.
.
C15=C15 Keyword group
Output=Output window
Project=Project window
Property=Property window
Dialog=Dialog editor

The most significant byte in C0 to C15 is used for font type setting.
0=Normal
1=Bold
2=Italics
3=Bold italics
16=RC file entry

Section [KeyWords]

Keywords used to highlight words in code editor.
Maintained by RadASM options.

C0=C0 List of keywords, separated by space
.
.
C15=C15 List of keywords
C16=On hold keywords

Section [Enviroment]

 Enviroment variables.
Manually maintained.

x=key,var        x is a number from 1 and up. No holes allowed
                       
Key is the variable name
                       
Var is the new value. NOTE if Var ends with a ';' then
  
                     the old value is added to the new value.

 Example:

[Enviroment]
1=path,c:\hla;c:\masm32\bin;
2=lib,c:\hla\hlalib

3=hlainc,c:\hla\include

Section [Open]

Open file dialog definitions.
Manually maintained.

x=Text,Filter
x is a number from 0 and up. No holes allowed. Text is the text displayed. Filter is the file filter.
src=Text,Filter,DefExt
hdr=Text,Filter,DefExt
mod=Text,Filter,DefExt
Text is the text displayed. Filter is the file filter. DefExt is the default file extention.

Example (hla):
[Open]
0="Hla Files (*.hla;*.hhf),*.hla;*.hhf"
1="Resource Files (*.rc),*.rc"
2="Assembly Files (*.asm;*.inc),*.asm;*.inc"
3="Text Files (*.txt),*.txt"
4="All Files (*.*),*.*"
src="source (*.hla),*.hla,hla"
hdr="Header (*.hhf),*.hhf,hhf"
mod="Module (*.hla),*.hla,hla"

Note: if the following are not included in the assembler.ini file the defaults will be loaded from Radasm.ini

Section [MenuTools]

Tools menu.
Maintained by RadASM option settings. 

x=MenuText,Accel,T,Command     x is a number between 1 and 32. No holes allowed
  
                                                         MenuText is the text shown on the menu
  
                                                         Accel is the asigned accelerator key
  
                                                         T is used by RadASM
  
                                                         Command is the program to run. Path acronym allowed

 Section [MenuHelp] 

Help menu.
Maintained by RadASM option settings.

x=MenuText,Accel,H,HelpFile.hlp                   See MenuTools

 Section [MenuMacro]

 Keyboard macro menu.
Maintained by RadASM option settings.

x=MenuText,Accel,M,KbMacroToRun           See MenuTools
Section [F1-Help]

F1-help key asignment.
Manually maintained.

F1=HelpFile.hlp
Help file asigned to F1. Path acronym allowed
CF1=HelpFile.hlp
Help file asigned to Ctrl+F1
SF1=HelpFile.hlp
Help file asigned to Shift+F1
CSF1=HelpFile.hlp
Help file asigned to Ctrl+Shift+F1