KXStudio Website https://kx.studio/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

144 lines
4.6KB

  1. <?php
  2. /*************************************************************************************
  3. * z80.php
  4. * -------
  5. * Author: Benny Baumann (BenBE@omorphia.de)
  6. * Copyright: (c) 2007-2008 Benny Baumann (http://www.omorphia.de/)
  7. * Release Version: 1.0.8.11
  8. * Date Started: 2007/02/06
  9. *
  10. * ZiLOG Z80 Assembler language file for GeSHi.
  11. * Syntax definition as commonly used with table assembler TASM32
  12. * This file will contain some undocumented opcodes.
  13. *
  14. * CHANGES
  15. * -------
  16. * 2008/05/23 (1.0.7.22)
  17. * - Added description of extra language features (SF#1970248)
  18. * 2007/06/03 (1.0.1)
  19. * - Fixed two typos in the language file
  20. * 2007/02/06 (1.0.0)
  21. * - First Release
  22. *
  23. * TODO (updated 2007/02/06)
  24. * -------------------------
  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. $language_data = array (
  46. 'LANG_NAME' => 'ZiLOG Z80 Assembler',
  47. 'COMMENT_SINGLE' => array(1 => ';'),
  48. 'COMMENT_MULTI' => array(),
  49. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  50. 'QUOTEMARKS' => array("'", '"'),
  51. 'ESCAPE_CHAR' => '',
  52. 'KEYWORDS' => array(
  53. /*CPU*/
  54. 1 => array(
  55. 'adc','add','and','bit','call','ccf','cp','cpd','cpdr','cpir','cpi',
  56. 'cpl','daa','dec','di','djnz','ei','ex','exx','halt','im','in',
  57. 'in0','inc','ind','indr','inir','ini','jp','jr','ld','ldd','lddr',
  58. 'ldir','ldi','mlt','neg','nop','or','otdm','otdmr','otdr','otim',
  59. 'otimr','otir','out','out0','outd','outi','pop','push','res','ret',
  60. 'reti','retn','rl','rla','rlc','rlca','rld','rr','rra','rrc','rrca',
  61. 'rrd','rst','sbc','scf','set','sla','sl1','sll','slp','sra','srl',
  62. 'sub','tst','tstio','xor'
  63. ),
  64. /*registers*/
  65. 2 => array(
  66. 'a','b','c','d','e','h','l',
  67. 'af','bc','de','hl','ix','iy','sp',
  68. 'af\'','ixh','ixl','iyh','iyl'
  69. ),
  70. /*Directive*/
  71. 3 => array(
  72. '#define','#endif','#else','#ifdef','#ifndef','#include','#undef',
  73. '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ'
  74. ),
  75. ),
  76. 'SYMBOLS' => array(
  77. '[', ']', '(', ')', '?', '+', '-', '*', '/', '%', '$'
  78. ),
  79. 'CASE_SENSITIVE' => array(
  80. GESHI_COMMENTS => false,
  81. 1 => false,
  82. 2 => false,
  83. 3 => false,
  84. ),
  85. 'STYLES' => array(
  86. 'KEYWORDS' => array(
  87. 1 => 'color: #0000ff; font-weight:bold;',
  88. 2 => 'color: #0000ff;',
  89. 3 => 'color: #46aa03; font-weight:bold;'
  90. ),
  91. 'COMMENTS' => array(
  92. 1 => 'color: #adadad; font-style: italic;',
  93. ),
  94. 'ESCAPE_CHAR' => array(
  95. 0 => 'color: #000099; font-weight: bold;'
  96. ),
  97. 'BRACKETS' => array(
  98. 0 => 'color: #0000ff;'
  99. ),
  100. 'STRINGS' => array(
  101. 0 => 'color: #7f007f;'
  102. ),
  103. 'NUMBERS' => array(
  104. 0 => 'color: #dd22dd;'
  105. ),
  106. 'METHODS' => array(
  107. ),
  108. 'SYMBOLS' => array(
  109. 0 => 'color: #008000;'
  110. ),
  111. 'REGEXPS' => array(
  112. 0 => 'color: #22bbff;',
  113. 1 => 'color: #22bbff;',
  114. 2 => 'color: #993333;'
  115. ),
  116. 'SCRIPT' => array(
  117. )
  118. ),
  119. 'URLS' => array(
  120. 1 => '',
  121. 2 => '',
  122. 3 => ''
  123. ),
  124. 'OOLANG' => false,
  125. 'OBJECT_SPLITTERS' => array(
  126. ),
  127. 'REGEXPS' => array(
  128. //Hex numbers
  129. 0 => '0[0-9a-fA-F]{1,32}[hH]',
  130. //Binary numbers
  131. 1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)',
  132. //Labels
  133. 2 => '^[_a-zA-Z][_a-zA-Z0-9]?\:'
  134. ),
  135. 'STRICT_MODE_APPLIES' => GESHI_NEVER,
  136. 'SCRIPT_DELIMITERS' => array(
  137. ),
  138. 'HIGHLIGHT_STRICT_BLOCK' => array(
  139. ),
  140. 'TAB_WIDTH' => 8
  141. );
  142. ?>