Date: Tue, 30 Jun 1998 07:07:32 +0000 From: labrinop@pop.vaniercollege.qc.ca To: Josef Belkovics <belkovic@albert.osu.cz> Cc: freebsd-hackers@FreeBSD.ORG Subject: Re: BROKEN_KEYBOARD_RESET Message-ID: <199806301108.HAA23527@pteradactyl>
next in thread | raw e-mail | index | archive | help
On Fri, 26 Jun 1998 Josef Belkovics wrote: > My home pc (Cyrix 486DX4) does not a CPU reset via the keyboard > controller or via invltbl() (/sys/i386/i386/vm_machdep.c). Is > somebody able to say me patch which will reset through bios. Or in > some other way. (Don't write - throw it out.) A software reset is generated by asserting a bit in the 8042 keyboard controller (thats why its called KEYBOARD_RESET), ie: MOV AL , 0xFE ; pulse 8042 output port with bit 0 must be low OUT 0x64 , AL ; output to 8042 command register this is how it has been done since the PC/AT (PC & PC/XT doesn't have this) and is still done. The above sequence has the same effect as the RESET button (internally their wired together). But some motherboard/chipsets are broken and don't work correctly. Another way to reset the system while still in protected mode is to generate a triple fault: clear IDT entries 8 (Double Fault) and 10 (Invalid TSS) and then load TR with an illegal selector. > invalid tss > double fault > triple fault > cpu shutdown > reset PeterL To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806301108.HAA23527>