Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 4238 → Rev 4239

/trunk/uspace/lib/libc/include/console.h
37,6 → 37,7
 
#include <console/style.h>
#include <console/color.h>
#include <sys/types.h>
#include <bool.h>
 
extern void console_open(bool);
47,7 → 48,7
 
extern void console_clear(void);
extern void console_goto(int, int);
extern void console_putchar(int);
extern void console_putchar(wchar_t);
extern ssize_t console_write(const char *buf, size_t nbyte);
extern void console_putstr(const char *s);
extern void console_flush(void);
/trunk/uspace/lib/libc/Makefile.toolchain
26,7 → 26,10
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
 
CFLAGS = -fno-builtin -Wall -Werror-implicit-function-declaration -Wmissing-prototypes -O3 -nostdlib -nostdinc -imacros $(LIBC_PREFIX)/../../../config.h -I$(LIBC_PREFIX)/include -pipe -g
CFLAGS = -fno-builtin -Wall -Werror-implicit-function-declaration\
-fexec-charset=UTF-8 -fwide-exec-charset=UTF-32 -finput-charset=UTF-8\
-Wmissing-prototypes -O3 -nostdlib -nostdinc -imacros\
$(LIBC_PREFIX)/../../../config.h -I$(LIBC_PREFIX)/include -pipe -g
LFLAGS = -M -N $(SOFTINT_PREFIX)/libsoftint.a
AFLAGS =
 
/trunk/uspace/lib/libc/generic/console.c
57,7 → 57,7
static char *cbp = cbuffer;
 
static ssize_t cons_write(const char *buf, size_t nbyte);
static void cons_putchar(int c);
static void cons_putchar(wchar_t c);
 
static void cbuffer_flush(void);
static void cbuffer_drain(void);
119,9 → 119,11
async_msg_2(cons_phone, CONSOLE_GOTO, row, col);
}
 
void console_putchar(int c)
void console_putchar(wchar_t c)
{
cbuffer_putc(c);
// cbuffer_putc(c);
cbuffer_flush();
cons_putchar(c);
}
 
/** Write all data from output buffer to the console. */
162,7 → 164,7
}
 
/** Write one character to the console via IPC. */
static void cons_putchar(int c)
static void cons_putchar(wchar_t c)
{
int cons_phone = console_phone_get(true);
async_msg_1(cons_phone, CONSOLE_PUTCHAR, c);
/trunk/uspace/lib/libc/generic/io/io.c
36,6 → 36,8
#include <unistd.h>
#include <stdio.h>
#include <io/io.h>
#include <string.h>
#include <errno.h>
 
const static char nl = '\n';
 
87,10 → 89,16
 
int putchar(int c)
{
unsigned char ch = c;
if (write_stdout((void *) &ch, 1) == 1)
char buf[STR_BOUNDS(1)];
size_t offs;
 
offs = 0;
if (chr_encode(c, buf, &offs, STR_BOUNDS(1)) != EOK)
return EOF;
 
if (write_stdout((void *) buf, offs) == offs)
return c;
 
return EOF;
}