Econet card & interrupts

13 views
Skip to first unread message

Sir Morris

unread,
Aug 26, 2009, 8:18:27 AM8/26/09
to BeeBeeEmEmSee
How soon after a reset does the econet card pull IRQ low? I've been
poring over the schematics but I'm not getting a clue :(

Ta!

Charlie Robson

unread,
Aug 26, 2009, 9:01:46 AM8/26/09
to bb...@googlegroups.com
I should do 10 minutes of research before asking stupid Qs like this :)

1> Interrupts are disabled when the 6502 resets.
2> The Econet card 6554 asserts IRQ.
3> Atom reset handler sets up vectors and prints banner before enabling
interrupts.
4> As IRQ line is level triggered the Econet card interrupt is serviced.
5> Econet code clears interrupt by writing to the 6854.

Tadaa!

If I'm going to use the IRQ for my PL8 MMC then there will have to be a
handshake. I don't suppose this will affect compatibility as my board will
only require a handshake if it generates an interrupt, so others' boards can
just 'go ready' and not worry about the IRQ facility's presence :)

Charlie

Phill Harvey-Smith

unread,
Aug 26, 2009, 9:03:01 AM8/26/09
to bb...@googlegroups.com
Sir Morris wrote:
> How soon after a reset does the econet card pull IRQ low? I've been
> poring over the schematics but I'm not getting a clue :(

Are you talki ng about the Atom one or the BBC one ?

Presuming the atom one, IRQ from the 68b54 is fed straight onto the
Atom's IRQ line (both the PL8 and system card versions). Acording to the
6854 datasheet the chip is reset by the reset line and stays in a
reset state until it is initialised by software.

The way I read that is that you shouldn't get any inturrupts until the
Econet firmware has initialised the 6854.

I don't of course have Econet for my Atoms so can't actually test this,
I may at some point see if I can get the components and build one :)

Cheers.

Phill.


Phill Harvey-Smith

unread,
Aug 26, 2009, 9:33:05 AM8/26/09
to bb...@googlegroups.com
Charlie Robson wrote:
> I should do 10 minutes of research before asking stupid Qs like this :)
>
> 1> Interrupts are disabled when the 6502 resets.
> 2> The Econet card 6554 asserts IRQ.
> 3> Atom reset handler sets up vectors and prints banner before enabling
> interrupts.
> 4> As IRQ line is level triggered the Econet card interrupt is serviced.
> 5> Econet code clears interrupt by writing to the 6854.
>
> If I'm going to use the IRQ for my PL8 MMC then there will have to be a
> handshake. I don't suppose this will affect compatibility as my board will
> only require a handshake if it generates an interrupt, so others' boards can
> just 'go ready' and not worry about the IRQ facility's presence :)

Other thing you could do, since the MMC and Econet ROMS will both be in
the $A000 block, and therefore not both active together is have a latch
that routes the IRQ either from your card or from the econet card.

Cheers.

Phill.

--
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !

"You can twist perceptions, but reality won't budge" -- Rush.

Charlie Robson

unread,
Aug 26, 2009, 10:17:14 AM8/26/09
to bb...@googlegroups.com

>Other thing you could do, since the MMC and Econet ROMS will both be in
>the $A000 block, and therefore not both active together is have a latch
>that routes the IRQ either from your card or from the econet card.

I'm not interested in Econet, I'm just looking at how things work so I can
implement IRQ-based initialisation for the MMC code.

One thing which just bludgeoned my enthusiasm as I headed to a meeting was
the recollection that the FP ROM checks for a 2 byte sequence at A000 -
0x40,0xBF - (RTI, illegal op?) and passes control to A002 if found.

GAH! So a ROM that handles IRQs won't be called by the FP ROM when an
unhandled command is parsed >:(

I suppose it could alter OSCLI vector when the IRQ is detected ... hmm then
the ROM loses compatibility with non-irq capable interfaces.

So the state of play is: One ROM for VIA & non-irq capable PL8 interfaces,
and one for IRQsome PL8s.

Bummer.


Ian Stocks

unread,
Aug 26, 2009, 2:01:15 PM8/26/09
to BeeBeeEmEmSee

On Aug 26, 2:03 pm, Phill Harvey-Smith <a...@aurigae.demon.co.uk>
wrote:
> Sir Morris wrote:
> > How soon after a reset does the econet card pull IRQ low? I've been
> > poring over the schematics but I'm not getting a clue :(
>
> Are you talki ng about the Atom one or the BBC one ?
>
> Presuming the atom one, IRQ from the 68b54 is fed straight onto the
> Atom's IRQ line (both the PL8 and system card versions). Acording to the
>   6854 datasheet the chip is reset by the reset line and stays in a
> reset state until it is initialised by software.
>
> The way I read that is that you shouldn't get any inturrupts until the
> Econet firmware has initialised the 6854.

http://bjh21.me.uk/acorn/circuits/0202,002-1.tiff

Q1 (top centre) will hold the IRQ line low untill the 6854 is
initialised.

> I don't of course have Econet for my Atoms so can't actually test this,
> I may at some point see if I can get the components and build one :)

It's easy, just add the address decoding and address selection to a
master module.

Ian.

Phill Harvey-Smith

unread,
Aug 26, 2009, 2:33:56 PM8/26/09
to bb...@googlegroups.com
Ian Stocks wrote:
> On Aug 26, 2:03 pm, Phill Harvey-Smith <a...@aurigae.demon.co.uk>
> wrote:
>> The way I read that is that you shouldn't get any inturrupts until the
>> Econet firmware has initialised the 6854.
>
> http://bjh21.me.uk/acorn/circuits/0202,002-1.tiff
>
> Q1 (top centre) will hold the IRQ line low untill the 6854 is
> initialised.

Humm I did wonder about that.

>> I don't of course have Econet for my Atoms so can't actually test this,
>> I may at some point see if I can get the components and build one :)
>
> It's easy, just add the address decoding and address selection to a
> master module.

Yeah I might well do that, will have to move the MMC location but that
will not be a problem :)

KC

unread,
Sep 4, 2009, 2:55:28 PM9/4/09
to BeeBeeEmEmSee
Hi Charlie,

if I understand you correctly, you want to let the PL8 interface
generate an IRQ signal when the Atom is powered up and let the MMCROM
handle this IRQ by initialising the PL8 interface.

Why don't you detect the Atom BRK signal on your PL8 interface and let
the PIC controller initialise the PL8 interface?
The interface will work automaticly with a PL8 interface and PIC
controller and if you don't have the PIC controller, just manually
execute an INIT command from the MMCROM to initialise the PL8
interface.

This way you don't need 2 ROM's.

Greetings
KC
Reply all
Reply to author
Forward
0 new messages