qbasic.hlp (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 ABSOLUTE Statement
  Contents  Index  Back
──────────────────────────────────────────────────────────────────────────────
Transfers control to a machine-language procedure.
 
CALL ABSOLUTE ([argumentlist,] offset%)
 
    ■ argumentlist    Arguments passed to a machine-language procedure
                      as offsets from the current data segment.
    ■ offset%         The offset from the current code segment, set by
                      DEF SEG, to the starting location of the procedure.
 
Example:
    'Calls routine for printing the screen to a local printer.
    DIM a%(2)
    DEF SEG = VARSEG(a%(0))
    FOR i% = 0 TO 2
       READ d%
       POKE VARPTR(a%(0)) + i%, d%
    NEXT i%
    DATA 205, 5, 203  : ' int 5  retf  'Machine-language code
                                       'for printing screen.
    CALL ABSOLUTE(VARPTR(a%(0)))
    DEF SEG
 
See Also    CALL    VARPTR, VARSEG    Differences from BASICA