Subject: Re: grf_cl.c tested on A2000+Spectrum1MB
To: amiga-dev <amiga-dev@NetBSD.ORG>
From: Sascha Groening <>
List: amiga-dev
Date: 02/06/1995 15:13:11
Michael Hitch wrote:
  In short, the return(0) indicates the device didn't match what
  was being searched, and would not be configured.

Doesn't the grfclmatch() for Picasso-Mem return 0 , too ?
has Spectrum Mem to be configured or not ?
I get a not configured for my Spectrum Mem and a kernel panic upon
"startx -- -mode 8" : "panic: kvtop: zero page frame"
in grf_cl.c: cl_load_mon()
so I'll try to return 1 in grfclmatch next time I do a kernelcompilation.

Ezra wrote:
  Actually, this means that the configdev entry for spectrum is wrong for
  BOTH 1b and 2mb spectrums.  Its actually returns a size of 16mb (the full
  io size?).  I'll add a test for a 2mb vs 1mb board to the driver.

Does Spectrum 1MB Mem start at 0x400000 or somewhere else ?
How do you find memory on this buggy Graphicsboard.
btw. my Spectrum does not work (crashes) with less than 5 bitplanes 
for a screen!

I found something suspicious in grf_cl.c: set5426(): 
/** Ezy turn display on (was commented out) */
        dx = regbase + 0x8000;   /*  use the spectrum's display */

/* Added by Michael Illgner. Looks like the register needs other
   intialisation for regbase. -MiL
   Changed that the delay is only used by Piccolo. -ill
   if (cltype == PICCOLO)

      *dx |= 0x20;
   else *dx = 0x6f;

will turn display off on a Spectrum or Piccolo
but Picasso has its register at 0x9000.


and in grf_cl.c: grfclmatch() :

                case 2195:
                /* Piccolo */
    /* Added/changed by MiL */
      switch (zap->prodid) {
      case 5:
      case 6:
        cl_regaddr = zap->va;
      if (cl_regaddr && cl_fbaddr)
       cltype = PICCOLO;
       wakepass = 0x7F; /* I haven't tested these */
       onpass = 0xDF;         /* I have MiL ;-) */
       offpass = 0x20;        /* but they have no use */

cl_toggle uses wakepass=0x10

Is there anyone out there with X running on a Spectrum ?

                Greetings to all
                                    Sascha Groening