Date : Wed, 05 Aug 2009 23:14:46 +0100
From : mfirth@... (Michael Firth)
Subject: Acknowledging 1770 NMI - was Re: BBC B+ Econet weirdness
----- Original Message -----
> From: "Phil Blundell" <philb@...>
> To: <michael.firth@...>
> Cc: <bbc-micro@...>
> Sent: Tuesday, May 12, 2009 6:30 PM
> Subject: Re: [BBC-Micro] BBC B+ Econet weirdness
>
>
> > On Tue, 2009-05-12 at 09:50 +0100, michael.firth@... wrote:
> >> Having had a look at the B+ service manual, there is a 4.5s timeout on
> >> attempting to send a packet, so I think if it doesn't error out before
> >> this then the hardware will lock up.
> >> I've certainly left it 60s+ and it doesn't return. Escape doesn't work
> >> either, Break is needed to release the lockup.
> >
> > That does sound rather like the NMIs from the 68B54 are getting lost
> > somewhere between the ADLC and the CPU. It'd be interesting to know
> > what you see on a network monitor (running on some other machine
> > obviously) when you try to do something on this one.
>
On further investigation, I'm now 99% sure that the misbehaviour is caused
when
the machine switches on with the 1770 NMI active.
As I don't have a 1770DFS permanently in the machine (to reduce PAGE,
because
the floppy drive isn't attached), nothing on power-on is initialising the
1770 to clear
this.
If I have an Econet lockup, then I can always clear it by loading a DFS ROM
(e.g.
from my ADFS CF), and trying to access the floppy.
The question now is whether anyone can point me in the direction of the
minimum code
needed to clear / acknowledge an interrupt from the disk controller so that
it won't
hold the NMI line active on power on.
Thanks
Michael