Changeset e8a9dc3 in mainline for arch


Ignore:
Timestamp:
2005-12-10T16:37:20Z (20 years ago)
Author:
Ondrej Palkovsky <ondrap@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e5fcf00
Parents:
f7f6f25
Message:

Added support for backspace

  • printing '\b' should move the cursor one char to the left
  • backspace key should return '\b' to application
Location:
arch
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/src/drivers/ega.c

    rf7f6f25 re8a9dc3  
    100100
    101101        switch (ch) {
    102             case '\n':
     102        case '\n':
    103103                ega_cursor = (ega_cursor + ROW) - ega_cursor % ROW;
    104104                break;
    105             case '\t':
     105        case '\t':
    106106                ega_cursor = (ega_cursor + 8) - ega_cursor % 8;
    107107                break;
    108             default:
     108        case '\b':
     109                if (ega_cursor % ROW)
     110                        ega_cursor--;
     111                break;
     112        default:
    109113                ega_display_char(ch);
    110114                ega_cursor++;
  • arch/ia32/src/drivers/i8042.c

    rf7f6f25 re8a9dc3  
    8282        SPECIAL, /* 0x01 - Esc */
    8383        '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '-', '=',
    84         SPECIAL, /* 0x0e - Backspace */
     84        '\b', /* 0x0e - Backspace */
    8585        '\t', 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '[', ']', '\n',
    8686        SPECIAL, /* 0x1d - LCtrl */
  • arch/mips32/src/drivers/arc.c

    rf7f6f25 re8a9dc3  
    210210        if (ch == '\r')
    211211                ch = '\n';
    212 
     212        if (ch == 0x7f)
     213                ch = '\b';
     214       
    213215        chardev_push_character(&console, ch);
    214216}
  • arch/mips32/src/drivers/msim.c

    rf7f6f25 re8a9dc3  
    6262}
    6363
     64#include <print.h>
    6465/** Process keyboard interrupt. */
    6566static void msim_interrupt(int n, void *stack)
     
    7071        if (ch =='\r')
    7172                ch = '\n';
     73        if (ch == 0x7f)
     74                ch = '\b';
    7275        chardev_push_character(&console, ch);
    7376}
Note: See TracChangeset for help on using the changeset viewer.