190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber<?php
290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber/*************************************************************************************
390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * z80.php
490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * -------
590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * Author: Benny Baumann (BenBE@omorphia.de)
690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * Copyright: (c) 2007-2008 Benny Baumann (http://www.omorphia.de/)
790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * Release Version: 1.0.8.3
890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * Date Started: 2007/02/06
990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
1090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * ZiLOG Z80 Assembler language file for GeSHi.
1190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * Syntax definition as commonly used with table assembler TASM32
1290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * This file will contain some undocumented opcodes.
1390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
1490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * CHANGES
1590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * -------
1690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * 2008/05/23 (1.0.7.22)
1790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   -  Added description of extra language features (SF#1970248)
1890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * 2007/06/03 (1.0.1)
1990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   -  Fixed two typos in the language file
2090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * 2007/02/06 (1.0.0)
2190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   -  First Release
2290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
2390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * TODO (updated 2007/02/06)
2490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber * -------------------------
2590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
2690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *************************************************************************************
2790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
2890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *     This file is part of GeSHi.
2990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
3090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   GeSHi is free software; you can redistribute it and/or modify
3190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   it under the terms of the GNU General Public License as published by
3290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   the Free Software Foundation; either version 2 of the License, or
3390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   (at your option) any later version.
3490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
3590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   GeSHi is distributed in the hope that it will be useful,
3690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   but WITHOUT ANY WARRANTY; without even the implied warranty of
3790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   GNU General Public License for more details.
3990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
4090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   You should have received a copy of the GNU General Public License
4190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   along with GeSHi; if not, write to the Free Software
4290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
4390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber *
4490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber ************************************************************************************/
4590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
4690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber$language_data = array (
4790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'LANG_NAME' => 'ZiLOG Z80 Assembler',
4890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'COMMENT_SINGLE' => array(1 => ';'),
4990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'COMMENT_MULTI' => array(),
5090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
5190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'QUOTEMARKS' => array("'", '"'),
5290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'ESCAPE_CHAR' => '',
5390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'KEYWORDS' => array(
5490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        /*CPU*/
5590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        1 => array(
5690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'adc','add','and','bit','call','ccf','cp','cpd','cpdr','cpir','cpi',
5790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'cpl','daa','dec','di','djnz','ei','ex','exx','halt','im','in',
5890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'in0','inc','ind','indr','inir','ini','jp','jr','ld','ldd','lddr',
5990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'ldir','ldi','mlt','neg','nop','or','otdm','otdmr','otdr','otim',
6090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'otimr','otir','out','out0','outd','outi','pop','push','res','ret',
6190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'reti','retn','rl','rla','rlc','rlca','rld','rr','rra','rrc','rrca',
6290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'rrd','rst','sbc','scf','set','sla','sl1','sll','slp','sra','srl',
6390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'sub','tst','tstio','xor'
6490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
6590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        /*registers*/
6690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        2 => array(
6790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'a','b','c','d','e','h','l',
6890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'af','bc','de','hl','ix','iy','sp',
6990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            'af\'','ixh','ixl','iyh','iyl'
7090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
7190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        /*Directive*/
7290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        3 => array(
7390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            '#define','#endif','#else','#ifdef','#ifndef','#include','#undef',
7490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ'
7590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
7690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
7790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'SYMBOLS' => array(
7890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        '[', ']', '(', ')', '?', '+', '-', '*', '/', '%', '$'
7990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
8090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'CASE_SENSITIVE' => array(
8190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        GESHI_COMMENTS => false,
8290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        1 => false,
8390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        2 => false,
8490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        3 => false,
8590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
8690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'STYLES' => array(
8790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'KEYWORDS' => array(
8890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            1 => 'color: #0000ff; font-weight:bold;',
8990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            2 => 'color: #0000ff;',
9090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            3 => 'color: #46aa03; font-weight:bold;'
9190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
9290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'COMMENTS' => array(
9390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            1 => 'color: #adadad; font-style: italic;',
9490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
9590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'ESCAPE_CHAR' => array(
9690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            0 => 'color: #000099; font-weight: bold;'
9790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
9890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'BRACKETS' => array(
9990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            0 => 'color: #0000ff;'
10090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
10190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'STRINGS' => array(
10290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            0 => 'color: #7f007f;'
10390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
10490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'NUMBERS' => array(
10590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            0 => 'color: #dd22dd;'
10690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
10790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'METHODS' => array(
10890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
10990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'SYMBOLS' => array(
11090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            0 => 'color: #008000;'
11190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
11290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'REGEXPS' => array(
11390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            0 => 'color: #22bbff;',
11490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            1 => 'color: #22bbff;',
11590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            2 => 'color: #993333;'
11690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            ),
11790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        'SCRIPT' => array(
11890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber            )
11990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
12090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'URLS' => array(
12190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        1 => '',
12290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        2 => '',
12390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        3 => ''
12490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
12590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'OOLANG' => false,
12690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'OBJECT_SPLITTERS' => array(
12790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
12890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'REGEXPS' => array(
12990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        //Hex numbers
13090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        0 => '0[0-9a-fA-F]{1,32}[hH]',
13190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        //Binary numbers
13290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        1 => '\%[01]{1,64}|[01]{1,64}[bB]?',
13390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        //Labels
13490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        2 => '^[_a-zA-Z][_a-zA-Z0-9]?\:'
13590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
13690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'STRICT_MODE_APPLIES' => GESHI_NEVER,
13790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'SCRIPT_DELIMITERS' => array(
13890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
13990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'HIGHLIGHT_STRICT_BLOCK' => array(
14090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber        ),
14190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    'TAB_WIDTH' => 8
14290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber);
14390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
14490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber?>
145