////////////////////////////////////////////////////////////////////////////// // // x86 Assembly highlighter written by Eden Kirin, eden.kirin@inet.hr // ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// // language name Language: ADSP21XX Assembly ////////////////////////////////////////////////////////////////////////////// // put whatever you want here, short description, author name, email address.. Description: ADSP 21XX Assembly highlighter written by Christian Gan, cgan@iders.ca ////////////////////////////////////////////////////////////////////////////// // default file filter // note: if more than one extension is associated, eg: // C/C++ files (*.c,*.cpp,*.h,*.hpp)|*.c;*.cpp;*.h;*.hpp Filter: ADSP21XX Assembler files (*.dsp)|*.dsp ////////////////////////////////////////////////////////////////////////////// // help file which will be invoked when F1 is pressed HelpFile: ////////////////////////////////////////////////////////////////////////////// // language case sensitivity // 0 - no // 1 - yes CaseSensitive: 0 ////////////////////////////////////////////////////////////////////////////// // comment type: LineComment - comment to the EOL // BlockCommentBeg - block comment begin, it could be // multiline // BlockCommentEnd - block comment end // // if there is more than one definition of line/beg/end comment string, // you can separate it with spaces. // for example, for pascal it would be: // LineComment: // // BlockCommentBeg: (* { // BlockCommentEnd: *) } 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 abcdefhxABCDEFHX ////////////////////////////////////////////////////////////////////////////// // escape character EscapeChar: ////////////////////////////////////////////////////////////////////////////// // keyword table // note: delimited with spaces, lines could be wrapped // you may divide keywords into five groups which can be // highlighted differently // op codes KeyWords1: abs and ashift by call clrbit dis divq divs dm do ena exp expadj hi hix idle if io jump lo lshift modify neg nop norm not or pass pm pop pos push reset rnd rti rts sat set setbit ss su tglbit toggle tstbit until us uu xor // registers KeyWords2: af ar ax0 ax1 ay0 ay1 mf mr mr0 mr1 mr2 mx0 mx1 my0 my1 none se si sr sr0 sr1 // index register KeyWords3: i0 i1 i2 i3 i4 i5 i6 i7 l0 l1 l2 l3 l4 l5 l6 l7 m0 m1 m2 m3 m4 m5 m6 m7 // special registers KeyWords4: ac astat av ar_set av_latch bit_rev ce cntr eq flag_in flag_out fl0 fl1 fl2 ge g_mode gt icntl ifc imask ints le loop lt m_mode mstat mv ne owrcntr pc px rx0 rx1 sb sec_reg sstat sts toppcstack tx0 tx1 timer // assembler directives KeyWords5: .const .endmod .external .global .include .init .module .var .entry ////////////////////////////////////////////////////////////////////////////// // string delimiter: StringBegChar - string begin char // StringEndChar - string end char // MultilineStrings - enables multiline strings, as perl // has it StringBegChar: ' [ StringEndChar: ' ] MultilineStrings: 0 ////////////////////////////////////////////////////////////////////////////// // use preprocessor: 0 - no // 1 - yes // note: if yes, '#' and statements after it will be // highlighted with Preprocessor defined colors UsePreprocessor: 1 ////////////////////////////////////////////////////////////////////////////// // 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 Keyword2Col: clGreen clWindow Keyword3Col: clMaroon clWindow Keyword4Col: clRed clWindow Keyword5Col: clNavy clWindow IdentifierCol: clWindowText clWindow CommentCol: clGray clWindow NumberCol: clRed clWindow StringCol: clNavy clWindow SymbolCol: clBlack clWindow PreprocessorCol: clTeal clWindow SelectionCol: clWhite clNavy CurrentLineCol: clBlack clYellow OverrideTxtFgColor: 0 BlockAutoindent: 0 BlockBegStr: BlockEndStr: MatchedBracesCol: clWindowText clWindow