Advertisement
Guest User

Untitled

a guest
Jul 4th, 2010
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.67 KB | None | 0 0
  1. scancodes={
  2. [1]="Esc",[2]="1",[3]="2",[4]="3",[5]="4",[6]="5",[7]="6",[8]="7",[9]="8",
  3. [10]="9",[11]="0",[12]="-",[13]="=",[14]="Backspace",[15]="Tab",[16]="Q",
  4. [17]="W",[18]="E",[19]="R",[20]="T",[21]="Y",[22]="U",[23]="I",[24]="O",
  5. [25]="P",[26]="[",[27]="]",[28]="Enter",[29]="Left-Ctrl",[30]="A",[31]="S",
  6. [32]="D",[33]="F",[34]="G",[35]="H",[36]="J",[37]="K",[38]="L",[39]=";",
  7. [40]="'",[41]="`",[42]="Shift",[43]="\\",[44]="Z",[45]="X",[46]="C",[47]="V",
  8. [48]="B",[49]="N",[50]="M",[51]=",",[52]=".",[53]="/",[54]="Shift",[55]="*",
  9. [56]="Left-Alt",[57]="Spacebar",[58]="Caps",[59]="F1",[60]="F2",[61]="F3",
  10. [62]="F4",[63]="F5",[64]="F6",[65]="F7",[66]="F8",[67]="F9",[68]="F10",
  11. [69]="Num",[70]="ScrLk",[71]="Numpad-7",[72]="Numpad-8",[73]="Numpad-9",
  12. [74]="-",[75]="Numpad-4",[76]="Numpad-5",[77]="Numpad-6",[78]="Numpad-+",
  13. [79]="Numpad-1",[80]="Numpad-2",[81]="Numpad-3",[82]="Numpad-Ins",
  14. [83]="Numpad-Del",[87]="F11",[88]="F12",[156]="Numpad-Enter",
  15. [157]="Right-Ctrl",[181]="/",[183]="SysRq",[184]="Right-Alt",[199]="Home",
  16. [200]="Up",[201]="PgUp",[203]="Left",[205]="Right",[207]="End",[208]="Down",
  17. [209]="PgDn",[210]="Ins",[211]="Del",[255]="Break",
  18. }
  19.  
  20. base=1054
  21. kbstart=jpcrr.read_word(1050)-30
  22. kbend=jpcrr.read_word(1052)-30
  23. kbendext=kbend
  24. if(kbend<kbstart) then
  25.     kbendext=kbend+32
  26. end
  27. bufsize=(kbendext)-kbstart
  28. print(string.format("Key buffer: %d",bufsize/2))
  29. i=0
  30. for offset=kbstart,kbendext-1,2 do
  31.     ascii=jpcrr.read_byte(base+offset%32)
  32.     scancode=jpcrr.read_byte(1+base+offset%32)
  33.     scantext=scancodes[scancode]
  34.  
  35.     if scantext == nil then
  36.         scantext="Unknown key"
  37.     end
  38.  
  39.     print(string.format("% 2d: %02x / %02x (%s)",i,ascii,scancode,scantext))
  40.     i=i+1
  41. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement