; substitute obj/msvc/asmdef.inc for testing asmlock.asm  
; by Matt Smith


; ALLEGRO_WINDOWS, ALLEGRO_COLOR8/16/24/32 and ALLEGRO_MMX are all explicitly defined here in asmdef.inc 
; no idea why - MS 



;offsets of BITMAP struct
BMP_W = 0 
BMP_H = 4 
BMP_CLIP = 8 
BMP_CL = 12 
BMP_CR = 16 
BMP_CT = 20 
BMP_CB = 24
BMP_VTABLE = 28 
BMP_WBANK = 32 
BMP_RBANK = 36
BMP_DAT = 40 
BMP_ID  = 44
BMP_EXTRA = 48 
BMP_XOFFSET = 52 
BMP_YOFFSET = 56 
BMP_SEG = 60 
BMP_LINE = 64 
NEWLINE = 0 


;bitfields of BMP_ID
BMP_ID_VIDEO    = 80000000h
BMP_ID_SYSTEM   = 40000000h
BMP_ID_SUB      = 20000000h
BMP_ID_PLANAR   = 10000000h
BMP_ID_NOBLIT   = 08000000h
BMP_ID_LOCKED   = 04000000h
BMP_ID_AUTOLOCK = 02000000h
BMP_ID_MASK     = 01FFFFFFh



CMP_PLANAR = 0
CMP_COLOR_DEPTH = 2
CMP_DRAW = 8


VTABLE_COLOR_DEPTH = 0
VTABLE_MASK_COLOR = 4
VTABLE_UNBANK = 8

RLE_W = 0
RLE_H = 4
RLE_DAT = 16

GFXRECT_WIDTH  = 0
GFXRECT_HEIGHT = 4
GFXRECT_PITCH = 8
GFXRECT_DATA = 12


; drawing mode enums
DRAW_SOLID = 0
DRAW_XOR = 1
DRAW_COPY_PATTERN = 2
DRAW_SOLID_PATTERN = 3
DRAW_MASKED_PATTERN = 4
DRAW_TRANS = 5

;mask colours for each bit depth (assumes either RGB or BGR)
MASK_COLOR_8 = 0
MASK_COLOR_15 = 31775
MASK_COLOR_16 = 63519
MASK_COLOR_24 = 16711935


;offsets in POLYGON_SEGMENT struct 

POLYSEG_U = 0 
POLYSEG_V = 4
POLYSEG_DU = 8 
POLYSEG_DV = 12 
POLYSEG_C = 16 
POLYSEG_DC = 20 
POLYSEG_R = 24 
POLYSEG_G = 28 
POLYSEG_B = 32 
POLYSEG_DR = 36 
POLYSEG_DG = 40 
POLYSEG_DB = 44 
POLYSEG_Z = 48 
POLYSEG_DZ = 52 
POLYSEG_FU = 56 
POLYSEG_FV = 60 
POLYSEG_DFU = 64 
POLYSEG_DFV = 68 
POLYSEG_TEXTURE = 72 
POLYSEG_UMASK = 76 
POLYSEG_VMASK = 80 
POLYSEG_VSHIFT = 84 
POLYSEG_SEG   = 88 
POLYSEG_ZBADDR = 92 
POLYSEG_RADDR = 96 



ERANGE = 34

;offsets in MATRIX struct
M_V00 = 0 
M_V01 = 4 
M_V02 = 8 
M_V10 = 12 
M_V11 = 16 
M_V12 = 20 
M_V20 = 24 
M_V21 = 28 
M_V22 = 32 

M_T0 = 36 
M_T1 = 40 
M_T2 = 44 


; misc macros. unused at present
;
;#define FSEG
;#define FUNC(name)            .globl _##name ; _align_ ; _##name:
;#define GLOBL(name)           _##name
