home *** CD-ROM | disk | FTP | other *** search
/ Large Pack of OldSkool DOS MOD Trackers / it214v3.zip / KEYBOARD.ZIP / US.ASM < prev   
Assembly Source File  |  1996-09-19  |  13KB  |  594 lines

  1.  
  2.         .model tiny
  3.         .code
  4.  
  5. ; to create the file:
  6. ;  TASM <filename>
  7. ;  TLINK /TDC <filename>
  8. ;  REN <filename>.COM KEYBOARD.CFG
  9. ;
  10. ; Structure is:
  11. ;  Keycode        (1 byte)
  12. ;   Condition     (1 byte)
  13. ;    Return value (1 word)
  14. ;   Condition     (1 byte)
  15. ;    Return value (1 word)
  16. ;   Condition     (1 byte)
  17. ;    Return value (1 word)
  18. ;    .
  19. ;    .
  20. ;    .
  21. ;   0FFh <-- end of condition/return value list
  22. ;
  23. ; Keycode is the value in the keypress table in IT on Ctrl-F1 (remember the
  24. ; values on the keypress table are in HEX..)
  25. ;
  26. ; Condition is one of the following
  27. ;  0 = requires NO Shift/Ctrl/Alt/...,
  28. ;  1 = if Shift and key while caps lock OFF *OR* CAPS lock ON, no ctrl/alt
  29. ;  2 = if Shift and key while caps lock ON *OR* CAPS lock OFF, no ctrl/alt
  30. ;  3 = if Shift
  31. ;  4 = if Ctrl
  32. ;  5 = if left/right Alt
  33. ;  6 = if Left Alt
  34. ;  7 = if Right Alt
  35. ;  8 = if Numlock on, no ctrl/alt
  36. ;  9 = if Numlock off, no ctrl/alt
  37. ;  0FFh = end of list.
  38. ;
  39. ; Return value is the character, or a DOS character value
  40.  
  41. ORG 100h
  42.  
  43. FileStart:
  44.  
  45. FileLength  DW      Offset EndKeyboardTable - Offset StartKeyboardTable
  46.  
  47. StartKeyboardTable:
  48.  
  49.         DB      2       ; 1
  50.          DB      0
  51.          DW      '1'
  52.          DB      3       ; !
  53.          DW      '!'
  54.          DB      0FFh
  55.  
  56.         DB      3       ; 2
  57.          DB      0
  58.          DW      '2'
  59.          DB      3       ; @
  60.          DW      '@'
  61.          DB      0FFh
  62.  
  63.         DB      4       ; 3
  64.          DB      0
  65.          DW      '3'
  66.          DB      3       ; #
  67.          DW      '#'
  68.          DB      0FFh
  69.  
  70.         DB      5       ; 4
  71.          DB      0
  72.          DW      '4'
  73.          DB      3       ; $
  74.          DW      '$'
  75.          DB      0FFh
  76.  
  77.         DB      6       ; 5
  78.          DB      0
  79.          DW      '5'
  80.          DB      3       ; %
  81.          DW      '%'
  82.          DB      0FFh
  83.  
  84.         DB      7       ; 6
  85.          DB      0
  86.          DW      '6'
  87.          DB      3       ; ^
  88.          DW      '^'
  89.          DB      0FFh
  90.  
  91.         DB      8       ; 7
  92.          DB      0
  93.          DW      '7'
  94.          DB      3       ; &
  95.          DW      '&'
  96.          DB      0FFh
  97.  
  98.         DB      9       ; 8
  99.          DB      0
  100.          DW      '8'
  101.          DB      3       ; *
  102.          DW      '*'
  103.          DB      0FFh
  104.  
  105.         DB      10      ; 9
  106.          DB      0
  107.          DW      '9'
  108.          DB      3       ; (
  109.          DW      '('
  110.          DB      0FFh
  111.  
  112.         DB      11      ; 0
  113.          DB      0
  114.          DW      '0'
  115.          DB      3       ; )
  116.          DW      ')'
  117.          DB      0FFh
  118.  
  119.         DB      12      ; -
  120.          DB      0
  121.          DW      '-'
  122.          DB      3       ; _
  123.          DW      '_'
  124.          DB      0FFh
  125.  
  126.         DB      13      ; =
  127.          DB      0
  128.          DW      '='
  129.          DB      3       ; +
  130.          DW      '+'
  131.          DB      0FFh
  132.  
  133.         DB      14      ; Backspace
  134.          DB      4       ; Ctrl-Backspace
  135.          DW      127
  136.          DB      0FFh
  137.  
  138.         DB      15      ; Tab
  139.          DB      3       ; ShiftTab
  140.          DW      0F00h
  141.          DB      0FFh
  142.  
  143.         DB      16      ; Q
  144.          DB      1
  145.          DW      'Q'
  146.          DB      2       ; q
  147.          DW      'q'
  148.          DB      4       ; Ctrl-Q
  149.          DW      11h
  150.          DB      5       ; Alt-Q
  151.          DW      1000h
  152.          DB      0FFh
  153.  
  154.         DB      17      ; W
  155.          DB      1
  156.          DW      'W'
  157.          DB      2       ; w
  158.          DW      'w'
  159.          DB      4       ; Ctrl-W
  160.          DW      17h
  161.          DB      5       ; Alt-W
  162.          DW      1100h
  163.          DB      0FFh
  164.  
  165.         DB      18      ; E
  166.          DB      1
  167.          DW      'E'
  168.          DB      2       ;e
  169.          DW      'e'
  170.          DB      4       ; Ctrl-E
  171.          DW      5
  172.          DB      5       ; Alt-E
  173.          DW      1200h
  174.          DB      0FFh
  175.  
  176.         DB      19      ; R
  177.          DB      1
  178.          DW      'R'
  179.          DB      2       ; r
  180.          DW      'r'
  181.          DB      4       ; Ctrl-R
  182.          DW      12h
  183.          DB      5       ; Alt-R
  184.          DW      1300h
  185.          DB      0FFh
  186.  
  187.         DB      20      ; T
  188.          DB      1
  189.          DW      'T'
  190.          DB      2       ; t
  191.          DW      't'
  192.          DB      4       ; Ctrl-T
  193.          DW      14h
  194.          DB      5       ; Alt-T
  195.          DW      1400h
  196.          DB      0FFh
  197.  
  198.         DB      21      ; Y
  199.          DB      1
  200.          DW      'Y'
  201.          DB      2       ; y
  202.          DW      'y'
  203.          DB      4       ; Ctrl-Y
  204.          DW      19h
  205.          DB      5       ; Alt-Y
  206.          DW      1500h
  207.          DB      0FFh
  208.  
  209.         DB      22      ; U
  210.          DB      1
  211.          DW      'U'
  212.          DB      2       ; u
  213.          DW      'u'
  214.          DB      4       ; Ctrl-U
  215.          DW      15h
  216.          DB      5       ; Alt-U
  217.          DW      1600h
  218.          DB      0FFh
  219.  
  220.         DB      23      ; I
  221.          DB      1
  222.          DW      'I'
  223.          DB      2       ; i
  224.          DW      'i'
  225.          DB      4       ; Ctrl-I
  226.          DW      9
  227.          DB      5       ; Alt-I
  228.          DW      1700h
  229.          DB      0FFh
  230.  
  231.         DB      24      ; O
  232.          DB      1
  233.          DW      'O'
  234.          DB      2       ; o
  235.          DW      'o'
  236.          DB      4       ; Ctrl-O
  237.          DW      0Fh
  238.          DB      5       ; Alt-O
  239.          DW      1800h
  240.          DB      0FFh
  241.  
  242.         DB      25      ; P
  243.          DB      1
  244.          DW      'P'
  245.          DB      2       ; p
  246.          DW      'p'
  247.          DB      4       ; Ctrl-P
  248.          DW      10h
  249.          DB      5       ; Alt-P
  250.          DW      1900h
  251.          DB      0FFh
  252.  
  253.         DB      26      ; [
  254.          DB      0
  255.          DW      '['
  256.          DB      3       ; {
  257.          DW      '{'
  258.          DB      0FFh
  259.  
  260.         DB      27      ; ]
  261.          DB      0
  262.          DW      ']'
  263.          DB      3       ; }
  264.          DW      '}'
  265.          DB      0FFh
  266.  
  267.         DB      30      ; A
  268.          DB      1
  269.          DW      'A'
  270.          DB      2       ; a
  271.          DW      'a'
  272.          DB      4       ; Ctrl-A
  273.          DW      1
  274.          DB      5       ; Alt-A
  275.          DW      1E00h
  276.          DB      0FFh
  277.  
  278.         DB      31      ; S
  279.          DB      1
  280.          DW      'S'
  281.          DB      2       ; s
  282.          DW      's'
  283.          DB      4       ; Ctrl-S
  284.          DW      13h
  285.          DB      5       ; Alt-S
  286.          DW      1F00h
  287.          DB      0FFh
  288.  
  289.         DB      32      ; D
  290.          DB      1
  291.          DW      'D'
  292.          DB      2       ; d
  293.          DW      'd'
  294.          DB      4       ; Ctrl-D
  295.          DW      4
  296.          DB      5       ; Alt-D
  297.          DW      2000h
  298.          DB      0FFh
  299.  
  300.         DB      33      ; F
  301.          DB      1
  302.          DW      'F'
  303.          DB      2       ; f
  304.          DW      'f'
  305.          DB      4       ; Ctrl-F
  306.          DW      6
  307.          DB      5       ; Alt-F
  308.          DW      2100h
  309.          DB      0FFh
  310.  
  311.         DB      34      ; G
  312.          DB      1
  313.          DW      'G'
  314.          DB      2       ; g
  315.          DW      'g'
  316.          DB      4       ; Ctrl-G
  317.          DW      7
  318.          DB      5       ; Alt-G
  319.          DW      2200h
  320.          DB      0FFh
  321.  
  322.         DB      35      ; H
  323.          DB      1
  324.          DW      'H'
  325.          DB      2       ; h
  326.          DW      'h'
  327.          DB      4       ; Ctrl-H
  328.          DW      8
  329.          DB      5       ; Alt-H
  330.          DW      2300h
  331.          DB      0FFh
  332.  
  333.         DB      36      ; J
  334.          DB      1
  335.          DW      'J'
  336.          DB      2       ; j
  337.          DW      'j'
  338.          DB      4       ; Ctrl-J
  339.          DW      0Ah
  340.          DB      5       ; Alt-J
  341.          DW      2400h
  342.          DB      0FFh
  343.  
  344.         DB      37      ; K
  345.          DB      1
  346.          DW      'K'
  347.          DB      2       ; k
  348.          DW      'k'
  349.          DB      4       ; Ctrl-K
  350.          DW      0Bh
  351.          DB      5       ; Alt-K
  352.          DW      2500h
  353.          DB      0FFh
  354.  
  355.         DB      38      ; L
  356.          DB      1
  357.          DW      'L'
  358.          DB      2       ; l
  359.          DW      'l'
  360.          DB      4       ; Ctrl-L
  361.          DW      0Ch
  362.          DB      5       ; Alt-L
  363.          DW      2600h
  364.          DB      0FFh
  365.  
  366.         DB      39      ; ;
  367.          DB      0
  368.          DW      ';'
  369.          DB      3       ; :
  370.          DW      ':'
  371.          DB      0FFh
  372.  
  373.         DB      40      ; '
  374.          DB      0
  375.          DW      "'"
  376.          DB      3       ; "
  377.          DW      '"'
  378.          DB      0FFh
  379.  
  380.         DB      41      ; `
  381.          DB      0
  382.          DW      '`'
  383.          DB      3       ; ~
  384.          DW      '~'
  385.          DB      0FFh
  386.  
  387.         DB      43      ; \
  388.          DB      0
  389.          DW      '\'
  390.          DB      3       ; |
  391.          DW      '|'
  392.          DB      0FFh
  393.  
  394.         DB      44      ; z
  395.          DB      1
  396.          DW      'Z'
  397.          DB      2       ; z
  398.          DW      'z'
  399.          DB      4       ; Ctrl-Z
  400.          DW      1Ah
  401.          DB      5       ; Alt-Z
  402.          DW      2C00h
  403.          DB      0FFh
  404.  
  405.         DB      45      ; X
  406.          DB      1
  407.          DW      'X'
  408.          DB      2       ; x
  409.          DW      'x'
  410.          DB      4       ; Ctrl-X
  411.          DW      1Ah
  412.          DB      5       ; Alt-X
  413.          DW      2D00h
  414.          DB      0FFh
  415.  
  416.         DB      46      ; C
  417.          DB      1
  418.          DW      'C'
  419.          DB      2       ; c
  420.          DW      'c'
  421.          DB      4       ; Ctrl-C
  422.          DW      3
  423.          DB      5       ; Alt-C
  424.          DW      2E00h
  425.          DB      0FFh
  426.  
  427.         DB      47      ; V
  428.          DB      1
  429.          DW      'V'
  430.          DB      2       ; v
  431.          DW      'v'
  432.          DB      4       ; Ctrl-V
  433.          DW      16h
  434.          DB      5       ; Alt-V
  435.          DW      2F00h
  436.          DB      0FFh
  437.  
  438.         DB      48      ; B
  439.          DB      1
  440.          DW      'B'
  441.          DB      2       ; b
  442.          DW      'b'
  443.          DB      4       ; Ctrl-B
  444.          DW      2
  445.          DB      5       ; Alt-B
  446.          DW      3000h
  447.          DB      0FFh
  448.  
  449.         DB      49      ; N
  450.          DB      1
  451.          DW      'N'
  452.          DB      2       ; n
  453.          DW      'n'
  454.          DB      4       ; Ctrl-N
  455.          DW      0Eh
  456.          DB      5       ; Alt-N
  457.          DW      3100h
  458.          DB      0FFh
  459.  
  460.         DB      50      ; M
  461.          DB      1
  462.          DW      'M'
  463.          DB      2
  464.          DW      'm'
  465.          DB      4       ; Ctrl-M
  466.          DW      0Dh
  467.          DB      5       ; Alt-M
  468.          DW      3200h
  469.          DB      0FFh
  470.  
  471.         DB      51      ; ,
  472.          DB      0
  473.          DW      ','
  474.          DB      3
  475.          DW      '<'
  476.          DB      0FFh
  477.  
  478.         DB      52      ; .
  479.          DB      0
  480.          DW      '.'
  481.          DB      3
  482.          DW      '>'
  483.          DB      0FFh
  484.  
  485.         DB      53      ; /
  486.          DB      0
  487.          DW      '/'
  488.          DB      3
  489.          DW      '?'
  490.          DB      0FFh
  491.  
  492.         DB      55      ; XT/AT printscreen, Enhanced keyboard *
  493.          DB      0
  494.          DW      '*'
  495.          DB      0FFh
  496.  
  497.         DB      57      ; Spacebar
  498.          DB      0
  499.          DW      ' '
  500.          DB      3
  501.          DW      ' '
  502.          DB     0FFh
  503.  
  504.         DB      71      ; Keypad 7
  505.          DB      8
  506.          DW      '7'
  507.          DB      10
  508.          DW      7
  509.          DB      0FFh
  510.  
  511.         DB      72      ; Keypad 8
  512.          DB      8
  513.          DW      '8'
  514.          DB      10
  515.          DW      8
  516.          DB      0FFh
  517.  
  518.         DB      73      ; Keypad 9
  519.          DB      8
  520.          DW      '9'
  521.          DB      10
  522.          DW      9
  523.          DB      0FFh
  524.  
  525.         DB      74      ; Grey -
  526.          DB      0
  527.          DW      '-'
  528.          DB      0FFh
  529.  
  530.         DB      75      ; Keypad 4
  531.          DB      8
  532.          DW      '4'
  533.          DB      10
  534.          DW      4
  535.          DB      0FFh
  536.  
  537.         DB      76      ; Keypad 5
  538.          DB      8
  539.          DW      '5'
  540.          DB      10
  541.          DW      5
  542.          DB      0FFh
  543.  
  544.         DB      77      ; Keypad 6
  545.          DB      8
  546.          DW      '6'
  547.          DB      10
  548.          DW      6
  549.          DB      0FFh
  550.  
  551.         DB      78      ; Grey +
  552.          DB      0
  553.          DW      '+'
  554.          DB      0FFh
  555.  
  556.         DB      79      ; Keypad 1
  557.          DB      8
  558.          DW      '1'
  559.          DB      10
  560.          DW      1
  561.          DB      0FFh
  562.  
  563.         DB      80      ; Keypad 2
  564.          DB      8
  565.          DW      '2'
  566.          DB      10
  567.          DW      2
  568.          DB      0FFh
  569.  
  570.         DB      81      ; Keypad 3
  571.          DB      8
  572.          DW      '3'
  573.          DB      10
  574.          DW      3
  575.          DB      0FFh
  576.  
  577.         DB      82      ; Keypad 0
  578.          DB      8
  579.          DW      '0'
  580.          DB      10
  581.          DW      0
  582.          DB      0FFh
  583.  
  584.         DB      128+35h ; Grey /
  585.          DB      0
  586.          DW      '/'
  587.          DB      0FFh
  588.  
  589.         DB      0FFh
  590.  
  591. EndKeyboardTable:
  592.  
  593. End     FileStart
  594.