;
; =============================================================================================== 
; RqUtils.dll          MASM 8.2            July 02nd, 2004                    by Jacques Philippe 
; Documentation                                                          Version 1.0.0  Release 1    
; ===============================================================================================
; RapidQ Declarations
; ===================  
  Declare Function CallAddress Lib "RqUtils.dll" Alias "CallAddress" _
                                (AddressToCall As Long, ptrToArgumentsStructure As Long) As Long
  Declare Function CallPointer Lib "RqUtils.dll" Alias "CallPointer" _
                                (PointerToCall As Long, ptrToArgumentsStructure As Long) As Long
  Declare Function ReadDWordAtAddress Lib "RqUtils.dll" Alias "ReadDWordAtAddress" _
                                (AddressToRead As Long) As Long
  Declare Function ReadWordAtAddress Lib "RqUtils.dll" Alias "ReadWordAtAddress" _
                                (AddressToRead As Long) As Long
  Declare Function ReadByteAtAddress Lib "RqUtils.dll" Alias "ReadByteAtAddress" _
                                (AddressToRead As Long) As Long
  Declare Function ReadDWordAtPointer Lib "RqUtils.dll" Alias "ReadDWordAtPointer" _
                                (PointerToRead As Long) As Long
  Declare Function ReadWordAtPointer Lib "RqUtils.dll" Alias "ReadWordAtPointer" _
                                (PointerToRead As Long) As Long
  Declare Function ReadByteAtPointer Lib "RqUtils.dll" Alias "ReadByteAtPointer" _
                                (PointerToRead As Long) As Long

; ===============================================================================================
;
; FUNCTION CallAddress
; ====================
;     RQ Declaration and Prototype :
;
;       Declare Function CallAddress Lib "RqUtils.dll" Alias "CallAddress" _
;                                (AddressToCall As Long, ptrToArgumentsStructure As Long) As Long
;
;     The structure is an Array of DWORDs (Long or Integer or DWORD in RapidQ), the first
;     being the number of arguments in the structure, the other one are the arguments ordered
;     as in a RapidQ function. These arguments will be pushed on stack begining by the last
;     one to respect the ???C??? calling convention.
;       Array(0) = Number of argument
;       Array(1) = Argument_1
;       Array(2) = Argument_2
;       ...
;       Array(n) = Argument_n           '      No limit on n here
;
;     The function returns 0 if one or both of the two arguments passed are 0, in that case,
;     the AddressToCall is NOT called. If the two arguments are different from 0, the function
;     returns the value returned by the function called at AddressToCall.
; ===============================================================================================
; FUNCTION CallPointer
; ====================
;     RQ Declaration and Prototype :
;
;       Declare Function CallPointer Lib "RqUtils.dll" Alias "CallPointer" _
;                                (PointerToCall As Long, ptrToArgumentsStructure As Long) As Long
;
;     The structure is an Array of DWORDs (Long or Integer or DWORD in RapidQ), the first
;     being the number of arguments in the structure, the other one are the arguments ordered
;     as in a RapidQ function. These arguments will be pushed on stack begining by the last
;     one to respect the ???C??? calling convention.
;       Array(0) = Number of argument
;       Array(1) = Argument_1
;       Array(2) = Argument_2
;       ...
;       Array(n) = Argument_n           '      No limit on n here
;
;     The function returns 0 if one or both of the two arguments passed are 0, in that case,
;     the AddressToCall is NOT called. If the two arguments are different from 0, the function
;     returns the value returned by the function called at AddressToCall.
;
; ===============================================================================================
; FUNCTION ReadDWordAtAddress 
; ===========================
;     RQ Declaration and Prototype:
;
;		Declare Function ReadDWordAtAddress Lib "RqUtils.dll" Alias "ReadDWordAtAddress" _
;                                (AddressToRead As Long) As Long
;
; ===============================================================================================
; FUNCTION ReadWordAtAddress 
; ===========================
;     RQ Declaration and Prototype:
;
;		Declare Function ReadWordAtAddress Lib "RqUtils.dll" Alias "ReadWordAtAddress" _
;                                (AddressToRead As Long) As Long
;
; ===============================================================================================
; FUNCTION ReadByteAtAddress 
; ===========================
;     RQ Declaration and Prototype:
;
;		Declare Function ReadByteAtAddress Lib "RqUtils.dll" Alias "ReadByteAtAddress" _
;                                (AddressToRead As Long) As Long
;
; ===============================================================================================
; FUNCTION ReadDWordAtPointer 
; ===========================
;     RQ Declaration and Prototype:
;
;		Declare Function ReadDWordAtPointer Lib "RqUtils.dll" Alias "ReadDWordAtPointer" _
;                                (PointerToRead As Long) As Long
;
; ===============================================================================================
; FUNCTION ReadWordAtPointer 
; ===========================
;     RQ Declaration and Prototype:
;
;		Declare Function ReadWordAtPointer Lib "RqUtils.dll" Alias "ReadWordAtPointer" _
;                                (PointerToRead As Long) As Long
;
; ===============================================================================================
; FUNCTION ReadByteAtPointer 
; ===========================
;     RQ Declaration and Prototype:
;
;		Declare Function ReadByteAtPointer Lib "RqUtils.dll" Alias "ReadByteAtPointer" _
;                                (PointerToRead As Long) As Long
;
; ===============================================================================================
;
