Previous 199869 Revisions Next

r20335 Saturday 19th January, 2013 at 05:29:31 UTC by David Haywood
optimize simple draw cases with some early bail outs - mariocla intro (nw)
[src/mess/drivers]vboy.c

trunk/src/mess/drivers/vboy.c
r20334r20335
356356
357357   for(y=0;y<=h;y++)
358358   {
359      INT32 y1 = (y+gy);
360
361      if ((y1 < cliprect.min_y) || (y1 > cliprect.max_y))
362         continue;
363
364      int src_y = y+my;
365
359366      for(x=0;x<=w;x++)
360367      {
361         int src_x,src_y;
362         INT32 y1 = (y+gy);
363368         INT32 x1 = (x+gx);
364         int pix = 0;
365369
366370         x1 += right ? -gp : gp;
367371
372         if ((x1 < cliprect.min_x) || (x1 > cliprect.max_x))
373            continue;
374
375         int src_x;
368376         src_x = x+mx;
369377         if (mode==1)
370378            src_x += (INT16)READ_BGMAP(param_base + (y*2+(right ^ 1)));
371379
372         src_y = y+my;
373380         src_x += right ? -mp : mp;
374381
382
383         int pix = 0;
375384         if(ovr && (src_x > x_mask || src_y > y_mask || src_x < 0 || src_y < 0))
376385         {
377386            pix = READ_OVR_TEMPDRAW_MAP((src_y & 7)*8+(src_x & 7));
r20334r20335
382391         }
383392
384393         if(pix != -1)
385            if (cliprect.contains(x1, y1))
386               bitmap.pix16(y1, x1) = machine().pens[pix & 3];
394            bitmap.pix16(y1, x1) = machine().pens[pix & 3];
387395      }
388396   }
389397}

Previous 199869 Revisions Next


© 1997-2024 The MAME Team