Subversion Repositories Kolibri OS

Rev

Rev 7321 | Blame | Last modification | View Log | Download | RSS feed

  1. #pragma option OST
  2. #pragma option ON
  3. #pragma option cri-
  4. #pragma option -CPA
  5. #initallvar 0
  6. #jumptomain FALSE
  7.  
  8. #startaddress 0
  9.  
  10. #code32 TRUE
  11.  
  12. char   os_name[8]   = {'M','E','N','U','E','T','0','1'};
  13. dword  os_version   = 0x00000001;
  14. dword  start_addr   = #____INIT____;
  15. dword  final_addr   = #____STOP____+32;
  16. dword  alloc_mem    = 4*1024*1024;
  17. dword  x86esp_reg   = 4*1024*1024;
  18. dword  I_Param      = #param;
  19. dword  I_Path       = #program_path;
  20. char param[4096];
  21. char program_path[4096];
  22.  
  23.  
  24. void ExitProcess()
  25. {
  26.         EAX = -1;
  27.         $int 0x40
  28. }
  29.  
  30. segmentDisableFunction:
  31. dword eaxFunctionDestroy(){RETURN 0;}
  32. segmentDisableFunctionEnd:
  33.  
  34. void ____INIT____()
  35. {
  36.  
  37. //    Disable door kernel
  38.         EAX = 81;
  39.         EBX = 81; // Self function
  40.         ECX = #eaxFunctionDestroy; // Function execute
  41.         EDX = #segmentDisableFunction; // Begin segment
  42.         ESI = #segmentDisableFunctionEnd; // End segment
  43.         $int 0x40
  44.    
  45.         ExitProcess();
  46. }
  47.  
  48. void ____STOP____()
  49. {
  50.         ExitProcess();
  51. }
  52.