>Now to make a character scroll across the display I need to shift the 5 bit >value in starting at bit0 through to bit5 and out. You may find that it is easier to have the display dots in a ring buffer arrangement, and move the top three bits, as these will always be the same, and in a cyclic order. Your move operation then has a table of 8 lots of upper 3 bits in order, and the code goes like this ; assume n = table_start for first scroll through display for x = start_buffer to end_buffer buffer = (buffer and $1F) or table(n) n=(n+1)mod 7 next x ;prepare table start for next scroll through display n=(n+1) mod 7 -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu