[syslinux] Broken BIOS time
troll at arach.net.au
Sun Jun 27 18:09:30 PDT 2004
-----BEGIN PGP SIGNED MESSAGE-----
I have a BIOS that has a broken timer.
I think tho that the user tick interrupt 1ch works.
I was trying to write four functions in assembler to fix the problem.
The check timer was going to simply get the value of BIOS_timer use int 15h function 86h to sleep 1 tick then
compare the two values. If they were different then the timer is OK.
the new_timer was simply going to increment a variable.
the install function was going to install the new_timer into the vector table and change the value of
BIOS_timer to point to my new variable.
the uninstall function would have undone this.
My problem is threefold.
First its been a long time since I have done assembler - and I was taught under real mode.
Second I cant quite figure out where to put the uninstall function in the pxelinux code. I think that it should
unload b4 calling ANY image. and be reloaded if being set back to the command prompt.
Third I cant figure out if the interrupt should be chained in real or protected mode. I also have no experience in
chaining protected mode interupts. ( also would it be preferable to use ax style or eax style ?)
I need the timer fixed as pxelinux uses the timers to get keyboard input. - also under this BIOS it hangs forever.
The int 15h function 86h wait works as the complex menu timer works.
I hope that this fix will work (If it doesn't then the only thing I can think of will be to use the programmable clock).
Any help would be appreciated.
regs MR E_T
\ OOHH I hate TYPOS \
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
-----END PGP SIGNATURE-----
More information about the Syslinux