Subject: Re: I think I figgered out why it's stopping.
To: <>
From: Rick C. Petty <pett0019@gold.tc.umn.edu>
List: port-mac68k
Date: 08/01/1996 21:45:25
On Wed, 31 Jul 1996, Chris Mason wrote:

> I'm not a "real" mac programmer, but I think I know what's going on here.
> In the snippet below, screen24 gets the base address of the bitmap (is this
> actually in the vram or whatever?) of the grafPort.  Then you & it with
> 0xf0000000 to figure out if its a 24bit address.

This may work, though you mean 0xff000000 instead.

> [snip]
> if (screen24 & 0xf0000000) {

change right here.

> [snip]
>         scr_slot = (screen24 & 0xf00000) >>20;

and here...

>         scr_addr = (screen24 & 0xfffff);

and this is                      0xffffff);

>         screen32 = 0xf0000000 | (scr_slot << 24) | scr_addr;
                     0xff000000

> I really have no idea what the last three lines are supposed to do.  All I
> know is that portBits.baseAddr is the location of the bitmap of the current
> grafPort.  I'm not so sure that, if I didn't have a video card, this would
> actually exist.  Could QD be faking it, that is pointing to a bogus
> grafPort.bitmap, since there's no video hardware?

Some graphics devices have "direct pixel addressing" which means they 
have a ptr to their bitmap.  Though I haven't yet seen a mac setup that 
doesn't, but it could exist...

> Again, I'm really familiar with QD, but could this be the problem??

It's possible.  I would recommend working with the Graphics Device Manger 
in MacOS to "steal" the video settings.  I tried working with this but 
crashed my mac miserably.  [I'm still recovering.]  Since your code is 
for MacOS, you might as well go all the way...

--Rick C. Petty,  aka Snoopy                <h1><blink>I hate Netscape!
_______________________________________________________________________
SQL/Perl/Java/HTML/C++ programmer  http://www.itlabs.umn.edu/~pett0019/
pett0019@gold.tc.umn.edu, pett0019@itlabs.umn.edu, rpetty@future.i5.com