DEC causes numbers to be sent in ASCII format. 1 to 9 will work fine since each number will
be a single ASCII character. When you get to 10, it sends an ASCII 1 followed by an ASCII
0, which requires two bytes. DEC 100 will be 3 ASCII bytes, etc.

Try something like this;
Code:
T9600 CON 84

MAIN:
FOR B0=4 T0 200
SEROUT2 0,T9600,[B0] ' without modifier, sends the unformatted byte value of 4 to 200
PAUSE 10
NEXT BO

SERIN2 0,T9600,[B0] ' can receive a value from 0 to 255