Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1362 → Rev 1363

/uspace/trunk/libc/include/ipc/fb.h
0,0 → 1,60
 
 
#include <arch/types.h>
#include <types.h>
 
#ifndef __libc__FB_H__
#define __libc__FB_H__
 
#define FB_GET_VFB 1024
#define FB_PUTCHAR 1025
 
#define METHOD_WIDTH 16
#define ITEM_WIDTH 16
#define COUNT_WIDTH 16 /*Should be 8 times integer*/
 
 
struct _fb_method
{
unsigned m : METHOD_WIDTH;
unsigned item : ITEM_WIDTH;
} __attribute__ ((packed));
 
union fb_method
{
struct _fb_method m;
__native fill;
}__attribute__ ((packed));
 
struct fb_call_args
{
union fb_method method;
union
{
struct
{
unsigned count :COUNT_WIDTH;
char chars[3*sizeof(__native)-(COUNT_WIDTH>>3)];
}putchar __attribute__ ((packed));
}data ; //__attribute__ ((packed));
}__attribute__ ((packed));
 
struct fb_ipc_args
{
__native method;
__native arg1;
__native arg2;
__native arg3;
} __attribute__ ((packed));
 
union fb_args
{
struct fb_call_args fb_args;
struct fb_ipc_args ipc_args;
}__attribute__ ((packed));
 
typedef union fb_args fb_args_t;
 
#endif