mpasm.php

gehe zur Dokumentation dieser Datei
00001 <?php
00002 /*************************************************************************************
00003  * mpasm.php
00004  * ---------
00005  * Author: Bakalex (bakalex@gmail.com)
00006  * Copyright: (c) 2004 Bakalex, Nigel McNie (http://qbnz.com/highlighter)
00007  * Release Version: 1.0.7.20
00008  * Date Started: 2004/12/6
00009  *
00010  * Microchip Assembler language file for GeSHi.
00011  *
00012  * CHANGES
00013  * -------
00014  * 2005/01/29 (1.0.0)
00015  *  - First Release
00016  *
00017  * TODO (updated 2005/12/6)
00018  * -------------------------
00019  *
00020  * For the moment, i've only added PIC16C6X registers. We need more (PIC16F/C7x/8x,
00021  * PIC10, PIC18 and dsPIC registers).
00022  * Must take a look to dsPIC instructions.
00023  *
00024  *************************************************************************************
00025  *
00026  *     This file is part of GeSHi.
00027  *
00028  *   GeSHi is free software; you can redistribute it and/or modify
00029  *   it under the terms of the GNU General Public License as published by
00030  *   the Free Software Foundation; either version 2 of the License, or
00031  *   (at your option) any later version.
00032  *
00033  *   GeSHi is distributed in the hope that it will be useful,
00034  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
00035  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00036  *   GNU General Public License for more details.
00037  *
00038  *   You should have received a copy of the GNU General Public License
00039  *   along with GeSHi; if not, write to the Free Software
00040  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00041  *
00042  ************************************************************************************/
00043 
00044 $language_data = array (
00045      'LANG_NAME' => 'Microchip Assembler',
00046      'COMMENT_SINGLE' => array(1 => ';'),
00047      'COMMENT_MULTI' => array(),
00048      'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
00049      'QUOTEMARKS' => array("'", '"'),
00050      'ESCAPE_CHAR' => '',
00051      'KEYWORDS' => array(
00052           /*Directive Language*/
00053           4 => array(
00054                'CONSTANT', '#DEFINE', 'END', 'EQU', 'ERROR', 'ERROR-LEVEL', '#INCLUDE', 'LIST',
00055                'MESSG', 'NOLIST', 'ORG', 'PAGE', 'PROCESSOR', 'RADIX', 'SET', 'SPACE', 'SUBTITLE',
00056                'TITLE', '#UNDEFINE', 'VARIABLE', 'ELSE', 'ENDIF', 'ENDW', 'IF', 'IFDEF', 'IFNDEF',
00057                'WHILE', '__BADRAM', 'CBLOCK', '__CONFIG', 'DA', 'DATA', 'DB', 'DE', 'DT', 'DW',
00058                'ENDC', 'FILL', '__IDLOCS', '__MAXRAM', 'RES', 'ENDM', 'EXITM', 'EXPAND', 'LOCAL',
00059                'MACRO', 'NOEXPAND', 'BANKISEL', 'BANKSEL', 'CODE', 'EXTERN', 'GLOBAL', 'IDATA',
00060                'PAGESEL', 'UDATA', 'UDATA_ACS', 'UDATA_OVR', 'UDATA_SHR'
00061             ),
00062           /* 12&14-bit Specific Instruction Set*/
00063           1 => array(
00064                'andlw', 'call', 'clrwdt', 'goto', 'iorlw', 'movlw', 'option', 'retlw', 'sleep',
00065                'tris', 'xorlw', 'addwf', 'andwf', 'clrf', 'clrw', 'comf', 'decf', 'decfsz', 'incf',
00066                'incfsz', 'iorwf', 'movf', 'movwf', 'nop', 'rlf', 'rrf', 'subwf', 'swapf', 'xorwf',
00067                'bcf', 'bsf', 'btfsc', 'btfss',
00068                'addlw', 'iorlw', 'retfie', 'return', 'sublw', 'xorlw', 'addcf', 'adddcf', 'b', 'bc', 'bdc',
00069                'bnc', 'bndc', 'bnz', 'bz', 'clrc', 'clrdc', 'clrz', 'lcall', 'lgoto', 'movfw',
00070                'negf', 'setc', 'setdc', 'setz', 'skpc', 'skpdc', 'skpnc', 'skpndc', 'skpnz', 'skpz',
00071                'subcf', 'subdcf', 'tstf'
00072               ),
00073           /* 16-bit Specific Instructiob Set */
00074           2 => array (
00075                'movfp', 'movlb', 'movlp', 'movpf', 'movwf', 'tablrd', 'tablwt', 'tlrd', 'tlwt',
00076                'addwfc', 'daw', 'mullw', 'negw', 'rlcf', 'rlncf', 'rrcf', 'rrncf', 'setf', 'subwfb',
00077                'btg', 'cpfseq', 'cpfsgt', 'cpfslt', 'dcfsnz', 'infsnz', 'tstfsz', 'lfsr', 'bnn',
00078                'bnov', 'bra', 'pop', 'push', 'rcall', 'reset'
00079               ),
00080           /* Registers */
00081           3 => array(
00082                'INDF', 'TMR0', 'PCL', 'STATUS', 'FSR', 'PORTA', 'PORTB', 'PORTC', 'PORTD', 'PORTE',
00083                'PCLATH', 'INTCON', 'PIR1', 'PIR2', 'TMR1L', 'TMR1H', 'T1CON', 'TMR2', 'T2CON', 'TMR2L',
00084                'TMR2H', 'TMR0H', 'TMR0L', 'SSPBUF', 'SSPCON', 'CCPR1L', 'CCPR1H', 'CCP1CON', 'RCSTA',
00085                'TXREG', 'RCREG', 'CCPR2L', 'CCPR2H', 'CCP2CON', 'OPTION', 'TRISA', 'TRISB', 'TRISC',
00086                'TRISD', 'TRISE', 'PIE2', 'PIE1', 'PR2', 'SSPADD', 'SSPSTAT', 'TXSTA', 'SPBRG'
00087               ),
00088           /*Operands*/
00089           5 => array(
00090                 'high','low'
00091                )
00092           ),
00093      'SYMBOLS' => array(
00094           '[', ']', '(', ')'
00095           ),
00096      'CASE_SENSITIVE' => array(
00097           GESHI_COMMENTS => true,
00098           1 => false,
00099           2 => false,
00100           3 => false,
00101           4 => false,
00102           5 => false
00103           ),
00104      'STYLES' => array(
00105           'KEYWORDS' => array(
00106                1 => 'color: #00007f;',
00107                2 => 'color: #0000ff;',
00108                3 => 'color: #007f00;',
00109                4 => 'color: #46aa03; font-weight:bold;',
00110                5 => 'color: #7f0000;',
00111                6 => 'color: #7f0000;'
00112                ),
00113           'COMMENTS' => array(
00114                1 => 'color: #adadad; font-style: italic;',
00115                ),
00116           'ESCAPE_CHAR' => array(
00117                0 => 'color: #000099; font-weight: bold;'
00118                ),
00119           'BRACKETS' => array(
00120                0 => 'color: #66cc66;'
00121                ),
00122           'STRINGS' => array(
00123                0 => 'color: #7f007f;'
00124                ),
00125           'NUMBERS' => array(
00126                0 => 'color: #ff0000;'
00127                ),
00128           'METHODS' => array(
00129                ),
00130           'SYMBOLS' => array(
00131                0 => 'color: #66cc66;'
00132                ),
00133           'REGEXPS' => array(
00134                0 => 'color: #ff0000;',
00135                1 => 'color: #ff0000;'
00136                ),
00137           'SCRIPT' => array(
00138                )
00139           ),
00140      'URLS' => array(
00141           1 => '',
00142           2 => ''
00143           ),
00144      'OOLANG' => false,
00145      'OBJECT_SPLITTERS' => array(
00146           ),
00147      'REGEXPS' => array(
00148           0 => '[0-9a-fA-F]{1,32}[hH]',
00149           1 => '[01]{1,64}[bB]'
00150           ),
00151      'STRICT_MODE_APPLIES' => GESHI_NEVER,
00152      'SCRIPT_DELIMITERS' => array(
00153           ),
00154      'HIGHLIGHT_STRICT_BLOCK' => array(
00155           )
00156 );
00157 
00158 ?>

Erzeugt am Thu May 14 00:55:48 2009 für OpenRat von  doxygen 1.5.8