[stella] TextPad Syntax Highlighting

Subject: [stella] TextPad Syntax Highlighting
From: "Lee Fastenau" <stella@xxxxxxxxxxxxxxx>
Date: Sat, 5 Mar 2005 04:46:57 -0500
Here's an updated syntax file for those of you who use TextPad with DASM for
development.  I'd been using Helios's somewhat (okay, VERY) ineffective
6502.syn file for the past year and finally decided to see if I could do
better.

I at least succeeded in making it much better than what I was using, but
it's entirely possible you all are using an ultra-awesome version of the
.syn file that I'm not aware of.  :/

Anyway, keywords are basically broken up into four categories:
Keywords 1: Mnemonics
Keywords 2: Stella registers
Keywords 3: DASM pseudo ops
Keywords 4: Common macros

Comments, strings, numbers, etc. are still customizable.

To use the new .syn file, backup your existing 6502.syn file located here:
c:\program files\TextPad 4\system

...and replace it with the one that's attached.

If you DON'T already have a document class defined for 6502 assembly, then
add one using Configure|New Document Class and follow the instructions
provided there.

The .syn file doesn't define the colors themselves and I'm not sure how to
export those separately, so you'll have to do that yourself under
Configure|Preferences, and then Document Classes|6502 Assembly|Colors.

Oh, and I just used the mnemonics from the original file, which I don't
think included illegal opcodes.  I'd be happy to add them if someone wanted
to link me with a concise list of easily-extractable illegal opcodes. (Say
that five times really fast.)  I just don't feel like tracking them down
right now.

Ciao,
-Lee

PS: If you *DO* have an ultra-awesome .syn file that's better than this one,
I'd appreciate a copy of it. :)  Thanks.

Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://stella.biglist.com
; TextPad syntax definitions for 6502 ASSEMBLY
; Copyright (C) 1998-2000, Helios Software Solutions

C=1

[Syntax]
Namespace1 = 6
IgnoreCase = Yes
KeyWordLength = 
BracketChars = {[()]}
OperatorChars = -+*/<>!~%^&|=
PreprocStart = 
SyntaxStart =
SyntaxEnd =
HexPrefix = $
CommentStart = 
CommentEnd = 
CommentStartAlt =
CommentEndAlt =
SingleComment = ;
SingleCommentCol =
SingleCommentAlt =
SingleCommentColAlt =
SingleCommentEsc =
StringsSpanLines = No
StringStart = "
StringEnd = "
StringAlt =
StringEsc = 
CharStart = '
CharEnd = '
CharEsc = 

[Keywords 1]
LDX
LDA
LDY
PLA
PLP

TAX
TAY
TXA
TYA
TSX
TXS

STA
STX
STY
PHA
PHP

BNE
BEQ
BMI
BPL
BCC
BCS
BPL
BVS
BVC
BIT
CPX
CPY
CMP
JMP
JSR
RTS
BRK
RTI

ADC
AND
ASL
DEC
DEX
DEY
INC
INY
INX
LSR
LSL
ROR
ROL
CLC
CLD
CLI
CLV
SBC
SEC
SED
SEI
ORA
EOR

[Keywords 2]
VSYNC
VBLANK
WSYNC
RSYNC
NUSIZ0
NUSIZ1
COLUP0
COLUP1
COLUPF
COLUBK
CTRLPF
REFP0
REFP1
PF0
PF1
PF2
RESP0
POSH2
RESP1
RESM0
RESM1
RESBL
AUDC0
AUDC1
AUDF0
AUDF1
AUDV0
AUDV1
GRP0
GRP1
ENAM0
ENAM1
ENABL
HMP0
HMP1
HMM0
HMM1
HMBL
VDELP0
VDELP1
VDELBL
RESMP0
RESMP1
HMOVE
HMCLR
CXCLR
CXM0P
CXM1P
CXP0FB
CXP1FB
CXM0FB
CXM1FB
CXBLPF
CXPPMM
INPT0
INPT1
INPT2
INPT3
INPT4
INPT5
SWCHA
SWACNT
SWCHB
SWBCNT
INTIM
TIM1T
TIM8T
TIM64T
T1024T

[Keywords 3]
INCLUDE
INCBIN
INCDIR
SEG
SEG.U
DC
DC.B
DC.W
DC.L
BYTE
WORD
LONG
DS
DS.B
DS.W
DS.L
DV
DV.B
DV.W
DV.L
HEX
ORG
RORG
PROCESSOR
ECHO
REND
ALIGN
SUBROUTINE
EQU
EQM
SET
MAC
ENDM
MEXIT
IFCONST
IFNCONST
IF
ELSE
ENDIF
EIF
REPEAT
REPEND
LIST
ON
OFF

[Keywords 4]
SLEEP
VERTICAL_SYNC
CLEAN_START
SET_POINTER

Current Thread