[Coco] Help with some HiRes CoCo 3 MMU settings

Glen Hewlett glen.hewlett at sympatico.ca
Thu Dec 8 00:08:21 EST 2016


Hi Guys,

I just wanted to report that with all of your help I was able to get my IRQ interrupt working properly in my program and I learned quite bit too.

The main things I had to fix were:  
-Setting up the PIA 0 registers $FF01 & $FF03 with a value of $34
-Removing the ORCC and ANDCC instructions inside my Interrupt routine
-Also using the LDA $FF93 as the first instruction in my interrupt routine. (Not sure if it has to be first or just in the routine, but I din’t want to take any chances)

Thanks again for all your help guys, you are the best!  CoCo forever. :)
Glen

> On Dec 7, 2016, at 9:29 PM, Glen Hewlett <glen.hewlett at sympatico.ca> wrote:
> 
> His Robert,
> 
> Another good Interrupt thing to know.
> 
> Cheers,
> Glen
> 
>> On Dec 7, 2016, at 9:13 PM, Robert Gault <robert.gault at att.net> wrote:
>> 
>> Glen Hewlett wrote:
>>> Hi Robert,
>>> 
>>> Thanks for the example code, It works fine for the FIRQ as it is, and I can hopefully use this to get my IRQ version working.  I noticed that in your Interrupt section the first thing you do is a “lda $FF93” is there a reason for reading the FIRQENR every time the interrupt is called?
>>> 
>>> Just trying to learn…
>>> 
>>> Thanks again.  Your code will help.
>>> Glen
>> 
>> I read $FF93 because I chose to use FIRQ instead of IRQ. Look at the beginning of the code where I installed FIRQ,pcr and turned on FIRQ with
>> lda #%00100000
>> ...
>> sta $FF93
>> 
>> In the case of the GIME, reading $FF92 or $FF93 clears the interrupt. For cpu interrupts, you would clear the interrupt flags at $FF01, $FF03, $FF21, and $FF23; bit#7 (0-7) for each.
>> 
>> Robert
>> 
>> 
>> -- 
>> Coco mailing list
>> Coco at maltedmedia.com
>> https://pairlist5.pair.net/mailman/listinfo/coco
> 
> 
> -- 
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco



More information about the Coco mailing list