Subversion Repositories Kolibri OS

Rev

Rev 244 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

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