1<?php 2/************************************************************************************* 3 * 68000devpac.php 4 * ------- 5 * Author: Warren Willmey 6 * Copyright: (c) 2010 Warren Willmey. 7 * Release Version: 1.0.9.1 8 * Date Started: 2010/06/09 9 * 10 * Motorola 68000 - HiSoft Devpac ST 2 Assembler language file for GeSHi. 11 * 12 * CHANGES 13 * ------- 14 * 2010/07/22 15 * - First Release 16 * 17 * TODO (updated 2010/07/22) 18 * ------------------------- 19 * 20 ************************************************************************************* 21 * 22 * This file is part of GeSHi. 23 * 24 * GeSHi is free software; you can redistribute it and/or modify 25 * it under the terms of the GNU General Public License as published by 26 * the Free Software Foundation; either version 2 of the License, or 27 * (at your option) any later version. 28 * 29 * GeSHi is distributed in the hope that it will be useful, 30 * but WITHOUT ANY WARRANTY; without even the implied warranty of 31 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 32 * GNU General Public License for more details. 33 * 34 * You should have received a copy of the GNU General Public License 35 * along with GeSHi; if not, write to the Free Software 36 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 37 * 38 ************************************************************************************/ 39 40$language_data = array ( 41 'LANG_NAME' => 'Motorola 68000 - HiSoft Devpac ST 2 Assembler format', 42 'COMMENT_SINGLE' => array(1 => ';'), 43 'COMMENT_MULTI' => array(), 44 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 45 'QUOTEMARKS' => array("'", '"'), 46 'ESCAPE_CHAR' => '', 47 'KEYWORDS' => array( 48 /* Directives. */ 49 1 => array( 50 'end', 'include', 'incbin', 'opt', 'even', 'cnop', 'dc.b', 'dc.w', 51 'dc.l', 'ds.b', 'ds.w', 'ds.l', 'dcb.b', 'dcb.w', 'dcb.l', 52 'fail', 'output', '__g2', 'rept', 'endr', 'list', 'nolist', 'plen', 53 'llen', 'ttl', 'subttl', 'spc', 'page', 'listchar', 'format', 54 'equ', 'equr', 'set', 'reg', 'rs.b', 'rs.w', 'rs.l', 'rsreset', 55 'rsset', '__rs', 'ifeq', 'ifne', 'ifgt', 'ifge', 'iflt', 'ifle', 'endc', 56 'ifd', 'ifnd', 'ifc', 'ifnc', 'elseif', 'iif', 'macro', 'endm', 'mexit', 57 'narg', '\@', 'section', 'text', 'data', 'bss', 'xdef', 'xref', 'org', 58 'offset', '__lk', 'comment', 59 ), 60 /* 68000 Opcodes. */ 61 2 => array( 62 'abcd', 'add', 'adda', 'addi', 'addq', 'addx', 'and', 'andi', 63 'asl', 'asr', 'bcc', 'bchg', 'bclr', 'bcs', 'beq', 'bge', 64 'bgt', 'bhi', 'ble', 'bls', 'blt', 'bmi', 'bne', 'bpl', 65 'bra', 'bset', 'bsr', 'btst', 'bvc', 'bvs', 'chk', 'clr', 66 'cmp', 'cmpa', 'cmpi', 'cmpm', 'dbcc', 'dbcs', 'dbeq', 'dbf', 67 'dbge', 'dbgt', 'dbhi', 'dble', 'dbls', 'dblt', 'dbmi', 'dbne', 68 'dbpl', 'dbra', 'dbt', 'dbvc', 'dbvs', 'divs', 'divu', 'eor', 69 'eori', 'exg', 'ext','illegal','jmp', 'jsr', 'lea', 'link', 70 'lsl', 'lsr', 'move','movea','movem','movep','moveq', 'muls', 71 'mulu', 'nbcd', 'neg', 'negx', 'nop', 'not', 'or', 'ori', 72 'pea', 'reset', 'rol', 'ror', 'roxl', 'roxr', 'rte', 'rtr', 73 'rts', 'sbcd', 'scc', 'scs', 'seq', 'sf', 'sge', 'sgt', 74 'shi', 'sle', 'sls', 'slt', 'smi', 'sne', 'spl', 'st', 75 'stop', 'sub', 'suba', 'subi', 'subq', 'subx', 'svc', 'svs', 76 'swap', 'tas', 'trap','trapv', 'tst', 'unlk', 77 ), 78 /* oprand sizes. */ 79 3 => array( 80 'b', 'w', 'l' , 's' 81 ), 82 /* 68000 Registers. */ 83 4 => array( 84 'd0', 'd1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7', 85 'a0', 'a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'sp', 'usp', 'ssp', 86 'pc', 'ccr', 'sr', 87 ), 88 ), 89 'SYMBOLS' => array( 90// '[', ']', '(', ')', '{', '}', // These are already defined by GeSHi as BRACKETS. 91 '+', '-', '~', '<<', '>>', '&', 92 '!', '^', '*', '/', '=', '<', '>', 93 ), 94 'CASE_SENSITIVE' => array( 95 GESHI_COMMENTS => false, 96 1 => false, 97 2 => false, 98 3 => false, 99 4 => false, 100 ), 101 'STYLES' => array( 102 'KEYWORDS' => array( 103 1 => 'color: #f08; font-weight:bold;', 104 2 => 'color: #00f; font-weight:bold;', 105 3 => 'color: #00f; font-weight:bold;', 106 4 => 'color: #080; font-weight:bold;', 107 ), 108 'COMMENTS' => array( 109 1 => 'color: #999; font-style: italic;', 110 ), 111 'ESCAPE_CHAR' => array( 112 0 => 'color: #009; font-weight: bold;' 113 ), 114 'BRACKETS' => array( 115 0 => 'color: #000;' 116 ), 117 'STRINGS' => array( 118 0 => 'color: #080;' 119 ), 120 'NUMBERS' => array( 121 GESHI_NUMBER_INT_BASIC => 'color: #f00;', 122 GESHI_NUMBER_HEX_PREFIX_DOLLAR => 'color: #f00;', 123 GESHI_NUMBER_BIN_PREFIX_PERCENT => 'color: #f00;', 124 GESHI_NUMBER_OCT_PREFIX_AT => 'color: #f00;', 125 ), 126 'METHODS' => array( 127 ), 128 'SYMBOLS' => array( 129 0 => 'color: #080;' 130 ), 131 'REGEXPS' => array( 132 0 => 'color: #933;' 133 ), 134 'SCRIPT' => array( 135 ) 136 ), 137 'URLS' => array( 138 1 => '', 139 2 => '', 140 3 => '', 141 4 => '', 142 ), 143 'OOLANG' => false, 144 'OBJECT_SPLITTERS' => array( 145 ), 146 'NUMBERS' => 147 GESHI_NUMBER_INT_BASIC | 148 GESHI_NUMBER_HEX_PREFIX_DOLLAR | 149 GESHI_NUMBER_OCT_PREFIX_AT | 150 GESHI_NUMBER_BIN_PREFIX_PERCENT, 151 'REGEXPS' => array( 152 //Labels may end in a colon. 153 0 => '(?<=\A\x20|\r|\n|^)[\._a-zA-Z][\._a-zA-Z0-9]*[\:]?[\s]' 154 ), 155 'STRICT_MODE_APPLIES' => GESHI_NEVER, 156 'SCRIPT_DELIMITERS' => array( 157 ), 158 'HIGHLIGHT_STRICT_BLOCK' => array( 159 ), 160 'TAB_WIDTH' => 8, 161 'PARSER_CONTROL' => array( 162 'NUMBERS' => array( 163 'PRECHECK_RX' => '/[\da-fA-F\.\$\%\@]/' 164 ) 165 ) 166); 167