master
ブランチ master
LittleBeast / src / Std / Lib / Syntax / Asm6502.php
1.2 KB、28行 生 Blame 履歴
1<?php
2namespace Std\Lib\Syntax;
3
4/**
5 * 6502・65C02
6 */
7class Asm6502 extends Assembly {
8 protected string $identifier = '[.A-Za-z_@][\w.$]*';
9
10 protected array $tokens = [
11 'register' => [
12 'a', 'x', 'y', 's', 'p',
13 ],
14 'instruction' => [
15 'adc', 'and', 'asl', 'bcc', 'bcs', 'beq', 'bit', 'bmi', 'bne', 'bpl', 'brk', 'bvc', 'bvs', 'clc', 'cld', 'cli', 'clv',
16 'cmp', 'cpx', 'cpy', 'dec', 'dex', 'dey', 'eor', 'inc', 'inx', 'iny', 'jmp', 'jsr', 'lda', 'ldx', 'ldy', 'lsr', 'nop',
17 'ora', 'pha', 'php', 'pla', 'plp', 'rol', 'ror', 'rti', 'rts', 'sbc', 'sec', 'sed', 'sei', 'sta', 'stx', 'sty',
18 'tax', 'tay', 'tsx', 'txa', 'txs', 'tya',
19 // 65C02
20 'bra', 'phx', 'phy', 'plx', 'ply', 'stz', 'trb', 'tsb', 'stp', 'wai',
21 'bbr0', 'bbr1', 'bbr2', 'bbr3', 'bbr4', 'bbr5', 'bbr6', 'bbr7', 'bbs0', 'bbs1', 'bbs2', 'bbs3', 'bbs4', 'bbs5', 'bbs6', 'bbs7',
22 'rmb0', 'rmb1', 'rmb2', 'rmb3', 'rmb4', 'rmb5', 'rmb6', 'rmb7', 'smb0', 'smb1', 'smb2', 'smb3', 'smb4', 'smb5', 'smb6', 'smb7',
23 ],
24 'directive' => [
25 'org', 'equ', 'db', 'dw', 'ds', 'byte', 'word', 'include', 'incbin', 'macro', 'endm', 'if', 'else', 'endif',
26 ],
27 ];
28}