if (! this.sh_languages) {
  this.sh_languages = {};
}
sh_languages['asm'] = [
  [
    [
      /;/g,
      'sh_comment',
      1
    ],
    [
      /\b(?:abcd|add|adda|addi|addq|addx|and|andi|asl|asr|bchg|bclr|bset|btst|bra|bsr|chk|clr|cmp|cmpa|cmpi|cmpm|dc|divs|divu|eor|eori|exg|ext|illegal|jmp|jsr|lea|link|lsl|lsr|move|movea|movem|moveq|muls|mulu|nbcd|neg|negx|nop|not|or|ori|pea|rol|ror|roxl|roxr|rtd|rts|sbcd|sub|suba|subi|subq|subx|swap|tas|trap|trapv|tst|unlk)\b/g,
      'sh_keyword1',
      -1
    ],
    [
      /\b(?:bhi|bls|bcc|bcs|bne|beq|bvc|bpl|bmi|bge|blt|bgt|ble|dbt|dbf|dbhi|dbls|dbcc|dbcs|dbne|dbeq|dbvc|dbpl|dbmi|dbge|dblt|dbgt|dble|st|sf|shi|sls|scc|scs|sne|seq|svc|spl|smi|sge|slt|sgt|sle)\b/g,
      'sh_keyword2',
      -1
    ],
    [
      /\b(?:d0|d1|d2|d3|d4|d5|d6|d7|a0|a1|a2|a3|a4|a5|a6|a7)\b/g,
      'sh_keyword3',
      -1
    ],
    [
      /#|\.b|\.w|\.l|\.s/g,
      'sh_keyword4',
      -1
    ],
    [
      /(?:\$[#]?)[A-Za-z0-9_]+/g,
      'sh_number',
      -1
    ],
    [
      /~|!|%|\^|\*|\(|\)|-|\+|=|\[|\]|\\|:|;|,|\.|\/|\?|&|<|>|\|/g,
      'sh_symbol',
      -1
    ]
  ],
  [
    [
      /$/g,
      null,
      -2
    ]
  ]
];
