Difference between revisions of "83Plus:Hooks:9B78"

From WikiTI
Jump to: navigation, search
 
(Synopsis: call addr, and links)
Line 10: Line 10:
 
'''Hook Disable BCALL:''' [[83Plus:BCALLs:4F87|4F87]]
 
'''Hook Disable BCALL:''' [[83Plus:BCALLs:4F87|4F87]]
  
'''Hook Call BCALL:''' ''(Unknown)''
+
'''Hook Call BCALL:''' [[83Plus:BCALLs:4F81|4F81]]
  
'''Hook Active Flag:''' 4, (iy + 33h)
+
'''Hook Active Flag:''' [[83Plus:Flags:33#Bit_4|4, (iy + 33h)]]
  
'''Hook Override Flag:''' 3, (iy + 33h)
+
'''Hook Override Flag:''' [[83Plus:Flags:33#Bit_3|3, (iy + 33h)]]
  
 
This hook is called whenever link activity is detected by the OS's interrupt handler.
 
This hook is called whenever link activity is detected by the OS's interrupt handler.

Revision as of 20:11, 1 April 2005

Synopsis

Name: Link Activity Hook

Hook Pointer Block Address: 9B78

Hook Enable BCALL: 4F84

Hook Disable BCALL: 4F87

Hook Call BCALL: 4F81

Hook Active Flag: 4, (iy + 33h)

Hook Override Flag: 3, (iy + 33h)

This hook is called whenever link activity is detected by the OS's interrupt handler.

Using the Hook

This hook is unique in the respect that there is an OS-managed override bit. If 3, (iy + 33h) is set, the hook will not be called. This bit is called upon entry to GetKey, and is restored to it's origianl value upon exit (for the curious, iy + 33h is copied to bpSave). Consequently it is impossible (without using another hook to reset the flag during GetKey) to recieve events during GetKey; this means this hook can't be triggered throughout most parts of the TI-OS.

The hook is called whenever the interrupt detects link activity; that is, one of the two data lines has been pulled low. A contains the value the interrupt read from the link port, nothing more than the value from port 0 with the upper 6 bits masked out. All values / flags returned are ignored.