Subversion Repositories Kolibri OS

Rev

Rev 8452 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8452 Rev 8505
1
#ifndef NULL
1
#ifndef NULL
2
#define NULL ((void*)0)
2
#define NULL ((void*)0)
3
#endif
3
#endif
4
 
4
 
5
#define EVENT_REDRAW              0x00000001
5
#define EVENT_REDRAW              0x00000001
6
#define EVENT_KEY                 0x00000002
6
#define EVENT_KEY                 0x00000002
7
#define EVENT_BUTTON              0x00000004
7
#define EVENT_BUTTON              0x00000004
8
#define EVENT_END_REQUEST         0x00000008
8
#define EVENT_END_REQUEST         0x00000008
9
#define EVENT_DESKTOP_BACK_DRAW   0x00000010
9
#define EVENT_DESKTOP_BACK_DRAW   0x00000010
10
#define EVENT_MOUSE_CHANGE        0x00000020
10
#define EVENT_MOUSE_CHANGE        0x00000020
11
#define EVENT_IPC		          0x00000040
11
#define EVENT_IPC		          0x00000040
12
#define EVENT_MOUSE_CURSOR_MASK   0x40000000
12
#define EVENT_MOUSE_CURSOR_MASK   0x40000000
13
#define EVENT_MOUSE_WINDOW_MASK   0x80000000
13
#define EVENT_MOUSE_WINDOW_MASK   0x80000000
14
 
14
 
15
#define SHM_OPEN		0
15
#define SHM_OPEN		0
16
#define SHM_OPEN_ALWAYS	0x04
16
#define SHM_OPEN_ALWAYS	0x04
17
#define SHM_CREATE		0x08 
17
#define SHM_CREATE		0x08 
18
#define SHM_READ		0x00 
18
#define SHM_READ		0x00 
19
#define SHM_WRITE		0x01
19
#define SHM_WRITE		0x01
20
 
20
 
21
#define E_NOTFOUND	5 
21
#define E_NOTFOUND	5 
22
#define E_ACCESS	10 
22
#define E_ACCESS	10 
23
#define E_NOMEM		30 
23
#define E_NOMEM		30 
24
#define E_PARAM		33
24
#define E_PARAM		33
25
 
25
 
26
#define FILENAME_MAX	1024
26
#define FILENAME_MAX	1024
27
 
27
 
28
#define BT_DEL      0x80000000
28
#define BT_DEL      0x80000000
29
#define BT_HIDE     0x40000000
29
#define BT_HIDE     0x40000000
30
#define BT_NOFRAME  0x20000000
30
#define BT_NOFRAME  0x20000000
31
 
31
 
32
#define evReDraw  1
32
#define evReDraw  1
33
#define evKey     2
33
#define evKey     2
34
#define evButton  3
34
#define evButton  3
35
#define evMouse   6
35
#define evMouse   6
36
#define evNetwork 8
36
#define evNetwork 8
37
 
37
 
38
#define ASCII_KEY_LEFT  176
38
#define ASCII_KEY_LEFT  176
39
#define ASCII_KEY_RIGHT 179
39
#define ASCII_KEY_RIGHT 179
40
#define ASCII_KEY_DOWN  177
40
#define ASCII_KEY_DOWN  177
41
#define ASCII_KEY_UP    178
41
#define ASCII_KEY_UP    178
42
#define ASCII_KEY_HOME  180
42
#define ASCII_KEY_HOME  180
43
#define ASCII_KEY_END   181
43
#define ASCII_KEY_END   181
44
#define ASCII_KEY_PGDN  183
44
#define ASCII_KEY_PGDN  183
45
#define ASCII_KEY_PGUP  184
45
#define ASCII_KEY_PGUP  184
46
 
46
 
47
#define ASCII_KEY_BS    8
47
#define ASCII_KEY_BS    8
48
#define ASCII_KEY_TAB   9
48
#define ASCII_KEY_TAB   9
49
#define ASCII_KEY_ENTER 13
49
#define ASCII_KEY_ENTER 13
50
#define ASCII_KEY_ESC   27
50
#define ASCII_KEY_ESC   27
51
#define ASCII_KEY_DEL   182
51
#define ASCII_KEY_DEL   182
52
#define ASCII_KEY_INS   185
52
#define ASCII_KEY_INS   185
53
#define ASCII_KEY_SPACE 032
53
#define ASCII_KEY_SPACE 032
54
 
54
 
55
#pragma pack(push,1)
55
#pragma pack(push,1)
56
typedef struct 
56
typedef struct 
57
{
57
{
58
unsigned	p00;
58
unsigned	p00;
59
unsigned 	p04;
59
unsigned 	p04;
60
char	 	*p08;
60
char	 	*p08;
61
unsigned	p12;
61
unsigned	p12;
62
unsigned	p16;
62
unsigned	p16;
63
char		p20;
63
char		p20;
64
char		*p21;
64
char		*p21;
65
} kol_struct70;
65
} kol_struct70;
66
#pragma pack(pop)
66
#pragma pack(pop)
67
 
67
 
68
 
68
 
69
#pragma pack(push,1)
69
#pragma pack(push,1)
70
typedef struct
70
typedef struct
71
{
71
{
72
unsigned	p00;
72
unsigned	p00;
73
char		p04;
73
char		p04;
74
char		p05[3];
74
char		p05[3];
75
unsigned	p08;
75
unsigned	p08;
76
unsigned	p12;
76
unsigned	p12;
77
unsigned	p16;
77
unsigned	p16;
78
unsigned	p20;
78
unsigned	p20;
79
unsigned	p24;
79
unsigned	p24;
80
unsigned	p28;
80
unsigned	p28;
81
unsigned long long	p32;
81
unsigned long long	p32;
82
unsigned	p40;
82
unsigned	p40;
83
} kol_struct_BDVK;
83
} kol_struct_BDVK;
84
#pragma pack(pop)
84
#pragma pack(pop)
85
 
85
 
86
 
86
 
87
#pragma pack(push,1)
87
#pragma pack(push,1)
88
typedef struct
88
typedef struct
89
{
89
{
90
char	*name;
90
char	*name;
91
void	*data;
91
void	*data;
92
} kol_struct_import;
92
} kol_struct_import;
93
#pragma pack(pop)
93
#pragma pack(pop)
94
 
94
 
95
 
95
 
96
void kol_exit();
96
void kol_exit();
97
void kol_sleep(unsigned d);
97
void kol_sleep(unsigned d);
98
void kol_wnd_define(unsigned x, unsigned y, unsigned w, unsigned h, unsigned cs, unsigned b, char *t);
98
void kol_wnd_define(unsigned x, unsigned y, unsigned w, unsigned h, unsigned cs, unsigned b, char *t);
99
 
99
void kol_wnd_caption(char *s);
100
#define OLD -1
-
 
101
void kol_wnd_move(unsigned x, unsigned y);
-
 
102
void kol_wnd_size(unsigned x, unsigned y);
-
 
103
 
-
 
104
void kol_wnd_caption(char *s);
-
 
105
void kol_event_mask(unsigned e);
100
void kol_event_mask(unsigned e);
106
unsigned kol_event_wait();
101
unsigned kol_event_wait();
107
unsigned kol_event_wait_time(unsigned time);
102
unsigned kol_event_wait_time(unsigned time);
108
unsigned kol_event_check();
103
unsigned kol_event_check();
109
void kol_paint_start();
104
void kol_paint_start();
110
void kol_paint_end();
105
void kol_paint_end();
111
void kol_paint_pixel(unsigned x, unsigned y, unsigned c);
106
void kol_paint_pixel(unsigned x, unsigned y, unsigned c);
112
void kol_paint_bar(unsigned x, unsigned y, unsigned w, unsigned h, unsigned c);
107
void kol_paint_bar(unsigned x, unsigned y, unsigned w, unsigned h, unsigned c);
113
void kol_paint_line(unsigned x1, unsigned y1, unsigned x2, unsigned y2, unsigned c);
108
void kol_paint_line(unsigned x1, unsigned y1, unsigned x2, unsigned y2, unsigned c);
114
void kol_paint_string(unsigned x, unsigned y, char *s, unsigned c);
109
void kol_paint_string(unsigned x, unsigned y, char *s, unsigned c);
115
void kol_paint_image(unsigned x, unsigned y, unsigned w, unsigned h, char *d);
110
void kol_paint_image(unsigned x, unsigned y, unsigned w, unsigned h, char *d);
116
void kol_paint_image_pal(unsigned x, unsigned y, unsigned w, unsigned h, char *buf, unsigned bits, unsigned palette);
111
void kol_paint_image_pal(unsigned x, unsigned y, unsigned w, unsigned h, char *buf, unsigned bits, unsigned palette);
117
unsigned kol_key_get();
112
unsigned kol_key_get();
118
unsigned kol_key_control();
113
unsigned kol_key_control();
119
void kol_key_lang_set(unsigned lang);
114
void kol_key_lang_set(unsigned lang);
120
unsigned kol_key_lang_get();
115
unsigned kol_key_lang_get();
121
void kol_key_mode_set(unsigned mode);
116
void kol_key_mode_set(unsigned mode);
122
unsigned kol_key_mode_get();
117
unsigned kol_key_mode_get();
123
void kol_paint_image_24(unsigned x, unsigned y, unsigned w, unsigned h, char *d);
118
void kol_paint_image_24(unsigned x, unsigned y, unsigned w, unsigned h, char *d);
124
unsigned kol_btn_get();
119
unsigned kol_btn_get();
125
void kol_btn_type(unsigned t);
120
void kol_btn_type(unsigned t);
126
unsigned kol_mouse_pos();
121
unsigned kol_mouse_pos();
127
unsigned kol_mouse_posw();
122
unsigned kol_mouse_posw();
128
unsigned kol_mouse_btn();
123
unsigned kol_mouse_btn();
129
void kol_board_putc(char c);
124
void kol_board_putc(char c);
130
void kol_board_puts(char *s);
125
void kol_board_puts(char *s);
131
void kol_board_puti(int n);
126
void kol_board_puti(int n);
132
int kol_file_70(kol_struct70 *k);
127
int kol_file_70(kol_struct70 *k);
133
kol_struct_import* kol_cofflib_load(char *name);
128
kol_struct_import* kol_cofflib_load(char *name);
134
void* kol_cofflib_procload (kol_struct_import *imp, char *name);
129
void* kol_cofflib_procload (kol_struct_import *imp, char *name);
135
unsigned kol_cofflib_procnum (kol_struct_import *imp);
130
unsigned kol_cofflib_procnum (kol_struct_import *imp);
136
void kol_cofflib_procname (kol_struct_import *imp, char *name, unsigned n);
131
void kol_cofflib_procname (kol_struct_import *imp, char *name, unsigned n);
137
unsigned kol_system_end(unsigned param);
132
unsigned kol_system_end(unsigned param);
138
unsigned kol_system_cpufreq();
133
unsigned kol_system_cpufreq();
139
unsigned kol_system_mem();
134
unsigned kol_system_mem();
140
unsigned kol_system_memfree();
135
unsigned kol_system_memfree();
141
unsigned kol_system_time_get();
136
unsigned kol_system_time_get();
142
unsigned kol_system_date_get();
137
unsigned kol_system_date_get();
143
void kol_path_file2dir(char *dir, char *fname);
138
void kol_path_file2dir(char *dir, char *fname);
144
void kol_path_full(char *full, char *fname);
139
void kol_path_full(char *full, char *fname);
145
void kol_screen_wait_rr();
140
void kol_screen_wait_rr();
146
void kol_screen_get_size(unsigned *w, unsigned *h);
141
void kol_screen_get_size(unsigned *w, unsigned *h);
147
unsigned kol_skin_height();
142
unsigned kol_skin_height();
148
unsigned kol_thread_start(unsigned start, unsigned stack);
143
unsigned kol_thread_start(unsigned start, unsigned stack);
149
unsigned kol_time_tick();
144
unsigned kol_time_tick();
150
unsigned kol_sound_speaker(char data[]);
145
unsigned kol_sound_speaker(char data[]);
151
unsigned kol_process_info(unsigned slot, char buf1k[]);
146
unsigned kol_process_info(unsigned slot, char buf1k[]);
152
int kol_process_kill_pid(unsigned process);
147
int kol_process_kill_pid(unsigned process);
153
void kol_get_kernel_ver(char buff16b[]);
148
void kol_get_kernel_ver(char buff16b[]);
154
int kol_kill_process(unsigned process);
149
int kol_kill_process(unsigned process);
155
int kol_buffer_open(char name[], int mode, int size, char **buf);
150
int kol_buffer_open(char name[], int mode, int size, char **buf);
156
void  kol_buffer_close(char name[]);
151
void  kol_buffer_close(char name[]);
157
int kol_clip_num();
152
int kol_clip_num();
158
char* kol_clip_get(int n);
153
char* kol_clip_get(int n);
159
int kol_clip_set(int n, char buffer[]);
154
int kol_clip_set(int n, char buffer[]);
160
void kol_btn_define(unsigned x, unsigned y, unsigned w, unsigned h, unsigned d, unsigned c);
155
void kol_btn_define(unsigned x, unsigned y, unsigned w, unsigned h, unsigned d, unsigned c);
161
 
156
 
162
void kos_blit(int dstx, int dsty, int w, int h, int srcx, 
157
void kos_blit(int dstx, int dsty, int w, int h, int srcx, 
163
	int srcy,int srcw, int srch, int stride, char *d);
158
	int srcy,int srcw, int srch, int stride, char *d);
164
int kos_random(int num);
159
int kos_random(int num);
165
int kos_get_mouse_wheels(void);
160
int kos_get_mouse_wheels(void);
166
void kos_screen_max(int* x, int* y);
161
void kos_screen_max(int* x, int* y);
167
int kos_get_key();
162
int kos_get_key();
168
void kos_text(int x, int y, int color, const char* text, int len);
163
void kos_text(int x, int y, int color, const char* text, int len);
169
 
164
170
 
-
 
171
//// Struct from menuet/os.h
-
 
172
//// Need rewrite!
-
 
173
 
-
 
174
typedef unsigned char       __u8;
-
 
175
typedef unsigned short      __u16;
-
 
176
typedef unsigned long       __u32;
-
 
177
 
-
 
178
#pragma pack(push,1)
-
 
179
 
-
 
180
struct process_table_entry
-
 
181
{
-
 
182
 __u32 cpu_usage;
-
 
183
 __u16 pos_in_windowing_stack;
-
 
184
 __u16 win_stack_val_at_ecx;
-
 
185
 __u16 reserved1;
-
 
186
 char name[12];
-
 
187
 __u32 memstart;
-
 
188
 __u32 memused;
-
 
189
 __u32 pid;
-
 
190
 __u32 winx_start,winy_start;
-
 
191
 __u32 winx_size,winy_size;
-
 
192
 __u16 thread_state;
-
 
193
 __u16 reserved2;
-
 
194
 __u32 client_left,client_top,client_width,client_height;
-
 
195
 __u8 window_state;
-
 
196
 __u8 reserved3[1024-71];
-
 
197
};
-
 
198
 
-
 
199
#pragma pack(pop)
-
 
200
-