Advertisement
Guest User

hitHopoChord.asm

a guest
Sep 2nd, 2015
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. ; bool _fastcall hitHopoChord( int fretsHeld, int noteMask )
  3. ; _fretsHeld$ = ecx
  4. ; _noteMask$ = edx
  5.  
  6.     push        esi         ; Preserve ESI
  7.  
  8.     mov     esi, ecx
  9.     mov     eax, esi        ; if ( (fretsHeld & noteMask) != noteMask)
  10.     and     eax, edx
  11.     cmp     eax, edx
  12.     je      @CHECK1_PASSED
  13.    
  14. @CHECK1_FAILED:
  15.     xor     al, al          ; return false;
  16.     pop     esi
  17.     ret     0
  18.    
  19. @CHECK1_PASSED:
  20.     mov     ecx, edx
  21.     call        ?getAnchoredMask
  22.     and     eax, esi
  23.     cmp     eax, esi
  24.     pop     esi
  25.     sete        al      ; return ( (fretsHeld & getAnchoredMask(noteMask)) == fretsHeld )
  26.     ret     0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement