2011-02-20 22:38:15 +00:00
|
|
|
#ifndef __KSTDIO_H__
|
|
|
|
#define __KSTDIO_H__
|
|
|
|
|
2011-02-21 11:23:58 +00:00
|
|
|
#include "types.h"
|
2011-02-20 22:38:15 +00:00
|
|
|
|
2011-03-13 14:18:08 +00:00
|
|
|
#define LOOPFOREVER for(;;){}
|
|
|
|
|
2011-04-04 16:25:20 +00:00
|
|
|
void kstdio_init(void);
|
2011-02-20 22:38:15 +00:00
|
|
|
void koutb(u16 Port, u8 Data);
|
2011-02-22 17:09:58 +00:00
|
|
|
u8 kinb(u16 Port);
|
2012-10-28 09:27:36 +00:00
|
|
|
void koutl(u16 Port, u32 Data);
|
|
|
|
u32 kinl(u16 Port);
|
2011-02-22 17:09:58 +00:00
|
|
|
void kio_wait(void);
|
2011-03-14 19:31:10 +00:00
|
|
|
u32 kstrlen(const s8 *szString);
|
2011-02-20 22:38:15 +00:00
|
|
|
void kmove_cursor(u8 X, u8 Y);
|
2011-03-14 19:31:10 +00:00
|
|
|
void kputs(const s8 *szString);
|
|
|
|
void kputch(const s8 Character);
|
2011-02-20 22:38:15 +00:00
|
|
|
void kclear(void);
|
2011-03-14 19:31:10 +00:00
|
|
|
void kprint(const s8 *szString);
|
2012-10-29 17:59:09 +00:00
|
|
|
void kputi(s64 Number);
|
2011-03-14 19:31:10 +00:00
|
|
|
void kprintf(const s8 *Format, ...);
|
2011-02-20 22:38:15 +00:00
|
|
|
void kdump(u8 *bData, u32 Length);
|
2012-05-07 16:53:06 +00:00
|
|
|
void kprint_hex(u64 Number);
|
2012-10-28 11:24:43 +00:00
|
|
|
void kprint_hex_16(u16 Number);
|
2011-06-28 11:15:42 +00:00
|
|
|
void kstdio_set_globals(u8 line, u8 cur_x, u8 cur_y);
|
2012-08-23 11:58:23 +00:00
|
|
|
s32 kmemcmp(const u8 *MemA, const u8 *MemB, u32 Length);
|
2011-02-20 22:38:15 +00:00
|
|
|
|
|
|
|
#endif
|