Subversion Repositories HelenOS-historic

Rev

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

Rev 1363 Rev 1366
Line 9... Line 9...
9
#define FB_GET_VFB 1024
9
#define FB_GET_VFB 1024
10
#define FB_PUTCHAR 1025
10
#define FB_PUTCHAR 1025
11
 
11
 
12
#define METHOD_WIDTH 16
12
#define METHOD_WIDTH 16
13
#define ITEM_WIDTH 16
13
#define ITEM_WIDTH 16
14
#define COUNT_WIDTH 16 /*Should be 8 times integer*/
14
#define COUNT_WIDTH 16 /* Should be 8 times integer */
15
 
15
 
16
 
16
 
17
struct _fb_method
17
struct _fb_method {
18
{
-
 
19
    unsigned m     : METHOD_WIDTH;
18
    unsigned m : METHOD_WIDTH;
20
    unsigned item  : ITEM_WIDTH;
19
    unsigned item : ITEM_WIDTH;
21
} __attribute__ ((packed));
20
} __attribute__((packed));
22
 
21
 
23
union fb_method
22
union fb_method {
24
{
-
 
25
    struct _fb_method m;
23
    struct _fb_method m;
26
    __native fill;
24
    __native fill;
27
}__attribute__ ((packed));
25
} __attribute__((packed));
28
 
26
 
29
struct fb_call_args
27
struct fb_call_args {
30
{
-
 
31
    union fb_method method;
28
    union fb_method method;
32
    union
29
    union {
33
    {
-
 
34
        struct
30
        struct {
35
        {
-
 
36
            unsigned count :COUNT_WIDTH;
31
            unsigned count : COUNT_WIDTH;
37
            char chars[3*sizeof(__native)-(COUNT_WIDTH>>3)];
32
            char chars[3 * sizeof(__native) - (COUNT_WIDTH >> 3)];
38
        }putchar __attribute__ ((packed));
33
        } putchar __attribute__((packed));
39
    }data ; //__attribute__ ((packed)); 
34
    } data ; // __attribute__((packed));    
40
}__attribute__ ((packed));
35
} __attribute__((packed));
41
 
36
 
42
struct fb_ipc_args
37
struct fb_ipc_args {
43
{
-
 
44
    __native method;
38
    __native method;
45
    __native arg1;
39
    __native arg1;
46
    __native arg2;
40
    __native arg2;
47
    __native arg3;
41
    __native arg3;
48
} __attribute__ ((packed));
42
} __attribute__((packed));
49
 
43
 
50
union fb_args
44
union fb_args {
51
{
-
 
52
    struct fb_call_args fb_args;
45
    struct fb_call_args fb_args;
53
    struct fb_ipc_args ipc_args;
46
    struct fb_ipc_args ipc_args;
54
}__attribute__ ((packed));
47
} __attribute__((packed));
55
 
48
 
56
typedef union fb_args fb_args_t;
49
typedef union fb_args fb_args_t;
57
 
50
 
58
#endif
51
#endif
59
 
-
 
60
 
-