kolibrios/programs/develop/metcc/trunk/libc/include/mesys.h
victor 6ec45316ae -added long file names support
-small bug fix

git-svn-id: svn://kolibrios.org@244 a494cfbc-eb01-0410-851d-a64ba20cac60
2006-12-24 00:14:30 +00:00

111 lines
5.3 KiB
C

#ifndef mesys_h
#define mesys_h
#ifdef GNUC
#define stdcall __stdcall
#define cdecl __cdecl
#else
#define stdcall __attribute__ ((__stdcall))
#define cdecl __attribute__ ((__cdecl))
#endif
typedef unsigned long dword;
typedef unsigned char byte;
typedef unsigned short word;
extern void stdcall _msys_draw_window(int xcoord,int ycoord, int xsize,
int ysize,int workcolor,int type,
int captioncolor,int windowtype,int bordercolor);
extern int stdcall _msys_read_file(char* filename,int fileoffset,int size,void* data,
int* filesize);
extern int stdcall _msys_write_file(char* filename,int fileoffset, int size, void* data);
extern int stdcall _msys_create_file(char* filename);
extern void stdcall _msys_run_program(char* filename,char* parameters);
extern void stdcall _msys_debug_out(int c);
extern void debug_out_str(char* str);
extern void stdcall _msys_set_background_size(int xsize,int ysize);
extern void stdcall _msys_write_background_mem(int pos,int color);
extern void stdcall _msys_draw_background(void);
extern void stdcall _msys_set_background_draw_type(int type);
extern void stdcall _msys_background_blockmove(void* src,int bgr_pos, int count);
extern void stdcall _msys_draw_bar(int x, int y, int xsize, int ysize, int color);
extern void stdcall _msys_make_button(int x, int y, int xsize, int ysize, int id, int color);
extern int stdcall _msys_get_button_id(void);
extern int stdcall _msys_get_system_clock(void);
extern int stdcall _msys_get_date(void);
extern void stdcall _msys_delay(int m);
extern void stdcall _msys_dga_get_resolution(int* xres, int* yres, int* bpp, int* bpscan);
extern int stdcall _msys_wait_for_event_infinite(void);
extern int stdcall _msys_check_for_event(void);
extern int stdcall _msys_wait_for_event(int time);
extern void stdcall _msys_set_wanted_events(int ev);
extern void stdcall _msys_exit(void);
extern void stdcall _msys_putimage(int x, int y, int xsize, int ysize, void* image);
extern void stdcall _msys_send_message(int pid, void* msg, int size);
extern void stdcall _msys_define_receive_area(void* area, int size);
extern int stdcall _msys_get_irq_owner(int irq);
extern int stdcall _msys_get_data_read_by_irq(int irq, int* size, void* data);
extern int stdcall _msys_send_data_to_device(int port, unsigned char val);
extern int stdcall _msys_receive_data_from_device(int port,unsigned char* data);
extern void stdcall _msys_program_irq(void* intrtable, int irq);
extern void stdcall _msys_reserve_irq(int irq);
extern void stdcall _msys_free_irq(int irq);
extern int stdcall _msys_reserve_port_area(int start,int end);
extern int stdcall _msys_free_port_area(int start,int end);
extern int stdcall _msys_get_key(void);
extern void stdcall _msys_set_keyboard_mode(int mode);
extern void stdcall _msys_line(int x1,int y1,int x2,int y2,int color);
extern void stdcall _msys_midi_reset(void);
extern void stdcall _msys_midi_send(int data);
extern int stdcall _msys_get_pci_version(void);
extern int stdcall _msys_get_last_pci_bus(void);
extern int stdcall _msys_get_pci_access_mechanism(void);
extern int stdcall _msys_pci_read_config_byte(int bus,int dev,int fn,int reg);
extern int stdcall _msys_pci_read_config_word(int bus,int dev,int fn,int reg);
extern int stdcall _msys_pci_read_config_dword(int bus,int dev,int fn,int reg);
extern int stdcall _msys_pci_write_config_byte(int bus,int dev,int fn,int reg,int value);
extern int stdcall _msys_pci_write_config_word(int bus,int dev,int fn,int reg,int value);
extern int stdcall _msys_pci_write_config_value(int bus,int dev,int fn,int reg,int value);
extern int stdcall _msys_putpixel(int x,int y,int color);
#pragma pack(push,1)
typedef struct {
int cpu_usage; //+0
int window_pos_info; //+4
short int reserved1; //+8
char name[12]; //+10
int memstart; //+22
int memused; //+26
int pid; //+30
int winx_start; //+34
int winy_start; //+38
int winx_size; //+42
int winy_size; //+46
short int slot_info; //+50
short int reserved2; //+52
int clientx; //+54
int clienty; //+58
int clientwidth; //+62
int clientheight; //+66
unsigned char window_state;//+70
char reserved3[1024-71]; //+71
} process_table_entry;
#pragma pack(pop)
extern int stdcall _msys_get_process_table(process_table_entry* proctab,int pid);
extern int stdcall _msys_get_screen_size(int* x,int* y);
extern void stdcall _msys_sound_load_block(void* blockptr);
extern void stdcall _msys_sound_play_block(void);
extern void stdcall _msys_sound_set_channels(int channels);
extern void stdcall _msys_sound_set_data_size(int size);
extern void stdcall _msys_sound_set_frequency(int frequency);
extern void stdcall _msys_sound_speaker_play(void* data);
extern void stdcall _msys_write_text(int x,int y,int color,char* text,int len);
extern void* stdcall _msys_start_thread(void (* func_ptr)(void),int stack_size,int* pid);
extern void stdcall _msys_window_redraw(int status);
extern void* malloc(int);
extern void free(void*);
extern void* realloc(void*,int);
extern dword* stdcall _msys_cofflib_load(char* name);
extern char* stdcall _msys_cofflib_getproc(void* exp,char* sz_name);
#endif