Re: DMA successes with Verilog

From: Nejat Dilek <imruon_at_gmail.com>
Date: Fri, 15 Jun 2018 03:08:58 +0300
Message-ID: <CAP5r8NRh_KSWb5HUTfAQijbzD_Le+8J+jo891zmrgSb_-_GM8w@mail.gmail.com>
On Fri, Jun 15, 2018 at 1:28 AM, smf <smf@null.net> wrote:
>
> On 14/06/2018 22:38, Nejat Dilek wrote:
>>
>> Do CIA chips really keep the NMI low if they don't get an ACK? I don't
>> think so.
>
>
> Yes, really. The CIA doesn't know that it's interrupt output is connected to
> the NMI or IRQ line, it just keeps the output low until you acknowledge the
> condition.
>
> In the case of the IRQ the CPU will take an interrupt if the line is low and
> IRQs haven't been masked, it then automatically masks IRQs so it won't keep
> triggering in the handler. If you don't acknowledge it then when IRQS are
> unmasked then you will get another interrupt.
>
> As NMIs can't be masked and you don't want it to restart the handler every
> time it checks the NMI line is low before running an instruction, it only
> looks for high to low transitions.
>
>
>

I thought there were different outputs for NMI and IRQ from the
peripheral chip. It makes sense since c64 make use of two and use 1
for irq and use another for nmi. If there were two interrupt outputs
the design somewhat would be different too.

I got it.

Completely off topic, can other hardware connected to the NMI line
drive it high when pulled low by the CIA chip without damaging the
chips connected to that open drain circuit. (I'm mostly a digital guy
and suck at analog electronics)
If it was possible though freezer cartridges might have utilized this.

Regards,

Nejat
Received on 2018-06-15 03:00:04

Archive generated by hypermail 2.2.0.