gnuasm68k.xml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE language SYSTEM "language.dtd">
  3. <!--
  4. Please feel free to post your comments and suggestions at this address:
  5. http://www.yaronet.com/en/posts.php?s=52890
  6. *************************************************************************
  7. * *
  8. * Syntax highlighting for the GNU Assembler *
  9. * Copyright (C) 2002, John Zaitseff *
  10. * *
  11. *************************************************************************
  12. Modified: Spectras <spectras@etherdream.org>
  13. Date: 14th November, 2004
  14. Version: 1.03.1
  15. Updated: Roland Pabel <roland@pabel.name>
  16. Date: 15th August, 2002
  17. Version: 1.01
  18. Author: John Zaitseff <J.Zaitseff@zap.org.au>
  19. Date: 15th April, 2002
  20. Version: 1.0
  21. This file contains the XML syntax highlighting description for the GNU
  22. Assembler, for KATE, the KDE Advanced Editor. Keywords have been taken
  23. directly from the GNU Assembler source code (read.c).
  24. Recognized assembly instructions are that of Motorola's Programmer
  25. Reference Manual.
  26. Known problems: Floating point highlighting does not work correctly.
  27. This program, including associated files, is free software. You may
  28. distribute it and/or modify it under the terms of the GNU General Public
  29. License as published by the Free Software Foundation; either Version 2 of
  30. the license, or (at your option) any later version.
  31. This program is distributed in the hope that it will be useful, but
  32. WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  33. or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  34. for more details.
  35. You should have received a copy of the GNU General Public License along
  36. with this program; if not, write to the Free Software Foundation, Inc.,
  37. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  38. -->
  39. <language name="GNU Assembler 68k" version="1.03.1" kateversion="2.1" section="Sources" extensions="*.s;*.S" mimetype="text/x-asm">
  40. <highlighting>
  41. <list name="keywords">
  42. <item>abort</item>
  43. <item>align</item>
  44. <item>appfile</item>
  45. <item>appline</item>
  46. <item>ascii</item>
  47. <item>asciz</item>
  48. <item>balign</item>
  49. <item>balignl</item>
  50. <item>balignw</item>
  51. <item>byte</item>
  52. <item>comm</item>
  53. <item>common.s</item>
  54. <item>common</item>
  55. <item>data</item>
  56. <item>dc.b</item>
  57. <item>dc.d</item>
  58. <item>dc.l</item>
  59. <item>dc.s</item>
  60. <item>dc.w</item>
  61. <item>dc.x</item>
  62. <item>dc</item>
  63. <item>dcb.b</item>
  64. <item>dcb.d</item>
  65. <item>dcb.l</item>
  66. <item>dcb.s</item>
  67. <item>dcb.w</item>
  68. <item>dcb.x</item>
  69. <item>dcb</item>
  70. <item>debug</item>
  71. <item>def</item>
  72. <item>desc</item>
  73. <item>dim</item>
  74. <item>double</item>
  75. <item>ds.b</item>
  76. <item>ds.d</item>
  77. <item>ds.l</item>
  78. <item>ds.p</item>
  79. <item>ds.s</item>
  80. <item>ds.w</item>
  81. <item>ds.x</item>
  82. <item>ds</item>
  83. <item>dsect</item>
  84. <item>eject</item>
  85. <item>else</item>
  86. <item>elsec</item>
  87. <item>elseif</item>
  88. <item>end</item>
  89. <item>endc</item>
  90. <item>endef</item>
  91. <item>endfunc</item>
  92. <item>endif</item>
  93. <item>endm</item>
  94. <item>endr</item>
  95. <item>equ</item>
  96. <item>equiv</item>
  97. <item>err</item>
  98. <item>even</item>
  99. <item>exitm</item>
  100. <item>extend</item>
  101. <item>extern</item>
  102. <item>fail</item>
  103. <item>file</item>
  104. <item>fill</item>
  105. <item>float</item>
  106. <item>format</item>
  107. <item>func</item>
  108. <item>global</item>
  109. <item>globl</item>
  110. <item>hidden</item>
  111. <item>hword</item>
  112. <item>ident</item>
  113. <item>if</item>
  114. <item>ifc</item>
  115. <item>ifdef</item>
  116. <item>ifeq</item>
  117. <item>ifeqs</item>
  118. <item>ifge</item>
  119. <item>ifgt</item>
  120. <item>ifle</item>
  121. <item>iflt</item>
  122. <item>ifnc</item>
  123. <item>ifndef</item>
  124. <item>ifne</item>
  125. <item>ifnes</item>
  126. <item>ifnotdef</item>
  127. <item>include</item>
  128. <item>int</item>
  129. <item>internal</item>
  130. <item>irep</item>
  131. <item>irepc</item>
  132. <item>irp</item>
  133. <item>irpc</item>
  134. <item>lcomm</item>
  135. <item>lflags</item>
  136. <item>line</item>
  137. <item>linkonce</item>
  138. <item>list</item>
  139. <item>llen</item>
  140. <item>ln</item>
  141. <item>long</item>
  142. <item>lsym</item>
  143. <item>macro</item>
  144. <item>mexit</item>
  145. <item>name</item>
  146. <item>noformat</item>
  147. <item>nolist</item>
  148. <item>nopage</item>
  149. <item>octa</item>
  150. <item>offset</item>
  151. <item>org</item>
  152. <item>p2align</item>
  153. <item>p2alignl</item>
  154. <item>p2alignw</item>
  155. <item>page</item>
  156. <item>plen</item>
  157. <item>popsection</item>
  158. <item>previous</item>
  159. <item>print</item>
  160. <item>protected</item>
  161. <item>psize</item>
  162. <item>purgem</item>
  163. <item>pushsection</item>
  164. <item>quad</item>
  165. <item>rep</item>
  166. <item>rept</item>
  167. <item>rva</item>
  168. <item>sbttl</item>
  169. <item>scl</item>
  170. <item>sect.s</item>
  171. <item>sect</item>
  172. <item>section.s</item>
  173. <item>section</item>
  174. <item>set</item>
  175. <item>short</item>
  176. <item>single</item>
  177. <item>size</item>
  178. <item>skip</item>
  179. <item>sleb128</item>
  180. <item>space</item>
  181. <item>spc</item>
  182. <item>stabd</item>
  183. <item>stabn</item>
  184. <item>stabs</item>
  185. <item>string</item>
  186. <item>struct</item>
  187. <item>subsection</item>
  188. <item>symver</item>
  189. <item>tag</item>
  190. <item>text</item>
  191. <item>title</item>
  192. <item>ttl</item>
  193. <item>type</item>
  194. <item>uleb128</item>
  195. <item>use</item>
  196. <item>val</item>
  197. <item>version</item>
  198. <item>vtable_entry</item>
  199. <item>vtable_inherit</item>
  200. <item>weak</item>
  201. <item>word</item>
  202. <item>xcom</item>
  203. <item>xdef</item>
  204. <item>xref</item>
  205. <item>xstabs</item>
  206. <item>zero</item>
  207. </list>
  208. <list name="instructions">
  209. <item>abcd</item>
  210. <item>add</item>
  211. <item>adda</item>
  212. <item>addi</item>
  213. <item>addq</item>
  214. <item>addx</item>
  215. <item>and</item>
  216. <item>andi</item>
  217. <item>asl</item>
  218. <item>asr</item>
  219. <item>bcc</item>
  220. <item>bcs</item>
  221. <item>beq</item>
  222. <item>bge</item>
  223. <item>bgt</item>
  224. <item>bhi</item>
  225. <item>ble</item>
  226. <item>bls</item>
  227. <item>blt</item>
  228. <item>bmi</item>
  229. <item>bne</item>
  230. <item>bpl</item>
  231. <item>bvc</item>
  232. <item>bvs</item>
  233. <item>bchg</item>
  234. <item>bclr</item>
  235. <item>bra</item>
  236. <item>bset</item>
  237. <item>bsr</item>
  238. <item>btst</item>
  239. <item>chk</item>
  240. <item>clr</item>
  241. <item>cmp</item>
  242. <item>cmpa</item>
  243. <item>cmpi</item>
  244. <item>cmpm</item>
  245. <item>dbcc</item>
  246. <item>dbcs</item>
  247. <item>dbeq</item>
  248. <item>dbf</item>
  249. <item>dbge</item>
  250. <item>dbgt</item>
  251. <item>dbhi</item>
  252. <item>dble</item>
  253. <item>dbls</item>
  254. <item>dblt</item>
  255. <item>dbmi</item>
  256. <item>dbne</item>
  257. <item>dbpl</item>
  258. <item>dbt</item>
  259. <item>dbvc</item>
  260. <item>dbvs</item>
  261. <item>dbra</item>
  262. <item>divs</item>
  263. <item>divu</item>
  264. <item>eor</item>
  265. <item>eori</item>
  266. <item>exg</item>
  267. <item>ext</item>
  268. <item>illegal</item>
  269. <item>jmp</item>
  270. <item>jsr</item>
  271. <item>lea</item>
  272. <item>link</item>
  273. <item>lsl</item>
  274. <item>lsr</item>
  275. <item>move</item>
  276. <item>movea</item>
  277. <item>movem</item>
  278. <item>movep</item>
  279. <item>moveq</item>
  280. <item>muls</item>
  281. <item>mulu</item>
  282. <item>nbcd</item>
  283. <item>neg</item>
  284. <item>negx</item>
  285. <item>nop</item>
  286. <item>not</item>
  287. <item>or</item>
  288. <item>ori</item>
  289. <item>pea</item>
  290. <item>reset</item>
  291. <item>rol</item>
  292. <item>ror</item>
  293. <item>roxl</item>
  294. <item>roxr</item>
  295. <item>rte</item>
  296. <item>rtr</item>
  297. <item>rts</item>
  298. <item>sbcd</item>
  299. <item>scc</item>
  300. <item>scs</item>
  301. <item>seq</item>
  302. <item>sf</item>
  303. <item>sge</item>
  304. <item>sgt</item>
  305. <item>shi</item>
  306. <item>sle</item>
  307. <item>sls</item>
  308. <item>slt</item>
  309. <item>smi</item>
  310. <item>sne</item>
  311. <item>spi</item>
  312. <item>st</item>
  313. <item>svc</item>
  314. <item>svs</item>
  315. <item>stop</item>
  316. <item>sub</item>
  317. <item>suba</item>
  318. <item>subi</item>
  319. <item>subq</item>
  320. <item>subx</item>
  321. <item>swap</item>
  322. <item>tas</item>
  323. <item>trap</item>
  324. <item>trapv</item>
  325. <item>tst</item>
  326. <item>unlk</item>
  327. </list>
  328. <list name="registers">
  329. <item>%a0</item>
  330. <item>%a1</item>
  331. <item>%a2</item>
  332. <item>%a3</item>
  333. <item>%a4</item>
  334. <item>%a5</item>
  335. <item>%a6</item>
  336. <item>%a7</item>
  337. <item>%d0</item>
  338. <item>%d1</item>
  339. <item>%d2</item>
  340. <item>%d3</item>
  341. <item>%d4</item>
  342. <item>%d5</item>
  343. <item>%d6</item>
  344. <item>%d7</item>
  345. <item>%sr</item>
  346. <item>%ccr</item>
  347. <item>%usp</item>
  348. <item>%pc</item>
  349. </list>
  350. <contexts>
  351. <context attribute="Normal Text" lineEndContext="#stay" name="Normal">
  352. <RegExpr attribute="Label" context="#stay" String="^\s*[A-Za-z0-9_$][A-Za-z0-9_.$]*:" />
  353. <RegExpr attribute="Normal Text" context="KeywordStart" String="^\s*\." />
  354. <keyword attribute="Instruction" context="Instruction" String="instructions" />
  355. <keyword attribute="Register" context="#stay" String="registers" />
  356. <RegExpr attribute="Octal" context="#stay" String="#?0[0-7]+" />
  357. <RegExpr attribute="Hex" context="#stay" String="#?0[xX][0-9a-fA-F]+" />
  358. <RegExpr attribute="Binary" context="#stay" String="#?0[bB][01]+" />
  359. <RegExpr attribute="Decimal" context="#stay" String="#?[-+]?[1-9][0-9]*" />
  360. <RegExpr attribute="Float" context="#stay" String="0[fFeEdD][-+]?[0-9]*\.?[0-9]*[eE]?[-+]?[0-9]+" />
  361. <RegExpr attribute="Normal Text" context="#stay" String="[A-Za-z_.$][A-Za-z0-9_.$]*" />
  362. <RegExpr attribute="Char" context="#stay" String="'(\\x[0-9a-fA-F][0-9a-fA-F]?|\\[0-7]?[0-7]?[0-7]?|\\.|.)" />
  363. <DetectChar attribute="String" context="String" char="&quot;" />
  364. <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="*" />
  365. <DetectChar attribute="Comment" context="Commentar 2" char="|" />
  366. <AnyChar attribute="Symbol" context="#stay" String="!#%&amp;*()+,-&lt;=&gt;?/:[]^{@}~" />
  367. <RegExpr attribute="Preprocessor" context="Preprocessor" String="^#" />
  368. </context>
  369. <context attribute="Comment" lineEndContext="#stay" name="Commentar 1">
  370. <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" />
  371. </context>
  372. <context attribute="Comment" lineEndContext="#pop" name="Commentar 2" />
  373. <context attribute="Preprocessor" lineEndContext="#pop" name="Preprocessor" />
  374. <context attribute="String" lineEndContext="#pop" name="String">
  375. <LineContinue attribute="String" context="Some Context" />
  376. <HlCStringChar attribute="String Char" context="#stay" />
  377. <DetectChar attribute="String" context="#pop" char="&quot;" />
  378. </context>
  379. <context attribute="Normal" lineEndContext="#pop" name="KeywordStart">
  380. <keyword attribute="Keyword" context="#pop" String="keywords" />
  381. </context>
  382. <context attribute="Instruction" lineEndContext="#pop" name="Instruction">
  383. <RegExpr attribute="Instruction" context="#pop" String="(\.[lwbs])|[^a-zA-Z]" />
  384. </context>
  385. <context attribute="Normal Text" lineEndContext="#pop" name="Some Context" />
  386. </contexts>
  387. <itemDatas>
  388. <itemData name="Normal Text" defStyleNum="dsNormal" />
  389. <itemData name="Label" defStyleNum="dsNormal" />
  390. <itemData name="Keyword" defStyleNum="dsKeyword" />
  391. <itemData name="Decimal" defStyleNum="dsDecVal" />
  392. <itemData name="Octal" defStyleNum="dsBaseN" />
  393. <itemData name="Hex" defStyleNum="dsBaseN" />
  394. <itemData name="Binary" defStyleNum="dsBaseN" />
  395. <itemData name="Float" defStyleNum="dsFloat" />
  396. <itemData name="Char" defStyleNum="dsChar" />
  397. <itemData name="String" defStyleNum="dsString" />
  398. <itemData name="String Char" defStyleNum="dsChar" />
  399. <itemData name="Symbol" defStyleNum="dsNormal" />
  400. <itemData name="Comment" defStyleNum="dsComment" />
  401. <itemData name="Preprocessor" defStyleNum="dsOthers" />
  402. <itemData name="Instruction" defStyleNum="dsNormal" />
  403. <itemData name="Register" defStyleNum="dsNormal" />
  404. </itemDatas>
  405. </highlighting>
  406. <general>
  407. <comments>
  408. <comment name="singleLine" start="|" />
  409. <comment name="multiLine" start="/*" end="*/" />
  410. </comments>
  411. <keywords casesensitive="1" weakDeliminator="_$%" additionalDeliminator="@" />
  412. </general>
  413. </language>