]> git.sur5r.net Git - cc65/commit
Added .asize and .isize pseudo variables
authorMarcus Rowe <undisbeliever@gmail.com>
Mon, 19 Oct 2015 23:30:25 +0000 (09:30 +1000)
committerMarcus Rowe <undisbeliever@gmail.com>
Mon, 19 Oct 2015 23:30:25 +0000 (09:30 +1000)
commit67cd0c219726b8d6ef5fc5e980cc197fbfb257d7
tree52a7a319e59f27177c42e761d27faceccdc590d2
parentf4335eca8782febf5667536602092f15d28a74f6
Added .asize and .isize pseudo variables

These pseudo variables will return the size of the accumulator/index
in bits.

For the 65816 instruction set .ASIZE/.ISIZE will return either 8 or 16,
depending on the current size of the operand in immediate addressing
mode.

For all other CPU instruction sets, .ASIZE/.ISIZE will always return 8.

For example:

; Reverse Subtract with Accumulator
; A = memory - A
.macro rsb param
.if .asize = 8
eor #$ff
.else
eor #$ffff
.endif
sec
adc param
.endmacro
doc/ca65.sgml
src/ca65/expr.c
src/ca65/pseudo.c
src/ca65/scanner.c
src/ca65/token.h