#usr1 Msg dword [ebx+4*%%]
....

#usr2 ;cross vec4 
	movups       xmm1, dqword [v1]
	movups       xmm2,dqword [v2]
	pshufd       xmm5,xmm1,201
	pshufd       xmm0,xmm2,210
	pshufd       xmm4,xmm1,210
	pshufd       xmm3,xmm2,201
	mulps        xmm5, xmm0
	mulps        xmm4, xmm3
	subps        xmm5, xmm4    
	movups       dqword [v3],xmm5
....

#usr3 test eax
	test eax,eax
	jz @f
@@: 
....

#usr4 macro opryuqwkvnmzx a,b,c { local .1,.2,.3,.4,.5,.6,.7
.1:	mov ebx,0xAABBCCDD
	mov eax,0x0099EEFF
	mov esi,a
	mov edi,b
	mov ecx,c
.2:
	dec ecx
	jnz .2
.3:

.4:

.5:

.6:

.7: 

}
....
#usr5 ;matrix Identity
####matA:
	dd 1.0 , 0 , 0 , 0
	dd 0 , 1.0 , 0 , 0
	dd 0 , 0 , 1.0 , 0
	dd 0 , 0 , 0 , 1.0

####scaleX_ equ 1.0
####scaleY_ equ 0.5
####scaleZ_ equ 0.25
####posX_	equ 1.0
####posY_	equ 2.0
####posZ_	equ 3.0

####mat:
	dd ####scaleX_ , 0 , 0 , 0
	dd 0 , ####scaleY_ , 0 , 0
	dd 0 , 0 , ####scaleZ_ , 0
	dd ####posX_ , ####posY_ , ####posZ_ , 1.0
....
#usr6 copy txt
macro putTxtTo to,from {	
.0:     mov     al,[from]	;ebx nelza uzat
        vecToken
        test    al,al
        jz      .1
        mov     [to],al
        inc     to
        inc     from
        jmp     .0
.1:     mov     word [to],0
	}

	mov     ecx,1024*8000
        invoke  GlobalAlloc,GMEM_MOVEABLE,ecx ;+GMEM_DDESHARE
        mov     ebx,eax
        invoke  GlobalLock,ebx
        mov     edi,eax
        putTxtTo edi,esi
        invoke  GlobalUnlock,ebx
        invoke  OpenClipboard,[DLL_hwnd]
        invoke  EmptyClipboard
        invoke  SetClipboardData,CF_TEXT,ebx
        or      eax,eax
        jz      .copy_failed
        invoke  CloseClipboard        
.copy_failed:
        invoke  GlobalFree,ebx
	
....
#usr7 mmm
	mov  ####
	add  ####
	mov  ####
	call ####
	mov  ####
....

mov eax,$sin(%%*0.017453) ;radians to gradusi

mov eax,$sin(5*1) ;v radians

mov esi,$sin(%%*1)*20 ;v radians
mov esi,$sin(%%*1)+40

	mov eax,$sin(%_*0.2)
	movd xmm7,eax
	movss xmm%_,[v1+%_*4]
	mulss xmm%_,xmm7
	movss [v1+%_*4],xmm%%



reg0 equ eax
reg1 equ ebx
reg3 equ ecx
reg4 equ edx
reg5 equ esi
reg6 equ edi
reg7 equ ebp
reg8 equ esp 

addss   xmm7,xmm%_
mov     eax,reg%%

	mov  ecx,1
.%_:
	dec  ecx
	jnz  .%%


	movss xmm%_,[vecA+%_*4]
	mulss xmm%_,xmm%_
	movss [vecA+%_*4],xmm%%


	mov   eax,1.0
	movd  xmm7,eax
	movss xmm%_,[vecA+%_*4]
	addss xmm%_,xmm7
	movss [vecA+%_*4],xmm%%


	mov   eax,%_.5
	movd  xmm7,eax
	movss xmm%_,[vecA+%_*4]
	addss xmm%_,xmm7
	movss [vecA+%_*4],xmm%%


	mov   eax,$sin(%%*2)
	movd  xmm0,eax
