////////////////////////////////////////////////////////////////////////////// // // ADMC401 Assembler // // Supported by Marek Korzeniewski // ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// // language name Language: ADMC401 Assembler ////////////////////////////////////////////////////////////////////////////// // default file filter // note: if more than one extension is associated, eg: // C/C++ files (*.c,*.cpp,*.h,*.hpp)|*.c;*.cpp;*.h;*.hpp Filter: ADMC401 Assembler files (*.dsp)|*.dsp ////////////////////////////////////////////////////////////////////////////// // help file which will be invokend when F1 is pressed HelpFile: ////////////////////////////////////////////////////////////////////////////// // language case sensitivity // 0 - no // 1 - yes CaseSensitive: 0 ////////////////////////////////////////////////////////////////////////////// // use preprocessor: 0 - no // 1 - yes // note: if yes, '#' and statements after it will be // highlighted with Preprocessor defined colors UsePreprocessor: 1 ////////////////////////////////////////////////////////////////////////////// // comment type: LineComment - comment to the end of line // BlockCommentBeg - block comment begin, it could be // multiline // BlockCommentEnd - block comment end LineComment: BlockCommentBeg: { BlockCommentEnd: } ////////////////////////////////////////////////////////////////////////////// // identifier characters // note: characters shouldn't be delimited, except arrays // array of chars could be defined as from_char..to_char IdentifierBegChars: a..z A..Z _%@. IdentifierChars: a..z A..Z _ 0..9 ? ////////////////////////////////////////////////////////////////////////////// // numeric constants begin characters // note: characters shouldn't be delimited, except arrays // array of chars could be defined as from_char..to_char // number always starts with 0..9 except when NumConstBeg // defines other NumConstBegChars: 0..9 ////////////////////////////////////////////////////////////////////////////// // numeric constants characters // note: characters shouldn't be delimited, except arrays // array of chars could be defined as from_char..to_char // number always starts with 0..9 except when NumConstBeg // defines other NumConstChars: 0..9 abcdefhABCDEFH ////////////////////////////////////////////////////////////////////////////// // escape character EscapeChar: ////////////////////////////////////////////////////////////////////////////// // keyword table // note: delimited with spaces, lines could be wrapped // you may divide keywords into two groups which can be // highlighted differently // op codes KeyWords1: NOP JUMP IF DM PM MR AND OR XOR NOT PASS ABS TSTBIT SETBIT CLRBIT TGLBIT DIVS DIVQ NONE EQ NE LT GE LE GT AC AV MV NEG POS CE FLAG_IN CALL IO ASHIFT LSHIFT NORM HI LO HIX DMOVLAY PMOVLAY SEC_REG BIT_REV AV_LATCH AR_SAT M_MODE TIMER G_ENABLE ENA DIS INTS FOREVER END .ENDMOD ENDMOD RET RTI .CONST CONST .VAR VAR RAM INIT .INIT RTS .global global CIRC // registers KeyWords2: ax0 ax1 ar mr0 mr1 mr2 sr0 sr1 ay0 ay1 af mx0 mx1 mr0 mr1 mr2 sr0 sr1 my0 my1 mf i0 i1 i2 i3 i4 i5 i6 i7 m0 m1 m2 m3 m4 m5 m6 m7 l0 l1 l2 l3 l4 l5 l6 l7 ifc imask astat mstat icntl sstat KeyWords3: PWM_Init ADC_Init DAC_Init DAC_Pause ADC_Read DAC_Update PWM_Init_ DAC_Put PWM_update_demanded_Voltage PWM_update_dutycycles DAC_Resume EEPROM16_INIT_IFC EEPROM16_EWEN EEPROM16_EWDS EEPROM16_ERAL EEPROM16_ERASE EEPROM16_READ EEPROM16_WRITE EEPROM16_WRAL I_timer_init Set_timer_period_val Start_timer Stop_timer Set_DAG_registers_for_math_function Square_Root Log10 LogN Inverse Signed_Division Init_PI16 PI16 Init_PI32 PI32 Set_DAG_registers_for_trigonometric Sin Cos Atan refframe_Set_DAG_registers_for_transformations refframe_Forward_Clarke refframe_Reverse_Clarke refframe_Forward_Park_angle refframe_Reverse_Park_angle efframe_Calc_SinCos refframe_Forward_Park_SinCos refframe_Reverse_Park_SinCos UART0_Init UART0_Write UART0_Read ADC_INIT_ ADC_Scale_ DAC_Init_ DAC_Update_ DAC_Pause_ AC_Resume_ ////////////////////////////////////////////////////////////////////////////// // string delimiter: StringBegChar - string begin char // StringEndChar - string end char // MultilineStrings - enables multiline strings, as perl // has it StringBegChar: " StringEndChar: " MultilineStrings: 0 ////////////////////////////////////////////////////////////////////////////// // highlight line: 0 - no // 1 - yes // note: if yes, current line will be highlighted CurrLineHighlighted: 1 ////////////////////////////////////////////////////////////////////////////// // colors // note: first value is foreground, second is background color // and third (optional) represents font attribute: // B - bold // I - italic // U - underline // S - strike out // attributes can be combined: eg. B or BI // as value, it could be used any standard windows color: // clBlack, clMaroon, clGreen, clOlive, clNavy, // clPurple, clTeal, clGray, clSilver, clRed, clLime, // clYellow, clBlue, clFuchsia, clAqua, clLtGray, // clDkGray, clWhite, clScrollBar, clBackground, // clActiveCaption, clInactiveCaption, clMenu, clWindow, // clWindowFrame, clMenuText, clWindowText, clCaptionText, // clActiveBorder, clInactiveBorder, clAppWorkSpace, // clHighlight, clHighlightText, clBtnFace, clBtnShadow, // clGrayText, clBtnText, clInactiveCaptionText, // clBtnHighlight, cl3DDkShadow, cl3DLight, clInfoText, // clInfoBk // as value, it could be used hex numeric constant too: // $BBGGRR - BB: blue, GG: green, RR: red, eg: $FF6A00 SpaceCol: clWindowText clWindow Keyword1Col: clBlue clWindow B Keyword2Col: $000000AA clWindow B Keyword3Col: $00C6C600 clWindow B IdentifierCol: clWindowText clWindow CommentCol: clGreen clWindow I NumberCol: clRed clWindow StringCol: clMaroon clWindow SymbolCol: $00707070 clWindow PreprocessorCol: clNavy clWindow B SelectionCol: clWhite clNavy CurrentLineCol: clBlack clYellow OverrideTxtFgColor: 0 BlockAutoindent: 0 BlockBegStr: BlockEndStr: MatchedBracesCol: clWindowText clWindow