TIP: Click on subject to list as thread! ANSI
echo: 80xxx
to: SCOTT MCNAY
from: SERGUEI SHTYLIOV
date: 1997-12-20 11:49:00
subject: Timer..

Hail thou o Scott!
Once upon a time thou didst write unto Arnoud Bakker:
 AB>> Why can't I tap on the timer interrupt (1Ch)... Whenever I
 AB>> try my multitaskers get angry. Is there another way to let
 AB>> my tsr get started every second? (or a little less)
   Yeah, hook INT 8 directly. :)
 SM> 1Ch is the user timer hook, which is the correct one...
   Quite useless indeed if you're going to do some real work (e.g. call DOS) 
from the handler.
 SM> maybe you aren't returning correctly (not hooking correctly), or taking
 SM> too long to handle it, or disabling interrupts
   Enabling/disabling interrupts in INT 1Ch handler doesn't matter anything 
-- INT 8 handler calls INT 1Ch _prior_ to sending end-of-interrupt (EOI) to 
the interrupt controller, so _any_ external interrrupts are effectively 
disabled during the INT 1Ch (IRQ0 is the highest priority IRQ, so no other 
IRQs could be serviced until EOI is sent to the interrupt controller). That's 
why it's quite useless. :)
 SM> and leaving them off
   Well, it's quite a hard thing to do when returning via IRET. :)
Fare thee well o Scott!
PS: What I've said above is applicable to DOS but not to the multitaskers, 
maybe -- V86 interrupt reflecting is more tricky things...
... Happy hacking!
--- GoldED 2.50+
---------------
* Origin: Parcel Of Rogues (FidoNet 2:5020/157.59)

SOURCE: echomail via exec-pc

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.