I am writing an assignment in MASM32 Assembly and I almost completed it but I have 2 questions I can't seem to answer. First, when I compile I get the message:
INVOKE requires prototype for procedure
&
invalid instruction operands
the first is due to this piece of code:
.data?
Freq DWORD ?
Time1 DWORD ?
Time2 DWORD ?
.code
start:
invoke QueryPerformanceFrequency, addr Freq
invoke QueryPerformanceCounter, addr Time1
now, I know that
The INVOKE directive must be preceded by a PROTO statement for the procedure being called.
but even though I found out the syntax for the PROTO statement:
label PROTO [distance] [langtype] [,[parameter]:tag]
I don't understand exactly what I should write so as to make it work and I don't even know what is causing the second error or how to fix it...=/
Edit
I already have those libraries and these also:
.386
.model flat, stdcall
option casemap :none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\masm32.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib
I'm working under Windows Vista just in case that helps as well.
Edit 2
If I write the Freq :QWORD after the .data I get this error message:
use of register assumed to ERROR
and also where should I add the
QueryPerformanceCounter PROTO :DWORD
Which as far as I know didn't make an error but still I'm not sure changed anything (I placed it before .data and after the libraries).