[comp.sys.amiga.hardware] A3000 boot colours

dewolfe@ug.cs.dal.ca (Anarchy for Peace) (12/07/90)

Does anybody know what the colours mean on a Amiga 3000?
More precisely, what does a yellow screen mean.

I seem to have the flakiest 3000 around.  Random r/w errors on the HD,
many crashes with 8100000C and 81000004 gurus, and the yellow screen.
Nobody else around here with a 3000 is having any problems, just me.

Any of the Commodore dudes have any ideas?

Colin DeWolfe
dewolfe@ug.cs.dal.ca
dewolfe@iris1.ucis.dal.ca

P.S.  Is the Supra 2400zi *completely* compatible with the ZorroII/III spec.
      I also heard that it's device driver is buggy, any comments?

jdickson@jato.jpl.nasa.gov (Jeff Dickson) (12/08/90)

In article <1990Dec6.184914.6528@cs.dal.ca> dewolfe@ug.cs.dal.ca (Anarchy for Peace) writes:
>
>Does anybody know what the colours mean on a Amiga 3000?
>More precisely, what does a yellow screen mean.
>
>I seem to have the flakiest 3000 around.  Random r/w errors on the HD,
>many crashes with 8100000C and 81000004 gurus, and the yellow screen.
>Nobody else around here with a 3000 is having any problems, just me.
>
>Any of the Commodore dudes have any ideas?
>
>Colin DeWolfe
>dewolfe@ug.cs.dal.ca
>dewolfe@iris1.ucis.dal.ca
>
>P.S.  Is the Supra 2400zi *completely* compatible with the ZorroII/III spec.
>      I also heard that it's device driver is buggy, any comments?

Newsgroups: comp.sys.amiga.hardware,comp.sys.amiga.tech
Subject: GBIB
Summary: 
Expires: 
References: 
Sender: 
Reply-To: jdickson@jato.Jpl.Nasa.Gov (Jeff Dickson)
Followup-To: 
Distribution: na
Organization: Jet Propulsion Laboratory, Pasadena, CA
Keywords: 

	Is there a GPIB interface available for the Amiga? 

	Thanks for info you can give me.

--------------------------------------------------------------------
Jeff S. Dickson                         jdickson@zook.jpl.nasa.gov

daveh@cbmvax.commodore.com (Dave Haynie) (12/11/90)

In article <1990Dec6.184914.6528@cs.dal.ca> dewolfe@ug.cs.dal.ca (Anarchy for Peace) writes:

>Does anybody know what the colours mean on a Amiga 3000?
>More precisely, what does a yellow screen mean.

A yellow screen on boot-up is an indication that the machine is taking a
some kind of exception before the real OS exception vectors (eg, the "GURU" or
"SOFTWARE ERROR" type messages) are installed.  On the 3000, one likely cause
of this could be a bus error.  If the Zorro III backplane card isn't properly
seated in the machine, you might get this.  Here's why.  Every computer has to
decide what to do in the case where a program accesses memory that isn't
really there.  The A500, A1000, and A2000 designs said, simply, "ignore it
with a 0 wait state cycle termination".  Since cycle terminations are 
centrally located in these machines, that's no problem.  On the A3000, though,
many things aren't 0 wait state (since the bus cycle is around 8 times faster)
and every subsystem is responsible for its own cycle termination.  But you 
still want to do something intelligent for incorrect addressing, since the
machine will hang up in hardware if there's no cycle termination.  So the Gary
chip has a timeout termination mechanism.  By default, the termination is
simply a 32 bit acknowledge after 8us, which says, basically, "ignore it".  
This is important, since system software checks a few memory locations that
may not actually contain hardware every power up.  Somewhere in the low level
OS initialization code, Gary gets set to a different mode, which causes instead
a bus error after a 0.25s delay.  Until the system error code is up and 
running, a bus error will look like a yellow screen.  The interation with the
Zorro III backplane is this.  Zorro II cycles are auto-terminated just like on
the A2000.  If the backplane is gone, however, there will be no pullup resistor
on the bus signal called XRDY, which says "generate wait states as long as I'm
low".  With no backplane in the A3000, system software will kick Gary into
bus error mode, as usual, then somewhat later go hunting for expansion cards.
Only, there's no card there, and XRDY could be floating low.  In this case, you
never get the automatic DTACK* in the Zorro II cycle, the bus times out with
a bus error, and the OS gives you a yellow screen.

So that's one way I can think of to get yellow screens on an A3000.  Realize 
that any other problems early on -- address or instruction errors, etc., will
also cause a yellow screen.  Since you only have OS code running there, the
only other likely problem would be faulty memory somewhere, which can drop a
bit here and there, creating most often exception 3's and 4's (bus error is
level 2).

>I seem to have the flakiest 3000 around.  Random r/w errors on the HD,
>many crashes with 8100000C and 81000004 gurus, and the yellow screen.
>Nobody else around here with a 3000 is having any problems, just me.

The first thing I always do when looking for a problem is remove any extra
servers, background goodies, etc. so I have a plain, standard startup
sequence.  If the system's still flakey, I check that all cards are properly
seated in the system, and that the voltage is dead-on +5V.  You might also
check PLCC chips (a bunch of these in the A3000) to make sure they haven't
come loose from their sockets, though the sockets I've encountered in the A3000
hold extremely tight to their chips.  After that, if you still have trouble, 
you may have a real problem that needs a service center trip.

>Colin DeWolfe

>P.S.  Is the Supra 2400zi *completely* compatible with the ZorroII/III spec.
>      I also heard that it's device driver is buggy, any comments?

I have one, and haven't had any trouble with it.  It works in my 2000 at home,
and seems to work fine in a 3000 at least for a short test on several
occasions.  The device driver seems to work OK with ATalk-III as a terminal,
I haven't tried anything more complex with it.


-- 
Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
		      Wheeeeeeeeeeeeeeee...........

DXB132@psuvm.psu.edu (12/13/90)

In article <55544.660953763@atronx.OCUnix.On.Ca>, rwm@atronx.OCUnix.On.Ca
(Russell McOrmond) says:

>bad idea to rely on this anyways).  ASDG has a real easy command to the
>siosbx.device - Does Supra have something similar for their modem0.device? If

Could you describe how this command (in the ASDG driver) is implemented?
I've written a serial driver (for the PD I/O card) and I'd like to put this
in, plus any other features that people want (but that aren't in the
serial.device spec). Thanks.

-- Dan Babcock

rwm@atronx.OCUnix.On.Ca (Russell McOrmond) (12/14/90)

In a message posted on 12 Dec 90 18:05:01 GMT,
DXB132@psuvm.psu.edu wrote:

D>>bad idea to rely on this anyways).  ASDG has a real easy command to the
D>>siosbx.device - Does Supra have something similar for their modem0.device? If

D>Could you describe how this command (in the ASDG driver) is implemented?

  If you do implement something similar, let me know , and I'll document it
with all my stuff.

Here's an exerpt from the code that I use - The ASDG stuff is basically right
out of their manual:


...

/* DTR.c -- handle DTR */
/****************************************/
/* Set com DTR line                     */
/* FALSE = DTR off; TRUE = dtr on       */
/****************************************/

void SetInternalDTR(ios,set)
IOSER *ios;
int set;
{
  struct CIA *Ciab;

  Ciab=(struct CIA *)0xBFD000;
  Disable();
  Ciab->ciaddra |= CIAF_COMDTR;            /* Set DTR as output */
  if (set) Ciab->ciapra &= ~CIAF_COMDTR;   /* Set DTR low */
  else Ciab->ciapra |=  CIAF_COMDTR;       /* Set DTR high */

  Enable();
}

/****************************************************/
/* ASDG Dual Serial Board (and presumably 4 board)  */
/*  DTR control support.                            */
/****************************************************/
#define SIOCMD_SETCTRLLINES 0x10
#define SIOB_RTSB  0
#define SIOB_DTRB  1
#define SIOB_RTSF  (1<<SIOB_RTSB)
#define SIOB_DTRF  (1<<SIOB_DTRB)

void SetAsdgDTR(ios,set)
IOSER *ios;
int set;
{
  ios->IOSer.io_Command=SIOCMD_SETCTRLLINES;
  ios->IOSer.io_Offset=SIOB_DTRF;
  if(set==TRUE) {
    ios->IOSer.io_Length=SIOB_DTRF;
  }
  else {
    ios->IOSer.io_Length=0;
  }
  DoIO(ios);
}

/*************************************************/


void
SerHangup()
{
  if(ASDG_DSB) {
    SetAsdgDTR(&Iosw,FALSE);
  }
  else {
    SetInternalDTR(&Iosw,FALSE);
  }

  Delay(30);
  
  if(ASDG_DSB) {
    SetAsdgDTR(&Iosw,TRUE);
  }
  else {
    SetInternalDTR(&Iosw,TRUE);
  }

  Delay(60);
}

---
  Opinions expressed in this message are my Own.  My Employer does not even
know what these networks ARE.

  Russell McOrmond   rwm@Atronx.OCUnix.On.Ca   {tigris,alzabo,...}!atronx!rwm 
  FidoNet 1:163/109  Net Support: (613) 230-2282
  Amiga-Fidonet Support  1:1/109