02/28/87: RE: INTERRUPTS Re: Msg 24649 by Delphi, | Category: Delphi - Source for 6809 Assemblers | 1 comment - (Comments are closed)

RE: INTERRUPTS Re: Msg 24649

24671 28FEB87-1058 Source for 6809 Assemblers
RE: INTERRUPTS (Re: Msg 24649)
From: TERMITE To: GLOEFER

HI GUYS,

Look, I know you have put great effort into answering questions.
And I appreciate it. GLOEFER: You said to go aheadd and ask
DUMB questions. Apparently that is all I do. You should have
seen me in conference with Marty this morning. If Ya’ll will
stop and think a second you’ll see more of MY problem. For one
example: in the 6821 sheet there is a block diagram on page 6
which refers to peripheral interfaces A & B. On page 7 there is
reference to peripheral data lines. Now I know it sounds stupid
but I missed the significance of the numbers and when I saw
PERIPHERAL INTERFACE in one place and PERIPHERAL DATA LINES in
another, they registered as two separate things. Things like
this drive me crazy. I spent a lot of time going over this
before I caught the numbers and decided that what the author
wrote in two different ways were not two different things. When
an author is so steeped in his own stuff he isn’t always aware
of the fact that such little things can be such huge problems.

MARTY: You thought I sounded dumb in conference this morning.
How about this? According to the RS232 manual a high on bit 7
of $Ff69 is an interrupt. You said the interrupt has to go to
the COCO via the CART line. The CART line seems to be tied to
some bit in $FF23. Assumedly, judging from your positions in
the past, this will be considered little more than lunatic
raving but I can’t make these out to be the same thing. Of
course there has to be an obvious answer. In case you haven’t
figured it out I’m having a little trouble puzzling out what
addresses and bits some of this stuff shows up on when it gets
to the CoCo. I think I’ve come to the conclusion that CRA &
CRB on page 6 of the 682 sheet refer to the entire address set
from $FF20 to $FF23. And that the CART line has to do with
$FF23. It looks like maybe you can write bit 0 to disable or
enable the CART interrupt and that when enabled the interrupt
appears on bit 7. But whether that is true or false I still
don’t know how that connects to the RS232 status register at
$FF69. I think I could write routines to use these addresses
but only for loop scanning, not using interrupts.

Jim

1 comment to RE: INTERRUPTS Re: Msg 24649

  • pucc_unknown

    24682 28FEB87-1631 Source for 6809 Assemblers
    RE: INTERRUPTS (Re: Msg 24671)
    From: MARTYGOODMAN To: TERMITE

    Jim,

    You seem to be beginning to catch on.

    “CRA” in the 6821 data sheet refers to “control register A”…
    an eintire register. Whereas “CA1″ or “CB2″ refers to a
    particular one bit input (or output in some cases) port
    on the chip. This terminology is, I grant you,
    unfortunate and most confusing.

    I never thought you dumb… it was just that toward the end
    of our co this AM you began to ask me questions I did not
    know the answer to off hand, and in order to answer would
    have had to spend a bit of time with the 6821 manual
    and the CoCo schematic… just the same as I’d suggested
    you would have to do! Greg Miller knows this stuff somewhat
    better than I do, for tho I understand it in theory,
    Greg has actually written working code using this information,
    and so is a far better source of information.

    Lesse here… the *CART line goes to pin 18 of the PIA mapped
    to $FF20 thru $FF23. Now, that pin is “CB1″ on the PIA,
    as you noted. That means it is controlled / registered in
    the B control register. Well.. the B control register of
    that partiuclar PIA is mapped to $FF23, as you also correctly
    note. Now…

    let’s look at page 10 fo the motorola 6821 reference, and see
    what we can see regarding what to do with the CB1 line.
    OK.. the first two bits of the control register determine
    (bit 0) whether the thing is turned on or not, and (bit 1) whether,
    if it is in fact on, it fires on a high to low or a low to high
    input transition. Now, the CART line normally sits HIGH, and
    is “fired” by a transition to the low state, so to use
    the CART line I would guess we’d want to program bit 1 of
    $FF23 to a zero. (is this right, Greg?).

    See my next msg for more details.
    —marty