From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NDB4i-0002PI-IF for qemu-devel@nongnu.org; Wed, 25 Nov 2009 01:10:00 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NDB4d-0002M3-MU for qemu-devel@nongnu.org; Wed, 25 Nov 2009 01:09:59 -0500 Received: from [199.232.76.173] (port=56192 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NDB4d-0002Lq-Bh for qemu-devel@nongnu.org; Wed, 25 Nov 2009 01:09:55 -0500 Received: from mail2.shareable.org ([80.68.89.115]:43246) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NDB4c-0006xf-TR for qemu-devel@nongnu.org; Wed, 25 Nov 2009 01:09:55 -0500 Date: Wed, 25 Nov 2009 06:09:51 +0000 From: Jamie Lokier Subject: Re: [Qemu-devel] Re: POST failure (loop) with isapc and seabios Message-ID: <20091125060951.GA17203@shareable.org> References: <217FD12D88EA4AC2B2A32D77E010B16C@FSCPC> <20091122153809.GL3193@redhat.com> <8A56C1F849F34911ABF51DE049CA3D24@FSCPC> <20091123111137.GF2999@redhat.com> <11090DAABE9449F7B5D1415C45F8F411@FSCPC> <20091123194307.GC13854@redhat.com> <2D659FA33BF64C419243FD76049AFD33@FSCPC> <20091124062810.GZ2999@redhat.com> <20091124143812.GA27783@shareable.org> <20091124144044.GJ2999@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20091124144044.GJ2999@redhat.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: Kevin O'Connor , qemu-devel@nongnu.org, Sebastian Herbszt Gleb Natapov wrote: > > But QEMU is used to run old OSes too. > > > That's OK. I don't expect BIOS to be reloaded if OS restart by jumping > to BIOS reset code. That's good then. What about DOS and DOS-extender programs which do a soft reset by triple-faulting the CPU (see Sebastian's notes on i440FX behaviour), and asking the keyboard controller? Both of those methods are used by DOS and DOS-extender programs to switch from protected mode to real mode. Keyboard controller was used originally, but then someone figured out that triple fault can be used (on most PCs) and is faster. The switch to real mode is done by writing somewhere the BIOS checks, so the BIOS just branches back to the application. I think that may imply it has to be a "soft reset" as described by Sebastian in the i440FX description, and I would think the BIOS must not be reloaded. But the BIOS must be reloaded from ROM, I'm guessing, if the keyboard controller method is used and the word asking for a branch back to the application has not been set. Because that's how a modern OS (if not using ACPI) asks for a system reset. Do you think the above is (a) correct, and (b) what's implemented? Thanks, -- Jamie