Hi Pic B.
In assembly, the question mark is just another character. It doesn't have any special meaning to the compiler, and does not get replaced with anything else.
However, it does have a meaning in the context of these macro's. It is a delimiter between the COMMON macro name and the parameter types that will follow. For instance:
MOVE?CW 000h, _y
MOVE is a common macro that can be used to copy variables and constants to another variable. After the question mark the 2 letters CW indicate the type of variables that it will use for the copy. The letters are as follows.
A = W register
T = Bit
C = Constant
B = Byte
W = Word
L = Label
So, in the MOVE example above, it will copy the constant 0 the the word size variable y.
<hr>
CMPGT?WCL _y, 003FFh, L00002
This one is "Compare Greater than", it will compare a Word against a Constant and if it is greater, it jumps to Label L00002<hr>
LCDOUT?C 0FEh
Will send the Constant 0FEh to the LCD<hr>
The actual macros that are used can be found in the PBPPIC14.LIB file in your PBP folder, and also in the PBPPIC14.MAC file.
I think you will learn a lot by looking through those files. There's no need to switch to Proton to learn how Picbasic Pro compiles it's programs.
HTH,
Darrel
Bookmarks