Hello Mark,

Mark>>
PORTF = %10110000
LCDOut $FE,1,#B8

(rest of code removed for clarity)

(I get the value of B8 displayed OK, but this intereferes with my attempt to write 1011 to the top half of the port)<<


I think what is happening is your computer Chip is too fast.
When you write to PORTF, you are writing B0,
PORTF=%10110000 (Writing B0)


And a immediate write of a #B8 will destory your B0.

You need to make SURE that the B0 is read BEFORE you write your #B8. If you don't, you r B0 is worthless and gone.

Maybe you need a PAUSE statement inbetween your statements. When you put a pause there, you are giving your device enough time to read Port f the first time. Then you are outputting your data to your screen.

PORTF = %10110000
PAUSE 1000 'enough time to ENSURE device reads Portf
LCDOut $FE,1,#B8


Dwayne