When you compile rfbproto.c it includes the hextile.c file 3 times, each time with the macro BPP defined differently (BPP = 8, 16 or 32). hextile.c then defines a macro GET_PIXEL so that it expands as GET_PIXEL8, GET_PIXEL16 or GET_PIXEL32, which is normally finally expanded with the values defined in rfbproto.c.

On the Mac for some reason that last expansion is not happening, so I am suggesting manually expanding the GET_PIXEL macro in hextile.c the one place that it is used. Since you need to do this for all three BPP values you need to create 3 versions of hextile.c.

If you look at rfbproto.c you'll see the 3 places it includes hextile.c: change those.
In hextile.c, search for the sole "call" to GET_PIXEL in the code and change that.


So in hextile8.c you'll have " ... for (i = 0; i < nSubrects; i++) { GETPIXEL8(fg,ptr); ..."

Hope that makes it clear enough.

-- Ron --


On Sunday, June 1, 2003, at 02:38 PM, Jessica Blank wrote:


Hi there! Finally, a real response. OK, pardon my ignorance, but I am not
familiar with the issues surrounding preprocessor macros. I do not see
exactly what you are asking me to do? Replace the macros with ... what?


I was thinking earlier that if there was a way I could simply reimplement
GET_PIXEL8, etc. as FUNCTONS rather than macros...


Could you clarify a bit? What exactly would forking off three versions of
hextile.c do?


On Sun, 1 Jun 2003, Ron Goldman wrote:

Try compiling rfbproto.c with the -E switch to view just the output
from the preprocessor. Since GET_PIXEL8, etc. are macros if you see
them in the output file then the problem is that the preprocessor is
not expanding them correctly for some reason.

A very crude hack in that case is to just make 3 copies of the file
hextile.c (hextile8.c, hextile16.c & hextile32.c) and edit them so that
the call to GET_PIXEL is GET_PIXEL8, 16 or 32. Then edit rfbproto.c so
the 3 includes of hextile.c use the modified files.


Good luck.

-- Ron --

p.s. personally I use tightvnc and find that the Java applet turned
into a Mac OS X app is plenty fast enough, though it does take a while
to start up.


J e s s i c a L e a h B l a n k
_______________________________________________
VNC-List mailing list
[EMAIL PROTECTED]
To remove yourself from the list visit:
http://www.realvnc.com/mailman/listinfo/vnc-list

Reply via email to