Subversion Repositories Kolibri OS

Rev

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

  1. {}
  2.  
  3. unit sysinitpas;
  4.  
  5. interface
  6.  
  7. implementation
  8.  
  9. var
  10.   SysInstance: Longint; external name '_FPC_SysInstance';
  11.  
  12. procedure PascalMain; stdcall; external name 'PASCALMAIN';
  13. procedure SystemExit; external name 'SystemExit';
  14.  
  15. procedure EntryConsole; [public, alias:'_mainCRTStartup'];
  16. var
  17.   ESP_: Pointer;
  18. begin
  19.   asm movl %esp, ESP_; end;
  20.   StackTop := ESP_ + 8;
  21.   IsConsole := True;
  22.   PascalMain;
  23.   SystemExit;
  24. end;
  25.  
  26. procedure EntryWindow; [public, alias:'_WinMainCRTStartup'];
  27. var
  28.   ESP_: Pointer;
  29. begin
  30.   asm movl %esp, ESP_; end;
  31.   StackTop := ESP_ + 8;
  32.   IsConsole := False;
  33.   PascalMain;
  34.   SystemExit;
  35. end;
  36.  
  37. procedure _FPC_DLLMainCRTStartup(_hinstance, _dllreason, _dllparam: Longint); stdcall; public name '_DLLMainCRTStartup';
  38. begin
  39.   {TODO}
  40.   IsConsole := True;
  41.   SysInstance := _hinstance;
  42. end;
  43.  
  44.  
  45. procedure _FPC_DLLWinMainCRTStartup(_hinstance, _dllreason, _dllparam: Longint); stdcall; public name '_DLLWinMainCRTStartup';
  46. begin
  47.   {TODO}
  48.   IsConsole := False;
  49.   SysInstance := _hinstance;
  50. end;
  51.  
  52. end.
  53.