From owner-freebsd-current Tue Oct 6 13:09:19 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA04496 for freebsd-current-outgoing; Tue, 6 Oct 1998 13:09:19 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from tim.xenologics.com (tim.xenologics.com [194.77.5.24]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA04478 for ; Tue, 6 Oct 1998 13:09:16 -0700 (PDT) (envelope-from seggers@semyam.dinoco.de) Received: (from uucp@localhost) by tim.xenologics.com (8.8.5/8.8.8) with UUCP id WAA03075; Tue, 6 Oct 1998 22:05:13 +0200 (MET DST) Received: from semyam.dinoco.de (semyam.dinoco.de [127.0.0.1]) by semyam.dinoco.de (8.9.1/8.8.8) with ESMTP id WAA00640; Tue, 6 Oct 1998 22:01:40 +0200 (CEST) (envelope-from seggers@semyam.dinoco.de) Message-Id: <199810062001.WAA00640@semyam.dinoco.de> To: Mike Smith cc: freebsd-current@FreeBSD.ORG, seggers@semyam.dinoco.de Subject: Boot loader's autoload bug fix (was: Re: Two /boot/loader anomalies ) In-reply-to: Your message of "Tue, 06 Oct 1998 11:45:43 PDT." <199810061845.LAA00454@dingo.cdrom.com> Date: Tue, 06 Oct 1998 22:01:39 +0200 From: Stefan Eggers Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > You'll get this if the timer isn't working properly. I've seen a The timer works perfectly! While looking for timer anomalies I figured out what really happens: It's our vidconsole.c's iskey which gets its return code reversed. The result is that the boot code's autoboot function asks the BIOS for a keypress. There is none, yet despite iskey's claim to the contra- ry. *boom* It hangs until the user presses a key and can't update the time count. And of course it never can time out for the same reason. This will make it work: Index: i386/libi386/vidconsole.c =================================================================== RCS file: /usr2/FreeBSD/CVSROOT/src/sys/boot/i386/libi386/vidconsole.c,v retrieving revision 1.3 diff -u -r1.3 vidconsole.c --- vidconsole.c 1998/10/02 16:32:45 1.3 +++ vidconsole.c 1998/10/06 19:52:05 @@ -110,7 +110,7 @@ v86.addr = 0x16; v86.eax = 0x100; v86int(); - return(v86.eax); + return(! v86.eax); } #if KEYBOARD_PROBE Stefan. -- Stefan Eggers Lu4 yao2 zhi1 ma3 li4, Max-Slevogt-Str. 1 ri4 jiu3 jian4 ren2 xin1. 51109 Koeln Federal Republic of Germany To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message