Subversion Repositories Kolibri OS

Rev

Rev 215 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
145 halyavin 1
#ifndef mesys_h
2
#define mesys_h
3
#ifdef GNUC
4
#define stdcall __stdcall
215 victor 5
#define cdecl __cdecl
145 halyavin 6
#else
7
#define stdcall __attribute__ ((__stdcall))
215 victor 8
#define cdecl  __attribute__ ((__cdecl))
145 halyavin 9
#endif
215 victor 10
 
11
typedef unsigned long dword;
12
typedef unsigned char byte;
13
typedef unsigned short word;
14
 
15
extern void stdcall _msys_draw_window(int xcoord,int ycoord, int xsize,
145 halyavin 16
			       int ysize,int workcolor,int type,
17
			       int captioncolor,int windowtype,int bordercolor);
18
extern int  stdcall _msys_read_file(char* filename,int fileoffset,int size,void* data,
19
                     int* filesize);
244 victor 20
extern int  stdcall _msys_write_file(char* filename,int fileoffset, int size, void* data);
21
extern int  stdcall _msys_create_file(char* filename);
215 victor 22
extern void stdcall _msys_run_program(char* filename,char* parameters);
23
extern void stdcall _msys_debug_out(int c);
145 halyavin 24
extern void debug_out_str(char* str);
25
extern void stdcall _msys_set_background_size(int xsize,int ysize);
26
extern void stdcall _msys_write_background_mem(int pos,int color);
27
extern void stdcall _msys_draw_background(void);
28
extern void stdcall _msys_set_background_draw_type(int type);
29
extern void stdcall _msys_background_blockmove(void* src,int bgr_pos, int count);
30
extern void stdcall _msys_draw_bar(int x, int y, int xsize, int ysize, int color);
31
extern void stdcall _msys_make_button(int x, int y, int xsize, int ysize, int id, int color);
32
extern int  stdcall _msys_get_button_id(void);
33
extern int  stdcall _msys_get_system_clock(void);
34
extern int  stdcall _msys_get_date(void);
35
extern void stdcall _msys_delay(int m);
36
extern void stdcall _msys_dga_get_resolution(int* xres, int* yres, int* bpp, int* bpscan);
37
extern int  stdcall _msys_wait_for_event_infinite(void);
38
extern int  stdcall _msys_check_for_event(void);
39
extern int  stdcall _msys_wait_for_event(int time);
40
extern void stdcall _msys_set_wanted_events(int ev);
41
extern void stdcall _msys_exit(void);
42
extern void stdcall _msys_putimage(int x, int y, int xsize, int ysize, void* image);
43
extern void stdcall _msys_send_message(int pid, void* msg, int size);
44
extern void stdcall _msys_define_receive_area(void* area, int size);
45
extern int  stdcall _msys_get_irq_owner(int irq);
46
extern int  stdcall _msys_get_data_read_by_irq(int irq, int* size, void* data);
47
extern int  stdcall _msys_send_data_to_device(int port, unsigned char val);
48
extern int  stdcall _msys_receive_data_from_device(int port,unsigned char* data);
49
extern void stdcall _msys_program_irq(void* intrtable, int irq);
50
extern void stdcall _msys_reserve_irq(int irq);
51
extern void stdcall _msys_free_irq(int irq);
52
extern int  stdcall _msys_reserve_port_area(int start,int end);
53
extern int  stdcall _msys_free_port_area(int start,int end);
54
extern int  stdcall _msys_get_key(void);
55
extern void stdcall _msys_set_keyboard_mode(int mode);
56
extern void stdcall _msys_line(int x1,int y1,int x2,int y2,int color);
57
extern void stdcall _msys_midi_reset(void);
58
extern void stdcall _msys_midi_send(int data);
59
extern int  stdcall _msys_get_pci_version(void);
60
extern int  stdcall _msys_get_last_pci_bus(void);
61
extern int  stdcall _msys_get_pci_access_mechanism(void);
62
extern int  stdcall _msys_pci_read_config_byte(int bus,int dev,int fn,int reg);
63
extern int  stdcall _msys_pci_read_config_word(int bus,int dev,int fn,int reg);
64
extern int  stdcall _msys_pci_read_config_dword(int bus,int dev,int fn,int reg);
65
extern int  stdcall _msys_pci_write_config_byte(int bus,int dev,int fn,int reg,int value);
66
extern int  stdcall _msys_pci_write_config_word(int bus,int dev,int fn,int reg,int value);
67
extern int  stdcall _msys_pci_write_config_value(int bus,int dev,int fn,int reg,int value);
68
extern int  stdcall _msys_putpixel(int x,int y,int color);
169 halyavin 69
#pragma pack(push,1)
145 halyavin 70
typedef struct {
169 halyavin 71
  int cpu_usage;             //+0
72
  int window_pos_info;       //+4
73
  short int reserved1;       //+8
74
  char name[12];             //+10
75
  int memstart;              //+22
76
  int memused;               //+26
77
  int pid;                   //+30
78
  int winx_start;            //+34
79
  int winy_start;            //+38
80
  int winx_size;             //+42
81
  int winy_size;             //+46
82
  short int slot_info;       //+50
83
  short int reserved2;       //+52
84
  int clientx;               //+54
85
  int clienty;               //+58
86
  int clientwidth;           //+62
87
  int clientheight;          //+66
88
  unsigned char window_state;//+70
89
  char reserved3[1024-71];   //+71
145 halyavin 90
} process_table_entry;
169 halyavin 91
#pragma pack(pop)
145 halyavin 92
extern int  stdcall _msys_get_process_table(process_table_entry* proctab,int pid);
93
extern int  stdcall _msys_get_screen_size(int* x,int* y);
94
extern void stdcall _msys_sound_load_block(void* blockptr);
95
extern void stdcall _msys_sound_play_block(void);
96
extern void stdcall _msys_sound_set_channels(int channels);
97
extern void stdcall _msys_sound_set_data_size(int size);
98
extern void stdcall _msys_sound_set_frequency(int frequency);
99
extern void stdcall _msys_sound_speaker_play(void* data);
100
extern void stdcall _msys_write_text(int x,int y,int color,char* text,int len);
101
extern void* stdcall  _msys_start_thread(void (* func_ptr)(void),int stack_size,int* pid);
102
extern void stdcall _msys_window_redraw(int status);
159 halyavin 103
extern void* malloc(int);
104
extern void  free(void*);
105
extern void* realloc(void*,int);
215 victor 106
 
107
extern dword* stdcall _msys_cofflib_load(char* name);
108
extern char* stdcall _msys_cofflib_getproc(void* exp,char* sz_name);
109
 
145 halyavin 110
#endif