Changeset fa09449 in mainline for uspace/srv/kbd/arch/mips32/src/kbd.c


Ignore:
Timestamp:
2009-02-15T22:31:07Z (15 years ago)
Author:
Jiri Svoboda <jirik.svoboda@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
6cd9aa6
Parents:
76dd25b
Message:

Keycodes, keyboard events, kbd_event_get(). Keyboard driver now (formally) produces kbd events (press/release, keycode, mods, char) instead of just characters. In reality, the driver and client are only hacked to work with the new interface atm.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/kbd/arch/mips32/src/kbd.c

    r76dd25b rfa09449  
    108108        /* Please preserve this code (it can be used to determine scancodes)
    109109       
    110         keybuffer_push(keybuffer, to_hex((scan_code>>4)&0xf));
    111         keybuffer_push(keybuffer, to_hex(scan_code&0xf));
    112         keybuffer_push(keybuffer, ' ');
    113         keybuffer_push(keybuffer, ' ');
     110        keybuffer_push0(keybuffer, to_hex((scan_code>>4)&0xf));
     111        keybuffer_push0(keybuffer, to_hex(scan_code&0xf));
     112        keybuffer_push0(keybuffer, ' ');
     113        keybuffer_push0(keybuffer, ' ');
    114114       
    115115        return 1;
     
    123123       
    124124        if ((buf & 0xff) != (GXEMUL_KEY_F1 & 0xff)) {
    125                 keybuffer_push(keybuffer, buf);
     125                keybuffer_push0(keybuffer, buf);
    126126                buf = count = 0;
    127127                return 1;
     
    132132
    133133        if ((buf & 0xffff) != (GXEMUL_KEY_F1 & 0xffff)) {
    134                 keybuffer_push(keybuffer, buf & 0xff);
    135                 keybuffer_push(keybuffer, (buf >> 8) &0xff);
     134                keybuffer_push0(keybuffer, buf & 0xff);
     135                keybuffer_push0(keybuffer, (buf >> 8) &0xff);
    136136                buf = count = 0;
    137137                return 1;
     
    146146                && (buf & 0xffffff) != (GXEMUL_KEY_F9 & 0xffffff)) {
    147147
    148                 keybuffer_push(keybuffer, buf & 0xff);
    149                 keybuffer_push(keybuffer, (buf >> 8) & 0xff);
    150                 keybuffer_push(keybuffer, (buf >> 16) & 0xff);
     148                keybuffer_push0(keybuffer, buf & 0xff);
     149                keybuffer_push0(keybuffer, (buf >> 8) & 0xff);
     150                keybuffer_push0(keybuffer, (buf >> 16) & 0xff);
    151151                buf = count = 0;
    152152                return 1;
     
    159159        switch (buf) {
    160160        case GXEMUL_KEY_F1:
    161                 keybuffer_push(keybuffer,FUNCTION_KEYS | 1 );
     161                keybuffer_push0(keybuffer,FUNCTION_KEYS | 1 );
    162162                buf=count=0;
    163163                return 1;
    164164        case GXEMUL_KEY_F2:
    165                 keybuffer_push(keybuffer,FUNCTION_KEYS | 2 );
     165                keybuffer_push0(keybuffer,FUNCTION_KEYS | 2 );
    166166                buf=count=0;
    167167                return 1;
    168168        case GXEMUL_KEY_F3:
    169                 keybuffer_push(keybuffer,FUNCTION_KEYS | 3 );
     169                keybuffer_push0(keybuffer,FUNCTION_KEYS | 3 );
    170170                buf=count=0;
    171171                return 1;
    172172        case GXEMUL_KEY_F4:
    173                 keybuffer_push(keybuffer,FUNCTION_KEYS | 4 );
     173                keybuffer_push0(keybuffer,FUNCTION_KEYS | 4 );
    174174                buf=count=0;
    175175                return 1;
    176176        case GXEMUL_KEY_F5:
    177                 keybuffer_push(keybuffer,FUNCTION_KEYS | 5 );
     177                keybuffer_push0(keybuffer,FUNCTION_KEYS | 5 );
    178178                buf=count=0;
    179179                return 1;
    180180        case GXEMUL_KEY_F6:
    181                 keybuffer_push(keybuffer,FUNCTION_KEYS | 6 );
     181                keybuffer_push0(keybuffer,FUNCTION_KEYS | 6 );
    182182                buf=count=0;
    183183                return 1;
    184184        case GXEMUL_KEY_F7:
    185                 keybuffer_push(keybuffer,FUNCTION_KEYS | 7 );
     185                keybuffer_push0(keybuffer,FUNCTION_KEYS | 7 );
    186186                buf=count=0;
    187187                return 1;
    188188        case GXEMUL_KEY_F8:
    189                 keybuffer_push(keybuffer,FUNCTION_KEYS | 8 );
     189                keybuffer_push0(keybuffer,FUNCTION_KEYS | 8 );
    190190                buf=count=0;
    191191                return 1;
    192192        case GXEMUL_KEY_F9:
    193                 keybuffer_push(keybuffer,FUNCTION_KEYS | 9 );
     193                keybuffer_push0(keybuffer,FUNCTION_KEYS | 9 );
    194194                buf=count=0;
    195195                return 1;
    196196        case GXEMUL_KEY_F10:
    197                 keybuffer_push(keybuffer,FUNCTION_KEYS | 10 );
     197                keybuffer_push0(keybuffer,FUNCTION_KEYS | 10 );
    198198                buf=count=0;
    199199                return 1;
    200200        case GXEMUL_KEY_F11:
    201                 keybuffer_push(keybuffer,FUNCTION_KEYS | 11 );
     201                keybuffer_push0(keybuffer,FUNCTION_KEYS | 11 );
    202202                buf=count=0;
    203203                return 1;
    204204        case GXEMUL_KEY_F12:
    205                 keybuffer_push(keybuffer,FUNCTION_KEYS | 12 );
     205                keybuffer_push0(keybuffer,FUNCTION_KEYS | 12 );
    206206                buf=count=0;
    207207                return 1;
    208208        default:
    209                 keybuffer_push(keybuffer, buf & 0xff );
    210                 keybuffer_push(keybuffer, (buf >> 8) &0xff );
    211                 keybuffer_push(keybuffer, (buf >> 16) &0xff );
    212                 keybuffer_push(keybuffer, (buf >> 24) &0xff );
     209                keybuffer_push0(keybuffer, buf & 0xff );
     210                keybuffer_push0(keybuffer, (buf >> 8) &0xff );
     211                keybuffer_push0(keybuffer, (buf >> 16) &0xff );
     212                keybuffer_push0(keybuffer, (buf >> 24) &0xff );
    213213                buf=count=0;
    214214                return 1;
Note: See TracChangeset for help on using the changeset viewer.