[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] XaAES sources for FreeMiNT 1.16.3



Am 27.11.2009, 18:10 Uhr, schrieb Mark Duckworth
<mduckworth@atari-source.org>:

I looked into this myself. For some reason the aranym pixel format signature is different than XaAES is expecting. I would suspect this

I have this in aranym but only if running in 8-bit, never on 32-bit depth.
I am 85% sure that its an fvdi-issue (here: vro_cpyfm). But if I apply the
patch below to XaAES, it seems to work. This is (was) really annoying.

I'm not sure if we mean the same, so I attached a screenshot.

The patch places the copied rectangle on a word-boundary.



--- orig/xa_vdi.c 2009-08-25 20:16:22.187500000 +0200
+++ xa_vdi.c  2009-11-27 19:53:15.625000000 +0100
@@ -852,10 +856,15 @@

  if (r.w > 0 && r.h > 0)
  {
+   short xd = r.x & 0x000f;
+   r.x &= ~0x00f;
+   r.w += xd;
+
    rtopxy(pnt, &r);
    ritopxy(pnt + 4, 0, 0, r.w, r.h);

    DIAG((D_menu, NULL, "form_save %d/%d,%d/%d", r.x, r.y, r.w, r.h));

    Mpreserve.fd_w = r.w;
    Mpreserve.fd_h = r.h;
@@ -907,10 +916,15 @@

    if (r.w > 0 && r.h > 0)
    {
+     short xd = r.x & 0x000f;
+     r.x &= ~0x000f;
+     r.w += xd;
+
      rtopxy(pnt+4, &r);
      ritopxy(pnt,0,0,r.w,r.h);

DIAG((D_menu, NULL, "form_restore %d/%d,%d/%d from %lx", r.x, r.y, r.w, r.h, *area));

      Mpreserve.fd_w = r.w;
      Mpreserve.fd_h = r.h;

Attachment: 4b10245a.gif
Description: GIF image