/**
 * SyntaxHighlighter
 * http://alexgorbatchev.com/
 *
 * SyntaxHighlighter is donationware. If you are using it, please donate.
 * http://alexgorbatchev.com/wiki/SyntaxHighlighter:Donate
 *
 * @version
 * 2.1.364 (October 15 2009)
 * 
 * @copyright
 * Copyright (C) 2004-2009 Alex Gorbatchev.
 *
 * @license
 * This file is part of SyntaxHighlighter.
 * 
 * SyntaxHighlighter is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * SyntaxHighlighter is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with SyntaxHighlighter.  If not, see <http://www.gnu.org/copyleft/lesser.html>.
 */
SyntaxHighlighter.brushes.Assembly = function()
{
	// Contributed by Gheorghe Milas and Ahmad Sherif
	
	var keywords =  'mov xchg lea lds les push pop lahf sahf pushf popf clc stc cmc cld std cli sti ' +
					'add adc inc sub sbb dec neg cmp mul imul div idiv cbw cwd ' +
					'not and or xor test sal shl sar shr rol ror rcl rcr loop loope loopz loopne loopnz ' +
                                        'jmp far near jcxz ' +
                                        'in out lgdt equ dw dd db byte word dword org include macro ' +
                                        'eax ax ah al ebx bx bh bl ecx cx ch cl edx dx dh dl gs esp sp ebp bp esi si edi di eip ip flag cs ds ss es ' ;

	var funcs = ' ';

	var special =  '';

	this.regexList = [
			//{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments, css: 'comments' },
			//{ regex: /^\s*@\w+/gm, 										css: 'decorator' },
			{ regex: /;;(.*)$/gm, 						css: 'comments' },
			{ regex: /"(?!")(?:\.|\\\"|[^\""\n])*"/gm, 					css: 'string' },
			{ regex: /'(?!')(?:\.|(\\\')|[^\''\n])*'/gm, 				css: 'string' },
			//{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),		css: 'functions' },
			{ regex: new RegExp(this.getKeywords(keywords), 'gmi'), 		css: 'keyword' },
			//{ regex: new RegExp(this.getKeywords(special), 'gm'), 		css: 'color1' }
			];
};

SyntaxHighlighter.brushes.Assembly.prototype  = new SyntaxHighlighter.Highlighter();
SyntaxHighlighter.brushes.Assembly.aliases    = ['asm', 'Assembly'];
