summaryrefslogtreecommitdiff
path: root/macros/gfx.asm
diff options
context:
space:
mode:
authorDaniel Harding <33dannye@gmail.com>2020-05-16 21:42:24 -0500
committerGitHub <noreply@github.com>2020-05-16 21:42:24 -0500
commit8a924f1f783572ff395f617f99546b4c949c8b04 (patch)
tree1b6c7de331cb983256651b11b8adf413a3a434f1 /macros/gfx.asm
parent88d7e9a34a8b610b358cec1ccc6660634ca9ce80 (diff)
parented94962edf1668aba3f60938e8a5ba8040e2a59c (diff)
Merge pull request #30 from entrpntr/spring-cleaning
Spring Cleaning
Diffstat (limited to 'macros/gfx.asm')
-rwxr-xr-xmacros/gfx.asm32
1 files changed, 29 insertions, 3 deletions
diff --git a/macros/gfx.asm b/macros/gfx.asm
index 2753373e..2c67cfc8 100755
--- a/macros/gfx.asm
+++ b/macros/gfx.asm
@@ -1,9 +1,7 @@
RGB: MACRO
rept _NARG / 3
dw palred (\1) + palgreen (\2) + palblue (\3)
- shift
- shift
- shift
+ shift 3
endr
ENDM
@@ -22,3 +20,31 @@ tile EQUS "+ LEN_2BPP_TILE *"
; example usage:
; INCBIN "foo.gbcpal", middle_colors
middle_colors EQUS "PAL_COLOR_SIZE, PAL_COLOR_SIZE * 2"
+
+dbpixel: MACRO
+if _NARG >= 4
+; x tile, y tile, x pixel, y pixel
+ db \1 * TILE_WIDTH + \3, \2 * TILE_WIDTH + \4
+else
+; x tile, y tile
+ db \1 * TILE_WIDTH, \2 * TILE_WIDTH
+endc
+ENDM
+
+ldpixel: MACRO
+if _NARG >= 5
+; register, x tile, y tile, x pixel, y pixel
+ lb \1, \2 * TILE_WIDTH + \4, \3 * TILE_WIDTH + \5
+else
+; register, x tile, y tile
+ lb \1, \2 * TILE_WIDTH, \3 * TILE_WIDTH
+endc
+ENDM
+
+depixel EQUS "ldpixel de,"
+bcpixel EQUS "ldpixel bc,"
+
+dbsprite: MACRO
+; x tile, y tile, x pixel, y pixel, vtile offset, attributes
+ db (\2 * TILE_WIDTH) % $100 + \4, (\1 * TILE_WIDTH) % $100 + \3, \5, \6
+ENDM