Parameter Passing in Fixed Memory Locations

Parameters passed to assembly routines in fixed memory locations use segments named ?function_name?BYTE and ?function_name?BIT to hold the parameter values passed to the function function_name. Bit parameters are copied into the ?function_name?BIT segment prior to calling the function. All other parameters are copied into the ?function_name?BYTE segment. All parameters are assigned space in these segments even if they are passed using registers. Parameters are stored in the order in which they are declared in each respective segment.

The fixed memory locations used for parameter passing may be in internal data memory or external data memory depending on the memory model used. The small memory model is the most efficient and uses internal data memory for parameter segments. The compact and large models use external data memory for the parameter passing segments.