From the second part of the brief:

Could even send a couple of numbers and have an operation done on them and the results sent back to the PC.
Hmm, a little stumped here. To my mind (after a lot of reading but obviously not enough!) when the first BYTE (number) arrives I need to send it to a memory location where it won't be overwritten when the second BYTE arrives.Then add the two together.

The only thing I've found so far that has a seperate address element is this (I think):

Code:
 Label VAR Size[Number of elements]
I'm thinking: MYVAR VAR BYTE [1] which is two elements 0,1. then somehow add element 0 to element1.

Warm or way off?

Dave