
 grf_cl - grafic device for cirrus logic
 GRFTOGGLE - ioctl to toggle between both displays
 to add support or Cirrus Logic based graphics boards into NetBSD-Amiga 1.0. 

 Supported are the following boards:

 Picasso II RTG with 2 MB RAM (not suported are: 1MB and Picasso in 
  segmented mode), all board revisions
 Spectrum (EGS) with 2 MB RAM - both board revisions
 Piccolo with 2 MB RAM

 Picasso: Kari Mettinen, Markus Illenseer, Bernd Ernesti
 Spectrum: Ezy (??)
 Piccolo: Michael Filgner

 Please report all bugs an errors either to the mailling list
(best and recommended place): amiga-x@netbsd.org or to 
markus@techfak.uni-bielefeld.de (not recommended :-)

 Currently not supported is multiple graphics board setup. Only the
first board on the bus will be initialized.

 Blitter support is not in the kernel (and probably doesn't even belong
there). An Xcl is in progress and available as experimental server.

 Do not wonder about the initializing routine at the beginning where
the boards are recognized even twice. Once or the memory (2MB) and the
second time or the IO-space (64KB). As no video mode is used at kernel
start-time, the board will register with size 0x0 at 0Bit depth.

 A message 'grfcl attached to Picasso II' (or other boards) *will* pop
up if initialization has been successfull. Check with 'dmesg' after boot
if required.

 The message 'grfcl not configured' is ok, because at that time no
screen mode is required and initialized. Once an ite-console driver
is ready, this message will probably vanish.

 A tool to toggle between the two displays: Cirrus and ECS is included in
this archive. It is supposed to toggle between the displays. As the kernel
currently does *not yet* track the active status of the display, you maybe
must invoke the command twice to get the desired display. Read the source
for more info.

 To make your own kernel:

   MAKE A BACKUP OF THE OLD SOURCES BEFORE PLAYING WITH THESE
   NEW SOURCES !

   cp dev/* /src/sys/arch/amiga/dev
   cp amiga/* /src/sys/arch/amiga/amiga

 Edit your option file in /src/sys/arch/conf/ (ie. GENERIC) and add:

   options	GRF_CL5426	# grf_cl.c
   options	PICASSO 	# enable hack in amiga_init.c

 Now add one of the following specifics:

 All boards in A2000 or Picasso in all Amiga:
   grfcl0          at ztwobus0

 if you have Spectrum or Piccolo in A3000 or A4000, then use: 

   grfcl0          at zthreebus0

 and last:

   grf3    at grfcl0

 Also edit the file /src/sys/arch/amiga/conf/files.amiga.newconf

 and add depending on your graphics board:

 All boards in A2000 or Picasso in all Amiga:

   # cirrus grf
   device  grfcl at ztwobus: grfbus
   file  arch/amiga/dev/grf_cl.c   grfcl needs-flag

 Spectrum and Piccolo in A3000 and A4000:

   # cirrus grf
   device  grfcl at zthreebus: grfbus
   file  arch/amiga/dev/grf_cl.c   grfcl needs-flag

 Then perform the usual config.new (your option file) to alter the Makefile
and then generate the new kernel.

 To use the new kernel: [changes to previous versions!]

 Get the Xamiga24 or Xcl X11R6 server from ftp.uni-regensburg.de 
/pub/NetBSD-Amiga/experimental/ and of course the entire X11R6 release
if you don't have yet. 

 Make the link from /usr/bin/X11/X to Xamiga24:
  cd /usr/bin/X11
  rm X
  ln -s Xamiga24 X

 If you want to use the multiple screen version of Xamiga24 and Xcl, you 
need to do the following steps:

 Remove /dev/grf1: 
   rm /dev/grf1

 Create /dev/grf3: 
   cd /dev
   mknod grf3 c 10 3
   chmod 666 grf3

 Make a link from /dev/grf1 to /dev/grf3: 
   ln -s grf3 grf1

 (link is required for Xamiga24 multiple screens support, as it wont seek
for more than grf1 yet, see the nice comment in Xamiga24-source:
 '#ifdef I_DONT_NEED_THIS_BUT_PERHAPS_YOU_GRIN' )

 Start X with desired mode:

 startx -- -mode 9 
this will start X on Cirrus board and (!) on ECS.

 startx -- "-mode 8 -dev /dev/grf3"
this will start X on Cirrus only, does not require removement of grf1

 With the toggle tool, switch between the two displays, more in
 toggle.c.

 Have fun, Markus
markus@techfak.uni-bielefeld.de, ill@irc
