// Orca/M 65816 Assembler language specs ( /****************************************************************************/ // MARK: Keywords /****************************************************************************/ { Identifier = "xcode.lang.asm.orcam.identifier"; Syntax = { CaseSensitive = NO; StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_~"; Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_~"; Type = "xcode.syntax.identifier"; }; }, { Identifier = "xcode.lang.asm.orcam.keyword"; Syntax = { CaseSensitive = NO; StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_~"; Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_~"; Words = ( "adc", "and", "asl", "bcc", "bcs", "beq", "bge", "bit", "blt", "bmi", "bne", "bpl", "bra", "brk", "brl", "bvc", "bvs", "clc", "cld", "cli", "clv", "cmp", "cop", "cpa", "cpx", "cpy", "dec", "dex", "dey", "eor", "inc", "inx", "iny", "jmp", "jsl", "jsr", "lda", "ldx", "ldy", "lsr", "mvn", "mvp", "nop", "ora", "pea", "pei", "per", "pha", "phb", "phd", "phk", "php", "phx", "phy", "pla", "plb", "pld", "plp", "plx", "ply", "rep", "rol", "ror", "rti", "rtl", "rts", "sbc", "sec", "sed", "sei", "sep", "sta", "stp", "stx", "sty", "stz", "tax", "tay", "tcd", "tcs", "tdc", "trb", "tsb", "tsc", "tsx", "txa", "txs", "txy", "tya", "tyx", "wai", "wdm", "xba", "xce", "absaddr", "align", "anop", "append", "case", "codechk", "copy", "data", "datachk", "dc", "direct", "ds", "dynchk", "eject", "end", "entry", "equ", "err", "expand", "gequ", "ieee", "instime", "keep", "kind", "list", "longa", "longi", "mem", "merr", "msb", "numsex", "obj", "objcase", "objend", "org", "printer", "private", "privdata", "rename", "setcom", "start", "symbol", "title", "using", "65c02", "65816", "actr", "ago", "aif", "ainput", "amid", "asearch", "gbla", "gblb", "gblc", "gen", "lcla", "lclb", "lclc", "macro", "mcopy", "mdrop", "mend", "mexit", "mload", "mnote", "seta", "setb", "setc", "trace", ); Type = "xcode.syntax.keyword"; AltType = "xcode.syntax.identifier"; }; }, /****************************************************************************/ // MARK: Simple Syntax Coloring /****************************************************************************/ { Identifier = "xcode.lang.asm.orcam"; Description = "ORCAM Assembler Coloring"; BasedOn = "xcode.lang.simpleColoring"; IncludeInMenu = YES; Name = "Assembly (ORCAM)"; Syntax = { Tokenizer = "xcode.lang.asm.orcam.lexer"; IncludeRules = ( "xcode.lang.asm.orcam.codeblock", "xcode.lang.asm.orcam.datablock", ); Type = "xcode.syntax.plain"; }; }, { Identifier = "xcode.lang.asm.orcam.lexer"; Syntax = { IncludeRules = ( "xcode.lang.asm.orcam.comment.semi", "xcode.lang.asm.orcam.comment.exclam", "xcode.lang.asm.orcam.comment.star", "xcode.lang.asm.orcam.comment.dot", "xcode.lang.string", "xcode.lang.character", "xcode.lang.number", "xcode.lang.asm.orcam.keyword", "xcode.lang.asm.orcam.identifier", ); }; }, { Identifier = "xcode.lang.asm.orcam.comment.semi"; Syntax = { StartAtBOL = YES; StartAtColumnZero = YES; Start = ";"; End = "\n"; IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); Type = "xcode.syntax.comment"; }; }, { Identifier = "xcode.lang.asm.orcam.comment.exclam"; Syntax = { StartAtBOL = YES; StartAtColumnZero = YES; Start = "!"; End = "\n"; IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); Type = "xcode.syntax.comment"; }; }, { Identifier = "xcode.lang.asm.orcam.comment.star"; Syntax = { StartAtBOL = YES; StartAtColumnZero = YES; Start = "*"; End = "\n"; IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); Type = "xcode.syntax.comment"; }; }, { Identifier = "xcode.lang.asm.orcam.comment.dot"; Syntax = { StartAtBOL = YES; StartAtColumnZero = YES; Start = "."; End = "\n"; IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); Type = "xcode.syntax.comment"; }; }, { Identifier = "xcode.lang.asm.orcam.codeblock"; Syntax = { Tokenizer = "xcode.lang.asm.orcam.lexer"; Start = "start"; End = "end"; Recursive = NO; Foldable = YES; Type = "xcode.syntax.definition.function"; IncludeRules = ( ); }; }, { Identifier = "xcode.lang.asm.orcam.datablock"; Syntax = { Tokenizer = "xcode.lang.asm.orcam.lexer"; Start = "data"; End = "end"; Recursive = NO; Foldable = YES; Type = "xcode.syntax.definition.function"; IncludeRules = ( ); }; }, )