delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/05/20/14:17:49

Message-Id: <m0wTnpE-000S1uC@natacha.inti.edu.ar>
Comments: Authenticated sender is <salvador AT natacha DOT inti DOT edu DOT ar>
From: "Salvador Eduardo Tropea (SET)" <salvador AT inti DOT edu DOT ar>
Organization: INTI
To: djgpp AT delorie DOT com
Date: Tue, 20 May 1997 15:32:58 +0000
MIME-Version: 1.0
Subject: Keyboard Leds
CC: <boylesgj AT lion DOT cs DOT latrobe DOT edu DOT au>, alexad3 AT uniserve DOT com

Hi All:

  This mail is about the keyboard leds topic. As I wrote the code used by
Allegro and I got some questions about how it works (before and now) I put
a explanation in my Web.

  Visit http://www.geocities.com/SiliconValley/Vista/6552/djgpp.html

  Here I'm replaying to Gregary and putting my opinion about the Alexander
code.

Gregary J Boyles <boylesgj AT lion DOT cs DOT latrobe DOT edu DOT au> asked to me:

>I tried implementing it exactly as you have done (or very nearly) and it
>doesn't work. I have also tried it a number of other ways and it still
>doesn't work. I get one of two results. Either the key board hangs and no
>longer responds to key presses - it is the key board and not my program.
>Or the key board continually interrupts and sends the value 122 to port
>0x60 - it still occassionally responds to key presses.

  You are getting 0xFA, that's the acknowledge from the kbd to your leds
command!

>Could you please explain to me, in intimate detail the procedure for
>changing the LED's.  In the 'update LEDs' function you have
>'ouportb(0x60,0xFA)' - what does that do?

  There isn't such a thing, perhaps you mean 0xF4, if that's the case see
the explanation.

>I can get the 'wait until ready' function to work and I can get the LED's
>to change from a test program e.g. outportb(0x60,0xED); delay(50);
>outportb(0x60,0x03); but when I try to do it in the test program for my
>key board handler it is a dismal failure.

  Because you must wait the ack. and not a simply delay(50).
-----------------------------------------------------------------------------
In other e-mail Gregary showed your code polling the keyboard to read the
ack. I don't thing that's a good idea because you'll get the IRQ anyways
and the main problem is from where can you call this polling.
-----------------------------------------------------------------------------
alexad3 AT uniserve DOT com (Alexander J Russell) exposed a similar code, so the
same applies.

SET

------------------------------------ 0 --------------------------------
Visit my home page: http://www.geocities.com/SiliconValley/Vista/6552/
Salvador Eduardo Tropea (SET). (Electronics Engineer)
Address: Curapaligue 2124, Caseros, 3 de Febrero
Buenos Aires, (1678), ARGENTINA
TE: +(541) 759 0013

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019