Re: A86: Maskable Interrupts


[Prev][Next][Index][Thread]

Re: A86: Maskable Interrupts





>
>isn't this the off routine?
>¦0c4c  d303      out     (#03),a         ;turn off screen

out 3 should turn off the LCD but also enable both the interrupts (bit 1)
and the on interrupt (bit 0?)
that's really weird that the interrupts don't run .. it looks as though they
should
what is that exchanging for?

>¦0c4e  fdcb129e  res     3,(iy+#12)      ;shift2nd
>¦0c52  fdcb099e  res     3,(iy+#09)      ;onRunning
>¦0c56  08        ex      af,af'
>¦0c57  d9        exx
>¦0c58  fb        ei
>¦0c59  76        halt
>¦0c5a  18fd      jr      #0c59           ; (-3)
>
>what is that if not a loop?
>if interrupts are shut off, they are shut off with external circuitry,
>not with di.  there is no place in the rom where di is followed by a halt

yeah, I guess I was wrong. I looked at it many months ago .. that's a loop
:-)

>
>it seems to me that the calculator is always "off".  in normal operation,
>(when it's not busy) it sits in a halt loop, waiting for an interrupt to
>tell it to blink the cursor or register a key.  when you turn it off, it
>shuts down the screen and possibly disables the "200/sec" interrupt
>signal from whatever generates it.  this is mostly speculation, but it
>makes sense.

from this I am guessing that the calc actually does run interrupts while
it's off
first because it's setting the bit to enable the interrupt and also using ei
second because a loop would be useless otherwise
third, where else would it break out of this seemingly infite loop from?

we could find out for sure if we knew what that exchange stuff was for