Charles Leo has replied to my email as follows.

It is the "#" modifier in your commands that is giving you incorrect displayed results. The "#" modifier is only intended for use with variables less than 16-bit. This makes it impossible to display LONG decimal values with SEROUT, but you can use the "DEC" modifier with DEBUG, SEROUT2, and HSEROUT.

Try these display lines:

debug "Debug version ", DEC lw, ",", DEC lx, ",", DEC ly,_
",", DEC lz , $0D, $0A
serout2 tx232, 84, [ "Serout2 version ", DEC lw, ",",_
DEC lx, ",", DEC ly, ",", DEC lz, $0D, $0A ] hserout ["HSEROUT version ", DEC lw, ",", DEC lx, ",",_
DEC ly, ",", DEC lz, $0D, $0A]

I've noted your points for the next manual revision. I'm planning some samples that demonstrate applications for LONGs.

Simply put, use LONGs when you need to store a negative value or a value larger than 65535.

Charles Leo