~ubuntu-branches/ubuntu/karmic/dokuwiki/karmic

« back to all changes in this revision

Viewing changes to inc/geshi/mpasm.php

  • Committer: Bazaar Package Importer
  • Author(s): Mohammed Adnène Trojette
  • Date: 2007-03-29 19:44:52 UTC
  • mfrom: (2.1.6 feisty)
  • Revision ID: james.westby@ubuntu.com-20070329194452-8r2w798oo21ago6l
Tags: 0.0.20061106-6
* High-urgency upload for fixing RC bug.
* Make fr.po's translation of "global" consistent. (Closes: #416509)
* Remove /etc/apache*/conf.d/ on purge. (Closes: #387974)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?php
 
2
/*************************************************************************************
 
3
 * mpasm.php
 
4
 * ---------
 
5
 * Author: Bakalex (bakalex@gmail.com)
 
6
 * Copyright: (c) 2004 Bakalex, Nigel McNie (http://qbnz.com/highlighter)
 
7
 * Release Version: 1.0.7.15
 
8
 * CVS Revision Version: $Revision: 1.13.2.4 $
 
9
 * Date Started: 2004/12/6
 
10
 * Last Modified: $Date: 2006/09/23 02:05:47 $
 
11
 *
 
12
 * Microchip Assembler language file for GeSHi.
 
13
 *
 
14
 * CHANGES
 
15
 * -------
 
16
 * 2005/01/29 (1.0.0)
 
17
 *  - First Release
 
18
 *
 
19
 * TODO (updated 2005/12/6)
 
20
 * -------------------------
 
21
 *
 
22
 * For the moment, i've only added PIC16C6X registers. We need more (PIC16F/C7x/8x,
 
23
 * PIC10, PIC18 and dsPIC registers).
 
24
 * Must take a look to dsPIC instructions.
 
25
 *
 
26
 *************************************************************************************
 
27
 *
 
28
 *     This file is part of GeSHi.
 
29
 *
 
30
 *   GeSHi is free software; you can redistribute it and/or modify
 
31
 *   it under the terms of the GNU General Public License as published by
 
32
 *   the Free Software Foundation; either version 2 of the License, or
 
33
 *   (at your option) any later version.
 
34
 *
 
35
 *   GeSHi is distributed in the hope that it will be useful,
 
36
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
37
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
38
 *   GNU General Public License for more details.
 
39
 *
 
40
 *   You should have received a copy of the GNU General Public License
 
41
 *   along with GeSHi; if not, write to the Free Software
 
42
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
43
 *
 
44
 ************************************************************************************/
 
45
 
 
46
$language_data = array (
 
47
        'LANG_NAME' => 'Microchip Assembler',
 
48
        'COMMENT_SINGLE' => array(1 => ';'),
 
49
        'COMMENT_MULTI' => array(),
 
50
        'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
 
51
        'QUOTEMARKS' => array("'", '"'),
 
52
        'ESCAPE_CHAR' => '',
 
53
        'KEYWORDS' => array(
 
54
                /*Directive Language*/
 
55
                4 => array(
 
56
                        'CONSTANT', '#DEFINE', 'END', 'EQU', 'ERROR', 'ERROR-LEVEL', '#INCLUDE', 'LIST',
 
57
                        'MESSG', 'NOLIST', 'ORG', 'PAGE', 'PROCESSOR', 'RADIX', 'SET', 'SPACE', 'SUBTITLE',
 
58
                        'TITLE', '#UNDEFINE', 'VARIABLE', 'ELSE', 'ENDIF', 'ENDW', 'IF', 'IFDEF', 'IFNDEF',
 
59
                        'WHILE', '__BADRAM', 'CBLOCK', '__CONFIG', 'DA', 'DATA', 'DB', 'DE', 'DT', 'DW',
 
60
                        'ENDC', 'FILL', '__IDLOCS', '__MAXRAM', 'RES', 'ENDM', 'EXITM', 'EXPAND', 'LOCAL',
 
61
                        'MACRO', 'NOEXPAND', 'BANKISEL', 'BANKSEL', 'CODE', 'EXTERN', 'GLOBAL', 'IDATA',
 
62
                        'PAGESEL', 'UDATA', 'UDATA_ACS', 'UDATA_OVR', 'UDATA_SHR'
 
63
                  ),
 
64
                /* 12&14-bit Specific Instruction Set*/
 
65
                1 => array(
 
66
                        'andlw', 'call', 'clrwdt', 'goto', 'iorlw', 'movlw', 'option', 'retlw', 'sleep',
 
67
                        'tris', 'xorlw', 'addwf', 'andwf', 'clrf', 'clrw', 'comf', 'decf', 'decfsz', 'incf',
 
68
                        'incfsz', 'iorwf', 'movf', 'movwf', 'nop', 'rlf', 'rrf', 'subwf', 'swapf', 'xorwf',
 
69
                        'bcf', 'bsf', 'btfsc', 'btfss',
 
70
                        'addlw', 'iorlw', 'retfie', 'return', 'sublw', 'xorlw', 'addcf', 'adddcf', 'b', 'bc', 'bdc',
 
71
                        'bnc', 'bndc', 'bnz', 'bz', 'clrc', 'clrdc', 'clrz', 'lcall', 'lgoto', 'movfw',
 
72
                        'negf', 'setc', 'setdc', 'setz', 'skpc', 'skpdc', 'skpnc', 'skpndc', 'skpnz', 'skpz',
 
73
                        'subcf', 'subdcf', 'tstf'
 
74
                    ),
 
75
                /* 16-bit Specific Instructiob Set */
 
76
                2 => array (
 
77
                        'movfp', 'movlb', 'movlp', 'movpf', 'movwf', 'tablrd', 'tablwt', 'tlrd', 'tlwt',
 
78
                        'addwfc', 'daw', 'mullw', 'negw', 'rlcf', 'rlncf', 'rrcf', 'rrncf', 'setf', 'subwfb',
 
79
                        'btg', 'cpfseq', 'cpfsgt', 'cpfslt', 'dcfsnz', 'infsnz', 'tstfsz', 'lfsr', 'bnn',
 
80
                        'bnov', 'bra', 'pop', 'push', 'rcall', 'reset'
 
81
                    ),
 
82
                /* Registers */
 
83
                3 => array(
 
84
                        'INDF', 'TMR0', 'PCL', 'STATUS', 'FSR', 'PORTA', 'PORTB', 'PORTC', 'PORTD', 'PORTE',
 
85
                        'PCLATH', 'INTCON', 'PIR1', 'PIR2', 'TMR1L', 'TMR1H', 'T1CON', 'TMR2', 'T2CON', 'TMR2L',
 
86
                        'TMR2H', 'TMR0H', 'TMR0L', 'SSPBUF', 'SSPCON', 'CCPR1L', 'CCPR1H', 'CCP1CON', 'RCSTA',
 
87
                        'TXREG', 'RCREG', 'CCPR2L', 'CCPR2H', 'CCP2CON', 'OPTION', 'TRISA', 'TRISB', 'TRISC',
 
88
                        'TRISD', 'TRISE', 'PIE2', 'PIE1', 'PR2', 'SSPADD', 'SSPSTAT', 'TXSTA', 'SPBRG'
 
89
                    ),
 
90
                /*Operands*/
 
91
                5 => array(
 
92
                         'high','low'
 
93
                        )
 
94
                ),
 
95
        'SYMBOLS' => array(
 
96
                '[', ']', '(', ')'
 
97
                ),
 
98
        'CASE_SENSITIVE' => array(
 
99
                GESHI_COMMENTS => true,
 
100
                1 => false,
 
101
                2 => false,
 
102
                3 => false,
 
103
                4 => false,
 
104
                5 => false
 
105
                ),
 
106
        'STYLES' => array(
 
107
                'KEYWORDS' => array(
 
108
                        1 => 'color: #00007f;',
 
109
                        2 => 'color: #0000ff;',
 
110
                        3 => 'color: #007f00;',
 
111
                        4 => 'color: #46aa03; font-weight:bold;',
 
112
                        5 => 'color: #7f0000;',
 
113
                        6 => 'color: #7f0000;'
 
114
                        ),
 
115
                'COMMENTS' => array(
 
116
                        1 => 'color: #adadad; font-style: italic;',
 
117
                        ),
 
118
                'ESCAPE_CHAR' => array(
 
119
                        0 => 'color: #000099; font-weight: bold;'
 
120
                        ),
 
121
                'BRACKETS' => array(
 
122
                        0 => 'color: #66cc66;'
 
123
                        ),
 
124
                'STRINGS' => array(
 
125
                        0 => 'color: #7f007f;'
 
126
                        ),
 
127
                'NUMBERS' => array(
 
128
                        0 => 'color: #ff0000;'
 
129
                        ),
 
130
                'METHODS' => array(
 
131
                        ),
 
132
                'SYMBOLS' => array(
 
133
                        0 => 'color: #66cc66;'
 
134
                        ),
 
135
                'REGEXPS' => array(
 
136
                        0 => 'color: #ff0000;',
 
137
                        1 => 'color: #ff0000;'
 
138
                        ),
 
139
                'SCRIPT' => array(
 
140
                        )
 
141
                ),
 
142
        'URLS' => array(
 
143
                1 => '',
 
144
                2 => ''
 
145
                ),
 
146
        'OOLANG' => false,
 
147
        'OBJECT_SPLITTERS' => array(
 
148
                ),
 
149
        'REGEXPS' => array(
 
150
                0 => '[0-9a-fA-F][0-9a-fA-F]*[hH]',
 
151
                1 => '[01][01]*[bB]'
 
152
                ),
 
153
        'STRICT_MODE_APPLIES' => GESHI_NEVER,
 
154
        'SCRIPT_DELIMITERS' => array(
 
155
                ),
 
156
        'HIGHLIGHT_STRICT_BLOCK' => array(
 
157
                )
 
158
);
 
159
 
 
160
?>