You had an incorrect optimization: This is correct: >- xor a ; optimized "ld a, 0" But this isn't: >- xor a ; optimized "ld a,1" You could though xor a / inc a but that is one tick slower than ld a, 1 -- Scott "_Wrath_" Dial homosapian@geocities.com ICQ#3608935 http://www.geocities.com/~homosapian/