From patchwork Mon Mar 12 00:52:04 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Kevin O'Connor X-Patchwork-Id: 146030 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id D098BB6FA4 for ; Mon, 12 Mar 2012 11:52:21 +1100 (EST) Received: from localhost ([::1]:45542 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S6tUp-0004Am-1m for incoming@patchwork.ozlabs.org; Sun, 11 Mar 2012 20:52:19 -0400 Received: from eggs.gnu.org ([208.118.235.92]:37816) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S6tUi-0004Ah-3T for qemu-devel@nongnu.org; Sun, 11 Mar 2012 20:52:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S6tUf-0005aD-Or for qemu-devel@nongnu.org; Sun, 11 Mar 2012 20:52:11 -0400 Received: from mail-vx0-f173.google.com ([209.85.220.173]:48711) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S6tUf-0005Zy-KB for qemu-devel@nongnu.org; Sun, 11 Mar 2012 20:52:09 -0400 Received: by vcbfl11 with SMTP id fl11so4635823vcb.4 for ; Sun, 11 Mar 2012 17:52:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:content-transfer-encoding :in-reply-to:user-agent:x-gm-message-state; bh=27UGyYgHKu+kGrTnr5t+O157L+Utp1aC7qD+bFVylgs=; b=R7vdXk3ezq/UIEQsmItpUJMtp4BJBjNsMZelGpQlYZ/Vgp2nOcN92Z4JDsNKCwutNc 5jWdX9WCEWSE3hBB8sfcnalDYka8iqBKr2KDoUQifXyunaSzdbqmqRicEmFqqBNBWgp/ NUNe+wiClgH8kpNOzGJwKFA2KAaZVgMSw56/U3S/zgo2wd8X4XNPmEPSABIBtweLuS99 QqZAtxTNXPI5dg5vO4NpGSs3JP2uRQjFvr+WZK8KIXe+pPHbvB9Ql+9IpHEZJDvlXqQj ZrU64gMRxlgM531mCJ0TLZl2ZYLdgUuOMBNAeIu9S0e7seAHhOcrUTuL9Cb33qZiifZC uhtg== Received: by 10.52.92.140 with SMTP id cm12mr13059993vdb.115.1331513526591; Sun, 11 Mar 2012 17:52:06 -0700 (PDT) Received: from localhost (207-172-165-101.c3-0.avec-ubr1.nyr-avec.ny.cable.rcn.com. [207.172.165.101]) by mx.google.com with ESMTPS id fd3sm6673487vdc.22.2012.03.11.17.52.05 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 11 Mar 2012 17:52:05 -0700 (PDT) Date: Sun, 11 Mar 2012 20:52:04 -0400 From: Kevin O'Connor To: Alain =?iso-8859-1?Q?Ribi=E8re?= Message-ID: <20120312005204.GA2340@morn.localdomain> References: <1331053255.66064.YahooMailNeo@web130102.mail.mud.yahoo.com> <20120307133830.GA6806@morn.localdomain> <1331130691.81802.YahooMailNeo@web130102.mail.mud.yahoo.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1331130691.81802.YahooMailNeo@web130102.mail.mud.yahoo.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-Gm-Message-State: ALoCoQmKBDh3dcXlduajQTmD8UhZzoPDhfrqYMz2MkKhjhdxita+ph7EHhjoEaruX6FQhWne230u X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.220.173 Cc: "seabios@seabios.org" , "qemu-devel@nongnu.org" Subject: Re: [Qemu-devel] Re : Regression: more 0.12 regression (SeaBIOS related?) X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org On Wed, Mar 07, 2012 at 06:31:31AM -0800, Alain Ribière wrote: > I ran qemu 1.0.1 and the latest SeaBIOS (from the git) with the following options : > qemu-system-i386 -L git/bios -fda disk.img -no-fd-bootchk -boot a -m 16 > > Here is the log : > https://docs.google.com/open?id=0B7mz0vq6Rpb7UE1ibjJDcEhTRWlNV050QnMyMWwtZw > > Here is the floppy disk image I used : > > https://docs.google.com/open?id=0B7mz0vq6Rpb7bHpYaEt2SnVUUi1KaWE3a3lBQUJpQQ > > > The floppy disk is simply a C-DOS 720 Ko floppy created by "format > a: /s". So it's quite empty. > > Qemu doesn't crash or freeze. But I can just type a single character > and the nothing else. But the system is still running (there is a > clock at the bottom right of the screen). I tracked this down. Looks like the image takes over the PS2 irq and keyboard handling, but then occasionally calls into the BIOS. When it does call the BIOS irq handler (manually), it expects the irq handler to enable the keyboard. Weird. Anyway, the patch below fixes it for me. -Kevin From 90ce89f8953da0e89c311aa34116b59aac1c6c5e Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Sun, 11 Mar 2012 20:45:56 -0400 Subject: [PATCH] ps2: Enable keyboard at end of PS2 port irq. To: seabios@seabios.org Looks like some old programs expect the keyboard irq to enable the keyboard port at the end of the irq. This behavior was seen on an image of "Concurrent DOS". Signed-off-by: Kevin O'Connor --- src/ps2port.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/src/ps2port.c b/src/ps2port.c index 1f04299..4b27b7a 100644 --- a/src/ps2port.c +++ b/src/ps2port.c @@ -404,6 +404,9 @@ handle_09(void) process_key(v); + // Some old programs expect ISR to turn keyboard back on. + i8042_command(I8042_CMD_KBD_ENABLE, NULL); + done: eoi_pic1(); }