Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Watcom C/C++ User's Guide - Norton Guide http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]

     #pragma aux __syscall "*" \
                parm caller [] \
                value struct struct caller [] \
                modify [eax ecx edx]

Notes:

 1. Symbols names are not modified, that is, they are not adorned with
    leading or trailing underscores.

 2. Arguments are pushed on the stack from right to left.  That is, the last
    argument is pushed first.  The calling routine will remove the arguments
    from the stack.

 3. When a structure is returned, the caller allocates space on the stack.
     The address of the allocated space will be pushed on the stack
    immediately before the call instruction.  Upon returning from the call,
    register EAX will contain address of the space allocated for the return
    value.  Floating-point values are returned in 80x87 register ST(0).

 4. Registers EAX, ECX and EDX are not saved and restored when a call is
    made.

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson