Jeżeli to nie WIN NT/2000/XP to:
1-W BIOSie komputera można ustawić opóźnienie po wciśnięciu (typematic delay) i częstotliwość repetycji (typematic rate). Choć windows chyba samo to reguluje.
2-Pobawiłbym się czymś takim:
repeat
x:=port[$60];
delay(50);
if x<>y then begin
write(x:4);
y:=x;
end
until x=1; {teoretycznie „Esc” przerwie pętlę}
Zwolnienie klawisza o ile dobrze pamiętam to Scancode+128. Jeżeli to zadziała (napisz jeżeli tak) łatwo zrobić funkcję mówiącą czy dany klawisz jest wciśnięty(wciśniętych jednocześnie może być wiele!).
Przydatna tabelka:
Top number ... DEC
Bottom number ... HEX
+--+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+-------+
|F1|F2|ESC| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = |BkS|Num Lok|Scr Lok|
| | | | | | | | | | | | | | | | | | |
|59|60| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 | 69 | 70 |
|3B|3C|01 |02 |03 |04 |05 |06 |07 |08 |09 |0A |0B |0C |0D |0E | 45 | 46 |
+--+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+-------+
|F3|F4|TAB| Q | W | E | R | T | Y | U | I | O | P | [ | ] | | 7 | 8 | 9 | - |
| | | | | | | | | | | | | | | | | | | | |
|61|62|15 |16 |17 |18 |19 |20 |21 |22 |23 |24 |25 |26 |27 | |71 |72 |73 |74 |
|3D|3E|0F |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |1A |1B | |47 |48 |49 |4A |
+--+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+-------+
|F5|F6|CTR| A | S | D | F | G | H | J | K | L | ; | ' | ` |28 | 4 | 5 | 6 | |
| | | | | | | | | | | | | | | | | | | | |
|63|64|29 |30 |31 |32 |33 |34 |35 |36 |37 |38 |39 |40 |41 | |75 |76 |77 | |
|3F|40|1D |1E |1F |20 |21 |22 |23 |24 |25 |26 |27 |28 |29 | |4B |4C |4D | |
+--+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+-------+
|F7|F8|Shf| \ | Z | X | C | V | B | N | M | , | . | / |Shf|Prt| 1 | 2 | 3 | + |
| | | | | | | | | | | | | | | | | | | | |
|65|66|42 |43 |44 |45 |46 |47 |48 |49 |50 |51 |52 |53 |54 |55 |78 |80 |81 |78 |
|41|42|2A |2B |2C |2D |2E |2F |30 |31 |32 |33 |34 |35 |36 |37 |4F |50 |51 |4E |
+--+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+-------+
|F9|F0| A|t | | | | |pac| | | | |Cap|Lok| I|s | D|l | |
| | | | | | | | | | | | | | | | | | | | |
|67|68| 5| | | | | |57 | | | | | 5| | 8| | 8| | |
|43|44| 3| | | | | |39 | | | | | 3| | 5| | 5| | |
+--+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+-------+