1
0
mirror of https://github.com/mnaberez/py65.git synced 2025-08-07 22:25:01 +00:00

Use tuples for the addressing patterns

This commit is contained in:
Mike Naberezny
2014-12-14 17:26:18 -08:00
parent 628593188e
commit a996cbceec

View File

@@ -7,40 +7,40 @@ class Assembler:
r'\(?\s*)([^,\s\)]+)(\s*[,xXyY\s]*\)?' r'\(?\s*)([^,\s\)]+)(\s*[,xXyY\s]*\)?'
r'[,xXyY\s]*)$') r'[,xXyY\s]*)$')
Addressing = [ Addressing = (
['zpi', # "($0012)" ('zpi', # "($0012)"
r'^\(\$0{BYTE}([0-9A-F]{BYTE})\)$'], r'^\(\$0{BYTE}([0-9A-F]{BYTE})\)$'),
['zpx', # "$0012,X" ('zpx', # "$0012,X"
r'^\$0{BYTE}([0-9A-F]{BYTE}),X$'], r'^\$0{BYTE}([0-9A-F]{BYTE}),X$'),
['zpy', # "$0012,Y" ('zpy', # "$0012,Y"
r'^\$0{BYTE}([0-9A-F]{BYTE}),Y$'], r'^\$0{BYTE}([0-9A-F]{BYTE}),Y$'),
['zpg', # "$0012" ('zpg', # "$0012"
r'^\$0{BYTE}([0-9A-F]{BYTE})$'], r'^\$0{BYTE}([0-9A-F]{BYTE})$'),
['inx', # "($0012,X) ('inx', # "($0012,X)
r'^\(\$0{BYTE}([0-9A-F]{BYTE}),X\)$'], r'^\(\$0{BYTE}([0-9A-F]{BYTE}),X\)$'),
['iax', # "($1234,X) ('iax', # "($1234,X)
r'^\(\$([0-9A-F]{BYTE})([0-9A-F]{BYTE}),X\)$'], r'^\(\$([0-9A-F]{BYTE})([0-9A-F]{BYTE}),X\)$'),
['iny', # "($0012),Y" ('iny', # "($0012),Y"
r'^\(\$0{BYTE}([0-9A-F]{BYTE})\),Y$'], r'^\(\$0{BYTE}([0-9A-F]{BYTE})\),Y$'),
['ind', # "($1234)" ('ind', # "($1234)"
r'^\(\$([0-9A-F]{BYTE})([0-9A-F]{BYTE})\)$'], r'^\(\$([0-9A-F]{BYTE})([0-9A-F]{BYTE})\)$'),
['abx', # "$1234,X" ('abx', # "$1234,X"
r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE}),X$'], r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE}),X$'),
['aby', # "$1234,Y" ('aby', # "$1234,Y"
r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE}),Y$'], r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE}),Y$'),
['abs', # "$1234" ('abs', # "$1234"
r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE})$'], r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE})$'),
['rel', # "$1234" ('rel', # "$1234"
r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE})$'], r'^\$([0-9A-F]{BYTE})([0-9A-F]{BYTE})$'),
['imp', # "" ('imp', # ""
r'^$'], r'^$'),
['acc', # "" ('acc', # ""
r'^$'], r'^$'),
['acc', # "A" ('acc', # "A"
r'^A$'], r'^A$'),
['imm', # "#$12" ('imm', # "#$12"
r'^#\$([0-9A-F]{BYTE})$'] r'^#\$([0-9A-F]{BYTE})$')
] )
def __init__(self, mpu, address_parser=None): def __init__(self, mpu, address_parser=None):
""" If a configured AddressParser is passed, symbolic addresses """ If a configured AddressParser is passed, symbolic addresses