Subversion Repositories HelenOS

Rev

Rev 2357 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2357 Rev 2464
Line 31... Line 31...
31
 */
31
 */
32
/** @file
32
/** @file
33
 *  @brief Debug print functions.
33
 *  @brief Debug print functions.
34
 */
34
 */
35
 
35
 
36
 
-
 
37
#include <printf/printf_core.h>
36
#include <printf/printf_core.h>
38
#include <arch/debug/print.h>
37
#include <arch/debug/print.h>
39
#include <arch/machine.h>
38
#include <arch/machine.h>
40
 
39
 
41
 
-
 
42
/** Prints a character to the console.
40
/** Prints a character to the console.
43
 *
41
 *
44
 * @param ch Character to be printed.
42
 * @param ch Character to be printed.
45
 */
43
 */
46
static void putc(char ch)
44
static void putc(char ch)
47
{
45
{
48
    machine_debug_putc(ch);
46
    machine_debug_putc(ch);
49
}
47
}
50
 
48
 
51
 
-
 
52
/** Prints a string to the console.
49
/** Prints a string to the console.
53
 *
50
 *
54
 * @param str    String to be printed.
51
 * @param str    String to be printed.
55
 * @param count  Number of characters to be printed.
52
 * @param count  Number of characters to be printed.
56
 * @param unused Unused parameter.
53
 * @param unused Unused parameter.
Line 64... Line 61...
64
        putc(str[i]);
61
        putc(str[i]);
65
    }
62
    }
66
    return i;
63
    return i;
67
}
64
}
68
 
65
 
69
 
-
 
70
/** Prints a formated string.
66
/** Prints a formated string.
71
 *
67
 *
72
 * @param fmt "Printf-like" format.
68
 * @param fmt "Printf-like" format.
73
 */
69
 */
74
void debug_printf(const char *fmt, ...)
70
void debug_printf(const char *fmt, ...)
75
{
71
{
76
    va_list args;
72
    va_list args;
77
    va_start (args, fmt);
73
    va_start (args, fmt);
78
 
74
 
-
 
75
    struct printf_spec ps = {
79
    struct printf_spec ps = { (int(*)(void *, size_t, void *)) debug_write, NULL };
76
        (int (*)(void *, size_t, void *)) debug_write,
-
 
77
        NULL
-
 
78
    };
80
    printf_core(fmt, &ps, args);
79
    printf_core(fmt, &ps, args);
81
 
80
 
82
    va_end(args);
81
    va_end(args);
83
}
82
}
84
 
83
 
Line 86... Line 85...
86
 *
85
 *
87
 * @param str String to print.
86
 * @param str String to print.
88
 */
87
 */
89
void debug_puts(const char *str)
88
void debug_puts(const char *str)
90
{
89
{
91
    while ( *str ) {
90
    while (*str) {
92
        putc(*str);
91
        putc(*str);
93
        str++;
92
        str++;
94
    }
93
    }
95
}
94
}
96
 
95