| .CALL ABSOLUTE Statement Details. |
|
  QuickSCREEN       Details       Example       Contents       Index |
| ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ |
| CALL ABSOLUTE Statement Details |
|
| Syntax |
|   CALL ABSOLUTE([argumentlist,]integervariable) |
|   |
|   Argument          Description |
|   argumentlist      Optional arguments passed to a machine-language |
|                     procedure. |
|   integervariable   An integer variable containing a value that is |
|                     the offset from the beginning of the current |
|                     code segment, set by DEF SEG, to the starting |
|                     location of the procedure. The integervariable |
|                     argument is not passed to the procedure. Your |
|                     program may need to execute a DEF SEG statement |
|                     before executing CALL ABSOLUTE to set the code |
|                     segment for the called routine. |
|   |
|                     Using a noninteger value for integervariable |
|                     produces unpredictable results. |
|   |
| Arguments in argumentlist are passed to the machine-language program |
| as offsets (near pointers) from the current data segment. Although |
| arguments are passed as offsets, the machine-language program is |
| invoked with a far call. |
|   |
|   Note: The CALL ABSOLUTE statement is provided to maintain |
|         compatibility with earlier versions of BASIC. Mixed-language |
|         programming using the CALL statement extensions and the new |
|         DECLARE statement provide a simpler way to use assembly |
|         language with BASIC. |
|   |
|         Also, in order to use CALL ABSOLUTE you must start QuickBASIC |
|         with the correct Quick library, link your program with QB.LIB, |
|         or use the QB.QLB Quick library. See the disk-contents list |
|         for the locations of these files. |
|   |
| Differences from BASICA |
|   |
| Assembly-language programs that are invoked from BASICA and that have |
| string arguments must be changed because string descriptors are now |
| four bytes long. The four bytes are the low byte and high byte of the |
| string length followed by the low byte and high byte of the string |
| address. |
|   |