/* * Copyright 2005, Axel Dörfler, axeld@pinc-software.de. All rights reserved. * Distributed under the terms of the MIT License. * * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. * Distributed under the terms of the NewOS License. */ #ifndef _KERNEL_CONSOLE_H #define _KERNEL_CONSOLE_H #include #include struct kernel_args; typedef struct { module_info info; status_t (*get_size)(int32 *_width, int32 *_height); void (*move_cursor)(int32 x, int32 y); void (*put_glyph)(int32 x, int32 y, uint8 glyph, uint8 attr); void (*fill_glyph)(int32 x, int32 y, int32 width, int32 height, uint8 glyph, uint8 attr); void (*blit)(int32 srcx, int32 srcy, int32 width, int32 height, int32 destx, int32 desty); void (*clear)(uint8 attr); } console_module_info; #ifdef __cplusplus extern "C" { #endif int con_init(struct kernel_args *args); void kprintf(const char *fmt, ...) __PRINTFLIKE(1,2); void kprintf_xy(int x, int y, const char *fmt, ...) __PRINTFLIKE(3,4); #ifdef __cplusplus } #endif #endif /* _KERNEL_CONSOLE_H */