Hi all. Just as a quick aside, I hate the American holidays...the list slows down too much. I hate it when people go tend to their "real lives". Anyway, I have a question about scaling. Basically what I want to do is to have a few (8-32 maybe) registers with 8 bit values in them. Then, based on another 8 bit value I want to scale them. Basically, the second register becomes a percentage multiplication factor. So if I have a value of d'204' in the first register, and a value of d'128' in the second (50%), after the operation I want a result of d'102' (half of the original value). It can be in a second register. At first I though of just using multiplication routines, but I can't figure how to multiply by less than 1 (ie 0.5). I had a flash that maybe this could all be accomplished by shifting bits, but I don't know how. Any pointers to info would be great! Thanks, Josh Koffman -- A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools. -Douglas Adams -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics