Skip to content

Commit 929c33e

Browse files
authoredNov 22, 2021
Asm6502: Use standard tokens and minor improvements (#3184)
1 parent c780928 commit 929c33e

File tree

6 files changed

+151
-140
lines changed

6 files changed

+151
-140
lines changed
 

‎components/prism-asm6502.js

+12-11
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,28 @@ Prism.languages.asm6502 = {
22
'comment': /;.*/,
33
'directive': {
44
pattern: /\.\w+(?= )/,
5-
alias: 'keyword'
5+
alias: 'property'
66
},
77
'string': /(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/,
8-
'opcode': {
8+
'op-code': {
99
pattern: /\b(?:ADC|AND|ASL|BCC|BCS|BEQ|BIT|BMI|BNE|BPL|BRK|BVC|BVS|CLC|CLD|CLI|CLV|CMP|CPX|CPY|DEC|DEX|DEY|EOR|INC|INX|INY|JMP|JSR|LDA|LDX|LDY|LSR|NOP|ORA|PHA|PHP|PLA|PLP|ROL|ROR|RTI|RTS|SBC|SEC|SED|SEI|STA|STX|STY|TAX|TAY|TSX|TXA|TXS|TYA|adc|and|asl|bcc|bcs|beq|bit|bmi|bne|bpl|brk|bvc|bvs|clc|cld|cli|clv|cmp|cpx|cpy|dec|dex|dey|eor|inc|inx|iny|jmp|jsr|lda|ldx|ldy|lsr|nop|ora|pha|php|pla|plp|rol|ror|rti|rts|sbc|sec|sed|sei|sta|stx|sty|tax|tay|tsx|txa|txs|tya)\b/,
10-
alias: 'property'
10+
alias: 'keyword'
1111
},
12-
'hexnumber': {
13-
pattern: /#?\$[\da-f]{2,4}\b/i,
14-
alias: 'string'
12+
'hex-number': {
13+
pattern: /#?\$[\da-f]{1,4}\b/i,
14+
alias: 'number'
1515
},
16-
'binarynumber': {
16+
'binary-number': {
1717
pattern: /#?%[01]+\b/,
18-
alias: 'string'
18+
alias: 'number'
1919
},
20-
'decimalnumber': {
20+
'decimal-number': {
2121
pattern: /#?\b\d+\b/,
22-
alias: 'string'
22+
alias: 'number'
2323
},
2424
'register': {
2525
pattern: /\b[xya]\b/i,
2626
alias: 'variable'
27-
}
27+
},
28+
'punctuation': /[(),:]/
2829
};

‎components/prism-asm6502.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
+7-8
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
11
LDA #127
22
STA $8000
3+
STA #$1
34
LDX #%10001010
45

5-
-------------------------
6+
----------------------------------------------------
67

78
[
8-
["opcode", "LDA"],
9-
["decimalnumber", "#127"],
10-
["opcode", "STA"],
11-
["hexnumber", "$8000"],
12-
["opcode", "LDX"],
13-
["binarynumber", "#%10001010"]
9+
["op-code", "LDA"], ["decimal-number", "#127"],
10+
["op-code", "STA"], ["hex-number", "$8000"],
11+
["op-code", "STA"], ["hex-number", "#$1"],
12+
["op-code", "LDX"], ["binary-number", "#%10001010"]
1413
]
1514

16-
-------------------------
15+
----------------------------------------------------
1716

1817
Check for numbers

‎tests/languages/asm6502/opcode_feature.test

+112-112
Original file line numberDiff line numberDiff line change
@@ -114,118 +114,118 @@ TYA
114114
----------------------------------------------------
115115

116116
[
117-
["opcode", "adc"],
118-
["opcode", "and"],
119-
["opcode", "asl"],
120-
["opcode", "bcc"],
121-
["opcode", "bcs"],
122-
["opcode", "beq"],
123-
["opcode", "bit"],
124-
["opcode", "bmi"],
125-
["opcode", "bne"],
126-
["opcode", "bpl"],
127-
["opcode", "brk"],
128-
["opcode", "bvc"],
129-
["opcode", "bvs"],
130-
["opcode", "clc"],
131-
["opcode", "cld"],
132-
["opcode", "cli"],
133-
["opcode", "clv"],
134-
["opcode", "cmp"],
135-
["opcode", "cpx"],
136-
["opcode", "cpy"],
137-
["opcode", "dec"],
138-
["opcode", "dex"],
139-
["opcode", "dey"],
140-
["opcode", "eor"],
141-
["opcode", "inc"],
142-
["opcode", "inx"],
143-
["opcode", "iny"],
144-
["opcode", "jmp"],
145-
["opcode", "jsr"],
146-
["opcode", "lda"],
147-
["opcode", "ldx"],
148-
["opcode", "ldy"],
149-
["opcode", "lsr"],
150-
["opcode", "nop"],
151-
["opcode", "ora"],
152-
["opcode", "pha"],
153-
["opcode", "php"],
154-
["opcode", "pla"],
155-
["opcode", "plp"],
156-
["opcode", "rol"],
157-
["opcode", "ror"],
158-
["opcode", "rti"],
159-
["opcode", "rts"],
160-
["opcode", "sbc"],
161-
["opcode", "sec"],
162-
["opcode", "sed"],
163-
["opcode", "sei"],
164-
["opcode", "sta"],
165-
["opcode", "stx"],
166-
["opcode", "sty"],
167-
["opcode", "tax"],
168-
["opcode", "tay"],
169-
["opcode", "tsx"],
170-
["opcode", "txa"],
171-
["opcode", "txs"],
172-
["opcode", "tya"],
173-
["opcode", "ADC"],
174-
["opcode", "AND"],
175-
["opcode", "ASL"],
176-
["opcode", "BCC"],
177-
["opcode", "BCS"],
178-
["opcode", "BEQ"],
179-
["opcode", "BIT"],
180-
["opcode", "BMI"],
181-
["opcode", "BNE"],
182-
["opcode", "BPL"],
183-
["opcode", "BRK"],
184-
["opcode", "BVC"],
185-
["opcode", "BVS"],
186-
["opcode", "CLC"],
187-
["opcode", "CLD"],
188-
["opcode", "CLI"],
189-
["opcode", "CLV"],
190-
["opcode", "CMP"],
191-
["opcode", "CPX"],
192-
["opcode", "CPY"],
193-
["opcode", "DEC"],
194-
["opcode", "DEX"],
195-
["opcode", "DEY"],
196-
["opcode", "EOR"],
197-
["opcode", "INC"],
198-
["opcode", "INX"],
199-
["opcode", "INY"],
200-
["opcode", "JMP"],
201-
["opcode", "JSR"],
202-
["opcode", "LDA"],
203-
["opcode", "LDX"],
204-
["opcode", "LDY"],
205-
["opcode", "LSR"],
206-
["opcode", "NOP"],
207-
["opcode", "ORA"],
208-
["opcode", "PHA"],
209-
["opcode", "PHP"],
210-
["opcode", "PLA"],
211-
["opcode", "PLP"],
212-
["opcode", "ROL"],
213-
["opcode", "ROR"],
214-
["opcode", "RTI"],
215-
["opcode", "RTS"],
216-
["opcode", "SBC"],
217-
["opcode", "SEC"],
218-
["opcode", "SED"],
219-
["opcode", "SEI"],
220-
["opcode", "STA"],
221-
["opcode", "STX"],
222-
["opcode", "STY"],
223-
["opcode", "TAX"],
224-
["opcode", "TAY"],
225-
["opcode", "TSX"],
226-
["opcode", "TXA"],
227-
["opcode", "TXS"],
228-
["opcode", "TYA"]
117+
["op-code", "adc"],
118+
["op-code", "and"],
119+
["op-code", "asl"],
120+
["op-code", "bcc"],
121+
["op-code", "bcs"],
122+
["op-code", "beq"],
123+
["op-code", "bit"],
124+
["op-code", "bmi"],
125+
["op-code", "bne"],
126+
["op-code", "bpl"],
127+
["op-code", "brk"],
128+
["op-code", "bvc"],
129+
["op-code", "bvs"],
130+
["op-code", "clc"],
131+
["op-code", "cld"],
132+
["op-code", "cli"],
133+
["op-code", "clv"],
134+
["op-code", "cmp"],
135+
["op-code", "cpx"],
136+
["op-code", "cpy"],
137+
["op-code", "dec"],
138+
["op-code", "dex"],
139+
["op-code", "dey"],
140+
["op-code", "eor"],
141+
["op-code", "inc"],
142+
["op-code", "inx"],
143+
["op-code", "iny"],
144+
["op-code", "jmp"],
145+
["op-code", "jsr"],
146+
["op-code", "lda"],
147+
["op-code", "ldx"],
148+
["op-code", "ldy"],
149+
["op-code", "lsr"],
150+
["op-code", "nop"],
151+
["op-code", "ora"],
152+
["op-code", "pha"],
153+
["op-code", "php"],
154+
["op-code", "pla"],
155+
["op-code", "plp"],
156+
["op-code", "rol"],
157+
["op-code", "ror"],
158+
["op-code", "rti"],
159+
["op-code", "rts"],
160+
["op-code", "sbc"],
161+
["op-code", "sec"],
162+
["op-code", "sed"],
163+
["op-code", "sei"],
164+
["op-code", "sta"],
165+
["op-code", "stx"],
166+
["op-code", "sty"],
167+
["op-code", "tax"],
168+
["op-code", "tay"],
169+
["op-code", "tsx"],
170+
["op-code", "txa"],
171+
["op-code", "txs"],
172+
["op-code", "tya"],
173+
["op-code", "ADC"],
174+
["op-code", "AND"],
175+
["op-code", "ASL"],
176+
["op-code", "BCC"],
177+
["op-code", "BCS"],
178+
["op-code", "BEQ"],
179+
["op-code", "BIT"],
180+
["op-code", "BMI"],
181+
["op-code", "BNE"],
182+
["op-code", "BPL"],
183+
["op-code", "BRK"],
184+
["op-code", "BVC"],
185+
["op-code", "BVS"],
186+
["op-code", "CLC"],
187+
["op-code", "CLD"],
188+
["op-code", "CLI"],
189+
["op-code", "CLV"],
190+
["op-code", "CMP"],
191+
["op-code", "CPX"],
192+
["op-code", "CPY"],
193+
["op-code", "DEC"],
194+
["op-code", "DEX"],
195+
["op-code", "DEY"],
196+
["op-code", "EOR"],
197+
["op-code", "INC"],
198+
["op-code", "INX"],
199+
["op-code", "INY"],
200+
["op-code", "JMP"],
201+
["op-code", "JSR"],
202+
["op-code", "LDA"],
203+
["op-code", "LDX"],
204+
["op-code", "LDY"],
205+
["op-code", "LSR"],
206+
["op-code", "NOP"],
207+
["op-code", "ORA"],
208+
["op-code", "PHA"],
209+
["op-code", "PHP"],
210+
["op-code", "PLA"],
211+
["op-code", "PLP"],
212+
["op-code", "ROL"],
213+
["op-code", "ROR"],
214+
["op-code", "RTI"],
215+
["op-code", "RTS"],
216+
["op-code", "SBC"],
217+
["op-code", "SEC"],
218+
["op-code", "SED"],
219+
["op-code", "SEI"],
220+
["op-code", "STA"],
221+
["op-code", "STX"],
222+
["op-code", "STY"],
223+
["op-code", "TAX"],
224+
["op-code", "TAY"],
225+
["op-code", "TSX"],
226+
["op-code", "TXA"],
227+
["op-code", "TXS"],
228+
["op-code", "TYA"]
229229
]
230230

231231
----------------------------------------------------
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
( ) , :
2+
3+
----------------------------------------------------
4+
5+
[
6+
["punctuation", "("],
7+
["punctuation", ")"],
8+
["punctuation", ","],
9+
["punctuation", ":"]
10+
]
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
LDA $8000,x
22
ASL A
33

4-
-------------------------
4+
----------------------------------------------------
55

66
[
7-
["opcode", "LDA"],
8-
["hexnumber", "$8000"],
9-
",",
10-
["register", "x"],
11-
["opcode", "ASL"],
12-
["register", "A"]
7+
["op-code", "LDA"],
8+
["hex-number", "$8000"],
9+
["punctuation", ","],
10+
["register", "x"],
11+
12+
["op-code", "ASL"],
13+
["register", "A"]
1314
]
1415

15-
-------------------------
16+
----------------------------------------------------
1617

1718
Check for registers

0 commit comments

Comments
 (0)
Please sign in to comment.