3

enter image description here

(p. 70 in the Service manual)

1
  • 1
    The 8041 is the keyboard controller. Apparently it failed the self test command (0AAh) during initialization..
    – StarCat
    Commented Dec 30, 2020 at 12:17

2 Answers 2

6

0AAh is the Basic Assurance Test code (BAT). See BIOS Diagnostic - keyboard

This error code means that the keyboard does not respond to this command.

1.0.3. Keyboard controller test.

A keyboard controller BAT command is issued(command 0AAH) and the
response is checked. Response should be 55H.
0
1

The 8041 is designed to be a coprocessor that executes service work for a main processor. It has an integrated communication infrastructure, consisting of two 8-bit mailboxes. A mailbox is a structure where one party can store data in it, and another party can consume the data from it. Both parties can check whether the mailbox is full (data stored which has not yet been removed) or empty (no data in the mailbox at the moment, the sending party may store data).

Assuming the hardware interface to the keyboard controller works (we can't be sure!), if the software in the keyboard controller would not run at all, it would never consume the command code 0AAh from its input mailbox. This would be error code 0301h. So under this assumption, we know that the keyboard controller software runs at least partially. If the software in the keyboard controller runs correctly, it will put 055h (self test OK) or 0FCh (self test failed) into the output mailbox. Error code 0302h means, it did put neither of these answers into the output mailbox. If the keyboard controller had responded with 0FCh, the error code would have been 0303h instead. So we can conclude that this symptom (under the initial assumtion that the interface between the host processor and the keyboard controller works) means that the program in the keyboard controller is partially corrupted. The Omnibook 300 seems old enough that the keyboard controller is not field-upgradable. For newer laptop, this symptom might be caused by a failed update to the "embedded controller" which usually contains the keyboard controller stuff, too.

Another plausible explanation for the symptom would be broken communication between the host processor and the keyboard controller (or a completely dead keyboard controller), such that the mailbox status errorneously always reports "empty". In that case, the BIOS would write the 0AAh command, find the input mailbox empty afterwards, conclude that the controller began execution of that command, but never find the result of this command in the output mailbox.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .