Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!rochester!dibble
From: dibble@rochester.ARPA (Peter C. Dibble)
Newsgroups: comp.sys.m6809
Subject: Re: CoCo3 OS-9 Level I Version 2 problems
Message-ID: <23640@rochester.ARPA>
Date: Wed, 7-Jan-87 12:41:08 EST
Article-I.D.: rocheste.23640
Posted: Wed Jan  7 12:41:08 1987
Date-Received: Wed, 7-Jan-87 22:54:31 EST
References: <1484@lsuc.UUCP> <972@midas.UUCP>
Distribution: na
Organization: U of Rochester, CS Dept., Rochester, NY
Lines: 25
Summary: Masking interrupts

In article <972@midas.UUCP>, neals@midas.UUCP (Neal Sedell) writes:
> 
> This raises a important issue - turning off all interrupts for several
> milliseconds while mucking with the MMU is not my idea of a Good Thing.
> Until Level 2 comes out I suppose we're stuck with it, but a serial port
> running at only 4800 baud generates an int about every 2mSec.....
> Using the ramdisk to get around using the NON-DMA disk controller doesn't
> buy you anything since ints are still masked....  Humph, just when I thought
> they were making the COCO into a real computer. ;-)

What are you masking interrupts for MILLISECONDS for?!??  That's order of
a thousand instructions.  In any case masked interrupts aren't a problem 
unless you hold the mask for a long time (several milliseconds might 
be long enough).  The processor will keep one interrupt pending if it
comes in while it's masked.

The disk driver cripples the CoCo by halting the processor, not by masking 
interrupts.  Almost every device driver masks interrupts at least briefly.  
The 6809 itself turns on the interrupt mask every time it gets an interrupt.

If you are concerned about missing interrupts you might try flipping
back to the main task and enabling interrupts, then disabling and flipping
back every few hundred instructions.

Peter Dibble