;************************************************************ ; The following macros are made by Fredrik Klasson (aka Scientica) ; You may freely use this macros, however I'd like you to include ; these lines in association with these macros. :) macro glPush GLfloatVar { push dword [GLfloatVar+4] push dword [GLfloatVar] } macro glCall proc,[arg] { reverse glPush arg common call [proc] } macro glPush2 GLfloatVar { name = GLfloatVar virtual at 0 dq GLfloatVar load name#.l dword from 0 load name#.h dword from 4 end virtual push dword name.h push dword name.l } macro glCall2 proc,[arg] { reverse glPush2 arg common call [proc] } macro glCall3 proc,[arg] { reverse if arg eqtype 1.0f glPush2 arg else addr = arg glPush addr end if common call [proc] } macro glColorVertex3d red,green,blue, x,y,z { glCall2 glColor3d,red,green,blue glCall2 glVertex3d,x,y,z } macro glTextQuad3d s,t, x,y,z { glCall2 glTexCoord2d,s,t glCall2 glVertex3d,x,y,z } macro glTextQuad3f s,t, x,y,z { invoke glTexCoord2f,s,t invoke glVertex3f,x,y,z }