Subject: Re: PicassoII, Amiga 2000, 040
To: apm" , "amiga-x <amiga-x@NetBSD.ORG>
From: Markus Illenseer <markus@tiger.teuto.de>
List: amiga-x
Date: 06/08/1995 23:54:12
Antti Miettinen wrote:
> The result with X11 has always been black screen. 

 This problem is known for long - many solutions been triend since then -
no success.

> I have tried the X servers Xamiga24, Xcl, Xamiga24-950305 and
> Xcl-950408.

 Has nothing to do with the servers, but with the grf-device.

> The cirrus-3 package has comments that the Picasso has some kind of
> ZorroII to ISA translation which causes black screen problems. But why
> would this only be relevant with a 040? 

 Didn't I explain that in this doc?  Hm.  Timing problem and design error
in the 040 to Zorro interface of almost all 040 boards for A2000.

> It seems that I don't really
> understand what the comments are referring to as they claim that the
> problem could be solved by adding 0xffff to some register addresses.
> In my limited understanding this would only lead to accessing wrong
> addresses. The whole register block is 64k, isn't it?

 Yes 64K, and by adding 0xfff (not 0xffff as stated in the doc) you will
get a byte-swapped address after it was passed through the 040 to Zorro
interface.  Call that black magic :-)

> #if 1
>     *(ba + 0x3c6) = 0xff;
>     *(ba + 0x3c6);
>     *(ba + 0x3c6);
>     *(ba + 0x3c6);
>     *(ba + 0x3c6);
>     *(ba + 0x3c6) = 0xd0;
> #endif
>     
> I was at least able to see something. Without those lines the screen
> remained white. So is this piece of code accessing the hidden DAC
> register, which is referred to in grf_clreg.h and why would this make
> any difference?

 Interesting piece of code.  Did you set "1" to something?  Is the compiler
supposed to use the stuff inside the if-endif?  For I believe a black
screen means:  not initialized at all and a white screen:  not initialized
correctly, you seem to be on the right trace.

> Are the sources for the various X servers available from somewhere?

 You don't need them?!

-- 
Markus Illenseer