Changeset b60c582 in mainline for kernel/arch/ia64/src/ski/ski.c


Ignore:
Timestamp:
2009-04-03T08:02:30Z (16 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
2398ee9
Parents:
9be1d58
Message:

update for string changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia64/src/ski/ski.c

    r9be1d58 rb60c582  
    4242#include <arch/asm.h>
    4343#include <arch/drivers/kbd.h>
     44#include <string.h>
    4445#include <arch.h>
    4546
     
    4950static bool kbd_disabled;
    5051
     52static void ski_do_putchar(const wchar_t ch)
     53{
     54        asm volatile (
     55                "mov r15 = %[cmd]\n"
     56                "mov r32 = %[ch]\n"   /* r32 is in0 */
     57                "break 0x80000\n"  /* modifies r8 */
     58                :
     59                : [cmd] "i" (SKI_PUTCHAR), [ch] "r" (ch)
     60                : "r15", "in0", "r8"
     61        );
     62}
     63
    5164/** Display character on debug console
    5265 *
     
    5770 * @param ch Character to be printed.
    5871 */
    59 static void ski_putchar(outdev_t *d, const char ch, bool silent)
     72static void ski_putchar(outdev_t *d, const wchar_t ch, bool silent)
    6073{
    6174        if (!silent) {
    62                 asm volatile (
    63                         "mov r15 = %0\n"
    64                         "mov r32 = %1\n"   /* r32 is in0 */
    65                         "break 0x80000\n"  /* modifies r8 */
    66                         :
    67                         : "i" (SKI_PUTCHAR), "r" (ch)
    68                         : "r15", "in0", "r8"
    69                 );
    70                
    71                 if (ch == '\n')
    72                         ski_putchar(d, '\r', false);
     75                if (ascii_check(ch)) {
     76                        if (ch == '\n')
     77                                ski_do_putchar('\r');
     78                       
     79                        ski_do_putchar(ch);
     80                } else
     81                        ski_do_putchar(invalch);
    7382        }
    7483}
Note: See TracChangeset for help on using the changeset viewer.