... operator or, for the DATA and BIT spaces, by a direct (full) address reference.
High Byte - reference to the high-order byte of an address. Generated by the HIGH operator. Applicable to XDATA and CODE ...
Pascal Compiler for 8051 Microcontrollers
Methods are always reentrant. Before a call to the method is made the following is pushed on the XDATA stack:
Address for String result (for functions ...
Pascal Compiler for 8051 Microcontrollers
For reentrant procedures all parameters are pushed on XDATA stack. Functions return simple result in first register set (R5R4R3R2). For functions which return ...
... set with compiler directive $MG MemoryType (DATA, IDATA or XDATA) and defaults to DATA. This memory type can be overridden for each variable declaration.
Local variables
All local variables in normal ...
...
Use DMTINDEX to get the index of TObjectType.DynamicMethod.
For reentrant procedures and functions the following symbols are defined:
@LOCALS
@LOCALS returns offset of local variables on XDATA ...
... has the same type as its argument, which can be Integer or Real.
Addr
Function Addr (X: T_DATA_Variable): ShortPtr;
Function Addr (X: T_XDATA_Variable): Pointer;
Function Addr (X: TProcedure): ...
Pascal Compiler for 8051 Microcontrollers
Turbo51 variables can have memory type directives DATA, IDATA, or XDATA which overrides default memory type for variables (IDATA memory with addresses starting ...
... (points to IDATA), Pointer (points to XDATA) and CodePointer (points to CODE). Similarly there are ShortPChar, PChar and CodePChar. Pointers to ordinal types can have memory type directive DATA, IDATA ...
... XDATA memory. The syntax is equivalent to that in Borland Turbo Pascal 7. Turbo51 supports:
Inheritance
Static and dynamic objects
Private fields
Constructors and destructors
Static, virtual ...
... declares features of the microcontroller including the IDATA memory with the $IDATA directive.
XDATA memory
By default there is no XDATA memory. This can be changed either in the main program with ...
... [CODE Size], [XDATA Start], [XDATA Size], [Heap Size]
Memory sizes (only in program), default values: $0000 $10000 $0000 $0000 $0000
IDATA
IDATA memory available
XDATA
XDATA memory available ...
... INTERRUPT, PRIVATE, PUBLIC, REENTRANT, USING, USINGANY, VIRTUAL, VOLATILE, XDATA ...
...
Boolean variables use BIT (boolean) memory in 8051. If you would like to use boolean variables in DATA or XDATA memory (or even in CODE memory as typed constant) then you have two possibilities:
Use ...