From: Eeyore on


krw wrote:

> rabbitsfriendsandrelations(a)hotmail.com says...
> > krw wrote:
> >
> > > You don't do subroutines or interrupts?
> >
> > declare procedure XYZ interrupt(1) using 1; (register bank 1) MAIN defaults to
> > register bank zero.
> >
> > code
> >
> > end;
> >
> > For example. The interrupt number defines the int source.
>
> Return address? USING only declares the register bank, it doesn't
> set it.

Uh ? Bloody well does unless you have a different understanding of 'does' to me.

Graham

From: Eeyore on


krw wrote:

> Return address?

Why the heck would I care about that ? Never used a HLL ?

Graham

From: Eeyore on


MooseFET wrote:

> krw <k...(a)att.bizzzzzzzzzz> wrote:
> > rabbitsfriendsandrelati...(a)hotmail.com says...
> > > krw wrote:
> >
> > > > You don't do subroutines or interrupts?
> >
> > > declare procedure XYZ interrupt(1) using 1; (register bank 1) MAIN defaults to
> > > register bank zero.
> >
> > > code
> >
> > > end;
> >
> > > For example. The interrupt number defines the int source.
> >
> > Return address? USING only declares the register bank, it doesn't
> > set it.
>
> I think PLM always loads the PSW in an interrupt routine.

That sounds right to me. It gets into the interrupt routine quite quickly.


> It has been a while since I looked at the resulting code form PLM but it rarely
> contains outright mistakes.

Never seen one.


> It sometimes does an unneeded operation or two.

Possibly. I've timed a moderately complex interrupt that included some 16 bit math and
compares and it could complete it in 80us with a 12MHz cystal. That's the 6/12 cycle original
80C51 design too. Use a new one @ 33MHz and the 2 cycle operations and it would be 5 us or so.

Graham

*cycle is the wrong word but you know what I mean.

From: krw on
In article <48C7E34F.2D624C4D(a)hotmail.com>,
rabbitsfriendsandrelations(a)hotmail.com says...
>
>
> krw wrote:
>
> > rabbitsfriendsandrelations(a)hotmail.com says...
> > > krw wrote:
> > >
> > > > There is nothing wrong with PL/M, other than there is hasn't been
> > > > support for it for a quarter century.
> > >
> > > What would it need support for ?
> >
> > Bugs (the OS variety, if nothing else). I don't use orphanware on
> > new projects. I don't need to add risk to projects.
>
> Which bugs would those be ? The product is so mature it's untrue.

Try reading. I can't take the risk of bugs cropping up in
unsupported software. If there are no bugs in the compiler (don't
believe it) Windows will install them.

--
Keith
From: krw on
In article <48C7E40F.1F3FAE9B(a)hotmail.com>,
rabbitsfriendsandrelations(a)hotmail.com says...
>
>
> krw wrote:
>
> > rabbitsfriendsandrelations(a)hotmail.com says...
> > > krw wrote:
> > >
> > > > You don't do subroutines or interrupts?
> > >
> > > declare procedure XYZ interrupt(1) using 1; (register bank 1) MAIN defaults to
> > > register bank zero.
> > >
> > > code
> > >
> > > end;
> > >
> > > For example. The interrupt number defines the int source.
> >
> > Return address? USING only declares the register bank, it doesn't
> > set it.
>
> Uh ? Bloody well does unless you have a different understanding of 'does' to me.

Not when I was using Intel's software. USING was only a directive
to get the compiler to point R0-7 to the right place. It didn't
actually load the pointers selecting the bank.

--
Keith