When the ASPI entry-point parameters have been successfully determined, calling ASPI uses the values appropriate to the mode of the processor. The address of the ASPI request block and the DS of the ASPI entry point must be pushed onto the stack before making a FAR call. The following is an example of how to call ASPI:
                          PUSH            AX                      ;Save AX
                          PUSH            @ASPI_SRB               ;Push pointer to ASPI SRB
                          SMSW            AX                      ;Check mode of processor
                          TEST            AX,PROTECT_MODE
                          JNZ             PROT_CALL

                          PUSH            Real_DS
                          CALL            [ASPI_REAL]
                          JMP             CALL_DONE

        PROT_CALL:        PUSH            Prot_DS
                          CALL            [ASPI_PROT]

        CALL_DONE:        ADD             SP,6                    ;Restore the stack
                          POP             AX


[Back: Accessing ASPI]
[Next: Accessing ASPI At Initialization Time]