qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] qemu kbd emulation


From: Rafał Cygnarowski
Subject: Re: [Qemu-devel] qemu kbd emulation
Date: Wed, 28 Jun 2006 14:16:56 +0200
User-agent: KMail/1.9.1

> What SDL version are you using? I noticed some strange keyboard behavior
> with SDL 1.2.9 (Debian package), and this didn't happen when using SDL
> 1.2.10 (self-built). The problems were things like no Shift-Tab in
> Windows, and "showkey" under Linux displaying strange keycodes when
> using Shift-Tab.

I was using SDL 1.2.9. After upgrade to 1.2.10 (and qemu
recompilation) nothing changed.

I also made same more tests and now I know sth more.

1. ps2_queue

I changed ps2_queue to see if my patch do what I thought 
it should do.

-- BEGIN --
--- ps2.c.old   2006-06-28 13:21:01.000000000 +0200
+++ ps2.c       2006-06-28 13:00:17.000000000 +0200
@@ -117,6 +117,8 @@

 void ps2_queue(void *opaque, int b)
 {
+printf("%i ", b);
+
     PS2State *s = (PS2State *)opaque;
     PS2Queue *q = &s->queue;
-- END --

Result on pressing UP key: 224 42 224 72 224 200 224 170,
so it's correct.

2. I understood output of my program wrong. Output was sth like: 
224 224 72 88224 224 170 where these to 8s were strange for me.
The true is that qemu dropped somewhere part of my fake keycodes

+           kbd_put_keycode(0xe0);
+           kbd_put_keycode(0x2a);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - this one was lost
+           kbd_put_keycode(0xe0);
+           kbd_put_keycode(0xaa);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - and this one too

As the result of this drop, after pressing UP key (without my 
test program loaded) DOS displays ONE '8' character. When I load
my TSR test program DOS displays TWO '8' characters! I suppose
these 8s are the answare(?) why arrow keys are interpreted twice
in such programs like Dos Navigator when I run them with qemu.

So now I have to find out:
- where those fake keycodes were dropped,
- why after loading my test program those two 8s are displayed 
  (there is some unneeded interrupt generated - am I right?).

Honestly, I don't know where I should start looking...

-- 
Rafał Cygnarowski
address@hidden

PS. My goal is to lost those fake twice pressed keys 
    becouse I use (want to use) qemu only for DOS guest OS.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]