The MASM Forum

General => The Campus => Topic started by: digelo on July 22, 2012, 11:27:58 PM

Title: C to masm
Post by: digelo on July 22, 2012, 11:27:58 PM
hi
How can i define this in masm32 ?

#define E_HANDLER( number ) \
__declspec( naked ) void interrupt_##number( void ) \
{ \
...
}
Title: Re: C to masm
Post by: qWord on July 22, 2012, 11:41:16 PM
E_HANDLER macro number

OPTION PROLOGUE:none
OPTION EPILOGUE:none

interrupt_&number& proc
;...
interrupt_&number& endp

OPTION PROLOGUE:PrologueDef
OPTION EPILOGUE:EpilogueDef

; uncomment as needed
; EXITM <OFFSET interrupt_&number&> ; <- function-like macro that return the handler address
; EXITM <> ; <- function-like macro, returns nothing
endm
Title: Re: C to masm
Post by: jj2007 on July 23, 2012, 03:13:06 AM
Will work in most cases but beware of inserting that macro in the middle of nowhere...

any MACRO args
   jmp endofany
   anyP proc args
  ..
  ret
  anyP endp
endofany: