On Sat, 27 Mar 2004, Luchezar Georgiev wrote: > On Sat, 27 Mar 2004 17:32:19 +0100 (MET), Eric Auer wrote: > > > while you are in an interrupt handler you are in CLI state. > > So an HLT without a STI before it would hang the system. > > The _int28_handler is only an iret as far as I remember, and it is > > shared with int 22 and 2a. I do not think that ALL three interrupts > > should contain HLT (which usually waits up to 0.05 seconds until the > > next timer tick happens). So please check that suggestion again... > > You're right of course, but that was just a rough idea of mine. The labels > must be reordered so only _int28_handler goes through the HLT and a STI > must be added before it. When Bart fixes the fnodes bug, it will be the > right time to start adding little nice features like this one... ;-)
I don't know -- there must be a reason why other DOSes don't have this, even while having more comprehensive power saving utilities. Perhaps to guard against TSRs that hook int28 by chaining -- in that case if the HLT comes after the TSR then it may be superfluous... And RBIL is very clear: the default handler is an IRET instruction Certainly not something to implement without a second thought. Also for as long as I can remember Linux kernels check whether HLT actually works as intended, so there may even be broken CPUs out there, and our init code would also need such a check. I'll leave it to FDAPM for now (or if you like a custom small TSR). Bart ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel