X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fmodex16.c;h=63231108b1968d7f7d3b4606ac29bdf863714ab4;hb=2eb78909ad7e8079fbec7dbe794fe0eac01e15de;hp=fe358fcee744b89a9eb8bf272d7367271f5376e8;hpb=71e03faf012169d05f67873dacded16f79b6e59e;p=16.git diff --git a/src/lib/modex16.c b/src/lib/modex16.c index fe358fce..63231108 100755 --- a/src/lib/modex16.c +++ b/src/lib/modex16.c @@ -401,18 +401,19 @@ modexClearRegion(page_t *page, int x, int y, int w, int h, byte color) { void modexDrawPBufRegion (page_t *page, int x, int y, int rx, int ry, int rw, int rh, planar_buf_t *p, boolean sprite) { int plane; - int px, py, i; - px=x; - py=y; + //const int px, py; + int i; + const int px=x-page->dx; + const int py=y-page->dy; for(plane=0; plane < 4; plane++) { - i=(rx/4)+((rx/4)*ry); + i=(rw/4)+((p->pwidth)*ry); modexSelectPlane(PLANE(plane+x)); for(; y < py+rh; y++) { //for(px=0; px < p->width; px++) { //printf("%02X ", (int) p->plane[plane][i++]); // _fmemcpy(buff, &(p->plane[plane][i+=p->pwidth]), p->pwidth); // printf("buff %u==%s\n", y, *buff); - _fmemcpy(page->data + (((page->width/4) * (y+page->dy)) + ((x+page->dx) / 4)), &(p->plane[plane][i+=rw]), rw/4); + _fmemcpy(page->data + (((page->width/4) * (y+page->dy)) + ((x+page->dx) / 4)), &(p->plane[plane][i+=p->pwidth]), rw/4); //} } x=px; @@ -423,13 +424,13 @@ void modexDrawPBufRegion (page_t *page, int x, int y, int rx, int ry, int rw, in /*temp*/ void -DrawPBuf(page_t *page, int x, int y, planar_buf_t *p, boolean sprite) +modexDrawPBuf(page_t *page, int x, int y, planar_buf_t *p, boolean sprite) { int plane; - int px, py, i; + int i; // byte near *buff; - px=x; - py=y; + const int px=x; + const int py=y; // buff = _nmalloc(p->pwidth+1); // TODO Make this fast. It's SLOOOOOOW // for(plane=0; plane < 4; plane++) {