Hi!

20-Апр-2004 18:28 [EMAIL PROTECTED] (Diego Iastrubni) wrote to
[EMAIL PROTECTED], "Arkady V.Belousov"

>>      Because DOS is not reenterable (you can't call most DOS function from
>> inside TSR, when TSR gets control at time of DOS working), you should check
>> when DOS is in idle state (see INT28 description).
>>      Also, there are other issues, related to hardware interrupts: when
>> INT8 calls INT1C, it not acknowledge timer interrupt, so, until you return
>> from INT1C, your system will/can not receive other interupts (timer,
>> keyboard, etc).
DI> OK.... nice, still good to learn new DOS stuff :)
DI> Now, it seems like all I need to do is to trap the 28 interrupt instead of
DI> 1Ch or 8 (a 1 line patch). I did this and the interrupt is not called.
DI> I am still missing something.

     No. Unfortunately, DOS itself calls INT28 too rarely (only when it
waits onput to fill input keyboard buffer), so you should use other doors.
Ie., for example, you should trap INT21 and, if happen some event (handler
from INT1C sets some flag), then your main resident code may call DOS if DOS
not called OR you in DOS, but DOS calls INT28.

     But wait from me too much answers, I'm not write extensive resident
code. You should study, for example, libraries like TeSeRact, TSRtoo, AMIS
(management library from Ralf Brown) etc.

DI> Another thing:
DI> Looking inside the kernel in file chario.c in function: read_char_sft_dev, I
DI> see this code:
DI>       if (check_break && *pdev != syscon)
DI>         check_handle_break(&syscon);
DI>       /* the idle int is only safe if we're using the character stack */
DI>       if (user_r->AH < 0xd)
DI>         DosIdle_int();
DI> and also:
DI>     http://www.ctyme.com/intr/rb-2739.htm

     I don't know what contained in this page. Just mention, which interrupt
you mean.

DI> Apparently I have to pass a pointer to a byte to the DOS and set that byte
DI> to 1? I think I am lost, that "manual" is not that usefull. :(

     ?




-------------------------------------------------------
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_id70&alloc_id638&op=click
_______________________________________________
Freedos-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to