source: mainline/libc/include/ipc/fb.h@ 3f695aad

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 3f695aad was 04552a80, checked in by Martin Decky <martin@…>, 19 years ago

code cleanup (somebody should read the coding style guide)
remove DONT_OPEN_STDIO (this has to be done in a different way, ppc32 linker segfaults on initiating extern variable)
remove deprecated libipc stuff

  • Property mode set to 100644
File size: 956 bytes
Line 
1
2
3#include <arch/types.h>
4#include <types.h>
5
6#ifndef __libc__FB_H__
7#define __libc__FB_H__
8
9#define FB_GET_VFB 1024
10#define FB_PUTCHAR 1025
11
12#define METHOD_WIDTH 16
13#define ITEM_WIDTH 16
14#define COUNT_WIDTH 16 /* Should be 8 times integer */
15
16
17struct _fb_method {
18 unsigned m : METHOD_WIDTH;
19 unsigned item : ITEM_WIDTH;
20} __attribute__((packed));
21
22union fb_method {
23 struct _fb_method m;
24 __native fill;
25} __attribute__((packed));
26
27struct fb_call_args {
28 union fb_method method;
29 union {
30 struct {
31 unsigned count : COUNT_WIDTH;
32 char chars[3 * sizeof(__native) - (COUNT_WIDTH >> 3)];
33 } putchar __attribute__((packed));
34 } data ; // __attribute__((packed));
35} __attribute__((packed));
36
37struct fb_ipc_args {
38 __native method;
39 __native arg1;
40 __native arg2;
41 __native arg3;
42} __attribute__((packed));
43
44union fb_args {
45 struct fb_call_args fb_args;
46 struct fb_ipc_args ipc_args;
47} __attribute__((packed));
48
49typedef union fb_args fb_args_t;
50
51#endif
Note: See TracBrowser for help on using the repository browser.