From owner-freebsd-hackers Tue Jun 30 04:07:22 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id EAA26550 for freebsd-hackers-outgoing; Tue, 30 Jun 1998 04:07:22 -0700 (PDT) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from pteradactyl (pteradactyl.vaniercollege.qc.ca [205.236.144.2]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id EAA26488 for ; Tue, 30 Jun 1998 04:07:10 -0700 (PDT) (envelope-from labrinop@pop.vaniercollege.qc.ca) From: labrinop@pop.vaniercollege.qc.ca Received: from labrinop.vaniercollege.qc.ca by pteradactyl (SMI-8.6/SMI-SVR4) id HAA23527; Tue, 30 Jun 1998 07:08:57 -0400 Message-Id: <199806301108.HAA23527@pteradactyl> To: Josef Belkovics Date: Tue, 30 Jun 1998 07:07:32 +0000 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: BROKEN_KEYBOARD_RESET CC: freebsd-hackers@FreeBSD.ORG Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG 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