qa.hlp (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
CALL
   Summary  Detail  Example  Key to Flags
──────────────────────────────────────────────────────────────────────────────
 
Call Procedure                                   Flags:  O D I T S Z A P C
                                                         ═════════════════
Syntax:  CALL label
 
  Calls a procedure. The instruction does this by pushing the address of
  the next instruction onto the stack and transferring to the address
  specified by the operand. For NEAR calls, SP is decreased by 2, the
  offset (IP) is pushed, and the new offset is loaded into IP.
 
  For FAR calls, SP is decreased by 2, the segment (CS) is pushed, and
  the new segment is loaded into CS. Then SP is decreased by 2
  again, the offset (IP) is pushed, and the new offset is loaded into
  IP. A subsequent RET instruction can pop the address so that
  execution continues with the instruction following the call.
                                    -♦-