Raiph,

Thanks.I make a subroutine which save my some more code.But I have a problem.
Have a look:

Code:
DISPLAYADDRESSBYTE = $05
;GR Γ = RAM15 MAX6953
I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE1, DISPLAYADDRESSBYTE, [$CB,%01111111,%00000001,%00000001,%00000001,%00000001]     
I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE2, DISPLAYADDRESSBYTE, [$CB,%01111111,%00000001,%00000001,%00000001,%00000001] 
;GR Δ = RAM16
I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE1, DISPLAYADDRESSBYTE, [$D0,%01111100,%01000010,%01000001,%01000010,%01111100]     
I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE2, DISPLAYADDRESSBYTE, [$D0,%01111100,%01000010,%01000001,%01000010,%01111100] 
;GR Θ = RAM17
I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE1, DISPLAYADDRESSBYTE, [$D5,%00111110,%01001001,%01001001,%01001001,%00111110]     
I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE2, DISPLAYADDRESSBYTE, [$D5,%00111110,%01001001,%01001001,%01001001,%00111110]
I would like to make a subroutine like that:
Code:
DISPLAYADDRESSBYTE = $05
X = $CB,%01111111,%00000001,%00000001,%00000001,%00000001 
GOSUB I2COUT
X = $D0,%01111100,%01000010,%01000001,%01000010,%01111100
GOSUB I2COUT
X = $D5,%00111110,%01001001,%01001001,%01001001,%00111110
GOSUB I2COUT
....
I2COUT:
          I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE1, DISPLAYADDRESSBYTE, [X]
          I2CWRITE SDA0, SCL0, DISPLAYCONTROLBYTE2, DISPLAYADDRESSBYTE, [X]
RETURN
....
Now what variable is X?Word?
That is my problem.

Regards
Nikos