![]() | LEGO Mindstorms EV3 |
Examples of parsing parameters to byte codes :
1. Move 8 bit signed value to floating point variable
opMOVE8_F (SOURCE, DESTINATION)
Parameters:
(DATA8) SOURCE (could be constant or variable number)
Returns:
(DATAF) DESTINATINATION (this must be a variable number that has 4 bytes allocated and is aligned at a 4 byte boundary)
2. Pass two parameters to a SUBCALL
Parameters must be aligned so 32 bit variables come first then 16 bit and at last 8 bit variables
Parameters are placed in the SUBCALLs local variable space so the first parameter will be LV0(0)
When referring to parameters in a SUBCALL refer to local variables.
Array handles must be seen as input (or input/output) parameters because it is a handle (number)
to be copied into the subcalls local parameters.