////////////////////////////////////////////////////////////////////////////// // // 68HCS12X Assembly highlighter // // (Modified from 68HC11 highlighter written by Eden Kirin, foetus@aphex.fpz.hr) // // BMH 25/10/04 // ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// // language name Language: 68HCS12X 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: 68HCS12X Assembler files (*.asm)|*.asm ////////////////////////////////////////////////////////////////////////////// // help file which will be invokend when F1 is pressed HelpFile: ////////////////////////////////////////////////////////////////////////////// // language case sensitivity // 0 - no // 1 - yes CaseSensitive: 0 ////////////////////////////////////////////////////////////////////////////// // 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: ABA ABX ABY ADCA ADCB ADDA ADDB ADDD ADDX ADDY ADED ADEX ADEY ANDA ANDB ANDCC ANDX ANDY ASL ASLA ASLB ASLD ASLW ASLX ASLY ASR ASRA ASRB ASRW ASRX ASRY BCC BCLR BCS BEQ BGE BGND BGT BHI BHS BITA BITB BITX BITY BLE BLO BLS BLT BMI BNE BPL BRA BRCLR BRN BRSET BSET BSR BTAS BVC BVS CALL CBA CLC CLI CLR CLRA CLRB CLRW CLRX CLRY CLV CMPA CMPB COM COMA COMB COMW COMX COMY CPD CPED CPES CPEX CPEY CPS CPX CPY DAA DBEQ DBNE DEC DECA DECB DECW DECX DECY DES DEX DEY EDIV EDIVS EMACS EMAXD EMAXM EMIND EMINM EMUL EMULS EORA EORB EORX EORY ETBL EXG FDIV GLDAA GLDAB GLDD GLDS GLDX GLDY GSTAA GSTAB GSTD GSTS GSTX GSTY IBEQ IBNE IDIV IDIVS INC INCA INCB INCW INCX INCY INS INX INY JMP JSR LBCC LBCS LBEQ LBGE LBGT LBHI LBHS LBLE LBLO LBLS LBLT LBMI LBNE LBPL LBRA LBRN LBVC LBVS LDAA LDAB LDD LDS LDX LDY LEAS LEAX LEAY LSL LSLA LSLB LSLD LSR LSRA LSRB LSRD LSRW LSRX LSRY MAXA MAXM MEM MINA MINM MOVB MOVW MUL NEG NEGA NEGB NEGW NEGX NEGY NOP ORAA ORAB ORCC ORX ORY PSHA PSHB PSHC PSHCW PSHD PSHX PSHY PULA PULB PULC PULCW PULD PULX PULY REV REVW ROL ROLA ROLB ROLW ROLX ROLY ROR RORA RORB RORW RORX RORY RTC RTI RTS SBA SBCA SBCB SBED SBEX SBEY SEC SEI SEV SEX STAA STAB STD STOP STS STX STY SUBA SUBB SUBD SUBX SUBY SWI TAB TAP TBA TBEQ TBL TBNE TFR TPA TRAP TST TSTA TSTB TSTW TSTX TSTY TSX TSY TXS TYS WAI WAV XGDX XGDY // registers KeyWords2: A B D X Y SP CCR PC PARTIDH PARTIDL PARTID PORTA PORTB DDRA DDRB PORTE DDRE PORTK DDRK HPRIO BKP0H BKP0L BKP0 BKP1H BKP1L BKP1 SYNR REFDV CTFLG FORBYP CTCTL ARMCOP TIOS CFORC OC7M OC7D TCNT TTOV TC0 TC1 TC2 TC3 TC4 TC5 TC6 TC7 PACN3 PACN2 PACA PACN1 PACN0 PACB PA3H PA2H PA1H PA0H MCCNT TC0H TC1H TC2H TC3H ATDCTL0 ATDCTL1 ATDTEST0 ATDDRH0 ATDDRL0 ATDDR0 ATDDRH1 ATDDRL1 ATDDR1 ATDDRH2 ATDDRL2 ATDDR2 ATDDRH3 ATDDRL3 ATDDR3 ATDDRH4 ATDDRL4 ATDDR4 ATDDRH5 ATDDRL5 ATDDR5 ATDDRH6 ATDDRL6 ATDDR6 ATDDRH7 ATDDRL7 ATDDR7 PWMTEST PWMPRSC PWMSCLA PWMSCLB PWMSCNTA PWMSCNTB PWMCNT0 PWMCNT1 PWMCNT2 PWMCNT3 PWMCNT4 PWMCNT5 PWMCNT6 PWMCNT7 PWMPER0 PWMPER1 PWMPER2 PWMPER3 PWMPER4 PWMPER5 PWMPER6 PWMPER7 PWMDTY0 PWMDTY1 PWMDTY2 PWMDTY3 PWMDTY4 PWMDTY5 PWMDTY6 PWMDTY7 SCIBD SCIBD SPIDR // assembler directives KeyWords3: ORG FCC FCB FDB EQU RMB BSZ FILL END ////////////////////////////////////////////////////////////////////////////// // 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: 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: clNavy clWindow B Keyword2Col: clPurple clWindow Keyword3Col: clBlue clWindow IdentifierCol: clWindowText clWindow CommentCol: clGray clWindow NumberCol: clRed clWindow StringCol: clMaroon clWindow SymbolCol: clGray clWindow PreprocessorCol: clBlue clWindow SelectionCol: clWhite clNavy CurrentLineCol: clBlack clYellow OverrideTxtFgColor: 0 BlockAutoindent: 0 BlockBegStr: BlockEndStr: MatchedBracesCol: clWindowText clWindow