Path: utzoo!attcan!uunet!munnari.oz.au!metro!research.canon.oz.au!andy From: andy@research.canon.oz.au (Andy Newman) Newsgroups: comp.windows.x Subject: Locking Areas of the (physical) Display. Message-ID: <1990Oct28.223626.1319@research.canon.oz.au> Date: 28 Oct 90 22:36:26 GMT Reply-To: andy@research.canon.oz.au (Andy Newman) Organization: Canon Information Systems Research Australia Lines: 36 I have a rather interesting problem with integrating a piece of hardware with an X-based application and was wondering if any kind soul(s) on the net have any ideas or could at least point me in the right direction (and its not my homework :-)). The application is based on the MOTIF widgets and runs under mwm running on the MIT R4 X server using a memory mapped framebuffer, nothing special here. Now for the fun stuff... I have some hardware that writes directly to the framebuffer memory, this hardware is controlled from the application. The hardware can write anywhere on the display so directing it to the area of the screen containing the application's window is not a problem. The problem arises from having the user move the window while my hardware is writing to display memory or having another client map a window over the area being written, or any other modifications to the display area in which the hardware is writing. How can I ensure that the display (the area of it that the hardware is writing to) is not disturbed while my hardware is operating? I can't stop the hardware doing its stuff (which can take a few seconds) and I don't want a messy looking display with other client's windows being clobbered by my hardware's modifications to the framebuffer. I also don't want to interfere with the normal operations of the system too much (e.g. the second hand on the clock keeps spinning while the hardware works away). Any help would be much appreciated. -- Andrew Newman, Software Engineer. | Net: andy@research.canon.oz.au Canon Information Systems Research Australia | Phone: +1 61 2 805 2914 P.O. Box 313 North Ryde, NSW, Australia 2113 | Fax: +1 61 2 805 2929