huc: setvdc(), scroll(): fix stack pointer arithmetic with -msmall

Small stack code assumes the high byte of the stack pointer is fixed at
0x3f. These functions incorrectly used 16-bit arithmetic to clean their
arguments from the stack, causing the high byte to increment to 0x40 if
the stack is empty afterwards.

Fixes issue #6.

Signed-off-by: Ulrich Hecht <ulrich.hecht@gmail.com>