diff options
author | yenatch <yenatch@gmail.com> | 2018-06-04 00:47:16 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-04 00:47:16 -0400 |
commit | d596a0c83bfbb97bff5cdb5b3bba925d3f798fa1 (patch) | |
tree | 5bc4cbdd09186fbdf2f7e2294fdde443ff8900bd /macros/code.asm | |
parent | 53bcd8f46ca4f78381af70f55d03f3180be277de (diff) | |
parent | c7bb2d15cfb32a5e965933b90e0acb497c7bf7b2 (diff) |
Merge pull request #514 from Rangi42/master
[Ready to merge] Named constants for sprite movement data bit flags + other minor fixes
Diffstat (limited to 'macros/code.asm')
-rw-r--r-- | macros/code.asm | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/macros/code.asm b/macros/code.asm index 1fb651f30..09b15255e 100644 --- a/macros/code.asm +++ b/macros/code.asm @@ -36,8 +36,10 @@ jumptable: MACRO ENDM maskbits: MACRO -; masks just enough bits to cover the argument +; masks just enough bits to cover the first argument +; the second argument is an optional shift amount ; e.g. "maskbits 26" becomes "and %00011111" (since 26 - 1 = %00011001) +; and "maskbits 3, 2" becomes "and %00001100" (since "maskbits 3" becomes %00000011) ; example usage in rejection sampling: ; .loop ; call Random @@ -50,7 +52,11 @@ if x + 1 < (\1) x = x << 1 | 1 endc endr +if _NARG == 2 + and x << (\2) +else and x +endc ENDM calc_sine_wave: MACRO |