[comp.sys.mac.programmer] After Dark 2.0 misses some events - fix required

sramtrc@windy.dsir.govt.nz (01/11/91)

How do I let After Dark know about foreign events?

There are some events that After Dark 2.0 does not recognise and these events
should cause AD to return to the Finder if it is screensaving or delay the
jump to screensaving if it is already in the Finder.

I can detect these events with software. My question is - how can I tell AD
that one has occurred? These events are non MacOS events which is why AD
cannot recognise them.

So I need to somehow run a task that watches for my events (the task is not
allowed to hog the machine yet it must not miss an event - I don't know how
to do that), it must convert the event to one that AD recognises (what is
the best one?) and/or let AD know that this event has occurred or whatever
it takes to set AD's timer.

The actual problem is that AD misses A/UX events such as keystrokes. So I can
be typing away and the screensaver starts up on me. I'm looking for a quick
hack to fix it because I like AD.

Thanks,
Tony Cooper
sramtrc@albert.dsir.govt.nz
(replies to me please because if you post them and don't use distribution
"world" I won't see them. Many postings have distribution "usa" which is
not the same as the world)

ksand@Apple.COM (Kent Sandvik) (01/14/91)

In article <18799.278d2bd7@windy.dsir.govt.nz> sramtrc@albert.dsir.govt.nz writes:

>The actual problem is that AD misses A/UX events such as keystrokes. So I can
>be typing away and the screensaver starts up on me. I'm looking for a quick
>hack to fix it because I like AD.

If AD relies on PostEvent AND/OR peeking/pokeing in the event queue, it will
break under A/UX (see TN #229, page 2). The way to resolve this is to use
a special AUXDispatch call under A/UX for looking into the event queue (under
A/UX the event queue is over on the kernel memory space side...).

So the ultimate way to fix this is to write some code under A/UX, disasm it
and move it over to the Mac world as special glue code for A/UX. 

Regards,
Kent Sandvik



-- 
Kent Sandvik, Apple Computer Inc, Developer Technical Support
NET:ksand@apple.com, AppleLink: KSAND  DISCLAIMER: Private mumbo-jumbo
Zippy++ says: "The ANSI C++ Standard should be an object oriented model"