I recently started using the latest ja-dcpu and upgrading to DCPU 1.7, and I ran into problems with assembling code that used to assemble correctly. I've boiled it down to issues where arguments considered valid in "a" position yield an error when in "b" position. Here are some examples:
; These work
set A, [Y + 65535]
set A, [Y + -1]
set A, [65535 + Y]
set A, [-1 + Y]
set A, [-2]
set A, [65535]
; These do not work
set [Y + 65535], A
set [Y + -1], A
set [65535 + Y], A
set [-1 + Y], A
set [-2], A
set [65535], A