Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. /* Copyright (C) 1996 DJ Delorie, see COPYING.DJ for details */
  2. /* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
  3. #include <libc/stubs.h>
  4. #include <crt0.h>
  5. #include <string.h>
  6. #include <libc/internal.h>
  7. #include <stdlib.h>
  8. #include <libc/farptrgs.h>
  9. #include <pc.h>
  10. #include <libc/bss.h>
  11. #include <menuet/os.h>
  12.  
  13. /* Global variables */
  14.  
  15. #define ds _my_ds()
  16.  
  17. int __bss_count = 1;
  18.  
  19. char **environ;
  20. int _crt0_startup_flags;        /* default to zero unless app overrides them */
  21. int __crt0_argc=0;
  22. char ** __crt0_argv=NULL;
  23.  
  24. char * __dos_argv0;
  25.  
  26. extern __u32 __menuet__getmemsize(void);
  27.  
  28. extern void __main(void);
  29. extern int  main(int, char **);
  30. extern void _crt0_init_mcount(void);    /* For profiling */
  31. void __crt0_setup_arguments(void);
  32. extern char __menuet__app_param_area[];
  33.  
  34. //void dosemu_atexit(void);
  35.  
  36. void __crt1_startup(void)
  37. {
  38.  init_brk();
  39.  if(__menuet__app_param_area[0]!='\0')
  40.  __crt0_setup_arguments();
  41.  dosemu_inithandles();
  42.  init_dir_stack();
  43. // atexit(dosemu_atexit);
  44.  __main();
  45.  {
  46.   int stat=main(__crt0_argc,__crt0_argv);
  47.   exit(stat);
  48.  }
  49. }
  50.