-----------------------------------------------------------

New Message on cochindotnet

-----------------------------------------------------------
From: J.K.
Message 2 in Discussion


Hi,



My doubts are:
1) In the booting process, Is the IVT loaded by OS components like
IO.SYS,MSDOS.SYS etc... ?


Yes, some of the entries in the IVT are overwritten by the OS components
like IO.SYS and MSDOS.SYS. In fact if you look at the history of these
components, you will find that the original purpose of IO.SYS was to
provide a io hardware compatibility layer for msdos. So IO.SYS messes
around with some of the bios interrupts, overidding them when necessary.
MSDOS.SYS uses the interrupts provided by IO.SYS for disk io as well as
the bios interrupts and provides msdos services (like int 21h) to
applications.



2) Is there any method to hook a bios interrupt before  the
booting process? (I have experience in writing small boot loaders booting
from floppy or HD using assembly so that i can bypass the booting process
if required)


Yes, overwrite the IVT. It is located at segment 0, offset 0 in memory.
i.e. location 0:0 will contain a pointer to int 0h, location 0:4 will
contain a pointer to int 1h etc. If you disassemble the Int 21h function
that enables you to hook interrupts, you will find that all it does is
cli followed by a IVT change followed by a dli :-).



i.e. if you want to hook int 8h, overwrite location 0:32 with a location
of your interrupt func. Remember to save any original values.



This method obviously does not work in protected mode where the IVT may
not be located at 0:0.



If you want this to work under windows 98, you should put your drive
access into dos compatibility mode, so that the os comes to dos to make a
disk request. This will work, but slows down the system. 



At Rs 3500 for a new hard disk. I would buy a new hard disk instead
:-).





Have a nice day,



Jayakrishnan K [MVP - VC++]



At 02:13 PM 6/25/2004 -0700, you wrote:

New Message on
cochindotnet




Interrupt Hooking




Reply
  Reply to Sender   Recommend Message 1 in Discussion 
From: LimneshA 




Hai all,
pardon me if my doubt is invalid in this forum.
 
2) Is there any method to hook a bios interrupt before  the booting process? (I have 
experience in writing small boot loaders booting from floppy or HD using assembly so 
that i can bypass the booting process if required)
 
Help me please...
 
What i am planning to do is represented below
 
 
I had already posted my doubt with full explanation as "Hooking". But as there was no 
valid replies i am posting it again.
 
Thanks in advance..
Limnesh
View Attachment(s) 




View other groups in this category. 








Also on MSN:
Start Chatting | Listen to Music | House & Home | Try Online Dating | Daily Horoscopes 




To stop getting this e-mail, or change how often it arrives, go to your E-mail 
Settings. 




Need help? If you've forgotten your password, please go to Passport Member Services. 
For other questions or feedback, go to our Contact Us page. 




If you do not want to receive future e-mail from this MSN group, or if you received 
this message by mistake, please click the "Remove" link below. On the pre-addressed 
e-mail message that opens, simply click "Send". Your e-mail address will be deleted 
from this group's mailing list. 
Remove my e-mail address from cochindotnet. 


-----------------------------------------------------------

To stop getting this e-mail, or change how often it arrives, go to your E-mail 
Settings.
http://groups.msn.com/cochindotnet/_emailsettings.msnw

Need help? If you've forgotten your password, please go to Passport Member Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help

For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact

If you do not want to receive future e-mail from this MSN group, or if you received 
this message by mistake, please click the "Remove" link below. On the pre-addressed 
e-mail message that opens, simply click "Send". Your e-mail address will be deleted 
from this group's mailing list.
mailto:[EMAIL PROTECTED]

Reply via email to