modexDrawBmpPBufRegion(page_t *page, int x, int y,\r
int rx, int ry, int rw, int rh, planar_buf_t *bmp) {\r
word poffset = (word) page->data + y*(page->width/4) + x/4;\r
- byte *data = *bmp->plane;//+bmp->offset;\r
+ byte *data = *bmp->plane[0];//+bmp->offset;\r
word bmpOffset = (word) data + ry * bmp->width + rx;\r
word width = rw;\r
word height = rh;\r
ROW_LOOP:\r
MOV CX, width ; count the columns\r
SCAN_LOOP:\r
+\r
+\r
+\r
+\r
+\r
+\r
+\r
+\r
+\r
MOVSB ; copy the pixel\r
+\r
SUB CX, 3 ; we skip the next 3\r
ADD SI, 3 ; skip the bmp pixels\r
LOOP SCAN_LOOP ; finish the scan\r
DEC rowCounter\r
JNZ ROW_LOOP ; do all the rows\r
;-- end plane painting\r
+\r
MOV AL, plane ; advance to the next plane\r
SHL AL, 1 ;\r
AND AL, 0x0f ; mask the plane properly\r
modexDrawSpritePBufRegion(page_t *page, int x, int y,\r
int rx, int ry, int rw, int rh, planar_buf_t *bmp) {\r
word poffset = (word)page->data + y*(page->width/4) + x/4;\r
- byte *data = *bmp->plane;//+bmp->offset;\r
+ byte *data = *bmp->plane[0];//+bmp->offset;\r
word bmpOffset = (word) data + ry * bmp->width + rx;\r
word width = rw;\r
word height = rh;\r