Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: Notesfiles $Revision: 1.7.0.10 $; site smu
Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxn!ihnp4!inuxc!pur-ee!uiucdcs!convex!smu!faisal
From: faisal@smu
Newsgroups: net.micro.pc
Subject: Re: How does SideKick work?
Message-ID: <15000027@smu>
Date: Tue, 29-Oct-85 12:49:00 EST
Article-I.D.: smu.15000027
Posted: Tue Oct 29 12:49:00 1985
Date-Received: Sun, 10-Nov-85 07:05:34 EST
References: <233@well.UUCP>
Lines: 29
Nf-ID: #R:well.UUCP:-23300:smu:15000027:000:880
Nf-From: smu!faisal    Oct 29 11:49:00 1985



SideKick installs in the timer interrupt.  Here is the basic algorithm:

at every timer tick do
 {
  execute the orignal timer tick interrupt;
  if (the keybaord status word indicates that Ctl and Alt are held down)
   if ((the system is stable)&&(sk is not currently active))
    enter sidekick
    else beep;
 }

Once sidekick has been entered, I believe the standard keyboard interrupts 
are used.

Off the track but indirectly related:
One of the things you have to watch out for when running a resident prog., 
which alters the display, and SK is this sequence:
 1) bring up SK
 2) bring up second program which rewrites screen
 3) close SK
 4) close 2nd prog.
 5) bring up SK.
 Surprise!!!  When SK was closed at step 3, it saved the display contents
 (which were generated at step 2), and now it redisplays this stuff because
 it thinks it is the SK window.

Faisal @ SMU