| 
 |  | 
  INT 15 - TopView - SEND  MESSAGE  - "SETESC" - SET ESCAPE ROUTINE ADDRESS    
  
    | 
       Input  | 
    
       Output  | 
   
  
    | 
       AX 
     | 
    12h | 
      | 
      | 
      | 
    AX | 
   
  
    | 
       BX 
     | 
     14h | 
    Message
      Modifier | 
      | 
      | 
    BX | 
   
  
    | 
       CX 
     | 
      | 
      | 
      | 
      | 
    CX | 
   
  
    | 
       DX 
     | 
      | 
      | 
      | 
      | 
    DX | 
   
  
    | ES:DI | 
      | 
      | 
    ES:DI | 
   
 Message Modifier:
        00h handle is DWORD on top of stack
        01h define user stream
        04h intercept keystrokes from KEYBOARD to a window (handle on stack)
        05h intercept keystrokes from task's default KEYBOARD to a window
STACK: (if window)   DWORD user stream number (14h-1Fh)
                     DWORD address  of  FAR  user  stream
                           handler
       (if keyboard) DWORD address of FAR filter function
       The  keyboard  filter  function is called when the keyboard is in
       field mode as follows:
  
    | 
       Input  | 
    
       Output  | 
   
  
    | 
       AX 
     | 
    0, Extended | 
    Character | 
    0=Use,1=Ign,>1=Bp | 
      | 
    AX | 
   
  
    | 
       BX 
     | 
     Field
      Number | 
      | 
      | 
    BX | 
   
  
    | 
       CX 
     | 
     Cursor
      Column | 
    Cursor Row | 
      | 
      | 
    CX | 
   
  
    | 
       DX 
     | 
    ??? | 
    Fld Typ Modifier | 
      | 
      | 
    DX | 
   
  
    | ES:SI | 
    Windows
      Handle | 
      | 
    ES:DI | 
   
   |