Ok I decided to try a new 16 bit multiply routine and I put in 255 times 255 and here's what I got Number 1: 00000000 11111111 Number 2: 00000000 11111111 Result: 11111110 00000001 So again, I don't remember how to multiply binary so I can't tell if this was correct off hand. What are the multiplication rules? 1 x 1 = ? 1 x 0 = ? 0 x 0 = ? At least when I put in 2 x 1 I did get 2 output...